Commit Graph

1682 Commits

Author SHA1 Message Date
bouyer 2646cf1612 Use the CMD PCI0648/9 IRQ ACK code for the 0646 too, makes the 0646 works
in native mode.
2000-07-07 13:54:25 +00:00
bouyer e2aaf9ef7f Work around a bug in AMD756 rev D2, from patches provided by David Sainty:
disable multiword DMA for these chips. multiword DMA can be forced with
options PCIIDE_AMD756_ENABLEDMA on rev D2 chips, but use at your own risk !
While I'm there remove a duplicate allocation of sc_wdcdev.nchannels in HPT
code.
2000-07-06 15:08:11 +00:00
mjacob c466b99a9a Use new isp_handle_index function. Redo how firmware is checked for
and loaded. Remember to enable interrupts after isp_reset but before
isp_attach. Return CMD_EAGAIN on request queue overflow so we can retry
the command when there's more queue space.
2000-07-05 22:12:23 +00:00
bouyer 3c5afc2677 Back out previous, it has to be done in a different way. 2000-07-05 19:05:31 +00:00
bouyer 838676ce64 Apply patch from David Sainty <David.Sainty@optimation.co.nz>:
Some AMD controllers have a bug which can look up the machine when using DMA, so
disable DMA for some revisions (info provided by AMD).
"options PCIIDE_AMD756_ENABLEDMA" can be used to force DMA on these chips.
2000-07-05 18:58:41 +00:00
bouyer fa436f165c HPT: use pciide_channels[i] not pciide_channels[0]. My HPT370 now probes
both channels (but still doesn't work properly; I suspect I got a broken one).
2000-07-05 16:11:35 +00:00
enami 88a0f6ee93 Match with promise ultra100/ata contoller. I haven't actually test this
contoller with ultra100 drive, but it works at least with ultra66 or more
older drive
2000-07-04 16:34:33 +00:00
enami fa92d1c635 Regen. 2000-07-04 16:30:42 +00:00
enami a710a5e35e Add device ID of promise ultra100/ata controller. 2000-07-04 16:27:32 +00:00
gmcgarry cc05a49fb0 Regen. 2000-07-03 06:05:44 +00:00
gmcgarry 72cbe1224d Devices found in NEC Versa Note VX 2000-07-03 06:01:17 +00:00
wiz 235a799246 re-add README that got lost in 2.12-to-2.14 merge. 2000-07-01 01:59:54 +00:00
wiz c01704a9db remove unnecessary #ifdef __NetBSD__'s in #ifdef __FreeBSD__;
move one #include <vm/vm.h> into #ifndef __NetBSD__
2000-07-01 01:53:37 +00:00
wiz d307475c33 resolve conflicts. 2000-07-01 01:38:58 +00:00
wiz 5457abf9cb Import release 2.14 of the bktr driver. Changes: mostly integration
of NetBSD changes; support for new Hauppauge tuner types.
2000-07-01 01:30:43 +00:00
veego a9d80391d0 Move the include of <vm/vm.h> into the ifndef __NetBSD__ part. 2000-06-30 08:12:10 +00:00
mjacob 7b0ccbb669 need uvm_extern.h for a function definition 2000-06-30 00:01:22 +00:00
thorpej 0b82c9610f Don't check for a BAR address past PCI_MAPREG_END; some devices
have BARs way out in left field.
2000-06-28 17:32:48 +00:00
mrg 7c15053eed remove include of <vm/vm.h>. <vm/vm.h> -> <uvm/uvm_extern.h> 2000-06-28 16:08:42 +00:00
tron bddc013764 Add special IRQ handler for CMD PCI0648 and PCI0649 taken from the
experimental version of Manuel Bouyer's driver.
2000-06-27 05:57:05 +00:00
simonb bfc5613f54 Revert some of the previous mmap() changes that were in "#ifdef FreeBSD"
parts of this file.
2000-06-27 05:14:31 +00:00
mrg f4e210fb2c remove redundant vm includes 2000-06-26 15:26:35 +00:00
mrg 2f159a1bac remove/move more mach vm header files:
<vm/pglist.h> -> <uvm/uvm_pglist.h>
	<vm/vm_inherit.h> -> <uvm/uvm_inherit.h>
	<vm/vm_kern.h> -> into <uvm/uvm_extern.h>
	<vm/vm_object.h> -> nothing
	<vm/vm_pager.h> -> into <uvm/uvm_pager.h>

also includes a bunch of <vm/vm_page.h> include removals (due to redudancy
with <vm/vm.h>), and a scattering of other similar headers.
2000-06-26 14:20:25 +00:00
bouyer 8a0d96e59e Add support for the CMD PCI0648 and PCI0649 IDE controllers.
Thanks to Matthias Scheler for testing.
2000-06-26 10:07:52 +00:00
bouyer 2e861ca3ce Correct 80 pin handling for promise Ultra/66: when the bit is set
we *don't* have a Ultra/66 cable.
2000-06-26 09:55:26 +00:00
simonb 889c658b5b Change the kernel mmap interface so that the offset to map is an
"off_t" and the return value is a "paddr_t" to allow mappings
at offsets past 2^31 bytes.  Somewhat inspired by FreeBSD, which
only changed the offset to a "vm_offset_t".

Includes updates for the i386, pc532 and sh3 mmmmap from Jason Thorpe.
2000-06-26 04:55:19 +00:00
gmcgarry 10eccb55ca cmpci requires mulaw dependency. 2000-06-25 23:34:27 +00:00
sommerfeld fda426af2c Defopt TLP_MATCH_* 2000-06-25 18:49:22 +00:00
wiz 3628d5523b printf argument was in wrong position. Noted by Roger Hardiman
<roger@cs.strath.ac.uk>. (This code was ifdef'd out by default.)
2000-06-25 17:47:39 +00:00
eeh 79dffec702 Get PCI HME working. 2000-06-25 01:05:16 +00:00
joda 1e343745fc regen 2000-06-24 12:16:55 +00:00
joda 103a704990 add Intel 82801BA devices 2000-06-24 12:16:21 +00:00
thorpej f82e306928 Add a clearing-house pseudo-device for system monitoring devices
such as the LM78 and VT82C686A (and eventually ACPI).  Multiple
sensor devices can be hooked registered with `sysmon', and eventually
sysmon will also handle hardware (and software) watchdog timers.

Convert the `lm' and `viaenv' drivers to the new interface.
2000-06-24 00:37:19 +00:00
tron bc83dce0c6 Regen. 2000-06-21 09:16:16 +00:00
bouyer 0273966f04 Add CMD PCI0649 product ID. 2000-06-21 08:58:57 +00:00
cgd eee18e1f6c beat back the undead: __BROKEN_INDIRECT_CONFIG had risen, and was
terrorizing innocent hackers...
2000-06-16 23:41:33 +00:00
soren 0011842ea8 Regen. 2000-06-16 08:13:50 +00:00
soren 567c710f2b Add some S3 chips. 2000-06-16 08:13:25 +00:00
thorpej 17de155949 Make sure we use firmware->host communication channel in cz_intr(), from
Bill Studenmund.
2000-06-14 17:54:33 +00:00
soda c521ba58c1 yet another change for NEC RISCstation 2250 of arc port. 2000-06-14 00:34:33 +00:00
tron 3e3d2d7344 Regen. 2000-06-13 22:44:51 +00:00
tron d643d25eb9 Add CMD PCI0648. 2000-06-13 22:44:19 +00:00
ad 3553879fc2 Use my proper name. 2000-06-13 13:36:42 +00:00
nathanw 31c0cc5f46 Regen. 2000-06-12 22:33:41 +00:00
nathanw 72d31d8d37 Add AMD 79c978 PCnet-PCI Home. 2000-06-12 22:33:06 +00:00
bouyer 26bbb4f200 Regen. 2000-06-12 21:25:20 +00:00
bouyer 034590578d Shorter description for the HPT366 2000-06-12 21:25:01 +00:00
bouyer b21bc1b5b6 - add a pciide_irqack() callback, which clears the IDE DMA status bit once
the IRQ has been cleared on the drive.
- use pa->pa_class instead of re-reading PCI_CLASS_REG when possible
- Add support for Highpoint HPT366 and HPT370 (370 untested), based
  on patches from Roger Brooks  <R.S.Brooks@liverpool.ac.uk> posted on
  current-users Mach, 15. Given how Highpoint docs have been wrong for the
  366, the 370 is likely to not work.
  Thanks to Chris Cappuccio <chris@dqc.org> for sending me the Highpoint
  docs, and to Total Archive (http://www.totalarchive.com/) for sending
  me hardware.
2000-06-12 21:20:51 +00:00
bouyer 8642ac97bf Regen. 2000-06-12 21:12:59 +00:00
bouyer 1970e14b93 Add HPT366/370 device ID.
XXX Is 'TRIONES' the rigth vendor name ?
2000-06-12 21:12:30 +00:00
wrstuden eb21ed4746 Adapt to going back to decemal device numbering. 2000-06-09 18:00:45 +00:00
wrstuden 8d04cd3f90 Rather than assinging 64 tty's per pci card, assign tty's as found.
Cyclades says driver should work with up to 128 tty's per pci card
even though they only support 64 now. Also matches FreeBSD behavior.

Print located tty's using new tty naming scheme - ttyCZ?? where ?? are
two hex letters.

Make firmware load on macppc - one le32toh() was missing.
2000-06-09 16:53:23 +00:00
soda 8ac7bdd00c changes for NEC RISCstation 2250 of arc port. 2000-06-09 04:48:12 +00:00
soda 77625cf7ec long long constant needs "LL" suffix. 2000-06-09 04:45:53 +00:00
augustss b8f4f2be87 Regen. 2000-06-09 00:21:08 +00:00
augustss def28a5cd2 Add some PCI devices found in the IOpener (commited from the IOpener itself :). 2000-06-09 00:20:18 +00:00
gmcgarry 6dd21e55a9 Make attach messages consistent with PCI drivers. Make function pointer
usage consistent with other drivers.
2000-06-08 22:15:52 +00:00
haya b6a821f042 Change IPL when bridge's interrupt handler calls child device's
interrupt handler (This solution is not very good).
2000-06-08 10:28:28 +00:00
scw 295ed77595 The OPTi controller supports a 32-bit dataport after all.
Also detect when the chip is sitting on a 25MHz PCIbus and
set the timing registers accordingly.
2000-06-07 20:42:52 +00:00
ad 887d4555cd Regen. 2000-06-07 19:53:17 +00:00
ad 4837200a8c Add vendor/device ID for 3ware Escalade IDE RAID controller. 2000-06-07 19:52:07 +00:00
mrg a67130a218 regen. 2000-06-07 09:55:22 +00:00
mrg 09b843b7f6 fix a couple of the sun entries. 2000-06-07 09:52:16 +00:00
haya dca97557cd Add CB_BCR_RESET_ENABLE in bridge control resister's bit definition. 2000-06-07 09:02:46 +00:00
thorpej b15bbb90f9 Add missing break; 2000-06-07 04:31:49 +00:00
soren 13ed0863f8 Regen. 2000-06-07 01:58:17 +00:00
soren e2c1012576 Add Trident 9397DVD. 2000-06-07 01:57:30 +00:00
thorpej c85d6d7ca3 Improve the Cypress name a little. 2000-06-06 22:56:06 +00:00
thorpej a452638f06 In pciide_mapreg_dma(), check to see what type the BAR is before
mapping the registers, as suggested by a comment in that function.
2000-06-06 22:47:22 +00:00
soren ba5df2479b Shorten names of VIA controllers to fit in 80 columns with versions. 2000-06-06 17:48:12 +00:00
thorpej c40fa3c4d4 Actually program the DMA mode of the drives into the Cypress
controller.  Fixes a long-standing problem where IDE DMA wasn't
working on the AlphaPC 164SX.
2000-06-06 17:34:22 +00:00
kleink 05d7f969b9 Regen. 2000-06-06 07:55:50 +00:00
kleink aed5858e8b Add the product ID for the ESS Maestro 3 modem function as well. 2000-06-06 07:55:17 +00:00
thorpej 21d9669e4f Common routines for read/writing Cypress 82c693 control registers. Needed
by `pciide' and the Alpha `sio' (PCI-ISA bridge) driver.
2000-06-06 03:07:39 +00:00
tsutsui 8c4d1bf1f9 Adapt MI ncr53c9x changes. 2000-06-05 15:08:00 +00:00
kleink ca3d9c7fa7 Regen. 2000-06-05 11:34:07 +00:00
kleink 428a7ca4e3 Add the ESS Maestro 3 product ID as well. 2000-06-05 11:33:35 +00:00
kleink 9b40e3731a Regen. 2000-06-05 11:31:15 +00:00
kleink be40495bb0 ESSTECH:
* add what's allegedly the Maestro 1's product ID.
* align product names with data sheets.
2000-06-05 11:29:28 +00:00
gmcgarry 745e3fef63 pciiide -> pciide 2000-06-04 22:22:12 +00:00
tsutsui f44619d89d KNF some lines. 2000-06-02 18:34:05 +00:00
augustss 87a5ae384c Update URLs. 2000-06-01 09:58:19 +00:00
augustss f1b4af5ba1 Make this compile too. 2000-05-30 08:36:27 +00:00
matt e78793c612 Beginning of a IEEE 1394 framework. An attachment for PCI OHCI controllers
and bus-independent module that just begins to print things out.  No real
code behind it.  THIS IS A WORK IN PROGRESS.  The *reg.h are woefully
incomplete.
2000-05-30 06:56:13 +00:00
matt c7326acd04 Add the PCI attachment for IEEE 1394 OHCI controllers. Files to follow later. 2000-05-30 00:53:14 +00:00
matt fd1991294f Regen 2000-05-30 00:21:07 +00:00
matt adaaa34784 Add the TI 1394 controllers. Makes all the 1394 controller descriptions
similar.
2000-05-30 00:20:41 +00:00
tsubai 8cde93a435 * Support (not so) new cards. (only Cyclom-8YsP+ is tested)
* Make compilable with CY_DEBUG.
2000-05-29 12:05:41 +00:00
drochner c461529353 regen 2000-05-28 10:25:25 +00:00
drochner f8091908b5 -correct description for 3c905b-FX (100 Mb only)
-add Neomagic 256ZX
2000-05-28 10:24:57 +00:00
thorpej 3a4393ff92 While DM9102A boards tend to have ISV-format SROMs (likely to describe
the HomePNA PHY typically connected to the external MII interface),
DM9102 implementations (often found on motherboards) do not.  Handle
this.
2000-05-27 19:42:06 +00:00
scw 46807640c7 Add support for the OPTi 82c621 PCIIDE controller and its derivatives.
I only have a Compaq laptop on which to test this, so reports of
success/failure in other systems would be welcomed.
2000-05-27 17:18:41 +00:00
scw 1d2a3e79a9 Regen. 2000-05-27 17:12:36 +00:00
scw 713621eb0e Add entries for a couple of OPTi PCI-IDE controllers. 2000-05-27 17:11:37 +00:00
nathanw 00369993f9 Whitespace police. 2000-05-27 16:38:02 +00:00
soren ed0572ca92 Regen. 2000-05-27 11:40:04 +00:00
soren eaef48d317 Add a few devices. 2000-05-27 11:38:31 +00:00
thorpej 8a3725612d Add support for the Davicom DM9102 and DM9102A 10/100 Ethernet chips.
Partially based on diffs submitted by Matthew Orgass <darkstar@pgh.net>
and IWAMOTO Toshihiro <iwamoto@sat.t.u-tokyo.ac.jp>.
2000-05-26 16:38:13 +00:00
dante 3d7bdc4c94 Fix a bug introduced in last commit which caused a painc due to
re-enqueueing an already free ccb.
Prepare the background to have a unique initialization function for
    all of the supported host adapters.
Rename a lot of #define in a more sane way.
Move Carriers initialization and defines in adwmcode.{c,h}
Don't lose Carrier nodes in case of a BUS/Chip reset explicitly invoked
    after a DMA failure.

XXX - DMA failure still arise when AdvanSys U[2]W host adapters are used
      in conjunction with Intel 82443BX Host Bridge/Controller (rev. 0x03).
      !?!Have to understand why!?!
2000-05-26 15:13:43 +00:00
matt bf05730540 Regen. 2000-05-26 05:07:02 +00:00
matt 5bd1e75033 Add NEC 1394 OHCI chips 2000-05-26 05:06:27 +00:00
bouyer b063b2ec36 Separate the sheduler from the main script, allocate another DMA-safe
memory page for the sheduler. Put the main script in the on-chip RAM when
available.
Avoid a null-pointer dereference when DSA is invalid.
2000-05-25 10:10:54 +00:00
thorpej 4f92d2cd54 Update from Bill Studenmund <wrstuden@zembu.com>:
- Note that the FreeBSD driver distributed by Cyclades served as
  documentation on how the board works.
- Use the wait-until-pending-I/O-completes-before-loading-parameters
  command in czttyparam().
- Pass BREAKs up to the tty later properly.
- Garbage-collect some debugging code.
2000-05-24 22:26:35 +00:00
thorpej 8f7304f9b7 Typo in previous. 2000-05-23 16:47:44 +00:00
thorpej 5c9920bbb6 Update from Bill Studenmund <wrstuden@zembu.com>:
Correctly send and receive BREAKs -- still needs to do something
intelligent with them.  Some additional debugging goo.
2000-05-23 01:02:21 +00:00
wiz c2b6147132 Replaced overlooked BROOKTREE_SYSTEM_DEFAULT with BKTR_SYSTEM_DEFAULT,
as noted by Roger Hardiman.
2000-05-22 01:00:29 +00:00
wiz 56cb02c358 Use bktr_softc.bktr_dev.dv_xname instead of "bktr0" when printf'ing as
requested by Klaus Klein in kern/10166.
Also add device instance name to all printf's that didn't have it.
2000-05-21 15:43:56 +00:00
augustss c3e3a945cc Add a missing bktr%d: in one of the attach messages.
(When is this code going to be KNFed?)
2000-05-20 16:16:15 +00:00
tsutsui f2973e2fb8 - Change RL_* -> RTK_*
- Free bus_dma resources if attach fails
- Add detach and power management code

Patch from Masanori Kanaoka <kanaoka@ann.hi-ho.ne.jp> in kern/10156.
2000-05-19 13:42:29 +00:00
thorpej 3e403cdb65 In tiocm_to_cztty(), use SET() instead of CLR() in the
TIOCMBIS case.  "Oops!"
2000-05-19 06:01:14 +00:00
thorpej 59164fe0fc Fix an inverted test. 2000-05-18 17:55:17 +00:00
drochner 6095f60587 regen 2000-05-18 13:04:27 +00:00
drochner 309b0ed70d fix typo in last commit 2000-05-18 13:03:31 +00:00
garbled 4d3e8e6976 regen 2000-05-18 08:03:22 +00:00
garbled 81fd58c65b Add the device ID for the IBM MPIC-II. 2000-05-18 08:02:19 +00:00
thorpej 5274a6162f Add a device driver for the Cyclades-Z series of intelligent multi-port
serial boards.  Written by Jason R. Thorpe and Bill Studenmund.
2000-05-17 17:58:09 +00:00
thorpej 07ea678d4d Register definitions and preliminary API definition for the PLX 9060
family of PCI bus controllers.
2000-05-17 17:47:00 +00:00
bouyer c4042e45a5 Sync my copyrigth notice. 2000-05-15 08:46:00 +00:00
bouyer e557084177 Update for siop split. 2000-05-15 08:27:24 +00:00
bouyer a1c4db6c37 - split siop_pci in attachements vs helper functions, for comming esiop
- add a reset callback to enable PCI-specific features. This improve bandwith
  by a factor of 2 on my alpha with a 875 !
- sync copyrigth notice
2000-05-15 07:53:17 +00:00
thorpej e5ae7c287a Symbol namespace cleanup: rl_ -> rtk_ 2000-05-15 01:55:12 +00:00
thorpej a4b298224a Use <dev/ic/ac97reg.h> 2000-05-15 01:35:29 +00:00
thorpej 1838aef29c ac97.h -> ac97var.h 2000-05-15 01:27:44 +00:00
soren 8513bb93ed Regen. 2000-05-14 14:58:14 +00:00
soren b84dfa7c45 Add SGI IOC3. 2000-05-14 14:56:53 +00:00
jhawk e0292df01c sc_ih (interrupt cookie) is not pci-specific data
and needs to remain in fxp_softc rather than fxp_pci_softc;
otherwise we break cardbus.
2000-05-12 18:46:33 +00:00
thorpej cd82969dfc Print the revision info from the PCI configuration header. From
Dave Sainty, kern/10025.
2000-05-12 17:52:07 +00:00
thorpej c8de5ae180 Treat the 3c980C-TXM like the 3c980 Server Adapter. From Paul J. Lavoie,
kern/10037.
2000-05-12 17:48:47 +00:00
thorpej 032c5f01de Regen. 2000-05-12 17:47:05 +00:00
thorpej 0a712d4707 Add product ID for 3Com 3c980C-TXM 10/100 Ethernet. From Paul J. Lavoie,
kern/10037.
2000-05-12 17:46:47 +00:00
thorpej 288883fca7 Apply indent(1). 2000-05-12 16:42:41 +00:00
thorpej 6474f16852 Use ether_crc32_le(). 2000-05-12 16:41:59 +00:00
jhawk 421c001447 Move struct fxp_pci_softc declaration to if_fxp_pci.c removing an
unnecessary header file (if_fxp_pcivar.h); oh, how quickly the nascent
inodes are subject to infant mortality.
2000-05-12 13:46:31 +00:00
jhawk cd552bf956 Fix bugs seen on Sony Vaios.
Address kern/9370, kern/9548, kern/9571, and kern/9573.

Save and restore critical PCI configuration registers because they are
sometimes bashed.
Add a powerhook to restore said PCI registers after APM events.
The fxp now works across a warm boot from windows (vaio).
The fxp now works across an apm suspend/resume or hibernate/resume cycle.
2000-05-12 03:37:40 +00:00
jhawk 6622f20fc1 Move pci-specific data to fxp_pci_softc from fxp_pci_softc.
Add some more pci-specific data to fxp_pci_softc.
2000-05-12 03:36:18 +00:00
jhawk 8d671b6292 Define some PCI power management CSR constants. 2000-05-12 03:35:34 +00:00
thorpej 5786c811d5 Support 64-bit PCI memory mapping registers, as sometimes are used
on the Symbios 53c896 controller.  Also, prefer memory space over
I/O space.
2000-05-10 17:22:46 +00:00
thorpej 90f7e687dc These are no longer used. 2000-05-10 17:09:44 +00:00
thorpej d56c0ff801 Support Adaptec U2W cards with a 64-bit PCI memory range (such cards
are available with Power Macintosh G3 and G4 systems).
2000-05-10 17:07:52 +00:00
thorpej 5939e70ca3 Add support for mapping 64-bit PCI memory space. If the region
is mapped in a way that is inaccessible by a 32-bit bus_addr_t, then
print a message to that effect and return failure.

Original patches by Bill Studenmund, with a few small changes by me.
2000-05-10 16:58:42 +00:00
kleink 7a6f003756 Add a comment describing the previous change. 2000-05-10 08:39:58 +00:00
haya 7d4bae615d Move if_rl_pci.c:1.7 to if_rtk_pci.c. 2000-05-10 00:19:55 +00:00
bouyer 05e928a241 Ops, abort if we can't map the registers ! Pointed out by Matthias Drochner. 2000-05-09 17:05:52 +00:00
dante 2648a72bb2 Minor changes to PCI configuration 2000-05-08 17:11:54 +00:00
joda 6d3ce966ce VIA VT82C686A hardware monitor 2000-05-08 16:40:42 +00:00
kleink 05f0b17555 Make pci_get_capability() work correctly on both header type 0 and type 2
devices; both have different Capability List Pointer registers.
2000-05-08 10:52:38 +00:00
kleink 085ec82073 Add a register offset for the Capability List Pointer in header type 2.
XXX Ideally the PCI-Cardbus Bridge header should be restructured to just
XXX present standard register definitions, making it ~safe to be included.
2000-05-08 10:45:52 +00:00
kleink de328af944 Fix a inverted logic botch introduced in rev. 1.35, typically causing
cb_chipset() to return the wrong chipset type.
2000-05-08 07:31:20 +00:00
wiz 8651580247 man page is written, remove it from TODO 2000-05-07 20:47:10 +00:00
jonathan 8ee4c016eb PCI product codes for Yamaha YMF744B (DS-1S) YMF754 (DS-1E) audio chips. 2000-05-07 17:00:06 +00:00
jonathan 0d57ac396d Product codes for Yamaha YMF744B (DS-1S) YMF754 (DS-1E) audio chips. 2000-05-07 16:56:34 +00:00
veego f7e2752025 Change one 0 for bootverbose to 1 if DEBUG is defined. 2000-05-07 14:59:23 +00:00
veego 20ae91400c Add a dummy bootverbose. 2000-05-07 14:49:11 +00:00
veego 21942247f3 It is a bad idea to declare a static bootverbose variable here. Remove it. 2000-05-07 14:43:31 +00:00
wiz 4211fcfd7e remove unnecessary output to console 2000-05-07 13:50:10 +00:00
wiz 7392f90215 multiple inclusion protection 2000-05-07 03:01:58 +00:00
wiz 3d3dc5c594 add one 2000-05-07 01:46:01 +00:00
wiz 2f7dba9ea1 compilation fix 2000-05-07 01:16:23 +00:00
wiz 4caea4817d some glue for bktr-driver 2000-05-07 00:25:58 +00:00
wiz 5f8b869a3e Some NetBSD specific changes; also TODO, and import script, based
on bind2netbsd by Bernd Ernesti
2000-05-07 00:24:33 +00:00
wiz 8b27ce1a70 Import of (finally busspaced) bktr-driver from FreeBSD (part 1).
This version is from the location specified in the README, modified
by bktr2netbsd, to be committed later.
2000-05-07 00:16:17 +00:00
soren 5e209d22f7 Print the usual interrupt line. 2000-05-06 00:46:19 +00:00
thorpej 5a5c88dc4e `typedef void ifnet_ret_t;' isn't valid C -- use #define, instead. Also,
don't abuse the C preprocessor.
2000-05-03 21:08:02 +00:00
thorpej 081e7cbdaf `typedef void ifnet_ret_t;' isn't valid C -- use #define, instead. 2000-05-03 20:52:29 +00:00
bouyer 3bb9a5f666 - do sync/wide negotiation
- use a circular queue for the start slots, so that order has better chances
  to be preserved.
2000-05-02 19:03:02 +00:00
nathanw 8ca78ff825 In siop_lookup_product(), actually check the PCI *vendor* ID as well as the
product ID.
Prevents false matches of other devices, such as the DEC 21050 ppb.
2000-05-02 03:59:35 +00:00
augustss 4e1e58e353 Change the way the codec is access to mimic how Linux&FreeBSD does it. 2000-05-01 17:15:41 +00:00
tsutsui 9498452c05 - Move some initialization into MI rl_attach() from each bus attachment.
- Use proper CARDBUS_* macro in if_rl_cardbus.c
- Use product ID read from PCI configuration space rather than from EEPROM
  in if_rl_pci.c.

Patch sent from Masanori Kanaoka <kanaoka@ann.hi-ho.ne.jp> and
some cosmetic changes by me.
2000-05-01 15:08:50 +00:00
augustss fec9706315 Remove unneeded #include "mpu.h" 2000-04-30 22:16:56 +00:00
augustss aaa405eab7 Add driver for C-Media CMI8x38 Audio Chip. From Takuya SHIOZAKI <AoiMoe@imou.to> 2000-04-30 21:59:58 +00:00
dante 1dbea6c0f9 Add new microcode for all of the supported boards.
Fix minor glitches.
Add preliminary support for ASB-3940U3W host adapters; it might work w/ autotermination on.
ASB-3940U3W support is not yet tested due to lack of board.
2000-04-30 18:52:14 +00:00
dante ff84aeb762 Add ASB-3940U3W host adapters (AdvanSys) 2000-04-30 18:46:18 +00:00
dante d2679acf60 Add ASB-3940U3W host adpeter (AdvanSys) 2000-04-30 18:34:53 +00:00
tsutsui 439b360ab9 Modify EEPROM read functions and handle also 9356 EEPROM.
Fixes kern/9861.
2000-04-30 12:00:40 +00:00
augustss d2e2dce826 Regen. 2000-04-28 20:54:39 +00:00
augustss 0b9c397110 Add 2 more eap audio devices. 2000-04-28 20:54:10 +00:00
uch bbb8c56fcb add PCI_MAPREG_PPB_END (PCI-PCI bridge) PCI_MAPREG_PCB_END (PCI-Cardbus bridge) 2000-04-28 17:12:45 +00:00
augustss 30c20f930f Change my email address. 2000-04-27 15:26:44 +00:00
bouyer bf7a94ec2b Fix copyrigth notice. 2000-04-27 14:06:57 +00:00
thorpej ef25b7769e Regen. 2000-04-26 17:30:59 +00:00
thorpej 0defe75e76 Add product ID for the PLX Technology 9060ES PCI bus controller. Note this
ID isn't normally seen, as just about every device with a PLX on it loads
a different ID from an EEPROM, but there's no harm in documenting it.
2000-04-26 17:30:35 +00:00
tsutsui b4f524c223 - Allocate mbuf dynamically on Tx and use bus_dmamap_load_mbuf(9).
- Call bus_dmamap_sync(9) as appropriate.
- Leave only register declarations in rtl81x9reg.h and
  split other stuff into rtl81x9var.h.

bus_dma(9) code mostly taken from thorpej's if_rtp.c.
2000-04-26 14:02:34 +00:00
tsutsui 6369b56c99 Fix two endian problems. rtk now works on macppc.
- Use le32toh() on reading rxstat from the Rx DMA buffer.
- rl_read_eeprom() should return EEPROM values in little endian
  when caller requires byte-stream data.

bus_dma(9) fixes are still on-going.

XXX rtk on macppc seems to make tons of CRC errors...
XXX Does it work fine on i386 or others?
2000-04-25 14:16:46 +00:00
augustss 74beeca710 Move the size of the mapped bus_space region into the bus independent softc. 2000-04-25 09:20:54 +00:00
augustss aae26d0d0c Move a test if the MIDI is open outside a loop in the interrupt routine.
Some stylistic changes.
2000-04-24 17:55:24 +00:00
tsutsui 6f9392b42a Merge changes of sys/pci/if_rl.c rev. 1.8->1.10. (from kern/9870)
Also remove unused pbase, vbase and PCI_CAP_PWRMGMT declarations.
2000-04-24 15:25:00 +00:00
augustss 5ea1af4bf4 Regen. 2000-04-22 18:07:19 +00:00
augustss f468f877de Add some CMedia audio devices. From T.SHIOZAKI <AoiMoe@imou.to> 2000-04-22 17:32:02 +00:00
bouyer 19ada4a82a Snapshot of work in progress: new driver for the NCR 53c8xx SCSI controller
(the name 'siop' is still being discussed, may change).
Only basic disconnect/reselect for now, no sync/wide negotiation.
Tested with 810A, 875 and 895 on i386 only.
The bus-independant part should also be able to handle the 53c720 and 53c770.
A new driver with enhanced script should appear for the 825/875/895 'soon'.
2000-04-21 17:56:58 +00:00
nathanw 3e49436f9d Replace rcons console code with rasops console code.
Console text should now be supported on all TGA cards;
8- and 32-bit TGA and 8-bit TGA2 have been tested.

Implement accelerated character drawing, scrolling, and clearing.

Stop clearing "odd" in VHCR; it's unnecessary and hurts performance.

Use bus_space_vaddr() instead of a local hack.
2000-04-20 05:25:20 +00:00
haya 784977f319 Changes the name of RealTek driver. The new name is `rtk'. This used
to be called `rl' and it conflict with RL vax disks, canonical and
historical unix driver name.

This changes are minimal: it only changes the name of RealTek driver.
The filename of source code and a lot of the letter `rl' in source
files should be changed shortly.
2000-04-19 08:44:31 +00:00
bouyer 5803932005 Regen 2000-04-19 07:52:33 +00:00
bouyer 01beba012a Add some Symbios devices. 2000-04-19 07:51:20 +00:00
cgd 0d117aa518 regen for changed pcidevs 2000-04-18 16:38:12 +00:00
cgd 88e62f7c84 SiByte, Inc. is vendor 0x166d. 2000-04-18 16:37:00 +00:00
cgd a267efd061 #if 0 the (way bogus) PCI_CLASS_COMMUNICATIONS/PCI_SUBCLASS_BRIDGE_PCI (!!!)
match pointed out (again?) by Johan Danielsson, after i repeatedly told
him not to do something similar in com_cardbus.
2000-04-17 16:45:04 +00:00
thorpej d8bccc7c6e Regen. 2000-04-17 00:26:45 +00:00
thorpej fcd420cf5d Add product ID for the S3 Trio3D/2X AGP graphics adapter. 2000-04-17 00:26:22 +00:00
haya e49807d100 Incorporate the changes of RL81x9 driver provided by M. Kanaoka
<kanaoka@ann.hi-ho.ne.jp>.  He separated the driver into IC specific
portion and bus attachment portion and added cardbus attachent.
2000-04-10 07:42:55 +00:00
tsutsui 909b096cf8 Remove #ifdef __NetBSD__ code inside !__NetBSD__ part. 2000-04-08 13:49:43 +00:00
tsutsui de19673726 Add vaddr_t cast to vtophys() arg. (for powerpc) 2000-04-08 13:44:12 +00:00
tsarna 9964217571 Fix fms_free like auvia_free 2000-04-08 03:50:48 +00:00
tsarna a1ea15c0e1 Fix auvia_free, clean up more on close, and be more careful in interrupt
handler.
2000-04-08 03:33:58 +00:00
tsutsui cae6a3d2a4 Fix bogus byte-swap code in ncr_snooptest().
XXX This snoop test is not needed if ncr had real bus_dma(9) support...
2000-04-06 14:42:06 +00:00
haya 7bc5a1ca36 Add CardBus interrupt enable flag. When this flag is asserted, a
CardBus interrupt is routed to the child devices and vice versa.  This
flag is negated when a pccbb receives a suspend or stanby event.
2000-04-06 09:11:57 +00:00
mrg 710872c1d0 add "hme at pci" support. 2000-04-05 02:31:19 +00:00
thorpej 5a41b5bf56 - if_tlp_cardbus.c: Use the `pmreg' pointer passed by by
cardbus_get_capability() [mirror change already made to if_tlp_pci.c]
- if_tlp_cardbus.c: If we don't find an ISV SROM, try to grab the
  Ethernet address from the CIS.
- if_tlp_cardbus.c: set CardBus cards to store-and-forward mode from
  the get-go.
- Put the TxThresh tables in tulipvar.h, and use them in the CardBus
  and PCI front-ends to go to store-and-forward mode.
- Document the Xircom X3201-3 clone a little more.
2000-04-04 19:22:50 +00:00
joda d3b06b0596 regen 2000-04-03 15:05:05 +00:00
joda 0caed62b03 add some NVIDIA chipsets 2000-04-03 15:04:42 +00:00
nathanw f5b5bbbf21 Add code to read and write bt463-style ramdacs; pick ramdac interface
functions based on type returned from tga_getconf().
Adapt to change in ramdac interface.
Fix race condition in tga_sched_update().
Make tga_sched_update() work before interrupts are enabled.
2000-04-02 19:01:11 +00:00
nathanw bc3260fcb0 Restore ramdac-type field to TGA configuration structure. 2000-04-02 18:59:32 +00:00
nathanw c0a4c9e67d Move bt463 code to dev/ic and adapt to the new ramdac interface.
Set default window type to 24-bit truecolor.
Correctly set pseudocolor mode.
2000-04-02 18:57:36 +00:00
bouyer 26f6c9a9cf - DMA code cleanup: pciide_dma_finish() doesn't stop/unload the current DMA op
if an IRQ was not detected, unless the force flag was given. Use this to
  detect if the IRQ was for us (closer to shared IRQ for controllers which
  don't have their own IRQ handler in pciide.c) and to poll for DMA xfer.
  Also makes the timeout recovery code simpler.
- ATAPI cleanup: don't call controller-specific functions from atapiconf.c
  (wdc_*), so that it's possible to attach an atapibus to something else
  than a wdc/pciide (Hi Lennart :).
  Overload struct scsi_adapter with struct atapi_adapter, defined
  as struct scsi_adapter + atapi-specific callbacks. scsipi_link still points
  to an scsi_adapter, atapi code casts it to atapi_adapter if needed.
  Move atapi_softc to atapiconf.h so that it can be used by the underlying
  controller code (e.g. atapi_wdc.c).
  Add an atapi-specific callback *atapi_probedev(), which probe a drive
  in a controller-specific way, allocate the sc_link and fills in the
  ataparams if needed. It then calls atapi_probedev() (from atapiconf.c)
  to do the generic initialisations and attach the device.
- While I'm there merge and centralise the state definitions in atavar.h.
  It should now be possible to use a common ata/atapi routine to set the
  drive's modes (will do later).
2000-04-01 14:32:22 +00:00
tsarna 07dea214dc Add auvia, a driver for the integrated AC'97 audio on the VIA VT82C686A
southbridge.

Tested on a ASUS K7M (w/ AD1881 codec). Please report any problems.
2000-03-31 04:45:28 +00:00
joda 4772fa5b3c regen 2000-03-30 17:35:39 +00:00
joda 4c8aed5893 add the device id for the VIA 686A modem controller, continuing the
trend of mislabelling VIA's south bridges
2000-03-30 17:34:53 +00:00
augustss 169ac5b3c1 Remove register declarations. 2000-03-30 12:41:09 +00:00
ad 2030c2a75a Regen. 2000-03-27 16:56:27 +00:00
ad 9bdb74bc42 Add a couple of DPT devices. 2000-03-27 16:55:43 +00:00
soren 7b737d77b3 For Cobalt Networks 21143's, always use store-and-forward and toggle
a GPIO line to fully reset the PHY.
2000-03-26 10:53:39 +00:00
mycroft d07e505604 Rather than guessing at the location of the PMCSR, use the pointer returned by
pci_get_capability().  (This is, after all, a standardized interface...)
2000-03-23 22:23:03 +00:00
joda 8ff53e0069 regen 2000-03-23 15:11:26 +00:00
joda f68049679a add two Intel 82810E devices (from IWAMOTO Toshihiro) 2000-03-23 15:10:56 +00:00
ad 5cc8601c8f Identify individual models correctly. 2000-03-23 11:33:35 +00:00
ad 90ae76da4b Regen. 2000-03-23 11:18:09 +00:00
ad 96ec85342f Back out rev 1.197. 2000-03-23 11:17:32 +00:00
thorpej fc96443d15 New callout mechanism with two major improvements over the old
timeout()/untimeout() API:
- Clients supply callout handle storage, thus eliminating problems of
  resource allocation.
- Insertion and removal of callouts is constant time, important as
  this facility is used quite a lot in the kernel.

The old timeout()/untimeout() API has been removed from the kernel.
2000-03-23 07:01:25 +00:00
ws 7da71e5f9e Make IPKDB working again.
Add support for i386 debugging and pci-based ne2000 boards.
2000-03-22 20:58:25 +00:00
kleink c8b75dd368 Scale the drain timeout for allowing auto-initialize DMA to complete. 2000-03-22 14:37:43 +00:00
haya ddd36bd41a 1. Do not apply 5 V on a CardBus card.
2. Do not avoid ISA hole when a device requires more than
   256-byte io space.
3. Remove sending CardBus bridge's function number to
   cardbus stack.  This number is not needed for anyone.
2000-03-22 09:35:06 +00:00
cgd 00f7a2d476 if the PCI_CONFIG_DUMP option is defined, set the patchable
pci_config_dump variable to 1.  otherwise, it gets set to 0.  If
that's set, when configuring PCI devices spew the very verbose
configuration space header dump that was previously "#if 0"'d.
If you use this option, or patch the variable to 1, it's strongly
encouraged that you have used the MSGBUFSIZE option to enlarge the
kernel message buffer.
2000-03-22 00:47:26 +00:00
cgd 9c93a8b8ff add PCI_CONFIG_DUMP as a defopted option 2000-03-22 00:43:47 +00:00
cgd 7990787b1b opt_pciverbose.h -> opt_pci.h (it's gonna be used by more things, soon) 2000-03-22 00:36:29 +00:00
joda 1e0edbf862 regen 2000-03-21 18:51:43 +00:00
joda 1173b4b28d add two VIA VT8371 devices 2000-03-21 18:51:08 +00:00
ad 95a8d1bfcd Try to use memory mapped I/O on everything but the SMART-2/E. 2000-03-21 13:45:16 +00:00
tsutsui 979d79d931 Use sc_cfg4 for the Am53c974. 2000-03-20 05:48:28 +00:00
soren 2d937cc876 Make it a bit more clear which functions are specific to which models.
Split off register definitions into eapreg.h.
Remove duplicate codec reset.
2000-03-19 17:11:50 +00:00
cgd 638726b0db * rework the quirk table ('device_tab'):
* QUIRK_NOMSG only has any meaning when NCR_GETCC_WITHMSG
      is defined.  Therefore, there's no harm in using it when
      NCR_GETCC_WITHMSG is not defined.  so, simplify the table
      by removing the #ifdef.
    * there's really no point in having table entries after
      an entry which will match everything.
    * add some comments, clean up spacing.

* add an entry for "QUANTUM"/"ATLAS IV" drives with flags
  QUIRK_NOTAGS|QUIRK_NOMSG.  (I included the latter flag only
  because everything else had it before! ... which means that
  all the functionality added with the NCR_GETCC_WITHMSG define
  would never get used! *sigh*)  The latter fixes the problems
  I was having on an Atlas, and should fix the problems mentioned
  by Hans Hoppe <hopha@casema.net> in comments on PR#7694.
2000-03-18 06:59:02 +00:00
cgd 52b7212c58 undo the non-script changes from rev 1.87. They caused problems in
1.4.x and i have concerns (but no concrete proof) they will cause/have caused
problems in -current as well.  Really, the right way to fix this is to
rewrite the driver, and push up tagged queueing handling into a common
middle layer that'll do it right in a low-level-driver-independent manner.
I'll fix my particular issues by using the ncr driver quirk mechanism.
2000-03-18 06:47:28 +00:00
soren bd1cc85c63 Use a kvtophys() hack for mips like for alpha. No idea if it actually works.. 2000-03-17 11:30:14 +00:00
bouyer 5c0cae7a28 Fix botched merge in previous. 2000-03-17 09:25:22 +00:00
bouyer 0bf221f2d9 - remove leftovers of FreeBSD code in #if 0/#endif
- fix a bug in ti_encap() where a NULL pointer could be used if we run out
  of tx descriptors (return ENOMEM instead, and let the caller assert OACTIVE)
- sync boot messages with NetBSD's pci standart (print ti_name and irq
  line)
- add a shutdown hook to stop the board, so that the board will not DMA at
  random places while we're rebooting
- convert all but TIGON 1 transmit descriptors to use bus_space
  (this last one isn't trivial to get rigth and I don't have the hardware to
  test)
- If we can't map the mem space linar, retry to map it nolinear. Punt if
  we couldn't map the mem space linear and we found a Tigon 1 chip.

With these changes a Tigon 2 board (netgear BA620 at last) can be used in
my DS20.
2000-03-17 09:20:16 +00:00
thorpej 93eb82ff2f Recognize the Intel InBusiness. 2000-03-16 23:41:40 +00:00
thorpej 56460ec830 Regen. 2000-03-16 23:41:30 +00:00
thorpej 3f182de5c6 Add product ID for the Intel InBusiness 10/100 Ethernet adapter (which
is an i82559 with a different product ID).
2000-03-16 23:36:44 +00:00
ad 70063dc527 Driver for Compaq array controllers and disks (cac(4)/ca(4)). 2000-03-16 14:52:22 +00:00
fvdl 1a774a9979 Set bus_intr to ahc_pci_intr. 2000-03-16 10:34:33 +00:00
thorpej c38405d33d Add power management support to the `tlp' driver. The battery on my
laptop lasts a whole lot longer now.
2000-03-15 18:39:50 +00:00
fvdl 14620f1eee PCI frontend for new ahc driver. 2000-03-15 02:33:52 +00:00