aboutsummaryrefslogtreecommitdiffstats
path: root/sound/pci/ice1712
Commit message (Collapse)AuthorAge
* ALSA: ice1712 delta - initialize SPI clockBrian Bloniarz2011-01-18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The driver was using an initial value for the clock on the SPI bus which was read from ICE1712 EEPROM, ice->eeprom.data[ICE_EEP1_GPIO_STATE] & ICE1712_DELTA_AP_CCLK (0x02) It appears some cards have it default high, some cards have it default low. On my Delta 66 rev. E: $ cat /proc/asound/M66/ice1712 | grep 'GPIO state' GPIO state : 0x70 /* ICE1712_DELTA_AP_CCLK bit is zero */ On my Audiophile 2496: $ cat /proc/asound/M2496/ice1712 | grep 'GPIO state' GPIO state : 0xfe /* ICE1712_DELTA_AP_CCLK bit is one */ It must be raised before the first SPI write happens, or the write will fail, leading to: [ 23.248721] invalid CS8427 signature 0x0: let me try again... I theorize that 4eb4550ab37d351ab0973ccec921a5a2d8560ec7 is no longer needed, it was a different way to workaround the problem. [fixed variable decleration by tiwai] Signed-off-by: Brian Bloniarz <brian.bloniarz@gmail.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: ice1712 - working M-Audio Delta 66E supportBrian Bloniarz2010-12-09
| | | | | | | | | | | | | | | | | Rev. E of the M-Audio Delta 66 is partially supported (commit ef2cd2ccad66b4aba518eca7514eface267ee0f3), but the layout of the GPIO pins was still unclear. This patch adds the GPIO definitions so that communication to the CS8247 & 2x AK4524 works correctly. ALSA bug#3327 has more details; users cap & jhunt report there that the GPIO wiring is similar to the Digigram VX442 (chip select: pin 4 = CS8427, pin 5 = AK4524 #0, pin 6 = AK4524 #1). There has been a lot of conflicting information in the bug, but given these definitions, my Delta 66E works; I tested analog in&out at 44.1kHz & 96kHz, analog gain settings, S/PDIF clock sync, and S/PDIF in&out at 44.1kHz. Signed-off-by: Brian Bloniarz <brian.bloniarz@gmail.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* sound: Remove unnecessary casts of private_dataJoe Perches2010-09-07
| | | | | Signed-off-by: Joe Perches <joe@perches.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: ice1712: Add support for Edirol DA-2496Garnet MacPhee2010-08-23
| | | | | | | | | | | | | | This device is similar to the M-Audio Delta 1010LT in that it uses the AK4524VF ADC/DAC, but it does not use the CS8427 for SPDIF. The SPDIF appears to be set up correctly, but I am not able to test it as I do not have any devices that use it. This patch makes the ADC/DAC's and the hardware mixer visible to apps such as alsamixer and envy24control. Signed-off-by: Garnet MacPhee <dhubsith@comcast.net> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* Merge branch 'topic/core-cleanup' into for-linusTakashi Iwai2010-05-20
|\
| * Merge branch 'topic/bkl' into topic/core-cleanupTakashi Iwai2010-04-13
| |\
| | * ALSA: aureon - Patch for suspend/resume for Terratec Aureon cards.Bernhard Urban2010-03-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add proper suspend/resume code for Terratec Aureon cards. Based on ice1724 suspend/resume work of Igor Chernyshev. Fixes bug https://bugtrack.alsa-project.org/alsa-bug/view.php?id=4944 Tested on linux-2.6.32.9 Signed-off-by: Bernhard Urban <lewurm@gmail.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | | ALSA: ice1724 - Fix ESI Maya44 capture source controlTakashi Iwai2010-05-12
|/ / | | | | | | | | | | | | | | | | | | The capture source control of maya44 was wrongly coded with the bit shift instead of the bit mask. Also, the slot for line-in was wrongly assigned (slot 5 instead of 4). Reported-by: Alex Chernyshoff <alexdsp@gmail.com> Cc: <stable@kernel.org> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* / include cleanup: Update gfp.h and slab.h includes to prepare for breaking ↵Tejun Heo2010-03-30
|/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | implicit slab.h inclusion from percpu.h percpu.h is included by sched.h and module.h and thus ends up being included when building most .c files. percpu.h includes slab.h which in turn includes gfp.h making everything defined by the two files universally available and complicating inclusion dependencies. percpu.h -> slab.h dependency is about to be removed. Prepare for this change by updating users of gfp and slab facilities include those headers directly instead of assuming availability. As this conversion needs to touch large number of source files, the following script is used as the basis of conversion. http://userweb.kernel.org/~tj/misc/slabh-sweep.py The script does the followings. * Scan files for gfp and slab usages and update includes such that only the necessary includes are there. ie. if only gfp is used, gfp.h, if slab is used, slab.h. * When the script inserts a new include, it looks at the include blocks and try to put the new include such that its order conforms to its surrounding. It's put in the include block which contains core kernel includes, in the same order that the rest are ordered - alphabetical, Christmas tree, rev-Xmas-tree or at the end if there doesn't seem to be any matching order. * If the script can't find a place to put a new include (mostly because the file doesn't have fitting include block), it prints out an error message indicating which .h file needs to be added to the file. The conversion was done in the following steps. 1. The initial automatic conversion of all .c files updated slightly over 4000 files, deleting around 700 includes and adding ~480 gfp.h and ~3000 slab.h inclusions. The script emitted errors for ~400 files. 2. Each error was manually checked. Some didn't need the inclusion, some needed manual addition while adding it to implementation .h or embedding .c file was more appropriate for others. This step added inclusions to around 150 files. 3. The script was run again and the output was compared to the edits from #2 to make sure no file was left behind. 4. Several build tests were done and a couple of problems were fixed. e.g. lib/decompress_*.c used malloc/free() wrappers around slab APIs requiring slab.h to be added manually. 5. The script was run on all .h files but without automatically editing them as sprinkling gfp.h and slab.h inclusions around .h files could easily lead to inclusion dependency hell. Most gfp.h inclusion directives were ignored as stuff from gfp.h was usually wildly available and often used in preprocessor macros. Each slab.h inclusion directive was examined and added manually as necessary. 6. percpu.h was updated not to include slab.h. 7. Build test were done on the following configurations and failures were fixed. CONFIG_GCOV_KERNEL was turned off for all tests (as my distributed build env didn't work with gcov compiles) and a few more options had to be turned off depending on archs to make things build (like ipr on powerpc/64 which failed due to missing writeq). * x86 and x86_64 UP and SMP allmodconfig and a custom test config. * powerpc and powerpc64 SMP allmodconfig * sparc and sparc64 SMP allmodconfig * ia64 SMP allmodconfig * s390 SMP allmodconfig * alpha SMP allmodconfig * um on x86_64 SMP allmodconfig 8. percpu.h modifications were reverted so that it could be applied as a separate patch and serve as bisection point. Given the fact that I had only a couple of failures from tests on step 6, I'm fairly confident about the coverage of this conversion patch. If there is a breakage, it's likely to be something in one of the arch headers which should be easily discoverable easily on most builds of the specific arch. Signed-off-by: Tejun Heo <tj@kernel.org> Guess-its-ok-by: Christoph Lameter <cl@linux-foundation.org> Cc: Ingo Molnar <mingo@redhat.com> Cc: Lee Schermerhorn <Lee.Schermerhorn@hp.com>
* Merge branch 'topic/misc' of ↵Jaroslav Kysela2010-02-16
|\ | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6 into devel
| * sound: use DEFINE_PCI_DEVICE_TABLEAlexey Dobriyan2010-02-09
| | | | | | | | | | | | | | | | | | Use DEFINE_PCI_DEVICE_TABLE() to make PCI device ids go to .devinit.rodata section, so they can be discarded in some cases, and make them const. Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| * ALSA: ice1712: fix: lock samplerate when samplerate locking is enabledSebastien Alaiwan2010-02-05
| | | | | | | | | | | | | | | | | | | | | | | | I found that the sampling rate locking setting of the ice1712 sound driver was only half-respected : when the driver was locked to, let's say, 44100Hz, and a usermode app was requesting 48000Hz playback, the request was succesful although the soundcard would continue to run at 44100Hz. Here's a patch that will make those requests to fail. Signed-off-by: Sebastien Alaiwan <sebastien.alaiwan@gmail.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | ALSA: ice1724 - aureon - fix wm8770 volume offsetJaroslav Kysela2010-02-05
|/ | | | | | | | The volume register is from 0..0x7f and 0..0x1a range is mute. Also, fix mute combining in wm_vol_put(). The wrong behaviour was noticed by Peter Christensen. Signed-off-by: Jaroslav Kysela <perex@perex.cz>
* Merge branch 'for-linus' of ↵Linus Torvalds2009-12-09
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6: ALSA: ice1724 - aureon - modify WM8770 Master & DAC volume ALSA: hda/realtek: quirk for D945GCLF2 mainboard ALSA: hda - Terradici HDA controllers does not support 64-bit mode ALSA: document: Add direct git link to grub hda-analyzer ALSA: radio/sound/miro: fix build, cleanup depends/selects ALSA: hda - Generalize EAPD inversion check in patch_analog.c ASoC: Wrong variable returned on error ALSA: snd-usb-us122l: add product IDs of US-122MKII and US-144MKII ALSA: hda - Exclude unusable ADCs for ALC88x ALSA: hda - Add missing Line-Out and PCM switches as slave ALSA: hda - iMac 9,1 sound patch. ALSA: opti93x: set MC indirect registers base from PnP data
| * ALSA: ice1724 - aureon - modify WM8770 Master & DAC volumeJaroslav Kysela2009-12-09
| | | | | | | | | | | | | | | | | | | | | | | | The volume levels in original implementation are incorrect and does not match the dB scale. The real range is linear (in the sense of the dB scale) from 0dB to -100dB. Remove logaritmic table and make all volumes from range 0dB..100dB. The tests are in RedHat's bugzilla #540817. Signed-off-by: Jaroslav Kysela <perex@perex.cz> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | Merge branch 'for-linus' of ↵Linus Torvalds2009-12-09
|\ \ | |/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: (42 commits) tree-wide: fix misspelling of "definition" in comments reiserfs: fix misspelling of "journaled" doc: Fix a typo in slub.txt. inotify: remove superfluous return code check hdlc: spelling fix in find_pvc() comment doc: fix regulator docs cut-and-pasteism mtd: Fix comment in Kconfig doc: Fix IRQ chip docs tree-wide: fix assorted typos all over the place drivers/ata/libata-sff.c: comment spelling fixes fix typos/grammos in Documentation/edac.txt sysctl: add missing comments fs/debugfs/inode.c: fix comment typos sgivwfb: Make use of ARRAY_SIZE. sky2: fix sky2_link_down copy/paste comment error tree-wide: fix typos "couter" -> "counter" tree-wide: fix typos "offest" -> "offset" fix kerneldoc for set_irq_msi() spidev: fix double "of of" in comment comment typo fix: sybsystem -> subsystem ...
| * Merge branch 'for-next' into for-linusJiri Kosina2009-12-07
| |\ | | | | | | | | | | | | | | | Conflicts: kernel/irq/chip.c
| | * tree-wide: fix a very frequent spelling mistakeDirk Hohndel2009-11-09
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | something-bility is spelled as something-blity so a grep for 'blit' would find these lines this is so trivial that I didn't split it by subsystem / copy additional maintainers - all changes are to comments The only purpose is to get fewer false positives when grepping around the kernel sources. Signed-off-by: Dirk Hohndel <hohndel@infradead.org> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
* | | Merge branch 'topic/hda' into for-linusTakashi Iwai2009-12-04
|\ \ \
| * \ \ Merge branch 'topic/ice1724-quartet' into topic/hdaTakashi Iwai2009-12-01
| |\ \ \ | | |_|/ | |/| |
| | * | ALSA: ice1724 - Infrasonic Quartet supportPavel Hofman2009-09-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * three external clock types * all controls supported Signed-off-by: Pavel Hofman <pavel.hofman@ivitera.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| | * | ALSA: ice1724 - Support for multiple external clock typesPavel Hofman2009-09-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Support for customization of the external clock names * Adding hooks to playback_pro_open and capture_pro_open, allowing e.g. limiting available stream rates to a single value when the external clock rate is detected Signed-off-by: Pavel Hofman <pavel.hofman@ivitera.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| | * | ALSA: ice1724 - pro-rate-locking makes sense only for internal clock modePavel Hofman2009-09-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * pro-rate-locking applies to internal clock mode only * required rate and current rate are compared for internal clock mode only Signed-off-by: Pavel Hofman <pavel.hofman@ivitera.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| | * | ALSA: ice1724 - adding GPIO routines for mask and directionPavel Hofman2009-09-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | * get/set routines for GPIO mask and direction Signed-off-by: Pavel Hofman <pavel.hofman@ivitera.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| | * | ALSA: ak4620 support, codec regs listed in procPavel Hofman2009-09-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * complete support for ak4620 * codec regs listed in proc for all codecs/chips * adding total regs for each codec * fixing nb. of steps in input attenuation controls Signed-off-by: Pavel Hofman <pavel.hofman@ivitera.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | | | Merge branch 'fix/misc' into topic/miscTakashi Iwai2009-12-01
|\ \ \ \ | | |_|/ | |/| |
| * | | ALSA: ice1724 - make some bitfields unsignedDan Carpenter2009-11-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a clean up and doesn't change the behavior. Bit fields should always be unsigned. Otherwise pm_suspend_enabled will be -1 when you want it to be 1. The other bad thing is that the sparse checker will complain 36 times if they aren't unsigned. The other bitfields in that struct are unsigned already. Signed-off-by: Dan Carpenter <error27@gmail.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | | | Merge branch 'fix/misc' into topic/miscTakashi Iwai2009-11-14
|\| | |
| * | | ALSA: ice1724 - Fix section mismatch in prodigy_hd2_resume()Takashi Iwai2009-11-14
| |/ / | | | | | | | | | | | | | | | Remove invlid __devinit prefix from the suspend callback. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* / / ALSA: ice1724 - Patch for suspend/resume for ESI Juli@Aleksey Kunitskiy2009-11-14
|/ / | | | | | | | | | | | | | | | | | | Add proper suspend/resume code for Juli@ cards. Based on ice1724 suspend/resume work of Igor Chernyshev. Fixes bug https://bugtrack.alsa-project.org/alsa-bug/view.php?id=4413 Tested on linux-2.6.31.6 Signed-off-by: Aleksey Kunitskiy <alexey.kv@gmail.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | ALSA: ice1724 - Make call to set hw params succeed on ESI Juli@David Henningsson2009-10-11
| | | | | | | | | | | | | | | | | | | | If two streams are started immediately after one another (such as a playback and a recording stream), the call to set hw params fails with EBUSY. This patch makes the call succeed, so playback and recording will work properly. Signed-off-by: David Henningsson <launchpad.web@epost.diwic.se> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | ALSA: ice1724: Fix surround on Chaintech AV-710Robert Hancock2009-10-10
| | | | | | | | | | | | | | | | | | | | | | | | Fix the num_total_dacs setting for Chaintech AV710. The existing comment that only PSDOUT0 is connected is correct, but since the card is using packed AC97 mode to send 6 channels to the codec, num_total_dacs should be set to 6 and not 2. This allows 6-channel surround to work. Also clarify a comment regarding the additional WM8728 codec on this card (it's connected to the SPDIF output and always receives the same data). Signed-off-by: Robert Hancock <hancockrwd@gmail.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | ALSA: ice1724: increase SPDIF and independent stereo buffer sizesRobert Hancock2009-10-08
| | | | | | | | | | | | | | | | | | | | Increase the default and maximum PCM buffer prellocation size for ice1724's SPDIF and independent stereo pair outputs to 256K, which is the hardware's maximum supported size. This allows a reduction in interrupt rate and potentially power usage when an application is not latency-critical. Signed-off-by: Robert Hancock <hancockrwd@gmail.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | ALSA: ICE1712/24 - Change the Multi Track Peak control (level meters) from ↵Pavel Hofman2009-10-08
|/ | | | | | | | | | | | | | | MIXER to PCM type * PLEASE NOTE - this change requires the corresponding update of envy24control for ice1712 - kind of an ABI change. * The "Multi Track Peak" control is read-only level meters indicator. * The control is VERY confusing to most users since it is currently displayed in regular mixers. E.g. alsamixer ignores its read-only status and allows changing the levels with keys which makes no sense. Signed-off-by: Pavel Hofman <pavel.hofman@ivitera.com> Acked-by: Jaroslav Kysela <perex@perex.cz> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* Merge branch 'topic/ice1724-pm' into for-linusTakashi Iwai2009-09-10
|\ | | | | | | | | | | * topic/ice1724-pm: ALSA: ice1724 - Fix section mismatch ALSA: ice1724 - Patch for suspend/resume for Audiotrak Prodigy HD2
| * ALSA: ice1724 - Fix section mismatchTakashi Iwai2009-07-02
| | | | | | | | | | | | | | Now snd_vt1724_chip_reset() is used in the resume callback, thus it cannot be __devinit. Signed-off-by: Takashi Iwai <tiwai@suse.de>
| * ALSA: ice1724 - Patch for suspend/resume for Audiotrak Prodigy HD2Igor Chernyshev2009-06-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I've built a small HTPC and had to add suspend/resume support in ice1724 driver. There seem to be 3 existing bugs related to that: https://bugtrack.alsa-project.org/alsa-bug/view.php?id=4413 https://bugtrack.alsa-project.org/alsa-bug/view.php?id=3748 https://bugtrack.alsa-project.org/alsa-bug/view.php?id=2314 Due to hardware (un)availability, I only enabled the fix for Audiotrak Prodigy HD2 card, which is installed in my HTPC. However, most of my code should be reusable in the future on other ice1724-based cards as well (as long as people add card-specific peices of code). The fix is currently based on ALSA 1.0.20 and works on my MythBuntu 9.04 HTPC (using 2.6.28-11 kernel). Signed-off-by: Igor Chernyshev <igor.ch75+alsa at gmail.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | sound: Use PCI_VDEVICEJoe Perches2009-06-25
|/ | | | | Signed-off-by: Joe Perches <joe@perches.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: ice1724 - Add ESI Maya44 supportTakashi Iwai2009-05-06
| | | | | | Added the support for ESI Maya44 board to ice1724 driver. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: ice1724 - Allow spec driver to create own routing controlsTakashi Iwai2009-05-06
| | | | | | | | Added a new flag, own_routing, to allow spec drivers to create own routing controls. Also, the basic get/put calls are changed to be external for later use by maya44 driver. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: ice1724 - Add PCI postint to reset sequenceTakashi Iwai2009-05-06
| | | | | | Add the PCI posting to ensure the reset sequence in snd_vt1724_chip_reset(). Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: ice1724 - Clean up definitions of DMA recordsTakashi Iwai2009-05-06
| | | | | | Rename some vt1724_pcm_reg records to more generic and consistent ones. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: ice1724 - Check error in set_rate functionTakashi Iwai2009-05-06
| | | | | | | The set_rate might return error but the current code doesn't check it. This patch adds a proper error check. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* dma-mapping: replace all DMA_28BIT_MASK macro with DMA_BIT_MASK(28)Yang Hongyang2009-04-07
| | | | | | | | Replace all DMA_28BIT_MASK macro with DMA_BIT_MASK(28) Signed-off-by: Yang Hongyang<yanghy@cn.fujitsu.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* Merge branch 'topic/ice' into for-linusTakashi Iwai2009-03-23
|\
| * ALSA: Add missing KERN_* prefix to printk in sound/pci/ice1712Takashi Iwai2009-02-05
| | | | | | | | Signed-off-by: Takashi Iwai <tiwai@suse.de>
| * ALSA: ice1724 - Dynamic MIDI TX irq controlTakashi Iwai2009-02-02
| | | | | | | | | | | | | | | | | | MIDI_TX IRQ seems always pending when any bytes on FIFO is available. Thus, it's better to enable MPU_TX only when any bytres are really stored in the substream, and disables immediately when the queue becomes empty. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | ALSA: Convert to snd_card_create() in sound/pci/*Takashi Iwai2009-01-12
|/ | | | | | | Convert from snd_card_new() to the new snd_card_create() function in sound/pci/*. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: ice1724 - Fix a typo in IEC958 PCM nameAlan Horstmann2009-01-05
| | | | | | | Fix trivial name string typo as reported in bug 2552. Signed-off-by: Alan Horstmann <gineera@aspect135.co.uk> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* Merge branch 'topic/fix/misc' into topic/miscTakashi Iwai2008-11-07
|\