Commit Graph

546 Commits

Author SHA1 Message Date
cgd 5f45920f06 regen 1998-03-04 00:15:21 +00:00
cgd b3f8c3c1f1 fix comment bogon in last commit 1998-03-04 00:14:45 +00:00
cgd 34f466e064 regen 1998-03-04 00:10:38 +00:00
cgd 0873649bda add CMD PCI0643, PCI0647, USB0670, USB0673. Remove the 'A' from the 640A
entry (because the same product id is used for the 640B, as well).  Note
that a few of the entries (PCI0642, PCI0650A) no longer have data to
be found on the CMD web site, and note that PCI0650A should probably have
its "A" trimmed as well.
1998-03-04 00:09:11 +00:00
mycroft 8e5dbddc19 Regen. 1998-02-27 11:46:25 +00:00
mycroft 402ddee537 Add Macronix MX98713. 1998-02-27 11:45:51 +00:00
thorpej 8354e68508 Remove "class" declarations, and add "devclass" declarations where
appropriate.  Fix several inconsistencies between device class and
attributes.  Mostly from Chris Demetriou.
1998-02-16 22:12:45 +00:00
bouyer 0435e7ea98 Correct a bogosity in the adapter->mii attach code pointed out by cgd:
in pci/if_tl.c, call config_found() with a print function, instead of
printing ourself a message in if_tl.c if no miibus was found. The print
function is in mii/mii.c (mii_adapter_print()) so that it can be used by any
adapter (idea from the scsi system).
1998-02-11 19:02:11 +00:00
thorpej 841fb8fd54 Don't try to dynamically create and destroy DMA maps. Instead, keep
it simple, and allocate one for each transmit and receive descriptor.

In addition to being simpler and faster, this fixes a serious memory leak
in the transmit path.
1998-02-11 01:28:22 +00:00
thorpej 8e8eed4ba7 Create RX DMA maps with ALLOCNOW. These maps are essentially always
loaded, and recovering from a resource shortage error is much harder
in the receive case.
1998-02-07 21:13:34 +00:00
thorpej f955aa86e5 Properly handle error conditions from bus_dmamap_load_mbuf(). 1998-02-07 20:40:35 +00:00
augustss ae3e754e0b Newly generated version. 1998-02-07 20:07:37 +00:00
augustss 6d9b48ac1d Fix typo, and commit in the right order. 1998-02-07 20:05:25 +00:00
augustss c78e3507ba Add the AGP device in the 82443LX. 1998-02-07 19:32:37 +00:00
thorpej 208d979613 Use BUS_DMA_NOWAIT where appropriate. Don't create DMA maps with
BUS_DMA_ALLOCNOW.
1998-02-07 10:27:12 +00:00
matt 8098a443f0 A version of the de driver which does bus_dma. Note that it has not been
tested on any other platform other than i386.  Use of bus_dma(9) can be
turned by defining TULIP_BUS_DMA_NOTX and TULIP_BUS_DMA_NORX.  These allow
one to determine if the problem is in the transmit or receive path.
A problem reported by mycroft is also fixed.
1998-02-06 20:57:12 +00:00
thorpej 0392bc60a1 Fix the FXP_TXDESCOFF() macro. 1998-02-05 07:31:52 +00:00
thorpej ec6c5c10d7 Add necessary bus_dmamap_sync() calls for memory mapped with the COHERENT
hint, per bus_dma(9).
1998-02-04 08:26:42 +00:00
thorpej 8abe76d2f0 Add offset and length parameters to bus_dmamap_sync(), used for specifiying
partial syncs of a DMA mapping.
1998-02-04 05:12:46 +00:00
thorpej 296d96f42c Add dm_mapsize to bus_dmamap_t and rename BUS_DMAMEM_NOSYNC to
BUS_DMA_COHERENT.
1998-02-04 00:38:50 +00:00
thorpej 480445c035 When a PCI bus is attached, print out which bus spaces were enabled
by the parent.
1998-01-31 00:37:39 +00:00
thorpej 9359316f6f Add support for the 82553[AC] PHY by treating it like an 82555. From
Soren S. Jorvang <soren@t.dk>, PR #4840.
1998-01-28 18:31:37 +00:00
thorpej b89119c134 Convert this driver to use the bus_dma interfaces. 1998-01-28 07:26:42 +00:00
thorpej 2538ed1062 Use offsetof() from libkern.h 1998-01-28 02:23:04 +00:00
thorpej c7c415e733 Regen: add Packet Engines G-NIC gigabit Ethernet. 1998-01-27 01:03:29 +00:00
thorpej cdb46f9d8b Add product ID for the Packet Engines G-NIC gigabit Ethernet interface. 1998-01-27 01:02:46 +00:00
mycroft 76299bd2c0 Regen. 1998-01-22 22:37:04 +00:00
mycroft 9fdb0f8782 Add the Millenium II. 1998-01-22 22:36:16 +00:00
thorpej 201cba44d4 Sync w/ FreeBSD-current-980122:
- Rearrange softc for better cache line behavior.
1998-01-22 08:32:35 +00:00
thorpej 0916ab379b Sync w/ FreeBSD-current-980122:
- Rewrite fxp_start() for better clarity and efficiency.
- Remove unused #includes.
1998-01-22 08:31:33 +00:00
thorpej ed13bba51f Fix two register mapping problems:
- Fall back on i/o space if mem space isn't available.
- Card reports mem space as prefetchable, but mapping the card into dense
  space fails in nasty ways on the Alpha.  Force mapping into sparse
  space by clearing the BUS_SPACE_MAP_CACHEABLE bit (XXX!).
