Commit Graph

2245 Commits

Author SHA1 Message Date
mcr aa7bfea672 split pccbb_intr_route() into seperate function. 2001-07-06 18:06:59 +00:00
thorpej 583274a82c For product names that include the media in the name, don't bother
saying "Gigabit".
2001-07-05 21:27:31 +00:00
toshii 4866f1a22b Fix typo. s/extention/extension/ 2001-07-05 08:38:24 +00:00
thorpej d79f9adc90 Add another Lava serial board. 2001-07-04 22:39:11 +00:00
bouyer 1c51ff8336 Better fix for rev 1.94 (disable UDMA for SiS controllers with rev 0xd0):
Different chipsets have the same vendor/device/rev ID for the IDE controller,
but only one of them is buggy. So check dev/rev ID of the function 0
(pchb on the buggy one) of the same device to detect the buggy controller.
2001-07-04 16:26:17 +00:00
thorpej 4f9dcdfb8a Split the receive interrupt handler into two versions, one for the
SiS900/DP83815, one for the DP83820.  In preparation for changes
to the DP83820 version for handling jumbo Ethernet frames.
2001-06-30 22:35:05 +00:00
bjh21 8d829065a6 IFM_1000_TX -> IFM_1000_T, as (breifly) discussed on tech-net. 2001-06-30 17:53:58 +00:00
thorpej 4e30120ef0 Sync the Tx descriptors pre- and post- on the Tigon 2. 2001-06-30 17:02:54 +00:00
thorpej f1ea6f5be0 When we're done setting up the General Information Block, sync it.
Sync the NIC-maintained stats structure as appropriate, as well.
2001-06-30 16:34:59 +00:00
thorpej c05a96f530 Add macros to sync the various bits of the DMA'd control data. 2001-06-30 15:57:58 +00:00
thorpej d2a3ac835c Use macros (like those in every other network driver I have written)
to compute the offset of a structure in the DMA'd control data, and
the DMA address of that structure.
2001-06-30 15:39:51 +00:00
thorpej 83b199c106 Split the tx-end-of-frame routine into Tigon 1 and Tigon 2 verions,
for the same reason we split the tx encap routine.
2001-06-30 14:56:59 +00:00
thorpej ee9c81dd38 Split the transmit encap routine into two versions: one for the Tigon 1
and another for the Tigon 2.  This eliminates a conditional in the
loop around the DMA segments, and will make further cleanup easier.
2001-06-30 14:47:23 +00:00
thorpej 291a21d3fb Move the `ti_tx_ring_nic' pointer out of the ring-data structure
and into the softc.  Garbage-collect the `ti_cmd_ring' pointer,
since bus_space is properly used to access the command ring.
2001-06-30 14:16:55 +00:00
thorpej 6237e487ab When a transmit is complete, sync (and unload!!) the DMA map used
for the packet.  When setting up a packet for transmit, sync the
DMA map being used.
2001-06-30 05:48:24 +00:00
thorpej 17238bfd2b Move the Tigon/Tigon2 firmware, version 12.4.13+wpaul, to a
more appropriate location.
2001-06-30 04:33:11 +00:00
thorpej 2642760b40 Update for D-Link ST201 change. 2001-06-30 01:05:25 +00:00
thorpej cdfa27aeeb Regen. 2001-06-30 01:04:25 +00:00
thorpej 9556d5b2f9 Change the DLINK ST-201 entry, add more Sundance/DLINK Gig-E
products.
2001-06-30 01:03:59 +00:00
thorpej f6bce1a60b Correct spelling of media in the product names. 2001-06-29 23:58:08 +00:00
thorpej abda6184c0 In the `copy small' path, make sure to align the payload. 2001-06-29 23:36:03 +00:00
thorpej 46e1a51e62 Add Tamarack Microelectronics, Inc. vendor ID, and product ID for
Tamarack TC9021 Gigabit Ethernet.
2001-06-28 04:45:09 +00:00
mcr 656bb8c5c7 added Solidum PAX.ware 1100 and Lucent ORCA PCI targets 2001-06-27 17:57:23 +00:00
bouyer db6d5fc4a7 When setting/changing an address, no need to call ti_init() if the interface
is already up.
Especially this allow netatalk to start properly on a ti interface.
2001-06-27 16:47:33 +00:00
elric e2f7c01bbd This was able to crash my new alpha consistently when I started X. 2001-06-24 01:11:08 +00:00
bouyer 8a46c28bc6 Proper media support for Compaq Deskpro 4000. PR kern/13244 from
Andrew Gillham.
2001-06-21 16:33:33 +00:00
thorpej ae2fb7473c Regen; add/update 3Com 3CR990 products. 2001-06-20 19:52:19 +00:00
thorpej 8e15530e96 Add more/update existing 3Com 3CR990 product IDs. 2001-06-20 19:51:12 +00:00
thorpej 08415c62e6 Regen; add SysKonnect SKNET-GE. 2001-06-20 16:33:10 +00:00
thorpej 70bbf8c3aa Add SysKonnect SKNET-GE (GEnesis Gigabit Ethernet). 2001-06-20 16:32:32 +00:00
imp c633f47bfd Regen. 2001-06-20 05:46:24 +00:00
imp 34fe57df0e Add O2Micro PCI-{CardBus,PCMCIA} bridges:
OZ6729, OZ6730, OZ6832/OZ6833, OZ6860 and OZ6812/OZ6872
2001-06-20 05:44:33 +00:00
thorpej 7e843c3ccb Device driver for the Sundance Tech. ST-201 10/100 Ethernet. This
chip is found on the D-Link DFE-550TX.
2001-06-19 23:00:47 +00:00
thorpej 62224968e1 Add support for the Adaptec AIC-6915 10/100 Ethernet. This is
a 64-bit PCI chip, available in 1, 2, and 4 port models.
2001-06-18 22:05:35 +00:00
onoe c07d2e1e96 Add Cisco/Aironet 350
Reported by Wolfgang Rupprecht <wolfgang@wsrcc.com>.
This doesn't fix PR 13181, which says the card doesn't work well.
2001-06-18 13:21:24 +00:00
onoe e523b2f091 regen: Add Cisco/Aironet 350 2001-06-18 13:19:07 +00:00
onoe 61285ac2da Add Cisco/Aironet 350 2001-06-18 13:18:08 +00:00
jdolecek e65b619faa Convert to use ether_ioctl() for SIOCSIFADDR and SIOCSIFFLAGS. 2001-06-18 11:06:26 +00:00
simonb 1506d21315 Make error checking/reporting a little more correct. 2001-06-18 01:58:08 +00:00
tsubai de98ab5b38 Regen. 2001-06-17 19:51:27 +00:00
tsubai b63b6d01e6 Add device IDs on the new iBook. 2001-06-17 19:50:33 +00:00
mjacob 60a0137d9c Ooops- we need to allocate an array of pointers to scsipi_xfer structures
isp_maxcmds in length- not an array of scsipi_xfer structures isp_maxcmds
in length.
2001-06-14 19:54:07 +00:00
thorpej 3078a3d26d It's pretty questionable to printf a PCI tag, but if we're going to
do so, at least make the printf compile across the board.
2001-06-14 01:06:56 +00:00
wiz c03a48d64f withough -> without 2001-06-13 10:45:57 +00:00
scw e13606c37b Workaround for buggy OPTi pciide chipset revisions, as reported
in PR/11644.
2001-06-13 09:55:25 +00:00
simonb 6c4e6292a5 Regen; add IBM 405GP PCI Bridge & ROB-in i960RP Microprocessor. 2001-06-13 06:04:25 +00:00
simonb 18b2f7e6a1 Add a port to IBM's PPC405GP Reference Board (the "walnut")
by Eduardo Horvath and Simon Burge of Wasabi Systems.

IBM 4xx series CPU features:
 - New pmap and revised trap handler.
 - Support on-chip timers, PCI controller, UARTs
 - Framework for on-chip ethernet and watchdog timer.
General PowerPC features:
 - Add in-kernel PPC floating point emulation
 - New in{,4}_cksum that is between 1.5 and 5 times faster than the
   old version depending on CPU type.
General changes:
 - Kernel support for generic dbsym-style symbols.
2001-06-13 06:01:44 +00:00
thorpej 9988acd41e Don't need INET or NS includes here. 2001-06-12 22:28:15 +00:00
thorpej e103dbb4b0 Don't need NS-related headers here. 2001-06-12 22:05:53 +00:00
wiz 0a600be867 receive, not recieve 2001-06-12 15:17:10 +00:00
thorpej fb2f3ce7e5 Regen; Add Level One vendor ID, and LXT-1001 10/100/1000 Ethernet
product ID.
2001-06-11 21:13:49 +00:00
thorpej ec5280c1ed Add Level One product ID, and LXT-1001 10/100/1000 Ethernet
product ID.
2001-06-11 21:12:29 +00:00
tron a4401a8e5d Regen from "pcidevs". 2001-06-11 06:36:51 +00:00
tron 6caf1041cb Add support for the D-Link DFE-530TX+. Patch supplied by
Gabriel Rosenkoetter in PR kern/13161.
2001-06-11 06:36:23 +00:00
ad bfac43a1c8 Centralise the geometry fudge. 2001-06-10 10:48:42 +00:00
simonb e5bd00e48d For ports that wire up pciide in compatibility mode, have
them define __HAVE_PCIIDE_MACHDEP_COMPAT_INTR_ESTABLISH
in pci_machdep.h and pciide_map_compat_intr() only calls
pciide_machdep_compat_intr_establish() if that preprocessor
define exists.

Ports that don't need to do this no longer need to supply a
dummy function.
2001-06-08 04:48:54 +00:00
bouyer df4739c8cb Set TI_OPMODE_1_DMA_ACTIVE only if hardware assisted checksum isn't used
(FreeBSD does it this way). My Tigon II works with hardware assisted checksum
now.
2001-06-07 14:35:58 +00:00
tsutsui bcdd082840 Add a driver for the Initio INIC-940/950 PCI SCSI controllers.
Based on OpenBSD's iha driver, and modified some structures by me.

Tested on arc, i386 and macppc.
2001-06-03 13:43:45 +00:00
thorpej cc3002d53b Clarify a historical comment. 2001-06-03 03:55:10 +00:00
thorpej f75e45c854 In ti_init2(), use a simpler, more obvious, and correct MTU
calculation to give the firmware.
2001-06-03 03:46:43 +00:00
thorpej f2b9a1f3cc Replace a bunch of home-grown Ethernet related constants with
ones defined in <net/if_ether.h>
2001-06-03 03:29:44 +00:00
thorpej ca4d373730 Implement support for IP/TCP/UDP checksum offloading provided by
network interfaces.  This works by pre-computing the pseudo-header
checksum and caching it, delaying the actual checksum to ip_output()
if the hardware cannot perform the sum for us.  In-bound checksums
can either be fully-checked by hardware, or summed up for final
verification by software.  This method was modeled after how this
is done in FreeBSD, although the code is significantly different in
most places.

We don't delay checksums for IPv6/TCP, but we do take advantage of the
cached pseudo-header checksum.

Note: hardware-assisted checksumming defaults to "off".  It is
enabled with ifconfig(8).  See the manual page for details.

Implement hardware-assisted checksumming on the DP83820 Gigabit Ethernet,
3c90xB/3c90xC 10/100 Ethernet, and Alteon Tigon/Tigon2 Gigabit Ethernet.
2001-06-02 16:17:06 +00:00
ad f4afeda420 Reduce the delay when polling so that dumps go faster. 2001-05-31 11:31:43 +00:00
nisimura e7c225d7b2 Regen; product IDs for IDT RC32334 and RC32332 systeml controllers. 2001-05-31 01:13:33 +00:00
nisimura 811d8d9102 Add product IDs for IDT RC32234 and RC32334 system controllers. 2001-05-31 01:10:34 +00:00
bouyer 6973b27309 Uninitialised variable (from Krister Walfridsson): in acard_chip_map()
drop compatchan and use the real channel number instead.
2001-05-30 20:30:02 +00:00
lukem d84d2c6c85 add missing #include "opt_kgdb.h" 2001-05-30 15:24:23 +00:00
mrg c13e3a6693 use _KERNEL_OPT 2001-05-30 11:40:35 +00:00
thorpej ebf9e47c26 Add quirks for the Algorithmics P-5064 on-board 21143, and a way to
get the Ethernet address from it (they don't have an SROM).

XXX The latter should be replaced with devprops when they exist.
2001-05-27 21:00:33 +00:00
thorpej ce289cc293 Handle non-contiguous BARs. Needed to be able to configure e.g.
IDE and USB on a PIIX3.
2001-05-27 17:50:40 +00:00
thorpej 607b14bf7b Add mii_bitbang attribute to gsip, pointed out by Andrew Gillham. 2001-05-22 16:58:23 +00:00
thorpej a888f6ef73 If the cache line size in the BHLC register is not configured,
then clear the MRL/MRM/MWI command-ok flags when attaching a
device.
2001-05-22 16:10:44 +00:00
thorpej 6e2bc5b352 Enable the PCI MWI command for memory writes on the i82558 and
higher.
2001-05-22 16:05:01 +00:00
thorpej a5a03e13dd Report 82558, 82559, etc. based on chip revision. Also, remember which
revsion we have for feature enables later.
2001-05-22 01:23:25 +00:00
minoura 92d92b1cb2 Correct an easy mistake in initializing gain registers.
This will fix the L-R imbalance.
Suggested by Ryo HAYASAKA <ryoh@jaist.ac.jp>.
2001-05-21 23:55:04 +00:00
thorpej afdab0cab8 The ICH3 also has the Resume Bug. 2001-05-21 22:12:08 +00:00
thorpej a0f9e3c6fb Regen; add ICH3 network controller IDs. 2001-05-21 22:11:31 +00:00
thorpej 6b51adfbff Add ICH3 network controller IDs. 2001-05-21 22:11:06 +00:00
thorpej b4538a0165 The 82801BA built-in Ethernet has a bug which requires us to
issue a NOP before a CU_RESUME when in 10baseT mode.  Handle
this.
2001-05-21 21:47:52 +00:00
soren 281f1795a4 Add TI 1410 to yc_chipsets[]. 2001-05-19 19:46:08 +00:00
enami d5338ae90e Regen. 2001-05-18 15:35:49 +00:00
enami 679f6a1a54 Add product IDs of internal devices found in NEC VRC4173 and vendor/product
ID of MediaQ MQ200.
2001-05-18 15:35:19 +00:00
thorpej f1f78293df - Add some instrumentation which can be enabled by defining
SIP_EVENT_COUNTERS.
- Decrease SIP_NTXSEGS to 8 and increase SIP_TXQUEUELEN to 256.
  This gives us 256 transmit jobs with only twice the descriptor
  memory footprint.  This prevents stalling transmissions due to
  lack of transmit jobs under heavy load.
- Increase SIP_NRXDESC to 128 so we don't run out of receive descriptors
  under extreme load.
- As recommended by the manual, leave one descriptor in the transmit ring
  with OWN clear to prevent wrap-around.
- Even though the manual claims that driver software must initialize
  TXDP if there are no pending transmissions when a new transmission
  is to be initialized, doing so causes serious performance degredation
  on the DP83820 under heavy load.  Not initializing TXDP also increases
  performance on the DP83815.

All of this gets us up to ~90Mb/s on both the DP83820 and DP83815 when
connected to a 100base network.
2001-05-18 04:38:30 +00:00
thorpej dbdf3820d8 Add a driver for the National Semiconductor DP83820 Gigabit Ethernet
chip.  This is found on the NetGear GA-622 and Asante FriendlyNet
GigaNIX.
2001-05-18 02:03:53 +00:00
drochner c1f451f54d regen 2001-05-17 17:37:01 +00:00
drochner 2e9334d53e add some stuff I got between my fingers 2001-05-17 17:36:30 +00:00
drochner c1617a9b13 check PCI subsystem ID for a SMC9432BTX1 or SMC9432FTX and tell the common
driver about their media support (BNC and 100FX, respectively)
2001-05-17 17:35:13 +00:00
lukem be493349d2 delint: zero sized array initalisation is a gccism 2001-05-16 04:39:03 +00:00
lukem 0b6a1eb95a delint: () protect some macro args 2001-05-15 14:37:36 +00:00
lukem d3e16de232 delint: need ; between goto label and } 2001-05-15 14:30:24 +00:00
ad ae0203ee27 Correct arguments to bus_dmamap_create(), and add a reset routine for the v3
interface.
2001-05-15 12:49:37 +00:00
thorpej 38c798fe9f Encapsulate name declarations in macros in preparation for adding
conditionally-compiled code for the DP83820.
2001-05-15 03:06:21 +00:00
thorpej edfd12a9b1 Define the register/descriptor differences between the DP83815 and the
DP83820.  The DP83820 definitions are wrapped in #ifdef DP83820, since
there are enough differences that a single binary object would not be
able to efficiently drive both the DP83815 and DP83820.
2001-05-15 02:19:05 +00:00
thorpej bdb6ea6ecc Regen; added DP83820 Gigabit Ethernet chip. 2001-05-14 22:37:24 +00:00
thorpej 285931ff50 Add product ID for the National Semiconductor DP83820 Gigabit Ethernet
chip.
2001-05-14 22:36:06 +00:00
matt 2573405952 Add latent vendor entries for ServerWorks and Winbond IDE controllers.
No code to use them as yet.
2001-05-14 20:41:27 +00:00
fvdl 8311862915 Add amd766 support. Rename some variables to 7x6 now that it supports
both 756 and 766.
2001-05-06 20:06:35 +00:00
fvdl 9fce66b9a0 Regen. 2001-05-06 16:10:45 +00:00
fvdl 6e51539959 Add some IDs for the AMD760 chipset, as specified in the datasheet. 2001-05-06 16:09:38 +00:00
fvdl 9bf58a757b Add missing break statement. 2001-05-06 14:32:35 +00:00
bouyer bef8b534cc Now that we can do it, print "HPT366" or "HPT370" depending on PCI revision. 2001-05-04 18:38:36 +00:00
bouyer 7e9f9eaaa1 Better support for VIA chipsets: look at the product/rev ID of the ISA bridge
to guess the pciide capabilities, rather than trying to guess it by ourselve.
Add preliminary support for the 686b (Ultra/100) guessed from FreeBSD/linux
driver (datasheet not publically available,  I contacted via).
Let chip-specific map routine do the autoconf printf if ide_name is NULL
(they may have more details about the controller than we have in pciide_attach)
2001-05-04 15:25:05 +00:00
bouyer 956a71c1c5 Add pci bus number to pci_attach_args, as suggested by Jason on tech-kern
(needed for pciide)
2001-05-04 15:13:17 +00:00
ross e3f2f91bfb Split pci and eisa/isa attachment calls, plus misc cleanup. 2001-05-03 20:34:54 +00:00
scw 2963ff5c58 Add `l_poll' to `struct linesw' and provide an xxxpoll() entry point
in each tty driver to indirect through it.

