Lines Matching refs:cmdbuf

277     drm_file_t *filp_priv, drm_radeon_kcmd_buffer_t *cmdbuf,
280 u32 *cmd = (u32 *)(uintptr_t)cmdbuf->buf;
291 if (4 * *cmdsz > cmdbuf->bufsz) {
2821 drm_radeon_kcmd_buffer_t *cmdbuf)
2825 u32 *data = (u32 *)(uintptr_t)cmdbuf->buf;
2834 if (sz * sizeof (int) > cmdbuf->bufsz) {
2849 cmdbuf->buf += sz * sizeof (int);
2850 cmdbuf->bufsz -= sz * sizeof (int);
2856 drm_radeon_cmd_header_t header, drm_radeon_kcmd_buffer_t *cmdbuf)
2867 OUT_RING_TABLE(cmdbuf->buf, sz);
2869 cmdbuf->buf += sz * sizeof (int);
2870 cmdbuf->bufsz -= sz * sizeof (int);
2879 drm_radeon_cmd_header_t header, drm_radeon_kcmd_buffer_t *cmdbuf)
2890 OUT_RING_TABLE(cmdbuf->buf, sz);
2892 cmdbuf->buf += sz * sizeof (int);
2893 cmdbuf->bufsz -= sz * sizeof (int);
2899 drm_radeon_cmd_header_t header, drm_radeon_kcmd_buffer_t *cmdbuf)
2911 OUT_RING_TABLE(cmdbuf->buf, sz);
2914 cmdbuf->buf += sz * sizeof (int);
2915 cmdbuf->bufsz -= sz * sizeof (int);
2921 drm_radeon_cmd_header_t header, drm_radeon_kcmd_buffer_t *cmdbuf)
2929 if (sz * 4 > cmdbuf->bufsz)
2937 OUT_RING_TABLE(cmdbuf->buf, sz);
2940 cmdbuf->buf += sz * sizeof (int);
2941 cmdbuf->bufsz -= sz * sizeof (int);
2947 drm_radeon_kcmd_buffer_t *cmdbuf)
2956 filp_priv, cmdbuf, &cmdsz))) {
2962 OUT_RING_TABLE(cmdbuf->buf, cmdsz);
2965 cmdbuf->buf += cmdsz * 4;
2966 cmdbuf->bufsz -= cmdsz * 4;
2972 drm_radeon_kcmd_buffer_t *cmdbuf,
2979 drm_clip_rect_t __user *boxes = cmdbuf->boxes;
2984 filp_priv, cmdbuf, &cmdsz))) {
2993 if (i < cmdbuf->nbox) {
3001 * several cliprects with a cmdbuf, as when
3019 OUT_RING_TABLE(cmdbuf->buf, cmdsz);
3022 } while (++i < cmdbuf->nbox);
3023 if (cmdbuf->nbox == 1)
3024 cmdbuf->nbox = 0;
3027 cmdbuf->buf += cmdsz * 4;
3028 cmdbuf->bufsz -= cmdsz * 4;
3070 drm_radeon_kcmd_buffer_t cmdbuf;
3088 cmdbuf.bufsz = cmdbuf32.bufsz;
3089 cmdbuf.buf = (void *)(uintptr_t)cmdbuf32.buf;
3090 cmdbuf.nbox = cmdbuf32.nbox;
3091 cmdbuf.boxes = (void *)(uintptr_t)cmdbuf32.boxes;
3094 DRM_COPYFROM_WITH_RETURN(&cmdbuf, (void *) data,
3095 sizeof (cmdbuf));
3102 if (cmdbuf.bufsz > 64 * 1024 || cmdbuf.bufsz < 0) {
3107 * Allocate an in-kernel area and copy in the cmdbuf. Do this
3112 orig_bufsz = cmdbuf.bufsz;
3114 kbuf = drm_alloc(cmdbuf.bufsz, DRM_MEM_DRIVER);
3117 if (DRM_COPY_FROM_USER(kbuf, (void *)cmdbuf.buf,
3118 cmdbuf.bufsz)) {
3122 cmdbuf.buf = kbuf;
3125 orig_nbox = cmdbuf.nbox;
3129 temp = r300_do_cp_cmdbuf(dev, fpriv, &cmdbuf);
3138 while (cmdbuf.bufsz >= sizeof (header)) {
3140 header.i = *(int *)(uintptr_t)cmdbuf.buf;
3141 cmdbuf.buf += sizeof (header);
3142 cmdbuf.bufsz -= sizeof (header);
3148 (dev_priv, fpriv, header, &cmdbuf)) {
3156 if (radeon_emit_scalars(dev_priv, header, &cmdbuf)) {
3164 if (radeon_emit_vectors(dev_priv, header, &cmdbuf)) {
3191 if (radeon_emit_packet3(dev, fpriv, &cmdbuf)) {
3200 (dev, fpriv, &cmdbuf, orig_nbox)) {
3208 if (radeon_emit_scalars2(dev_priv, header, &cmdbuf)) {
3223 if (radeon_emit_veclinear(dev_priv, header, &cmdbuf)) {
3232 cmdbuf.buf - sizeof (header));