Commit Graph

3553 Commits

Author SHA1 Message Date
tsutsui
6c2bb73613 Add support for Acard ATP865/A Ultra100 IDE Controllers. From Tsubai Masanari. 2003-10-24 15:50:02 +00:00
tsutsui
723afbe9db Remove trailing whitespace. 2003-10-24 15:47:49 +00:00
kent
cc9f31d5b2 auich_reset_codec:
wait for readiness of one of all codecs.
2003-10-24 04:06:44 +00:00
mycroft
a480189bf8 Remove IDE_PCI_CLASS_OVERRIDE -- it wasn't actually used anywhere. In lieu of
it, add a class/subclass check to drivers that do not (appear) to have a unique
ID for the IDE controller.  This includes aceride, cypide and optiide.
2003-10-24 00:24:15 +00:00
fvdl
d85a7f8656 Need the NOCRC bit, or my 5704B5 will start acting up. 2003-10-23 20:36:36 +00:00
bouyer
e0f02bb281 If we found a compat channel disabled, unmap the registers. There may be
an ISA IDE adapter at the same address.
2003-10-23 19:29:35 +00:00
fvdl
4df6c69646 * match more cards (from FreeBSD)
* don't set the NOCRC bit in the mode control register, it can cause
  problems on some chips (from the broadcom errata via FreeBSD)
* implement a fallback quirktable that is searched only using the
  major asic revision, so that the driver has a shot at supporting
  newer versions properly without modification
* rename asicrev -> chipid, like the FreeBSD driver
2003-10-23 17:41:59 +00:00
kent
5286b24afb Change the short names of nForce:
nForce-MCP -> nForce
 nForce-MCP-T -> nForce2
 nForce-MCP-T -> nForce3

Use snprintf() and strlcpy() instead of sprintf() and strcpy().
2003-10-23 17:14:54 +00:00
kent
3afd3b3671 - remove unused code
- print diagnostic messages if the primary codec does not get ready in
auich_reset_codec().
2003-10-23 17:05:26 +00:00
fvdl
142de57c80 Regen. 2003-10-23 16:02:09 +00:00
fvdl
ef2ab367bd Add a few more broadcom 57xx ids. From FreeBSD. 2003-10-23 15:54:13 +00:00
fvdl
b4c1912d80 * match the nForce3 controller
* search the whole current PCI bus for the VIA bridge, can't rely on
  it to be function 0 of the same device
2003-10-23 14:27:09 +00:00
ragge
c4690aa593 Set snd queue size to max(WM_IFQUEUELEN, IFQ_MAXLEN), instead of hard to
WM_IFQUEUELEN.
2003-10-23 12:53:02 +00:00
kent
27d4af4355 No need to check the codec ready flag in read_codec() and write_codec().
According to the ICH datasheets, the flag is unchanged unless resetting
the codec.

The flag is useless after enabling bus mastering.  This behavior is common
to all ICH chips.  The quirk handling code is removed.
2003-10-23 05:25:29 +00:00
briggs
193b74f006 Regenerate for ENE Cardbus product IDs. 2003-10-23 00:47:45 +00:00
briggs
cdb1c2e5bf Add some ENE Cardbus bridges from FreeBSD. 2003-10-23 00:46:56 +00:00
briggs
3448998b43 Try to deal better with card removal during the card enabling process. 2003-10-23 00:04:03 +00:00
manu
8beb6e32ae Patch from http://mail-index.netbsd.org/current-users/2003/09/04/0018.html
to fix problems with a sound card
2003-10-22 15:57:33 +00:00
thorpej
0f781c4abb Add support for the SPI EEPROM found on the newer i82541 and i82547
chips.  Add the i82541 and i82547 product IDs to the table, #if 0'd
out, for now (there are still more changes to come for these new chips
to work properly).
2003-10-22 15:50:39 +00:00
fvdl
91371415b1 Match the Promise FastTrak 378. 2003-10-22 11:32:40 +00:00
fvdl
ba07312903 Match the nForce3 AC-97 chip. 2003-10-22 11:32:12 +00:00
fvdl
653fb67506 Regen. 2003-10-22 11:31:18 +00:00
fvdl
5b7cf69d6e Add:
* an id for the Promise FastTrak 378
	* several ids for NVidia nForce3 devices