This allows tty line-disciplines to handle poll(2) system calls.
2001-05-02 10:32:08 +00:00
jmc 9625a01e94 Change to IPL_BIO 2001-05-01 05:10:30 +00:00
jmc 36d8e99d14 Cast args correctly to match format strings. 2001-04-30 02:49:04 +00:00
bouyer 937a7a3ed9 Pull up the thorpej_scsipi branch to main branch.
This is a completely rewritten scsipi_xfer execution engine, and the
associated changes to HBA drivers. Overview of changes & features:
- All xfers are queued in the mid-layer, rather than doing so in an
  ad-hoc fashion in individual adapter drivers.
- Adapter/channel resource management in the mid-layer, avoids even trying
  to start running an xfer if the adapter/channel doesn't have the resources.
- Better communication between the mid-layer and the adapters.
- Asynchronous event notification mechanism from adapter to mid-layer and
  peripherals.
- Better peripheral queue management: freeze/thaw, sorted requeueing during
  recovery, etc.
- Clean separation of peripherals, adapters, and adapter channels (no more
  scsipi_link).
- Kernel thread for each scsipi_channel makes error recovery much easier
  (no more dealing with interrupt context when recovering from an error).
- Mid-layer support for tagged queueing: commands can have the tag type
  set explicitly, tag IDs are allocated in the mid-layer (thus eliminating
  the need to use buggy tag ID allocation schemes in many adapter drivers).
