Lines Matching refs:get
61 /* Fetch and adjust GPU GET pointer
64 * value >= 0, the adjusted GET pointer
65 * -EINVAL if GET pointer currently outside main push buffer
77 /* reset counter as long as GET is still advancing, this is
129 uint32_t get = nvif_rd32(&chan->user, 0x88);
130 if (get != prev_get) {
131 prev_get = get;
141 chan->dma.ib_free = get - chan->dma.ib_put;
160 int get = READ_GET(chan, &prev_get, &cnt);
161 if (unlikely(get < 0)) {
162 if (get == -EINVAL)
165 return get;
168 if (get <= chan->dma.cur) {
175 get = READ_GET(chan, &prev_get, &cnt);
176 if (unlikely(get < 0)) {
177 if (get == -EINVAL)
179 return get;
181 } while (get == 0);
186 chan->dma.free = get - chan->dma.cur - 1;
196 int cnt = 0, get;
202 get = READ_GET(chan, &prev_get, &cnt);
203 if (unlikely(get == -EBUSY))
206 /* loop until we have a usable GET pointer. the value
211 * the other case we discard GET is while the GPU is fetching
215 if (unlikely(get == -EINVAL) || get < NOUVEAU_DMA_SKIPS)
218 if (get <= chan->dma.cur) {
220 * idle (GET == PUT) so we have free space up until
229 * GET==PUT, in which case the below conditional will
242 /* wait for GET to depart from the skips area.
243 * prevents writing GET==PUT and causing a race
248 get = READ_GET(chan, &prev_get, &cnt);
249 if (unlikely(get == -EBUSY))
251 if (unlikely(get == -EINVAL))
253 } while (get <= NOUVEAU_DMA_SKIPS);
264 * current GET pointer. the "- 1" is to ensure there's
266 * push buffer if we require it. we can never get GET == PUT
269 chan->dma.free = get - chan->dma.cur - 1;