summaryrefslogtreecommitdiff
path: root/sys/dev/ic/ac97.c
AgeCommit message (Collapse)Author
2003-11-24An ICH board needs reading AC97_REG_RESET before reading AC97_VENDOR_ID.kent
(why?) http://mail-index.netbsd.org/current-users/2003/11/22/0007.html
2003-11-22AD1985 codec needs the same quirk as AD1980.kent
The patch was provided by Lars Heidieker.
2003-11-22Cosmetic changeskent
- ANSIfy - no argument names in prototypes - variable declaration with initialization
2003-09-28Change the way of setting a port value so that a change too small tocube
fit in the number of bits used for the port still does something. This fixes PR pkg/18741 for ac97-based hardware. Other audio drivers might need a similar fix.
2003-09-28codec id for AD1985kent
2003-09-11After initialization of the AD1980 codec, swap master and surround volumejmmv
controls. As it was before, the master volume control in all mixer programs did nothing. It seems that this codec is not correctly wired in (almost?) all motherboards. Patch by Quentin Garnier. Fixes first part of PR kern/22548.
2003-09-08Correct flag names of AD1980kent
2003-09-07Codec id ADS 0x70 is AD1980, not AD1981.kent
http://mail-index.netbsd.org/tech-kern/2003/09/03/0005.html
2003-09-07Use bitmask_snprintf() for printing ext id features.kent
2003-06-13Add AD1981-specific initialization.kent
The patch provided by Lars Heideker. PR: kern/20368
2003-06-11In ac97_restore_shadow(), make sure to restore the codec's extendedscw
control register if we configured it during ac97_attach().
2003-03-03add Philips UCB1400bsh
2003-01-31Use aprint_*().thorpej
2003-01-20Remove variable that is only assigned too but not referenced.simonb
2002-12-26Recognize AD1981 codec (0x41445370). XXX name is a guess but it followsmatt
the existing pattern.
2002-11-06Fix LR contrary problem of mixer and record gain polaritykent
problem. The change is based on the patches in PR kern/12878 by Zdenek Salvet and PR kern/18901 by SUNAKAWA Hirokatsu.
2002-11-06Add codec IDs for AD1981B, STAC9750/51, and STAC9766/67.kent
Whitespace.
2002-10-22Correct codec id of VT1611A.kent
Add codec id of VT1616. ALC650 codec specific chagne: Add outputs.surround.mixtofront, outputs.center.mixtofront, and outputs.lfe.mixtofront. VT1616 codec specific change: Add outputs.surround.mixtofront, outputs.center.mixtofront, and outputs.lfe.mixtofront. (Not tested) XXX: We should provide ac97(4) manual page and describe codec-specific features.
2002-10-16Add all vendor/codec IDs which OpenBSD has and NetBSD doesn't have.kent
2002-10-14Mixer changes:kent
- Add "outputs.surround", "outputs.center", and "outputs.lfe" - If the codec is not capable of a feature, mixer variables about the feature is not created. For example, no "outputs.tone" for a codec without tone control. - Set the following mixer values in ac97_attach(): outputs.master=127,127 outputs.master.mute=off outputs.headphones.mute=off outputs.surround=127,127 outputs.surround.mute=off outputs.center=127 outputs.center.mute=off outputs.lfe=127 outputs.lfe.mute=off inputs.dac.mute=off inputs.cd.mute=off inputs.line.mute=off inputs.aux.mute=off inputs.video.mute=off record.volume.mute=off because the default setting of AC'97 codec (all mutes are on, and maximum volume) is troublesome. - Make "char*" parameters of ac97_get_portnum_by_name() "const char*" Codec ID changes: - If a codec ID is unknown but its vendor ID is known, ac97_attach() prints the vendor name like "dev0: <vendor name> unknown (0xXXXXXXXX) codec;" - Add IDs of Asahi Kasei AK4542, AK4544, AK4544A, AK4545, Realtek ALC100 - Correct a vendor name: "Advance Logic" -> "Avance Logic" - Add capability of codec-specific initialization ac97_attach(): - CDAC, SDAC, and LDAC are eanabled. - DELAY() before mixer settings. ThinkPad X24 needs it. ALC650 codec specific change: - Add "outputs.surround.lineinjack" to switch the line-in jack to the surround output - Add "outputs.center.micjack" and "outputs.lfe.micjack" (alias of "outputs.center.micjack") to switch the mic jack to the center/lfe output.
2002-10-11ac97_attach(): Restore the default rate value after VRA checking.kent
This change might solve PR kern/18613.
2002-10-09Add 'mask' member to the struct ac97_codecid.kent
Cirrus Logic Crystal codec uses lower three bits in ID for a revision number. We should mask an actual ID value before matching to this table.
2002-10-08fill in name for TriTech unknown: TR28602pooka
2002-10-08If the codec is fixed-rate, ac97_set_rate() returns 48kHz.kent
2002-10-08Add IDs for YMF743-S and YMF753-S.kent
ac97_attach(): Enable VRA/VRM if the codec is capable of them. The struct ac97_softc keeps the clock of the codec, the basic features flag (the value of AC97_REG_RESET), and the extended features flag (the value of AC97_REG_EXT_AUDIO_ID). ac97_codec_if: Add get_extcaps(), set_rate(), and set_clock() methods.
2002-10-06Add some constant symbols for AC97 registers and values based on OpenBSD.kent
Rename some symbols to sync with OpenBSD: AC97_REG_EXTENDED_ID -> AC97_REG_EXT_AUDIO_ID AC97_REG_EXTENDED_STATUS -> AC97_REG_EXT_AUDIO_CTRL AC97_CODEC_DOES_VRA/AC97_ENAB_VRA -> AC97_EXT_AUDIO_VRA AC97_CODEC_DOES_MICVRA/AC97_ENAB_MICVRA -> AC97_EXT_AUDIO_VRM ac97feature: "mic channel" -> "dedicated mic channel" ac97_attach(): print extended capabilities; VRA, DRA, SPDIF, VRM, CDAC, SDAC, LDAC.
2002-10-04more device namesjoda
2002-07-05add a couple of Analog device namesjoda
2002-01-23It corrected forgetting to attach ","ichiro
2002-01-12Call malloc(9) with M_ZERO flag instead of memset() after malloc().tsutsui
2002-01-06For cosmetic reasons, add 'ESS Technology ES1921' to the table of codec Ids.jmcneill
2001-11-13add/cleanup RCSIDlukem
2001-07-07bcopy -> memcpythorpej
2001-04-29Set the delta for the particular source so telling mixerctl to decrease theerh
volume (using --) adjusts it far enough to stick.
2001-01-18constifyjdolecek
2001-01-09Add new AC97_HOST_SWAPPED_CHANNELS host flag that causes left and rightrh
mixer channels to be swapped (required for hardware that has wiring reversed).
2001-01-05Add some codecs.augustss
2000-11-05Feh, fix st00p1d braino in last.thorpej
2000-11-04Shadow the AC'97 codec registers. This adds two capabilities:thorpej
* support devices that crash when reading the codec registers; a flags interface is added to the host interface and one flag is defined (AC97_HOST_DONT_READ). * new API (restore_ports) for restoring the user's settings. This can be useful after an APM resume after a suspend to disk. From OpenBSD.
2000-11-04Add some more codec IDs. From OpenBSD.thorpej
2000-07-14Merge-o.soren
2000-06-06Make ID printing a little more robust in case of problems readingsoren
AC97 registers.
2000-05-15Move register definitions into ac97reg.hthorpej
2000-05-15ac97.h -> ac97var.hthorpej
2000-04-28Unmute some mixer controls by default. From OpenBSD.augustss
2000-04-26Recognize the Crystal CS4297A codec, and add a couple of macrosthorpej
to manipulate AC97 codec IDs.
2000-03-15Fix an uninitialized variable. From Krister Walfridsson <cato@df.lth.se>augustss
1999-11-24Change CS4297 id entry.augustss
1999-11-20Print the PnP id of unknown codecs.augustss
1999-11-02Shorten some delay()s. From WITEK Wnuk <witek@atari.org>augustss