- support for QUEUE FULL and CHECK CONDITION status in mid-layer; the command
  will be requeued, or a REQUEST SENSE will be sent as appropriate.

Just before the merge syssrc has been tagged with thorpej_scsipi_beforemerge
2001-04-25 17:53:04 +00:00
simonb 4d24d9a940 Regen. 2001-04-25 03:07:19 +00:00
simonb 3e4456d049 Spell "portege" correctly - it's a computer, not a car. 2001-04-25 03:06:11 +00:00
mycroft ad44e79f90 It appears there's a race condition when disabling a channel that causes us to
need to explicitly relatch the interrupt when firing it up again.  So, in the
trigger routines, explicitly disable and reenable the interrupt to relatch it,
like we do in the interrupt routine.

Also clean up some broken loop overrun checks.

My ES1371 seems to be more reliable now, but I'm not going to pretend to fully
understand this chip.
2001-04-24 21:03:33 +00:00
tsutsui e53804bd4b Preliminary support for Acard ATP850/860 UDMA PCI IDE controllers.
XXX Currently disabled by default because it has some problems on macppc.
XXX Maybe some more initialization is needed, but there is few information
XXX about the chips.
2001-04-21 16:36:37 +00:00
tsutsui 8dfe3efca7 space -> tab 2001-04-21 16:10:54 +00:00
tsutsui e815501ea9 Regen from pcidevs rev. 1.318:
> Correct an entry for Acard UDMA IDE controller.
> The chip is actually marked as ATP860-A, not ATP860R.
2001-04-21 13:32:25 +00:00
tsutsui 42f78f411a Correct an entry for Acard UDMA IDE controller.
The chip is actually marked as ATP860-A, not ATP860R.
2001-04-21 13:28:52 +00:00
tacha 109656b0a7 rewrite suspend/resume routine. If you suspend while playing audio,
clcs and clct continue playing when resume.
2001-04-18 01:35:06 +00:00
hubertf c18a98953b Regen for moved Trident CyberBlade entry 2001-04-13 19:01:28 +00:00
hubertf 1384b9cebc Move the Trident CyberClade entry where it belongs. 2001-04-13 19:00:31 +00:00
thorpej c5a6653add Use IPL_NET for now -- the only use of 1394 right now is for network
interfaces (IPv{4,6}-over-1394), and this allows us to get rid of
some evil interrupt mixing issues in the 1394 network code right now.
2001-04-12 21:39:31 +00:00
thorpej 909f3d7efb splimp -> splvm (use IPL_IMP needs to be revisited). 2001-04-12 18:18:31 +00:00
itojun 477b193d09 support T1 card (LMC1200) properly. PR 12331 (patch from openbsd).
change DLT type to cisco HDLC, as lmc driver is hardwired to cisco HDLC
on driver attach.  XXX we may need to revisit this, as if_spppsubr may want
to alter this later.
2001-04-12 07:50:54 +00:00
itojun 321e957c86 regen. 2001-04-12 07:47:16 +00:00
itojun 2ce6b3ba60 change symbol for LMC T1 card. part of PR 12331. 2001-04-12 07:46:00 +00:00
matt bc6820dd0d Regen. 2001-04-12 06:26:49 +00:00
matt ece3db982d Add UltraSparc IIe PCI interface. 2001-04-12 06:26:20 +00:00
jdolecek 372e5956ef Only install headers which are actually used by our userland. This
saves about 2.2MB under /usr/include/dev/. Discussed on tech-kern@
recently.

