Date: Fri, 23 Apr 2010 12:07:26 GMT From: Alexander Motin <mav@FreeBSD.org> To: Perforce Change Reviews <perforce@freebsd.org> Subject: PERFORCE change 177259 for review Message-ID: <201004231207.o3NC7QrM093132@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
http://p4web.freebsd.org/@@177259?ac=10 Change 177259 by mav@mav_mavbook on 2010/04/23 12:06:27 Fix build on ARM and do some cleanup. Affected files ... .. //depot/projects/scottl-camlock/src/sys/dev/mvs/mvs.c#11 edit .. //depot/projects/scottl-camlock/src/sys/dev/mvs/mvs.h#8 edit .. //depot/projects/scottl-camlock/src/sys/dev/mvs/mvs_pci.c#3 edit .. //depot/projects/scottl-camlock/src/sys/dev/mvs/mvs_soc.c#3 edit Differences ... ==== //depot/projects/scottl-camlock/src/sys/dev/mvs/mvs.c#11 (text+ko) ==== @@ -449,7 +449,7 @@ if (ch->pm_present) { ecfg |= EDMA_CFG_EMASKRXPM; if (ch->quirks & MVS_Q_GENIIE) { - ecfg |= EDMA_CFG_EEDMAFBS;// | EDMA_CFG_EDMAFBS; + ecfg |= EDMA_CFG_EEDMAFBS; ch->fbs_enabled = 1; } } @@ -496,6 +496,7 @@ ATA_OUTL(ch->r_mem, EDMA_CMD, EDMA_CMD_EENEDMA); } +devclass_t mvs_devclass; devclass_t mvsch_devclass; static device_method_t mvsch_methods[] = { DEVMETHOD(device_probe, mvs_ch_probe), @@ -753,13 +754,8 @@ /* Wait a bit for late !BUSY status update. */ if (status & ATA_S_BUSY) { DELAY(100); - if ((status = mvs_getstatus(dev, 1)) & ATA_S_BUSY) { - DELAY(200); - if ((status = mvs_getstatus(dev, 1)) & ATA_S_BUSY) { -device_printf(dev, "device busy on intr, Status %02x\n", status); - return; - } - } + if ((status = mvs_getstatus(dev, 1)) & ATA_S_BUSY) + return; } /* if we got an error we are done with the HW */ if (status & ATA_S_ERROR) { @@ -823,18 +819,6 @@ case ATAPI_P_CMDOUT: device_printf(dev, "ATAPI CMDOUT\n"); - /* this seems to be needed for some (slow) devices */ - DELAY(10); - - if (!(status & ATA_S_DRQ)) { - device_printf(dev, "command interrupt without DRQ\n"); - et = MVS_ERR_TFE; - goto end_finished; - } - ATA_OUTSW_STRM(ch->r_mem, ATA_DATA, - (uint16_t *)((ccb->ccb_h.flags & CAM_CDB_POINTER) ? - ccb->csio.cdb_io.cdb_ptr : ccb->csio.cdb_io.cdb_bytes), - ch->curr[port].atapi / 2); /* return wait for interrupt */ return; @@ -1208,7 +1192,6 @@ mvs_end_transaction(slot, MVS_ERR_TIMEOUT); return; } - DELAY(20); ATA_OUTSW_STRM(ch->r_mem, ATA_DATA, (uint16_t *)((ccb->ccb_h.flags & CAM_CDB_POINTER) ? ccb->csio.cdb_io.cdb_ptr : ccb->csio.cdb_io.cdb_bytes), ==== //depot/projects/scottl-camlock/src/sys/dev/mvs/mvs.h#8 (text+ko) ==== @@ -602,6 +602,8 @@ u_int cause; }; +extern devclass_t mvs_devclass; + /* macros to hide busspace uglyness */ #define ATA_INB(res, offset) \ bus_read_1((res), (offset)) ==== //depot/projects/scottl-camlock/src/sys/dev/mvs/mvs_pci.c#3 (text+ko) ==== @@ -458,7 +458,6 @@ return (retval); } -devclass_t mvs_devclass; static device_method_t mvs_methods[] = { DEVMETHOD(device_probe, mvs_probe), DEVMETHOD(device_attach, mvs_attach), ==== //depot/projects/scottl-camlock/src/sys/dev/mvs/mvs_soc.c#3 (text+ko) ==== @@ -410,7 +410,6 @@ return (retval); } -devclass_t mvs_devclass; static device_method_t mvs_methods[] = { DEVMETHOD(device_probe, mvs_probe), DEVMETHOD(device_attach, mvs_attach),
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201004231207.o3NC7QrM093132>