Commit Graph

359 Commits

Author SHA1 Message Date
Jaroslav Kysela
b4a621f547 [ALSA] ac97 - procfs - print PCI subsystem vendor/device values
Modules: AC97 Codec

For debugging and problem finding purposes, show also the PCI subsystem
vendor/device values in the ac97#X proc file.

Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2006-01-03 12:16:10 +01:00
James Courtier-Dutton
6ef7e8614c [ALSA] snd-emu10k1: Found some new registers to display in debug mode.
Modules: EMU10K1/EMU10K2 driver

Signed-off-by: James Courtier-Dutton <James@superbug.co.uk>
2006-01-03 12:16:08 +01:00
James Courtier-Dutton
e2b15f8f7d [ALSA] snd-emu10k1: Attenuate output volume to reduce distortion
Modules: EMU10K1/EMU10K2 driver

                      on Audigy 2 ZS Notebook.

Set the master volume to about 6 or 8% in alsamixer. This will
attenuate the output enough for better sound quality.
Note: Only stereo enabled at present.
The distortion is caused by the output path after the DSP
adding 12dB gain to the output while still in digital mode,
resulting in wrap around distortion.

Signed-off-by: James Courtier-Dutton <James@superbug.co.uk>
2006-01-03 12:16:06 +01:00
Takashi Iwai
755e137138 [ALSA] ali5451 - Fix and clean up codec accessor
Modules: ALI5451 driver

Fix the codec accessors to avoid soft lockup.
Spin locks are revised, too.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2006-01-03 12:16:01 +01:00
Jaroslav Kysela
fd6715e564 [ALSA] ice1724 (juli) - forced analog doughter board detection
Modules: ICE1712 driver

Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2006-01-03 12:15:57 +01:00
Takashi Iwai
c1b8f5f0e4 [ALSA] via82xx - Add dxs entry for MSI KT800 Delta-FSR
Modules: VIA82xx driver

Added the dxs entry for MSI KT800 Delta-FSR.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2006-01-03 12:15:56 +01:00
Lee Revell
f6f8bb6423 [ALSA] Add support for Audigy 2 subsystem 2006
Modules: EMU10K1/EMU10K2 driver

Add support for Audigy 2 subsystem 2006.

Signed-off-by: Lee Revell <rlrevell@joe-job.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2006-01-03 12:15:53 +01:00
Lee Revell
2f020aa711 [ALSA] emu10k1 - Enable side surround channels for Audigy2 EX
Modules: EMU10K1/EMU10K2 driver

Enable side surround channels for Audigy2 EX.  Tested by Rick Wright
<riwright@vt.edu>.

Signed-off-by: Lee Revell <rlrevell@joe-job.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2006-01-03 12:15:50 +01:00
Randy Dunlap
362775e212 [ALSA] sound/hda: rate-limit timeout message
Modules: HDA Intel driver

Rate-limit the azx_get_response timeout message.  A continuous 2 per second
is too much.

Signed-off-by: Randy Dunlap <randy_d_dunlap@linux.intel.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2006-01-03 12:15:48 +01:00
Takashi Iwai
d031166fec [ALSA] hda-codec - Allocate amp hash array dynamically
Modules: HDA Codec driver

Allocate amp hash array dynamically instead of static array.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2006-01-03 12:15:47 +01:00
Grant Coady
26205e026c [PATCH] pci_ids cleanup: fix two additional IDs in bt87x
pci_ids cleanup: fixup bt87x.c: two macro defined IDs missed in prior cleanup.

Caught by Chun-Chung Chen <cjj@u.washington.edu>: "In the patch for bt87x.c,
you seemed have missed the two occurrences of BT_DEVICE on line 897 and
line 898."

Signed-off-by: Grant Coady <gcoady@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2005-11-10 16:09:17 -08:00
Greg Kroah-Hartman
249bb070f5 [PATCH] PCI: removed unneeded .owner field from struct pci_driver
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2005-11-10 16:09:17 -08:00
Takashi Iwai
63786d064c [ALSA] ice1724 - Fix ADC mux put callback in aureon.c
Modules: ICE1712 driver

Fix the return value of ADC mux put callback in aureon.c.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-11-07 11:28:55 +01:00
Takashi Iwai
985be54ba8 [ALSA] hda-codec - Minor rewrites
Modules: HDA Codec driver,HDA generic driver

- Make bound controls global to all patches
- Clean up analog patches (for the upcoming extension to AD1988)

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-11-04 13:25:53 +01:00
Takashi Iwai
b7027cc29e [ALSA] hda-codec - Show power state in proc file
Modules: HDA generic driver

