Commit Graph

2852 Commits

Author SHA1 Message Date
kent dc268b4f91 Add the following:
- SiS 7012 AC-97 (kern/17716)
 - NVIDIA nForce MCP AC-97
 - AMD 8111 AC-97
2002-08-03 17:10:35 +00:00
soren f69878391e Regen. 2002-08-02 19:36:26 +00:00
soren 6d154bbd46 Add O2 Micro Cardbus bridge ID from PR kern/17469 by Nicolas Joly. 2002-08-02 19:35:43 +00:00
ad 22a1da8740 Regen. 2002-08-02 12:45:23 +00:00
ad 7416434a87 PR 17719 from Mark Davies: Additional Adaptec RAID controller types. 2002-08-02 12:44:42 +00:00
bouyer d9c216c219 Add Siig 20x 8 ports and and Oxford x952 cards. From Paul Shupak in kern/17790. 2002-08-02 10:40:30 +00:00
thorpej 0cb8f6797b Fix a typo which caused the wrong register to be updated when
the media is not full-duplex.
2002-08-02 01:12:32 +00:00
bouyer 8d3ed14056 Regen: remove duplicate entry for 82801DB_LPC. 2002-07-31 11:16:49 +00:00
bouyer 176bb1fe72 Ops, remove duplicate entry for 82801DB_LPC, pointed out by geoff wing. 2002-07-31 11:16:17 +00:00
bouyer 2362df5330 Add support for the 82801DB ICH4 IDE controller, from kern/17757 by
Andreas Wrede <andreas@planix.com>
2002-07-30 21:01:57 +00:00
bouyer 27198fbcab Regen: Add Intel 845G PCI IDs 2002-07-30 20:43:57 +00:00
bouyer 551aeaf8b3 Add Intel 845G PCI IDs, from kern/17743 by Andreas Wrede <andreas@planix.com> 2002-07-30 20:43:12 +00:00
augustss 2dce9e8e5e Number PCI busses using a simple pre-order numbering instead of
some strange binary split numbering that doesn't work with multiple
bridges on the same bus, nor with deeply nested bridges.
2002-07-30 15:00:03 +00:00
augustss 056f94ceb3 Regen. 2002-07-29 20:08:50 +00:00
augustss ef76dd6ed4 Add a couple of bridge devices. 2002-07-29 20:08:25 +00:00
christos 08ea4bc534 my card prints transmit aborted and then hangs. Let's try to reset it. 2002-07-28 15:41:00 +00:00
wiz 645df36eff Spell '[Rr]ight' correctly. From Jim Bernard. 2002-07-26 14:11:34 +00:00
onoe 46243dd61d Add support of Silicon Image 0680 Ultra ATA/133 ATA Controller.
It's ugly that all register values are written in numeric, but I can't
find any definition of the registers to be written in literal.
2002-07-26 10:23:30 +00:00
onoe 2354f208d4 regen: Add Silicon Image (CMDTECH) 0680 2002-07-26 10:17:21 +00:00
onoe f0f7c1edb7 Add Silicon Image (CMDTECH) 0680 2002-07-26 10:14:00 +00:00
bouyer 8e745944fe Ops, this had already been commited by cjs.
Still, call the controller ATA133, even though we use it at ATA100 for now ...
2002-07-22 20:56:57 +00:00
bouyer 5f47fb4861 Add VIA VT8233A support (at Ultra/100 until someone can test 133 for me).
From Ryo HAYASAKA, PR kern/17206.
2002-07-22 20:51:02 +00:00
msaitoh 5e26ad6017 add support intel C-ICH's embeded Ether MACs.
Tested on RadiSys Endura CH815C (http://www.radisys.com/)
2002-07-22 08:25:45 +00:00
msaitoh ef0884e4c6 regen 2002-07-22 07:48:48 +00:00
msaitoh b03baa8ea5 Add Intel 82801E Communications I/O Controller Hub (C-ICH) 2002-07-22 07:47:44 +00:00
uwe fee27e724f Add definitions of IGS coprocessor registers (not used yet).
Always init chip via I/O space.
Map only I/O registers we actually need.
Automatically detect if we need to do bswapping
Add (untested) code to use automagic bswap on CyberPro.
Report video memory amount.
Report if/how bswapping is done.
2002-07-21 02:56:35 +00:00
mjl 395027b4be Correct obviously switched args to memset() 2002-07-18 02:07:13 +00:00
bouyer a07c492369 Add missing BUS_DMA_NOWAIT to bus_dmamap_load_mbuf() calls. Should fix
port-alpha/17615.
2002-07-16 20:20:01 +00:00
drochner 8badbffa2f recognize a SMC9432BTX from PCI subsys id and tell the bus independant
backend that it bas a BNC port (just like the SMC9432BTX1)
2002-07-15 17:23:06 +00:00
thorpej 4616eedacf Document exactly what the problem with TCP/UDP checksum offloading is. 2002-07-14 01:34:00 +00:00
thorpej bc09351189 And thus spake the manual...
When initializing a TCP/IP context descriptor, even if a checksum
offload feature is not going to be used, the IPCSS and TUCSS fields
must be initialized.
2002-07-14 01:12:28 +00:00
thorpej 209a807d3d Correct the description of two bits in the TCP context descriptor. 2002-07-14 00:56:22 +00:00
thorpej 7ba40961d6 Add a BGE_QUIRK_CSUM_BROKEN quirk, and give it to BCM5700 B0, rather
than testing for the revision all over the driver.  If the chip has
broken checksums, then don't advertise the capability to the stack.
2002-07-13 22:48:40 +00:00
thorpej 0ff52204b9 Give BCM5700 Ax and Bx revs the BGE_QUIRK_LINK_STATE_BROKEN quirk,
and test for that, rather than checking revision where the quirk is
handled.
2002-07-13 22:31:18 +00:00
thorpej dcebb2bf0d Add a lookup table with ASIC revision, name, and any quirks. Print
ASIC revision at attach time.  Add BCM5703 revisions.
2002-07-13 22:21:20 +00:00
thorpej 7d85789f0a Move the BCM5401 DSP patch out of the bge driver and into
the brgphy driver; all users of the BCM5400 and BCM5401 need
the DSP patch and the sledgehammer-reset-at-media-set-time.

Also add a DSP patch for the BCM5411 gleaned from Apple's
GMAC driver for Darwin.

Tested with a 3Com 3c996-T (BCM5700 + BCM5401).
2002-07-13 01:23:27 +00:00
enami f216ec52a0 Match Altima AC1001. 2002-07-12 22:29:14 +00:00
enami 2bb480867f Regen. 2002-07-12 22:27:55 +00:00
enami d5138d122f Add product id of Altima AC1001. 2002-07-12 22:26:32 +00:00
thorpej 37422dde7e Add 64-bit quirk for the Accton EN1407-T/Planex GN-1000TE. IDs provided
by SAITOH Masanobu <msaitoh@netbsd.org>.
2002-07-11 18:07:56 +00:00
christos bdd3768afd Add missing messages from FreeBSD's driver. Re-organize a bit how the
message is formatted and printed.
2002-07-10 15:37:30 +00:00
matt e8598c806f Match Apple GMAC id #3. 2002-07-09 23:57:59 +00:00
matt f695a73e85 Regen. 2002-07-09 23:50:29 +00:00
matt f3076f3bd7 Add Apple Xserve PCI devices (more UniNorth) stuff. 2002-07-09 23:47:45 +00:00
thorpej baecca774e * Shuffle the TODO list a bit.
* Fix outbound IPv4 header checksums (missing add of an offset).
* When enabling Rx TCP/UDP checksum offload, make sure that IPv4
  header checksum Rx offload is enabled on the chip, as well.
2002-07-09 21:05:03 +00:00
thorpej 77ef1df52c Don't use internal names to identify chips. Add types for the
i82540, i82545, and i82546 (but don't match them yet).
2002-07-09 19:47:46 +00:00
thorpej 511c4a1947 Regen:
Clean up Intel i8254x product names, and add i82540, i82545, and i82546
product IDs.
2002-07-09 19:43:57 +00:00
thorpej e62cf5409d Clean up Intel i8254x product names, and add i82540, i82545, and i82546
product IDs.
2002-07-09 19:43:03 +00:00
thorpej 297ae331d6 Make a few performance tweaks:
* Bump the number of Rx descriptors from 128 to 256.
* Don't use a sliding Tx interrupt window.  Instead, just do reap-behind
  when we have <= 1/8 of our available descriptors in wm_start().
* Don't use Tx Queue Empty interrupts, and always set the Tx Interrupt
  Delay bit in the Tx descriptor.
* In wm_intr(), always call wm_rxintr() and wm_txintr(), regardless of
  their respective ISR bits being set.  We're here, might as well do some
  work.
* Adjust the Tx and Rx interrupt delay timer values.  New values from
  Intel's driver for FreeBSD via Allen Briggs.

With these changes, NetBSD can sustain > 900Mb/s userland to userland
*without* using TCP checksum offload using Intel PRO/1000 XT cards.
2002-07-09 14:52:37 +00:00
drochner 32f7789dd7 there is at least one VGA chip (Silicon Motion Lynx EM+) where fast scrolling
by moving the display offset pointer doesn't work
2002-07-08 19:48:37 +00:00
augustss c1367622d6 Regen. 2002-07-07 19:49:09 +00:00
augustss 5fba395c90 Add some Sandburst products. 2002-07-07 19:48:41 +00:00
enami c7d782764a Add an entry for Avlab Technology, Inc. Low Profile PCI 4 Serial (in Japan,
sold by Kuroutoshikou as SERIAL4P-LPPCI.)
2002-07-05 14:10:32 +00:00
enami 76899eae10 Regen. 2002-07-05 14:03:33 +00:00
enami d2235ed345 Add vendor id of Avlab technology, Inc. and product id of Low Profile PCI
4 Serial (but not used actually).
2002-07-05 13:59:14 +00:00
thorpej 6a5e35f6cc Return 0, not NULL, when we mean 0. 2002-07-05 00:16:26 +00:00
rjs 048edd40f2 Regenerate. 2002-07-04 21:00:32 +00:00
rjs e97486826e Add Peak System Technik CAN Controller. 2002-07-04 20:51:35 +00:00
junyoung 3d826105dc alloc_attr -> allocattr
Approved by Matthias Drochner.
2002-07-04 14:37:10 +00:00
gson 63dd492c1a Mask MCCB interrupts since they are not currently handled
and it is not clear how they should be handled.  Fixes
kern/17071.
2002-07-04 02:20:22 +00:00
msaitoh 37c7dda3e2 regen 2002-07-03 16:51:36 +00:00
msaitoh e8a90d330f add ServerWorks CMIC LE, CMIC SL and CIOB-X2 2002-07-03 16:51:02 +00:00
drochner 8ae04c4b2c consider all ATI cards broken wrt font handling, as suggested by
Bang Jun-Young <junyoung@mogua.com>, but do it in way which allows
single cards to be declared O.K. in case we find one
2002-07-02 18:17:30 +00:00
thorpej 7ff40c446d Fix multicast filter programming. 2002-07-01 22:42:47 +00:00
thorpej 2555837833 Also save/restore the PCI_INTERRUPT_REG. 2002-07-01 16:15:35 +00:00
thorpej 8eb0145183 Add a table of known-64-bit DP83820-based cards. Use this table
to enable 64-bit data transfers on 64-bit cards when plugged into
a 64-bit slot.  Right know the Asante GigaNIX is listed in that
table.

Sigh, there is an EEPROM bit that can be used to detect 64-bit vs
32-bit cards.  Unfortunately, at least 2 vendors of 32-bit cards
fail to clear the "DATA64_EN" bit in the EEPROM, which causes the
card to lose badly, because it still manages to detect that it's
plugged into a 64-bit PCI slot.  Yay, stupid hardware vendors.
2002-06-30 20:36:06 +00:00
thorpej 145fa4de8a Load configuration data from the EEPROM on the DP83820 differently: rather
than grovel the EEPROM directly, initiate an "EEPROM load" in the PCI
test register, and fetch the values from the CFG register.
2002-06-30 20:04:43 +00:00
thorpej b77065a9a2 Update the TODO list: We have some Tx interrupt mitigation now, so
we need to do Rx interrupt mitigation next.
2002-06-30 19:13:46 +00:00
thorpej c9983ba67f Be more aggressive in giving descriptors to the chip in the transmit
path: Instead of waiting for the if_snd queue to be drained before
giving ownership of the frist descriptor to the chip, do it after
sync'ing all the descriptors for a single packet.
2002-06-30 19:11:40 +00:00
thorpej 6caa2f6db1 Implement a sliding interrupt delay window for Tx interrupts. 2002-06-30 18:52:21 +00:00
thorpej 0f2cbd0361 * Give symbolic names to the CFG bits in the EEPROM.
* Get CFG_M64ADDR, CFG_T64ADDR, and CFG_DATA64_EN from the EEPROM.
  Note, we still disable CFG_M64ADDR and CFG_T64ADDR later (XXX need
  PCI bus capability flags for these).
* Print a message if we're in a 64-bit slot and 64-bit data is
  disabled in the EEPROM.  Make sure CFG_DATA64_EN is disabled if
  we're not in a 64-bit slot.
2002-06-30 18:04:12 +00:00
drochner 9b3975fd12 clean up font handling:
-treat the builtin font like any other font at runtime
-for that, copy it to malloc()'d memory during attach()
-in early console initialization, if we have to consider a broken card
 (VGA_CONSOLE_ATI_BROKEN_FONTSEL), copy the builtin font to another
 location in font ram; the attach() code will do the rest
put the "quirk" code into effect again
2002-06-28 22:24:11 +00:00
thorpej 969b2f1817 Fix a comment. 2002-06-28 18:46:46 +00:00
thorpej 9066ce1621 When stopping the various functional blocks of the chip, clear the
bit and then read it back in a loop (with appropriate delays) waiting
for it to read back clear.

This fixes a problem where the bus would hang when bringing down
the interface or changing interface flags on a system with a
sufficiently fast CPU (e.g. 2GHz P4 Xeon).
2002-06-28 18:44:45 +00:00
fvdl 50ade28e9b Rearrange alignment code a bit. 2002-06-28 18:39:45 +00:00
thorpej 6abec8e2a2 Increase previously added delays from 2us to 10us. 2002-06-28 01:10:06 +00:00
thorpej 90bf67b885 * Only set the jumbo frame capability if we are able to allocate
jumbo frame buffers.
* Garbage-collect some stuff we don't need.
* Fix timeout detection in the firmware handshake.
2002-06-28 00:55:20 +00:00
thorpej 7778c16e7c Use a table to match BCM570x products. 2002-06-27 23:56:20 +00:00
thorpej b7af161065 Don't call m_aux_find() in the inner loop when creating the Tx
descriptor list.  Instead, call it once and remember the result,
and only call it looking for VLAN tags if VLANs are configured
on the interface.
2002-06-27 23:21:34 +00:00
thorpej 68be8ecae4 Put some delay in the loops that poll for MII transaction
completion.  Without this, reading the PHY can hang the bus
on a sufficiently fast CPU.
2002-06-27 22:31:30 +00:00
fvdl 8a454b46d0 Disable TCP/UDP checksums on the receive side again. 2002-06-27 22:10:11 +00:00
drochner 3825b247fb Only allow the bus_dmamem_alloc() code to sleep if no physically contigous
pages are insisted in.
Atm, the pglistalloc code does the same automatically, but this might change.
2002-06-27 18:37:10 +00:00
pooka 48e1ffa97b regen 2002-06-27 09:52:53 +00:00
pooka 107e651a5f two AVM isdn interfaces 2002-06-27 09:50:06 +00:00
junyoung 75cfc612c3 Whitespace KNF. 2002-06-27 06:44:17 +00:00
junyoung 754342aeb8 - Work around a hardware bug that loaded fonts don't work, which is
found on many (all?) of PCI-based ATI graphics cards. It is fully optional
  and can be enabled by adding `options VGA_CONSOLE_ATI_BROKEN_FONTSEL'
  to config file.
- Temporarily remove `quirk' mechanism. Similar code already exists
  in pci_quirks.c.
2002-06-27 06:26:51 +00:00
briggs bea68a808c Change a 'continue' to a 'break' in switch configuring 64-bit devices.
Add a little more debugging code.
2002-06-27 00:59:21 +00:00
cjs 6f2291b427 Match newer NetGear GA302T cards. 2002-06-26 10:48:18 +00:00
cjs f4ba5fb7fc Regenerate. 2002-06-26 10:09:16 +00:00
cjs c3d906554c Add Altima AC9100 Gigabit Ethernet ID. This may not be the correct name.
However, it's the chip on the NetGear GA302T card.
2002-06-26 10:03:58 +00:00
cjs 79a06f07ff Regenerate. 2002-06-26 09:42:44 +00:00
cjs 0ef3b7e33b Add a couple more TI IEEE 1394 host controllers. 2002-06-26 09:33:50 +00:00
drochner f9d6718ab9 allow to overwrite the builtin VGA font if necessary,
make the number of available font slots variable,
set up a "quirk" mechanism to tell the generic vga code about crippled
VGA adapters which ignore the "fontsel" TS register,
initiate the quirk table with an ATI chip which happened to be on a board
I tested with.
Afaik quite a number of ATI chips suffers from the "loaded fonts don't
work" problem - these should be added.
Bad side effect of my change: The builtin font will be kicked out
always if a VGA_CONSOLE_SCREENTYPE is specified which needs a loaded
font. In early console initialization, we don't know much about the
graphics card, so we have to assume the worst (ie ATI:-).
2002-06-25 21:07:42 +00:00
bouyer b2533a4c3e Typo fix 2002-06-24 16:55:17 +00:00
fvdl dd96b79d02 According to the Linux driver from Broadcom, only the 5700 B0 revision had
rx checksum problems. So only disable rx checksum for that revision.
2002-06-24 01:23:11 +00:00
fvdl 4f75cebd06 Add a few revision definitions. 2002-06-24 01:21:39 +00:00
fvdl 34e950c569 Add files for bge at pci attachment. 2002-06-23 20:36:26 +00:00
fvdl b04a6fd69c Driver for Broadcom 570x / Altima AC 1000 gigabit ethernet cards.
Written by Bill Paul for FreeBSD. This port started out with the
port done to OpenBSD by nate@openbsd.org, but ended up looking much
more like the port of the ti driver done by drochner@netbsd.org
(they are similar in structure).
2002-06-22 14:42:07 +00:00
fvdl 5ae59ad64f Regenerate. 2002-06-22 14:34:49 +00:00
fvdl 1ebb22d9a9 Add Altima PCI Ids. 2002-06-22 14:33:54 +00:00