Cross Reference: nouveau_winsys.h
xref: /xsrc/external/mit/MesaLib/dist/src/gallium/drivers/nouveau/nouveau_winsys.h
  • Home
  • History
  • Annotate
  • Line#
  • Navigate
  • Raw
  • Download
  • only in /xsrc/external/mit/MesaLib/dist/src/gallium/drivers/nouveau/
nouveau_winsys.h revision 3464ebd5
1#ifndef NOUVEAU_WINSYS_H
2#define NOUVEAU_WINSYS_H
3
4#include <stdint.h>
5#include "pipe/p_defines.h"
6
7#include "nouveau/nouveau_bo.h"
8#include "nouveau/nouveau_channel.h"
9#include "nouveau/nouveau_device.h"
10#include "nouveau/nouveau_grobj.h"
11#include "nouveau/nouveau_notifier.h"
12#ifndef NOUVEAU_NVC0
13#include "nouveau/nv04_pushbuf.h"
14#endif
15
16#ifndef NV04_PFIFO_MAX_PACKET_LEN
17#define NV04_PFIFO_MAX_PACKET_LEN 2047
18#endif
19
20static INLINE uint32_t
21nouveau_screen_transfer_flags(unsigned pipe)
22{
23	uint32_t flags = 0;
24
25	if (pipe & PIPE_TRANSFER_READ)
26		flags |= NOUVEAU_BO_RD;
27	if (pipe & PIPE_TRANSFER_WRITE)
28		flags |= NOUVEAU_BO_WR;
29	if (pipe & PIPE_TRANSFER_DISCARD)
30		flags |= NOUVEAU_BO_INVAL;
31	if (pipe & PIPE_TRANSFER_UNSYNCHRONIZED)
32		flags |= NOUVEAU_BO_NOSYNC;
33	else if (pipe & PIPE_TRANSFER_DONTBLOCK)
34		flags |= NOUVEAU_BO_NOWAIT;
35
36	return flags;
37}
38
39extern struct pipe_screen *
40nvfx_screen_create(struct pipe_winsys *ws, struct nouveau_device *);
41
42extern struct pipe_screen *
43nv50_screen_create(struct pipe_winsys *ws, struct nouveau_device *);
44
45extern struct pipe_screen *
46nvc0_screen_create(struct pipe_winsys *ws, struct nouveau_device *);
47
48#endif
49

Indexes created Fri Dec 12 19:09:41 GMT 2025