1998-01-22 08:04:56 +00:00
thorpej 06ce220790 Update for config changes. 1998-01-12 09:39:57 +00:00
thorpej e21b3a4cdb Regen. 1998-01-09 06:54:56 +00:00
thorpej d41a505027 Regen. 1998-01-09 06:54:54 +00:00
thorpej d1ad0bc624 Put RCS IDs into generated files, in the correct place. 1998-01-09 06:54:25 +00:00
thorpej 1b2dbc7a0e Regen: back out RCS ID related changes. 1998-01-08 00:32:06 +00:00
thorpej b0ecfb4210 Back out RCD ID related changes. 1998-01-08 00:31:23 +00:00
perry 5e35a0595e regened with RCSIDs in place 1998-01-05 19:30:30 +00:00
perry 5e96ab4c0a make script insert RCS ids into generated files 1998-01-05 19:28:16 +00:00
drochner c7e3c24d53 make it compile without "__BROKEN_INDIRECT_CONFIG" 1997-11-30 15:18:58 +00:00
bouyer e0746c57db Fix for systems with multiple tl interfaces:
nullbuf (used to pad packets < ETHER_MIN_SIZE) is used for all tl
interfaces. Allocates only once, and never deallocate it (as we can't say
if another instance of the driver is interface is using it).
1997-11-18 12:26:09 +00:00
thorpej 7e8aa22eaa Sigh, now that we've fixed a bug in PCI space management (the bug caused
i/o-mapped space to always be used), we discover that at least one
ThunderLAN interface can't read the EEPROM properly if memory-mapped
access is used.  Kludge around this for now by "prefering" i/o space.
1997-11-17 08:14:53 +00:00
thorpej bbee567187 Fix a couple of bugs/annoyances in match/attach:
- Do PCI space configuration like the other drivers.  In particular,
  don't _disable_ the space we're not using because some lame firmware
  implementations might not reenable it on warm boot.  Also, prefer
  memory space always.
- Make match and info-gathering in attach table-driven.
- Rearrange things a bit to be a bit more visually pleasing during boot.

Also, fixup some #include problems.
1997-11-17 01:58:29 +00:00
thorpej dffffc2120 Cosmetic change. 1997-11-17 01:44:58 +00:00
christos 739eae3e8b Regen. 1997-11-16 22:33:59 +00:00
christos 9279ce1dc1 PR/4510: William Coldwell: Add TI thunderlan support. 1997-11-16 22:33:19 +00:00
thorpej b6ac221d7c Type/alignment cleanup in EEPROM code. 1997-11-11 06:35:46 +00:00
thorpej a222447f6f Oops, missed one in previous. 1997-10-27 23:34:19 +00:00
thorpej ce3918177b Update for new pcidevs entry for Winbond NE2000-compatible Ethernet ASIC. 1997-10-27 23:31:41 +00:00
thorpej bb340dc5c7 Regen. 1997-10-27 23:29:23 +00:00
thorpej 10e3181b2b Fix the description of the Winbond NE2000-compatible Ethernet ASIC.
It's a W89C940F.
1997-10-27 23:27:35 +00:00
thorpej bbc9422b97 Print interrupt information like all of the other PCI drivers. 1997-10-27 02:10:07 +00:00
bouyer b1b04efc58 Correct 'ThunderLAN' spelling 1997-10-21 05:54:21 +00:00
matt 500281c8a4 21142 / 21143 chips always use ISVSROM format. (print out message is
SROM checksum is invalid).
1997-10-20 14:32:46 +00:00
thorpej cdc616ca77 Port the latest FreeBSD "fxp" driver to NetBSD-current. Changes include:
- Work around a bug in the 82557 that causes the receiver to lock up
  in certain conditions by kicking the multicast address filter if we
  haven't heard anything come down the wire for some period of time.
