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