| #
c7fb772b |
| 07-Aug-2021 |
thorpej <thorpej@NetBSD.org> |
Merge thorpej-cfargs2.
|
| #
2685996b |
| 24-Apr-2021 |
thorpej <thorpej@NetBSD.org> |
Merge thorpej-cfargs branch:
Simplify and make extensible the config_search() / config_found() / config_attach() interfaces: rather than having different variants for which arguments you want pass a
Merge thorpej-cfargs branch:
Simplify and make extensible the config_search() / config_found() / config_attach() interfaces: rather than having different variants for which arguments you want pass along, just have a single call that takes a variadic list of tag-value arguments.
Adjust all call sites: - Simplify wherever possible; don't pass along arguments that aren't actually needed. - Don't be explicit about what interface attribute is attaching if the device only has one. (More simplification.) - Add a config_probe() function to be used in indirect configuiration situations, making is visibly easier to see when indirect config is in play, and allowing for future change in semantics. (As of now, this is just a wrapper around config_match(), but that is an implementation detail.)
Remove unnecessary or redundant interface attributes where they're not needed.
There are currently 5 "cfargs" defined: - CFARG_SUBMATCH (submatch function for direct config) - CFARG_SEARCH (search function for indirect config) - CFARG_IATTR (interface attribte) - CFARG_LOCATORS (locators array) - CFARG_DEVHANDLE (devhandle_t - wraps OFW, ACPI, etc. handles)
...and a sentinel value CFARG_EOL.
Add some extra sanity checking to ensure that interface attributes aren't ambiguous.
Use CFARG_DEVHANDLE in MI FDT, OFW, and ACPI code, and macppc and shark ports to associate those device handles with device_t instance. This will trickle trough to more places over time (need back-end for pre-OFW Sun OBP; any others?).
show more ...
|
| #
d47bcd29 |
| 10-Nov-2019 |
chs <chs@NetBSD.org> |
in many device attach paths, allocate memory with M_WAITOK instead of M_NOWAIT and remove code to handle failures that can no longer happen.
|
| #
82b8caba |
| 28-Oct-2017 |
riastradh <riastradh@NetBSD.org> |
Kill some more extern struct cfdriver declarations.
Down with externs in .c!
|
| #
916bdfa5 |
| 27-Sep-2016 |
pgoyette <pgoyette@NetBSD.org> |
Modularize the ld driver and all of its attachments. Ensure that all parents are capable of rescan (or otherwise provide a means of attaching children post-initialization).
|
| #
cbab9cad |
| 27-Oct-2012 |
chs <chs@NetBSD.org> |
split device_t/softc for all remaining drivers. replace "struct device *" with "device_t". use device_xname(), device_unit(), etc.
|
| #
8184d5dc |
| 13-Nov-2010 |
uebayasi <uebayasi@NetBSD.org> |
Don't pull in the whole uvm(9) API to access only PAGE_SIZE and some other constants. These are provided by sys/param.h now.
|
| #
9a5d3f28 |
| 16-Dec-2008 |
christos <christos@NetBSD.org> |
replace bitmask_snprintf(9) with snprintb(3)
|
| #
85b692fb |
| 02-Oct-2008 |
sborrill <sborrill@NetBSD.org> |
Add support for >2TB arrays and implement raw I/O mode which is a requirement for this.
N.B. Still to do - move dump on ld to 64-bit disk addresses
|
| #
1f459d82 |
| 08-Jun-2008 |
tsutsui <tsutsui@NetBSD.org> |
Replace device_lookup() with device_lookup_private() on getting softc for future device_t/softc spilt.
|
| #
ce099b40 |
| 28-Apr-2008 |
martin <martin@NetBSD.org> |
Remove clause 3 and 4 from TNF licenses
|
| #
70885129 |
| 08-Apr-2008 |
cegger <cegger@NetBSD.org> |
use aprint_*_dev and device_xname
|
| #
83967b2f |
| 21-Oct-2007 |
briggs <briggs@NetBSD.org> |
Use AAC_PREALLOCATE_FIBS with the softc as a parameter to catch up with revision 1.10 of aacvar.h.
|
| #
a2a38285 |
| 19-Oct-2007 |
ad <ad@NetBSD.org> |
machine/{bus,cpu,intr}.h -> sys/{bus,cpu,intr}.h
|
| #
88ab7da9 |
| 09-Jul-2007 |
ad <ad@NetBSD.org> |
Merge some of the less invasive changes from the vmlocking branch:
- kthread, callout, devsw API changes - select()/poll() improvements - miscellaneous MT safety improvements
|
| #
f82d990b |
| 05-Jun-2007 |
briggs <briggs@NetBSD.org> |
Bring in changes from FreeBSD... * Allocate commands on-demand. * Update a bunch of constants and some structures. * Use __attribute__ ((__packed__)) instead of __packed to be consistent. * Support m
Bring in changes from FreeBSD... * Allocate commands on-demand. * Update a bunch of constants and some structures. * Use __attribute__ ((__packed__)) instead of __packed to be consistent. * Support more commands for devices that can apparently handle them. * Support a "new comm. interface" present in more recent Adaptec firmware. This reduces the amount of PCI bus traffic in handling commands. * Support larger commands going to the adapter--if the adapter can support them. * Support 64-bit commands for archs where sizeof(bus_addr_t) > 4 and for adapters that advertise SGMAP64. * Handle the WINDOW4G option and NO4GB quirk by excluding 2G-4G window unless we have the WINDOW4G capability without the NO4GB quirk. * Ask the adapter more about its capabilities and try to use those if they seem sane. * Do our bus_dmamap_sync() inside dequeue_fib instead of following, since we have the information that we need there. * Provide access functions for some adapters that I haven't seen yet (MIPS-based "Rocket" adapters). Not yet used.
show more ...
|
| #
f5462cf4 |
| 26-May-2007 |
briggs <briggs@NetBSD.org> |
Clear interrupt status at once instead of piecemeal. Enable a few more bits in the I/O requested by ld and check for the fast response bit when reading back from the queue. Both changes come from rea
Clear interrupt status at once instead of piecemeal. Enable a few more bits in the I/O requested by ld and check for the fast response bit when reading back from the queue. Both changes come from reading the FreeBSD driver and testing on a Dell CERC SATA controller.
show more ...
|
| #
a2141993 |
| 26-May-2007 |
briggs <briggs@NetBSD.org> |
Import code from FreeBSD to tell the controller how much physical RAM the system has. This has the (scary-because-we've-been-running-so-long- without-it) commit message (for the first version of the
Import code from FreeBSD to tell the controller how much physical RAM the system has. This has the (scary-because-we've-been-running-so-long- without-it) commit message (for the first version of the change): Tell the controller how much physical memory we have. Without this there was a chance that our DMA regions would collide with the memory window used by the cache on the controller. The result would be massive data corruption. This seemed to mainly affect systems with >2GB of memory.
show more ...
|
| #
4208391f |
| 24-May-2007 |
briggs <briggs@NetBSD.org> |
Some changes from the FreeBSD driver: * Include definitions of adapter-initiated fibs. * Send aifs back to the adapter after we receive them. * Use indexes instead of pointers in 32-bit hardware regi
Some changes from the FreeBSD driver: * Include definitions of adapter-initiated fibs. * Send aifs back to the adapter after we receive them. * Use indexes instead of pointers in 32-bit hardware registers. * If we get a message that there's a printf from the adapter, but we have a NUL in the first character of the printf string, change the NUL to a space.
show more ...
|
| #
53524e44 |
| 04-Mar-2007 |
christos <christos@NetBSD.org> |
Kill caddr_t; there will be some MI fallout, but it will be fixed shortly.
|
| #
168cd830 |
| 16-Nov-2006 |
christos <christos@NetBSD.org> |
__unused removal on arguments; approved by core.
|
| #
4d595fd7 |
| 12-Oct-2006 |
christos <christos@NetBSD.org> |
- sprinkle __unused on function decls. - fix a couple of unused bugs - no more -Wno-unused for i386
|
| #
59c5bfcb |
| 04-Mar-2006 |
thorpej <thorpej@NetBSD.org> |
LP54 -> LP64 in a comment.
|
| #
59951000 |
| 27-Dec-2005 |
chs <chs@NetBSD.org> |
use %z when printing a sizeof.
|
| #
8c602c38 |
| 26-Nov-2005 |
jdolecek <jdolecek@NetBSD.org> |
Add some casts to make this compile on amd64 (and perhaps other LP64 architectures). Part of PR kern/30456.
The binary object file on i386 confirmed to be exactly the same before and after the chang
Add some casts to make this compile on amd64 (and perhaps other LP64 architectures). Part of PR kern/30456.
The binary object file on i386 confirmed to be exactly the same before and after the change.
show more ...
|