Lines Matching refs:p0

109 	struct page0		*p0;
141 sc->sample += sc->p0->chunksize / 2;
147 sc->p0->state = EIO;
149 if (sc->p0->state != STATE_RUN) {
150 printf("adlink: stopping %d\n", sc->p0->state);
158 bus_write_4(sc->res[0], 0x28, sc->p0->chunksize);
176 *paddr = vtophys(sc->p0);
182 if (offset - o >= sc->p0->chunksize) {
183 o += sc->p0->chunksize;
206 if (sc->p0->state == STATE_RUN)
210 sc->p0->divisor = u;
213 if (sc->p0->state != STATE_RESET)
217 if (sc->p0->ringsize != 0 && sc->p0->ringsize % u)
219 sc->p0->chunksize = u;
222 if (sc->p0->state != STATE_RESET)
226 if (sc->p0->chunksize != 0 && u % sc->p0->chunksize)
228 sc->p0->ringsize = u;
231 if (sc->p0->state == STATE_RUN)
233 if (sc->p0->state == STATE_RESET) {
235 if (sc->p0->chunksize == 0)
236 sc->p0->chunksize = 4 * PAGE_SIZE;
237 if (sc->p0->ringsize == 0)
238 sc->p0->ringsize = 16 * sc->p0->chunksize;
239 if (sc->p0->divisor == 0)
240 sc->p0->divisor = 4;
242 sc->nchunks = sc->p0->ringsize / sc->p0->chunksize;
244 sizeof *sc->p0 > PAGE_SIZE)
246 sc->p0->o_ring = PAGE_SIZE;
247 sample = (uint64_t *)(sc->p0 + 1);
248 sc->p0->o_sample =
249 (uintptr_t)sample - (uintptr_t)(sc->p0);
257 pg->virt = contigmalloc(sc->p0->chunksize,
285 bus_write_4(sc->res[1], 0x04, sc->p0->divisor);
303 sc->p0->state = STATE_RUN;
309 bus_write_4(sc->res[0], 0x28, sc->p0->chunksize);
318 if (sc->p0->state == STATE_RESET)
320 sc->p0->state = EINTR;
330 if (sc->p0->state == STATE_RESET)
332 sc->p0->state = EINTR;
392 sc->p0 = malloc(PAGE_SIZE, M_DEVBUF, M_WAITOK | M_ZERO);
393 sc->p0->version = PAGE0VERSION;
394 sc->p0->state = STATE_RESET;