push_buffer
static void host1x_pushbuffer_push(struct push_buffer *pb, u32 op1, u32 op2)
static void host1x_pushbuffer_pop(struct push_buffer *pb, unsigned int slots)
static u32 host1x_pushbuffer_space(struct push_buffer *pb)
struct push_buffer *pb = &cdma->push_buffer;
struct push_buffer *pb = &cdma->push_buffer;
struct push_buffer *pb = &cdma->push_buffer;
u32 *mapped = cdma->push_buffer.mapped;
static void host1x_pushbuffer_destroy(struct push_buffer *pb)
err = host1x_pushbuffer_init(&cdma->push_buffer);
struct push_buffer *pb = &cdma->push_buffer;
cdma->first_get = cdma->push_buffer.pos;
struct push_buffer *pb = &cdma->push_buffer;
struct push_buffer *pb = &cdma->push_buffer;
static int host1x_pushbuffer_init(struct push_buffer *pb)
struct push_buffer push_buffer; /* channel's push buffer */
#define pb_to_cdma(pb) container_of(pb, struct host1x_cdma, push_buffer)
struct push_buffer;
struct push_buffer *pb)
void (*init)(struct push_buffer *pb);
start = cdma->push_buffer.dma;
end = cdma->push_buffer.size + 4;
host1x_ch_writel(ch, cdma->push_buffer.pos, HOST1X_CHANNEL_DMAPUT);
if (cdma->push_buffer.pos != cdma->last_pos) {
host1x_ch_writel(ch, cdma->push_buffer.pos,
cdma->last_pos = cdma->push_buffer.pos;
static void push_buffer_init(struct push_buffer *pb)
cdma->last_pos = cdma->push_buffer.pos;
start = cdma->push_buffer.dma;
end = cdma->push_buffer.size + 4;
host1x_ch_writel(ch, cdma->push_buffer.pos, HOST1X_CHANNEL_DMAPUT);
cdma->last_pos = cdma->push_buffer.pos;
if (cdma && voffset >= cdma->push_buffer.size) {
addr -= cdma->push_buffer.size;
voffset -= cdma->push_buffer.size;
struct push_buffer *pb = &cdma->push_buffer;
!ch->cdma.push_buffer.mapped) {
!ch->cdma.push_buffer.mapped) {