History log of /src/sys/arch/next68k/dev/nextdma.c |
Revision | | Date | Author | Comments |
1.52 |
| 20-Dec-2023 |
thorpej | Remove unnecessary <sys/malloc.h> include.
|
1.51 |
| 03-Feb-2023 |
tsutsui | Misc KNF and cosmetics.
|
1.50 |
| 31-Mar-2017 |
msaitoh | Remove extra 0x. This bug was added when replacing bitmask_snprintf(9) with snprintb(3) (in between NetBSD 5 and 6). Old bitmask_snprint(9) didn't add 0x" automatically for hexadecimal value, so old code used it with "0x%s".
|
1.49 |
| 25-Mar-2014 |
christos | branches: 1.49.6; 1.49.10; 1.49.14; fix sprintf debugging mess.
|
1.48 |
| 27-Oct-2012 |
chs | branches: 1.48.2; split device_t/softc for all remaining drivers. replace "struct device *" with "device_t". use device_xname(), device_unit(), etc.
|
1.47 |
| 06-Jun-2010 |
mrg | branches: 1.47.8; 1.47.18; fix some errors in debug code, found by henning petersen in PR#42529.
|
1.46 |
| 24-Apr-2010 |
dbj | switch from 4 clause to 2 clause BSD license.
|
1.45 |
| 05-Nov-2009 |
dyoung | branches: 1.45.2; 1.45.4; Use deviter(9) instead of accessing alldevs directly. Untested.
|
1.44 |
| 17-Dec-2008 |
cegger | make the compile again
|
1.43 |
| 16-Dec-2008 |
christos | replace bitmask_snprintf(9) with snprintb(3)
|
1.42 |
| 14-May-2006 |
elad | branches: 1.42.62; 1.42.66; 1.42.74; integrate kauth.
|
1.41 |
| 08-Mar-2006 |
lukem | Use the SI capitalization for "Hz", "kHz", and "MHz" in comments and strings. Add a space between numbers and Hz unit.
|
1.40 |
| 24-Dec-2005 |
perry | branches: 1.40.4; 1.40.6; 1.40.8; 1.40.10; Remove leading __ from __(const|inline|signed|volatile) -- it is obsolete.
|
1.39 |
| 11-Dec-2005 |
christos | merge ktrace-lwp.
|
1.38 |
| 05-Jun-2005 |
he | branches: 1.38.2; Adapt to -Wcast-qual by adding a few consts.
|
1.37 |
| 19-Jan-2005 |
chs | de-__P, remove register, ansify.
|
1.36 |
| 04-Dec-2003 |
keihan | branches: 1.36.8; netbsd.org -> NetBSD.org
All "netbsd.org" is now gone from src/sys/arch.
|
1.35 |
| 15-Jul-2003 |
lukem | __KERNEL_RCSID()
|
1.34 |
| 02-Oct-2002 |
thorpej | branches: 1.34.6; Use CFATTACH_DECL().
|
1.33 |
| 27-Sep-2002 |
thorpej | Declare all cfattach structures const.
|
1.32 |
| 27-Sep-2002 |
provos | remove trailing \n in panic(). approved perry.
|
1.31 |
| 11-Sep-2002 |
mycroft | Comprehensive patches from Christian Limpach: * Fix problems with the DMA and SCSI drivers. * Make turbo machines sort of work. Additional fixes from me: * Determine if we're a turbo at boot time, by looking at the ROM machine type. * Set the display size correctly (1120 pixels wide, but padded to 1152 only on non-turbo machines). Caveats: * SCSI doesn't work on the turbo (or at least it blows chunks with no devices attached). * Media selection doesn't work on the turbo (the BMAP stuff doesn't exist on turbo machines). * The boot block is prone to timing out.
|
1.30 |
| 11-Jul-2002 |
christos | Apply patches from Christian Limpach:
- NeXT label reading support - SCSI dma fixes - media support for if_xe.c
Some of these need more cleanup, but at least make SCSI support usable on the NeXT.
|
1.29 |
| 16-Jun-2001 |
dbj | branches: 1.29.2; 1.29.8; 1.29.16; fix handling of transmit length calculation so we now handle full length xmits
|
1.28 |
| 13-May-2001 |
chs | turn on printf format-string checking and -Werror. fix all warnings.
|
1.27 |
| 17-Apr-2001 |
dbj | increase maxsegs of esp main dma map by one to avoid error tweak esp glue to read xfer_len from dma map add some debugging checks for dma driver invariants read DD_LIMIT instead of DD_SAVED_LIMIT on scsi dma shutdowns
|
1.26 |
| 16-Apr-2001 |
dbj | add receive ethernet bpf tap keep receive ethernet crc and set M_HASFCS change bus_dma MD fields to keep xfer_len for entire map instead of per segment turn off automatic dma restarts in preparation for changing scsi driver to handle them. add dma debugging routines to keep history of dma states tweak checking for unusual dma limit register
|
1.25 |
| 07-Apr-2001 |
dbj | automatically restart dma for unexpected shutdowns
|
1.24 |
| 07-Apr-2001 |
dbj | continue to tweak nextdma detection of xfer length add check to esp driver for incomplete transfers, but still does not handle them.
|
1.23 |
| 02-Apr-2001 |
dbj | No longer clobber the DMACSR_SETENABLE bit in the dma interrupt Add the ability to handle unexpected dma shutdowns
|
1.22 |
| 09-Aug-2000 |
tv | branches: 1.22.2; %b -> bitmask_snprintf()
|
1.21 |
| 12-Jan-2000 |
dbj | branches: 1.21.4; applied patch from "Christian Limpach" <chris@Nice.CH>: I've fixed the problem that's been keeping me from using anything newer than 1.4.1 now. I tracked down the problem checkin, it's the big reorg of nextdma.c between 1.19 and 1.20. It didn't introduce a new bug but it activated a check which wasn't activated before. It's the is-the-limit-in-the-right-window-check which was ifdeffed before because some DMA-regs would sometimes have strange values. I think I've fixed the DMA-reg stuff for now: at the end of nextdma_intr, when the csr is poked to make DMA do something, I think the check for the ENABLE bit introduces a race condition. I fixed this by unconditionally setting DMACSR_SETENABLE, this seems to work and also makes the code more readable. I've also tried setting DMACSR_SETSUPDATE unconditionally and this also works well, but I don't know what it implies. Unless you have reasons to not set SUPDATE all the time, I'd suggest making this change as well, it makes the code cleaner and faster... I've tested this patch and it does stop the panics, although I don't think setting SUPDATE all the tima as he suggests is a good idea. The "SUPDATE" bit implies a single update (i.e. the end of a dma chain.)
|
1.20 |
| 29-Aug-1999 |
dbj | branches: 1.20.2; minor rework of dma driver now uses the DMACSR_READ bit and no longer keeps _nd_dmadir in softc unified transfer cleanup code, now in routine next_dma_finish_xfer() fixed bounds checking on registers after transfer. removed checking for bus errors since the bit is always set on some nexts (specifically, on mourning, a 25mhz 68040 mono slab) fixed a couple of dma bugs involving chaining dma buffers.
|
1.19 |
| 28-Aug-1999 |
dbj | discovered the purpose of another bit in the dma control register. DMACSR_READ is now a CSR status bit which can be used to know if current transfer is from cpu to device. the old DMACSR_READ bit is renamed DMACSR_SETREAD. This is a control bit that tells the dma transfer to be from cpu to device.
|
1.18 |
| 17-Aug-1999 |
dbj | remove some debugging hacks that were no longer being used.
|
1.17 |
| 05-Aug-1999 |
dbj | changed dma segment field "ds_read_len" to "ds_xfer_len" since it is valid for either read or write transfers.
|
1.16 |
| 03-Aug-1999 |
dbj | resync bus_dma functions with current alpha versions. added a field to a dma segment to return the actual length of that segment that was successfully transferred.
|
1.15 |
| 14-Mar-1999 |
dbj | branches: 1.15.2; changed dma start alignment from 4 to 16 so that the cache flush functions always have cache line aligned segments. continued experimentation with scsi driver.
|
1.14 |
| 04-Mar-1999 |
dbj | moved declaration of nextdma_intr into correct header file.
|
1.13 |
| 02-Mar-1999 |
dbj | turn on diagnostic check in dma for controller bits at shutdown. adjusted esp overrun to avoid diagnostic check triggering.
|
1.12 |
| 14-Feb-1999 |
dbj | Continue hacking on esp driver. Seems relatively stable in read only mode. write operations appear to lose scsi interrupts and causes timeouts. changes in this checkin include: a nextdma bugfix causing a diagnostic check to erroneously trigger Changed tail strategy to only use tail buffer for the minimal end slop changed expected write dma overrun to 32 bytes. turned on nextdma diagnostic check for dma end address since it no longer gets triggerred by ethernet dma and helps debug scsi dma. Added esp debugging printout and support.
|
1.11 |
| 13-Feb-1999 |
dbj | Continued work on esp scsi driver. Now can at least do enough i/o to create and mount a filesystem, but is not stable enough yet for general use. increased priority of ethernet interrupts, mostly useful to aid debugging of scsi interrupts while using an nfs disk. added additional debugging output in the next dma driver. perform extranneous cache flushes/purges before dma reads/ after dma writes to aid debugging of scsi dma.
|
1.10 |
| 27-Jan-1999 |
dbj | Fixed dma instability introduced with nextdma.c rev 1.7 This fix removes putting 0xfeedbeef in the unused restart registers. When that was done, the machine would panic after a short while with 0xfeedbeef in the normal dma buffer registers. A restart cycle is probably hapenning without an interrupt or something.
|
1.9 |
| 30-Dec-1998 |
dbj | changed register for start of dma buffer to be DD_NEXT_INITBUF instead of DD_NEXT for regular dma transfers, and not just ethernet transmit. Keep track of dma read/write direction and set it each time we start or restart dma. This allows scsi to work, and doesn't appear to hinder ethernet.
|
1.8 |
| 26-Dec-1998 |
dbj | Continued experimentation on SCSI driver. Added nextdma_debug variable to control debug printouts in nextdma driver when ND_DEBUG is defined.
|
1.7 |
| 19-Dec-1998 |
dbj | Revamped DMA interface to unify chaining and non-chaining dma sequences. Updated ethernet driver to work with new interface. Continue work on esp driver.
|
1.6 |
| 08-Dec-1998 |
dbj | initialized unused dma registers to 0xdeadbeef instead of 0 to aid debugging.
|
1.5 |
| 10-Nov-1998 |
dbj | Sync'ed more files and routines with mvme port in prepartion for UVM. Now use generic m68k cachops everywhere rather than defining them in locore.s
|
1.4 |
| 21-Jul-1998 |
dbj | Continued work on the esp scsi driver. Not yet working, but progress continues.
|
1.3 |
| 19-Jul-1998 |
dbj | Commented out some bus_dma code, until I can fix. (bus_dma.c needs sync with alpha port!) Continued progress on scsi driver. A couple of other compiler warning level of tweaks.
|
1.2 |
| 01-Jul-1998 |
dbj | changed diagnostic panic into a printf since an unexpected condition appears to happen every once in a while. (The DMA interrupt gets called w/o the completed bit set)
|
1.1 |
| 09-Jun-1998 |
dbj | branches: 1.1.1; Initial revision
|
1.1.1.1 |
| 09-Jun-1998 |
dbj | Initial import of NetBSD/next68k.
|
1.15.2.1 |
| 21-Jan-2000 |
he | Pull up revision 1.21 (via patch, requested by dbj): Fix problem that causes xe0 to get frequent weird DMA Rx interrupts and panics. Fixes PR#8847.
|
1.20.2.2 |
| 21-Apr-2001 |
bouyer | Sync with HEAD
|
1.20.2.1 |
| 20-Nov-2000 |
bouyer | Update thorpej_scsipi to -current as of a month ago A i386 GENERIC kernel compiles without the siop, ahc and bha drivers (will be updated later). i386 IDE/ATAPI and ncr work, as well as sparc/esp_sbus. alpha should work as well (untested yet). siop, ahc and bha will be updated once I've updated the branch to current -current, as well as machine-dependant code.
|
1.21.4.1 |
| 16-Jun-2001 |
he | Pull up revision 1.29 (via patch, requested by dbj): Fix bugs related to calculation of transmit packet length and allow unaligned pointers in bus_dmamap_sync(). Fixes problems related to full-size ethernet packets, as reported in PR#13212.
|
1.22.2.2 |
| 21-Jun-2001 |
nathanw | Catch up to -current.
|
1.22.2.1 |
| 09-Apr-2001 |
nathanw | Catch up with -current.
|
1.29.16.1 |
| 16-Jul-2002 |
gehenna | catch up with -current.
|
1.29.8.4 |
| 18-Oct-2002 |
nathanw | Catch up to -current.
|
1.29.8.3 |
| 17-Sep-2002 |
nathanw | Catch up to -current.
|
1.29.8.2 |
| 01-Aug-2002 |
nathanw | Catch up to -current.
|
1.29.8.1 |
| 16-Jun-2001 |
nathanw | file nextdma.c was added on branch nathanw_sa on 2002-08-01 02:42:49 +0000
|
1.29.2.2 |
| 10-Oct-2002 |
jdolecek | sync kqueue with -current; this includes merge of gehenna-devsw branch, merge of i386 MP branch, and part of autoconf rototil work
|
1.29.2.1 |
| 06-Sep-2002 |
jdolecek | sync kqueue branch with HEAD
|
1.34.6.5 |
| 10-Nov-2005 |
skrll | Sync with HEAD. Here we go again...
|
1.34.6.4 |
| 24-Jan-2005 |
skrll | Sync with HEAD.
|
1.34.6.3 |
| 21-Sep-2004 |
skrll | Fix the sync with head I botched.
|
1.34.6.2 |
| 18-Sep-2004 |
skrll | Sync with HEAD.
|
1.34.6.1 |
| 03-Aug-2004 |
skrll | Sync with HEAD
|
1.36.8.1 |
| 29-Apr-2005 |
kent | sync with -current
|
1.38.2.1 |
| 21-Jun-2006 |
yamt | sync with head.
|
1.40.10.1 |
| 19-Apr-2006 |
elad | sync with head - hopefully this will work
|
1.40.8.1 |
| 13-Mar-2006 |
yamt | sync with head.
|
1.40.6.1 |
| 22-Apr-2006 |
simonb | Sync with head.
|
1.40.4.1 |
| 09-Sep-2006 |
rpaulo | sync with head
|
1.42.74.1 |
| 19-Jan-2009 |
skrll | Sync with HEAD.
|
1.42.66.3 |
| 11-Aug-2010 |
yamt | sync with head.
|
1.42.66.2 |
| 11-Mar-2010 |
yamt | sync with head
|
1.42.66.1 |
| 04-May-2009 |
yamt | sync with head.
|
1.42.62.1 |
| 17-Jan-2009 |
mjf | Sync with HEAD.
|
1.45.4.2 |
| 03-Jul-2010 |
rmind | sync with head
|
1.45.4.1 |
| 30-May-2010 |
rmind | sync with head
|
1.45.2.2 |
| 17-Aug-2010 |
uebayasi | Sync with HEAD.
|
1.45.2.1 |
| 30-Apr-2010 |
uebayasi | Sync with HEAD.
|
1.47.18.3 |
| 03-Dec-2017 |
jdolecek | update from HEAD
|
1.47.18.2 |
| 20-Aug-2014 |
tls | Rebase to HEAD as of a few days ago.
|
1.47.18.1 |
| 20-Nov-2012 |
tls | Resync to 2012-11-19 00:00:00 UTC
|
1.47.8.2 |
| 22-May-2014 |
yamt | sync with head.
for a reference, the tree before this commit was tagged as yamt-pagecache-tag8.
this commit was splitted into small chunks to avoid a limitation of cvs. ("Protocol error: too many arguments")
|
1.47.8.1 |
| 30-Oct-2012 |
yamt | sync with head
|
1.48.2.1 |
| 18-May-2014 |
rmind | sync with head
|
1.49.14.1 |
| 21-Apr-2017 |
bouyer | Sync with HEAD
|
1.49.10.1 |
| 26-Apr-2017 |
pgoyette | Sync with HEAD
|
1.49.6.1 |
| 28-Aug-2017 |
skrll | Sync with HEAD
|