2003-10-22 11:30:52 +00:00
thorpej
3e560e2b48 Add a TODO list item. 2003-10-21 16:52:08 +00:00
thorpej
c50f2ac573 - Move the i82540EM (LOM) along with the other i82540 product IDs.
- Match the i82545GM (1000BASE-T and 1000BASE-X) and i82546GB
  (1000BASE-T and 1000BASE-X) product IDs.
2003-10-21 16:51:17 +00:00
thorpej
a866babe44 If we're on PCI-X, look up the PCI-X capability. Verify that the
max memory read byte count in the command register is <= the max designed
memory read byte count in the status register.  If not, reset it to the
status register's value.  This is necessary because some BIOSes configure
the wrong value, and the wrong value confused some versions of the PCI-X
capable chips.
2003-10-21 16:41:51 +00:00
thorpej
fa32a2cf94 - Since we access PCI config space as 32-bit words, redefine the PCI-X
command register bits offset and shifted appropriatly (PCI-X command
  makes up the upper 16 bits of the register that holds the PCI-X cap ID
  and next-cap-pointer).
- Define shift counts for max memory read byte count in the command
  and status registers.
2003-10-21 16:22:48 +00:00
tsutsui
281b9dfec6 vaddr_t is not pointer, so don't compare it against NULL. 2003-10-21 16:17:18 +00:00
thorpej
abc7f80ca5 - Map I/O space on chips that support it. While it is not used for
normal operation, it is required to implement a bug work-around on
  some chips.
- When issuing a reset on the i82544, i82540, i82545, i82546,
  and i82541, use I/O space, if available, to work around a problem
  with the memory write cycle (problem only occurs when issuing
  a reset).
2003-10-21 05:45:11 +00:00
thorpej
f44ddf324f Fix a typo. 2003-10-21 05:07:10 +00:00
thorpej
0143773bbc Add some additional register definitions needed for newer chips:
- Control register shadow
- SPI EEPROM stuff
2003-10-21 04:39:32 +00:00
thorpej
2cadb9ce85 Record characteristics of the bus connection at attach time. 2003-10-21 04:35:01 +00:00
fvdl
ce7e811d1d And the wise man said: An u_int32_t is not a pointer, my young apprentice,
so thou shalt not compare it to NULL.
2003-10-21 03:24:25 +00:00
fvdl
c9aca9f010 Don't pass NULL as an integer value. 2003-10-21 03:22:25 +00:00
fvdl
5e8b006a17 Add missing field initializer. 2003-10-21 01:12:42 +00:00
thorpej
e2d086d69d - Do better error checking on EEPROM access.
- Let the EEPROM wire-protocol handler perform the loop.
2003-10-20 22:52:19 +00:00
thorpej
12c5273afa Move all the code that handles the MicroWire EEPROM protocol into
a separate function.
2003-10-20 16:28:23 +00:00
thorpej
fedb07bc8d Fix a typo in the "failed to acquire eeprom" case. 2003-10-20 15:34:25 +00:00
thorpej
0ebc93fe43 Move the code that reads a series of bits from the EEPROM into a
separate function.
2003-10-20 15:33:48 +00:00
thorpej
17aaa92402 Make all of the functions in this file static. 2003-10-20 06:00:26 +00:00
thorpej
10926a6056 Factor out the code that sends bits to the EEPROM into a separate function. 2003-10-20 05:56:17 +00:00
thorpej
f5fc41219d Move the code that handle the EEPROM handshake into separate functions. 2003-10-20 05:40:03 +00:00
tsutsui
8d36037f37 Utilize bus_dma(9) functions more efficiently.
pcscp(4) is the first device driver I wrote about five years ago,
but I still have to learn about bus_dma(9) implementation...
2003-10-19 10:25:42 +00:00
matt
3642aa4ccc Add PCN_NO_PROM flag. (read the macaddr from the chip assuming the "BIOS"
has properly written it).  From John Gordon.
2003-10-19 03:32:25 +00:00
matt
3109d133ea Regen. 2003-10-18 18:53:09 +00:00
matt
0d7c37b872 Add Philips SAA7146AH 2003-10-18 18:51:29 +00:00
enami
145fb5989c Factor out common code. 2003-10-18 12:40:09 +00:00
enami
3072a86cf0 Whitespace nits. 2003-10-18 12:31:37 +00:00
lukem
6ba1832265 regen for more ServerWorks devices 2003-10-18 01:33:16 +00:00
lukem
f1b836d0c9 Remove http://members.hyperlink.net.au/~chart/pci.htm link; it doesn't
exist anymore.

Add some more ServerWorks devices
2003-10-18 01:32:30 +00:00