Lines Matching defs:esc

178 	struct esp_softc	*esc = device_private(self);
179 struct ncr53c9x_softc *sc = &esc->sc_ncr53c9x;
188 esc->sc_tag = oa->oa_tag;
208 if (bus_space_map(esc->sc_tag, 0xf9800024,
209 4, 0, &esc->sc_bsh)) {
214 bus_space_write_4(esc->sc_tag,
215 esc->sc_bsh, 0, 0x1d1);
219 if (bus_space_map(esc->sc_tag, 0xf9800028,
220 4, 0, &esc->sc_bsh)) {
224 bus_space_write_4(esc->sc_tag, esc->sc_bsh, 0, 0x1d1);
243 esp0 = esc;
245 esc->sc_reg = (volatile uint8_t *)SCSIBase;
246 via2_register_irq(VIA2_SCSIIRQ, esp_intr, esc);
247 esc->irq_mask = V2IF_SCSIIRQ;
259 esp1 = esc;
261 esc->sc_reg = (volatile uint8_t *)SCSIBase + 0x402;
263 esc->irq_mask = 0;
271 aprint_normal(": address %p", esc->sc_reg);
317 if (esc->irq_mask) {
319 via2_reg(vIFR) = esc->irq_mask;
320 via2_reg(vIER) = 0x80 | esc->irq_mask;
338 struct esp_softc *esc = (struct esp_softc *)sc;
340 return esc->sc_reg[reg * 16];
346 struct esp_softc *esc = (struct esp_softc *)sc;
352 esc->sc_reg[reg * 16] = v;
363 struct esp_softc *esc = (struct esp_softc *)sc;
365 return esc->sc_active;
371 struct esp_softc *esc = (struct esp_softc *)sc;
373 return esc->sc_reg[NCR_STAT * 16] & 0x80;
379 struct esp_softc *esc = (struct esp_softc *)sc;
381 esc->sc_active = 0;
382 esc->sc_tc = 0;
388 struct esp_softc *esc = (struct esp_softc *)sc;
394 if (esc->sc_active == 0) {
400 esc->sc_active = 0;
404 cnt = *esc->sc_dmalen;
405 if (*esc->sc_dmalen == 0) {
409 p = *esc->sc_dmaaddr;
413 cmdreg = esc->sc_reg + NCR_CMD * 16;
414 fiforeg = esc->sc_reg + NCR_FIFO * 16;
415 statreg = esc->sc_reg + NCR_STAT * 16;
416 intrreg = esc->sc_reg + NCR_INTR * 16;
418 if (esc->sc_datain) {
424 esc->sc_active = 0;
433 esc->sc_active = 0;
437 if (esc->sc_active) {
447 } while (esc->sc_active && (espintr & NCRINTR_BS));
451 *esc->sc_dmaaddr = p;
452 *esc->sc_dmalen = cnt;
454 if (*esc->sc_dmalen == 0) {
455 esc->sc_tc = NCRSTAT_TC;
457 sc->sc_espstat |= esc->sc_tc;
465 struct esp_softc *esc = (struct esp_softc *)sc;
467 esc->sc_dmaaddr = addr;
468 esc->sc_dmalen = len;
469 esc->sc_datain = datain;
470 esc->sc_dmasize = *dmasize;
471 esc->sc_tc = 0;
479 struct esp_softc *esc = (struct esp_softc *)sc;
481 if (esc->sc_datain == 0) {
482 esc->sc_reg[NCR_FIFO * 16] = **esc->sc_dmaaddr;
483 (*esc->sc_dmalen)--;
484 (*esc->sc_dmaaddr)++;
486 esc->sc_active = 1;
492 struct esp_softc *esc = (struct esp_softc *)sc;
494 esc->sc_reg[reg * 16] = val;
504 struct esp_softc *esc = (struct esp_softc *)sc;
507 if (esc->sc_active == 0)
510 esc->sc_active = 0;
512 if (esc->sc_dmasize == 0) {
530 if (esc->sc_datain == 0) {
544 trans = esc->sc_dmasize - resid;
547 trans = *esc->sc_dmalen;
556 *esc->sc_dmaaddr += trans;
557 *esc->sc_dmalen -= trans;
566 struct esp_softc *esc = (struct esp_softc *)sc;
568 esc->sc_dmaaddr = addr;
569 esc->sc_dmalen = len;
572 esc->sc_pad = 1;
574 esc->sc_pad = 0;
577 esc->sc_datain = datain;
578 esc->sc_dmasize = *dmasize;
581 if (esc->sc_dmasize == 0) {
588 (long) *addr, (long) *len, datain, (long) esc->sc_dmasize);
596 esp_dafb_have_dreq(struct esp_softc *esc)
599 return *(volatile uint32_t *)(esc->sc_bsh.base) & 0x200;
603 esp_iosb_have_dreq(struct esp_softc *esc)
647 struct esp_softc *esc = (struct esp_softc *)sc;
657 esc->sc_active = 1;
661 addr = (uint16_t *)*esc->sc_dmaaddr;
662 len = esc->sc_dmasize;
668 (long) addr, (long) len, esc->sc_datain);
688 statreg = esc->sc_reg + NCR_STAT * 16;
697 if (esp_have_dreq(esc)) {
703 len = esc->sc_dmasize -
704 ((long)addr - (long)*esc->sc_dmaaddr);
706 if (esc->sc_datain == 0) {
746 statreg = esc->sc_reg + NCR_STAT * 16;
747 pdma = (volatile uint16_t *)(esc->sc_reg + 0x100);
757 if (esc->sc_datain == 0) {
788 if (esc->sc_pad) {
792 while (!esp_have_dreq(esc)) {
831 if (esc->sc_pad) {
835 while (!esp_have_dreq(esc)) {
885 struct esp_softc *esc = (struct esp_softc *)sc;
887 if (esc->sc_reg[NCR_STAT * 16] & 0x80) {