#
beecddb6 |
| 07-Aug-2021 |
thorpej <thorpej@NetBSD.org> |
Merge thorpej-cfargs2.
|
#
3bee0c11 |
| 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 ...
|
#
e7fe2d07 |
| 07-Jul-2020 |
thorpej <thorpej@NetBSD.org> |
Overhaul the interface to pci_configure_bus(): - Don't expose how PCI bus configuration resource management is implemented. Provide a new resource provider API:
==> pciconf_resource_init() -- In
Overhaul the interface to pci_configure_bus(): - Don't expose how PCI bus configuration resource management is implemented. Provide a new resource provider API:
==> pciconf_resource_init() -- Initialize a PCI configuration resources container. ==> pciconf_resource_add() -- Add a PCI configuration resource to the container (I/O, MEM, or prefetchable MEM). Multiple resources of each type may be added. ==> pciconf_resource_fini() -- Tear down the PCI configurtation resources container once the bus has been configured.
This is much easier to use than the previous method of providing an extent map for each kind of resource, and works better for e.g. ACPI platforms that provide potentially multiple PCI resources in tables provided by firmware.
- Re-implement PCI configuration resource management using vmem arenas, rather than extent maps.
show more ...
|
#
cadbabe0 |
| 14-Jun-2020 |
chs <chs@NetBSD.org> |
replace EX_NOWAIT with EX_WAITOK in device attach methods. remove checks for failures that can no longer occur.
|
#
72e6205f |
| 27-Jan-2012 |
para <para@NetBSD.org> |
converting extent(9) from malloc(9) to kmem(9) preceding kmem-vmem-pool-uvm patch
releng@ acknowledged
|
#
febf67b8 |
| 09-Jul-2011 |
matt <matt@NetBSD.org> |
Allow algor kernels to be built under either algor/algor64 or evbmips-el/evbmips64-el. Note that MAXMAPARITITONS and majors numbers differ between the two ports which is why two kernels are still ne
Allow algor kernels to be built under either algor/algor64 or evbmips-el/evbmips64-el. Note that MAXMAPARITITONS and majors numbers differ between the two ports which is why two kernels are still needed.
show more ...
|
#
b88bc69f |
| 08-Jul-2011 |
matt <matt@NetBSD.org> |
Major update of algor. Now uses generic mips bus_space.h bus_dma.h isa_machdep.h pci_machdep.h Now uses evbmips versions of cpu.c isadma_bounce.c mcclock_isa.c
|
#
25abd4a1 |
| 01-Jul-2011 |
dyoung <dyoung@NetBSD.org> |
#include <sys/bus.h> instead of <machine/bus.h>.
|
#
e297491b |
| 05-Jun-2011 |
matt <matt@NetBSD.org> |
struct device * -> device_t, struct cfdata * -> cfdata_t CFATTACH_DECL(*, sizeof(struct device), -> CFATTACH_DECL_NEW(&, 0
|
#
b935107e |
| 20-Feb-2011 |
matt <matt@NetBSD.org> |
Merge forward from matt-nb5-mips64. Adapt to new interrupt/spl framework.
|
#
ce099b40 |
| 28-Apr-2008 |
martin <martin@NetBSD.org> |
Remove clause 3 and 4 from TNF licenses
|
#
95e1ffb1 |
| 11-Dec-2005 |
christos <christos@NetBSD.org> |
merge ktrace-lwp.
|
#
44bf0a7e |
| 26-Aug-2005 |
drochner <drochner@NetBSD.org> |
s/locdesc_t/int/g
|
#
996c273e |
| 30-Jun-2005 |
drochner <drochner@NetBSD.org> |
adaptions to config_search() change, and minor autoconf fixes, mostly from Havard Eidnes
|
#
2b1a9080 |
| 28-Jun-2005 |
drochner <drochner@NetBSD.org> |
kill questionable uses of config(8) generated xxxlocnames[] locator information does belong elsewhere and definitely shouldn't be in the global namespace
|
#
b081eee0 |
| 28-Jun-2005 |
drochner <drochner@NetBSD.org> |
convert remaining autoconf bus "submatch" functions to use the new signature (passing locators), and remove some which obviously don't serve any purpose (untested, sorry)
|
#
6fdfc66c |
| 14-Jul-2003 |
lukem <lukem@NetBSD.org> |
add __KERNEL_RCSID()
|
#
41a403fb |
| 01-Jan-2003 |
thorpej <thorpej@NetBSD.org> |
Use aprint_normal() for cfprint() routines.
|
#
47c14a34 |
| 02-Oct-2002 |
thorpej <thorpej@NetBSD.org> |
Fix script-o's in last.
|
#
5a9ddc14 |
| 02-Oct-2002 |
thorpej <thorpej@NetBSD.org> |
Use CFATTACH_DECL().
|
#
9a711d69 |
| 27-Sep-2002 |
thorpej <thorpej@NetBSD.org> |
Declare all cfattach structures const.
|
#
6c88de3b |
| 27-Sep-2002 |
thorpej <thorpej@NetBSD.org> |
Introduce a new routine, config_match(), which invokes the cfattach->ca_match function in behalf of the caller. Use it rather than invoking cfattach->ca_match directly.
|
#
9841593f |
| 02-Jan-2002 |
thorpej <thorpej@NetBSD.org> |
Fix a typo.
|
#
636e9cd0 |
| 28-Nov-2001 |
thorpej <thorpej@NetBSD.org> |
Add a "cacheline_size" argument to pci_configure_bus(). It is used to set the cacheline size in the BHLC register. This should be the size of the largest D-cache line on a system.
|
#
b1ec2553 |
| 09-Nov-2001 |
thorpej <thorpej@NetBSD.org> |
Add a "firstbus" argument to pci_configure_bus(), indicating the first bus number to use, rather than always assuming that we should start at bus #0.
|