Commit Graph

356 Commits

Author SHA1 Message Date
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
76ea3fcb82 regen 2001-02-24 20:13:53 +00:00
christos
e6583ce243 add ESS wd controller. 2001-02-24 20:13:33 +00:00
lukem
3aeb5f2f29 whitespace police 2001-02-24 01:59:46 +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
martin
40db0102c3 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:
isapnp_isic.c -> isic_isapnp.c
i4b_ctx_s0P.c -> isic_isapnp_ctx_s0P.c
i4b_drn_ngo.c -> isic_isapnp_drn_ngo.c
i4b_dynalink.c -> isic_isapnp_dynalink.c
i4b_elsa_qs1i.c -> isic_isapnp_elsa_qs1i.c
i4b_siemens_isurf.c -> isic_isapnp_siemens_isurf.c
i4b_sws.c -> isic_isapnp_sws.c
i4b_tel_s0P.c -> isic_isapnp_tel_s0P.c
2001-02-18 09:24:49 +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
is
cf9b8e8210 Contribution by Ryoji Kato: I-O DATA IFML-560 56K modem device ID. 2001-01-26 11:04:20 +00:00
is
2b15bcc35b Contribution by Ryoji Kato: I-O DATA IFML-560 56K modem support. 2001-01-26 11:02:18 +00:00
martin
242656c78a Enable the imported ISDN4BSD based ISDN subsystem.
This is the kernel part (userland to follow soon) of the latest (and
very probably last) release (version 0.96) of ISDN4BSD. ISDN4BSD has a
homepage at http://www.freebsd-support.de/i4b/.

It gives the user various ways to use the isdn connection: raw data (via
the i4brbch "raw b-channel" device), ppp (via the isp "isdn PPP" device),
voice/answering machine (the i4btel "telephone" device) and ip over isdn
(the ipr device, "IP over raw ISDN").