Show the power state of each widget in proc file.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-11-04 13:25:41 +01:00
Takashi Iwai
09f9a891e9 [ALSA] ice1724 - Add SPDIF support to Shuttle SN25P
Modules: ICE1712 driver

Added the SPDIF support to Shuttle SN25P.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-11-04 13:25:10 +01:00
Takashi Iwai
091e95ee7f [ALSA] ac97 - Fix confliction of DRA and surround slots
Modules: AC97 Codec

Fixed the confliction of DRA and surround slots 7/8.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-11-04 13:20:34 +01:00
Takashi Iwai
beef08a545 [ALSA] intel8x0 - Fix irq handler registration
Modules: Intel8x0 driver

- Request irq handler after proper initialization
- Don't override always buggy_irq option for Nvidia

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-11-04 13:20:31 +01:00
Karoly Lorentey
6d6f915620 [ALSA] intel8x0 - Add ac97_quirk for Dell Inspiron 8600
Modules: Intel8x0 driver

Add AC97_TUNE_HP_ONLY quirk for Dell Inspiron 8600.

Signed-off-by: Karoly Lorentey <lorentey@elte.hu>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-11-04 13:20:24 +01:00
Andreas Mohr
d91c64c827 [ALSA] AZT3328 driver update
Modules: AZT3328 driver