I HOPE to get the list right. The headers I left in are ones
used for MI tools and those whose usage I discovered by grep over tree sources.
Feel free to put needed includes back in if you encounter anything which
should not be removed from lists.
2001-04-11 07:42:31 +00:00
martin 93c0294b72 Specify the size of the framing added to packets, so if_sppsubr.c can
calculate correct statistics.
2001-04-09 19:34:40 +00:00
ad a69e2f1310 Regen. 2001-04-09 11:52:27 +00:00
ad e68e07d62c Add Tekram DC-315/DC-395. 2001-04-09 11:51:30 +00:00
minoura 817c994ead Make this compile on alpha with DIAGNOSTIC.
Thanks to atatat.
2001-04-05 12:36:51 +00:00
ad 87fee883e5 - Allocate any private space thats requested.
- Just use mapreg_map().
2001-04-01 15:06:22 +00:00
rh ba614ae877 Fix DPRINTF statements so this compiles with debug enabled. 2001-03-31 10:10:37 +00:00
minoura 5e2f81a0cf Regen. 2001-03-31 09:08:06 +00:00
minoura 27fcb60ea5 Add Cyrix products (MediaGX). 2001-03-31 09:06:45 +00:00
ad 30b7c151f0 AEN 0x000c appears to mean `init started'. From lukem. 2001-03-30 16:48:57 +00:00
minoura 28f83415ad Update TODO list. 2001-03-30 15:53:25 +00:00
minoura 537038859e Yamaha YMF724/740/744/754 (DS-1) PCI audio driver. 2001-03-30 14:32:08 +00:00
petrov ae964a3f9b use NCR_F_DMASELECT instead ncr53c9x_dmaselect 2001-03-29 03:26:52 +00:00
msaitoh bb73804714 add NetBSD RCS id again 2001-03-28 17:22:51 +00:00
msaitoh 2815a110f3 add NetBSD RCS id 2001-03-28 17:08:29 +00:00
jmc 06fc8b2014 Actually fix fwlynx correctly. Got the right filename this time. 2001-03-25 03:48:36 +00:00
briggs 2dbd96c75c There is no need to accept all ARP packets (regardless of destination
address) on the DP83815.  Noted by Shiva Shenoy <shiva@riverstonenet.com>
in private correspondence.
2001-03-24 19:40:51 +00:00
martin 5171d409a5 First step to cleanup the hardware driver <-> upper layers interface.
This now provides slightly more functionality than the FreeBSD layer1-newbus
interface. It was meant to be a simple change to one header and a few
c files, but the change rippled all through various stuff.

To prevent a change to the kernel<->userland interface right now the kernel
is now lying about card types to userland (but who cares). This will be fixed
when the userland interface changes, after layer 3 <-> layer 4 has been
fixed.

Functional changes:

Provide a clean interface for hardware drivers to attach to the upper
layers. This will need another small change in the B-channel handling
when a similar change to the layer 3 <-> layer 4 interface happens.

Avoid passing indices into global arrays of pointers around, instead pass
the pointers itself. Don't code hardware driver types by predefined magic
numbers (think LKM). Prepare for detachable drivers (think pcmcia).

While there remove some sets of function pointers always pointing to the
same function (meant to be the configurable set of D channel protocol
handlers). It is unlikely another supported D-channel protocol will fit into
that (maximal layer interface) abstraction. When we get support for another
protocol, we will need to come up with a workable interface. Besides, the
old implementation was, uhm, strange.
2001-03-24 12:40:29 +00:00
christos 3319b05361 There was a stray debugging message "OptionMode = %x\n". Prefix it with
the device name, and enable it only in debugging mode.
2001-03-24 02:04:40 +00:00
soren 1d7d1bd0db Regen. 2001-03-21 18:10:34 +00:00
soren 984c03180f Lower-case a few hex digits for easier searching. 2001-03-21 18:10:13 +00:00
hubertf b11582be50 regen for trident cyberclade 2001-03-21 01:10:06 +00:00
hubertf d54969d21f Add Trident CyberBlade as found in Toshiba Satellite Pro 4600 2001-03-21 01:09:36 +00:00
bouyer 66f705d045 Don't set up PDC2xx_SCR the same way for promise Ultra/66 & Ultra/100,
this special setup seems to break some adapters.
Reported by Kazushi Marukawa.
2001-03-20 17:56:46 +00:00
bouyer df43ec1064 Add BUS_DMA_STREAMING for the data bus_dmamap_load(). 2001-03-20 17:54:39 +00:00
ad 056ea0d17a +#include <dev/i2o/iopio.h> 2001-03-20 13:21:00 +00:00
mrg b10a79d548 regen 2001-03-20 00:41:19 +00:00
mrg f921de978d add sun device ids found on sunblade1000 systems. 2001-03-20 00:39:12 +00:00
thorpej 79e48a7370 Regen. 2001-03-17 02:26:48 +00:00
thorpej 4628dbd48d Fixup some Intel Gig-E entries. 2001-03-17 02:26:26 +00:00
ross e10dbcfa2b Sigh.
Revert the revert. Naturally, I considered OpenBSD and FreeBSD when I fixed
the incorrect use of the spl*() interface. The change I made is _required_
for both NetBSD _and_ OpenBSD, or the code won't even COMPILE except on
i386, and it is acceptable on FreeBSD. Your revert and mod rebroke it on
OpenBSD and tangled things up on NetBSD.  It made no difference on FreeBSD.

In particular, there are 2,895 uses of splx() within the FreeBSD kernel,
and only a mere 21, that's "twenty one" uses of intrmask_t, and those are
almost exclusively in the guts of the interrupt implementation, _not_ in
the _use_ of the exported spl*() functions.  It's perfectly OK to `int s
= spltty()' in a portable driver in FreeBSD.