Supported are a bunch of common and older cards, more to be added soon
after some cleanup. Currently only the european E-DSS1 variant of the
ISDN D channel protocol is supported.
2001-01-05 13:09:15 +00:00
martin
c3cb638bca Initial import of ISDN4BSD release 0.96 2001-01-05 12:49:52 +00:00
mjl
aaad4d0284 Add quirk for Avance Logic ALS100+, which doesn't like it's irq/drq
being set in pnp mode.
2000-12-19 01:09:15 +00:00
mjl
324ff9ac52 Regen 2000-12-19 01:08:13 +00:00
mjl
a006fdf328 Correct ALS100+ entry. 2000-12-19 01:07:52 +00:00
mjl
e2372c3a0b Regen 2000-12-18 17:00:44 +00:00
mjl
ca4a96b3da Add Avance Logic ALS100+ 2000-12-18 16:55:46 +00:00
thorpej
19c3f4691f ISAPnP front-end for the Aironet 802.11 cards. Note this is currently
untested.
2000-12-17 20:34:40 +00:00
thorpej
5b67bb41a2 Regen; added Aironet 802.11. 2000-12-17 20:17:20 +00:00
thorpej
8c28f8f467 Add Aironet ISAPnP device ID. 2000-12-17 20:16:03 +00:00
thorpej
cfe0892ed3 NBPG -> PAGE_SIZE 2000-11-14 18:42:55 +00:00
jdolecek
a020e8fbb5 regen 2000-08-28 17:44:33 +00:00
jdolecek
8b242e878a add entry for SupraExpress 56i Sp V.90, as sent in kern/10902 2000-08-28 17:43:59 +00:00
mrg
261538ecac remove include of <vm/vm.h> 2000-06-28 16:39:25 +00:00
soren
a4f554c4ac Add CS4235 MPU id. 2000-06-06 18:08:51 +00:00
soren
63649c5744 Make the frontend print a newline. 2000-06-06 16:27:49 +00:00
christos
d4bcd03b81 PR/10154: Antti Kantee: ignore 0 length resource(s) 2000-05-23 17:50:53 +00:00
soren
df1f794536 Reflect version 1.13 of i82365_isa.c. Untested. 2000-02-23 17:22:11 +00:00
erh
8613a0edaa Regen. 2000-02-08 06:36:46 +00:00
erh
a87f862d24 Add Allied Telesyn AT-1500, lance ethernet. 2000-02-08 06:36:29 +00:00
thorpej
52a2804a5c Add a new function call to the ISA DMA API: isa_dmamaxsize(), which returns
the maximum transfer size for the specified DMA channel.  Make all clients
of ISA DMA use this call to determine their maximum transfer size.
2000-02-07 22:07:27 +00:00
chopps
d8e72e215d implement probing for available irqs on non-cirrus pcmcia controllers
including cardbus controllers running in pcic mode
2000-02-01 22:39:51 +00:00
explorer
387644d34d regen 1999-12-15 05:49:44 +00:00
explorer
5e4e92603b add another modem; from Dan J Fraser 1999-12-15 05:49:33 +00:00
castor
df56622ada regen 1999-11-27 09:02:22 +00:00
castor
3de779c46a Add support for CS4235 codec as found on Intel KU440EX motherboard. 1999-11-27 09:02:13 +00:00
jun
559f1ca662 re-generating isapnpdevs.c isapnpdevs.h 1999-11-17 02:03:10 +00:00
jun
1e396f9b0b Support for Adaptec AVA-1502P
kern/8804 patch by NAKAGAWA, Yoshihisa
1999-11-16 05:10:54 +00:00
christos
040891d3e1 regen 1999-10-27 15:12:28 +00:00
christos
c48725b28e PR/8692: maximum entropy: Recognize Creative SB Awe 64 joystick. 1999-10-27 15:11:56 +00:00
itohy
80b776d037 Use NMPU instead of NMIDI so that it can compile without mpu attachment.
Requested by Izumi Tsutsui.
1999-10-18 05:11:39 +00:00
itohy
1fa3147269 Add support for "opl at ym" and "mpu at ym" attachment. 1999-10-05 03:47:20 +00:00
christos
fcc61fbac4 PR/8443: Yamano-uchi, Hidetoshi: Missing register in IODESC. 1999-09-23 16:09:58 +00:00
rh
12bad24883 Add opl at wss for isapnp devices w/o MAD chip. 1999-09-06 18:31:45 +00:00
rh
5cfe8783f9 Regen. 1999-08-24 12:47:20 +00:00
rh
416c42cc34 Add AdLib MSC 32 Wave PnP board (wss audio device). 1999-08-24 12:46:55 +00:00
augustss
42fb510148 Move the mpu device declaration to conf/files.
Let the mpu device attach at the sb device, and then midi at the mpu.
Update the mpu at eso attachment.
1999-08-02 17:37:41 +00:00
augustss
cbf1f6f1b9 Move the MPU driver isa/ to ic/.
(I didn't move it in the repository because the revision history
is very short and uninteresting. :)
1999-08-01 18:05:39 +00:00
augustss
a6a09bcdd6 Add support for ES18[67][89]. From PR #7427 by AW9K-NNK@asahi-net.or.jp,
Nonaka Kimihiro.
1999-06-18 20:25:23 +00:00
augustss
8d38841260 Make it possible for this driver tp work again.
From Thomas Klausner - wiz@danbala.tuwien.ac.at
1999-05-18 16:41:07 +00:00
bad
8fb6c6124b From Onno van der Linden:
Reorganise the driver some what.
Rename tr_reset() to the more appropriate tr_stop().
Create a common tropic reset routine and use it in the frontends.
Move the code in tr_config() which is only used in the card attachment
routines into a new tr_attach() function.
Take adapter off the ring through tr_shutdown() in a shutdown hook.
This simplifies the bus-specific frontend.
1999-04-29 15:47:02 +00:00
ad
fe72ae262f Rebuilt from 'isapnpdevs'. 1999-04-18 13:21:01 +00:00
ad
690bd69d3e Add Diamond Supra 336i to device list. 1999-04-18 00:35:30 +00:00
mjl
4622761326 Enable workaround for isapnp assigning already used interrupts to pnp
cards by masking them out with a "options ISAPNP_ALLOC_INTR_MASK=..."
in kernel config.
1999-04-12 19:31:27 +00:00
christos
29ddb0a0af regen 1999-04-07 08:21:42 +00:00
christos
7fdc304a14 Add another USR modem 1999-04-07 08:21:25 +00:00
augustss
cadb84965d Use complete sentences in the generated comments. 1999-04-06 23:03:44 +00:00
augustss
17c3351354 Regen. 1999-04-06 23:02:31 +00:00
augustss
31f94ae97e Add Leopard 56k PnP, from PR 7330. 1999-04-06 23:02:09 +00:00
fvdl
c45bee7307 Regen. 1999-03-29 21:36:00 +00:00
fvdl
05eae31620 Now that he ESS 1868 and 1869 are working, enable them here. 1999-03-29 21:35:19 +00:00
bad
a4e508928f Oops. RcsID police. 1999-03-22 23:01:36 +00:00
bad
e09c06e04d Regen. 1999-03-22 22:36:49 +00:00
bad
579b0fce1b Recognise IBM and 3COM Token-Ring PnP cards and associate them with the tr
driver.
1999-03-22 22:36:10 +00:00
bad
ce0465b40f config(8) glue for Token-Ring and TROPIC drivers. 1999-03-22 22:33:35 +00:00
bad
2c16793ee5 Chipset driver for TROPIC based Token-Ring cards.
Frontends for IBM and 3COM ISA cards.