this is now an even much more reworked patch (#3) for my azt3328.c ALSA driver.
IOW I spent another 4 evenings to get the sequencer timer to work properly
(my head is still hurting) and do lots of other cleanups.

Note that despite the extensive sequencer timer additions, the driver object
is still only 2kB bigger than the previous version, due to those many
optimizations...

Changes in version #3:
- fully working ALSA sequencer timer support for the card's 1024000Hz
  DirectX timer (downscaling adjustable via seqtimer_scaling module param)
- an insane amount of code optimizations
- many, many cleanups

Changes in version #2:
- FOUND the 1us DirectX timer area (yay!), made the code respect it
properly
- renamed some 'weird' mixer control names according to ControlNames.txt
- cleanup unneeded debug messages, reformatting
- improved I/O register documentation
- constified many more structs

Changes in version #1:
- improves/fixes some fatal playback/recording interaction
- improves IRQ handler performance (and actually fixes some weird code)
- coalesces some I/O accesses
- slightly improves I/O interface documentation
- improves/fixes logging
- defines out some less important debug code
- constifies some data

Signed-off-by: Andreas Mohr <andi@lisas.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-11-04 13:20:18 +01:00
Tim
fc20773329 [ALSA] Fix emu10k1 synth problems.
Modules: EMU10K1/EMU10K2 driver,Common EMU synth

This patch fixes problems with voices cutting off or not
sounding at all.

Signed-off-by: Tim <tedon@rogers.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-11-04 13:20:13 +01:00
Jesper Juhl
fc58422ad9 [ALSA] Big kfree NULL check cleanup - sound
Modules: AD1889 driver,RME9652 driver

This is the sound/ part of the big kfree cleanup patch.

Remove pointless checks for NULL prior to calling kfree() in sound/.

Signed-off-by: Jesper Juhl <jesper.juhl@gmail.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-11-04 13:19:55 +01:00
Nishanth Aravamudan
8433a509c0 [ALSA] Fix schedule_timeout usage
Use schedule_timeout_{,un}interruptible() instead of
set_current_state()/schedule_timeout() to reduce kernel size.  Also use
human-time conversion functions instead of hard-coded division to avoid
rounding issues.

Signed-off-by: Nishanth Aravamudan <nacc@us.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-11-04 13:19:49 +01:00
Wei Ni
d78bec210f [ALSA] intel8x0 - fix capture for M1563
Modules: Intel8x0 driver

1.In intel8x0_measure_ac97_clock routine, when stop DMA, there is not stop
  DMA corectly, but start another PCM In2 DMA engine.
2.In do_ali_reset routine, there is only need to enable PCM IN and PCM OUT.

Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2005-11-04 13:19:41 +01:00
James Courtier-Dutton
7b4260f2cc [ALSA] ca0106: Added copyright messages.
Modules: CA0106 driver

Signed-off-by: James Courtier-Dutton <James@superbug.co.uk>
2005-11-04 13:19:39 +01:00
James Courtier-Dutton
7cf4783b31 [ALSA] ca0106: Cosmetic changes.
Modules: CA0106 driver

Just tidying up the code. Making more functions static.

Signed-off-by: James Courtier-Dutton <James@superbug.co.uk>
2005-11-04 13:19:37 +01:00
James Courtier-Dutton
8a5afd29dc [ALSA] snd-ca0106: Add midi support.
Modules: PCI drivers,CA0106 driver

Author: Tilman Kranz <tilde@tk-sls.de>

Signed-off-by: James Courtier-Dutton <James@superbug.co.uk>
2005-11-04 13:19:26 +01:00
Takashi Iwai
b0b9811956 [ALSA] hdsp - Code clean up
Modules: RME HDSP driver

- Add missing KERN_* suffix to printk.
- Clean up parentheses.
- clean up the firmware check code.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-11-04 13:19:24 +01:00
Takashi Iwai
99b359ba10 [ALSA] Add missing KERN_* suffix to printk
Add missing KERN_* suffix to printk.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-11-04 13:19:23 +01:00
Takashi Iwai
8a3fb4d0ce [ALSA] Remove multi-card support for ali5451 and nm256
Modules: Documentation,ALI5451 driver,NM256 driver

Removed multi-card supports for ali5451 and nm256 drivers.
They are supposed to be a single device.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-11-04 13:19:17 +01:00
Takashi Iwai
698444f317 [ALSA] Fix the type of enable module option
Fix the type of enable module option to bool.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-11-04 13:19:16 +01:00
John W. Linville
47530cf44c [ALSA] nm256: reset workaround for Latitude CSx
Modules: NM256 driver

The current snd-nm256 driver can cause Dell Latitude CSx laptops to
lock-up during module (un)load.  I have isolated this to the writes to
the control port register at offset 0x6cc which were not already
protected by the existing reset_workaround.

I tried grouping these writes with the existing reset_workaround
clause, but that caused the driver to have (un)load problems on the
Dell Latitude LS laptops.  So, I have implemented a reset_workaround_2
clause (please feel free to suggest a better name!) to cover this
situation and added a quirk entry for the CSx laptops.

Signed-off-by: John W. Linville <linville@tuxdriver.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-11-04 13:19:10 +01:00
Clemens Ladisch
d44c39acaf [ALSA] ymfpci: change timer resolution to 48 kHz
Modules: YMFPCI driver

We better pretend that the ymfpci timer runs at 48 kHz because the
interrupt frequency cannot be higher, and clients that would try to
use 96 kHz would run at half their desired speed.

Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
2005-11-04 13:19:09 +01:00
Charles R. Anderson
051b516533 [ALSA] Fix maestro3 hang after cold boot
Modules: Maestro3 driver

This patch fixes the maestro3 driver to call the snd_m3_assp_init
function to write the DSP firmware into the ASSP chip before sending the
RUN_ASSP command, thereby solving the hang after a cold boot.

Signed-off-by: Charles R. Anderson <cra@alum.wpi.edu>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-11-04 13:19:06 +01:00
Takashi Iwai
c829b052de [ALSA] intel8x0 - Fix handling of module parameters
Modules: Intel8x0 driver

- Set buggy_irq parameter before registration of irq handler.
- Clean up module parameter handling.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-11-04 13:19:02 +01:00
Karsten Wiese
4f550df58f [ALSA] Reduce interrupt latency in sound/pci/via82xx.c
Modules: VIA82xx driver

The change only affects the via823x kind of chips.
Here the  via8233_pcm_pointer_hw() function
(named snd_via8233_pcm_pointer() before)
needed to loop until a non zero position is red from the chip.

Measurements have shown that more than 200 loops are typically needed on
an Athlon64.
As io-reads cost many cycles, those loops sum up huge.
via8233_pcm_pointer_hw() runs either in interrupt or with interrupts
disabled. So it introduces significant interrupt latency.

The patch introduces a calculated position value hwptr_done,
that is updated by the interrupt routine when a period is completed.
It is only used, if the 823x chip returns a zero position, which can't
be interpreted reliably.

Further optimisation is applied on the 8233 chip's interrupt routine:
Only the SGD_SHADOW is read, as it contains all infos needed.
We ommit ~5 more register reads that way.

Signed-off-by: Karsten Wiese <annabellesgarden@yahoo.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-11-04 13:19:00 +01:00
Honza Maly
00f226d400 [ALSA] Enable DXS controls for VIA VT82xx
Modules: VIA82xx driver

The patch enable separate DXS controls of sound function of VIA VT82xx
controller in case DXS volume is not needed for PCM Playback volume
control emulation.

Signed-off-by: Honza Maly <hkmaly@matfyz.cz>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-11-04 13:18:53 +01:00
Takashi Iwai
2dfbeca9e9 [ALSA] Add support of high-rate SPDIF output
Modules: ICE1724 driver

Add support of SPDIF output with sample rates higher than 48kHz.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-11-04 13:18:37 +01:00
Takashi Iwai
86284e458b [ALSA] hda-codec - Get subsystem ID from AFG/MFG
Modules: HDA Codec driver

Get subsytem ID from AFG/MFG if not obtained from the root node.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-11-04 13:18:29 +01:00
Takashi Iwai
93b9f42637 [ALSA] es1938 - Clean up and fix trigger in PM
Modules: ES1938 driver

- Clean up the last PM fix
- Add TRIGGER_SUSPEND/RESUME to disable/enable DMA properly during PM

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-11-04 13:18:23 +01:00
Rudolf Marek
c913f69b0d [ALSA] es1938 - Fix resume
Modules: ES1938 driver

This patch fixes the suspend/resume issue I'm having with ESS-Solo1
soundcard. Without this patch I might get after resume message
that kernel is disabling the IRQ5 (soundcard). If there was something
playing it wont continue after resume without this patch.

Signed-off-by: Rudolf Marek <r.marek@sh.cvut.cz>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-11-04 13:18:18 +01:00
Takashi Iwai
94651a5bf5 [ALSA] via82xx - Add DXS entry for Clevo D470
Modules: VIA82xx driver

Added the DXS entry for Clevo D470 laptop.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-11-04 13:18:13 +01:00
Takashi Iwai
b1d5776d86 [ALSA] Remove vmalloc wrapper, kfree_nocheck()
- Remove vmalloc wrapper
- Add release_and_free_resource() to remove kfree_nocheck() from each driver
  and simplify the code

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-11-04 13:18:00 +01:00
Takashi Iwai
7c22f1aaa2 [ALSA] Remove snd_runtime_check() macro
Remove snd_runtime_check() macro.
This macro worsens the readability of codes.  They should be either
normal if() or removable asserts.

Also, the assert displays stack-dump, instead of only the last caller
pointer.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-11-04 13:17:42 +01:00
Sasha Khapyorsky
f01cc521a2 [ALSA] Sasha Khapyorsky: My email address is changed, there is update.
Modules: Intel8x0-modem driver,VIA82xx-modem driver,HDA Codec driver

Signed-off-by: Sasha Khapyorsky <sashakh@alsa-project.org>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2005-11-04 13:17:40 +01:00
Dick Streefland
72c8986caf [ALSA] intel8x0 - enable ac97_quirk hp_only for Acer Aspire 3003LCi
Modules: Intel8x0 driver

On my Acer Aspire 3003LCi laptop, the speaker volume is not controlled
by the master control, but by the headphone control. Enabling the
'hp_only' quirk corrects this. The patch below adds this device to the
list of known quirks.

Signed-off-by: Dick Streefland <dick@streefland.net>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-11-04 13:17:35 +01:00
Takashi Iwai
c168143c45 [ALSA] Allow 8-44khz sample rates on Revolution 7.1
Modules: ICE1724 driver

Remove the restcition of sample rates on Revolution 7.1 board.
This enables the low 8-44kHz sample rates.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-11-04 13:17:32 +01:00
Takashi Iwai
2b3e584b92 [ALSA] Add dummy obsoleted module options for backward compatibility
Added dummay obsoleted module options for backward compatibility
(to reduce possible bugzilla entries :)

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-11-04 13:17:28 +01:00
Takashi Iwai
79ba34b941 [ALSA] intel8x0 - Suppress the codec warnings during probing
Modules: Intel8x0 driver

Suppress the codec warnings during probing of codecs.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-11-04 13:17:26 +01:00
Clemens Ladisch
b7fe462204 [ALSA] highlanderize motherboard AC97/HDA drivers
Remove the code for supporting eight cards from the integrated
controller drivers because There Can Be Only One controller of
each type per mainboard.

Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
2005-11-04 13:17:16 +01:00
Randy Dunlap
4b0940f811 [ALSA] sound: align device drivers menus
Modules: Sound Core,PCI drivers

AC97 Kconfig entries broke the ALSA device drivers menu,
so move them to a location where that won't happen,
enabling all device sub-menus to be presented together.

Signed-off-by: Randy Dunlap <rdunlap@xenotime.net>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-11-04 13:17:08 +01:00
Sasha Khapyorsky
2ba71978c0 [ALSA] Removing obsolete AC97_SHARED_TYPES
This patch cleans last ac97 audio/modem codec interception in
initialization procedures (ac97_mixer_new()) and removes obsolete
SHARED_TYPE 'locking' which prevents from AMC codecs to function
correctly.

Signed-off-by: Sasha Khapyorsky <sashak@smlink.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-11-04 13:16:59 +01:00
Sasha Khapyorsky
6632d198c6 [ALSA] dev_class=SNDRV_PCM_CLASS_MODEM for modem PCMs
dev_class=SNDRV_PCM_CLASS_MODEM for all supported softmodem PCMs

Signed-off-by: Sasha Khapyorsky <sashak@smlink.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-11-04 13:16:56 +01:00
Glen Masgai
d602c885a6 [ALSA] ymfpci: add S/PDIF-in > S/PDIF-out loop
Modules: YMFPCI driver

This patch adds a new mixer control called 'IEC958 Loop' which makes
it possible to loop digital signals from S/PDIF-in to S/PDIF-out.

Signed-off-by: Glen Masgai <mimosius@gmx.de>
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
2005-11-04 13:16:52 +01:00
Sasha Khapyorsky
f2b31737e5 [ALSA] au88x0: codec access procs for multiple AC97 codecs
Modules: au88x0 driver

This patch extends au88x0 AC97 codec access procedures to handle multiple
codecs properly.

Signed-off-by: Sasha Khapyorsky <sashak@smlink.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-11-04 13:16:24 +01:00
Jonathan Woithe
a9430dd8fc [ALSA] hda-codec - A new model for Fujitsu S7020
Modules: HDA Codec driver

Added a new model 'fujitsu' to ALC260 config for Fujitsu S7020.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-11-04 13:16:13 +01:00
Clemens Ladisch
5747e54042 [ALSA] cmipci: use FM/MIDI ports in PCI port space
Modules: CMIPCI driver

If possible, use ports in the card's PCI port address range instead of
the legacy ports.

Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
2005-11-04 13:15:46 +01:00
Vinod G
da3fca2199 [ALSA] hda-intel - Add NVidia support
Modules: HDA Intel driver

This patch is to make the Intel HDA code work for NVIDIA azalia controller.

Modified by Takashi Iwai <tiwai@suse.de>

Signed-off-by: Vinod G. <vinodg@nvidia.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-11-04 13:15:45 +01:00
Takashi Iwai
eb9b4142b3 [ALSA] Fix a typo
Modules: AC97 Codec

Fix a typo in the last patch.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-11-04 13:15:42 +01:00
Takashi Iwai
4525c9f31f [ALSA] Fix surround control of CMI9761
Modules: AC97 Codec

- Fixed surround controls of CMI9761 (model 83) in update_jacks callback.
- Clean up ad1888 and ad1985 update_jacks callbacks.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-11-04 13:15:39 +01:00
Mikael Magnusson
edf8e4565c [ALSA] emu10k1: Front channels via fxbus 8 and 9
Modules: EMU10K1/EMU10K2 driver

Adds left and right front channel outputs using fxbus 8 and 9 and 'Front'
playback and capture volume controls.

Signed-off-by: Mikael Magnusson <mikma@users.sourceforge.net>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-11-04 13:15:36 +01:00
James Courtier-Dutton
d83c671fb7 [PATCH] Creative Audigy 2 cardbus: Add IO window wakeup magic
This adds the magic IO wakeup code for the CardBus version of the
Creative Labs Audigy 2 to the snd-emu10k1 driver.

Without the magic IO enable sequence, reading from the IO region of the
card will fail spectacularly, and the machine will hang.

My next task will be getting the driver to actually play sound without
distortion.

Signed-off-by: James Courtier-Dutton <James@superbug.co.uk>

[ This is a work-in-progress, but since it avoids a total lockup
  if the emu10k module is loaded on a machine with the cardbus
  card inserted, we're better off with it than without it, even
  if sound quality is bad right now ]

Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-10-31 16:09:39 -08:00
Grant Coady
4153812fc1 [PATCH] pci_ids: macros: replace partial with whole symbols
pci_ids cleanup: replace symbols built by macros with whole symbols to
aid grep searches.

Signed-off-by: Grant Coady <gcoady@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

 drivers/video/cirrusfb.c |   24 ++++++++++++------------
 sound/oss/ymfpci.c       |   17 +++++++++--------
 sound/pci/bt87x.c        |   11 +++++++----
 3 files changed, 28 insertions(+), 24 deletions(-)
2005-10-28 15:36:59 -07:00
Russell King
9480e307cd [PATCH] DRIVER MODEL: Get rid of the obsolete tri-level suspend/resume callbacks
In PM v1, all devices were called at SUSPEND_DISABLE level.  Then
all devices were called at SUSPEND_SAVE_STATE level, and finally
SUSPEND_POWER_DOWN level.  However, with PM v2, to maintain
compatibility for platform devices, I arranged for the PM v2
suspend/resume callbacks to call the old PM v1 suspend/resume
callbacks three times with each level in order so that existing
drivers continued to work.

Since this is obsolete infrastructure which is no longer necessary,
we can remove it.  Here's an (untested) patch to do exactly that.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2005-10-28 09:52:56 -07:00
Takashi Iwai
4d060fd169 [ALSA] ali5451 - Don't build non-existing modem PCM
ALI5451 driver
Don't build the modem PCM if the corresponding codec isn't detected.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-10-07 14:46:36 +02:00
Takashi Iwai
b150869369 [ALSA] emu10k1 - Fix handling of ac97_chip=2
EMU10K1/EMU10K2 driver
Fixed the handling of ac97_chip=2 capability type.
The error occurs in snd_ac97_mixer(), not in snd_ac97_bus().
Also, release the unnecessary ac97_bus object in the error path.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-10-07 14:46:34 +02:00
Clemens Ladisch
315e3bd717 [ALSA] korg1212: fix typo
KORG1212 driver
Add a missing comma that made the stateName array one entry too short.

Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
2005-10-07 14:46:33 +02:00
Takashi Iwai
f12aa40c9d [ALSA] emu10k1 - Fix loading of SBLive Game board
EMU10K1/EMU10K2 driver
Fixed the error at loading SBLive Game board (and possible other models).
The PCI SSIDs of this board conflicts with SB Live 5.1 Platinum, which has
no AC97 chip.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-10-07 14:46:26 +02:00
Takashi Iwai
c66186e1c9 [ALSA] via82xx - dxs_support entry for an ASUS mobo
VIA82xx driver
Addded a dxs_support entry for an ASUS mobo.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-10-07 14:46:25 +02:00
Takashi Iwai
35451088f4 [ALSA] Fix confliction of capture controls on ALC880 test model
HDA Codec driver
Fixed the confliction of capture controls on ALC880 'test' model.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-10-07 14:46:24 +02:00
John W. Linville
92447f3f1a [ALSA] fix HD audio ALC882 lfe (un)mute
HDA Codec driver
Mark the ALC882 'LFE Playback Switch' as an input, like the other
playback switch settings.

Signed-off-by: John W. Linville <linville@tuxdriver.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-10-07 14:46:19 +02:00
John W. Linville
1c1fa8b69e [ALSA] fix alc880_test_mixer typo
HDA Codec driver
Fix a typo (cut & paste) in the alc880_test_mixer structure.

Signed-off-by: John W. Linville <linville@tuxdriver.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-10-07 14:46:18 +02:00
John W. Linville
a7175aab3f [ALSA] fix HD audio ALC260 mono (un)mute
HDA Codec driver
The ALC260 'Mono Playback Switch' is marked as an output in
patch_realtek.c. It actually does not work unless it is marked as an
input. Go figure... This was tested and confirmed on an HP xw4300.

Signed-off-by: John W. Linville <linville@tuxdriver.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-10-07 14:46:12 +02:00
Takashi Iwai
db99055f8d [ALSA] via82xx - Add a dxs whitelist entry
VIA82xx driver
Added a dxs whitelist entry for an ECS mobo.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-10-07 14:45:48 +02:00
Nicolas Pitre
90b66e8332 [ALSA] clean suspend/resume calls for ac97_bus_type
AC97 Codec
A single call to the driver suspend/resume method for each device is
enough. The level and SUSPEND_*/RESUME_* arguments are deprecated and
said to be removed eventually anyway (no other subsystem are using them
anymore except platform devices).

Signed-off-by: Nicolas Pitre <nico@cam.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-10-07 14:45:46 +02:00
Nicolas Pitre
72e75de2df [ALSA] remove redundent assignment to the ac97 device structure
AC97 Codec
Don't use dev.platform_data to store a reference to the containing
ac97_t structure.  Such assignment is redundent since we can deduce the
ac97_t structure location from the contained device structure.  This
sets platform_data free for other purposes.

Signed-off-by: Nicolas Pitre <nico@cam.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-10-07 14:45:44 +02:00
Nicolas Pitre
3a91e95969 [ALSA] remove bogus match method for ac97_bus
AC97 Codec
The bus_id is initialized with a generic identifier string which is not
really useful for proper driver matching.  Let the driver decide what it
needs via its probe method instead.

Signed-off-by: Nicolas Pitre <nico@cam.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-10-07 14:45:35 +02:00
Takashi Iwai
e8dede5a13 [ALSA] hda-intel - Disable DMA position auto-correction
HDA Intel driver
Disable the auto-correction of DMA position temporarily.
It doesn't work as expected yet...

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-10-07 14:45:30 +02:00
Sasha Khapyorsky
84802f0df3 [ALSA] hda-codec - 'empty' generic mfg-only codec
HDA generic driver
This creates 'empty' hda generic for unknown MFG-only codecs.

Signed-off-by: Sasha Khapyorsky <sashak@smlink.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-10-07 14:45:29 +02:00
Sasha Khapyorsky
27bcaa693c [ALSA] no templated index for si3036 modem controls
AC97 Codec
No index is templated for si3036 modem controls.

Signed-off-by: Sasha Khapyorsky <sashak@smlink.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-10-07 14:45:27 +02:00
Sasha Khapyorsky
0444e2aca9 [ALSA] no templated index for mc97 controls
AC97 Codec
No index is templated for mdoem controls.

Signed-off-by: Sasha Khapyorsky <sashak@smlink.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-10-07 14:45:25 +02:00
Chuck Ebbert
98b4f5929c [PATCH] atiixp_modem printk fixes
Correctly identify atiixp_modem in its error messages.

Signed-off-by: Chuck Ebbert <76306.1226@compuserve.com>
Cc: Vojtech Pavlik <vojtech@suse.cz>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-09-22 22:17:35 -07:00
Roland Dreier
8b7fc4214b [PATCH] add PCI IDs so RME32 and RME96 drivers build
While doing an allyesconfig build, I noticed that the commit

    commit 8cdfd2519c
    Author: Takashi Iwai <tiwai@suse.de>
    Date:   Wed Sep 7 14:08:11 2005 +0200

        [ALSA] Remove superfluous PCI ID definitions

broke the RME32 and RME96 drivers, since the PCI IDs they use seem to have
changed names.  Here's a patch to fix this -- compile tested only, since I
have no idea what the hardware even is.

Fix the build of the RME32 and RME96 drivers by having them use the
PCI_DEVICE_ID_RME_xxx names defined in <linux/pci_ids.h> instead of the
PCI_DEVICE_ID_xxx names that they used to define themselves.

Also fix the typo in the id PCI_DEVICE_IDRME__DIGI96_8_PAD_OR_PST so the
name is PCI_DEVICE_ID_RME_DIGI96_8_PAD_OR_PST.

Signed-off-by: Roland Dreier <rolandd@cisco.com>
Acked-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-09-14 14:34:17 -07:00
Clemens Ladisch
3bcd4649bc [ALSA] set owner field in struct pci_driver
AD1889 driver,ALS4000 driver,ATIIXP driver,ATIIXP-modem driver
AZT3328 driver,BT87x driver,CMIPCI driver,CS4281 driver
ENS1370/1+ driver,ES1938 driver,ES1968 driver,FM801 driver
Intel8x0 driver,Intel8x0-modem driver,Maestro3 driver,RME32 driver
RME96 driver,SonicVibes driver,VIA82xx driver,VIA82xx-modem driver
ALI5451 driver,au88x0 driver,CS46xx driver,EMU10K1/EMU10K2 driver
HDA Intel driver,ICE1712 driver,ICE1724 driver,KORG1212 driver
MIXART driver,NM256 driver,RME HDSP driver,RME9652 driver
Trident driver,Digigram VX222 driver,YMFPCI driver
Set the module owner field in each driver's struct pci_driver to get
the driver symlink in the sysfs device directory.

Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
2005-09-12 11:12:34 +02:00
James Courtier-Dutton
afe0f1f668 [ALSA] snd-emu10k1: ALSA bug#1297: Fix a error recognising the SB Live Platinum.
EMU10K1/EMU10K2 driver
The card does not have an AC97 chip.
.subsystem = 0x80611102

Signed-off-by: James Courtier-Dutton <James@superbug.co.uk>
2005-09-12 10:48:32 +02:00
Takashi Iwai
e560d8d836 [ALSA] Replace with kzalloc() - pci stuff
AD1889 driver,ATIIXP driver,ATIIXP-modem driver,AZT3328 driver
BT87x driver,CMIPCI driver,CS4281 driver,ENS1370/1+ driver
ES1938 driver,ES1968 driver,FM801 driver,Intel8x0 driver
Intel8x0-modem driver,Maestro3 driver,SonicVibes driver,VIA82xx driver
VIA82xx-modem driver,AC97 Codec,AK4531 codec,au88x0 driver
CA0106 driver,CS46xx driver,EMU10K1/EMU10K2 driver,HDA Codec driver
HDA generic driver,HDA Intel driver,ICE1712 driver,ICE1724 driver
KORG1212 driver,MIXART driver,NM256 driver,Trident driver,YMFPCI driver
Replace kcalloc(1,..) with kzalloc().

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-09-12 10:48:16 +02:00
Takashi Iwai
8648811f1d [ALSA] hda-codec - Added ASUS A6
HDA Codec driver
Added ASUS A6 support for ALC880 codec.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-09-12 10:47:54 +02:00
Takashi Iwai
a06147d228 [ALSA] intel8x0 - Add buggy_semaphore option
Documentation,Intel8x0 driver
Added buggy_semaphore module option to snd-intel8x0 driver
for a workaround for hardwards with buggy codec semaphores.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-09-12 10:47:47 +02:00
Takashi Iwai
a28f1cda0d [ALSA] hda-intel - Fix modem PCM creation
HDA Intel driver
Fix a bug of modem PCM creation (due to a typo).

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-09-12 10:47:18 +02:00
Jiri Slaby
0dd119f703 [ALSA] pci_find_device remove
Memalloc module,CS46xx driver,VIA82xx driver,ALI5451 driver
au88x0 driver
Replace pci_find_device() with pci_get_device() and pci_dev_put().

Signed-off-by: Jiri Slaby <xslaby@fi.muni.cz>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-09-12 10:47:08 +02:00
Takashi Iwai
8cdfd2519c [ALSA] Remove superfluous PCI ID definitions
CS46xx driver,EMU10K1/EMU10K2 driver,PCM Midlevel,Trident driver
YMFPCI driver,BT87x driver,CMIPCI driver,CS4281 driver
ENS1370/1+ driver,ES1938 driver,ES1968 driver,Intel8x0 driver
Intel8x0-modem driver,Maestro3 driver,RME32 driver,RME96 driver
SonicVibes driver,VIA82xx driver,ALI5451 driver,ICE1712 driver
ICE1724 driver,NM256 driver,RME HDSP driver,RME9652 driver
Remove superfluous PCI ID definitions.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-09-12 10:47:02 +02:00
Takashi Iwai
ec9e1c5c9c [ALSA] hda-codec - Assign audio PCMS first
HDA Codec driver,HDA Intel driver,HDA generic driver
Assign audio PCMs first before modem PCMs.
The modem stream is assigned up to device #6, to be consistent over
different models.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-09-12 10:42:17 +02:00
Takashi Iwai
0be3b5d3fb [ALSA] hda-intel - Check validity of DMA position
HDA Intel driver
Check the validity of the current DMA position when position_fix=0 (auto)
is set.  If the DMA position overcomes the threshold, the driver changes
the fix behavior automatically to use POSBUF.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-09-12 10:41:37 +02:00
Davide Libenzi
0ca21611b6 [ALSA] hda-codec - Bring the Vaio's RA826G HDA (82801) to life ...
HDA Codec driver
Add the subsystem PCI devid to the list (on top of 2.6.13).

Signed-off-by: Davide Libenzi <davidel@xmailserver.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-09-12 10:41:27 +02:00
Clemens Ladisch
4d23359b7e [ALSA] sparse address space annotations
ALSA Core,RawMidi Midlevel,ALSA<-OSS emulation,ALSA sequencer
RME32 driver,RME96 driver,EMU10K1/EMU10K2 driver,NM256 driver
Add sparse annotations where we do strange this with __iomem/__user
pointers.

Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
2005-09-12 10:41:16 +02:00
James Courtier-Dutton
025cd2f6b1 [ALSA] snd-ca0106, snd-emu10k1: Add symlink in the sys tree.
CA0106 driver,EMU10K1/EMU10K2 driver
A thread appeared on the LKML. This patch implements the fix.

Question:
in sysfs, /sys/bus/*/drivers lists the driver names, with their exported .name (eg. '.name = 'EMU10K1_Audigy'' in the module code, from now on 'driver name'). In /sys/modules, the kernel modules are listed with their module name, eg. snd_emu10k1. However, it seems to me that in sysfs, there is no way in particular to tell, which module has which .name. That is, that snd_emu10k1 is EMU10K1_Audigy and vice versa.

I wonder whether it wouldn't be possible to add a symlink to the particular module from the driver, and/or from the module to the driver, so the list of devices handled by the module and the module name would be accessible. This way, I would know which driver name corresponds to which module name and vice versa.

Answer:
For PCI drivers, just add the line:
	.owner = THIS_MODULE,

to their struct pci_driver definition and you will get the symlink
created for you.

Signed-off-by: James Courtier-Dutton <James@superbug.co.uk>
2005-09-12 10:41:07 +02:00
Takashi Iwai
a5022b0dc6 [ALSA] Fix ALC658D support
AC97 Codec
Fix the internal speaker problem (e.g. Targa Traveller 826)
with ALC658D codec.  The info is taken from Cyberlink/realtek-modified code.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-09-12 10:41:01 +02:00
Clemens Ladisch
b73c1c122a [ALSA] hdsp: always initialize card name
RME HDSP driver
When using the kernel firmware loader, initialize the card shortname
before registering the card with ALSA to prevent it from using a
default card ID.

Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
2005-09-12 10:40:55 +02:00
Takashi Iwai
5d529390dc [ALSA] intel8x0 - Add quirk for IBM NetVisa A30p
Intel8x0 driver
Added ac97_quirk entry for IBM NetVisa A30p.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-09-12 10:40:37 +02:00
Takashi Iwai
8e3d759d4b [ALSA] atiixp - Fix PM resume
ATIIXP driver
Fixed PM resume on atiixp driver.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-09-12 10:40:24 +02:00