- Fix a bug that could cause TxCB descriptor chains to cross page boundaries
  on the Alpha.
- Remove some unneeded register masking.
- Fix a bug where too much data was copied from the config template, causing
  memory corruption.
- Fix handing of if_timer (it was be cleared too early in some cases).
- Attempt to reduce the chances of receiver overrun by doubling the
  number of receive DMA segments, and processing receive interrupts
  before transmit interrupts.
- Remove a gratuitous assignment.
- Fix a bug where incoming packets were counted twice.
1997-10-20 01:15:53 +00:00
bouyer fe74be001b Driver for Texas Instruments' thunderland network controller (present in some
Compaq products).
1997-10-17 18:38:23 +00:00
thorpej 376d502a22 Pull marc-pcmcia branch down from trunk. 1997-10-16 23:23:14 +00:00
matt 4d3bfb2510 Fix pr's port-i386/4127 kern/4190 kern/3700. 1997-10-16 22:02:27 +00:00
matt 940e1b9935 Fix a thinko in last night fix. We must set the media if we have reset
the chip but if we haven't the the media isn't changing, don't do anything.
1997-10-16 13:12:56 +00:00
matt 0dc780c27d Fix media/console interaction problem on Alpha. Fix 21142/21143 problems
with 10Mb/s links.
1997-10-15 19:06:59 +00:00
explorer b9f6e61f9d Add and/or update rnd_*() hooks 1997-10-15 06:12:44 +00:00
thorpej 061f16048b Pulldown from marc-pcmcia branch: PCI front-end for the "ne" driver. 1997-10-14 23:12:17 +00:00
thorpej 10708da893 Pull down from marc-pcmcia branch:
Minor tweaks to deal with PCMCIA differences, and support for power
management.
1997-10-14 21:28:37 +00:00
thorpej deaddb0981 Regen. 1997-10-14 20:53:34 +00:00
thorpej bff93e5477 Pull down from marc-pcmcia branch. 1997-10-14 20:52:38 +00:00
sakamoto 837124b35c add bebox 1997-10-14 07:15:45 +00:00
explorer 80513cb5ae o Make usage of /dev/random dependant on
pseudo-device   rnd                     # /dev/random and in-kernel generator
  in config files.

o Add declaration to all architectures.

o Clean up copyright message in rnd.c, rnd.h, and rndpool.c to include
  that this code is derived in part from Ted Tyso's linux code.
1997-10-13 00:46:08 +00:00
explorer 1c276eafe2 Add hooks to insert timing info into the random system 1997-10-10 01:19:37 +00:00
mycroft 3dffd3e74a Regen. 1997-10-08 17:01:33 +00:00
mycroft f1aefc827c Correct spelling of Millennium. 1997-10-08 17:00:43 +00:00
thorpej 8eb7170ff8 Back out last change. (Partially my fault, for not reviewing it close
enough.)
1997-10-06 21:01:23 +00:00
lonhyn a5b1bb00fd pcidevs change regen. 1997-10-06 06:19:24 +00:00
lonhyn 7dbc234635 Added entries for GLINT 3D chips. 1997-10-06 06:18:07 +00:00
lonhyn a9ad6cae19 pci_mapreg_info() has been changed to take arguments like pci_mapreg_map() 1997-10-03 18:45:39 +00:00
drochner e30fed33a8 regen 1997-10-01 18:09:20 +00:00
drochner d54cc43bfc Correct a number of Intel PCI devices, sync with names used in data sheet.
Add newer Intel / VIA i386 chipsets.
Correct one S3 chip, add one.
Mostly from Carl Shapiro <css@samsara.dialup.access.net> per PR kern/4169
and kern/4170 (identical).
1997-10-01 18:08:23 +00:00
thorpej 76786b38b6 Mimmick the logic used by other drivers to determine if we should use
memory-mapped or i/o-mapped access to the device registers, and always
choose memory-mapped if it is enabled.  In particular, do _not_ explictly
disable the space we decide to not use, as this confuses some versions
of Alpha console software (which are arguably buggy because of this
problem).