By Onno van der Linden <onno@simplex.nl>.
1999-03-22 22:21:26 +00:00
mycroft
41d5307e95 One minor change to previous. 1999-03-22 14:32:59 +00:00
mycroft
f887d74c45 Nuke sc_iooffs from orbit. This is exactly what bus_space_subregion() is for. 1999-03-22 14:29:14 +00:00
mycroft
6ada3afd8b Reject variant numbers which are too large (so that a new version of isapnpdevs
with an old driver will not lose mysteriously).
1999-03-22 10:00:09 +00:00
mycroft
2cccf3bd4a Update callers of isapnp_devmatch(). 1999-03-22 09:44:12 +00:00
mycroft
cbd5623c72 Add support for switching Aztech chips into WSS mode. 1999-03-22 09:43:12 +00:00
mycroft
86d586012a Regen. 1999-03-22 09:41:58 +00:00
mycroft
8e0df99c1e Add variants numbers, and Aztech AZT2320 bindings. 1999-03-22 09:41:10 +00:00
mycroft
77274e73c6 Add a `variant number' to the tables, so we can handle slight variations in
the chipset without doing something substantially more gross.
1999-03-22 09:38:57 +00:00
mycroft
878708a06b Adjust for MPU attachment change. 1999-03-22 07:41:36 +00:00
mycroft
fd400e0ddc Add a kluge to ignore I/O and memory ranges with a size of zero, so we don't
blow up in bus_space_{map,unmap}().  At least one card uses this to `disable'
a logical device.
(XXX There's probably a better way to do this.)
1999-03-22 07:40:57 +00:00
mycroft
ccbad3061c Add a mpu_isapnp attachment. 1999-03-22 07:39:33 +00:00
cgd
1f2cf84892 pull isapnp_machdep.h in from machine/ 1999-03-19 03:24:19 +00:00
mycroft
270a41c358 We only have one IRQ. 1999-03-19 01:21:24 +00:00
drochner
43b95688fe regen 1999-03-18 17:07:51 +00:00
drochner
f5489c46e2 aic at isapnp is reported to work with AVA-1505A boards too
(by "Elephant's Root" <root@elephant.nervana.montana.edu>,
PR kern/7179),
add the device id and the compat id used by this board
1999-03-18 17:07:09 +00:00
mycroft
4bd7ef0241 Adjust for structure name changes. 1999-03-17 22:19:35 +00:00
dean
ce18d4bd84 corrected the "generated from" lines by running make -f Makefile.isapnpdevs
AFTER committing isapnpdevs.
1999-03-17 21:11:57 +00:00
dean
16ef4e3349 Add entries for USR Sportster 14.4K and 33.6K 1999-03-16 22:58:17 +00:00
explorer
729bfc4dd7 undo commit made in error 1999-02-28 19:03:11 +00:00
explorer
c1ab1c57fb don't collect or estimate on network devices by default 1999-02-28 19:01:30 +00:00
rh
46e61f2db1 regen to correct "generated from" as pointed out by Matthias Drochner, thx! 1999-02-24 18:26:37 +00:00
rh
5ff2e5a369 Add entry for Terratec AudioSystem EWS64 CoDec. 1999-02-24 15:37:34 +00:00
nathanw
281bba9355 Update for minor changes in the ad1848 back end. 1999-02-23 21:16:27 +00:00
nathanw
fad6371a16 Update for recent changes in wssvar.h. 1999-02-23 09:14:05 +00:00
mycroft
71eb5693e6 Use DMAMODE_DEMAND. 1999-02-22 03:24:33 +00:00
mycroft
4822d3d0b0 Move IRQ setup into frontend. Need to move DRQ handling as well. 1999-02-19 16:10:44 +00:00
mycroft
74028ea9fd Regen. 1999-02-18 22:32:27 +00:00
mycroft
b71baddba7 Add ID for MagicRam SwapBox PCMCIA controller card. 1999-02-18 22:31:32 +00:00
mycroft
71105fbda7 Update comments. 1999-02-17 21:44:55 +00:00
mycroft
e5f5e628d2 Pass the direction to the allocm and round_buffersize methods.
Some drivers need this to properly allocate DMAable memory.
1999-02-17 02:37:38 +00:00
tls
e8690f9bd1 Fix ESS/SB confusion for 1868 and 1869 chips: because isapnpdevs is parsed by an awk script, you *must* comment out each line separately, which is why ess was still trying to attach chips it couldn't cope with. Note that this leaves isapnp ess with no matches -- shouldn't the 188X be in here? Also, add another isapnp PCIC. 1999-02-08 22:10:09 +00:00
augustss
eade8dcad9 Don't use ess driver for ESS186[89], it doesn't work. 1999-02-05 01:15:01 +00:00
augustss
ddb8209b40 XXX Add a disgusting hack to make the CS sound chips work in PnP mode.
XXX Read about it in isapnp.c.
1999-01-10 10:23:24 +00:00
augustss
363ea8b7ff Regen. 1999-01-04 22:41:58 +00:00
augustss
67e990eed1 Add USR 56K Faxmodem, from jbernard@ox.mines.edu in PR 6729. 1999-01-04 22:39:42 +00:00
christos
ce816d0c65 Regen 1998-12-21 07:57:17 +00:00
christos
e0bd7401e6 PR/6619: Rick Byers: Add Motorola ModemSurfr 1998-12-21 07:57:00 +00:00
christos
981a2987e6 Regen 1998-12-20 18:54:52 +00:00
christos
b8041892e9 Add another modem. 1998-12-20 18:54:37 +00:00
bouyer
47ab212504 Rename pio_mode, etc ... to PIO_cap, etc ... for consistency with the
ata_drive_datas struct. Suggested by Soren S. Jorvan.
1998-12-03 18:24:30 +00:00
christos
a5d7ea15aa Regen. 1998-12-02 09:43:15 +00:00
christos
8692433023 add the compat id for the aha-1542cp 1998-12-02 09:42:57 +00:00
hannken
246a68a003 Add support for `AdLib NSC 16 PNP' as wss, joy.
Record source selection needs work.
1998-11-26 21:45:13 +00:00
augustss
9726cfd1fb Make the copyright header conform to the NetBSD template. 1998-11-25 22:17:06 +00:00
christos
3ebca7fd4e regen 1998-11-23 20:49:20 +00:00
christos
bb7d20f01a add adaptec aha attachment 1998-11-23 20:48:34 +00:00
christos
f2bd402051 add adaptec aha attachment. 1998-11-23 20:47:51 +00:00
fvdl
c312dc3f08 Avoid looping forever with cards that can only use one I/O address,
and specify a 0 alignment.
1998-11-21 23:38:11 +00:00
drochner
3e38051bc5 in wdc_softc: access the per-channel data via a pointer array instead of
an array of fixed-sized channel_softc elements. This way IDE controllers
which more than 1 channel (pciide) can extend the channel data easily
for private needs.
To avoid the double dereference at runtime, change the argument of
wdcstart() to the channel data pointer instead of the array index.
1998-11-21 15:41:41 +00:00
drochner
a16b0cc7db regen 1998-11-12 14:09:20 +00:00
drochner
0c0b302fba -add an NE2000 clone, info from PR kern/6430
-add comment for PCNET/isapnp (ID is vendor specific)
1998-11-12 14:06:34 +00:00
fvdl
7b10c3e7e4 Add the 'ex' driver, a DMA driver for 3Com 90x and 90xB cards. Rename
constants from EP_ to ELINK_ since they're now used in the ex driver as well.
1998-11-04 00:29:28 +00:00
thorpej
d08eb2a32b Add code to detect a RealTek 8019 chip, and use the media selection
support if present.
1998-10-31 01:44:16 +00:00
thorpej
56066ad5fb Add media list, media list count, and default media arguments to
ne2000_attach().
1998-10-28 00:13:47 +00:00
bouyer
19fddaeeb5 Merge bouyer-ide 1998-10-12 16:09:10 +00:00
hannken
f568c6347c Fix last commit -- NISADMA is either 0 or 1. 1998-10-10 13:43:10 +00:00
thorpej
5599443810 If ISA DMA is not present in the kernel (i.e. no ISA DMA-using devices
configured in), don't call ISA DMA functions to check for DRQs being
free.  Just return EINVAL in this case.  Fixes PR #6187, from Herb Peyerl.
1998-10-08 19:59:20 +00:00
christos
b2b0497860 Regen 1998-10-04 18:31:14 +00:00
christos
ea1107f4c7 Add another soundblaster compatible card (Steve Allen) 1998-10-04 18:30:50 +00:00
jonathan
379c9be4a8 More patches for ARC from Noriyuki Soda:
* commit isapnpvar.h changes required for ARC to support plain isa.
  * fixup mistake over mips/include/cpuregs.h.
  * mips/mips_machdep.c:
     set L2 cache-size for arc, cleanup use of L2cache present
     vs L2 cache-size variables. check for no L2 cache on kernels
     configured to require one. misc cleanups.
  * mips/mpis/trap.c: more locore stack-traceback  label cleanup.
XXX  Locore callbacks for mips3, mips4, r4600 cacheflush need more work.
1998-10-01 00:42:37 +00:00
mark
3ad5f134c3 Regen. 1998-09-21 20:28:48 +00:00
mark
e017934564 Add CS4235 joystick. 1998-09-21 20:25:52 +00:00
enami
b03b63aef4 Make these files compile again; no longer necessary to pass
iobase to comprobe1.
1998-09-18 14:38:48 +00:00
wrstuden
cd65bcf1db Regen. 1998-09-12 21:49:51 +00:00
wrstuden
0b009ef925 Add support for the OPTi Audio 16 IDE controller. 1998-09-12 21:48:57 +00:00
wrstuden
3e6930640f PnP IDE controllers can pass us the regions in any order, so make sure
that sc_ad.ioh is the 8-byte region as opposed to blindly passing it
the first region.

With this change, and a device def which will follow, the IDE controller
on my OPTi Audio 16 card works!
1998-09-12 21:40:22 +00:00
christos
bd52ba3c5a Assign copyright to TNF. 1998-09-05 14:42:05 +00:00
christos
236611ac0b Regen. 1998-09-05 14:18:04 +00:00
christos
c7a4282124 Assign copyright to TNF. 1998-09-05 14:12:36 +00:00
pk
f7151935ef Adjust for ad1848.c split. 1998-08-25 22:35:25 +00:00
augustss
cd09067eb4 * Redo the way the way the MIDI driver attaches to audio devices.
* Improve the midisyn layer a little.
* Add a driver for the Yamaha OPL[23] FM synths.
  The opl driver is not finished yet; it sounds pretty awful.

For some strange reason I cannot get any FM sound from my SB64 cards,
but a regular SB16 works fine.
1998-08-17 21:16:09 +00:00
thorpej
ef4e6a52aa Regen. 1998-08-15 19:27:16 +00:00
thorpej
20e821491f Add the Zoom ComStar 33.6 modem, from Dave Huang <khym@bga.com>, PR #5976. 1998-08-15 19:26:18 +00:00
mycroft
62b1bf3e2e Assign my copyrights to TNF. 1998-08-15 10:51:16 +00:00
mycroft
6dc903202f Assign my copyrights to TNF. 1998-08-15 10:10:47 +00:00
scottr
c587bae132 Nit: space -> tab conversion. No functional change. 1998-08-12 19:16:24 +00:00
thorpej
b170caf730 Completely rewrite media selection. Add support for the MII/PHY on
the 3Com 3c905-TX and 3c905-T4.  Fix handling of the MII on the
3c595-MII and 3c597-MII (can't talk to the PHYs on these cards; just
use "manual" for the external MII port).

Fixes kern/4782 (Chris Demetriou).
1998-08-12 18:51:52 +00:00
matt
202c97c54d Add an isapnp frontend for the ess driver. It somewhat works
(sounds is made but one buffer is played continuously).
1998-08-07 00:53:23 +00:00
augustss
48bae9ee88 Add MIDI support. The MIDI devices can be accessed as ``raw'' through
the /dev/rmidiN devices, or with a sequencer interface via /dev/music.
So far the only supported MIDI device is the MPU401 port on SoundBlaster
(and only on SB on isapnp, since we do not have locators with multiple
values yet).
1998-08-07 00:00:55 +00:00
thorpej
53878c1925 Change one word to be consistent w/ a previous message. 1998-07-31 05:37:02 +00:00
thorpej
99d64ae1ca Oops, unused variable. 1998-07-31 05:29:48 +00:00
thorpej
4ea9132164 Rearrange isapnp_callback() slightly. 1998-07-31 05:28:24 +00:00
thorpej
c489673819 Ensure we're probed only once per ISA bus. 1998-07-31 05:26:15 +00:00
thorpej
6ec566abd2 Add BeBox support. 1998-07-31 04:56:55 +00:00
thorpej
c46ad7a0cc Add NetBSD/arm32 support. 1998-07-31 04:50:54 +00:00