For that matter, FreeBSD (-current at least) does not even *use* spl*()
any more and stubs them all out with inlines that do _nothing_ except return
0, making intrmask_t vs int _even less_ important there than it already
was.

I think it's great that you want to start hacking on the kernel, but do
note that this is certainly the most simple of the kernel interfaces. It
just gets worse from here. Be careful out there!
2001-03-16 19:32:35 +00:00
bouyer d95448cbd3 Ops, forgot to commit this file along with the "variable com freq" support.
Thanks to Bill Sommerfeld for pointing this out.
2001-03-16 16:43:54 +00:00
wiz 038e997989 Restore non-NetBSD parts -- we're still sharing this code. 2001-03-16 15:06:24 +00:00
enami fe99796a13 Make fwohci works on big endian cpu (e.g., powermac g4). 2001-03-15 23:01:33 +00:00
ross 6fafd0bb60 Do critical sections a better way. 2001-03-15 22:49:27 +00:00
enami f0643cdf2a Fix indentation and white space usage. 2001-03-15 22:20:12 +00:00
ross ac906a109d LP64 a kprintf(9) 2001-03-15 21:59:09 +00:00
bouyer 8c5e25e486 1010 has clock quadrupler but without PPL, so use SF_CHIP_DBLR. 2001-03-15 17:41:28 +00:00
drochner 35067a1717 this driver doesn't work on my thinkpad, so disable the match for the
IBM/0x00dd subsystem ID too
2001-03-14 11:38:55 +00:00
mjacob ecdaf852b2 Clean up licence a bit. ANSIfy. 2001-03-14 05:47:56 +00:00
bouyer c7871f80bf Looks like "VSCom PCI-800H" should be in fact "Titan PCI-800H". 2001-03-13 17:23:52 +00:00
bouyer 2f52d98a08 Regen. 2001-03-13 17:22:27 +00:00
bouyer 6bf4720913 Add Titan Electronics Inc vendor ID (from linux) and Titan VS-800H
product.
2001-03-13 17:21:16 +00:00
jmc fcb48d8a3e Fix typo on fwlynx_pci driver. Brett McCoy reported this in. 2001-03-13 07:38:05 +00:00
bouyer 9ea2b5098b Preliminary support for SYM53C1010-33 (at 80MB/s only for now), based on
patches sent by Matthias Drochner <M.Drochner@fz-juelich.de> and
Kenneth R Westerback <kwesterback@home.com>
2001-03-12 10:00:50 +00:00
bouyer 01ca4cb938 Support the Promise Ultra/100 at full speed, and fixes the "bogus intr"
problem some peoples reported for Promise Ultra/100.
Thanks to Chuck Silvers for giving me a Promise Ultra/100 so I could do some
tests.
2001-03-12 09:53:28 +00:00
bouyer 028b15c81a Correct definition of PDC262_U66_EN (from FreeBSD).
Correct values of MW DMA 2, and add values for UDMA5 (from linux).
2001-03-12 09:51:21 +00:00
briggs 8f833ca839 Goes along with rev. 1.25/1.26 of if_sip.c -- forgot to commit. 2001-03-09 16:12:29 +00:00
briggs 75a60f539a More fixes for the DP83815...
- Set the destination address register properly for "perfect match" mode
  in the receive filter setup.