Also, fix a logic error pointed out by Ross Harvey <ross@teraflop.com>
that would cause memory-mapped access to never be enabled.
1997-09-24 22:46:29 +00:00
mycroft 3e5cee3ce5 If the region size turns out to be 0, return an error. This is what will
happen if we try to use a mapping register that's not actually defined.
1997-09-23 23:08:47 +00:00
mycroft 966e96d880 Regen. 1997-09-23 22:36:33 +00:00
mycroft d23f3059e5 Add the Ensoniq AudioPCI. 1997-09-23 22:35:48 +00:00
perry 3979615b0d ncr_reg.h -> ncrreg.h per Dave Huang 1997-09-23 02:39:15 +00:00
perry 69fbaa747d updates from FreeBSD via Dave Huang <khym@bga.com> 1997-09-23 02:27:43 +00:00
bouyer b342ad4ea3 Regen. 1997-09-15 15:08:34 +00:00
bouyer cc58dfb1b7 Add some of Compaq's network products. 1997-09-15 15:02:36 +00:00
enami 377e2c7b82 Declare PCIVERBOSE by defopt in files.pci. Include opt_pciverbose.h
in pci_subr.c.
1997-09-13 08:49:50 +00:00
thorpej 4f7a116064 Add missing "break;" statements in the code that determines the
media setup by the Alpha SRM console software.

