summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2001-12-14Major restructuring for swizzling to the request queue and unswizzling frommjacob
the response queue. Instead of the ad hoc ISP_SWIZZLE_REQUEST, we now have a complete set of inline functions in isp_inline.h. Each platform is responsible for providing just one of a set of ISP_IOX_{GET,PUT}{8,16,32} macros. The reason this needs to be done is that we need to have a single set of functions that will work correctly on multiple architectures for both little and big endian machines. It also needs to work correctly in the case that we have the request or response queues in memory that has to be treated specially (e.g., have ddi_dma_sync called on it for Solaris after we update it or before we read from it). One thing that falls out of this is that we no longer build requests in the request queue itself. Instead, we build the request locally (e.g., on the stack) and then as part of the swizzling operation, copy it to the request queue entry we've allocated. I thought long and hard about whether this was too expensive a change to make as it in a lot of cases requires an extra copy. On balance, the flexbility is worth it. With any luck, the entry that we build locally stays in a processor writeback cache (after all, it's only 64 bytes) so that the cost of actually flushing it to the memory area that is the shared queue with the PCI device is not all that expensive. We may examine this again and try to get clever in the future to try and avoid copies. Another change that falls out of this is that MEMORYBARRIER should be taken a lot more seriously. The macro ISP_ADD_REQUEST does a MEMORYBARRIER on the entry being added. But there had been many other places this had been missing. It's now very important that it be done. For OpenSD, it does a ddi_dmamap_sync as appropriate. This gets us out of the explicit ddi_dmamap_sync on the whole response queue that we did for SBus cards at each interrupt. Now, because SBus/sparc doesn't use bus_dma, some shenanigans were done to support this. But Jason was nice enough to test the SBus/sparcv9 changes for me, and they did the right thing as well. Set things up so that platforms that cannot have an SBus don't get a lot of the SBus code checks (dead coded out). Additional changes: Fix a longstanding buglet of sorts. When we get an entry via isp_getrqentry, the iptr value that gets returned is the value we intend to eventually plug into the ISP registers as the entry *one past* the last one we've written- *not* the current entry we're updating. All along we've been calling sync functions on the wrong index value. Argh. The 'fix' here is to rename all 'iptr' variables as 'nxti' to remember that this is the 'next' pointer- not the current pointer. Devote a single bit to mboxbsy- and set aside bits for output mbox registers that we need to pick up- we can have at least one command which does not have any defined output registers (MBOX_EXECUTE_FIRMWARE). Explicitly decode GetAllNext SNS Response back *as* a GetAllNext response. Otherwise, we won't unswizzle it correctly. Nuke some additional __P macros.
2001-12-14Roll f/w to latest && greatest for 2100 and 2200 cards.mjacob
2001-12-13If initialization fails, panic right away, instead ofNiklas Hallqvist
crashing randomly a little later.
2001-12-13remover registers. bracket spl regions with asm volatilesNiklas Hallqvist
2001-12-13Realistic COPTS handling. Plus it gets in sync with other m68k arches.Miod Vallat
2001-12-13Add magic to the kernel Makefile to remove the need to explicitely putMiod Vallat
the processor type in the configuration files, if you specify a board type. Also, some syntaxic sugar for the MVME187 case as well.
2001-12-13o) start new sentence on a new line;Mike Pechkin
o) wrap long lines; o) fix bogus .Xr usage; o) we don't like blank lines; o) always close .Bl tags; o) OpenBSD -> .Ox; o) don't like .Pp before .Ss; millert@ ok;
2001-12-13Steve, please pay attention to warnings.Miod Vallat
cpp namespace pollution is BAD.
2001-12-13Mention that cron should be started late in the rc file and why.Todd C. Miller
2001-12-13Fix for pmap extract from art.Dale Rahn
2001-12-13Get rid of magic numbersNathan Binkert
2001-12-13Make this run successfully through config(8), for starters...Miod Vallat
2001-12-13atoi->strtoulBob Beck
2001-12-13Fix old alpha bug recently triggered by conversion to busdma.Nathan Binkert
2001-12-13Add major for uda to the bootdev table.Hugh Graham
2001-12-13Support for MVME917 complete.Steve Murphree
2001-12-13Support for MVME197 completed. Fix SPL defs.Steve Murphree
2001-12-13Reorder new includes. art@ says ok.Hugh Graham
2001-12-13remove redundant #if NPF. ok jason@jasoni
2001-12-13changes to work with 32bit platforms and get ethernet address on powerpc.Dale Rahn
Inspired by NetBSD.
2001-12-13Don't use sendmail as an example as its current invocation is tooTodd C. Miller
complicated for a simple example; biorn AT chips.chalmers.se
2001-12-13Remove /etc/protocols and /etc/services from install mediaKenneth R Westerback
that use the miniroot install scripts. During an install, donetconfig() in miniroot/install.sub now creates a minimal /etc/protocols and /etc/services. During an upgrade, enable_network() now copies the existing protocols and services files into /etc. Saves approximately 13K on floppy/cd images.
2001-12-13Initialize variable before use. ok fgs@Thomas Nordin
2001-12-12syncTheo de Raadt
2001-12-12indent.Federico G. Schwindt
2001-12-12Set MAXTIME to 10, allowing to pass on slower machines like p 300.Federico G. Schwindt
2001-12-12Note dc and hifn supportJason Wright
2001-12-12- turn m88k_protection() into a trivial macro.Miod Vallat
- de-uglify pmap_map() interface.
2001-12-12Remove prototypes for non-existent mach leftovers, or duplicated inMiod Vallat
<uvm/uvm_pmap.h>.
2001-12-12/dev/cryptoJason Wright
2001-12-12add hifn and dc at pciJason Wright
2001-12-12add /dev/crypto supportJason Wright
2001-12-12Full suite of bus_dma functions (except bus_dmamap_load_raw)... this allowsJason Wright
the crypto layer and drivers using bus_dmamap_load_mbuf() to work (tested with hifn and dc); Mostly from NetBSD
2001-12-12Handle itimer intervals smaller than the resolution of the clock; pr#2182.Thomas Nordin
2001-12-12o pids should be pid_t, not intTodd C. Miller
o check return value of fscanf()
2001-12-12At Miod's request make the pte in pmap_extract() a pt_entry_t * forTodd C. Miller
consistency with the rest of pmap. Also, use pmap_pte_pa() in pmap_extract() instead of doing the equivalent inline. No functional difference, just style...
2001-12-12Don't return TRUE from pmap_extract if the pte is not valid.Todd C. Miller
From art@ as munged by me.
2001-12-12daemon() can close innocent file descriptors, including opened log.Michael Shalayeff
be more carefull about that and nicer to debugging. daemon() thingie was pointed out by markus@ .
2001-12-12disable debugging, pointed out by brad@Michael Shalayeff
2001-12-12more zip code updates from Ted U <grendel@heorot.stanford.edu>Michael Shalayeff
2001-12-12usmoke some scsi drugs, a little bitMichael Shalayeff
2001-12-12Remember to add the current time...problem noticed by ho@Angelos D. Keromytis
2001-12-12Fix the double occurence of the DFE530TX, and update Promise cards descriptionMiod Vallat
per chris@'s changes to i386.html.
2001-12-11Make Makefile.boot produce a working config(8) again, at least on 4.4BSD.Miod Vallat
2001-12-11Remove declarations that already exist in <sys/conf.h>Miod Vallat
2001-12-11syncTodd T. Fries
2001-12-11Intel pchb and agp, nvidia gf2mx100Todd T. Fries
2001-12-11PDC20268Chris Cappuccio
2001-12-11Support Promise Ultra100TX2 (PDC20268)Chris Cappuccio
from Alexander Yurchenko <grange@rt.mipt.ru>
2001-12-11This file was forgotten in the previous wsmouse commits.Miod Vallat