summaryrefslogtreecommitdiff
path: root/sys
AgeCommit message (Collapse)Author
2008-10-25Start updating isp. Just new defines, comments, whitespace, anything thatKenneth R Westerback
doesn't change the .o.
2008-10-25audio(9) says low level drivers are allowed to change the requestedJacob Meuser
values of the audio_params structure during AUDIO_SETINFO if the hardware cannot be set to exactly the requested mode. some drivers do this sometimes. others always return EINVAL if there isn't an exact match. be more consistent. only return EINVAL if an absurd parameter was requested, otherwise return a supported set of parameters, as close as possible to what was requested. with/ok ratchov@
2008-10-25Start updating isp. Just new defines, comments, whitespace, anything thatKenneth R Westerback
doesn't change the .o.
2008-10-25Add proper DAC/ADC grouping for AD1984 (from NetBSD).Jacob Meuser
This fixes fallout for AD1984 revealed by recent azalia.c changes and reported on misc@. While here: * move gpio_unmute to more logical place, * remove code ifdef'ed and unused for ages. from Alexey Suslikov, thanks Index: sys/dev/pci/azalia_codec.c =================================================================== RCS file: /cvs/src/sys/dev/pci/azalia_codec.c,v retrieving revision 1.52 diff -u -r1.52 azalia_codec.c --- sys/dev/pci/azalia_codec.c 23 Oct 2008 02:23:04 -0000 1.52 +++ sys/dev/pci/azalia_codec.c 24 Oct 2008 17:29:36 -0000 @@ -98,6 +98,7 @@ (const codec_t *, nid_t, int, u_char); int azalia_generic_set_port(codec_t *, mixer_ctrl_t *); int azalia_generic_get_port(codec_t *, mixer_ctrl_t *); +int azalia_gpio_unmute(codec_t *, int); int azalia_alc260_init_dacgroup(codec_t *); int azalia_alc260_mixer_init(codec_t *); @@ -127,7 +128,6 @@ int azalia_stac9221_set_port(codec_t *, mixer_ctrl_t *); int azalia_stac9221_get_port(codec_t *, mixer_ctrl_t *); int azalia_stac9221_apple_unsol_event(codec_t *, int); -int azalia_gpio_unmute(codec_t *, int); int azalia_stac7661_init_dacgroup(codec_t *); int azalia_stac7661_mixer_init(codec_t *); int azalia_stac7661_set_port(codec_t *, mixer_ctrl_t *); @@ -1708,6 +1708,26 @@ return azalia_generic_mixer_get(this, m->nid, m->target, mc); } +int +azalia_gpio_unmute(codec_t *this, int pin) +{ + uint32_t data, mask, dir; + + this->comresp(this, this->audiofunc, CORB_GET_GPIO_DATA, 0, &data); + this->comresp(this, this->audiofunc, CORB_GET_GPIO_ENABLE_MASK, 0, &mask); + this->comresp(this, this->audiofunc, CORB_GET_GPIO_DIRECTION, 0, &dir); + + data |= 1 << pin; + mask |= 1 << pin; + dir |= 1 << pin; + + this->comresp(this, this->audiofunc, CORB_SET_GPIO_ENABLE_MASK, mask, NULL); + this->comresp(this, this->audiofunc, CORB_SET_GPIO_DIRECTION, dir, NULL); + DELAY(1000); + this->comresp(this, this->audiofunc, CORB_SET_GPIO_DATA, data, NULL); + + return 0; +} /* ---------------------------------------------------------------- * Realtek ALC260 @@ -2181,18 +2201,11 @@ int azalia_alc882_init_dacgroup(codec_t *this) { -#if 0 - static const convgroupset_t dacs = { - -1, 3, - {{4, {0x02, 0x03, 0x04, 0x05}}, /* analog 8ch */ - {1, {0x06}}, /* digital */ - {1, {0x25}}}}; /* another analog */ -#else static const convgroupset_t dacs = { -1, 2, {{4, {0x02, 0x03, 0x04, 0x05}}, /* analog 8ch */ {1, {0x06}}}}; /* digital */ -#endif + /* don't support for 0x25 dac */ static const convgroupset_t adcs = { -1, 2, {{3, {0x07, 0x08, 0x09}}, /* analog 6ch */ @@ -2484,13 +2497,14 @@ azalia_ad1984_init_dacgroup(codec_t *this) { static const convgroupset_t dacs = { - -1, 1, - {{2, {0x03, 0x04}}}}; - + -1, 2, + {{2, {0x04, 0x03}}, /* analog 4ch */ + {1, {0x02}}}}; /* digital */ static const convgroupset_t adcs = { - -1, 1, - {{1, {0x08}}}}; - + -1, 3, + {{2, {0x08, 0x09}}, /* analog 4ch */ + {1, {0x06}}, /* digital */ + {1, {0x05}}}}; /* digital */ this->dacs = dacs; this->adcs = adcs; return 0; @@ -3006,27 +3020,6 @@ DPRINTF(("%s: unknown tag: %d\n", __func__, tag)); } return 0; -} - -int -azalia_gpio_unmute(codec_t *this, int pin) -{ - uint32_t data, mask, dir; - - this->comresp(this, this->audiofunc, CORB_GET_GPIO_DATA, 0, &data); - this->comresp(this, this->audiofunc, CORB_GET_GPIO_ENABLE_MASK, 0, &mask); - this->comresp(this, this->audiofunc, CORB_GET_GPIO_DIRECTION, 0, &dir); - - data |= 1 << pin; - mask |= 1 << pin; - dir |= 1 << pin; - - this->comresp(this, this->audiofunc, CORB_SET_GPIO_ENABLE_MASK, mask, NULL); - this->comresp(this, this->audiofunc, CORB_SET_GPIO_DIRECTION, dir, NULL); - DELAY(1000); - this->comresp(this, this->audiofunc, CORB_SET_GPIO_DATA, data, NULL); - - return 0; } /* ----------------------------------------------------------------
2008-10-25put the serial number into the name of the devices (for sysctl), becauseTheo de Raadt
Joerg Goltermann has so many of them and has convinced me that he cannot tell them apart. ok grange cnst henning
2008-10-25regenBrad Smith
2008-10-25Use tabs between the product id and the product string.Brad Smith
2008-10-25regenBrad Smith
2008-10-25Remove vendor names from the product strings.Brad Smith
2008-10-25Update for name changes.Brad Smith
2008-10-24regenBrad Smith
2008-10-24Shorten the vendor names and fix up the names of some of theBrad Smith
existing entries.
2008-10-24regenBrad Smith
2008-10-24Sort the vendors and PHY id's.Brad Smith
2008-10-24Get flow control negotiation status.Brad Smith
2008-10-24Get flow control negotiation status.Brad Smith
2008-10-24clear pointer after freeing itTheo de Raadt
2008-10-24it is a good policy to clear the pointer after we free somethingTheo de Raadt
2008-10-24remove unused labelTheo de Raadt
2008-10-24Add auacer(4) to handle the audio controller found in some ALi/ULiBrad Smith
southbridge chipsets. ok ratchov@
2008-10-24Allow the debug printf code which is trying to retreive the interfaceBrad Smith
pointer to get at the interface name by pointing to the correct struct.
2008-10-24another oops.Ted Unangst
2008-10-24yet again i prove unable to commit what i really wanted. spotted by deraadtTed Unangst
2008-10-23a better fix for the "uvm_km thread runs out of memory" problem.Ted Unangst
add a new arg to the backend so it can tell pool to slow down. when we get this flag, yield *after* putting the page in the pool's free list. whatever we do, don't let the thread sleep. this makes things better by still letting the thread run when a huge pf request comes in, but without artificially increasing pressure on the backend by eating pages without feeding them forward. ok deraadt
2008-10-23use the correct idiom for NFOO things which come from "foo.h" filesTheo de Raadt
ok dlg
2008-10-23S/PDIF output support in ac97(4), auich(4) and auvia(4)Jacob Meuser
from NetBSD tested by a few with no regressions. optical works for jsg@. ok ratchov@
2008-10-23enable 4 and 6 channel support.Jacob Meuser
tested by a few. no regressions, but 4 and 6 channel playback is not working with all codecs yet. ok ratchov@
2008-10-23Move the va_copy define to <sys/stdrag.h> making sure it is uniformalyMark Kettenis
protected by __ISO_C_VISIBLE > 1999. With a little help from miod@. ok miod@
2008-10-23reove redundant variable sample rate checks.Jacob Meuser
ok ratchov (a while ago)
2008-10-23add mos(4) to the most relevant config filesTheo de Raadt
2008-10-23Driver for MOSCHIP MCS7x30 usb ethernet chips by Johann Christian RodeTheo de Raadt
2008-10-23syncTheo de Raadt
2008-10-23moschip ethernet devicesTheo de Raadt
2008-10-23Prevent a crash in ieee80211_setkeys() when unplugging an interface inMichael Knudsen
hostap mode by canceling the group rekey timeout in ieee80211_node_detach(). ok damien
2008-10-23Round up to the nearest minute 16-bit timeout values for older IT8712 chips.Oleg Safiullin
2008-10-23Don't print redundant information in dmesg.Owain Ainsworth
Prompted by deraadt, kettenis@.
2008-10-23remove some funky charactersjoshua stein
ok oga@
2008-10-23- new function azalia_generic_mixer_pin_sense - configures pin direction,Jacob Meuser
enables EAPD when needed - new function azalia_generic_mixer_create_virtual - creates some well known mixer controls, such as outputs.master - use the two new functions when setting up a codec with the generic codec support - remove explicit pindir manipulations (azalia_generic_mixer_pin_sense does this automatically now) - add some GPIO quirks (from FreeBSD's snd_hda) - move all GPIO quirks into one place - add DAC/ADC groupings and support for several more codecs using the generic codec support - correct Sigmatel STAC9872AK name - initialize unsol_event to NULL by default DAC/ADC grouping and create_virtual/pin_sense code from NetBSD. GPIO quirks from FreeBSD. from Alexey Suslikov, thanks
2008-10-23Sve power. Power down codec if it has no audio function groups.Jacob Meuser
from Alexey Suslikov, thanks
2008-10-23Fix PR5645Marco Peereboom
ok dlg tested beck and others
2008-10-22#if INET => #ifdef INETMarco Pfatschbacher
#if INET6 => #ifdef INET6
2008-10-22Fix a typo with the VLAN code.Brad Smith
2008-10-22Only call pic->pic_delroute() when disestablishing the last interrupt handlerMark Kettenis
for a pin. Resolves issues with azalia(4) devices that have no usable codecs when they share an interrupt pin with other devices. ok weingart@, krw@
2008-10-22This isn't a real structure the firmware understands.Marco Peereboom
2008-10-22filter ipv6 ipsec packets on enc0 (in and out), similar to ipv4;Markus Friedl
ok bluhm, fries, mpf; fixes pr 4188
2008-10-22Add timeout_add_msec(), for timeouts in milliseconds.Bret Lambert
Idea and original patch mk@ ok mk@, krw@
2008-10-22lot of cleanup, small fixes.Damien Bergamini
prepare for future enhancements.
2008-10-22o add FAN4 and FAN5 sensors for IT8716/8718/8726Oleg Safiullin
o always use 16-bit FAN counters for IT8716/8718/8726 o do not try to poll sensors disabled by BIOS o sync VIN5 & VIN6 sensors description w/ ITE docs tested by naddy@ weerd@
2008-10-22Re-add support TX VLAN tag insertion and RX VLAN tag stripping.Brad Smith
Tested by Dawe <dawedawe at gmx dot de>
2008-10-22Add support TX VLAN tag insertion and RX VLAN tag stripping.Brad Smith