From Ross Harvey <ross@teraflop.com>.
1997-09-12 22:40:02 +00:00
drochner daf8124106 regen 1997-09-12 11:05:20 +00:00
drochner e4c20d6210 another graphics chip... 1997-09-12 11:04:36 +00:00
mycroft 761c2e275a Fix bogus comment. 1997-09-12 05:20:52 +00:00
mjacob 18430b4e5e For the 2100- the flags weren't quite right- but things worked anyway. Wierd. 1997-09-10 02:16:13 +00:00
mycroft 8c578dc960 Pass down bus_dma_tag_t's as appropriate (per Jason's bus_dma code). 1997-08-30 06:53:57 +00:00
mycroft 73e975d161 Pass the I/O and memory enable flags through the bridge. 1997-08-30 06:51:07 +00:00
mycroft f77eaf96e2 Pull in new file. 1997-08-30 06:48:57 +00:00
mycroft aae78d29c3 Don't export pci_*_find() any more. 1997-08-30 06:48:24 +00:00
mycroft e2bb22033b Remove pci_*_find() from here. 1997-08-30 06:47:44 +00:00
mycroft 5da739c6b8 * Rewrite pci_io_find() and pci_mem_find() using my original pci_map_io() and
pci_map_mem(), with appropriate changes for bus_space.
* Add extra arguments for use by pci_mapreg_*(), and make the functions
static.
* Rewrite pci_mapreg_info() and pci_mapreg_map() as wrappers around
pci_*_find(), using the documented interface.
1997-08-30 06:46:58 +00:00
thorpej 22880d02f4 Regen: added SMC83C170 entry. 1997-08-28 00:24:23 +00:00
thorpej b7a3500cd3 Add an entry for the SMC 83C170 "EPIC/100" Fast Ethernet chip. 1997-08-28 00:12:44 +00:00
bouyer 6f3bab1f59 Merge scsipi branch in the mainline. This add support for ATAPI devices
(currently only CD-ROM drives on i386). The sys/dev/scsipi system provides 2
busses to which devices can attach (scsibus and atapibus). This needed to
change some include files and structure names in the low level scsi drivers.
1997-08-27 11:22:52 +00:00
thorpej 782324102f Use if_media to change media type, not IFF_LINK*. 1997-08-25 22:39:55 +00:00
thorpej b2c3b768d3 - Add RCS tags that got lost.
- Fix a couple of typos in PCI space configuration.
1997-08-25 19:03:44 +00:00
thorpej 9c690ec9a6 Add RCS tags that got lost. 1997-08-25 19:02:19 +00:00
thorpej a2a13689fd Merge with 970703 snapshot of Matt Thomas's de driver. 1997-08-25 18:56:46 +00:00
drochner d8453956fc regen 1997-08-23 13:45:11 +00:00
drochner 91c75e9870 Add one more graphics chip. 1997-08-23 13:44:06 +00:00
thorpej 12ef0b5d17 Merge the FreeBSD-current-970823 version of the "fxp" driver, adds support
for more PHYs.  Closes PR #3953.
1997-08-23 09:28:13 +00:00
mjacob 24add65376 Major rework to support Qlogic ISP2100 (Fibre Channel PCI card). Also now
able to read SXP registers (instead of panicing). Probably have done a bit
of setup overkill- we now alloc some scratch memory for the 2100 that I thought
I would need for the Port database, but so far I haven't needed to retrieve
the port database. Well, early days yet.
1997-08-16 00:28:10 +00:00
mjacob 9de423f255 Add in PCI_PRODUCT_QLOGIC_ISP2100. 1997-08-16 00:25:43 +00:00
drochner 8aa62d76fc Regen with new RCS ID. (thanks, Bernd) 1997-08-14 16:31:13 +00:00
drochner e588696c8e Include some more stuff. 1997-08-14 15:41:49 +00:00
fvdl 70c89b79f4 Regen. 1997-08-03 23:41:05 +00:00
fvdl c98a1885a9 Add a few VIA Apollo chipset IDs 1997-08-03 23:40:27 +00:00
bouyer f50739b7b5 Back out previous change. This was for bouyer-scsipi, and not for the trunk. 1997-07-23 10:50:29 +00:00
bouyer 4022e46acf Forgot a scsi->dev/scsipi. 1997-07-23 07:41:56 +00:00
pk 013ac04cfb config.new => config 1997-07-20 20:30:46 +00:00
cgd 8f43428a7f regen for new pcidevs 1997-07-19 10:41:57 +00:00
cgd d2bdd55b3a clean up a few entries, fix the entry for the TI PCI1130 so the device
is properly named, add entries for the TI PCI1131 and PCI2030.  also note
that you shouldn't always believe everything you read.
1997-07-19 09:54:09 +00:00
cgd 429a941288 don't expect/provide pci_decompose_tag to be a MI, public function. It
wasn't intended to be to begin with, and uses of it (e.g. the one in the
'de' driver) are quite likely to be incorrect.
1997-07-19 09:49:39 +00:00
jtk c0f08c42a8 use "locators.h" defines for indices for cf_loc[] and default values 1997-07-17 01:01:06 +00:00
cjs 312218482a Add QUIRK_NOTAGS quirk to disable tagged command queuing for particular
drives. Add a quirk entry for HP C372x drives with QUIRK_NOTAGS. Also,
print quirks being used if quirks other than QUIRK_NOSYNC are being used.
1997-07-01 00:41:43 +00:00
thorpej ca84057878 Correct Intel Triton MX PCI IDs, from Tom Yu <tlyu@mit.edu>, PR #3478. 1997-06-24 06:20:24 +00:00
kml 0953486d37 Added definitions for Essential Communications RoadRunner HIPPI and
Gigabit Ethernet interfaces.
1997-06-24 05:04:10 +00:00
cgd 22da43e670 Change expected mapping register type argument for the pci_mapreg_map()
call for the board's memory space to be PCI_MAPREG_MEM_TYPE_32BIT_1M or
PCI_MAPREG_MEM_TYPE_32BIT depending on the board ID.  Also, remove a
bogus extra argument to an interrupt-establishment-error printf.  Problems
pointed out by Jarkko Torppa <torppa@cute.fi> in PR 3753, but fixed slightly
differently than he suggested.
1997-06-17 05:44:22 +00:00
thorpej e78f8ce7da Duplicate register mapping logic from Tulip driver. 1997-06-09 01:23:20 +00:00
thorpej 3e023b7681 Fix a slight bogon in merge of this driver; make the device map all of
its space, and pick the space used by default based on what is appropriate
for the CPU we're running on.
1997-06-09 00:34:18 +00:00
thorpej e962c12a08 Fix pasto: sbus -> pci 1997-06-08 22:15:34 +00:00
thorpej 6bf33a7fe3 Merge pdq-970604 update. 1997-06-08 19:47:13 +00:00
thorpej 2f8150954f Correct a couple of typos so that this compiles with TULIP_DEBUG,
per PR 3723, submitted by enami tsugutomo <enami@ba2.so-net.or.jp>.
1997-06-08 18:49:43 +00:00
thorpej cd4fc920b0 Put back Matt Thomas's revision ID, per PR 3723, submitted by
enami tsugutomo <enami@ba2.so-net.or.jp>.
1997-06-08 18:44:02 +00:00
thorpej 159c685a42 - Update for changes to core ISP driver.
- Convert to use bus dma, greatly simplifying DMA setup.
1997-06-08 06:34:52 +00:00
thorpej 6d9b3bc058 Pull the thorpej-bus-dma branch into the mainline. 1997-06-07 01:35:07 +00:00
thorpej 11e78a6b0d Pull thorpej-bus-dma branch into mainline. 1997-06-06 23:43:45 +00:00
mellon 2a1b799fda Clean up conflicts during merge (thomas de-970603) 1997-06-06 23:14:58 +00:00
thorpej b2ef3f1591 Add device declaration for Intel EtherExpress PRO 10/100B driver. 1997-06-05 02:15:36 +00:00
thorpej f2317e1c5b Changes to support NetBSD, written by me, tested by Matthias Drochner:
- Add NetBSD autoconfiguration support.
- Rearrange code slightly to minimize the number of #ifdefs.
- Don't use a structure to access CSRs.  Use macros that DTRT for
  the NetBSD and FreeBSD cases.
