156 Commits

Author SHA1 Message Date
n_hibma
da12839ce8 Spelling mistake 2000-03-15 22:11:00 +00:00
phk
8e89e2d03f Stop isadma from abusing the B_READ, B_RAW and B_WRITE flags.
Define ISADMA_{READ,WRITE,RAW} macros with the same numeric
values as the B_{READ,WRITE,RAW} and use them instead throughout.
2000-03-13 10:19:32 +00:00
tanimura
27e4b96f78 Add the logical ID of Avance Logic ALS100. The vendor ID is also
checked, which was introduced in 1.18.

PR:		kern/16487
Submitted by:	Oliver Fromme <oliver.fromme@heim3.tu-clausthal.de>
Approved by:	jkh
2000-03-09 02:13:21 +00:00
cg
3e2fdbb2dd Partial fix: the following patch correctly configures the card for dual
channel DMA. The problem was that the SDC bit (0x04) can only be set in
the MCE state.

PR:		kern/16587
Submitted by:	Matthew Reimer <mreimer@vpop.net>
Approved by:	jkh (in person)
2000-03-05 15:51:09 +00:00
cg
a69329aaa1 fix ess end-of-buffer repeating
Submitted by:	nhibma
Approved by:	jkh
2000-02-14 23:37:02 +00:00
peter
7760fba064 Tidy up stray or bogus #if NFOO > 0 and #include "foo.h". 2000-01-29 18:48:30 +00:00
peter
1129f8f225 Remove a rather bizzare set of #ifdefs and #defines that all worked out
to be a NO-OP.
2000-01-29 18:44:01 +00:00
cg
c7803fdb7d differentiate cmi8330 and als100 pnp cards based on their vendor id. this
is a kludge for 4.0
2000-01-29 00:18:29 +00:00
gallatin
b223e32eee Add support for detection of the ESS 1688 found on my Dell Latitude LM 2000-01-28 04:28:11 +00:00
cg
c54637f284 handle simplex devices right 2000-01-26 20:27:45 +00:00
peter
bd4781a52d Note the PnP id's for the NMX2210 next to the id's where they are used.
The pnpbios doesn't supply a description in the case we've seen so
supply one.
2000-01-23 13:17:03 +00:00
tanimura
5ecc620e52 The pointer of the serial FIFO in the DSP seems to make an error
upon starting/stopping the DSP. Correct the pointer in addition
to clearing the FIFO.
2000-01-23 07:04:02 +00:00
cg
0a67c016a3 kludge to fix the end-of-sample repeating bug. i don't know why it happens;
none of my hw does it, but this should fix it for now.

Tested by:	wpaul
2000-01-18 18:59:03 +00:00
cg
fc15400060 update ac97 layer to use device_printf when printing messages 2000-01-18 17:13:43 +00:00
peter
780b88254a Some SB128's (ES1371) have a different PCI vendor id. Vendor == 0x3274
instead of the normal 0x1274.

Tested by:	des
2000-01-17 07:54:00 +00:00
cg
fcb01752cf fix missing \n in sndstat output 2000-01-16 12:52:22 +00:00
cg
e6906410a6 oops, best play format was set to unsigned 16 bit instead of signed 16 bit
stereo.  remenant from testing.
2000-01-16 12:05:07 +00:00
cg
4d257ee74f attach to non-ac97 neomagic chips and hope that ac97 ones do not have the
same pnpbios id
2000-01-13 06:11:32 +00:00
cg
6ccc3d677e be less verbose 2000-01-13 06:00:57 +00:00
deischen
639e3cda8a Add support for detection of the ESS 1878 chip. 2000-01-12 11:16:23 +00:00
cg
dfec3bcff1 exclude chips with subdevices specified on a list of non-ac97 chips 2000-01-11 10:37:16 +00:00
cg
719aa81c83 make dsp_read() assert that it has a read channel, not a write channel
Submitted by:	green
2000-01-10 07:05:15 +00:00
cg
5f4f7388c4 don't complain about bad intrs unless we get 1000 of them consecutively
whilst we are playing or recording.  since we should irq ~20 times/sec when
active, this should never trigger.  in theory.  if it never does trigger,
the check will be removed.
2000-01-10 06:19:20 +00:00
cg
3452c8e1b7 general tidyup 2000-01-10 03:22:28 +00:00
cg
bbb4b43d9a return the sample rate set instead of 0. oops. mpg123 should now work. 2000-01-10 01:59:12 +00:00
cg
3fa29d03b7 fix the premature termination of playback 2000-01-09 08:32:49 +00:00
cg
a77c3e5d41 driver for neomagic 256av and 256zx
Obtained from:	anonymous author, heavily derived
2000-01-09 08:14:11 +00:00
cg
874d48434c modify sndstat output 2000-01-09 08:07:46 +00:00
cg
2da2a05a1b allow mixer-only devices - ie, devices with no play/rec channels 2000-01-06 04:11:36 +00:00
cg
9a79ef7dd3 don't panic if channel init fails, report and fail gracefully 2000-01-05 20:44:41 +00:00
cg
5cf59636dd argh, forgot the bus_dma_tag_creates.
also, panic if channel init fails instead of derefing null.
2000-01-05 04:01:34 +00:00
cg
3df7871bf8 set up the pci regs properly for busmastering. this makes the card work on
my smp box.
2000-01-05 02:03:55 +00:00
cg
33c444231e allocate isa bounce buffers of the right size for ess/mss cards, fixes
panics reported
2000-01-05 00:39:20 +00:00
tanimura
eef91385fe Do not start/stop DMA transfer if it is already started/stopped. 2000-01-03 05:26:12 +00:00
tanimura
745351b771 - Handle an interrupt for csa primarily in the bridge driver,
then invoke the children. As the value of HISR can be read
  only once, pass the HISR to the children via struct
  csa_bridgeinfo, stored in the ivars of them.
