#
302408 |
|
07-Jul-2016 |
gjb |
Copy head@r302406 to stable/11 as part of the 11.0-RELEASE cycle. Prune svn:mergeinfo from the new branch, as nothing has been merged here.
Additional commits post-branch will follow.
Approved by: re (implicit) Sponsored by: The FreeBSD Foundation |
#
185059 |
|
18-Nov-2008 |
jhb |
Allow device hints to wire the unit numbers of devices. - An "at" hint now reserves a device name. - A new BUS_HINT_DEVICE_UNIT method is added to the bus interface. When determining the unit number of a device, this method is invoked to let the bus driver specify the unit of a device given a specific devclass. This is the only way a device can be given a name reserved via an "at" hint. - Implement BUS_HINT_DEVICE_UNIT() for the acpi(4) and isa(4) bus drivers. Both of these busses implement this by comparing the resources for a given hint device with the resources enumerated by ACPI/PnPBIOS and wire a unit if the hint resources are a subset of the "real" resources. - Use bus_hinted_children() for adding hinted devices on isa(4) busses now instead of doing it by hand. - Remove the unit kludging from sio(4) as it is no longer necessary.
Prodding from: peter, imp OK'd by: marcel MFC after: 1 month
|
#
184564 |
|
02-Nov-2008 |
imp |
MFp4:
Make the ISA bus keep track of more PNP details. Plus a minor style fix while I'm here. More could be done here, but except for some SBCs that don't have ACPI, there's limited value to anybody in doing so.
|
#
182103 |
|
24-Aug-2008 |
imp |
MFp4 (my newcard tree):
ISACFGATTR_MULTI is unused. Retire it, and a function that has no side effects used to compute it.
|
#
144985 |
|
13-Apr-2005 |
mdodd |
Add ISACFGATTR_HINTS flag to allow detection of a device that was created as a result of the hints mechanism.
|
#
141391 |
|
06-Feb-2005 |
phk |
Since we are quite unlikely to ever face another platform which uses the i8237 without trying to emulate the PC architecture move the register definitions for the i8237 chip into the central include file for the chip, except for the PC98 case which is magic.
Add new isa_dmatc() function which tells us as cheaply as possible if the terminal count has been reached for a given channel.
|
#
138506 |
|
07-Dec-2004 |
imp |
PNP BIOS devices are fundamentally different than ISA PNP devices. These devices should be probed first because they are at fixed locations and cannot be turned off. ISA PNP devices, on the other hand, can be turned off and often can be flexible in the resources they use. Probe them last, as always.
|
#
135262 |
|
15-Sep-2004 |
phk |
Add new a function isa_dma_init() which returns an errno when it fails and which takes a M_WAITOK/M_NOWAIT flag argument.
Add compatibility isa_dmainit() macro which whines loudly if isa_dma_init() fails.
Problem uncovered by: tegge
|
#
117337 |
|
08-Jul-2003 |
jhb |
- Make the isab devclass global to allow for multiple ISA bridge drivers. - Factor out code common to all ISA bridge drivers attach methods into a isab_attach() function. - Rename the PCI-ISA bridge driver's attach function to pci_isab_attach() and have it call isab_attach().
|
#
105139 |
|
14-Oct-2002 |
jhb |
- Use __BUS_ACCESSOR() to define the ISA ivar accessor functions instead of homerolling our own version. - Rename the enum for memsize from ISA_IVAR_MSIZE to ISA_IVAR_MEMSIZE since using 'MSIZE' in the macro invocation of ISA_ACCESSOR() conflicts with the 'MSIZE' kernel option. The accessor function is still isa_get_msize().
|
#
92756 |
|
20-Mar-2002 |
alfred |
Remove __P.
|
#
83051 |
|
05-Sep-2001 |
yokota |
Rework the ISA PnP driver pnp and the PnP resource parser to fix the following bugs.
- When constructing a resource configuration, respect the order in which resource descriptors are read, in order to establish the correct mapping between the descriptors and configuration registers. "Plug and Play ISA Specification, Version 1.0a", Sec 4.6.1, May 5, 1994. "Clarifications to the Plug and Play ISA Specification, Version 1.0a", Sec 6.2.1, Dec. 10, 1994.
- Do not ignore null (empty) descriptors; they are valid descriptors acting as filler. "Clarifications to the Plug and Play ISA Specification, Version 1.0a", Sec 6.2.1.
- Correctly set up logical device configuration registers for null resources. "Clarifications to the Plug and Play ISA Specification, Version 1.0a"
- Handle null resources properly in the resource allocator for the ISA bus.
|
#
82863 |
|
03-Sep-2001 |
yokota |
Add a new field, id_config_attr to the struct isa_device. It will be later used to store some flags to control PnP device configurations.
|
#
69155 |
|
25-Nov-2000 |
peter |
GC some defunct prototypes
|
#
67442 |
|
22-Oct-2000 |
nyan |
Moved prototypes of isa_alloc_resourcev() and isa_load_resourcev() to isa/isavar.h, and added needed includes.
|
#
66840 |
|
08-Oct-2000 |
msmith |
Resolve the inconsistency between "the number of resources of a particular kind we can manage in a set of configurations" and "the number of resources of a particular kind that can be programmed into an ISA PnP adapter".
Submitted by: Motomichi Matsuzaki <mzaki@e-mail.ne.jp> Submitted by: Hirokazu WATANABE <gwna@geocities.co.jp>
|
#
57973 |
|
13-Mar-2000 |
phk |
Stop isadma from abusing the B_READ, B_RAW and B_WRITE flags.
Define ISADMA_{READ,WRITE,RAW} macros with the same numeric values as the B_{READ,WRITE,RAW} and use them instead throughout.
|
#
57368 |
|
21-Feb-2000 |
gj |
Newbus-ify the USR Sportster TA Intern driver.
Enable the driver in sys/conf/files.i386.
In isa/isavar.h increase ISA_NPORT from 32 to 50. This is required because this brain-damaged card maps 49 (!) port ranges. This does not have a negative impact because this value only specifies the maximum number of entries in a linked list and not the size of an array which is allocated in all drivers.
The register/fifo access routines were not newbus-ified because 1) I knew that the old code worked and is simpler and more efficient 2) the if_ed driver does something similar and 3) the newbus macros collapse to inb/outb anyway.
Reviewed and tested by: hm Approved by: jkh
|
#
55206 |
|
29-Dec-1999 |
peter |
Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL" is an application space macro and the applications are supposed to be free to use it as they please (but cannot). This is consistant with the other BSD's who made this change quite some time ago. More commits to come.
|
#
52174 |
|
12-Oct-1999 |
dfr |
* Add struct resource_list* argument to resource_list_alloc and resource_list_release. This removes the dependancy on the layout of ivars.
* Move set_resource, get_resource and delete_resource from isa_if.m to bus_if.m.
* Simplify driver code by providing wrappers to those methods:
bus_set_resource(dev, type, rid, start, count); bus_get_resource(dev, type, rid, startp, countp); bus_get_resource_start(dev, type, rid); bus_get_resource_count(dev, type, rid); bus_delete_resource(dev, type, rid);
* Delete isa_get_rsrc and use bus_get_resource_start instead.
* Fix a stupid typo in isa_alloc_resource reported by Takahashi Yoshihiro <nyan@FreeBSD.org>.
* Print a diagnostic message if we can't assign resources to a PnP device.
* Change device_print_prettyname() so that it doesn't print "(no driver assigned)-1" for anonymous devices.
|
#
51052 |
|
07-Sep-1999 |
dfr |
Change isa_get/set_flags() to device_get/set_flags().
|
#
50769 |
|
01-Sep-1999 |
dfr |
This represents essentially a complete rewrite of the ISA PnP code. The new system is integrated with the ISA bus code more cleanly and allows the future addition of more enumerators such as PnPBIOS and ACPI.
This commit also enables the new pcm driver since it is somewhat tied to the new PnP code.
|
#
50751 |
|
01-Sep-1999 |
peter |
Sigh. Serves me right for testing against a modified tree (dfr's pnp changes). Doug changed these variables. This should fix the isa_compat.c breakage that phk reported. (Sorry!)
|
#
50477 |
|
27-Aug-1999 |
peter |
$Id$ -> $FreeBSD$
|
#
47613 |
|
30-May-1999 |
dfr |
* Add ivars for ISA pnp. * Move isa_dma* declarations to isavar.h. * Add a method ISA_DELETE_RESOURCE() to the ISA interface. * Tidy up include protection defines.
|
#
47578 |
|
28-May-1999 |
dfr |
* Change device_add_child_after() to device_add_child_ordered() which is easier to use and more flexible. * Change BUS_ADD_CHILD to take an order argument instead of a place. * Define a partial ordering for isa devices so that sensitive devices are probed before non-sensitive ones.
|
#
47398 |
|
22-May-1999 |
dfr |
* Factor out the common code between the isa bus drivers for i386 and alpha. * Re-work the resource allocation code to use helper functions in subr_bus.c. * Add simple isa interface for manipulating the resource ranges which can be allocated and remove the code from isa_write_ivar() which was previously used for this purpose.
|
#
47178 |
|
14-May-1999 |
dfr |
* Define a new static method DEVICE_IDENTIFY which is called to add device instances to a parent bus. * Define a new method BUS_ADD_CHILD which can be called from DEVICE_IDENTIFY to add new instances. * Add a generic implementation of DEVICE_PROBE which calls DEVICE_IDENTIFY for each driver attached to the parent's devclass. * Move the hint-based isa probe from the isa driver to a new isahint driver which can be shared between i386 and alpha.
|
#
46714 |
|
08-May-1999 |
peter |
Slightly increase the visibility of the isa_wrap_old_drivers() stuff. It would be a shame to pollute the new isa.c with the isa_device.h defs.
|
#
45897 |
|
21-Apr-1999 |
peter |
Stage 1 of a cleanup of the i386 interrupt registration mechanism. Interrupts under the new scheme are managed by the i386 nexus with the awareness of the resource manager. There is further room for optimizing the interfaces still. All the users of register_intr()/intr_create() should be gone, with the exception of pcic and i386/isa/clock.c.
|
#
45720 |
|
16-Apr-1999 |
peter |
Bring the 'new-bus' to the i386. This extensively changes the way the i386 platform boots, it is no longer ISA-centric, and is fully dynamic. Most old drivers compile and run without modification via 'compatability shims' to enable a smoother transition. eisa, isapnp and pccard* are not yet using the new resource manager. Once fully converted, all drivers will be loadable, including PCI and ISA.
(Some other changes appear to have snuck in, including a port of Soren's ATA driver to the Alpha. Soren, back this out if you need to.)
This is a checkpoint of work-in-progress, but is quite functional.
The bulk of the work was done over the last few years by Doug Rabson and Garrett Wollman.
Approved by: core
|
#
41181 |
|
15-Nov-1998 |
dfr |
* Add hooks to allow the X server to access I/O ports and memory. * Update drivers to the latest version of the bus interface.
The ISA drivers' use of the new resource api is minimal. Garrett has some much cleaner drivers which should be more easily shared between i386 and alpha. This has only been tested on cia based machines. It should work on lca and apecs but I might have broken something.
|
#
38136 |
|
06-Aug-1998 |
dfr |
Support files for ISA bus.
|