- Deal with alignment contraint on Alpha - add 2-byte padding at the
  beginning of the RFA, so that the data will be 4-byte aligned, after
  the 14-byte Ethernet header.
Thanks to Matthias Drochner for the testing, and David Greenman for
the feedback on the changes.
1997-06-05 02:01:55 +00:00
thorpej 7fa6876537 Import FreeBSD's Intel EtherExpress PRO 10/100B driver, written
by David Greenman.
1997-06-05 01:50:48 +00:00
jtk d01ff6bdaa regen 1997-05-13 14:45:39 +00:00
jtk 68187ebd40 correct the identification of Intel Orion PCIset chips 1997-05-13 14:44:54 +00:00
thorpej 158a6e52a4 Garbage-collect and uneeded #ifdef. 1997-05-08 04:39:03 +00:00
thorpej b5c783c6e4 Merge 970327 "de" update. 1997-05-07 18:45:01 +00:00
mikel 7aa8facf27 end line after printing WIDE SCSI status; fixes PR kern 3505. 1997-04-17 07:21:14 +00:00
cgd 78b378b2bc create pci_mapreg_info() which simply gets mapping register information.
It's used by pci_mapreg_map() and can be used directly by drivers
with special needs (e.g. those being attached as console devices).
1997-04-13 22:05:10 +00:00
cgd 36949596f0 rename pci_map_register to pci_mapreg_map. The latter name is more
descriptive, and allows for a sane name for a function which just digs
the info out of the mapping register but doesn't do the mapping.
1997-04-13 20:14:20 +00:00
cgd 4c2cff7209 use pci_map_register(). map both mem and I/O spaces, preferring mem space
by default if it's usable, but falling back to I/O space if mem isn't usable.
If NCR_IOMAPPED is defined (default on the x86), prefer I/O space
then fall back to mem.  Also, clean up the various memory consistency checks
so that they can deal with run-time determination of whether or not the
device is to be memory- or I/O-mapped.
1997-04-13 19:58:17 +00:00
cgd 32836b0710 use pci_map_register(). map both mem and I/O spaces, preferring mem space
by default if it's usable, but falling back to I/O space if mem isn't usable.
If TULIP_IOMAPPED is defined (default on the x86), prefer I/O space
then fall back to mem.
1997-04-13 19:56:14 +00:00
cgd 8593458137 use pci_map_register(). Also, almost a complete rewrite/cleanup of this
code.  (It still needs more!)
1997-04-13 19:55:09 +00:00
cgd 41a0ca7403 clean up space/tag comments 1997-04-13 19:48:50 +00:00
cgd cf2d73f749 use pci_map_register(). map both mem and I/O spaces, preferring mem
space if it's usable, but falling back to I/O space if mem isn't usable.
1997-04-13 19:48:16 +00:00
cgd 02ca6f929d use pci_map_register(). 1997-04-13 19:47:06 +00:00
cgd 2eae910210 implement pci_map_register(), which gets information about a device's
mapping register, maps it, and returns all of the relevant information.
deprecate use of pci_{io,mem}_find(), but leave them around (for a while)
for backward compatibility with third-party drivers.
1997-04-13 19:46:01 +00:00
cgd ade89d0da0 add a missing newline 1997-04-11 20:28:08 +00:00
cgd db11467340 clean up some constants ([A-F]->[a-f] in hex constants 1997-04-11 05:24:40 +00:00
cgd cc93b2c4eb pass memory- and i/o-enabled flags down via the PCI bus and device attach
arguments, so that a device can tell if its memory and I/O spaces are
enabled.  The flags are cleared, depending on the contents of devices CSR
registers, in the machine-independent PCI bus code.
1997-04-10 23:12:16 +00:00
cgd db0f072019 clean these up (mostly rename bus_space_{tag,handle}_t variables) so that
this code makes equal sense for memory and I/O space, prefer to map
the PCI front end via memory space (conditionalized on a patchable kernel
variable), and do a bit of other random NetBSD-specific cleanup.  (These
changes were sent to Justin Gibbs on March 28.)
1997-04-10 02:48:38 +00:00
mjacob 0d321a7e29 Add 60 (MHz) value for PCI clock frequency value. Also enable DMA bursting. 1997-04-05 02:55:28 +00:00
augustss e52219bae7 Regen. 1997-04-04 00:24:36 +00:00
augustss a987ede509 Two more PCI devices. 1997-04-04 00:22:00 +00:00
jonathan c1f72bba37 Add ifmedia hooks: include <ifmedia.h> and add sc_media to softc. 1997-03-30 22:47:05 +00:00
jonathan 70e7856e42 Match missing variants:
3c900 twisted-pair only, 3c595 mii, 3c595 100bT4, 3c905 100bT4.
Is there an MII version of the 3c905?
1997-03-30 21:31:01 +00:00
mycroft 080350dc0d Use a temporary data structure for holding probe information, rather than a
full softc.
1997-03-28 23:47:08 +00:00
cgd d26286ab6b clean up (unify) the register mapping code a bit 1997-03-28 22:25:01 +00:00
cgd 874e7169a4 punt pci_mem_find's &cacheable arg, and pass NULL instead. We never
want to map the memory register cacheable.
1997-03-28 22:16:06 +00:00
cgd 359850c818 clean up isp_pci_prefer_io comment 1997-03-28 21:51:51 +00:00
thorpej 8443f8fad0 Resolve conflicts from merge. 1997-03-26 01:33:32 +00:00
thorpej 4c03c2945d Resolve conflicts from merge. 1997-03-24 00:35:02 +00:00
veego 196e8ba3c2 Resolve conflicts from merge. 1997-03-23 09:37:28 +00:00
chuck aeee0bf5a5 add support for adaptec PCI atm cards (see midway.c log for details) 1997-03-20 21:30:46 +00:00
chuck e64066a694 regen 1997-03-20 20:22:17 +00:00
chuck 088d71a793 - add Adaptec ATM ID's (0x5900, 0x5905). still trying to find out how they
correspond to the ANA numbers...  certainly includes ANA-5940.
 - add Efficient Nets product 0x0000.  according to linux pci.h
	the 0x0000 is an FPGA version of the midway card and the 0x0002
	is the ASIC version.
1997-03-20 20:18:43 +00:00
cgd 2cde9c6e69 fix multi-function device support, add new known classes/subclasses,
and clean up class/subclass printing.  From brb@brig.com via PR 3359.
1997-03-19 19:38:46 +00:00
thorpej 914022ca23 Resolve conflicts from merge. 1997-03-19 02:37:36 +00:00
thorpej 0398318515 Resolve conflicts from merge. 1997-03-17 03:44:49 +00:00
thorpej 1d987a161b #include <net/if_media.h> 1997-03-17 03:17:34 +00:00
cgd cd0461fbb8 map either via memory or I/O space, depending on the setting of a
patchable kernel variable.  eventually, it might make sense to turn
this into a driver flag or something.
1997-03-16 00:37:00 +00:00
is 07b064e02e New ARP system, supports IPv4 over any hardware link.
Some of the stuff (e.g., rarpd, bootpd, dhcpd etc., libsa) still will
only support Ethernet. Tcpdump itself should be ok, but libpcap needs
lot of work.

For the detailed change history, look at the commit log entries for
the is-newarp branch.
1997-03-15 18:09:08 +00:00
cgd e36a5ca4de change microcode array definitions from "unsigned short" to the more
correct u_int16_t, and remove bogus casts that the old definition
required.
1997-03-13 04:07:44 +00:00
mycroft 919efaeb60 Make the microcode table const. 1997-03-13 03:33:03 +00:00
cgd 5f0d034532 include <vm/vm.h> for vtophys() on x86. kill extra <sys/kernel.h> incl. 1997-03-13 01:56:06 +00:00
cgd 8aa5282c68 clean up the __BROKEN_INDIRECT_CONFIG chunks of the last change 1997-03-13 01:04:02 +00:00
cgd 4c654c0acf fixes from Matt Jacob so that these can compile and run on the Alpha.
(aic7xxx has been tested and works on the Alpha, bha has not yet been
tested on thne Alpha.)
1997-03-13 00:38:48 +00:00
cgd cf26d31ad2 NetBSD RCS ID tweaks, a few comment block tweaks. Also, make copyright
notices consistent (per Matt Jacob).
1997-03-12 21:06:41 +00:00
cgd 099e30a322 ISP 10x0 driver from Matthew Jacob of NASA Ames Research Center.
(March 12, 1997 version).
1997-03-12 20:44:50 +00:00
cgd dbaf4fbdbe specs for ISP 10x0 (isp) driver PCI attachment. From Matt Jacob 1997-03-12 06:39:47 +00:00
thorpej 709ccfa853 Patch from Matt Thomas to deal with the fact that Pass 2.[012] of
the 21140A-A[CDE] have a buggy receiver which may hand and/or corrupt
data on receive overflows.
1997-03-06 22:32:20 +00:00
mycroft e481e52aa9 Fix a couple of splhigh()s that should be splbio(). 1997-03-04 21:42:32 +00:00
jonathan c7cec27edf Move if_ep media-sense code from front ends to inside back end,
to prepare for if_media, and to support EISA 3c59x cards:

  * change epconfig() to take a short that encodes the chipset
    type (3c509, or Demon/Vortex/Boomerang).
  * add  distinct 3c509 and Demon/Vortex/Boomerang media-sense
    functions to back end.
  * Add EISA match/attach support for the 3c592 and 3c597
    (Demon) cards as well as the 3c509-comatibl EISA 3c509/3c579.

  * Assume that ISA and ISA PnP cards are 3c509-style, until
    proof to the contrary (e.g. large packet support).

Tested on 3c595, 3c590, and 3c509b. Not tested on 3c515 or Demon.
1997-02-18 10:51:06 +00:00
jonathan 788394a2e4 Change bha_pci product names to match latest pcidevs:
PCI_PRODUCT_BUSLOGIC_OLD946C -> PCI_PRODUCT_BUSLOGIC_MULTIMASTER_NC
    PCI_PRODUCT_BUSLOGIC_946C -> PCI_PRODUCT_BUSLOGIC_MULTIMASTER
1997-02-17 22:42:21 +00:00
veego 932fca6287 regen. 1997-02-16 17:21:26 +00:00
veego d0e4650c7d Fix errors in the last commit. 1997-02-16 17:17:30 +00:00
tls d21c733fd8 greatly expanded pcidevs file courtesy of Carl Shapiro <cshapiro@sparky.ic.sunysb.edu>. 1997-02-15 11:07:08 +00:00
thorpej db33863c33 Fix a couple of minor nits so that this compiles on the alpha.
Noticed by Matt Jacob (mjacob@feral.com).
1997-01-13 00:15:29 +00:00
thorpej aceef5987f Merge into mainline, tidy up some debug code. 1997-01-11 04:47:31 +00:00
thorpej d34ed2a09f Update from Matt Thomas <matt@3am-software.com>. Supports more
Tulip-based cards, including new SMC and Kingston cards.
1997-01-11 04:30:07 +00:00
perry 40533e83ff Commit latest fixes/upgrades to NCR SCSI driver. From FreeBSD via
Dave Huang <khym@bga.com>

Tested on alpha by cgd, tested on several i386 boxes. Certainly causes
no harm to the goddamned mess, but the NCR driver only works when you
perform voodoo rituals on it anyway.

This is what Dave said (in email) has been added to the driver:

  ----------------------------------------------------------------------
  This seems to be the most significant change:
  General cleanup and new features for 53c875 based cards, especially the
  Tekram DC390W/U/F, whose config EEPROM can now be dumped, if the kernel
  is built with option NCR_TEKRAM_EEPROM.

  Other changes:

  - add brackets to expansion of OUTB/W/L macro arguments.
  - remove unused NCB structure element ns_async
  - support sync. SCSI offset of 16 (instead of only 8) on 825A and 875
  - correctly identify 53c810A and 53c825A chips
  - preserve SCSI BIOS settings of PCI performance options
  - remove (already disabled) support for NCR reset because of command timeout
  - reverse order of reading of SCSI and DMA specific interrupt cause registers
  - add definition of Tekram config EEPROM contents (not currently used)
  ----------------------------------------------------------------------
1997-01-10 05:57:10 +00:00
veego 034ed50ead Add the Matrox Millenium and regen the header files. 1997-01-01 14:56:19 +00:00
jonathan 0ede4558bc Use the same symbolic cnames for 100Mbit media as epconfig(). 1996-12-31 21:26:10 +00:00
jonathan 259ce9f178 * make sure 100mbit media-present bits don't collied with 3c509
CONFIG_CNTRL bits by making the "conn" argument to epconfig()
   a u_int, not a u_int16_t, and by defining 100mbit media
   bits in the upper 16 bits.

A redesigned interface that fixes this properly is in the pipeline.
1996-12-30 19:18:28 +00:00
jonathan 1d7f16f4d9 * Accept 100baseT4, MII variants of 3c595 as 3c595-model devices,
rather than unknown.

* Look for 100mbit interfaces, and for any present, set corresponding
  bits in `conn' argument to epconfig(). epconfig() will now print
  100Mbit media by name.
1996-12-29 13:42:58 +00:00
thorpej d502e68402 Fill in sc_link.max_target 1996-12-10 21:27:16 +00:00
cgd 197d80c63a update these so they compile whether or not __BROKEN_INDIRECT_CONFIG
is defined.
1996-12-05 01:25:23 +00:00