- Clear the contents of serial FIFO upon stopping the DMA for
  playing. This may eliminate buzz on playing. Experimental.
2000-01-03 02:51:16 +00:00
cg
4c3a41624f revert buffer size to 64k 2000-01-01 21:50:20 +00:00
tanimura
41a606e473 Correct the delay durations as in the sample sources provided by Crystal Semiconductor. 2000-01-01 09:07:03 +00:00
peter
5f4940ee69 Attach the CS4610 PCI / CS4239 setup in isa compatability mode as CSC0100.
The PCI component is non-AC97 apparently.

PR:		15632
Submitted by:	gibbs
1999-12-30 20:04:11 +00:00
cg
eeb98c1804 make ess cards use a 64k buffer again, by implementing esschan_init() 1999-12-30 04:04:43 +00:00
cg
35328c713c make es1373 chips with ac97 2.1 work on troublesome motherboards
Submitted by:	Russell Cattelan <cattelan@thebarn.com>
1999-12-29 05:44:17 +00:00
peter
15b9bcb121 Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL"
is an application space macro and the applications are supposed to be free
to use it as they please (but cannot).  This is consistant with the other
BSD's who made this change quite some time ago.  More commits to come.
1999-12-29 04:46:21 +00:00
cg
9ed7cb48bf - latest 2ndbuffer patch
- make chn_setdir work for rec on isa cards
- note: es1371 does not irq in smp

Submitted by:	tanimura
1999-12-29 03:46:54 +00:00
peter
259b04149b Fix a mistake in the PNP EISA-encoding of the Avance ALS120 id.
Submitted by:	Bryan Liesner <bleez@netaxs.com>
1999-12-26 10:51:47 +00:00
dfr
af317b8045 Don't pass u_int32_t pointers to BUS_READ_IVAR since it tends to make
alphas panic.
1999-12-24 16:22:45 +00:00
peter
153d1cc7d1 Collapse a bunch of unused MD_CS42nn tags into a single one. This saves
going to a lot of trouble to identify it and set the tag and then not use
it.  Convert the pnp id matching to the preferred table based system.
@@@0001 (CMI8330 ldn 0) is a mss, not a SB.
1999-12-21 14:09:19 +00:00
peter
a1587ef715 Tidy up a few loose ends, including adding the pnp tags in comments.
Remove @@@0001 - it's an MSS, not a SB, at least according to the
original pre-sbc code and according to a pnpinfo report that Cameron has.
1999-12-21 14:04:14 +00:00
peter
818416f100 Remove #if NISA > 0 - this is best done by the configuration process.
It had a heap of unreferenced stuff if there was no isa configured in the
system.
1999-12-21 13:55:46 +00:00
cg
d213246f9d minor cleanup
Parts Submitted by:	Ville-Pertti Keinonen <will@ztango.com>
1999-12-21 08:43:28 +00:00
cg
8c2d08d7dc don't use the sbpro mic vol register during init on ess cards; it causes
feedback and we use the native one elsewhere.
1999-12-21 06:18:03 +00:00
cg
8f45fa6446 minor cosmetics 1999-12-20 14:57:46 +00:00