- Do not enable multicast receipt unless we are configured for some multicast.
- Use the "recommended settings" (which set undocumented registers and
  documented-as-reserved fields) for the silicon revision 302h (not 203h,
  as documented in one of the two places in the manual) because the
  documentation is unclear and because those settings fix the card's
  behavior in "perfect match" mode.  Without those settings, the card
  was generating random CRC/invalid symbol errors and generally not
  working unless it was set to be promiscuous.

With these changes, this week's version of the Netgear FA311 works for me.
2001-03-09 16:07:20 +00:00
briggs 77a57bede4 Add a variant hook to read the ethernet MAC address from EEPROM differently
for the SiS 900 and the DP83815.  Also add some configuration suggested by
the DP83815 documentation for one model of the DP83815.
2001-03-09 07:42:24 +00:00
ichiro 69243771db Fix powerhook routine.
support resume/suspend.
2001-03-08 12:54:45 +00:00
thorpej 21a0f1ac65 advlib.c and advmcode.c should be built for all adv, not
just adv_pci.  From takashi.yamamoto@bigfoot.com, kern/12341.
2001-03-08 04:18:17 +00:00
thorpej 6665b106a3 Add BUS_DMA_STREAMING to data transfer map loads. 2001-03-08 02:36:35 +00:00
thorpej fd7ed72be1 Add BUS_DMA_STREAMING to data transfer maps. 2001-03-07 23:07:12 +00:00
matt 21b608bb3b Regen. 2001-03-07 01:44:51 +00:00
matt f5a5af26a2 Add Galileo GT-64260. 2001-03-07 01:42:37 +00:00
matt 5b634b6b3a Add the PCI frontend for the TI LYNX firewire chip. Note that the
backend still needs to be worked on.
2001-03-06 07:38:32 +00:00
matt 37d2bbb0a2 Only include "locators.h" is _KERNEL is defined. 2001-03-05 23:50:02 +00:00
matt 9ebe639d49 Regen 2001-03-05 01:32:53 +00:00
matt a5b4d0e3ee Add Winbond W83C533F functions. 2001-03-05 01:29:26 +00:00
msaitoh 749e1bccc9 add support for NetMos NM9835 Dual UART and 1284 Printer port. 2001-03-04 21:30:24 +00:00
msaitoh 4bbb1a724a regen 2001-03-04 21:28:06 +00:00
msaitoh 6d2a2f23b9 Add an entry for NetMos 2001-03-04 21:26:44 +00:00
ad fc04a38b9a Don't choke when we get lots of AENs all at once. 2001-03-04 17:50:51 +00:00
kim 335ac388ca Help messages appear each on their own line when
discovering additional ports on a multi-port card.
2001-03-04 00:01:06 +00:00
mjl 7e6f124451 Correct wrong error return in mmap fn. 2001-03-03 00:08:05 +00:00
thorpej 80436e480c Regen -- Add Mylex AcceleRAID and eXtremeRAID product and subsystem IDs. 2001-03-02 17:32:59 +00:00
thorpej e7ad0a9187 Add Mylex AcceleRAID and eXtremeRAID product and sybsystem IDs. 2001-03-02 17:32:01 +00:00
thorpej 848541a63e In the self-describing bogus code block, at least use plausible
subclass IDs.
2001-03-02 06:56:11 +00:00
thorpej af864c36fe Regen; added Xircom WinGlobal modem product ID. 2001-03-02 06:53:54 +00:00
thorpej 7ec4113ee0 Add product ID for Xircom WinGlobal modem. 2001-03-02 06:51:07 +00:00
mrg 11524b8374 allow pci_bus_maxdevs() to be replaced with pci_bus_devorder() and
pci_dev_funcorder() that have the following signatures:

