As per Takashi's feedback, this is a cleanup to make cs5535audio be
single device per system. The diff is against 2.6.17-rc4 with
Takashi's patch adding the module_params for index, id and enable.
Signed-off-by: Jaya Kumar <jayakumar.alsa@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Remove an unnecessary ENTER_UART instruction during au88x0 init as it makes
the first/subsequent midi open to fail.
Signed-off-by: Alan Horstmann <gineera@aspect135.co.uk>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Use the basic init verbs for ALC260 instead of hp init verbs
since hp init verbs seem incomplete and not working on some machines.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Add support for the ATI RS600 HDMI audio device. It has a one-stream
pure digital stereo codec that isn't handled by the generic codec
support.
Signed-off-by: Felix Kuehling <fkuehlin@ati.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- add 3D sound pre-3D/post-3D switch, as seen in standard AC-97
- rename controls to shorter and more accurate strings
Signed-off-by: Andreas Mohr <andi@lisas.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- add suspend/resume handlers
- fix problem (private_data members not set)
Playing a file while suspending will resume correctly with this patch,
so I assume the hardware to get fully correctly reinitialized with
this patch.
Signed-off-by: Andreas Mohr <andi@lisas.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Fixed the handling of capture controls on ALC882 3/6-stack models.
Now the driver checks the availability of NID 07h.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Fixed a bug in rme96 driver that the full-duplex on OSS emulation
doesn't work due to the invalid period size parameter.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Add support for some audio quirks of the Apple Mac Mini (early 2006)
Signed-off-by: Sam Revitch <samr7@cs.washington.edu>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Enable the support of mpu401 PCI port only when mpu_port=1 module
option is given, i.e. disabled as default.
It turned out that the check of integrated midi port isn't perfect
and caused hang-ups on some boards.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Change the order in vortex_probe to set the card details before creating the
components, meaning for example that card->shortname is available when
registering the midi port.
I have also added extra to card->shortname, and a line to overwrite the midi
name following snd_mpu401_uart_new.
Signed-off-by: Alan Horstmann <gineera@aspect135.co.uk>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Adds support for the 9227/9228/9229 sigmatel hda codecs.
Signed-off-by: Matt Porter <mporter@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Add four new information flags SNDRV_SEQ_PORT_TYPE_HARDWARE, _SOFTWARE,
_SYNTHESIZER, _PORT for sequencer ports. This makes it easier for apps
like Rosegarden to make policy decisions based on the port type.
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
Appended is my patch adding PM support to the cs5535audio driver.
I also added the ac97 quirk but it's not yet confirmed which
boards need to be in the quirk list. The patch also includes some
Kconfig and misc cleanup.
Signed-off-by: Jaya Kumar <jayakumar.alsa@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Added the model entry for Sony Vaio VGN-A790 laptop with ALC260 codec.
From: Kenneth Crudup <kenny@panix.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Patch provides for the ice1712 card driver to overwrite the midi port name
string given by default in mpu401_uart, with one specified in
snd_ice1712_card_info.
Signed-off-by: Alan Horstmann <gineera@aspect135.co.uk>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Use DXS_SRC as the default value for dxs_support option for
VIA8235/8237/8251 chips. These new chips should work well with SRC.
For VIA8233/A/C, the old default DXS_48K is still used to be sure.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
The patch fixes a conpile warning on 64bit architectures, caused by
different sizes of size_t . Since size_t is unsigned I permited
myself to cange the format, too.
Signed-off-by: Henrik Kretzschmar <henne@nachtwindheim.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Move the workaround for the VT8251 up a bit, and check for STAT_EOL
rather than STAT_ACTIVE. This resolves issues some people were having
with certain ALSA clients (and allows the STAT_ACTIVE check to do what
it was intended to do).
This change was suggested by Andrew Daviel.
Signed-off-by: Bastiaan Jacques <b.jacques@planet.nl>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Add support for VIA VT8251 AC'97. Includes a workaround which ensures sound
won't stop playing after one second of playback.
Signed-off-by: Bastiaan Jacques <b.jacques@planet.nl>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
There's no reason for #include'ing linux/dma-mapping.h more than once.
Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Modules: au88x0 driver
since idx is used as an index for vortex_pcm_prettyname[VORTEX_PCM_LAST],
it should not be equal to VORTEX_PCM_LAST. This fixes coverity bug id #572
Signed-off-by: Eric Sesterhenn <snakebyte@gmx.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Modules: au88x0 driver
Removed all use of __devinit/__devexit and init.h from headers. Any
attributes given in the prototype but not in the function definition have
been moved to the definition.
An exception is vortex_eq_free: I removed the __devexit attribute because
vortex_eq_free is called from vortex_core_shutdown, and
vortex_core_shutdown may be called from __devinit snd_vortex_create.
Compile tested with allyesconfig and allmodconfig.
Signed-off-by: Dale Sedivec <dale@codefu.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Modules: HDA Codec driver
This patch adds the entry for the 5-stack pin-config for the STAC
chip on the Intel D945Pvs board with subdevice id 0x0707.
With this patch against 1.0.11rc4 in the linux kernel 2.6.17-rc1, I'm
able to successfully output over the optical port and analog ports.
Signed-off-by: Ashley Clark <aclark@ghoti.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Modules: HDA Codec driver
This adds the support for HP Compaq Presario B2800 laptop with AD1986A codec.
Signed-off-by: Coywolf Qi Hunt <qiyong@freeforge.net>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
These are the last conversions of pci_set_dma_mask(),
pci_set_consistent_dma_mask() and pci_dma_supported() to use DMA_xBIT_MASK
constants from linux/dma-mapping.h
Signed-off-by: Tobias Klauser <tklauser@nuerscht.ch>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This patch adds a mixer control which allows the user to switch the Aux
playback between the internal Aux jack, Wavetable, and Rear Line-In on
Aureon Universe cards.
For switching, a PCA9554 (8-line GPIO with I2C interface) and a 74HC4052
(dual 4-way mux/demux) are used. Output 0 and 1 of the PCA9554 are
connected to the select pins of the 74HC4052. The I2C interface of the
PCA9554 is connected to the card's internal SPI bus which is also used
to control the WM8770 and CS8415. SPI and I2C on the same lines...
To communicate with the PCA9554 the WM8770 and CS8415 are disabled and
an I2C Stop Condition is generated before the Start Condition (needed
for synchronisation because other SPI traffic appear to confuse the
PCA9554). Then a normal I2C data transfer takes place. Programming must
be done ridiculously slow; in theory, 4.7us is the minimum delay time
for normal-speed I2C according to the datasheet, but even with 10us
switching was unreliable. The Windows driver from Terratec does the
programming very slowly, too (checked with an oscilloscope).
PCA9554 datasheet:
http://www.semiconductors.philips.com/acrobat/datasheets/PCA9554_9554A_6.pdf
74HC4052 datasheet:
http://www.semiconductors.philips.com/acrobat/datasheets/74HC_HCT4052_4.pdf
Signed-off-by: Maximilian Rehkopf <otakon@gmx.net>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
On a new board revision for pcxhr boards, the
PCXHR_CHIPSC_GPI_USERI bit is no more supported.
The cards concerned have a REV01 in their PCI ID.
As the current driver tests this bit and does not load the
first Xilinx binary when it's 1, the card will crash on Xilinx
access over PCI. (the PCI will freeze ....)
The fix (fix to version 1.0.11rc4) works for both REV00 and
REV01 cards.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
process_unsol_events() seems to assume a singlethread one (IOW, racey).
So, this patch uses create_singlethread_workqueue() instead of
create_workqueue().
Signed-off-by: OGAWA Hirofumi <hirofumi@mail.parknet.co.jp>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
This patch adds support for high definition audio on ATI SB600.
Signed-off-by: Felix Kuehling <fkuehlin@ati.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- fix brown-paper-bag locking bug (lock() / return / unlock())
- improve central function snd_m3_update_ptr()
(avoid expensive integer divisions)
- add cpu_relax() to busy-wait I/O loop as recommended
(does this require special macro support in ALSA for older kernels??)
- constify several structs
- spelling updates
Signed-off-by: Andreas Mohr <andi@lisas.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
The following patch relative to CVS from 20060324 adds the following
features to the Realtek HDA codec.
1) Define two new pin modes: ALC_PIN_DIR_IN_NOMICBIAS and
ALC_PIN_DIR_INOUT_NOMICBIAS. These can be used with jack mode switch
definitions in mixers to prevent the user being offered the mic bias
options if the hardware doesn't support it.
2) Add the ability to have different input mux definitions for different
ADCs. This is needed because the ALC260 chip uses different mux layouts
for the two onboard ADCs. A new field (num_mux_defs) was added to the
alc_spec and alc_config_preset structures to support this.
3) Adjust numerous comments to make them consistent with the above changes.
4) Utilise the new multi-mux definition functionality for the ALC260 fujitsu
model to allow recording of the mixer output.
5) Utilise the new multi-mux definition functionality for the ALC260 test
model to make the mux selections a little less confusing.
6) Allow the headphone jack of the ALC260 acer model to be retasked in
the mixer.
6) Utilise the new multi-mux definition functionality for the ALC260 acer
model to give access to the mixer output and the retasked headphone
jack.
At this stage the *_NOMICBIAS modes are not used. We have reports that the
"Line" jack of at least some Acer models doesn't pass the bias out, and we
also know that NIDs 0x0f and 0x10 don't seem to accept the mic bias requests
at all. However, I feel we need to collect more evidence on both counts
before committing to the use of *_NOMICBIAS. In the case of the Acers, it's
not clear whether this issue (probably caused by the inclusion of DC
blocking capacitors) affects all Acer models or just a small number. With
the issue with NIDs 0x0f and 0x10 it's unclear whether this is a hardware
bug which will be addressed in later chip revisions or if it's an
intentional restriction. The datasheet makes no mention of the restriction
so at this stage I'm inclined to consider it a hardware bug. Comments in
the source reflect this reasoning.
On a similar theme, the headphone jack of the Fujitsu S7020 also doesn't
appear to pass mic bias voltage. I'm still investigating this however.
With the ability to retask the headphone jack, owners of ALC260-based Acer
laptops should now be able to record 4 channels of audio if they desire. The
multiple mux definitions allow this jack to be presented from both ADCs
(since this mux input is one of those which differs between the muxes).
This patch has been tested on a Fujitsu S7020 laptop and appears to behave
itself both for the "test" and "fujitsu" models. Definitions using only a
single mux specification also work. Other ALC chips should be fine but I
cannot test these myself. The "auto" modes should also continue to function
but again I have not verified this.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Removed from CONFIG_EXPERIMENTAL from CONFIG_SND_CS46XX_NEW_DSP, and
make default to yes. This option works fine for years.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
I have just discovered I made an error in the register value set in 'Limit
dmx6fire to 6 dacs' patch (bug1472). The value set should be '2a' not '0a'
as in the original patch, which unintentionally disables the 2nd MPU 401
UART.
Signed-off-by: Alan Horstmann <gineera@aspect135.co.uk>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Fix a lot of typos. Eyeballed by jmc@ in OpenBSD.
Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Replace all occurences of 0xff.. in calls to function pci_set_dma_mask()
and pci_set_consistant_dma_mask() with the corresponding DMA_xBIT_MASK from
linux/dma-mapping.h.
Signed-off-by: Matthias Gehre <M.Gehre@gmx.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This patch introduces the DMA_28BIT_MASK constant in dma-mapping.h
ALSA drivers using this mask are changed to use the new constant.
Signed-off-by: Tobias Klauser <tklauser@nuerscht.ch>
Acked-by: Takashi Iwai <tiwai@suse.de>
Acked-by: Jaroslav Kysela <perex@suse.cz>
Modules: HDA Codec driver,HDA generic driver
- Fix autoconfig speaker/hp detection
Now it allows multiple speaker pins (e.g. Dell laptops have such config)
- Use speaker or hp pins if no line-outs are available
This fixes the silence output on recent Dell laptops with STAC9200
(ALSA bug#1843)
- Fix analog/realtek/sigmatel autoconfig parser
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Modules: Documentation,HDA Codec driver
Added a new model 'laptop-eapd' to AD1986A codec for Samsung R65 and
ASUS A6J laptops.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Modules: Documentation,HDA Codec driver
Add support for VAIO FE550G and SZ110 laptops with Sigmatel codec (7661).
The new model 'vaio' is added.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Modules: NM256 driver
Treat the nm256 mixer as a write-only device so as to avoid hangs on
initialisation.
Signed-off-by: Florian Schlichting <Florian.Schlichting@gmx.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Modules: AC97 Codec
Add the pointer to a static volume resolution table to ac97 template,
so that the drivers can define the volume resolution, too.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Modules: ICE1712 driver
This patch makes two needlessly global functions static.
Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Modules: Generic drivers,ES18xx driver,CS46xx driver
This patch fixes two memory leaks spotted by the Coverity checker.
Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Modules: RME9652 driver
This patch fixes off-by-one errors found by the Coverity checker.
Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Modules: Documentation,HDA Codec driver
Fix the support of laptops with AD1986A HD-audio codec.
Added new models '3stack' and 'laptop'. Currently, fixed for FSC V2060
and Samsung M50.
Also fixed the description of missing models in ALSA-Configuration.txt.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Modules: BT87x driver
Add more PCI subsystem IDs of DVB cards to the blacklist of cards the
driver is to ignore.
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>