Home | History | Annotate | Download | only in r600

Lines Matching refs:cs

55  * that wants to write commands into the CS (e.g. cache flushes). */
67 * This is supposed to be copied directly into the CS. */
409 struct radeon_winsys_cs *cs;
790 return ctx->ws->cs_add_reloc(ctx->cs, rbo->cs_buf, usage, rbo->domains) * 4;
793 static INLINE void r600_write_value(struct radeon_winsys_cs *cs, unsigned value)
795 cs->buf[cs->cdw++] = value;
798 static INLINE void r600_write_array(struct radeon_winsys_cs *cs, unsigned num, unsigned *ptr)
800 assert(cs->cdw+num <= RADEON_MAX_CMDBUF_DWORDS);
801 memcpy(&cs->buf[cs->cdw], ptr, num * sizeof(ptr[0]));
802 cs->cdw += num;
805 static INLINE void r600_write_config_reg_seq(struct radeon_winsys_cs *cs, unsigned reg, unsigned num)
808 assert(cs->cdw+2+num <= RADEON_MAX_CMDBUF_DWORDS);
809 cs->buf[cs->cdw++] = PKT3(PKT3_SET_CONFIG_REG, num, 0);
810 cs->buf[cs->cdw++] = (reg - R600_CONFIG_REG_OFFSET) >> 2;
813 static INLINE void r600_write_context_reg_seq(struct radeon_winsys_cs *cs, unsigned reg, unsigned num)
816 assert(cs->cdw+2+num <= RADEON_MAX_CMDBUF_DWORDS);
817 cs->buf[cs->cdw++] = PKT3(PKT3_SET_CONTEXT_REG, num, 0);
818 cs->buf[cs->cdw++] = (reg - R600_CONTEXT_REG_OFFSET) >> 2;
821 static INLINE void r600_write_compute_context_reg_seq(struct radeon_winsys_cs *cs, unsigned reg, unsigned num)
823 r600_write_context_reg_seq(cs, reg, num);
825 cs->buf[cs->cdw - 2] |= RADEON_CP_PACKET3_COMPUTE_MODE;
828 static INLINE void r600_write_ctl_const_seq(struct radeon_winsys_cs *cs, unsigned reg, unsigned num)
831 assert(cs->cdw+2+num <= RADEON_MAX_CMDBUF_DWORDS);
832 cs->buf[cs->cdw++] = PKT3(PKT3_SET_CTL_CONST, num, 0);
833 cs->buf[cs->cdw++] = (reg - R600_CTL_CONST_OFFSET) >> 2;
836 static INLINE void r600_write_config_reg(struct radeon_winsys_cs *cs, unsigned reg, unsigned value)
838 r600_write_config_reg_seq(cs, reg, 1);
839 r600_write_value(cs, value);
842 static INLINE void r600_write_context_reg(struct radeon_winsys_cs *cs, unsigned reg, unsigned value)
844 r600_write_context_reg_seq(cs, reg, 1);
845 r600_write_value(cs, value);
848 static INLINE void r600_write_compute_context_reg(struct radeon_winsys_cs *cs, unsigned reg, unsigned value)
850 r600_write_compute_context_reg_seq(cs, reg, 1);
851 r600_write_value(cs, value);
854 static INLINE void r600_write_ctl_const(struct radeon_winsys_cs *cs, unsigned reg, unsigned value)
856 r600_write_ctl_const_seq(cs, reg, 1);
857 r600_write_value(cs, value);