int pci_bus_devorder(pci_chipset_tag_t pc, int bus, char list[32]);
int pci_dev_funcorder(pci_chipset_tag_t pc, int bus, int device, char list[8]);

they control the order of PCI bus probe at the device and function level,
by filling in a value from 0 to 31 for pci_bus_devorder() or 0 to 7 for
pci_dev_funcorder, with a value of -1 to signify no more entries.


when device properties arrive, these will be replaced with some facility
based on properties (design/implementation unknown currently.)
2001-03-02 06:24:17 +00:00
mjl 01cd332ad1 Fix typo to make this compile even w/ debug defines. 2001-03-01 22:53:13 +00:00
ad 811e2b490b Wait 10x longer for status bits. 2001-02-25 17:46:42 +00:00
lukem 3aeb5f2f29 whitespace police 2001-02-24 01:59:46 +00:00
cgd 023e9f0649 C requires that labels be followed by statements. 2001-02-24 00:01:22 +00:00
enami 79d20d7c7a - Initialize auto variable (win[{0,1}].win_flags).
- If PCCBB_MEM_CACHABLE isn't set, clear CB_BCR_PREFETCH_MEMWIN[01].
2001-02-22 10:39:31 +00:00
jdolecek 522f569810 make some more constant arrays 'const' 2001-02-21 21:39:52 +00:00
minoura a7d1fe9920 Correct the 1st argument for pci_conf_{read,write}.
On non-i386 platforms the previous revision could not be compiled.
Pointed out by mjl.
2001-02-21 00:32:31 +00:00
martin f0d6660cf4 Filename cleanup: remove i4b_ prefixes outside sys/netisdn, last round.
Renamed in sys/dev/ic:
i4b_hscx.c -> hscx.c
i4b_hscx.h -> hscx.h
i4b_ipac.h -> ipac.h
i4b_isac.c -> isac.c
i4b_isac.h -> isac.h
i4b_isic.c -> isic.c
i4b_isicbchan.c -> isic_bchan.c
i4b_isicl1.c -> isic_l1.c
i4b_isicl1.h -> isic_l1.h
i4b_isicl1fsm.c -> isic_l1fsm.c
2001-02-20 22:24:31 +00:00
minoura 3b418f4eec Re-initialize more registers after resuming from suspend.
Some APM BIOSes do not restore them.
Reviewd by haya.
2001-02-20 15:16:38 +00:00
fvdl 44467271c4 Switch line in mute off by default. 2001-02-19 21:14:49 +00:00
mjacob 7c3d7f0df5 Make it compile (for alpha). The porting author might want to look
at this more closely than I have.
2001-02-18 21:02:54 +00:00
bouyer d32a56145d ALi controller: can only do UltraDMA for revs >= 0x20.
From OpenBSD.
2001-02-18 18:07:53 +00:00
bouyer 265f72bab6 Add support for INTEL 82801BAM IDE controller, from OpenBSD. 2001-02-18 17:58:59 +00:00
bouyer ecc7103aa9 Regen. 2001-02-18 17:54:50 +00:00
bouyer a14f4f6d84 Add Intel 82801BAM IDE controller, found in laptops. From OpenBSD 2001-02-18 17:54:18 +00:00
martin 63d4175528 Filename cleanup police (per discussion with Soren S. Jorvang):
remove all (legacy) "i4b_" prefixes outside of sys/netisdn.
Prefix all card specific driver support files with the basename
of the driver bus attachement file.

