1a2fc42b899de22273c1df96091bfb5c636075cb0Ben Skeggs#ifndef __NV30_TRANSFER_H__ 2a2fc42b899de22273c1df96091bfb5c636075cb0Ben Skeggs#define __NV30_TRANSFER_H__ 3a2fc42b899de22273c1df96091bfb5c636075cb0Ben Skeggs 4a2fc42b899de22273c1df96091bfb5c636075cb0Ben Skeggsstruct nv30_rect { 5a2fc42b899de22273c1df96091bfb5c636075cb0Ben Skeggs struct nouveau_bo *bo; 6a2fc42b899de22273c1df96091bfb5c636075cb0Ben Skeggs unsigned offset; 7a2fc42b899de22273c1df96091bfb5c636075cb0Ben Skeggs unsigned domain; 8a2fc42b899de22273c1df96091bfb5c636075cb0Ben Skeggs unsigned pitch; 9a2fc42b899de22273c1df96091bfb5c636075cb0Ben Skeggs unsigned cpp; 10a2fc42b899de22273c1df96091bfb5c636075cb0Ben Skeggs unsigned w; 11a2fc42b899de22273c1df96091bfb5c636075cb0Ben Skeggs unsigned h; 12a2fc42b899de22273c1df96091bfb5c636075cb0Ben Skeggs unsigned d; 13a2fc42b899de22273c1df96091bfb5c636075cb0Ben Skeggs unsigned z; 14a2fc42b899de22273c1df96091bfb5c636075cb0Ben Skeggs unsigned x0; 15a2fc42b899de22273c1df96091bfb5c636075cb0Ben Skeggs unsigned x1; 16a2fc42b899de22273c1df96091bfb5c636075cb0Ben Skeggs unsigned y0; 17a2fc42b899de22273c1df96091bfb5c636075cb0Ben Skeggs unsigned y1; 18a2fc42b899de22273c1df96091bfb5c636075cb0Ben Skeggs}; 19a2fc42b899de22273c1df96091bfb5c636075cb0Ben Skeggs 20a2fc42b899de22273c1df96091bfb5c636075cb0Ben Skeggsenum nv30_transfer_filter { 21a2fc42b899de22273c1df96091bfb5c636075cb0Ben Skeggs NEAREST = 0, 22a2fc42b899de22273c1df96091bfb5c636075cb0Ben Skeggs BILINEAR 23a2fc42b899de22273c1df96091bfb5c636075cb0Ben Skeggs}; 24a2fc42b899de22273c1df96091bfb5c636075cb0Ben Skeggs 25a2fc42b899de22273c1df96091bfb5c636075cb0Ben Skeggsvoid 26a2fc42b899de22273c1df96091bfb5c636075cb0Ben Skeggsnv30_transfer_rect(struct nv30_context *, enum nv30_transfer_filter filter, 27a2fc42b899de22273c1df96091bfb5c636075cb0Ben Skeggs struct nv30_rect *, struct nv30_rect *); 28a2fc42b899de22273c1df96091bfb5c636075cb0Ben Skeggs 29a2fc42b899de22273c1df96091bfb5c636075cb0Ben Skeggsvoid 30a2fc42b899de22273c1df96091bfb5c636075cb0Ben Skeggsnv30_transfer_push_data(struct nouveau_context *, 31a2fc42b899de22273c1df96091bfb5c636075cb0Ben Skeggs struct nouveau_bo *, unsigned offset, unsigned domain, 32a2fc42b899de22273c1df96091bfb5c636075cb0Ben Skeggs unsigned size, void *data); 33a2fc42b899de22273c1df96091bfb5c636075cb0Ben Skeggs 34a2fc42b899de22273c1df96091bfb5c636075cb0Ben Skeggsvoid 35a2fc42b899de22273c1df96091bfb5c636075cb0Ben Skeggsnv30_transfer_copy_data(struct nouveau_context *, 36a2fc42b899de22273c1df96091bfb5c636075cb0Ben Skeggs struct nouveau_bo *, unsigned dstoff, unsigned dstdom, 37a2fc42b899de22273c1df96091bfb5c636075cb0Ben Skeggs struct nouveau_bo *, unsigned srcoff, unsigned srcdom, 38a2fc42b899de22273c1df96091bfb5c636075cb0Ben Skeggs unsigned size); 39a2fc42b899de22273c1df96091bfb5c636075cb0Ben Skeggs 40a2fc42b899de22273c1df96091bfb5c636075cb0Ben Skeggs#endif 41