Renamed here:
pci_isic.h -> isic_pci.h
pci_isic.c -> isic_pci.c
i4b_avm_fritz_pci.c -> isic_pci_avm_fritz_pci.c
i4b_elsa_qs1p.c -> isic_pci_elsa_qs1p.c
2001-02-18 09:37:19 +00:00
matt 088a73301e regen 2001-02-18 05:59:23 +00:00
matt d63e0d8c75 Add Symbios FC909 2001-02-18 05:58:41 +00:00
christos 6e65af2882 make this compile again. 2001-02-14 21:10:20 +00:00
christos e0ddf88b0a PR/12204: Andreas Wrede: Add support for Lava 8-port serial card. 2001-02-14 15:07:28 +00:00
tacha 08cc996106 Check and set PCI power management register. clcs now works when
warm boot from Windows.
2001-02-13 04:11:11 +00:00
ichiro 357d9efda4 Power Management Hook
esm_powerhook();
2001-02-12 23:56:40 +00:00
mjacob 055ac54fd2 set default HBA role 2001-02-12 23:25:20 +00:00
thorpej 043e519d55 Adjust the way that media is initialized on DP8390-compatible
chips.  The dp8390_softc now has media_init and media_fini
function pointers that do the work.
2001-02-12 18:49:03 +00:00
tshiozak faec1fc4fc some improvement for cmpci; SPDIF supports, etc. 2001-02-12 18:47:12 +00:00
tshiozak 17c5f7060a add CMI8738B. 2001-02-12 14:45:04 +00:00
mrg 6ee70851f1 backout the parts of the previous change (7 months ago) that were *not* part
of the sys/vm removal, but some (fortunately disabled) work-in-progress.
2001-02-12 09:14:53 +00:00
briggs 433553dc94 Deal with a lack of the proper type of memory. For example, if a bridge
only supports 16-bit I/O addresses, do not configure it with addresses
having the upper 16-bits non-zero.
2001-02-12 06:24:24 +00:00
nathanw 65321bff54 Make tga_rop_vtov deal with copies of <256 byte granularity, necessary
for proper console text handling (especially in-line insertion) on
8-bit displays.

From Christian Groessler <cpg@aladdin.de>.
Tested on 32-bit TGA by me.
2001-02-11 19:34:58 +00:00
ad b0eba3a40d Match an upcoming product. 2001-02-11 15:37:13 +00:00
ad 65f7a36374 Regen. 2001-02-11 15:33:53 +00:00
ad 853ce24872 Add another 3ware product. 2001-02-11 15:33:25 +00:00
briggs c6daae9b79 Add an option (defopt) PCI_NETBSD_CONFIGURE that provides PCI bus
configuration (assignment of bus numbers, BARs, timer values,
interrupt lines, etc.).
The interface must be called from m.d. code prior to probing the bus.
It is meant to be called once for each primary (bus == 0) PCI bus in
the system.  It will configure any busses behind PCI-PCI bridges.
Section 9 man page for pci_configure_bus() will come soon.
In the meantime, sample usage is in arch/sandpoint/sandpoint/mainbus.c.
[ Reviewed by thorpej ]
2001-02-09 14:33:15 +00:00
haya d413da0c4a BUG FIX: calculate address line mask in pccbb_pcmcia_io_alloc() when
start address is not set.
2001-02-09 10:41:50 +00:00
tacha d95cfe7d68 Split out common code to cs428x.c and cosmetic change to introduce
higher symmetry between cs4280.c and cs4281.c.

Also fix the problem rebooting from Windows. Relevant patch is contributed
from Shingo WATANABE <nabe@nabechan.org>.
2001-02-07 14:41:10 +00:00
thorpej d1a5dabcc9 Gack, fix a stupid bug in the DP83815 multicast setup code. 2001-02-06 02:49:12 +00:00
briggs 788797428a Regen. 2001-02-04 18:16:42 +00:00
briggs a5d1d7e79f Add the MPC8240 (Kahlua) Host Bridge 2001-02-04 18:16:20 +00:00
ad 8d75ab98d3 Add a driver for the Mylex DAC960 family (including DEC SWXCR). 2001-02-04 17:05:11 +00:00
hubertf 295df3b3d7 Regen: Add M5243 PCI-AGP Bridge
Fixes PR 11466 by Jared D. McNeill <jmcneill@invisible.yi.org>
2001-02-02 03:56:20 +00:00
hubertf 4421d6f784 Add M5243 PCI-AGP Bridge
Fixes PR 11466 by Jared D. McNeill <jmcneill@invisible.yi.org>
2001-02-02 03:51:52 +00:00
thorpej 56d0d6ce83 Match the SEGA Dreamcast Broadband Adapter, and use PCI memory
space on that device (XXX should be done differently than it is).
2001-01-31 07:44:04 +00:00
thorpej 615bf08f21 Regen; add SEGA Dreamcast Broadband Adapter. 2001-01-31 07:24:58 +00:00
thorpej 98182357a2 Add the SEGA Dreamcast Broadband Adapter. 2001-01-31 07:24:32 +00:00
itohy 5ce651390d Fix problem where tsleep() is used not on the cardbus thread.
This change makes PCMCIA cards work again on my machine.

Unfortunately, some of the DELAY_MS() are called when the current
process is not the cardbus thread, that is, on interrupt contexts.
I confirmed these are actually used in interrupt context and replaced
them with delay()s.  However, I haven't confirmed other DELAY_MS()s
are always on the cardbus thread.

This shall be a temporary fix.  The driver needs being rewritten
not to use such delay()s, of course.
2001-01-30 07:23:14 +00:00
tsutsui 013511e442 Use ether_crc32_be() for multicast hash calculation. 2001-01-29 12:04:10 +00:00
enami 2c218a4926 Handle allmulti case correctly as a NetBSD network driver;
if we are requested range of multicast address or too many multicast address,
program multicast filter to receive all multicast address.   And set/clear
IFF_ALLMULTI flag properly.
2001-01-29 01:24:42 +00:00
augustss 532934d5f1 ANSIfy. 2001-01-27 18:53:33 +00:00
augustss d13e6a84f2 Sleep a little when closing the midi device to allow the UART to drain. 2001-01-27 18:37:01 +00:00
ad 01c89cec5c No need to submit before poll any more. 2001-01-26 19:53:15 +00:00
rh 6939097e75 Add left/right reversal quirk entry for Toshiba Protege 7020 2001-01-26 10:04:43 +00:00
rh 30dcc3b36e regen 2001-01-26 10:04:12 +00:00
rh 2f324bf9a0 Add Toshiba Protege product code 2001-01-26 10:03:47 +00:00