Re: ALSA: control - add layer registration routines
Dne 31. 03. 21 v 17:17 Colin Ian King napsal(a): > Hi, > > Static analysis on linux-next with Coverity has detected a potential > issue in the following commit: > > commit 3f0638a0333bfdd0549985aa620f2ab69737af47 > Author: Jaroslav Kysela > Date: Wed Mar 17 18:29:41 2021 +0100 > > ALSA: control - add layer registration routines > > The static analysis is as follows: > > 2072 void snd_ctl_disconnect_layer(struct snd_ctl_layer_ops *lops) > 2073 { > 2074struct snd_ctl_layer_ops *lops2, *prev_lops2; > 2075 > 2076down_write(&snd_ctl_layer_rwsem); > > assignment: Assigning: prev_lops2 = NULL. > > 2077for (lops2 = snd_ctl_layer, prev_lops2 = NULL; lops2; lops2 > = lops2->next) > 2078if (lops2 == lops) { > > null: At condition prev_lops2, the value of prev_lops2 must be NULL. > dead_error_condition: The condition !prev_lops2 must be true. > > 2079if (!prev_lops2) > 2080snd_ctl_layer = lops->next; > 2081else > > 'Constant' variable guards dead code (DEADCODE) dead_error_line: > Execution cannot reach this statement: prev_lops2->next = lops->next;. > Local variable prev_lops2 is assigned only once, to a constant > value, making it effectively constant throughout its scope. If this is > not the intent, examine the logic to see if there is a missing > assignment that would make prev_lops2 not remain constant. > > 2082prev_lops2->next = lops->next; > 2083break; > 2084} > 2085up_write(&snd_ctl_layer_rwsem); > 2086 } > > I couldn't quite figure out the original intent of the prev_lops use, so > I'd thought I'd report this issue as the code does look incorrect. Thank you. I submitted the fix here: https://lore.kernel.org/alsa-devel/20210331180702.663489-1-pe...@perex.cz/ Jaroslav -- Jaroslav Kysela Linux Sound Maintainer; ALSA Project; Red Hat, Inc.
Re: [PATCH v4 2/2] ASoC: rt715:add micmute led state control supports
Dne 25. 03. 21 v 9:19 Yuan, Perry napsal(a): > Hi Jaroslav: > >> -Original Message----- >> From: Jaroslav Kysela >> Sent: Monday, March 22, 2021 10:38 PM >> To: Yuan, Perry; Mark Brown; pierre-louis.boss...@linux.intel.com; >> Limonciello, Mario; hdego...@redhat.com >> Cc: po...@protonmail.com; oder_ch...@realtek.com; ti...@suse.com; >> mgr...@linux.intel.com; lgirdw...@gmail.com; alsa-devel@alsa- >> project.org; linux-kernel@vger.kernel.org; platform-driver- >> x...@vger.kernel.org >> Subject: Re: [PATCH v4 2/2] ASoC: rt715:add micmute led state control >> supports >> >> >> [EXTERNAL EMAIL] >> >> Dne 22. 03. 21 v 10:25 Yuan, Perry napsal(a): >>> Hi Mark: >>> >>>> -Original Message- >>>> From: Mark Brown >>>> Sent: Tuesday, March 9, 2021 1:24 AM >>>> To: Yuan, Perry >>>> Cc: po...@protonmail.com; pierre-louis.boss...@linux.intel.com; >>>> oder_ch...@realtek.com; pe...@perex.cz; ti...@suse.com; >>>> hdego...@redhat.com; mgr...@linux.intel.com; Limonciello, Mario; >>>> lgirdw...@gmail.com; alsa-de...@alsa-project.org; linux- >>>> ker...@vger.kernel.org; platform-driver-...@vger.kernel.org >>>> Subject: Re: [PATCH v4 2/2] ASoC: rt715:add micmute led state control >>>> supports >>>> >>>> On Mon, Mar 01, 2021 at 05:38:34PM +0800, Perry Yuan wrote: >>>> >>>>> + /* Micmute LED state changed by muted/unmute switch */ >>>>> + if (mc->invert) { >>>>> + if (ucontrol->value.integer.value[0] || ucontrol- >>>>> value.integer.value[1]) { >>>>> + micmute_led = LED_OFF; >>>>> + } else { >>>>> + micmute_led = LED_ON; >>>>> + } >>>>> + ledtrig_audio_set(LED_AUDIO_MICMUTE, micmute_led); >>>>> + } >>>> >>>> These conditionals on inversion seem weird and counterintuitive. If >>>> we're going with this approach it would probably be clearer to define >>>> a custom operation for the affected controls that wraps the standard >>>> one and adds the LED setting rather than keying off invert like this. >>> >>> Currently the sof soundwire driver has no generic led control yet. >>> This patch can handle the led control needs for MIC mute LED, definitely >> the patch is a short term solution. >>> There is a feature request discussion when we started to implement this >> solution. >>> https://github.com/thesofproject/linux/issues/2496#issuecomment- >> 713892 >>> 620 >>> >>> The workable way for now is that we put the LED mute control to the >> codec driver. >>> When there is new and full sound LED solution implemented, this part >> will be also optimized. >>> The Hardware privacy feature needs this patch to handle the Mic mute >> led state change. >>> Before that full solution ready in kernel, could we take this as short term >> solution? >> >> Perry, it's about the machine detection. Your code is too much generic even >> for the top-level LED trigger implementation. We need an extra check, if the >> proper LED's are really controlled on the specific hardware. Other hardware >> may use RT715 for a different purpose. Use DMI / ACPI checks to detect this >> hardware and don't misuse the inversion flag to enable this code. >> >> Jaroslav >> >> -- >> Jaroslav Kysela >> Linux Sound Maintainer; ALSA Project; Red Hat, Inc. > > In the V2 patch, I have added the machine detection, but some guys thought > that I should remove the detection for it is harmless to other system > So I remove it in the following patches. > > Is it Ok for you if I add below detection of Dell system which enable the > privacy feature ? > > Then the mute led control will be called normally and Mic mute will be > successfully configured. > There is no any impaction to other systems. > > > +#if IS_ENABLED(CONFIG_DELL_PRIVACY) > . > +#endif I think that you misunderstood the request. It's about the runtime detection not about the compile time detection. An example for DMI check is in sound/soc/intel/boards/sof_sdw.c / sof_sdw_quirk_table . Jaroslav -- Jaroslav Kysela Linux Sound Maintainer; ALSA Project; Red Hat, Inc.
Re: [RFC PATCH 0/3] Separate BE DAI HW constraints from FE ones
Dne 23. 03. 21 v 12:43 Codrin Ciubotariu napsal(a): > To achieve this, the first thing needed is to detect whether a HW > constraint rule is enforced by a FE or a BE DAI. This means that > snd_pcm_hw_rule_add() needs to be able to differentiate between the two > type of DAIs. For this, the runtime pointer to struct snd_pcm_runtime is > replaced with a pointer to struct snd_pcm_substream, to be able to reach > substream->pcm->internal to differentiate between FE and BE DAIs. Think about other not-so-invasive solution. What about to use 'runtime->private_data' (struct snd_soc_pcm_runtime *) to determine FE / BE? Jaroslav -- Jaroslav Kysela Linux Sound Maintainer; ALSA Project; Red Hat, Inc.
Re: [PATCH v4 2/2] ASoC: rt715:add micmute led state control supports
Dne 22. 03. 21 v 10:25 Yuan, Perry napsal(a): > Hi Mark: > >> -Original Message- >> From: Mark Brown >> Sent: Tuesday, March 9, 2021 1:24 AM >> To: Yuan, Perry >> Cc: po...@protonmail.com; pierre-louis.boss...@linux.intel.com; >> oder_ch...@realtek.com; pe...@perex.cz; ti...@suse.com; >> hdego...@redhat.com; mgr...@linux.intel.com; Limonciello, Mario; >> lgirdw...@gmail.com; alsa-de...@alsa-project.org; linux- >> ker...@vger.kernel.org; platform-driver-...@vger.kernel.org >> Subject: Re: [PATCH v4 2/2] ASoC: rt715:add micmute led state control >> supports >> >> On Mon, Mar 01, 2021 at 05:38:34PM +0800, Perry Yuan wrote: >> >>> + /* Micmute LED state changed by muted/unmute switch */ >>> + if (mc->invert) { >>> + if (ucontrol->value.integer.value[0] || ucontrol- >>> value.integer.value[1]) { >>> + micmute_led = LED_OFF; >>> + } else { >>> + micmute_led = LED_ON; >>> + } >>> + ledtrig_audio_set(LED_AUDIO_MICMUTE, micmute_led); >>> + } >> >> These conditionals on inversion seem weird and counterintuitive. If we're >> going with this approach it would probably be clearer to define a custom >> operation for the affected controls that wraps the standard one and adds the >> LED setting rather than keying off invert like this. > > Currently the sof soundwire driver has no generic led control yet. > This patch can handle the led control needs for MIC mute LED, definitely the > patch is a short term solution. > There is a feature request discussion when we started to implement this > solution. > https://github.com/thesofproject/linux/issues/2496#issuecomment-713892620 > > The workable way for now is that we put the LED mute control to the codec > driver. > When there is new and full sound LED solution implemented, this part will be > also optimized. > The Hardware privacy feature needs this patch to handle the Mic mute led > state change. > Before that full solution ready in kernel, could we take this as short term > solution? Perry, it's about the machine detection. Your code is too much generic even for the top-level LED trigger implementation. We need an extra check, if the proper LED's are really controlled on the specific hardware. Other hardware may use RT715 for a different purpose. Use DMI / ACPI checks to detect this hardware and don't misuse the inversion flag to enable this code. Jaroslav -- Jaroslav Kysela Linux Sound Maintainer; ALSA Project; Red Hat, Inc.
Re: No sound cards detected on Kabylake laptops after upgrade to kernel 5.8
Dne 11. 03. 21 v 11:40 Amadeusz Sławiński napsal(a): > On 3/11/2021 11:24 AM, Jaroslav Kysela wrote: >> Dne 11. 03. 21 v 6:50 Chris Chiu napsal(a): >>> On Tue, Mar 9, 2021 at 11:29 PM Cezary Rojewski >>> wrote: >>>> >>>> On 2021-03-09 1:19 PM, Chris Chiu wrote: >>>>> Hi Guys, >>>>> We have received reports that on some Kabylake laptops (Acer Swift >>>>> SF314-54/55 and Lenovo Yoga C930...etc), all sound cards no longer be >>>>> detected after upgrade to kernel later than 5.8. These laptops have >>>>> one thing in common, all of them have Realtek audio codec and connect >>>>> the internal microphone to DMIC of the Intel SST controller either >>>>> [8086:9d71] or [8086:9dc8]. Please refer to >>>>> https://bugzilla.kernel.org/show_bug.cgi?id=201251#c246 and >>>>> https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1915117. >>>>> >>>>> From the dmesg from kernel 5.8, the sound related parts only show >>>>> as follows but the expected snd_hda_codec_realtek and the snd_soc_skl >>>>> are not even loaded then. >>>>> [ 13.357495] snd_hda_intel :00:1f.3: DSP detected with PCI >>>>> class/subclass/prog-if info 0x040100 >>>>> [ 13.357500] snd_hda_intel :00:1f.3: Digital mics found on >>>>> Skylake+ platform, using SST driver >>>>> >>>>> Building the kernel with the CONFIG_SND_SOC_INTEL_KBL removed can >>>>> load the snd_hda_codec_realtek successfully and the pulseaudio and >>>>> alsa-utils can detect the sound cards again. The result of bisecting >>>>> between kernel 5.4 and 5.8 also get similar result, reverting the >>>>> commit "ALSA: hda: Allow SST driver on SKL and KBL platforms with >>>>> DMIC" can fix the issue. I tried to generate the required firmware for >>>>> snd_soc_skl but it did not help. Please refer to what I did in >>>>> https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1915117/comments/14 >>>>> and >>>>> https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1915117/comments/18. >>>>> >>>>> Since the skl_hda_dsp_generic-tplg.bin and dfw_sst.bin are not in >>>>> the linux-firmware. The Intel SST support for Skylake family is not >>>>> yet complete. Can we simply revert the "ALSA: hda: Allow SST driver on >>>>> SKL and KBL platforms with DMIC" in the current stage and wait for SOF >>>>> support for Skylake family? Or please suggest a better solution for >>>>> this. Thanks >>>>> >>>>> Chris >>>>> >>>> >>>> Hello Chris, >>>> >>>> Guide: "Linux: HDA+DMIC with skylake driver" [1] should help >>>> understanding history behind the problem as well as fixing it. >>>> >>>> Upstream skylake driver - snd_soc_skl - is intended to support HDA DSP + >>>> DMIC configuration via means of snd_soc_skl_hda_dsp machine board >>>> driver. You _may_ switch to legacy HDAudio driver - snd_hda_intel - >>>> losing DMIC support in the process. To remove any confusion - for >>>> Skylake and Kabylake platforms, snd_soc_skl is your option. >>>> >>>> Now, due to above, I doubt any skylake-related topology has ever been >>>> upstreamed to linux-firmware as a) most boards are I2S-based, these are >>>> used by our clients which we support via separate channel b) hda >>>> dsp+dmic support on linux for missing until early 2020. >>>> >>>> Topologies for most common skylake driver configurations: >>>> - skl/kbl with i2s rt286 >>>> - apl/glk with i2s rt298 >>>> - with hda dsp >>>> can be found in alsa-topology-conf [2]. >>>> >>>> Standard, official tool called 'alsatplg' is capable of compiling these >>>> into binary form which, after being transferred to /lib/firmware/ may be >>>> consumed by the driver during runtime. >>>> I have no problem with providing precompiled binaries to linux-firmware, >>>> if that's what community wants. >>>> >>>> Regards, >>>> Czarek >>>> >>>> >>> >>> I think the guild [1] is too complicated for normal users to fix the >>> problem. >>> Given it's not only the internal microphone being affect
Re: No sound cards detected on Kabylake laptops after upgrade to kernel 5.8
Dne 11. 03. 21 v 6:50 Chris Chiu napsal(a): > On Tue, Mar 9, 2021 at 11:29 PM Cezary Rojewski > wrote: >> >> On 2021-03-09 1:19 PM, Chris Chiu wrote: >>> Hi Guys, >>> We have received reports that on some Kabylake laptops (Acer Swift >>> SF314-54/55 and Lenovo Yoga C930...etc), all sound cards no longer be >>> detected after upgrade to kernel later than 5.8. These laptops have >>> one thing in common, all of them have Realtek audio codec and connect >>> the internal microphone to DMIC of the Intel SST controller either >>> [8086:9d71] or [8086:9dc8]. Please refer to >>> https://bugzilla.kernel.org/show_bug.cgi?id=201251#c246 and >>> https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1915117. >>> >>> From the dmesg from kernel 5.8, the sound related parts only show >>> as follows but the expected snd_hda_codec_realtek and the snd_soc_skl >>> are not even loaded then. >>> [ 13.357495] snd_hda_intel :00:1f.3: DSP detected with PCI >>> class/subclass/prog-if info 0x040100 >>> [ 13.357500] snd_hda_intel :00:1f.3: Digital mics found on >>> Skylake+ platform, using SST driver >>> >>> Building the kernel with the CONFIG_SND_SOC_INTEL_KBL removed can >>> load the snd_hda_codec_realtek successfully and the pulseaudio and >>> alsa-utils can detect the sound cards again. The result of bisecting >>> between kernel 5.4 and 5.8 also get similar result, reverting the >>> commit "ALSA: hda: Allow SST driver on SKL and KBL platforms with >>> DMIC" can fix the issue. I tried to generate the required firmware for >>> snd_soc_skl but it did not help. Please refer to what I did in >>> https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1915117/comments/14 >>> and >>> https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1915117/comments/18. >>> >>> Since the skl_hda_dsp_generic-tplg.bin and dfw_sst.bin are not in >>> the linux-firmware. The Intel SST support for Skylake family is not >>> yet complete. Can we simply revert the "ALSA: hda: Allow SST driver on >>> SKL and KBL platforms with DMIC" in the current stage and wait for SOF >>> support for Skylake family? Or please suggest a better solution for >>> this. Thanks >>> >>> Chris >>> >> >> Hello Chris, >> >> Guide: "Linux: HDA+DMIC with skylake driver" [1] should help >> understanding history behind the problem as well as fixing it. >> >> Upstream skylake driver - snd_soc_skl - is intended to support HDA DSP + >> DMIC configuration via means of snd_soc_skl_hda_dsp machine board >> driver. You _may_ switch to legacy HDAudio driver - snd_hda_intel - >> losing DMIC support in the process. To remove any confusion - for >> Skylake and Kabylake platforms, snd_soc_skl is your option. >> >> Now, due to above, I doubt any skylake-related topology has ever been >> upstreamed to linux-firmware as a) most boards are I2S-based, these are >> used by our clients which we support via separate channel b) hda >> dsp+dmic support on linux for missing until early 2020. >> >> Topologies for most common skylake driver configurations: >> - skl/kbl with i2s rt286 >> - apl/glk with i2s rt298 >> - with hda dsp >> can be found in alsa-topology-conf [2]. >> >> Standard, official tool called 'alsatplg' is capable of compiling these >> into binary form which, after being transferred to /lib/firmware/ may be >> consumed by the driver during runtime. >> I have no problem with providing precompiled binaries to linux-firmware, >> if that's what community wants. >> >> Regards, >> Czarek >> >> > > I think the guild [1] is too complicated for normal users to fix the problem. > Given it's not only the internal microphone being affected, it's no sound > devices being created at all so no audio functions can work after kernel 5.8. > > Is there any potential problem to built-in the " with hda dsp" > precompiled > binary in linux-firmware? How do you distribute the SOF firmware? I'm going to include those binary topology files to the SOF firmware package for Fedora. Perhaps, you may follow this. Jaroslav > > Chris > >> [1]: https://gist.github.com/crojewsk/4e6382bfb0dbfaaf60513174211f29cb >> [2]: https://github.com/alsa-project/alsa-topology-conf/tree/master/topology -- Jaroslav Kysela Linux Sound Maintainer; ALSA Project; Red Hat, Inc.
Re: [PATCH v3 3/3] ASoC: rt715:add micmute led state control supports
Dne 14. 02. 21 v 7:43 Perry Yuan napsal(a): >>> @@ -287,6 +291,18 @@ static int rt715_sdca_put_volsw(struct snd_kcontrol >>> *kcontrol, >>> return err; >>> } >>> >>> +#if IS_ENABLED(CONFIG_DELL_PRIVACY) >>> + /* dell privacy LED trigger state changed by muted/unmute switch */ >>> + if (mc->invert) { >>> + if (ucontrol->value.integer.value[0] || >>> ucontrol->value.integer.value[1]) { >>> + rt715->micmute_led = LED_OFF; >>> + } else { >>> + rt715->micmute_led = LED_ON; >>> + } >>> + ledtrig_audio_set(LED_AUDIO_MICMUTE, rt715->micmute_led); >>> + } >>> +#endif >>> + My question is, how do we know that the rt715 codec has connected internal microphone to this input? I believe that this should be covered in the machine specific code (runtime check), not in the codec code. #if CONFIG is not sufficient here. > I have moved this part code to the local definition of > rt715_set_amp_gain_put and removed from rt715_priv. > new code will be like this in V4. > > @@ -88,6 +89,7 @@ static int rt715_set_amp_gain_put(struct snd_kcontrol > *kcontrol, > RT715_SET_GAIN_MIX_ADC2_L}; > unsigned int addr_h, addr_l, val_h, val_ll, val_lr; > unsigned int read_ll, read_rl, i, j, loop_cnt; > + bool micmute_led; > The whole LED trigger mechanism for the sound is covered in my LED generic code : https://lore.kernel.org/alsa-devel/2021021400.1131020-1-pe...@perex.cz/ Jaroslav -- Jaroslav Kysela Linux Sound Maintainer; ALSA Project; Red Hat, Inc.
Re: [PATCH] ALSA: hda: fix SND_INTEL_DSP_CONFIG dependency
Dne 03. 01. 21 v 14:52 Arnd Bergmann napsal(a): > From: Arnd Bergmann > > The sof-pci-dev driver fails to link when built into the kernel > and CONFIG_SND_INTEL_DSP_CONFIG is set to =m: > > arm-linux-gnueabi-ld: sound/soc/sof/sof-pci-dev.o: in function > `sof_pci_probe': > sof-pci-dev.c:(.text+0x1c): undefined reference to > `snd_intel_dsp_driver_probe' > > All other drivers using this interface already use a 'select > SND_INTEL_DSP_CONFIG' statement to force the it to be present, so it > seems reasonable to do the same here. > > The stub implementation in the header makes the problem harder to find, > as it avoids the link error when SND_INTEL_DSP_CONFIG is completely > disabled, without any obvious upsides. Remove these stubs to make it > clearer that the driver is in fact needed here. > > Fixes: 82d9d54a6c0e ("ALSA: hda: add Intel DSP configuration / probe code") > Signed-off-by: Arnd Bergmann > --- > include/sound/intel-dsp-config.h | 17 - > sound/soc/sof/Kconfig| 2 ++ > 2 files changed, 2 insertions(+), 17 deletions(-) > > diff --git a/include/sound/intel-dsp-config.h > b/include/sound/intel-dsp-config.h > index d4609077c258..94667e870029 100644 > --- a/include/sound/intel-dsp-config.h > +++ b/include/sound/intel-dsp-config.h > @@ -18,24 +18,7 @@ enum { > SND_INTEL_DSP_DRIVER_LAST = SND_INTEL_DSP_DRIVER_SOF > }; > > -#if IS_ENABLED(CONFIG_SND_INTEL_DSP_CONFIG) The SOF drivers selects the DSP config code only when required (for specific platforms - see sound/soc/sof/intel/Kconfig). It seems that the above if should be modified as: #if IS_BUILDIN(CONFIG_SND_INTEL_DSP_CONFIG) || (defined(MODULE) && IS_MODULE(CONFIG_SND_INTEL_DSP_CONFIG)) So the buildin drivers which do not require the DSP config probe can be compiled without this dependency. Jaroslav -- Jaroslav Kysela Linux Sound Maintainer; ALSA Project; Red Hat, Inc.
Re: [PATCH] ASoC: amd:Replacing MSI with Legacy IRQ model
Dne 22. 12. 20 v 12:59 Ravulapati Vishnu vardhan rao napsal(a): > When we try to play and capture simultaneously we see that > interrupts are genrated but our handler is not being acknowledged, > After investigating further more in detail on this issue we found > that IRQ delivery via MSI from the ACP IP is unreliable and so sometimes > interrupt generated will not be acknowledged so MSI model shouldn't be used > and using legacy IRQs will resolve interrupt handling issue. What is the real culprit? It's hw bug? If not, it would be better to fix the PCI code or the irq handler. Jaroslav -- Jaroslav Kysela Linux Sound Maintainer; ALSA Project; Red Hat, Inc.
Re: Context expectations in ALSA
Dne 22. 10. 20 v 11:50 Maxime Ripard napsal(a): > So, I'm not really sure what I'm supposed to do here. The drivers > involved don't appear to be doing anything extraordinary, but the issues > lockdep report are definitely valid too. What are the expectations in > terms of context from ALSA when running the callbacks, and how can we > fix it? I think that you should set the non-atomic flag and wake up the workqueue or so from interrupt handler in this case. Call snd_pcm_period_elapsed() from the workqueue not the interrupt handler context. Jaroslav -- Jaroslav Kysela Linux Sound Maintainer; ALSA Project; Red Hat, Inc.
Re: [PATCH] ALSA: usb-audio: fix spelling mistake "Frequence" -> "Frequency"
Dne 26. 11. 18 v 9:27 Takashi Iwai napsal(a): > On Mon, 26 Nov 2018 00:12:08 +0100, > Colin King wrote: >> >> From: Colin Ian King >> >> There are spelling mistakes in equalizer name fields, fix them. >> >> Signed-off-by: Colin Ian King > > In general, it's not good to rename the control names even if they are > fixes. But these are rather device-specific ones, and they are EQ's, > which aren't too fatal to change, so I took it as-is now. It seems that this patch has not found a way to kernel. It is present in #master at git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound.git, but it is not present in linux-next. Thanks, Jaroslav > > > thanks, > > Takashi > > >> --- >> sound/usb/mixer_us16x08.c | 8 >> 1 file changed, 4 insertions(+), 4 deletions(-) >> >> diff --git a/sound/usb/mixer_us16x08.c b/sound/usb/mixer_us16x08.c >> index 26ed23b18b77..4f594f9552a8 100644 >> --- a/sound/usb/mixer_us16x08.c >> +++ b/sound/usb/mixer_us16x08.c >> @@ -1119,7 +1119,7 @@ static const struct snd_us16x08_control_params >> eq_controls[] = { >> .control_id = SND_US16X08_ID_EQLOWFREQ, >> .type = USB_MIXER_U8, >> .num_channels = 16, >> -.name = "EQ Low Frequence", >> +.name = "EQ Low Frequency", >> }, >> { /* EQ mid low gain */ >> .kcontrol_new = &snd_us16x08_eq_gain_ctl, >> @@ -1133,7 +1133,7 @@ static const struct snd_us16x08_control_params >> eq_controls[] = { >> .control_id = SND_US16X08_ID_EQLOWMIDFREQ, >> .type = USB_MIXER_U8, >> .num_channels = 16, >> -.name = "EQ MidLow Frequence", >> +.name = "EQ MidLow Frequency", >> }, >> { /* EQ mid low Q */ >> .kcontrol_new = &snd_us16x08_eq_mid_width_ctl, >> @@ -1154,7 +1154,7 @@ static const struct snd_us16x08_control_params >> eq_controls[] = { >> .control_id = SND_US16X08_ID_EQHIGHMIDFREQ, >> .type = USB_MIXER_U8, >> .num_channels = 16, >> -.name = "EQ MidHigh Frequence", >> +.name = "EQ MidHigh Frequency", >> }, >> { /* EQ mid high Q */ >> .kcontrol_new = &snd_us16x08_eq_mid_width_ctl, >> @@ -1175,7 +1175,7 @@ static const struct snd_us16x08_control_params >> eq_controls[] = { >> .control_id = SND_US16X08_ID_EQHIGHFREQ, >> .type = USB_MIXER_U8, >> .num_channels = 16, >> -.name = "EQ High Frequence", >> +.name = "EQ High Frequency", >> }, >> }; >> >> -- >> 2.19.1 >> >> -- Jaroslav Kysela Linux Sound Maintainer; ALSA Project; Red Hat, Inc.
Re: [PATCH] soundwire: Add generic bandwidth allocation algorithm
Dne 09. 09. 20 v 8:26 Jaroslav Kysela napsal(a): > Dne 08. 09. 20 v 15:15 Bard Liao napsal(a): >> This algorithm computes bus parameters like clock frequency, frame >> shape and port transport parameters based on active stream(s) running >> on the bus. >> >> Developers can also implement their own .compute_params() callback for >> specific resource management algorithm, and set if before calling >> sdw_add_bus_master() >> >> Credits: this patch is based on an earlier internal contribution by >> Vinod Koul, Sanyog Kale, Shreyas Nc and Hardik Shah. All hard-coded >> values were removed from the initial contribution to use BIOS >> information instead. >> >> Signed-off-by: Bard Liao >> --- >> drivers/soundwire/Kconfig | 5 + >> drivers/soundwire/Makefile| 3 + >> drivers/soundwire/bus.c | 6 + >> drivers/soundwire/bus.h | 46 +- >> .../soundwire/generic_bandwidth_allocation.c | 427 ++ >> drivers/soundwire/intel.c | 3 + >> drivers/soundwire/stream.c| 12 + >> include/linux/soundwire/sdw.h | 3 + >> 8 files changed, 503 insertions(+), 2 deletions(-) >> create mode 100644 drivers/soundwire/generic_bandwidth_allocation.c > > I did testing and I've not found any issues. The abstraction looks good. > > Acked-by: Jaroslav Kysela > Vinod, ping This is the last patch which is missing to get the soundwire audio working on some Intel hardware platforms (laptops) which are already on the market. Thank you, Jaroslav -- Jaroslav Kysela Linux Sound Maintainer; ALSA Project; Red Hat, Inc.
Re: [PATCH] soundwire: Add generic bandwidth allocation algorithm
Dne 08. 09. 20 v 15:15 Bard Liao napsal(a): > This algorithm computes bus parameters like clock frequency, frame > shape and port transport parameters based on active stream(s) running > on the bus. > > Developers can also implement their own .compute_params() callback for > specific resource management algorithm, and set if before calling > sdw_add_bus_master() > > Credits: this patch is based on an earlier internal contribution by > Vinod Koul, Sanyog Kale, Shreyas Nc and Hardik Shah. All hard-coded > values were removed from the initial contribution to use BIOS > information instead. > > Signed-off-by: Bard Liao > --- > drivers/soundwire/Kconfig | 5 + > drivers/soundwire/Makefile| 3 + > drivers/soundwire/bus.c | 6 + > drivers/soundwire/bus.h | 46 +- > .../soundwire/generic_bandwidth_allocation.c | 427 ++ > drivers/soundwire/intel.c | 3 + > drivers/soundwire/stream.c| 12 + > include/linux/soundwire/sdw.h | 3 + > 8 files changed, 503 insertions(+), 2 deletions(-) > create mode 100644 drivers/soundwire/generic_bandwidth_allocation.c I did testing and I've not found any issues. The abstraction looks good. Acked-by: Jaroslav Kysela -- Jaroslav Kysela Linux Sound Maintainer; ALSA Project; Red Hat, Inc.
Re: [PATCH 1/7] soundwire: bus: use property to set interrupt masks
Dne 28. 08. 20 v 8:51 Vinod Koul napsal(a): > Hi Mark, > > On 18-08-20, 22:06, Bard Liao wrote: >> From: Pierre-Louis Bossart >> >> Add a slave-level property and program the SCP_INT1_MASK as desired by >> the codec driver. Since there is no DisCo property this has to be an >> implementation-specific firmware property or hard-coded in the driver. >> >> The only functionality change is that implementation-defined >> interrupts are no longer set for amplifiers - those interrupts are >> typically for jack detection or acoustic event detection/hotwording. >> >> Tested-by: Srinivas Kandagatla >> Signed-off-by: Pierre-Louis Bossart >> Reviewed-by: Kai Vehmanen >> Reviewed-by: Guennadi Liakhovetski >> Signed-off-by: Bard Liao >> --- >> drivers/soundwire/bus.c | 12 ++-- >> include/linux/soundwire/sdw.h | 2 ++ >> sound/soc/codecs/max98373-sdw.c | 3 +++ >> sound/soc/codecs/rt1308-sdw.c | 2 ++ >> sound/soc/codecs/rt5682-sdw.c | 4 >> sound/soc/codecs/rt700-sdw.c| 4 >> sound/soc/codecs/rt711-sdw.c| 4 >> sound/soc/codecs/rt715-sdw.c| 4 >> sound/soc/codecs/wsa881x.c | 1 + > > This touches codecs, can you Ack it please Mark, could you ack the ASoC change to accept this patch via the soundwire repo? > > Ideally this should have been split up to header, the codec updates and > finally the bus change! I don't think that the split is ideal in this case. I tested the code and it looks straight enough. Acked-by: Jaroslav Kysela -- Jaroslav Kysela Linux Sound Maintainer; ALSA Project; Red Hat, Inc.
Re: [PATCH 1/7] soundwire: bus: use property to set interrupt masks
Dne 08. 09. 20 v 16:33 Mark Brown napsal(a): > On Tue, Sep 08, 2020 at 02:28:48PM +0200, Jaroslav Kysela wrote: >> Dne 08. 09. 20 v 14:11 Mark Brown napsal(a): > >>> I don't have this patch and since I seem to get copied on quite a lot of >>> soundwire only serieses I just delete them unread mostly. > >> It can be fetched from lore (mbox format): > >> https://lore.kernel.org/alsa-devel/20200818140656.29014-2-yung-chuan.l...@linux.intel.com/raw > > Sure, I can go get stuff from the list archives but my list of things to > go through is in my inbox. > Okay, please, Bard resend this patchset as v2 (with already agreed Acked-by:) otherwise it won't be applied. I believe that an ack on my follow-up with the check of the original message should be sufficient, but apparently it isn't. Thanks, Jaroslav -- Jaroslav Kysela Linux Sound Maintainer; ALSA Project; Red Hat, Inc.
Re: [PATCH] soundwire: cadence: fix race condition between suspend and Slave device alerts
Dne 28. 08. 20 v 17:14 Pierre-Louis Bossart napsal(a): > > > >> Is this timeout for suspend or resume? Somehow I was under the >> assumption that it is former? Or is the result seen on resume? >> >> Rereading the race describe above in steps, I think this should be >> handled in step c above. Btw is that suspend or runtime suspend which >> causes this? Former would be bigger issue as we should not have work >> running when we return from suspend call. Latter should be dealt with >> anyway as device might be off after suspend. > > This happens with a system suspend. Because we disable the interrupts, > the workqueue never completes, and we have a timeout on system resume. > > That's why we want to prevent the workqueue from starting, or let it > complete, but not have this zombie state where we suspend but there's > still a wait for completion that times out later. The point here is > really making sure the workqueue is not used before suspend. > Vinod, there is no acceptance progress on this. The patch is really straight and for the Intel controller. They know what they're doing. I would apply this. The code can be refined at anytime. It's a fix. I tested it and I can confirm, that it fixes the issue. It's a vital patch for 5.10 to enable finally SoundWire drivers for the Intel hardware. Acked-by: Jaroslav Kysela -- Jaroslav Kysela Linux Sound Maintainer; ALSA Project; Red Hat, Inc.
Re: [PATCH 0/7] soundwire: filter out invalid PARITY errors
Dne 18. 08. 20 v 16:06 Bard Liao napsal(a): > Some codecs may report fake PARITY errors in the initial state. This > series will filter them out. > > Pierre-Louis Bossart (7): > soundwire: bus: use property to set interrupt masks > soundwire: bus: filter-out unwanted interrupt reports > soundwire: slave: add first_interrupt_done status > soundwire: bus: use quirk to filter out invalid parity errors > ASoC: codecs: realtek-soundwire: ignore initial PARITY errors > soundwire: bus: export broadcast read/write capability for tests > soundwire: cadence: add parity error injection through debugfs > > drivers/soundwire/bus.c| 93 -- > drivers/soundwire/bus.h| 4 ++ > drivers/soundwire/cadence_master.c | 86 +++ > drivers/soundwire/slave.c | 1 + > include/linux/soundwire/sdw.h | 9 +++ > sound/soc/codecs/max98373-sdw.c| 3 + > sound/soc/codecs/rt1308-sdw.c | 3 + > sound/soc/codecs/rt5682-sdw.c | 5 ++ > sound/soc/codecs/rt700-sdw.c | 5 ++ > sound/soc/codecs/rt711-sdw.c | 5 ++ > sound/soc/codecs/rt715-sdw.c | 5 ++ > sound/soc/codecs/wsa881x.c | 1 + > 12 files changed, 202 insertions(+), 18 deletions(-) > I tested the changes and it works on my test system. The changes are straight. For all: Acked-by: Jaroslav Kysela -- Jaroslav Kysela Linux Sound Maintainer; ALSA Project; Red Hat, Inc.
Re: [PATCH 1/7] soundwire: bus: use property to set interrupt masks
Dne 08. 09. 20 v 14:11 Mark Brown napsal(a): > On Tue, Sep 08, 2020 at 02:05:11PM +0200, Jaroslav Kysela wrote: >> Dne 28. 08. 20 v 8:51 Vinod Koul napsal(a): > >>>> sound/soc/codecs/rt700-sdw.c| 4 >>>> sound/soc/codecs/rt711-sdw.c| 4 >>>> sound/soc/codecs/rt715-sdw.c| 4 >>>> sound/soc/codecs/wsa881x.c | 1 + > >>> This touches codecs, can you Ack it please > >> Mark, could you ack the ASoC change to accept this patch via the soundwire >> repo? > > I don't have this patch and since I seem to get copied on quite a lot of > soundwire only serieses I just delete them unread mostly. > It can be fetched from lore (mbox format): https://lore.kernel.org/alsa-devel/20200818140656.29014-2-yung-chuan.l...@linux.intel.com/raw Thanks, Jaroslav -- Jaroslav Kysela Linux Sound Maintainer; ALSA Project; Red Hat, Inc.
Re: [PATCH v3 0/3] ASoC: Add sdw stream operations to dailink ops.
Dne 04. 09. 20 v 20:28 Bard Liao napsal(a): > Sdw stream operation APIs can be called once per stream. Move these > operations to dailink ops. The linked series is "soundwire: Remove sdw > stream operations from Intel soundwire dai". > > Reviewed-by: Vinod Koul > > Changes in v3: > - s/ASOC/ASoC > > Pierre-Louis Bossart (3): > ASoC: soc-dai: clarify return value for get_sdw_stream() > ASoC: Intel: sof_sdw: add dailink .trigger callback > ASoC: Intel: sof_sdw: add dailink .prepare and .hw_free callback > > include/sound/soc-dai.h | 3 +- > sound/soc/intel/boards/sof_sdw.c | 81 > 2 files changed, 83 insertions(+), 1 deletion(-) > This patchset depends on the SoundWire patchset "[PATCH v2 0/4] soundwire: Remove sdw stream operations from Intel" and cannot be used standalone. I believe that one maintainer should accept it or there should be a co-ordination between Mark and Vinod to push this in sync. We should really settle, how to accept such changes. I believe that Vinod should take it with the ack from Mark for this case. Please, don't require to split changes which depends on each other. For all above patches (I tested them): Acked-by: Jaroslav Kysela -- Jaroslav Kysela Linux Sound Maintainer; ALSA Project; Red Hat, Inc.
Re: [PATCH v2 0/4] soundwire: Remove sdw stream operations from Intel
Dne 03. 09. 20 v 22:47 Bard Liao napsal(a): > Sdw stream operation APIs can be called once per stream. Move these > operations to dailink ops. The linked series is "ASoC: Add sdw stream > operations to dailink ops". > > Pierre-Louis Bossart (4): > soundwire: stream: fix NULL/IS_ERR confusion > soundwire: intel: fix NULL/ERR_PTR confusion > soundwire: intel: remove .trigger operation > soundwire: intel: remove stream handling from .prepare and .hw_free > > drivers/soundwire/intel.c | 60 +- > drivers/soundwire/stream.c | 2 +- > 2 files changed, 9 insertions(+), 53 deletions(-) > Straight patches. I tested them. For all: Acked-by: Jaroslav Kysela Note: The ASoC part must be merged in sync - "[PATCH v3 0/3] ASoC: Add sdw stream operations to dailink ops." Jaroslav -- Jaroslav Kysela Linux Sound Maintainer; ALSA Project; Red Hat, Inc.
Re: [RFC PATCH] ALSA: compress: Fix gapless playback state machine
Dne 11. 06. 20 v 11:44 Vinod Koul napsal(a): On 11-06-20, 11:09, Jaroslav Kysela wrote: Dne 11. 06. 20 v 10:46 Charles Keepax napsal(a): On Wed, Jun 10, 2020 at 04:28:20PM +0530, Vinod Koul wrote: On 10-06-20, 12:40, Jaroslav Kysela wrote: Dne 10. 06. 20 v 12:07 Srinivas Kandagatla napsal(a): For gapless playback call to snd_compr_drain_notify() after partial drain should put the state to SNDRV_PCM_STATE_RUNNING rather than SNDRV_PCM_STATE_SETUP as the driver is ready to process the buffers for new track. With existing code, if we are playing 3 tracks in gapless, after partial drain finished on previous track 1 the state is set to SNDRV_PCM_STATE_SETUP which is then moved to SNDRV_PCM_STATE_PREPARED after data write. With this state calls to snd_compr_next_track() and few other calls will fail as they expect the state to be in SNDRV_PCM_STATE_RUNNING. Here is the sequence of events and state transitions: 1. set_params (Track 1), state = SNDRV_PCM_STATE_SETUP 2. set_metadata (Track 1), no state change, state = SNDRV_PCM_STATE_SETUP 3. fill and trigger start (Track 1), state = SNDRV_PCM_STATE_RUNNING 4. set_next_track (Track 2), state = SNDRV_PCM_STATE_RUNNING 5. partial_drain (Track 1), state = SNDRV_PCM_STATE_SETUP 6 snd_compr_drain_notify (Track 1), state = SNDRV_PCM_STATE_SETUP 7. fill data (Track 2), state = SNDRV_PCM_STATE_PREPARED 8. set_metadata (Track 3), no state change, state = SNDRV_PCM_STATE_PREPARED 9. set_next_track (Track 3), !! FAILURE as state != SNDRV_PCM_STATE_RUNNING The snd_compr_drain_notify() is called only from snd_compr_stop(). Something is missing in this sequence? It is supposed to be invoked by driver when partial drain is complete.. both intel and sprd driver are calling this. snd_compr_stop is stop while draining case so legit Not sure I follow this statement, could you elaborate a bit? snd_compr_stop putting the state to RUNNING seems fundamentally broken to me, the whole point of snd_compr_stop is to take the state out of RUNNING. Yes. I agree. It seems that the acknowledge for the partial drain should be handled differently. Yeah sorry I overlooked that case and was thinking of it being invoked from driver! Yes this would make the snd_compr_stop() behave incorrectly.. so this cant be done as proposed. But we still need to set the draining stream state properly and I am thinking below now: diff --git a/sound/core/compress_offload.c b/sound/core/compress_offload.c index 509290f2efa8..9aba851732d7 100644 --- a/sound/core/compress_offload.c +++ b/sound/core/compress_offload.c @@ -929,7 +929,9 @@ static int snd_compr_partial_drain(struct snd_compr_stream *stream) } stream->next_track = false; - return snd_compress_wait_for_drain(stream); + retval = snd_compress_wait_for_drain(stream); + stream->runtime->state = SNDRV_PCM_STATE_RUNNING; + return retval; } I see a race possibility when the last track is too small and the driver signals the end-of-track twice. In this case the partial drain should not end with the running state. It would be probably better to separate partial / last track acknowledgements. Jaroslav -- Jaroslav Kysela Linux Sound Maintainer; ALSA Project; Red Hat, Inc.
Re: [RFC PATCH] ALSA: compress: Fix gapless playback state machine
Dne 11. 06. 20 v 10:46 Charles Keepax napsal(a): On Wed, Jun 10, 2020 at 04:28:20PM +0530, Vinod Koul wrote: On 10-06-20, 12:40, Jaroslav Kysela wrote: Dne 10. 06. 20 v 12:07 Srinivas Kandagatla napsal(a): For gapless playback call to snd_compr_drain_notify() after partial drain should put the state to SNDRV_PCM_STATE_RUNNING rather than SNDRV_PCM_STATE_SETUP as the driver is ready to process the buffers for new track. With existing code, if we are playing 3 tracks in gapless, after partial drain finished on previous track 1 the state is set to SNDRV_PCM_STATE_SETUP which is then moved to SNDRV_PCM_STATE_PREPARED after data write. With this state calls to snd_compr_next_track() and few other calls will fail as they expect the state to be in SNDRV_PCM_STATE_RUNNING. Here is the sequence of events and state transitions: 1. set_params (Track 1), state = SNDRV_PCM_STATE_SETUP 2. set_metadata (Track 1), no state change, state = SNDRV_PCM_STATE_SETUP 3. fill and trigger start (Track 1), state = SNDRV_PCM_STATE_RUNNING 4. set_next_track (Track 2), state = SNDRV_PCM_STATE_RUNNING 5. partial_drain (Track 1), state = SNDRV_PCM_STATE_SETUP 6 snd_compr_drain_notify (Track 1), state = SNDRV_PCM_STATE_SETUP 7. fill data (Track 2), state = SNDRV_PCM_STATE_PREPARED 8. set_metadata (Track 3), no state change, state = SNDRV_PCM_STATE_PREPARED 9. set_next_track (Track 3), !! FAILURE as state != SNDRV_PCM_STATE_RUNNING The snd_compr_drain_notify() is called only from snd_compr_stop(). Something is missing in this sequence? It is supposed to be invoked by driver when partial drain is complete.. both intel and sprd driver are calling this. snd_compr_stop is stop while draining case so legit Not sure I follow this statement, could you elaborate a bit? snd_compr_stop putting the state to RUNNING seems fundamentally broken to me, the whole point of snd_compr_stop is to take the state out of RUNNING. Yes. I agree. It seems that the acknowledge for the partial drain should be handled differently. Jaroslav Thanks, Charles -- Jaroslav Kysela Linux Sound Maintainer; ALSA Project; Red Hat, Inc.
Re: [RFC PATCH] ALSA: compress: Fix gapless playback state machine
Dne 10. 06. 20 v 12:07 Srinivas Kandagatla napsal(a): For gapless playback call to snd_compr_drain_notify() after partial drain should put the state to SNDRV_PCM_STATE_RUNNING rather than SNDRV_PCM_STATE_SETUP as the driver is ready to process the buffers for new track. With existing code, if we are playing 3 tracks in gapless, after partial drain finished on previous track 1 the state is set to SNDRV_PCM_STATE_SETUP which is then moved to SNDRV_PCM_STATE_PREPARED after data write. With this state calls to snd_compr_next_track() and few other calls will fail as they expect the state to be in SNDRV_PCM_STATE_RUNNING. Here is the sequence of events and state transitions: 1. set_params (Track 1), state = SNDRV_PCM_STATE_SETUP 2. set_metadata (Track 1), no state change, state = SNDRV_PCM_STATE_SETUP 3. fill and trigger start (Track 1), state = SNDRV_PCM_STATE_RUNNING 4. set_next_track (Track 2), state = SNDRV_PCM_STATE_RUNNING 5. partial_drain (Track 1), state = SNDRV_PCM_STATE_SETUP 6 snd_compr_drain_notify (Track 1), state = SNDRV_PCM_STATE_SETUP 7. fill data (Track 2), state = SNDRV_PCM_STATE_PREPARED 8. set_metadata (Track 3), no state change, state = SNDRV_PCM_STATE_PREPARED 9. set_next_track (Track 3), !! FAILURE as state != SNDRV_PCM_STATE_RUNNING The snd_compr_drain_notify() is called only from snd_compr_stop(). Something is missing in this sequence? Jaroslav Fixes: f44f2a5417b2 ("ALSA: compress: fix drain calls blocking other compress functions (v6)") Signed-off-by: Srinivas Kandagatla --- I wonder who did gapless work on upstream so far? include/sound/compress_driver.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/sound/compress_driver.h b/include/sound/compress_driver.h index 6ce8effa0b12..eabac33864c2 100644 --- a/include/sound/compress_driver.h +++ b/include/sound/compress_driver.h @@ -182,7 +182,7 @@ static inline void snd_compr_drain_notify(struct snd_compr_stream *stream) if (snd_BUG_ON(!stream)) return; - stream->runtime->state = SNDRV_PCM_STATE_SETUP; + stream->runtime->state = SNDRV_PCM_STATE_RUNNING; wake_up(&stream->runtime->sleep); } -- Jaroslav Kysela Linux Sound Maintainer; ALSA Project; Red Hat, Inc.
Re: next-0519 on thinkpad x60: sound related? window manager crash
Dne 09. 06. 20 v 13:49 Christoph Hellwig napsal(a): On Tue, Jun 09, 2020 at 01:45:34PM +0200, Takashi Iwai wrote: Yes, for the sound stuff, something below should make things working. But it means that we'll lose the SG-buffer allocation and the allocation of large buffers might fail on some machines. We crossed lines there. In general due to better memory compaction and CMA we have better chances to get larger contiguous allocations these days, so this might not be too much of an issue in practice. But turning off the SG DMA scheme seems like a step back. Would be possible to fix this kind of memory mapping? Jaroslav -- Jaroslav Kysela Linux Sound Maintainer; ALSA Project; Red Hat, Inc.
Re: [PATCH v2 0/5] soundwire: bus_type: add sdw_master_device support
Dne 18. 05. 20 v 19:43 Bard Liao napsal(a): This series adds sdw master devices support. changes in v2: - Allocate sdw_master_device dynamically - Use unique bus id as master id - Keep checking parent devices - Enable runtime_pm on Master device Bard Liao (2): soundwire: bus: add unique bus id soundwire: master: add runtime pm support Pierre-Louis Bossart (3): soundwire: bus: rename sdw_bus_master_add/delete, add arguments soundwire: bus_type: introduce sdw_slave_type and sdw_master_type soundwire: bus_type: add sdw_master_device support .../driver-api/soundwire/summary.rst | 7 +- drivers/soundwire/Makefile| 2 +- drivers/soundwire/bus.c | 47 -- drivers/soundwire/bus.h | 3 + drivers/soundwire/bus_type.c | 19 ++-- drivers/soundwire/intel.c | 9 +- drivers/soundwire/master.c| 88 +++ drivers/soundwire/qcom.c | 7 +- drivers/soundwire/slave.c | 8 +- include/linux/soundwire/sdw.h | 24 - include/linux/soundwire/sdw_type.h| 9 +- 11 files changed, 191 insertions(+), 32 deletions(-) create mode 100644 drivers/soundwire/master.c The code looks really clean now. Thank you for your work. Acked-by: Jaroslav Kysela Jaroslav -- Jaroslav Kysela Linux Sound Maintainer; ALSA Project; Red Hat, Inc.
Re: [PATCH] ALSA: pcm: fix incorrect hw_base increase
Dne 15. 05. 20 v 12:39 Takashi Iwai napsal(a): On Fri, 15 May 2020 11:30:54 +0200, Jaroslav Kysela wrote: Dne 15. 05. 20 v 11:04 Lu, Brent napsal(a): Is this a bugfix needed for older kernels as well? When did this issue show up? thanks, greg k-h It happens when DMA stop moving data from host to DSP/DAI for a long time (> half of buffer time). I know host driver should do something about it. But if not, the HWSYNC will keep increasing the hw_base and hw_ptr and confuses user space program. I'm afraid, but with this code, you turn off the hw_ptr jiffies code. It would be better to fix the driver in this case (return the updated / estimated DMA pointer, increase DMA buffer size etc.). This "lag" is unacceptable. The problem is obviously in the driver's side and it's best to be addressed there. But, I think it's still worth to apply this change. The hw_ptr jiffies check is performed basically in two places: one is snd_pcm_period_elapsed() call from ISR, and another is with the no_period_wakeup flag. In both cases, it calculates the diff of jiffies from the previous update, and corrects the hw_ptr_base if that exceeds the threshold. And the bug here is that the "previous" jiffies is kept as long as the hwptr itself is updated. What we need is the correction of the base when it really has processed the period size; i.e. hwptr got the same value (with no_period_wakeup) and yet the jiffies diff is big. For this check, it's correct to update hw_ptr_jiffies at each call no matter whether hwptr moved or not; we need to evaluate from the previous update, after all. But I might overlook something. Jaroslav, could you check it again? The jiffies check code is your black magic :) I tried to imagine a negative impact for this hw_ptr_jiffies update when the DMA position is not updated from the driver and I haven't found any so far. Let's apply this and we'll see in future :-) And yes, the patch description should be improved (DMA ptr is not updated / streaming is inactive). Reviewed-by: Jaroslav Kysela thanks, Takashi -- Jaroslav Kysela Linux Sound Maintainer; ALSA Project; Red Hat, Inc.
Re: [PATCH] ALSA: pcm: fix incorrect hw_base increase
Dne 15. 05. 20 v 11:04 Lu, Brent napsal(a): Is this a bugfix needed for older kernels as well? When did this issue show up? thanks, greg k-h It happens when DMA stop moving data from host to DSP/DAI for a long time (> half of buffer time). I know host driver should do something about it. But if not, the HWSYNC will keep increasing the hw_base and hw_ptr and confuses user space program. I'm afraid, but with this code, you turn off the hw_ptr jiffies code. It would be better to fix the driver in this case (return the updated / estimated DMA pointer, increase DMA buffer size etc.). This "lag" is unacceptable. Jaroslav Regards, Brent -- Jaroslav Kysela Linux Sound Maintainer; ALSA Project; Red Hat, Inc.
Re: [PATCH] ALSA: aloop: Support S24 sample formats
Dne 25. 03. 19 v 16:14 twisc...@de.adit-jv.com napsal(a): > From: Timo Wischer > > Currently snd_aloop supports only S16 and S32 audio sample formats. With > this patch the S24 formats are also supported. Reviewed-by: Jaroslav Kysela > > Signed-off-by: Timo Wischer > --- > sound/drivers/aloop.c | 4 +++- > 1 file changed, 3 insertions(+), 1 deletion(-) > > diff --git a/sound/drivers/aloop.c b/sound/drivers/aloop.c > index 8c3fbe1..c14e57b 100644 > --- a/sound/drivers/aloop.c > +++ b/sound/drivers/aloop.c > @@ -337,7 +337,7 @@ static int loopback_prepare(struct snd_pcm_substream > *substream) > > loopback_timer_stop_sync(dpcm); > > - salign = (snd_pcm_format_width(runtime->format) * > + salign = (snd_pcm_format_physical_width(runtime->format) * > runtime->channels) / 8; > bps = salign * runtime->rate; > if (bps <= 0 || salign <= 0) > @@ -562,6 +562,8 @@ static const struct snd_pcm_hardware > loopback_pcm_hardware = >SNDRV_PCM_INFO_MMAP_VALID | SNDRV_PCM_INFO_PAUSE | >SNDRV_PCM_INFO_RESUME), > .formats = (SNDRV_PCM_FMTBIT_S16_LE | SNDRV_PCM_FMTBIT_S16_BE | > + SNDRV_PCM_FMTBIT_S24_LE | SNDRV_PCM_FMTBIT_S24_BE | > + SNDRV_PCM_FMTBIT_S24_3LE | SNDRV_PCM_FMTBIT_S24_3BE | >SNDRV_PCM_FMTBIT_S32_LE | SNDRV_PCM_FMTBIT_S32_BE | >SNDRV_PCM_FMTBIT_FLOAT_LE | SNDRV_PCM_FMTBIT_FLOAT_BE), > .rates =SNDRV_PCM_RATE_CONTINUOUS | SNDRV_PCM_RATE_8000_192000, > -- Jaroslav Kysela Linux Sound Maintainer; ALSA Project; Red Hat, Inc.
Re: [alsa-devel] [RFC PATCH] ALSA: core: Add DMA share buffer support
0) + return fd; + nfile = anon_inode_getfile("snd-pcm", file->f_op, NULL, flags); + if (IS_ERR(nfile)) { + put_unused_fd(fd); + return PTR_ERR(nfile); + } + fd_install(fd, nfile); + res = snd_pcm_open_substream(substream->pcm, substream->number, +nfile, &rsubstream); + if (res < 0) { + ksys_close(fd); + return res; + } + put_user(fd, (int __user *)arg); + return 0; +} + static int snd_pcm_common_ioctl(struct file *file, struct snd_pcm_substream *substream, unsigned int cmd, void __user *arg) @@ -2864,6 +2902,8 @@ static int snd_pcm_common_ioctl(struct file *file, (unsigned int __user *)arg)) return -EFAULT; return 0; + case SNDRV_PCM_IOCTL_ANONYMOUS_DUP: + return snd_pcm_anonymous_dup(file, substream, (int __user *)arg); case SNDRV_PCM_IOCTL_HW_REFINE: return snd_pcm_hw_refine_user(substream, arg); case SNDRV_PCM_IOCTL_HW_PARAMS: -- Jaroslav -- Jaroslav Kysela Linux Sound Maintainer; ALSA Project; Red Hat, Inc.
Re: [RFC PATCH] ALSA: core: Add DMA share buffer support
Dne 23.1.2019 v 13:46 Leo Yan napsal(a): > Hi all, > > On Wed, Jan 23, 2019 at 12:58:51PM +0100, Takashi Iwai wrote: >> On Tue, 22 Jan 2019 21:25:35 +0100, >> Mark Brown wrote: >>> >>> On Mon, Jan 21, 2019 at 03:15:43PM +0100, Jaroslav Kysela wrote: >>>> Dne 21.1.2019 v 13:40 Mark Brown napsal(a): >>> >>>>> It was the bit about adding more extended permission control that I was >>>>> worried about there, not the initial O_APPEND bit. Indeed the O_APPEND >>>>> bit sounds like it might also work from the base buffer sharing point of >>>>> view, I have to confess I'd not heard of that feature before (it didn't >>>>> come up in the discussion when Eric raised this in Prague). >>> >>>> With permissions, I meant to make possible to restrict the file >>>> descriptor operations (ioctls) for the depending task (like access to >>>> the DMA buffer, synchronize it for the non-coherent platforms and maybe >>>> read/write the actual position, delay etc.). It should be relatively >>>> easy to implement using the snd_pcm_file structure. >>> >>> Right, that's what I understood you to mean. If you want to have a >>> policy saying "it's OK to export a PCM file descriptor if it's only got >>> permissions X and Y" the security module is going to need to know about >>> the mechanism for setting those permissions. With dma_buf that's all a >>> bit easier as there's less new stuff, though I've no real idea how much >>> of a big deal that actually is. >> >> There are many ways to implement such a thing, yeah. If we'd need an >> implementation that is done solely in the sound driver layer, I can >> imagine to introduce either a new ioctl or an open flag (like O_EXCL) >> to specify the restricted sharing. That is, a kind of master / slave >> model where only the master is allowed to manipulate the stream while >> the slave can mmap, read/write and get status. > > In order to support EXCLUSIVE mode, it is necessary to convert the > /dev/snd/ descriptor to an anon_inode:dmabuffer file descriptor. > SELinux allows that file descriptor to be passed to the client. It can > also be used by the AAudioService. Okay, so this is probably the only point which we should resolve for the already available DMA buffer sharing in ALSA (the O_APPEND flag). I had another glance to your dma-buf implementation and I see many things which might cause problems: - allow to call dma-buf ioctls only when the audio device is in specific state (stream is not running) - as Takashi mentioned, if we return another file-descriptor (dma-buf export) to the user space and the server closes the main pcm file-descriptor (the client does not) - the result will be a crash (dma buffer will be freed, but referenced through the dma-buf interface) - the attach function calls dma_buf_get(fd), but what if fd points to another dma-buf allocation from a different driver? the unexpected private data will cause crash - there should be a type checking in the dma-buf interface If I look to the dma_buf_fd() implementation: fd = get_unused_fd_flags(flags); fd_install(fd, dmabuf->file); .. what if we just add one new ioctl to the ALSA's PCM API which will return a new anonymous inode descriptor with the restricted access to the main PCM device to satisfy the SELinux requirements / security policies? It might be more nice and simple solution than to implement the full dma-buf interface for the ALSA's PCM devices. Question: The dma-buf also implements the fencing, but I am not able to determine, if this mechanism is used in android [1]. It may allow concurrent mmap and synchronize apps - but the sound server should manage the access to the DMA buffer anyway. In my opinion, it makes much sense for the video-pipes when the hardware does some accelerations (encoding/decoding). Jaroslav > [1] https://source.android.com/devices/audio/aaudio -- Jaroslav Kysela Linux Sound Maintainer; ALSA Project; Red Hat, Inc.
Re: [RFC PATCH] ALSA: core: Add DMA share buffer support
Dne 21.1.2019 v 13:40 Mark Brown napsal(a): > On Fri, Jan 18, 2019 at 08:39:32PM +0100, Takashi Iwai wrote: >> Mark Brown wrote: > >>>> multiple tasks). I would probably go in this way and add more extended >>>> permission control for the PCM device, so permissions can be restricted >>>> for the passed descriptor to the producer or the consumer task. In this > >>> One concern I have with doing some ALSA-specific custom permissions >>> thing is integration with frameworks like SELinux (they'd presumably >>> need to learn about the ALSA specific stuff to manage it). It also > >> Well, I wonder what makes it more difficult by the approach Jaroslav >> suggested. With O_APPEND, you can just call mmap() normally, and >> that's all. What's the merit of dma-buf approach wrt the security? > > It was the bit about adding more extended permission control that I was > worried about there, not the initial O_APPEND bit. Indeed the O_APPEND > bit sounds like it might also work from the base buffer sharing point of > view, I have to confess I'd not heard of that feature before (it didn't > come up in the discussion when Eric raised this in Prague). With permissions, I meant to make possible to restrict the file descriptor operations (ioctls) for the depending task (like access to the DMA buffer, synchronize it for the non-coherent platforms and maybe read/write the actual position, delay etc.). It should be relatively easy to implement using the snd_pcm_file structure. Even with the full operation mode, it's difficult imagine what the depending task can break with the sound interface except probably annoy users with some cracks for the playback or start/stop the streaming rapidly. Jaroslav -- Jaroslav Kysela Linux Sound Maintainer; ALSA Project; Red Hat, Inc.
Re: [RFC PATCH] ALSA: core: Add DMA share buffer support
Dne 18.1.2019 v 05:55 Baolin Wang napsal(a): > This patch adds dma share buffer support, which allows a dma-buf to be shared > between processes by passing file descriptors between them, allowing multiple > processes to cooperate in filling the DMA buffer used by the audio hardware > without the need to copy data around. This reduces both latency and CPU load, > especially in configurations where only one application is playing audio and > so context switches can be avoided. > > In userspace, we can use ioctl:SNDRV_PCM_IOCTL_DMABUF_EXPORT to export one > dma buffer to a PCM, and use ioctl:SNDRV_PCM_IOCTL_DMABUF_ATTACH and > ioctl:SNDRV_PCM_IOCTL_DMABUF_DETACH to attach or detach one device to the > dma buffer. Morevoer we can use dma buffer ioctl:DMA_BUF_IOCTL_SYNC to > guarantee the cache coherency of the DMA buffer. > > You can refer to below patches [1] created by Leo Yan to use the dma buffer > in userspace. > > [1] https://github.com/tinyalsa/tinyalsa/pull/126 > > Welcome any comments. Thanks. > > Signed-off-by: Baolin Wang > --- > Hi, > > Before sending to ALSA mailing list, we had some internal discussion off line, > so I posted them to follow up. > > 1. One issue proposed by Srinivas Kandagatla, he proposed one use case > example: > DSP1 pre-process(compress-to-pcm) the buffers, pass the fd to DSP2/audio-ip > to play pcm data. The dmabuf exporter (DSP1) is a different device than > audio device in this instance, so the DSP1 device cannot call > snd_pcm_dmabuf_export() to export one dma buffer and pass to the > DSP2/audio-ip. > > Our original design is, the dma buffer should be associated with one PCM > device, since different PCM devices may need different buffer types (see > SNDRV_DMA_TYPE_XXX) to play PCM data, and need consider the PCM device's > coherent capability for DMA memory. My concern is, if we let other > non-audio device to allocate one buffer and export it, how to guarantee > the dma buffer can be used by PCM device and have the same coherent capability > with the PCM device. > > So I am not sure for this issue and need more suggestion to get a consensus. > > 2. Second question raised by Srinivas Kandagatla, he wondered: > "Am still unclear on the whole idea making a audio device dmabuf exporter > in Linux systems, unless you are sharing the dmabuf fd with other devices. > > If you are working with just one device we could just live with mmap, > isn't it?" > > Mark Brown gave the answer: > "The issue is permissions management. We've got a sound server that owns > all the sound hardware and needs to be able to retain administrative control > over it which means that permissions for the sound devices are locked down to > it. For performance reasons on systems where it's practical (eg, where there's > multiple audio streams the system can use to play data to the hardware) we > want to be able to have that server allow other applications with lower > permissions to stream data to/from the hardware without going through it. The > applications can't mmap() the device directly as that's too painful to do that > securely from a permission management point of view so we want to be able to > have the sound server do the mmap() then hand the mapped buffer off to the > application for it to use via a FD over a pipe. That way the only thing with > direct access to the devices is the sound server but the clients have a data > path that doesn't need to bounce through another process. > > Practically speaking the only use case I can think of in an audio context is > for one reader and one writer (AIUI Android is envisioning this as one > hardware > and one software), it's difficult to see how you could usefully chain multiple > in place transformations together in the way that you can with video > applications > but I'm possibly not thinking of something here." Hi, the tinyalsa implementation does not show much - it's equal to the standard mmap access for the PCM devices. Even considering the Mark's text, there must be an arbiter (sound server) which communicates with the producer or consumer to control the data flow. I really would like to see a real usage for this. It seems to me that the only point to implement this is the permissions. We already have O_APPEND mode for the PCM file descriptor which can reuse the PCM device multiple times (mmap the buffer to multiple tasks). I would probably go in this way and add more extended permission control for the PCM device, so permissions can be restricted for the passed descriptor to the producer or the consumer task. In this way, the restricted task might reuse other control mechanism offered buy the PCM file descriptor without req
Re: [PATCH 0/4] ALSA: Fix year 2038 issue for sound subsystem, alternative
Dne 26.4.2018 v 14:44 Arnd Bergmann napsal(a): > I've tried the suggestion from Jaroslaw, doing a minimal change to the > UAPI headers to keep the existing binary interface. As he predicted, > this is a much simpler set of kernel changes, but we will pay for that > with added complexity in alsa-lib. > > The first two patches in this series are taken from Baolin's patch > set, with a small bugfix folded in to avoid a compile-time regression. > > The other two patches are to redefine the UAPI and to deprecate > the support for CLOCK_REALTIME time stamps, which we can no longer > allow with user space that we expect to survive beyond 2038. > > Overall, I'd still be happier with Baolin's approach since it allows > us to keep compatiblity with CLOCK_REALTIME users and requires > fewer changes in user space, but this would work as well. Hi Arnd, Thanks for your work. I proposed a bit different implementation. Example: struct snd_example { struct snd_native_timespec tstamp; u64 tstamp_sec64; /* use the reserved[] array for this */ }; So tstamp contains the current 32-bit tv_sec/tv_nsec and the full 64-bit value is in tstamp_sec64. In this way, we can transfer any type of the timespec64 values and it's backward compatible to retain the binary compatibility. The protocol versions should be increased to let the userspace know about the new 64-bit fields. The timer read protocol must be updated, because the stream will change, so I am fine to add new ioctl (like originally proposed). The alsa-lib defines timespec only if posix defines are not set so glibc's time.h does not define the timespec structure - it may be improved. Jaroslav > > Arnd > > Cc: Jaroslav Kysela > Cc: ti...@suse.com > Cc: lgirdw...@gmail.com > Cc: broo...@kernel.org > Cc: o-taka...@sakamocchi.jp > Cc: y2...@lists.linaro.org > Cc: alsa-de...@alsa-project.org > Cc: linux-kernel@vger.kernel.org > Cc: Baolin Wang > > Arnd Bergmann (2): > ALSA: replace timespec types in uapi headers > ALSA: Deprecate CLOCK_REALTIME timestamps > > Baolin Wang (2): > ALSA: Replace timespec with timespec64 > ALSA: Avoid using timespec for struct snd_ctl_elem_value > > include/sound/asound.h| 8 + > include/sound/pcm.h | 22 +++- > include/sound/timer.h | 4 +-- > include/uapi/sound/asound.h | 53 + > sound/core/Kconfig| 11 ++ > sound/core/compat.h | 11 ++ > sound/core/pcm.c | 3 ++ > sound/core/pcm_compat.c | 70 > ++- > sound/core/pcm_lib.c | 36 > sound/core/pcm_native.c | 25 ++ > sound/core/rawmidi_compat.c | 12 +++ > sound/core/timer.c| 28 > sound/core/timer_compat.c | 4 ++- > sound/pci/hda/hda_controller.c| 14 +--- > sound/soc/intel/skylake/skl-pcm.c | 4 +-- > 15 files changed, 203 insertions(+), 102 deletions(-) > create mode 100644 sound/core/compat.h > -- Jaroslav Kysela Linux Sound Maintainer; ALSA Project; Red Hat, Inc.
Re: [PATCH 0/8] Fix year 2038 issue for sound subsystem
Dne 24.4.2018 v 15:37 Arnd Bergmann napsal(a): > On Tue, Apr 24, 2018 at 3:29 PM, Jaroslav Kysela wrote: >> Dne 24.4.2018 v 14:06 Baolin Wang napsal(a): >>> Since many structures will use timespec type variables to record time stamp >>> in uapi/asound.h, which are not year 2038 safe on 32bit system. This >>> patchset >>> tries to introduce new structures removing timespec type to compatible >>> native >>> mode and compat mode. >>> >>> Moreover this patchset also converts the internal structrures to use >>> timespec64 >>> type and related APIs. >> >> Thanks for your patchset. A few comments: >> >> It might be more nice to reuse the existing structures and put >> timespec64 to the reserved field and duplicate information (with the >> 32-bit wrapping for the old fields). It means that we do not need new >> ioctls and old libraries will be fine. > > The current approach is intended to make any user space work > without source-level changes, i.e. you can still build an old alsa-lib > package against a new glibc as long as you have the latest kernel > headers (which the glibc requires for using 64-bit time_t). > > If we try to extend the structures in a different way, that requires > user space changes, and existing source code would silently > break on a future glibc. > IMHO changing the source-level interface should only be done > as a last resort for y2038. We have almost everything hidden in the alsa-lib code for the applications and there is the protocol versioning, so we can detect the changes easily and handle the new fields in the library. As you noted, the current code will be fine until 2038 even with my proposed change (which is more easy to be implemented in the kernel - less bloat) and there are 20 years to update alsa-lib remaining for the 32-bit systems. Only the binary compatibility for the older binaries should be taken into account. Also, you expect that tv_nsec will be changed to the 's64' type. Do you have that confirmed from the glibc developers? From the current specification, the tv_nsec type is 'long'. It may cause some binary compatibility issues, too. Thanks, Jaroslav -- Jaroslav Kysela Linux Sound Maintainer; ALSA Project; Red Hat, Inc.
Re: [PATCH 0/8] Fix year 2038 issue for sound subsystem
Dne 24.4.2018 v 14:06 Baolin Wang napsal(a): > Since many structures will use timespec type variables to record time stamp > in uapi/asound.h, which are not year 2038 safe on 32bit system. This patchset > tries to introduce new structures removing timespec type to compatible native > mode and compat mode. > > Moreover this patchset also converts the internal structrures to use > timespec64 > type and related APIs. Thanks for your patchset. A few comments: It might be more nice to reuse the existing structures and put timespec64 to the reserved field and duplicate information (with the 32-bit wrapping for the old fields). It means that we do not need new ioctls and old libraries will be fine. It may make sense to define private snd_timespec32 and snd_timespec64 with s32/s64 types instead separate sec/usec fields. Jaroslav -- Jaroslav Kysela Linux Sound Maintainer; ALSA Project; Red Hat, Inc.
Re: [PATCH] pnp: isapnp: make core more explicitly non-modular
Dne 16.8.2016 v 00:42 Paul Gortmaker napsal(a): > The Makefile currently controlling compilation of this code is: > > obj-y += pnp.o > pnp-y := core.o compat.o > > ...meaning that it currently is not being built as a module by anyone. > > Lets remove the couple traces of modular infrastructure use, so that > when reading the driver there is no doubt it is builtin-only. > > Also note that MODULE_DEVICE_TABLE is a no-op for non-modular code. > > We also delete the MODULE_LICENSE tag etc. since all that information > is already contained at the top of the file in the comments. > > We don't replace module.h with init.h since the file already has that. > But we do add moduleparam.h since the file does use module_param(). > > Cc: Jaroslav Kysela > Cc: "Rafael J. Wysocki" > Signed-off-by: Paul Gortmaker Acked-by: Jaroslav Kysela -- Jaroslav Kysela Linux Sound Maintainer; ALSA Project; Red Hat, Inc.
Re: [RFC PATCH] MAINTAINERS: Remove Jaroslav Kysela
Date 7.11.2013 21:04, Joe Perches wrote: > Jaroslav hasn't acked or signed a patch in quite awhile. It does not mean that I'm not willing to continue the kernel code maintenance when Takashi is offline. Keep me in. You may reorder M: lines. > Mark ISAPnp and HP VG/AnyLAN driver as orphan. I agree. > > Add sound to his CREDITS entry. > > Signed-off-by: Joe Perches > --- > CREDITS | 1 + > MAINTAINERS | 7 ++- > 2 files changed, 3 insertions(+), 5 deletions(-) > > diff --git a/CREDITS b/CREDITS > index 0640e16..01a1b34 100644 > --- a/CREDITS > +++ b/CREDITS > @@ -2021,6 +2021,7 @@ E: pe...@perex.cz > W: http://www.perex.cz > D: Original Author and Maintainer for HP 10/100 Mbit Network Adapters > D: ISA PnP > +D: ALSA/Sound > S: Sindlovy Dvory 117 > S: 370 01 Ceske Budejovice > S: Czech Republic > diff --git a/MAINTAINERS b/MAINTAINERS > index 831b869..8706839 100644 > --- a/MAINTAINERS > +++ b/MAINTAINERS > @@ -3983,8 +3983,7 @@ S: Orphan > F: drivers/platform/x86/tc1100-wmi.c > > HP100: Driver for HP 10/100 Mbit/s Voice Grade Network Adapter Series > -M: Jaroslav Kysela > -S: Maintained > +S: Orphan > F: drivers/net/ethernet/hp/hp100.* > > HPET:High Precision Event Timers driver > @@ -4600,8 +4599,7 @@ F: include/linux/irqdomain.h > F: kernel/irq/irqdomain.c > > ISAPNP > -M: Jaroslav Kysela > -S: Maintained > +S: Orphan > F: Documentation/isapnp.txt > F: drivers/pnp/isapnp/ > F: include/linux/isapnp.h > @@ -7818,7 +7816,6 @@ S: Maintained > F: drivers/memstick/core/ms_block.* > > SOUND > -M: Jaroslav Kysela > M: Takashi Iwai > L: alsa-de...@alsa-project.org (moderated for non-subscribers) > W: http://www.alsa-project.org/ > -- Jaroslav Kysela Linux Kernel Sound Maintainer ALSA Project; Red Hat, Inc. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [alsa-devel] Improving or replacing snd_printk()
Date 30.5.2013 20:14, Alan Stern wrote: > On Wed, 29 May 2013, Joe Perches wrote: > >> On Wed, 2013-05-29 at 15:27 -0400, Alan Stern wrote: >>> Has there been any thought of improving snd_printk(), or even better, >>> changing the call sites to use the dev_*() routines instead? >> >> Perhaps better would be to add and use some combination of >> type specific logging message functions/macros like: >> >> void snd_(const struct snd_device *dev, const char *fmt, ...) >> void snd_card_(const struct snd_card *card, const char *fmt, ...) >> void snd_ac97_(const struct snd_ac97 *ac97, const char *fmt, ...) >> >> allowing NULL as the type pointer when necessary/appropriate. > > Almost anything would be better than the current situation. The only > enhancement provided by CONFIG_SND_VERBOSE_PRINTK is to print the > filename and line number, which is relatively unhelpful (unless there > are multiple copies of the same message in several places). I don't think that it's useless to see the origin of the source message from the first glance. It may be improved, of course, but adding more and more functions with minor benefits is another step to another hell. Jaroslav -- Jaroslav Kysela Linux Kernel Sound Maintainer ALSA Project; Red Hat, Inc. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[ALSA PATCH] alsa-git merge request
): [ALSA] cmipci: disable 'Modem' control on version 39 or newer chips [ALSA] cmipci: document 'Modem' control version check [ALSA] usb-audio: add UR-80 PCM quirk [ALSA] add CMI8788 driver [ALSA] add Asus Xonar driver [ALSA] oxygen: use uintptr_t in pointer casts [ALSA] oxygen: fix channel routing [ALSA] oxygen: use an array of snd_kcontrol pointers [ALSA] oxygen: make line-in switch exclusive [ALSA] oxygen: rename PCM to Master [ALSA] oxygen: make AC97 codec optional [ALSA] oxygen: make SPI configuration configurable [ALSA] oxygen: make all DMA channels configurable [ALSA] oxygen: add control filter to model struct [ALSA] oxygen: make PCM limits configurable [ALSA] oxygen: make the I2S format configurable [ALSA] oxygen: add register definitions [ALSA] oxygen: fix playback routing [ALSA] oxygen: update ALSA-Configuration.txt [ALSA] oxygen: remove magic numbers [ALSA] oxygen: fix pause handling [ALSA] oxygen: remove MIDI autodetection [ALSA] oxygen: add more symbols [ALSA] oxygen: allow more sample rates with WM8785 [ALSA] oxygen: reduce SPI clock frequency for AK4396/WM8785 [ALSA] oxygen: move model-specific data out of common header [ALSA] oxygen: fix control filter [ALSA] oxygen: fix DAC source register fields [ALSA] oxygen: add 192 kHz SPDIF input support [ALSA] oxygen: optimize snd_pcm_hardware structures [ALSA] oxygen: TempoTec HiFier is probably not supported [ALSA] oxygen: add SPDIF loopback control [ALSA] oxygen: fix SPDIF input rates [ALSA] oxygen: remove MIDI for generic cards [ALSA] oxygen: make the number of analog output configurable [ALSA] oxygen: more initialization [ALSA] add TempoTec HiFier driver [ALSA] oxygen: fix AK4396 double rate upper limit [ALSA] oxygen: make line-in exclusive only on Xonar [ALSA] oxygen: use AC97 interrupt [ALSA] oxygen: add front panel controls [ALSA] oxygen: add front panel capture [ALSA] virtuoso: monitor external power on D2X [ALSA] oxygen: revert SPI clock frequency change for AK4396/WM8785 Ctirad Fertr (1): [ALSA] emu10k1 - 1616(M) cardbus improvements Daniel Mack (3): [ALSA] caiaq - add control API and more input features [ALSA] usb-caiaq - add support for Kore controller 2 [ALSA] usb/caiaq: decrease period_bytes_min David Dillow (1): [ALSA] sis7019: support the SiS 7019 Audio Accelerator Dmitry Torokhov (2): [ALSA] caiaq - misc input handling fixes [ALSA] caiaq - input device support must depend on CONFIG_INPUT Douglas Kosovic (1): [ALSA] hda-codec - Add Dell T3400 support Graeme Gregory (2): [ALSA] soc - Reinitialise DMA on every resume [ALSA] soc - Support suspend and resume of the I2S interface on s3c24xx Hans-Christian Egtvedt (1): [ALSA] at73c213: replace spinlock in mixer functions with a mutex Harald Welte (1): [ALSA] neo1973: ASoC include pathname fix Heikki Lindholm (1): [ALSA] add number of periods constraint to snd-aoa Hermann Lauer (1): [ALSA] es1938 - improve capture hw pointer reads Herton Ronaldo Krzesinski (2): [ALSA] HDA-Intel - Add support for RV610/RV630 HDMI audio [ALSA] hda-codec - Fix capture mixers of ALC662 models Ian Molton (1): [ALSA] soc - Preliminary ac97 drivers for Toshiba e800 PDAs Ingo Molnar (1): [ALSA] snd hda suspend latency: shorten codec read Ivan Kuten (1): [ALSA] soc - ln2440sbc ac97 support James Courtier-Dutton (4): [ALSA] emu10k1: Add mixer controls parameter checking. [ALSA] emu10k1: Add comments regarding E-Mu ins and outs. [ALSA] snd:emu10k1: E-Mu updates. Fixes to firmware loading and support for 0404. [ALSA] emu10k1: General cleanup, add new locks, fix alsa bug#3501, kernel bug#9304. Jaroslav Kysela (7): [ALSA] Use posix clock monotonic for PCM and timer timestamps [ALSA] PCM - fixed SNDRV_PCM_FORMAT_U24_BE silence constant [ALSA] PCM - added back TSTAMP ioctl for PCM (for old alsa-lib binaries) [ALSA] PCM core - remove SNDRV_PCM_TSTAMP_MMAP condition in snd_pcm_status() [ALSA] PCM interface - rename SNDRV_PCM_TSTAMP_MMAP to SNDRV_PCM_TSTAMP_ENABLE [ALSA] ice1712 - fixed midi input for Hoontech C-Ports [ALSA] version 1.0.16rc2 Jason Gaston (1): [ALSA] hda_intel: ALSA HD Audio patch for Intel ICH10 DeviceID's Jerone Young (1): [ALSA] hda-codec - Add IEC958 digital out support for Lenovo Thinkpads T61/X61 Jiang Zhe (6): [ALSA] hda-codec - Update dell-m82 model pin config [ALSA] hda-codec - Add workaround for multiple HPs [ALSA] hda-codec - Avoid wrong speaker-auto mute via mic jack [ALSA] hda-codec - Device ID for Toshiba laptop which uses AD1986A [ALSA] hda-codec - alc268 input_mux should be a
Re: -mm: pnp-do-not-stop-start-devices-in-suspend-resume-path.patch breaks resuming isapnp cards
On Mon, 14 Jan 2008, Bjorn Helgaas wrote: > On Saturday 12 January 2008 11:13:35 pm Rene Herman wrote: > > ... And, now that I have your attention, while it's > > not important to the issue anymore with the tests removed as the submitted > > patch did, do you have an opinion on (include/linux/pnp.h): > > > > /* pnp driver flags */ > > #define PNP_DRIVER_RES_DO_NOT_CHANGE0x0001 /* do not change the state > > of the device */ > > #define PNP_DRIVER_RES_DISABLE 0x0003 /* ensure the device is > > disabled */ > > > > I find DISABLE including DO_NOT_CHANGE rather unexpected... > > I don't know the history of those flags, but I wish they didn't exist. Ok, something to explain. These flags exists to allow drivers to manually configure (override) PnP resources at init time - we know - for example in ALSA - that some combinations simply does not work for all soundcards. The DISABLE flags simply tells core PnP layer - driver will handle resource allocation itself, don't do anything, just disable hw physically and do not change (allocate) any resources. Value 0x03 is valid in this semantics. Unfortunately, suspend / resume complicates things a bit, but PnP core can handle DO_NOT_CHANGE flag. But it will just mean - _preserve_ resource allocation from last suspend state for this device and enable hw physically before calling resume() callback. Jaroslav - Jaroslav Kysela <[EMAIL PROTECTED]> Linux Kernel Sound Maintainer ALSA Project, Red Hat, Inc. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [alsa-devel] PNP_DRIVER_RES_DISABLE breaks swsusp at least with snd_cs4236
On Thu, 10 Jan 2008, Rene Herman wrote: > On 09-01-08 23:43, Ondrej Zary wrote: > > Jaroslav -- in your role as ISA-PnP maintainer and Bjorn, in yours as > having been foollish enough to touch PnP recently: > > > as hibernation (swsusp) started to work with my CPU, I found that my Turtle > > Beach Malibu stops working after resume from hibernation. It's caused by > > fact > > that the card is not enabled on the pnp layer during resume - and thus card > > registers are inaccessible (reads return FFs, writes go nowhere). > > > > During resume, pnp_bus_resume() in drivers/pnp/driver.c is called for each > > pnp > > device. This function calls pnp_start_dev() only when the > > PNP_DRIVER_RES_DO_NOT_CHANGE bit is NOT seting pnp_drv->flags. But the > > cs4236 > > driver in sound/isa/cs423x/cs4236.c explicitly sets the .flags to > > PNP_DRIVER_RES_DISABLE - it's value is 3 and that includes > > PNP_DRIVER_RES_DO_NOT_CHANGE bit. > > Ehm. Isn't that a bit unexpected: > > #define PNP_DRIVER_RES_DO_NOT_CHANGE0x0001 /* do not change the state > of the device */ > #define PNP_DRIVER_RES_DISABLE 0x0003 /* ensure the device is > disabled */ > > I'd say that disabling is changing, so isn't this just a braino where > someone meant to write 2 instead of 3? It's irrelevant. I think that condition in driver.c in suspend and resume callbacks is invalid, because PNP_DRIVER_RES_DO_NOT_CHANGE means that resources should not be changed in the pnp core but only in the driver, but in suspend/resume process are resources preserved, so the condition should be removed. Author of this code is: author Pierre Ossman <[EMAIL PROTECTED]> Tue, 29 Nov 2005 09:09:32 +0100 committer Jaroslav Kysela <[EMAIL PROTECTED]> Tue, 03 Jan 2006 12:31:30 +0100 [ALSA] [PATCH] alsa: Improved PnP suspend support Also use the PnP functions to start/stop the devices during the suspend so that drivers will not have to duplicate this code. Cc: Adam Belay <[EMAIL PROTECTED]> Cc: Jaroslav Kysela <[EMAIL PROTECTED]> Cc: Takashi Iwai <[EMAIL PROTECTED]> Signed-off-by: Pierre Ossman <[EMAIL PROTECTED]> Signed-off-by: Andrew Morton <[EMAIL PROTECTED]> Signed-off-by: Takashi Iwai <[EMAIL PROTECTED]> Jaroslav - Jaroslav Kysela <[EMAIL PROTECTED]> Linux Kernel Sound Maintainer ALSA Project, Red Hat, Inc. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [PATCH] alsa: fix SNDRV_PCM_IOCTL_TTSTAMP value.
On Sun, 16 Dec 2007, Miguel Botón wrote: > "[ALSA] Use posix clock monotonic for PCM and timer timestamps" introduces > a bug that makes audio device unusable in some computers. > > Signed-off-by: Miguel Botón <[EMAIL PROTECTED]> Thanks for notify that old alsa-lib binaries have trouble with this patch. But your fix is wrong. New and old ioctls are incompatible. I added old ioctl back to our HG tree. Jaroslav > diff --git a/include/sound/asound.h b/include/sound/asound.h > index 475eb71..d35aa44 100644 > --- a/include/sound/asound.h > +++ b/include/sound/asound.h > @@ -443,7 +443,7 @@ enum { > enum { > SNDRV_PCM_IOCTL_PVERSION = _IOR('A', 0x00, int), > SNDRV_PCM_IOCTL_INFO = _IOR('A', 0x01, struct snd_pcm_info), > - SNDRV_PCM_IOCTL_TTSTAMP = _IOW('A', 0x03, int), > + SNDRV_PCM_IOCTL_TTSTAMP = _IOW('A', 0x02, int), > SNDRV_PCM_IOCTL_HW_REFINE = _IOWR('A', 0x10, struct snd_pcm_hw_params), > SNDRV_PCM_IOCTL_HW_PARAMS = _IOWR('A', 0x11, struct snd_pcm_hw_params), > SNDRV_PCM_IOCTL_HW_FREE = _IO('A', 0x12), > > -- > Miguel Botón > - Jaroslav Kysela <[EMAIL PROTECTED]> Linux Kernel Sound Maintainer ALSA Project
Re: [ALSA PATCH] alsa-git merge request
On Tue, 20 Nov 2007, Takashi Iwai wrote: > At Mon, 19 Nov 2007 19:35:09 +0100 (CET), > Jaroslav Kysela wrote: > > > > > > Linus, please pull from [the linus branch at]: > > > > master.kernel.org:/pub/scm/linux/kernel/git/perex/alsa.git linus > > gitweb interface: > > http://www.kernel.org/git/?p=linux/kernel/git/perex/alsa.git > > Grrr, please hold this. The tree looks broken. > > At least, the last patch >[ALSA] hda-codec - Revert volume knob controls in STAC codecs > wasn't applied properly, and resulted in an empty change. > > This is likely because the patch used was for mm tree and not cleanly > applied to 2.6.24-rc3. It'll require a manual adjustment. > > > In addition, the following patches are real fixes that miss in this > push: > > 5543emu10k1 - Check value ranges in ctl callbacks > 5532fix private data pointer calculation in CS4270 driver > 5530emu10k1: Add mixer controls parameter checking. > 5495portman2x4 - Fix probe error > 5485ca0106 - Fix write proc assignment > 5476s3c2443-ac97: compilation fix Hi, thanks for notice. I overlooked this empty patch. I added all requested fixes to ALSA GIT tree now. Jaroslav Linus, please pull from [the linus branch at]: master.kernel.org:/pub/scm/linux/kernel/git/perex/alsa.git linus gitweb interface: http://www.kernel.org/git/?p=linux/kernel/git/perex/alsa.git The GNU patch is available at: ftp://ftp.alsa-project.org/pub/kernel-patches/alsa-git-2007-11-20.patch.gz The following files will be updated: include/sound/version.h|2 +- sound/drivers/mpu401/mpu401_uart.c | 12 -- sound/drivers/portman2x4.c |2 +- sound/pci/ca0106/ca0106_mixer.c| 18 +++--- sound/pci/ca0106/ca0106_proc.c |4 +-- sound/pci/cmipci.c |5 +-- sound/pci/emu10k1/emumixer.c | 65 --- sound/pci/emu10k1/p16v.c |4 ++ sound/pci/hda/hda_codec.c | 40 +- sound/pci/hda/hda_local.h |1 + sound/pci/hda/patch_analog.c |8 sound/pci/hda/patch_sigmatel.c | 57 +--- sound/soc/codecs/cs4270.c |3 +- sound/soc/s3c24xx/s3c2443-ac97.c |2 +- 14 files changed, 118 insertions(+), 105 deletions(-) The following things were done: Clemens Ladisch (2): [ALSA] cmipci: fix FLINKON/OFF bits [ALSA] mpu401: fix recursive locking in timer James Courtier-Dutton (1): [ALSA] emu10k1: Add mixer controls parameter checking. Jaroslav Kysela (1): [ALSA] version 1.0.15 Krzysztof Helt (1): [ALSA] s3c2443-ac97: compilation fix Takashi Iwai (7): [ALSA] hda-codec - Disable shared stream on AD1986A [ALSA] hda-codec - Check PINCAP only for PIN widgets [ALSA] ca0106 - Check value range in ctl callbacks [ALSA] hda-codec - Revert volume knob controls in STAC codecs [ALSA] ca0106 - Fix write proc assignment [ALSA] portman2x4 - Fix probe error [ALSA] emu10k1 - Check value ranges in ctl callbacks Timur Tabi (1): [ALSA] fix private data pointer calculation in CS4270 driver - Jaroslav Kysela <[EMAIL PROTECTED]> Linux Kernel Sound Maintainer ALSA Project - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[ALSA PATCH] alsa-git merge request
Linus, please pull from [the linus branch at]: master.kernel.org:/pub/scm/linux/kernel/git/perex/alsa.git linus gitweb interface: http://www.kernel.org/git/?p=linux/kernel/git/perex/alsa.git The GNU patch is available at: ftp://ftp.alsa-project.org/pub/kernel-patches/alsa-git-2007-11-19.patch.gz Additional notes: Just fixes and cleanups. The following files will be updated: include/sound/version.h|2 +- sound/drivers/mpu401/mpu401_uart.c | 12 +++--- sound/pci/ca0106/ca0106_mixer.c| 18 ++- sound/pci/cmipci.c |5 +-- sound/pci/hda/hda_codec.c | 40 +-- sound/pci/hda/hda_local.h |1 + sound/pci/hda/patch_analog.c |8 +++ 7 files changed, 56 insertions(+), 30 deletions(-) The following things were done: Clemens Ladisch (2): [ALSA] cmipci: fix FLINKON/OFF bits [ALSA] mpu401: fix recursive locking in timer Jaroslav Kysela (1): [ALSA] version 1.0.15 Takashi Iwai (4): [ALSA] hda-codec - Disable shared stream on AD1986A [ALSA] hda-codec - Check PINCAP only for PIN widgets [ALSA] ca0106 - Check value range in ctl callbacks [ALSA] hda-codec - Revert volume knob controls in STAC codecs - Jaroslav Kysela <[EMAIL PROTECTED]> Linux Kernel Sound Maintainer ALSA Project, SUSE Labs - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[ALSA PATCH] alsa-git merge request
Linus, please pull from [the linus branch at]: master.kernel.org:/pub/scm/linux/kernel/git/perex/alsa.git linus gitweb interface: http://www.kernel.org/git/?p=linux/kernel/git/perex/alsa.git The GNU patch is available at: ftp://ftp.alsa-project.org/pub/kernel-patches/alsa-git-2007-10-23.patch.gz The following files will be updated: include/sound/version.h|2 +- sound/core/control.c |5 ++- sound/pci/bt87x.c |4 +- sound/pci/hda/hda_codec.c |9 +- sound/pci/hda/hda_local.h | 18 +--- sound/pci/hda/patch_analog.c |5 ++- sound/pci/hda/patch_cmedia.c |3 +- sound/pci/hda/patch_conexant.c | 35 +-- sound/pci/hda/patch_realtek.c |2 +- sound/pci/hda/patch_sigmatel.c |6 +++- sound/pci/hda/patch_via.c |2 +- sound/sh/aica.c| 31 +++- sound/sparc/cs4231.c | 59 +--- sound/usb/usbquirks.h |9 ++ 14 files changed, 109 insertions(+), 81 deletions(-) The following things were done: Adrian McMenamin (1): [ALSA] protect Dreamcast PCM driver (AICA) from G2 bus effects Borislav Petkov (1): [ALSA] sound/core/control.c: hard-irq-safe -> hard-irq-unsafe lock warning Dawid Wrobel (1): [ALSA] usb-audio: Another USB mic quirk for Logitech Communicator webcam Jaroslav Kysela (1): [ALSA] version 1.0.15 Krzysztof Helt (1): [ALSA] This simplifies and fixes waiting loops of the mce_down() Takashi Iwai (6): [ALSA] hda-codec - Fix AD1986A Lenovo auto-mute [ALSA] bt87x - Fix section mismatch [ALSA] hda-codec - Fix conflict of Master volume in STAC92xx codec [ALSA] hda-codec - Fix Conexant 5045 volumes [ALSA] hda-codec - Fix build without CONFIG_SND_HDA_GENERIC [ALSA] hda-codec - Fix possible array overflow Trent Piepho (1): [ALSA] snd-bt87x: Make the load_all option work correctly ----- Jaroslav Kysela <[EMAIL PROTECTED]> Linux Kernel Sound Maintainer ALSA Project, SUSE Labs - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: suspicious ALSA empty commit
On Wed, 17 Oct 2007, Linus Torvalds wrote: > On Wed, 17 Oct 2007, Jaroslav Kysela wrote: > > > > I didn't notice, too. I've fixed this commit in my git tree. > > More importantly, how did it get there in the first place? > > As mentioned, normal git tools will not even *allow* you to create an > empty commit by default! So you must be using some really strange workflow > to get an empty commit, or be triggering a git bug, both of which should > be resolved first. I'm using stg on top of git for merging and easy tree rebasing, but the version might be old (I'll try upgrade at first): Stacked GIT 0.12 git version 1.5.0.3 stg import / refresh / pick commands are on way to move patches to linus branch. Jaroslav - Jaroslav Kysela <[EMAIL PROTECTED]> Linux Kernel Sound Maintainer ALSA Project - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: suspicious ALSA empty commit
On Tue, 16 Oct 2007, Linus Torvalds wrote: > On Tue, 16 Oct 2007, David Miller wrote: > > > > While scanning over today's updates in Linus's tree, I noticed > > the following commit has no changes, and this does not appear > > to be intentional. > > Interesting. You're right, I didn't notice. I didn't notice, too. I've fixed this commit in my git tree. Linus, please pull from [the linus branch at]: master.kernel.org:/pub/scm/linux/kernel/git/perex/alsa.git linus gitweb interface: http://www.kernel.org/git/?p=linux/kernel/git/perex/alsa.git Thanks, Jaroslav - Jaroslav Kysela <[EMAIL PROTECTED]> Linux Kernel Sound Maintainer ALSA Project - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[ALSA PATCH] alsa-git merge request
ces [ALSA] usb-audio: add workaround for ESI MIDI Mate/RomIO II [ALSA] cmipci: fix MIDI device name [ALSA] cmipci: fix handling of FM/MIDI port addresses [ALSA] cmipci: make the test for integrated MIDI port address more robust [ALSA] cmipci: reorganize chip version detection [ALSA] cmipci: remove has_dual_dac [ALSA] cmipci: show actual chip name in card longname [ALSA] usb-audio: add quirk for Serato Scratch Live DJ Box [ALSA] cmipci: remove invalid channels constraint [ALSA] cmipci: add 96 kHz support [ALSA] cmipci: do not check for integrated FM/MIDI ports with chip version 37 [ALSA] cmipci: check that the legacy MIDI port works [ALSA] cmipci: show real chip name in card name [ALSA] cmipci: add msbits constraint for 24-bit format [ALSA] document basic TLV stuff [ALSA] usb-audio: add Ozone Academic support [ALSA] bt87x: fix detection of generic boards [ALSA] cmipci: fix version 37 detection [ALSA] cmipci: update register definitions [ALSA] cmipci: show more registers in proc file [ALSA] cmipci: reset the chip when initializing [ALSA] cmipci: initialize 0x90 registers [ALSA] cmipci: allow 96 kHz playback on non-multichannel rear [ALSA] cmipci: remove 5.0 format [ALSA] cmipci: reorganize set_dac_channels() [ALSA] cmipci: fix lookup of double rates [ALSA] cmipci: clean up struct cmipci_pcm [ALSA] cmipci: fix distortion on rear channels [ALSA] mpu-401: do not require an ACK byte for the ENTER_UART command [ALSA] mpu-401: remove MPU401_INFO_UART_ONLY flag Daniel Mack (1): [ALSA] caiaq - support for Native Instrument's RigKontrol3 Danny Tholen (1): [ALSA] hda-intel - Improve HD-audio codec probing robustness Eugene Teo (1): [ALSA] seq: resource leak fix and various code cleanups Giuliano Pochini (1): [ALSA] echoaudio - Add barrier() to prevent compiler optimization Hans-Christian Egtvedt (2): [ALSA] Add SPI devices to ALSA Kconfig and Makefile [ALSA] ALSA sound driver for the AT73C213 DAC using Atmel SSC driver Harald Welte (1): [ALSA] s3c24xx-pcm: fix hw_params dma handling Ingo Molnar (1): [ALSA] fix bootup crash in snd_gus_interrupt() James Courtier-Dutton (7): [ALSA] snd-emu10k1: Add support for E-Mu 1616 PCI, 1616M PCI, 0404 PCI, E-Mu [ALSA] snd-emu10k1:Improves firmware loading for E-Mu cards. [ALSA] snd-ca0106:Add recognition for new variant. Fixes ALSA bug#3251 [ALSA] snd-emu10k1:Support for ADAT and S/PDIF. [ALSA] snd-emu10k1:Implement SPDIF/ADAT status. [ALSA] snd-emu10k1:Unmute the Audio/Micro Dock after firmware load. [ALSA] snd-usb-audio: Add basic support for E-Mu USB devices. Jaroslav Kysela (3): [ALSA] SC6000 driver - add HAS_IOPORT dependency [ALSA] Changed Jaroslav Kysela's e-mail from [EMAIL PROTECTED] to [EMAIL PROTECTED] [ALSA] version 1.0.15 Jesper Juhl (5): [ALSA] Clean up duplicate includes in sound/ppc/ [ALSA] Clean up duplicate includes in sound/soc/ [ALSA] Clean up duplicate includes in sound/core/ [ALSA] au88x0: mem leak fix in snd_vortex_create() [ALSA] emu10k1: There's no need to cast vmalloc() return value in snd_emu10k1_create() Kailang Yang (6): [ALSA] hda-codec - Update realtek codec support [ALSA] hda-codec - Add support for Haier W66 [ALSA] hda-codec - Fix ALC662 codec support [ALSA] hda-codec - Missing support ASUS A7J [ALSA] Support ASUS P701 eeepc [0x1043 0x82a1] support [ALSA] hda-codec - Fix SKU ID function for realtek codecs Karsten Wiese (1): [ALSA] snd_usb_caiaq_input_free() fix Keita Maehara (2): [ALSA] ac97: YMF743 missing controls support (1/2) [ALSA] ac97: YMF743 missing controls support (2/2) Krzysztof Helt (23): [ALSA] isa libs Makefiles cleanup [ALSA] dbri: driver cleanup [ALSA] sun-cs4231: code improvements [ALSA] dbri: more cleanups [ALSA] cs4231 header split [ALSA] dbri: conversion to OpenFirmware framework [ALSA] sun-cs4231: memory management fix [ALSA] dbri - Use linux/of.h instead of asm/prom.h [ALSA] ad1848_lib: replace common delay loop by function [ALSA] cs4231-lib: replace common delay loop by function [ALSA] sun-cs4231: checkpatch fixes [ALSA] cs4231-lib: improved waiting after mce_down [ALSA] Gallant SC-6000 driver [ALSA] ad1848_lib: waiting loops done after cs4231_lib [ALSA] sc6000: documentation fix [ALSA] sc6000: 2 minor fixes [ALSA] sscape: driver extension to 2nd DMA and WSS port [ALSA] sscape: support for audio part of VIVO cards [ALSA] This patch removes open_mutex from the ad1848-lib as [ALSA] This patch adds support for a wavetable chip on [ALSA] This simplifies and fixes waiting loops of the mce_down() [ALSA] sun-cs4231:
[ALSA PATCH] alsa-git merge request
/s3c24xx-ac97.h| 25 + sound/soc/s3c24xx/s3c24xx-i2s.c |4 +- sound/soc/s3c24xx/smdk2443_wm9710.c | 85 ++ sound/soc/sh/Kconfig| 38 + sound/soc/sh/Makefile | 14 + sound/soc/sh/dma-sh7760.c | 354 +++ sound/soc/sh/hac.c | 322 +++ sound/soc/sh/sh7760-ac97.c | 92 ++ sound/soc/sh/ssi.c | 400 sound/usb/usbaudio.c| 22 +- sound/usb/usbquirks.h | 72 ++- sound/usb/usx2y/usbusx2yaudio.c |7 +- 89 files changed, 8426 insertions(+), 399 deletions(-) The following things were done: Adrian Bunk (2): [ALSA] sound/pci/hda/patch_realtek.c: remove dead code [ALSA] fix SND_CS5530=y, ISA=n compilation Adrian McMenamin (1): [ALSA] Add ALSA support for the SEGA Dreamcast PCM device Alan Horstmann (1): [ALSA] More description on duplex streams with OSS emulation Andrew Morton (1): [ALSA] ali5451 warning fix Ash Willis (1): [ALSA] Disable debugging output for the ALS300 driver Carlo Beccaria (1): [ALSA] usb-audio: add Roland SH-201 support Claudio Matsuoka (14): [ALSA] usb-audio - Add quirk for Roland Juno-G [ALSA] hda-codec - Add support for HP Spartan [ALSA] hda-codec - Add support for HP Nettle [ALSA] hda-codec - Fix 5.1 output in LG LW20 [ALSA] hda-codec - Fix HP Nettle 5.1 output [ALSA] hda-codec - Add HP Lucknow 5.1 support [ALSA] Update Claudio's CREDITS information [ALSA] hda-codec - Add VIA HDA to si3054 [ALSA] hda-codec - Add LG LW20 si3054 modem id [ALSA] hda-codec - Add LG LW20 line-in capture source [ALSA] hda-codec - Add quirk for HP Samba [ALSA] hda-codec - Rename HP model-specific quirks [ALSA] hda-codec - Add quirks for HP dx2200/dx2250 [ALSA] hda-codec - Add quirk for Asus P5LD2 Clemens Ladisch (1): [ALSA] timer: check for incorrect device state in non-debug compiles, too Daniel Drake (1): [ALSA] usb-audio: another Logitech QuickCam ID Daniel T Chen (1): [ALSA] hda-codec - Add quirk for another MSI laptop to alc883_cfg_tbl[] Dave Jones (1): [ALSA] Yet another Uniwill laptop with ALC861 codec George Shapovalov (1): [ALSA] usb-audio: another Logitech camera/microphone ID match Graeme Gregory (5): [ALSA] ASoC S3C24xx machine drivers - s3c2443-AC97 [ALSA] ASoC S3C24xx machine drivers - Openmoko Neo1973 [ALSA] ASoC S3C24xx machine drivers - SMDK 2443 [ALSA] ASoC S3C24xx machine drivers - Kconfig [ALSA] ASoC S3C24xx machine drivers - lm4857-h missing patch Ivan N. Zlatev (1): [ALSA] hda-codec - Fix pin configs for Intel Macs James Courtier-Dutton (3): [ALSA] snd-emu10k1: Initial support for E-Mu 1616 and 1616m. [ALSA] snd-emu10k1:Enable E-Mu 1616m notebook firmware loading. [ALSA] snd-ca0106: Add support for X-Fi Extreme Audio. Jaroslav Kysela (1): [ALSA] version 1.0.14 Jaroslav Kysela [EMAIL PROTECTED] (1): [ALSA] remove duplicate Logitech Quickcam USB ID in usbquirks.h Jonathan Phenix (1): [ALSA] hda-codec - Output MFG information for HDA devices Kailang Yang (4): [ALSA] hda-codec - Add proper model for HP xw series [ALSA] hda-codec - Add support of ALC268 codec [ALSA] hda-codec - Some fixes for Realtek codec supports [ALSA] hda-codec - Fix ALC662 auto mode Liam Girdwood (1): [ALSA] ASoC S3C24xx machine drivers - I2C ID for LM4857 Manuel Lauss (2): [ALSA] SH7760 ASoC support [ALSA] soc/sh: let SND_SOC_PCM_SH7760 depend on SH_DMABRG Masakazu Mokuno (1): [ALSA] Add PS3 sound driver Matt Reimer (1): [ALSA] Make s3c24xx_i2s_set_clkdiv() change the correct bits Matthew Ranostay (3): [ALSA] hda: add eapd support to additional idt codecs [ALSA] hda: stac9202 mixer fix [ALSA] hda: Enable SPDIF in/out on some stac9205 boards Mike Crash (1): [ALSA] hda: support for S/PDIF out on ASUS M2V Nicola Fagnani (1): [ALSA] hda-intel: support for iMac 24'' released on 09/2006 Paul Vojta (2): [ALSA] opl3sa2 - Add Neomagic MagicWave 3D ISA PnP ID [ALSA] nm256 - Add mention of opl3sa2 to a diagnostic message Pavel Hofman (2): [ALSA] ice1724 - Add PCM Playback Switch to Revo 7.1 [ALSA] emu10k1 - EMU 1212 with 16 capture channels Peer Chen (1): [ALSA] Add the MCP73/77 support to hda_intel driver Randy Dunlap (4): [ALSA] fix section mismatch [ALSA] more section mismatches [ALSA] fix ensoniq section mismatch [ALSA] portman2x4 section mismatch Richard Knutsson (1): [ALSA] usbusx2yaudio: kfree(NULL) is valid Ritesh Raj Sarraf (1): [ALSA] USB ID for intergrated quickcam on dell xps m1210 Robert P. J. Day (1):
[ALSA PATCH] alsa-git merge request
Linus, please pull from [the linus branch at]: master.kernel.org:/pub/scm/linux/kernel/git/perex/alsa.git linus gitweb interface: http://www.kernel.org/git/?p=linux/kernel/git/perex/alsa.git The GNU patch is available at: ftp://ftp.alsa-project.org/pub/kernel-patches/alsa-git-2007-05-31.patch.gz Additional notes: Only obvious fixes and new HW IDs including quirks mostly for HD Audio. The following files will be updated: Documentation/sound/alsa/ALSA-Configuration.txt |1 + include/sound/version.h |4 +- sound/pci/ali5451/ali5451.c |6 +- sound/pci/hda/hda_codec.c | 13 + sound/pci/hda/hda_local.h |2 + sound/pci/hda/patch_conexant.c | 48 +- sound/pci/hda/patch_realtek.c |5 ++- sound/pci/hda/patch_si3054.c|2 + sound/pci/hda/patch_sigmatel.c | 64 +-- sound/soc/s3c24xx/s3c24xx-pcm.c |2 + 10 files changed, 136 insertions(+), 11 deletions(-) The following things were done: Baruch Even (1): [ALSA] hda-codec - Add quirk for MSI S420 Christian Rothlaender (1): [ALSA] hda-codec - Add support for ASUS A8J modem Daniel Drake (1): [ALSA] hda-intel: fix ASUS M2V detection Daniel T Chen (1): [ALSA] hda-codec - Add quirk for Supermicro PDSBA to alc883_cfg_tbl[] Jaroslav Kysela (1): [ALSA] version 1.0.14 Steve Longerbeam (1): [ALSA] hda-codec - Fix pin configs for Gateway MX6453 Takashi Iwai (3): [ALSA] ali5451 - Fix possible NULL dereference [ALSA] hda-codec - Fix input with STAC92xx [ALSA] hda-codec - Fix STAC922x capture boost level Tobin Davis (4): [ALSA] HDA: Add support for Gateway NX860 [ALSA] HDA: Add more systems to Sigmatel codec [ALSA] HDA: Fix headphone mute issue on non-eapd Conexant systems [ALSA] hda-codec - Add support for MSI K9N Ultra Zoltan Devai (1): [ALSA] Fix ASoC s3c24xx-pcm spinlock bug - Jaroslav Kysela <[EMAIL PROTECTED]> Linux Kernel Sound Maintainer ALSA Project, SUSE Labs - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[ALSA PATCH] alsa-git merge request
Linus, please pull from [the linus branch at]: master.kernel.org:/pub/scm/linux/kernel/git/perex/alsa.git linus gitweb interface: http://www.kernel.org/git/?p=linux/kernel/git/perex/alsa.git The GNU patch is available at: ftp://ftp.alsa-project.org/pub/kernel-patches/alsa-git-2007-05-16.patch.gz The following files will be updated: include/sound/soc.h |4 +- include/sound/version.h |2 +- sound/pci/hda/hda_codec.c |3 +- sound/pci/hda/patch_realtek.c | 532 +++-- sound/soc/codecs/ac97.c |3 +- sound/soc/codecs/wm9712.c |1 + sound/soc/soc-core.c | 18 ++- sound/usb/usbquirks.h |9 + 8 files changed, 548 insertions(+), 24 deletions(-) The following things were done: Daniel Drake (1): [ALSA] usb-audio: another Logitech QuickCam ID Jaroslav Kysela (1): [ALSA] version 1.0.14rc4 Kailang Yang (1): [ALSA] hda-codec - Fix ALC882/861VD codec support on some laptops Liam Girdwood (2): [ALSA] ASoC AC97 static GPL symbol fix [ALSA] ASoC AC97 device reg bugfix Takashi Iwai (1): [ALSA] hda-codec - Make the mixer capability check more robust - Jaroslav Kysela <[EMAIL PROTECTED]> Linux Kernel Sound Maintainer ALSA Project, SUSE Labs - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[ALSA PATCH] alsa-git merge request
nput.c | 246 +++ sound/usb/caiaq/caiaq-input.h |8 + sound/usb/caiaq/caiaq-midi.c| 177 ++ sound/usb/caiaq/caiaq-midi.h|8 + sound/usb/usbaudio.c|3 + sound/usb/usbmidi.c | 58 +- sound/usb/usbquirks.h | 23 + 169 files changed, 10637 insertions(+), 5530 deletions(-) rename sound/soc/at91/{at91-i2s.c => at91-ssc.c} (73%) rename sound/soc/at91/{at91-i2s.h => at91-ssc.h} (72%) The following things were done: Abhijit Bhopatkar (1): [ALSA] hda-codec - Add first generation macbook subsystem ID Adrian Bunk (1): [ALSA] sound/pcmcia/vx/vxpocket.c: fix an if() condition Akinobu Mita (1): [ALSA] sound: fix incorrect use of platform_device_register() Andrea Arcangeli (1): [ALSA] hda-codec - Fix front/rear mic inputs on AD1986A codec Andreas Mohr (1): [ALSA] azt3328.c: small cleanup patch Andrew Morton (1): [ALSA] wm8750 typo fix Ben Dooks (2): [ALSA] ASoC Samsung S3C24xx I2S support [ALSA] ASoC Samsung S3C24xx audio DMA Clemens Ladisch (6): [ALSA] Kconfig: fix FW_LOADER dependencies [ALSA] Kconfig: clarify help text for external firmware entries [ALSA] do not depend on FW_LOADER when internal firmware images are used [ALSA] add MODULE_FIRMWARE entries [ALSA] usb-audio: work around broken M-Audio MidiSport Uno firmware [ALSA] usb-audio: work around wrong wMaxPacketSize on ESI M4U Daniel Drake (1): [ALSA] usb-audio: explicitly match Logitech QuickCam Daniel Mack (1): [ALSA] Add Native Instrument usb audio device support David Brownell (1): [ALSA] fix SND_SOC Kconfig David Rientjes (1): [ALSA] wavefront: only declare isapnp on CONFIG_PNP Frank Mandarino (3): [ALSA] ASoC AT91 - SSC port DSP support [ALSA] ASoC AT91 eti B1 machine SSC changes [ALSA] ASoC AT91 build fix Frederik Deweerdt (1): [ALSA] pcm_native: lockdep warning when launching jack Giuliano Pochini (1): [ALSA] echoaudio - increase sleep time at loading firmware Graeme Gregory (5): [ALSA] ASoC Samsung S3C24xx build [ALSA] ASoC WM9712 kmemdup [ALSA] ASoC export AC97 DAI [ALSA] ASoC Samsung S3c24xx updates - audio DMA cleanup [ALSA] ASoC Samsung S3C24xx updates - i2s James Courtier-Dutton (1): [ALSA] snd-emu10k1: Prevent E-Mu 1010 Notebook card from hanging PC. Jaroslav Kysela (1): [ALSA] version 1.0.14rc4 Jean Delvare (1): [ALSA] sound: strlcpy is smart enough Johannes Berg (2): [ALSA] aoa: fix a sparse warning [ALSA] snd-aoa-i2sbus: use MODULE_DEVICE_TABLE instead of plain MODULE_ALIAS John Utz (1): [ALSA] ac97 - Smart 5.1 for VIA 1617a codec Julian Cable (1): [ALSA] hdsp - Add support for fine tuning of sample rate support to HDSP 9632 Kailang Yang (2): [ALSA] hda-codec - Add ALC662 support [ALSA] hda-codec - Add ALC861VD Lenovo support Karsten Wiese (1): [ALSA] snd-usb-caiaq: Make playback work Liam Girdwood (3): [ALSA] SoC WM8753 codec support [ALSA] ASoC WM8753 codec - build changes [ALSA] ASoC Kconfig description Milind Arun Choudhary (1): [ALSA] sound: SPIN_LOCK_UNLOCKED cleanup Pavel Hofman (3): [ALSA] Fix misc bugs in i2c/others/ak4114.c [ALSA] ice1724 - Functioning support for Prodigy 192 [ALSA] ice1724 - Misc fixes for Prodigy192 Ralf Baechle (2): [ALSA] hda_intel: build fix [ALSA] ice1712: build fixes Rask Ingemann Lambertsen (1): [ALSA] ad1816a: Fix modprobe snd_mpu401 && modprobe snd_ad1816a Remy Bruno (1): [ALSA] hdspm - Support for Master mode of AES32 and recent MADI Rene Herman (11): [ALSA] isa_bus: ad1848 [ALSA] isa_bus: adlib [ALSA] isa_bus: cs4231 [ALSA] isa_bus: es1688 [ALSA] es1688 - code clean-up [ALSA] isa_bus: gusclassic [ALSA] isa_bus: gusextreeme [ALSA] gusextreme: set codec_flag [ALSA] isa_bus device/driver naming [ALSA] Fix alsa-devel ML address [ALSA] es1968 - Fix stuttering capture Robert P. J. Day (2): [ALSA] remove unused header file: sound/pci/cs46xx/imgs/cwcemb80.h [ALSA] Delete unused header file sound/pci/au88x0/au88x0_sb.h Seth Forshee (1): [ALSA] ASoC DAPM switching for reentrant codec paths Steve Longerbeam (2): [ALSA] hda-codec - bug fixes for stac92xx HDA codecs. [ALSA] Add speaker pin sequencing to hda_codec.c:snd_hda_parse_pin_def_config() Sylvain FORET (1): [ALSA] snd_hda_intel: fix for intel imac Takashi Iwai (48): [ALSA] hda-codec - Fix models for some lpatops/mobos [ALSA] Port the rest of ALSA ISA drivers to isa_driver [ALSA] Add snd_pcm_group_for_each_entry() for code cleanup [ALSA] ac97 - Make patch functions static [ALSA] bt87x - Add ATI TV-Wonder t
[ALSA PATCH] alsa-git merge request
[ALSA] ASoC AT91 - SSC port DSP support [ALSA] ASoC AT91 eti B1 machine SSC changes [ALSA] ASoC AT91 build fix Frederik Deweerdt (1): [ALSA] pcm_native: lockdep warning when launching jack Giuliano Pochini (1): [ALSA] echoaudio - increase sleep time at loading firmware Graeme Gregory (5): [ALSA] ASoC Samsung S3C24xx build [ALSA] ASoC WM9712 kmemdup [ALSA] ASoC export AC97 DAI [ALSA] ASoC Samsung S3c24xx updates - audio DMA cleanup [ALSA] ASoC Samsung S3C24xx updates - i2s James Courtier-Dutton (1): [ALSA] snd-emu10k1: Prevent E-Mu 1010 Notebook card from hanging PC. Jaroslav Kysela (1): [ALSA] version 1.0.14rc4 Jean Delvare (1): [ALSA] sound: strlcpy is smart enough Johannes Berg (2): [ALSA] aoa: fix a sparse warning [ALSA] snd-aoa-i2sbus: use MODULE_DEVICE_TABLE instead of plain MODULE_ALIAS John Utz (1): [ALSA] ac97 - Smart 5.1 for VIA 1617a codec Julian Cable (1): [ALSA] hdsp - Add support for fine tuning of sample rate support to HDSP 9632 Kailang Yang (1): [ALSA] hda-codec - Add ALC662 support Karsten Wiese (1): [ALSA] snd-usb-caiaq: Make playback work Liam Girdwood (3): [ALSA] SoC WM8753 codec support [ALSA] ASoC WM8753 codec - build changes [ALSA] ASoC Kconfig description Milind Arun Choudhary (1): [ALSA] sound: SPIN_LOCK_UNLOCKED cleanup Pavel Hofman (3): [ALSA] Fix misc bugs in i2c/others/ak4114.c [ALSA] ice1724 - Functioning support for Prodigy 192 [ALSA] ice1724 - Misc fixes for Prodigy192 Ralf Baechle (2): [ALSA] hda_intel: build fix [ALSA] ice1712: build fixes Rask Ingemann Lambertsen (1): [ALSA] ad1816a: Fix modprobe snd_mpu401 && modprobe snd_ad1816a Remy Bruno (1): [ALSA] hdspm - Support for Master mode of AES32 and recent MADI Rene Herman (11): [ALSA] isa_bus: ad1848 [ALSA] isa_bus: adlib [ALSA] isa_bus: cs4231 [ALSA] isa_bus: es1688 [ALSA] es1688 - code clean-up [ALSA] isa_bus: gusclassic [ALSA] isa_bus: gusextreeme [ALSA] gusextreme: set codec_flag [ALSA] isa_bus device/driver naming [ALSA] Fix alsa-devel ML address [ALSA] es1968 - Fix stuttering capture Robert P. J. Day (2): [ALSA] remove unused header file: sound/pci/cs46xx/imgs/cwcemb80.h [ALSA] Delete unused header file sound/pci/au88x0/au88x0_sb.h Seth Forshee (1): [ALSA] ASoC DAPM switching for reentrant codec paths Sylvain FORET (1): [ALSA] snd_hda_intel: fix for intel imac Takashi Iwai (41): [ALSA] hda-codec - Fix models for some lpatops/mobos [ALSA] Port the rest of ALSA ISA drivers to isa_driver [ALSA] Add snd_pcm_group_for_each_entry() for code cleanup [ALSA] ac97 - Make patch functions static [ALSA] bt87x - Add ATI TV-Wonder to the supported list [ALSA] mpu401 - Add MPU401_INFO_UART_ONLY bitflag [ALSA] Enable Kconfig options for external firmwares [ALSA] hda-codec - Allow model=generic always for generic parser [ALSA] Fix NULL dereference with null modelname [ALSA] Fix compilation error in sparc/cs4231.c [ALSA] soc - Fix dependencies in s3c24xx/Kconfig [ALSA] ac97 - Fix MSI L720 laptop [ALSA] hda-codec - Code clean up of patch_sigmatel.c [ALSA] Fix conflicts between const and __devinitdata [ALSA] hda-codec - Fix Macmini and Macbook pin configs [ALSA] hda-intel - Probe additional slots only if necessary [ALSA] ak4114 - Fix a typo in DIF2 bit definition [ALSA] hda-codec - Fix missing array terminators [ALSA] pcxhr - Minor optimization in trigger callback [ALSA] ice1724 - Fix AP192 4wire mode access [ALSA] ak4114 - Fix possible Oops with callbacks [ALSA] ali5451 - Code clean up, irq handler fix [ALSA] hda-codec - Fix SPDIF output [ALSA] ice1724 - call snd_ak4114_build() in juli [ALSA] ice1724 - Add comments for naming of PCM streams [ALSA] hda-codec - Add support of 96kHz back [ALSA] hda-codec - clean up patch_realtek.c [ALSA] hda-codec - Allow opening SPDIF while analog dup mode [ALSA] hda-intel - Merge hda-codec module to a single module [ALSA] hda-codec - Code clean up [ALSA] Fix alsa-devel ML address [ALSA] hda-codec - Fix surround output on AD1986A [ALSA] intel8x0 - Fix Oops in crash kernel [ALSA] hda-codec - Fix 8-channel auto-configuration [ALSA] hda-codec - Add line_out_type to auto_pin_cfg struct [ALSA] hda-codec - Fix output pin types in auto configuration [ALSA] hda-intel - Fix detection of audio codec on Toshiba A100 [ALSA] hda-codec - Fix model for ASUS A9rp [ALSA] Don't use request_firmware if internal firmwares are defined [ALSA] hda-codec - Prefer audio codec name as the mixer name [ALSA] Add description of imac-intel model Tobin Davis (5): [ALSA] hda-co
Re: alsa was Re: ABI coupling to hypervisors via CONFIG_PARAVIRT
On Wed, 14 Mar 2007, Pavel Machek wrote: > Hi! > > > >I think the sound example to the right really shows it. > > >/dev/dsp has a > > >consistent ABI on a ton of systems. The API below it, > > >varies. Linux got > > >file_operations and ALSA. Solaris/BSD may have its > > >vnode-and-so-on-functions and some sort of OSS. > > > > I think this is a poor example as applications lose a > > lot of > > functionality (multiple stream mixing, software volume > > control, etc) > > by going through the legacy /dev/dsp interface vs. using > > native ALSA. > > OTOH /dev/dsp is nice, clean, unixy interface, while alsa creates ugly > ABI you should not even use unless you are libalsa. ouch. Pavel, calm down. World is not perfect and there are always probes to optimize things. We use standard file operations - open/close/ioctl/mmap, too. Jaroslav - Jaroslav Kysela <[EMAIL PROTECTED]> Linux Kernel Sound Maintainer ALSA Project, SUSE Labs - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[ALSA PATCH] alsa-git merge request
Linus, please pull from [the linus branch at]: master.kernel.org:/pub/scm/linux/kernel/git/perex/alsa.git linus gitweb interface: http://www.kernel.org/git/?p=linux/kernel/git/perex/alsa.git The GNU patch is available at: ftp://ftp.alsa-project.org/pub/kernel-patches/alsa-git-2007-03-14.patch.gz Additional notes: Only fixes / new hardware IDs. The following files will be updated: Documentation/sound/alsa/ALSA-Configuration.txt |1 + include/sound/version.h |2 +- sound/pci/ac97/ac97_patch.c | 13 --- sound/pci/hda/hda_intel.c | 13 ++- sound/pci/hda/patch_analog.c| 41 +-- sound/pci/hda/patch_realtek.c |1 + sound/pci/hda/patch_sigmatel.c |5 +++ sound/pci/intel8x0.c| 10 -- sound/soc/Kconfig |2 + sound/soc/at91/Kconfig |3 +- sound/soc/pxa/Kconfig |3 +- 11 files changed, 76 insertions(+), 18 deletions(-) The following things were done: Jaroslav Kysela (1): [ALSA] version 1.0.14rc3 Randy Cushman (1): [ALSA] ac97 - fix AD shared shared jack control logic Takashi Iwai (5): [ALSA] soc - Fix dependencies in Kconfig files [ALSA] hda-intel - Fix codec probe with ATI contorllers [ALSA] hda-codec - Fix speaker output on MacPro [ALSA] intel8x0 - Fix Oops at kdump crash kernel [ALSA] hda-codec - Add model for HP Compaq d5700 Tobin Davis (2): [ALSA] hda-codec - Add suppoprt for Asus M2N-SLI motherboard [ALSA] hda-codec - more systems for Analog Devices Tommi Kyntola (1): [ALSA] intel8x0 - Fix speaker output after S2RAM - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[ALSA PATCH] alsa-git merge request
Linus, please pull from [the linus branch at]: master.kernel.org:/pub/scm/linux/kernel/git/perex/alsa.git linus gitweb interface: http://www.kernel.org/git/?p=linux/kernel/git/perex/alsa.git The GNU patch is available at: ftp://ftp.alsa-project.org/pub/kernel-patches/alsa-git-2007-03-06.patch.gz The following files will be updated: Documentation/sound/alsa/ALSA-Configuration.txt | 12 ++- include/sound/version.h |4 +- sound/pci/ac97/ac97_patch.c |2 + sound/pci/ali5451/ali5451.c |2 + sound/pci/cmipci.c | 18 +++ sound/pci/echoaudio/echoaudio.c |2 + sound/pci/hda/patch_analog.c|3 ++ sound/pci/hda/patch_conexant.c |8 - sound/pci/hda/patch_realtek.c | 21 -- sound/pci/hda/patch_sigmatel.c | 35 +-- sound/pci/riptide/riptide.c |2 + sound/pci/rme9652/hdspm.c |2 + sound/soc/codecs/wm9712.c |3 +- 13 files changed, 94 insertions(+), 20 deletions(-) The following things were done: Jaroslav Kysela (1): [ALSA] version 1.0.14rc3 Joe Sauer (1): [ALSA] soc - Fix WM9712 register cache entry Liam Girdwood (1): [ALSA] soc - WM9712 PCM volume Takashi Iwai (7): [ALSA] hda-codec - Add LFE support on Dell M90 [ALSA] hda-codec - Add missing Mic Boost controls for ALC262 [ALSA] hda-codec - Define pin configs for MacBooks [ALSA] Add missing sysfs device assignment for ALSA PCI drivers [ALSA] ac97 - Add Thinkpad X31 and R40 to AD1981x blacklist [ALSA] hda-codec - Add missing Mic Boost for AD1986A codec [ALSA] cmipci - Allow to disable integrated FM port Tobin Davis (2): [ALSA] hda-codec - Add method for configuring Mac Pro without PCI SSID [ALSA] hda-codec - Fix logic error in headphone mute for Conexant codecs - Jaroslav Kysela <[EMAIL PROTECTED]> Linux Kernel Sound Maintainer ALSA Project, SUSE Labs - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[PATCH] bonding: replace system timer with work queue
Hi, please, review and apply to mm tree for further testing. The patch is also available at ftp://ftp.alsa-project.org/pub/kernel-patches/bonding-workqueue.patch . Thank you, Jaroslav == bonding: replace system timer with work queue This patch replaces system timer with work queue in monitor functions. The reason for this change is that bonding handlers calls various sleeping functions from the timer handler which is not allowed. Because we cannot share the main workqueue threads (rtnl_lock is used also in linkwatch_event) - new bond workqueue thread is created. Signed-off-by: Jaroslav Kysela <[EMAIL PROTECTED]> diff -rupN linux-2.6.20.orig/drivers/net/bonding/bond_3ad.c linux-2.6.20/drivers/net/bonding/bond_3ad.c --- linux-2.6.20.orig/drivers/net/bonding/bond_3ad.c2007-02-04 19:44:54.0 +0100 +++ linux-2.6.20/drivers/net/bonding/bond_3ad.c 2007-02-28 09:19:43.831369202 +0100 @@ -2097,8 +2097,10 @@ void bond_3ad_unbind_slave(struct slave * times out, and it selects an aggregator for the ports that are yet not * related to any aggregator, and selects the active aggregator for a bond. */ -void bond_3ad_state_machine_handler(struct bonding *bond) +void bond_3ad_state_machine_handler(struct work_struct *work) { + struct ad_bond_info *ad_info = container_of(work, struct ad_bond_info, ad_work.work); + struct bonding *bond = (struct bonding *)((char *)ad_info - offsetof(struct bonding, ad_info)); struct port *port; struct aggregator *aggregator; @@ -2149,7 +2151,7 @@ void bond_3ad_state_machine_handler(stru } re_arm: - mod_timer(&(BOND_AD_INFO(bond).ad_timer), jiffies + ad_delta_in_ticks); + queue_delayed_work(bond_wq, &(BOND_AD_INFO(bond).ad_work), ad_delta_in_ticks); out: read_unlock(&bond->lock); } diff -rupN linux-2.6.20.orig/drivers/net/bonding/bond_3ad.h linux-2.6.20/drivers/net/bonding/bond_3ad.h --- linux-2.6.20.orig/drivers/net/bonding/bond_3ad.h2007-02-04 19:44:54.0 +0100 +++ linux-2.6.20/drivers/net/bonding/bond_3ad.h 2007-02-28 09:25:21.921287093 +0100 @@ -261,7 +261,7 @@ struct ad_bond_info { int lacp_fast; /* whether fast periodic tx should be * requested */ - struct timer_list ad_timer; + struct delayed_work ad_work; struct packet_type ad_pkt_type; }; @@ -276,7 +276,7 @@ struct ad_slave_info { void bond_3ad_initialize(struct bonding *bond, u16 tick_resolution, int lacp_fast); int bond_3ad_bind_slave(struct slave *slave); void bond_3ad_unbind_slave(struct slave *slave); -void bond_3ad_state_machine_handler(struct bonding *bond); +void bond_3ad_state_machine_handler(struct work_struct *work); void bond_3ad_adapter_speed_changed(struct slave *slave); void bond_3ad_adapter_duplex_changed(struct slave *slave); void bond_3ad_handle_link_change(struct slave *slave, char link); diff -rupN linux-2.6.20.orig/drivers/net/bonding/bond_alb.c linux-2.6.20/drivers/net/bonding/bond_alb.c --- linux-2.6.20.orig/drivers/net/bonding/bond_alb.c2007-02-04 19:44:54.0 +0100 +++ linux-2.6.20/drivers/net/bonding/bond_alb.c 2007-02-28 09:26:10.857038588 +0100 @@ -28,7 +28,7 @@ #include #include #include -#include +#include #include #include #include @@ -1367,9 +1367,10 @@ out: return 0; } -void bond_alb_monitor(struct bonding *bond) +void bond_alb_monitor(struct work_struct *work) { - struct alb_bond_info *bond_info = &(BOND_ALB_INFO(bond)); + struct alb_bond_info *bond_info = container_of(work, struct alb_bond_info, alb_work.work); + struct bonding *bond = (struct bonding *)((char *)bond_info - offsetof(struct bonding, alb_info)); struct slave *slave; int i; @@ -1471,7 +1472,7 @@ void bond_alb_monitor(struct bonding *bo } re_arm: - mod_timer(&(bond_info->alb_timer), jiffies + alb_delta_in_ticks); + queue_delayed_work(bond_wq, &(bond_info->alb_work), alb_delta_in_ticks); out: read_unlock(&bond->lock); } diff -rupN linux-2.6.20.orig/drivers/net/bonding/bond_alb.h linux-2.6.20/drivers/net/bonding/bond_alb.h --- linux-2.6.20.orig/drivers/net/bonding/bond_alb.h2007-02-04 19:44:54.0 +0100 +++ linux-2.6.20/drivers/net/bonding/bond_alb.h 2007-02-28 09:25:50.607486221 +0100 @@ -84,7 +84,7 @@ struct tlb_slave_info { }; struct alb_bond_info { - struct timer_list alb_timer; + struct delayed_work alb_work; struct tlb_client_info *tx_hashtbl; /* Dynamically allocated */ spinlock_t tx_hashtbl_lock; u32 unbalanced_load; @@ -125,7 +125,7 @@ void bond_alb_deinit_slave(struct bondin void bond_alb_handle_link_change(struct bonding
[ALSA PATCH] alsa-git merge request
Linus, please do an update from: http://www.kernel.org/pub/scm/linux/kernel/git/perex/alsa.git (linus branch) The GNU patch is available at: ftp://ftp.alsa-project.org/pub/kernel-patches/alsa-git-2007-02-14.patch.gz Additional notes: Mostly fixes and cleanups. The following files will be updated: include/sound/emu10k1.h|2 +- include/sound/version.h|2 +- sound/arm/pxa2xx-ac97.c|6 +- sound/drivers/dummy.c | 11 +- sound/drivers/mtpav.c | 12 +- sound/drivers/mts64.c |6 +- sound/drivers/portman2x4.c |6 +- sound/drivers/serial-u16550.c | 14 +- sound/drivers/virmidi.c|6 +- sound/isa/ad1848/ad1848.c |2 +- sound/isa/cmi8330.c|4 +- sound/isa/es1688/es1688.c |6 +- sound/isa/gus/gusclassic.c | 10 +- sound/isa/gus/gusextreme.c | 12 +- sound/isa/gus/gusmax.c | 13 +- sound/isa/opl3sa2.c|4 +- sound/isa/sb/sb8.c |6 +- sound/pci/ac97/ac97_codec.c|1 + sound/pci/ac97/ac97_patch.c|6 + sound/pci/ac97/ac97_patch.h|1 + sound/pci/hda/patch_conexant.c | 343 ++-- sound/pci/hda/patch_sigmatel.c | 44 + sound/soc/at91/at91-i2s.c | 43 +++--- sound/soc/at91/at91-pcm.c | 20 ++-- sound/soc/codecs/Kconfig |8 +- sound/usb/usbaudio.c | 10 -- sound/usb/usbquirks.h | 23 +++ 27 files changed, 394 insertions(+), 227 deletions(-) The following things were done: Clemens Ladisch (2): [ALSA] emu10k1: fix typo [ALSA] usb-audio: add PCR-A PCM support Frank Mandarino (1): [ALSA] Change AT91 PDC register defines for 2.6.20 kernel Jaroslav Kysela (2): [ALSA] SoC codecs - fix Kconfig - depends -> depends on [ALSA] version 1.0.14rc2 Jiri Kosina (1): [ALSA] usbaudio - remove urb->bandwidth reference Mikael Nilsson (1): [ALSA] hda-codec - Patch for enabling LFE on more Dell laptops Prarit Bhargava (1): [ALSA] Fix __devinit and __devexit issues with sound drivers Takashi Iwai (3): [ALSA] hda-codec - Fix Oops with probing sigmatel codec chips [ALSA] ac97 - Fix silent output problem with Cx20551 codec [ALSA] Fix a typo in __dev* changes in portman2x4.c Tobin Davis (1): [ALSA] hda-codec - More fixes for Conexant HD Audio support - Jaroslav Kysela <[EMAIL PROTECTED]> Linux Kernel Sound Maintainer ALSA Project, SUSE Labs - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [ALSA PATCH] alsa-git merge request
On Fri, 9 Feb 2007, Linus Torvalds wrote: > On Fri, 9 Feb 2007, Takashi Iwai wrote: > > > At Fri, 9 Feb 2007 15:02:05 +0100 (CET), > > Jaroslav Kysela wrote: > > > > > > Linus, please do an update from: > > > > > > http://www.kernel.org/pub/scm/linux/kernel/git/perex/alsa.git > > > (linus branch) > > > > Jaroslav, as I wrote you many times, this tree includes the wrong > > patches! If it's merged, we'd need fix patches in addition > > eventually... > > Ok, not pulled. Get your stories straight first ;) It's fixed. The right two line fix patch is in alsa.git repo now. Please, pull. Thanks, Jaroslav - Jaroslav Kysela <[EMAIL PROTECTED]> Linux Kernel Sound Maintainer ALSA Project, SUSE Labs - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [ALSA PATCH] alsa-git merge request
On Fri, 9 Feb 2007, Takashi Iwai wrote: > At Fri, 09 Feb 2007 15:47:30 +0100, > I wrote: > > > > At Fri, 9 Feb 2007 15:40:21 +0100 (CET), > > Jaroslav Kysela wrote: > > > > > > On Fri, 9 Feb 2007, Takashi Iwai wrote: > > > > > > > At Fri, 9 Feb 2007 15:02:05 +0100 (CET), > > > > Jaroslav Kysela wrote: > > > > > > > > > > Linus, please do an update from: > > > > > > > > > > http://www.kernel.org/pub/scm/linux/kernel/git/perex/alsa.git > > > > > (linus branch) > > > > > > > > Jaroslav, as I wrote you many times, this tree includes the wrong > > > > patches! If it's merged, we'd need fix patches in addition > > > > eventually... > > > > > > I replaced patches with your code a few days ago. If something else is > > > broken, please, let me know. > > > > Strange, my local tree freshly pulled have old files. > > I'll try to pull cleanly and check again. > > Reconfirmed that it's still broken. The below is a patch to fix. > Please apply. The bug-fix patch has been applied to alsa.git tree. Thanks, Jaroslav - Jaroslav Kysela <[EMAIL PROTECTED]> Linux Kernel Sound Maintainer ALSA Project, SUSE Labs - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [ALSA PATCH] alsa-git merge request
On Fri, 9 Feb 2007, Takashi Iwai wrote: > At Fri, 9 Feb 2007 15:02:05 +0100 (CET), > Jaroslav Kysela wrote: > > > > Linus, please do an update from: > > > > http://www.kernel.org/pub/scm/linux/kernel/git/perex/alsa.git > > (linus branch) > > Jaroslav, as I wrote you many times, this tree includes the wrong > patches! If it's merged, we'd need fix patches in addition > eventually... I replaced patches with your code a few days ago. If something else is broken, please, let me know. Jaroslav - Jaroslav Kysela <[EMAIL PROTECTED]> Linux Kernel Sound Maintainer ALSA Project, SUSE Labs - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[ALSA PATCH] alsa-git merge request
: add request_firmware() [ALSA] korg1212: add request_firmware() [ALSA] maestro3: add request_firmware() Clement Guedez (1): [ALSA] Add support of the ESI Waveterminal 192M to the ice1724 ALSA driver Cory T. Tusar (1): [ALSA] hda-codec - Dell Latitude D820 + D/Port Dan Carpenter (1): [ALSA] atiixp - Add a parameter ac97_quirk Daniel Jacobowitz (1): [ALSA] ac97 - Fix vt1617a build ops Frank Mandarino (14): [ALSA] ASoC: core code [ALSA] ASoC AT91RM92000 audio DMA [ALSA] ASoC AT91RM92000 I2S support [ALSA] ASoC AT91RM92000 eti_b1 machine support [ALSA] ASoC AT91RM92000 build [ALSA] ASoC AT91 DAI modes update [ALSA] Update AT91 ASoC driver for 2.6.19 kernel. [ALSA] ASoC at91 - Fix NULL pointer dereference in at91_i2s_shutdown [ALSA] ASoC WM8731 support for 32k @ 12MHz sysclk [ALSA] soc - ASoC 0.13 WM8731 codec [ALSA] soc - ASoC 0.13 AT91 slave patch [ALSA] soc - ASoC 0.13 AT91 I2S [ALSA] soc - ASoC 0.13 AT91 DMA [ALSA] soc - ASoC 0.13 AT91 Eti_B1 board support Giuliano Pochini (1): [ALSA] echoaudio, add TLV support Graeme Gregory (1): [ALSA] soc - 0.13 ASoC headers Gregor Jasny (1): [ALSA] usbaudio - Fix Oops with broken usb descriptors Hubert Kahlert (1): [ALSA] Fix mask to stop AT91 SSC clock on shutdown Jakub Schmidtke (1): [ALSA] hda-codec - Add ALC861VD/ALC660VD support James C Georgas (1): [ALSA] Remove AC97 POP control for STAC9708/11 James Courtier-Dutton (10): [ALSA] snd-emu10k1: Added support for emu1010, including E-Mu 1212m and E-Mu 1820m [ALSA] snd_emu10k1: Added support for 14dB Attenuation PADS on DACs and ADCs. [ALSA] snd-emu10k1: Add emu1010 internal clock rate control for 44100 or 48000. [ALSA] snd-emu10k1: emu1010: replace long udelay with msleep. [ALSA] snd-emu10k1: Update Enum naming. [ALSA] snd-ca0106: Updated Enum control names. [ALSA] emu10k1: Add Audio capture support for Audigy 2 ZS Notebook. [ALSA] emu10k1: Rename the digital optical capture control for the Audigy 2 ZS [ALSA] ca0106: Fix sound capture on Audigy LS via AC97. [ALSA] emu10k1: Update registers defines for the Audigy 2/emu10k2.5 Jaroslav Kysela (4): [ALSA] hda_intel: increase maximum DMA buffer size to 1024MB [ALSA] pcm core: add prealloc_max file to substream directory to show maximum DMA size [ALSA] hda-codec - add ASUS W7J (0x1043, 0x1205) to quirk list - 3stack [ALSA] version 1.0.14rc2 Jean Delvare (1): [ALSA] snd-ak4114: Fix two array overflows Jerome Demange (1): [ALSA] ac97 - enables sound output through speakers on MSI S250 laptop Jochen Voss (2): [ALSA] Enable capture from line-in and CD on Revolution 5.1 [ALSA] Enable the analog loopback of the Revolution 5.1 Johannes Berg (7): [ALSA] allow registering an alsa device with struct device pointer [ALSA] alsa core: add struct device pointer to struct snd_pcm [ALSA] aoa: set device pointer in pcms [ALSA] aoa: fix up i2sbus_attach_codec [ALSA] alsa core: convert to list_for_each_entry* [ALSA] snd-aoa: fix onyx resume [ALSA] aoa: remove suspend/resume printks John Daiker (1): [ALSA] usbaudio.c: remove unneeded casts Jonathan Woithe (1): [ALSA] hda-codec - Make internal speaker work on Acer C20x tablets Joseph Chan (1): [ALSA] hda-codec - Add support for VIA VT1708(A) HD audio codec Kailang Yang (2): [ALSA] hda-codec - Add new modesl for Realtek codecs [ALSA] hda-codec - Add HP BPC-D7000 support Karsten Wiese (1): [ALSA] snd_hwdep_release() racefix Krzysztof Helt (1): [ALSA] sparc dbri comment fix Leonard Norrgard (1): [ALSA] sound: hda: detect ALC883 on MSI K9A Platinum motherboards (MS-7280) Liam Girdwood (31): [ALSA] ASoC: Build files [ALSA] ASoC: documentation & maintainer [ALSA] ASoC pxa2xx DMA support [ALSA] ASoC pxa2xx I2S support [ALSA] ASoC pxa2xx AC97 support [ALSA] ASoC pxa2xx Corgi machine support [ALSA] ASoC pxa2xx Spitz machine support [ALSA] ASoC pxa2xx Tosa machine support [ALSA] ASoC pxa2xx Poodle machine support [ALSA] ASoC pxa2xx build support [ALSA] ASoC DAI capabilities labelling [ALSA] ASoC debug output build breakage [ALSA] ASoC - Fix build warnings in soc-core.c [ALSA] ASoC: Add support for BCLK based on (Rate * Chn * Word Size) [ALSA] ASoC - mixer name changes for older OSS app support [ALSA] Remove trailing white space from wm9712.c [ALSA] Additional credits to soc-core [ALSA] ASoC codec probe failure bug [ALSA] ASoC codec error reporting [ALSA] ASoC force running of delayed PM work at suspend() and remove() [ALSA] ASoC very minor coding style fix for snd_soc_new_pcms() [ALSA] soc - ASoC 0.13 core changes [ALSA] soc -
[ALSA PATCH] alsa-git merge request
Linus, please do an update from: http://www.kernel.org/pub/scm/linux/kernel/git/perex/alsa.git (linus branch) The GNU patch is available at: ftp://ftp.alsa-project.org/pub/kernel-patches/alsa-git-2007-01-23.patch.gz The following files will be updated: sound/usb/usx2y/usbusx2yaudio.c |2 +- sound/usb/usx2y/usx2yhwdeppcm.c |2 +- 2 files changed, 2 insertions(+), 2 deletions(-) The following things were done: Karsten Wiese (1): [ALSA] Repair snd-usb-usx2y over OHCI - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[ALSA PATCH] alsa-git merge request
Linus, please do an update from: http://www.kernel.org/pub/scm/linux/kernel/git/perex/alsa.git (linus branch) The GNU patch is available at: ftp://ftp.alsa-project.org/pub/kernel-patches/alsa-git-2007-01-09.patch.gz The following files will be updated: include/sound/version.h |2 +- sound/pci/cmipci.c |3 ++- sound/pci/echoaudio/midi.c |6 -- sound/pci/hda/hda_generic.c |5 +++-- sound/pci/hda/hda_intel.c | 14 +++--- sound/usb/usbaudio.c| 10 -- sound/usb/usbmixer.c|2 +- 7 files changed, 30 insertions(+), 12 deletions(-) The following things were done: Clemens Ladisch: [ALSA] usb-audio: work around wrong frequency in CM6501 descriptors Giuliano Pochini: [ALSA] Fix potential NULL pointer dereference in echoaudio midi Jaroslav Kysela: [ALSA] version 1.0.14rc1 Jason Gaston: [ALSA] hda_intel: ALSA HD Audio patch for Intel ICH9 Mariusz Kozlowski: [ALSA] usb: usbmixer error path fix Peer Chen: [ALSA] Audio: Add nvidia HD Audio controllers of MCP67 support to hda_intel.c Takashi Iwai: [ALSA] hda-codec - Fix NULL dereference in generic hda code [ALSA] usbaudio - Fix kobject_add() error at reconnection Timofei V. Bondarenko: [ALSA] _snd_cmipci_uswitch_put doesn't set zero flags - Jaroslav Kysela <[EMAIL PROTECTED]> Linux Kernel Sound Maintainer ALSA Project, SUSE Labs - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[ALSA PATCH] alsa-git merge request
] use the ALIGN macro [ALSA] use the roundup macro [ALSA] pcm core: fix silence_start calculations Glen Masgai: [ALSA] ymfpci: fix swap_rear for S/PDIF passthrough James C Georgas: [ALSA] ac97_codec - trivial fix for bit update functions James Courtier-Dutton: [ALSA] snd-ca0106: Add new card variant. [ALSA] snd-ca0106: Fix typos. [ALSA] ac97: Identify CMI9761 chips. Jaroslav Kysela: [ALSA] ac97_codec (ALC655): add EAPD hack for MSI L725 laptop [ALSA] version 1.0.14rc1 Jean Delvare: [ALSA] sound: Don't include i2c-dev.h Nickolay V. Shmyrev: [ALSA] snd_hda_intel 3stack mode for ASUS P5P-L2 Remy Bruno: [ALSA] hdsp: precise_ptr control switched off by default Takashi Iwai: [ALSA] hda-codec - Fix wrong error checks in patch_{realtek,analog}.c [ALSA] hda-codec - Don't return error at initialization of modem codec [ALSA] hda-codec - Fix a typo [ALSA] hda-codec - Add model for HP q965 [ALSA] hda-codec - Fix model for ASUS V1j laptop [ALSA] hda-codec - Fix detection of supported sample rates [ALSA] hda-codec - Verbose proc output for PCM parameters [ALSA] ac97 - Fix potential negative array index [ALSA] Fix races in PCM OSS emulation [ALSA] Fix invalid assignment of PCI revision [ALSA] Remove IRQF_DISABLED for shared PCI irqs Tobias Klauser: [ALSA] sound/usb/usbaudio: Handle return value of usb_register() - Jaroslav Kysela <[EMAIL PROTECTED]> Linux Kernel Sound Maintainer ALSA Project, SUSE Labs - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [ALSA PATCH] alsa-git merge request
On Fri, 15 Dec 2006, Andrew Morton wrote: > On Fri, 15 Dec 2006 08:52:48 +0100 (CET) > Jaroslav Kysela <[EMAIL PROTECTED]> wrote: > > > Linus, please do an update from: > > > > http://www.kernel.org/pub/scm/linux/kernel/git/perex/alsa.git > > (linus branch) > > > > The GNU patch is available at: > > > > ftp://ftp.alsa-project.org/pub/kernel-patches/alsa-git-2006-12-15.patch.gz > > > > drivers/input/touchscreen/ucb1400_ts.c |2 +- I applied this patch to alsa-git tree. Thanks, Jaroslav - Jaroslav Kysela <[EMAIL PROTECTED]> Linux Kernel Sound Maintainer ALSA Project, SUSE Labs - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [ALSA PATCH] alsa-git merge request
On Fri, 15 Dec 2006, Andrew Morton wrote: > On Fri, 15 Dec 2006 00:13:19 -0800 > Andrew Morton <[EMAIL PROTECTED]> wrote: > > > It's going to need this fix > > And this one, which was sent and ignored a week ago. > > Consideration of the below review comments would be useful, too. > > > > > From: Andrew Morton <[EMAIL PROTECTED]> > > Fix the soc code after dhowells workqueue changes. I applied this patch to alsa-git tree. Thanks, Jaroslav - Jaroslav Kysela <[EMAIL PROTECTED]> Linux Kernel Sound Maintainer ALSA Project, SUSE Labs - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[ALSA PATCH] alsa-git merge request
/soc/at91/at91-i2s.c | 673 + sound/soc/at91/at91-pcm.c | 427 +++ sound/soc/at91/at91-pcm.h | 71 + sound/soc/at91/eti_b1_wm8731.c | 268 ++ sound/soc/codecs/Kconfig | 15 sound/soc/codecs/Makefile |9 sound/soc/codecs/ac97.c| 167 + sound/soc/codecs/ac97.h| 18 sound/soc/codecs/wm8731.c | 886 ++ sound/soc/codecs/wm8731.h | 41 sound/soc/codecs/wm8750.c | 1282 + sound/soc/codecs/wm8750.h | 66 sound/soc/codecs/wm9712.c | 781 ++ sound/soc/codecs/wm9712.h | 14 sound/soc/pxa/Kconfig | 60 sound/soc/pxa/Makefile | 20 sound/soc/pxa/corgi.c | 361 +++ sound/soc/pxa/poodle.c | 329 ++ sound/soc/pxa/pxa2xx-ac97.c| 437 +++ sound/soc/pxa/pxa2xx-i2s.c | 354 +++ sound/soc/pxa/pxa2xx-pcm.c | 363 +++ sound/soc/pxa/pxa2xx-pcm.h | 48 sound/soc/pxa/spitz.c | 374 +++ sound/soc/pxa/tosa.c | 287 ++ sound/soc/soc-core.c | 2057 +++ sound/soc/soc-dapm.c | 1327 ++ sound/usb/usbaudio.c | 76 - 187 files changed, 25779 insertions(+), 3210 deletions(-) The following things were done: Adrian Bunk: [ALSA] sound/core/control.c: remove dead code [ALSA] make sound/pci/hda/patch_sigmatel.c:stac92xx_dmic_labels[] static [ALSA] make sound/core/control.c:snd_ctl_new() static [ALSA] sound/soc/soc-dapm.c: make 4 functions static Akinobu Mita: [ALSA] sound: initialize rawmidi substream list [ALSA] sound: fix PCM substream list Andreas Mohr: [ALSA] via82xx: add __devinitdata Andrew L. Neporada: [ALSA] hda-codec - Clevo M540JE, M550JE laptops (Nvidia MCP51 chipset, ALC883 codec) Andrew Morton: [ALSA] arm header fix Christian Hesse: [ALSA] hda-codec - fix typo in PCI IDs Clemens Ladisch: [ALSA] usb-audio: merge playback/capture hardware information structs [ALSA] usb-audio: allow pausing [ALSA] use the ALIGN macro [ALSA] use the roundup macro [ALSA] soc-core: fix multi-line string literal [ALSA] pci: select FW_LOADER instead of depending on it [ALSA] emu10k1: select FW_LOADER [ALSA] ymfpci: add request_firmware() [ALSA] pcm core: fix silence_start calculations [ALSA] sb16: add request_firmware() [ALSA] wavefront: simplify YSS225 register initialization [ALSA] wavefront: add request_firmware() [ALSA] korg1212: add request_firmware() [ALSA] maestro3: add request_firmware() [ALSA] usb-audio: work around wrong frequency in CM6501 descriptors Dan Carpenter: [ALSA] atiixp - Add a parameter ac97_quirk Frank Mandarino: [ALSA] ASoC: core code [ALSA] ASoC AT91RM92000 audio DMA [ALSA] ASoC AT91RM92000 I2S support [ALSA] ASoC AT91RM92000 eti_b1 machine support [ALSA] ASoC AT91RM92000 build [ALSA] ASoC AT91 DAI modes update [ALSA] Update AT91 ASoC driver for 2.6.19 kernel. Giuliano Pochini: [ALSA] Fix potential NULL pointer dereference in echoaudio midi [ALSA] echoaudio, add TLV support Glen Masgai: [ALSA] ymfpci: fix swap_rear for S/PDIF passthrough Hubert Kahlert: [ALSA] Fix mask to stop AT91 SSC clock on shutdown James C Georgas: [ALSA] ac97_codec - trivial fix for bit update functions James Courtier-Dutton: [ALSA] snd-emu10k1: Added support for emu1010, including E-Mu 1212m and E-Mu 1820m [ALSA] snd_emu10k1: Added support for 14dB Attenuation PADS on DACs and ADCs. [ALSA] snd-emu10k1: Add emu1010 internal clock rate control for 44100 or 48000. [ALSA] snd-emu10k1: emu1010: replace long udelay with msleep. [ALSA] snd-emu10k1: Update Enum naming. [ALSA] snd-ca0106: Updated Enum control names. [ALSA] snd-ca0106: Add new card variant. [ALSA] snd-ca0106: Fix typos. [ALSA] emu10k1: Add Audio capture support for Audigy 2 ZS Notebook. [ALSA] emu10k1: Rename the digital optical capture control for the Audigy 2 ZS [ALSA] ca0106: Fix sound capture on Audigy LS via AC97. [ALSA] ac97: Identify CMI9761 chips. [ALSA] emu10k1: Update registers defines for the Audigy 2/emu10k2.5 Jaroslav Kysela: [ALSA] ac97_codec (ALC655): add EAPD hack for MSI L725 laptop [ALSA] hda_intel: increase maximum DMA buffer size to 1024MB [ALSA] pcm core: add
[ALSA PATCH] alsa-git merge request
Linus, please do an update from: http://www.kernel.org/pub/scm/linux/kernel/git/perex/alsa.git (linus branch) The GNU patch is available at: ftp://ftp.alsa-project.org/pub/kernel-patches/alsa-git-2006-11-28.patch.gz Additional notes: This update contains only serious fixes. The following files will be updated: include/sound/version.h |2 +- sound/aoa/codecs/snd-aoa-codec-tas.c | 13 + sound/core/oss/pcm_oss.c |3 ++- sound/core/pcm_native.c |6 -- sound/core/rtctimer.c| 20 ++-- sound/pci/emu10k1/emu10k1_main.c |1 + sound/pci/hda/patch_realtek.c|2 +- sound/pci/hda/patch_sigmatel.c | 14 +++--- sound/usb/usbaudio.c |3 ++- 9 files changed, 41 insertions(+), 23 deletions(-) The following things were done: Clemens Ladisch: [ALSA] rtctimer: handle RTC interrupts with a tasklet James Courtier-Dutton: [ALSA] snd-emu10k1: Fix capture for one variant. Jaroslav Kysela: [ALSA] version 1.0.13 John W. Linville: [ALSA] hda: fix typo for xw4400 PCI sub-ID Matt Porter: [ALSA] hda: fix sigmatel dell system detection Paul Mackerras: [ALSA] Enable stereo line input for TAS codec Takashi Iwai: [ALSA] Fix hang-up at disconnection of usb-audio - Jaroslav Kysela <[EMAIL PROTECTED]> Linux Kernel Sound Maintainer ALSA Project, SUSE Labs - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[ALSA GIT SYNC] ALSA version 1.0.10rc1+
.c|4 sound/pci/nm256/nm256.c | 93 +- sound/pci/rme32.c|4 sound/pci/rme96.c|4 sound/pci/rme9652/hdsp.c | 55 - sound/pci/rme9652/hdspm.c| 33 sound/pci/rme9652/rme9652.c | 24 sound/pci/trident/trident_main.c | 10 sound/pci/via82xx.c | 17 sound/pci/via82xx_modem.c|3 sound/pci/ymfpci/ymfpci_main.c | 232 +++-- sound/pcmcia/vx/vxpocket.c | 12 sound/sound_core.c | 27 sound/synth/emux/emux_synth.c|1 sound/usb/usbaudio.c | 320 --- sound/usb/usbmidi.c | 111 ++ sound/usb/usx2y/usx2yhwdeppcm.c |2 84 files changed, 2036 insertions(+), 703 deletions(-) Jaroslav - Jaroslav Kysela <[EMAIL PROTECTED]> Linux Kernel Sound Maintainer ALSA Project, SUSE Labs - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[PATCH] broken error path in drivers/pnp/card.c
Hi, the error path in pnp_request_card_device() is broken (one variable is left initialized and the semaphore is not unlocked). The bellow patch fixes it (and has been tested). Please, apply immediately. Signed-off-by: Jaroslav Kysela <[EMAIL PROTECTED]> diff --git a/drivers/pnp/card.c b/drivers/pnp/card.c --- a/drivers/pnp/card.c +++ b/drivers/pnp/card.c @@ -312,6 +312,8 @@ found: if (drv->link.driver.probe) { if (drv->link.driver.probe(&dev->dev)) { dev->dev.driver = NULL; + dev->card_link = NULL; + up_write(&dev->dev.bus->subsys.rwsem); return NULL; } } Jaroslav - Jaroslav Kysela <[EMAIL PROTECTED]> Linux Kernel Sound Maintainer ALSA Project, SUSE Labs - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[PATCH] broken error path in drivers/pnp/card.c
Hi all, it seems that the error path in pnp_request_card_device() is broken (one variable is left initialized and the semaphore is not unlocked). The bellow patch should fix it. Signed-off-by: Jaroslav Kysela <[EMAIL PROTECTED]> diff --git a/drivers/pnp/card.c b/drivers/pnp/card.c --- a/drivers/pnp/card.c +++ b/drivers/pnp/card.c @@ -312,6 +312,8 @@ found: if (drv->link.driver.probe) { if (drv->link.driver.probe(&dev->dev)) { dev->dev.driver = NULL; + dev->card_link = NULL; + up_write(&dev->dev.bus->subsys.rwsem); return NULL; } } Jaroslav - Jaroslav Kysela <[EMAIL PROTECTED]> Linux Kernel Sound Maintainer ALSA Project, SUSE Labs - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [ALSA PATCH] 1.0.9b+
On Thu, 28 Jul 2005, Andrew Morton wrote: > Jaroslav Kysela <[EMAIL PROTECTED]> wrote: > > > > Linus, please do an update from: > > > >rsync://rsync.kernel.org/pub/scm/linux/kernel/git/perex/alsa.git > > > > ... > > 65 files changed, 5059 insertions(+), 1122 deletions(-) > > The git-alsa.patch in -mm which I obtain from > master.kernel.org:/pub/scm/linux/kernel/git/perex/alsa-current.git is > empty. So we're now wanting to merge 4,000 lines of unreviewed code which > hasn't been tested in -mm at approximately the -rc4 stage. > > We need to become much better at this. Yes, sure. I wanted to sync more early, but I had some trouble with cogito. Now things settled a bit, so I'll start with regular updates. Note that most of lines are from new Sparc and ARM drivers. Other changes are mostly small bugfixes, cleanups and new hardware ID additions. The all changes goes through all ALSA developers (our CVS server sends us whole diffs back), so all of them review/verify new code and can fix it ASAP. It works quite well. Jaroslav - Jaroslav Kysela <[EMAIL PROTECTED]> Linux Kernel Sound Maintainer ALSA Project, SUSE Labs - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [Alsa-devel] Re: [2.6 patch] schedule obsolete OSS drivers for removal
On Thu, 28 Jul 2005, Thorsten Knabe wrote: > On Tue, 26 Jul 2005, Adrian Bunk wrote: > > > This patch schedules obsolete OSS drivers (with ALSA drivers that > > support the same hardware) for removal. > > Hello Adrian. > > I'm the maintainer of the OSS AD1816 sound driver. I'm aware of two > problems of the ALSA AD1816 driver, that do not show up with the OSS > driver: > - According to my own experience and user reports audio is choppy with > some VoIP Softphones like gnophone at least when used with the ALSA > OSS emulation layer, whereas the OSS driver is crystal clear. > - Users reported, that on some HP Kayak systems the on-board AD1816A was > not properly detected by the ALSA driver or was detected, but there > was no audio output. I'm not sure if the problem is still present in > the current ALSA driver, as I do not own such a system. > > Maybe the OSS driver should stay in the kernel, until those problems are > fixed in the ALSA driver. The problem is that nobody reported us mentioned problems. We have no bug-report regarding the AD1816A driver. Perhaps, it would be a good idea to add a notice to the help file and/or driver that the ALSA driver should be tested and bugs reported to the ALSA bug-tracking-system. Thanks, Jaroslav - Jaroslav Kysela <[EMAIL PROTECTED]> Linux Kernel Sound Maintainer ALSA Project, SUSE Labs - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[ALSA PATCH] 1.0.9b+
Linus, please do an update from: rsync://rsync.kernel.org/pub/scm/linux/kernel/git/perex/alsa.git The GNU patch is available at: ftp://ftp.alsa-project.org/pub/kernel-patches/alsa-git-2005-07-28.patch.gz Additional notes: Mostly cleanups and added the Sparc DBRI driver. The following files will be updated: sound/pcmcia/vx/vx_entry.c | 375 --- sound/pcmcia/vx/vxp440.c| 14 Documentation/sound/alsa/ALSA-Configuration.txt | 44 include/sound/core.h| 37 include/sound/driver.h |2 include/sound/emu10k1.h |1 include/sound/version.h |4 sound/arm/Kconfig | 14 sound/arm/Makefile |8 sound/arm/pxa2xx-ac97.c | 410 +++ sound/arm/pxa2xx-pcm.c | 367 +++ sound/arm/pxa2xx-pcm.h | 29 sound/core/device.c | 15 sound/core/info.c |5 sound/core/memalloc.c |3 sound/core/memory.c |8 sound/core/seq/Makefile |2 sound/core/seq/instr/ainstr_gf1.c |3 sound/core/seq/instr/ainstr_iw.c|8 sound/core/seq/seq_midi.c | 16 sound/core/wrappers.c |2 sound/drivers/vx/vx_uer.c | 46 sound/i2c/other/ak4114.c|1 sound/isa/gus/gus_main.c|2 sound/isa/wavefront/wavefront_fx.c | 34 sound/pci/ac97/ac97_codec.c | 25 sound/pci/ac97/ac97_patch.c |3 sound/pci/ali5451/ali5451.c |4 sound/pci/atiixp_modem.c|1 sound/pci/cmipci.c |9 sound/pci/cs46xx/cs46xx_lib.c | 15 sound/pci/emu10k1/emu10k1.c | 10 sound/pci/emu10k1/emu10k1_main.c| 133 - sound/pci/emu10k1/p16v.c| 20 sound/pci/ens1370.c | 22 sound/pci/es1968.c | 14 sound/pci/hda/hda_codec.h |3 sound/pci/hda/hda_intel.c |6 sound/pci/hda/patch_cmedia.c|5 sound/pci/hda/patch_realtek.c | 28 sound/pci/hda/patch_sigmatel.c | 810 +-- sound/pci/intel8x0.c| 16 sound/pci/maestro3.c| 26 sound/pci/mixart/mixart.c |4 sound/pci/rme9652/hdsp.c| 68 sound/pci/trident/trident_main.c|4 sound/pci/via82xx.c | 16 sound/pci/via82xx_modem.c | 13 sound/pci/ymfpci/ymfpci_main.c |6 sound/pcmcia/Kconfig| 15 sound/pcmcia/vx/Makefile|7 sound/pcmcia/vx/vxpocket.c | 437 +++ sound/pcmcia/vx/vxpocket.h | 27 sound/ppc/awacs.c |6 sound/ppc/pmac.h|5 sound/ppc/tumbler.c | 16 sound/sparc/Kconfig | 22 sound/sparc/Makefile|4 sound/sparc/dbri.c | 2729 sound/usb/usbaudio.c| 105 sound/usb/usbaudio.h| 38 sound/usb/usbmidi.c | 21 sound/usb/usbquirks.h | 29 sound/usb/usx2y/usX2Yhwdep.c|3 sound/usb/usx2y/usx2yhwdeppcm.c |6 65 files changed, 5059 insertions(+), 1122 deletions(-) - Jaroslav Kysela <[EMAIL PROTECTED]> Linux Kernel Sound Maintainer ALSA Project, SUSE Labs - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [2.6 patch] schedule obsolete OSS drivers for removal
On Thu, 28 Jul 2005, Alan Cox wrote: > On Mer, 2005-07-27 at 16:43 -0400, Jeff Garzik wrote: > > ISTR Alan saying there was some ALi hardware that either wasn't in ALSA, > > or most likely didn't work in ALSA. If Alan says I'm smoking crack, > > then you all can ignore me :) > > The only big thing I know that still needed OSS (and may still do so) is > the support for AC97 wired touchscreens and the like. Has that been > ported to ALSA ? We're working on this issue right now. Jaroslav - Jaroslav Kysela <[EMAIL PROTECTED]> Linux Kernel Sound Maintainer ALSA Project, SUSE Labs - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: BUG: Yamaha OPL3SA2 does not work with ALSA on 2.6 kernels.
On Mon, 25 Jul 2005, Andrew Haninger wrote: > Hello. > > I have a 5 year old Gateway Solo 2500 that is currently running Linux > 2.6.12.2. If I install ALSA and try to have alsaconf bruteforce-detect > the OPL3SA2 sound card, it will say that it has detected it, but > loading the modules will fail. If I install Linux 2.4 and > recompile/rerun alsaconf, the detection works fine and the card works. > Copying the configuration detected under 2.4 into a modprobe.conf on > 2.6 allows me to use the card in 2.6 with occasional crashes (which > might be due to suspend2). Please, report this problem to our bug-tracking-system: https://bugtrack.alsa-project.org/alsa-bug We have already two similar reports #440 and #879. Please, provide us all info (working manual conf etc.).. Jaroslav - Jaroslav Kysela <[EMAIL PROTECTED]> Linux Kernel Sound Maintainer ALSA Project, SUSE Labs - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: ALSA bugs with 2.6.12-rc1
On Mon, 4 Apr 2005, Adrian Bunk wrote: > On Mon, Apr 04, 2005 at 06:08:43PM +0100, Daniel Drake wrote: > > David Ford wrote: > > > It seems that 2.6.12-rc1 introduced an ALSA bug generating an oops for a > > > null pointer. > > > > > > codec_semaphore: semaphore is not ready [0x1][0x300300] > > > codec_read 0: semaphore is not ready for register 0x2c > > > Unable to handle kernel NULL pointer dereference at virtual address > > > > > > > > > This happens on multiple machines, 32b and 64bit. I'll be happy to > > > provide further information if needed. > > > > This only happens when you mismatch your kernel and alsa-lib versions, e.g. > > running alsa-lib-1.0.9-rc2 with alsa-1.0.8 in-kernel drivers, or possibly > > vice-versa. > > Are you saying the userspace interface of the ALSA kernel drivers has > incompatible changes between minor versions of ALSA? > > If this is true, that's a serious bug. Nope, but newer alsa-lib use an ALSA timer API feature which was not well debugged. This oops should be fixed in 2.6.12-rc2 and older libraries will work with newer kernels as well. Jaroslav - Jaroslav Kysela <[EMAIL PROTECTED]> Linux Kernel Sound Maintainer ALSA Project, SUSE Labs - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[PATCH] ALSA 1.0.9rc2
| 11 sound/pci/mixart/mixart.c|6 sound/pci/mixart/mixart.h|2 sound/pci/mixart/mixart_hwdep.c | 93 - sound/pci/rme32.c|5 sound/pci/rme9652/hdsp.c |7 sound/pci/sonicvibes.c |2 sound/pci/trident/trident_main.c | 12 sound/pci/via82xx.c | 16 sound/pci/via82xx_modem.c| 11 sound/pci/ymfpci/ymfpci.c|7 sound/pcmcia/pdaudiocf/pdaudiocf.c | 12 sound/usb/usbaudio.c | 46 sound/usb/usbmidi.c |2 81 files changed, 2870 insertions(+), 890 deletions(-) through these ChangeSets: <[EMAIL PROTECTED]> (05/03/24 1.2342) ALSA 1.0.9rc2 <[EMAIL PROTECTED]> (05/03/24 1.2341) ALSA CVS update ALSA Version release: 1.0.9rc2 Signed-off-by: Jaroslav Kysela <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> (05/03/24 1.2340) [ALSA] seq - fix local variable initialization ALSA sequencer This patch re-adds the initialization of callbacks and pcallbacks that was accidentally removed in the last revision. Signed-off-by: Clemens Ladisch <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> (05/03/24 1.2339) [ALSA] usb - change timeout of USB control/bulk msg functions to msecs USB generic driver This changes the timeout in the remaining (indirect) calls to usb_control/bulk_msg from jiffies to msecs. Signed-off-by: Clemens Ladisch <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> (05/03/24 1.2338) [ALSA] cs4281 - fix typos in the case gameport is disabled CS4281 driver This patch fixes the wrong names of the dummy gameport functions used when CONFIG_GAMEPORT isn't set. Signed-off-by: Clemens Ladisch <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> (05/03/24 1.2337) [ALSA] Add AC97_SCAP_NO_SPDIF flag AC97 Codec,ATIIXP driver,au88x0 driver,EMU10K1/EMU10K2 driver Added a new flag, AC97_SCAP_NO_SPDIF, to prevent to build the SPDIF-related controls on ac97 codec. This flag is used when the sound chip has its native SPDIF support and it conflicts with the one of AC97 codec. Signed-off-by: Takashi Iwai <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> (05/03/24 1.2336) [ALSA] Fix EFX voice allocation/preparation EMU10K1/EMU10K2 driver Fixed a bug (possibly Oops) in allocation/preparation of EFX voices The invalid voice pointer was accessed when voices are allocated over the voice table boundary. The patch includes a small clean-up & optimization. Signed-off-by: Takashi Iwai <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> (05/03/24 1.2335) [ALSA] Fix Oops in snd_emu10k1_add_controls EMU10K1/EMU10K2 driver Fixed Oops in snd_emu101k_add_controls (introduced in the last patch for stack usage reduction). Signed-off-by: Takashi Iwai <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> (05/03/24 1.2334) [ALSA] Clean up the chip detection EMU10K1/EMU10K2 driver Minor clean-ups of the chip detectoin code. Signed-off-by: Takashi Iwai <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> (05/03/24 1.2333) [ALSA] Add Mono volume controls for ALC260 HDA Codec driver Added Mono volume controls for ALC260 codec. Signed-off-by: Takashi Iwai <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> (05/03/24 1.2332) [ALSA] Add AD1986A support HDA generic driver,HDA Codec driver Added the patch for Analog Device AD1986A codec. Signed-off-by: Takashi Iwai <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> (05/03/24 1.2331) [ALSA] correct comment for setting widget output HDA Codec driver This patch has no real logical change, it simply correct the comment. Signed-off-by: ChenLi Tien<[EMAIL PROTECTED]> Signed-off-by: Takashi Iwai <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> (05/03/24 1.2330) [ALSA] Fixes AC3 output on Audigy2 sound cards EMU10K1/EMU10K2 driver This patch adds a DSP patch to fix an spdif_bug on some Audigy2 cards. Signed-off-by: James Courtier-Dutton Signed-off-by: Takashi Iwai <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> (05/03/24 1.2329) [ALSA] Add framework for better audigy sound card capabilities selection EMU10K1/EMU10K2 driver This patch adds more options to help identify all the many different creative sound cards. It will eventually be used to control features more finely. Signed-off-by: James Courtier-Dutton Signed-off-by: Takashi Iwai <[E
Re: ALSA bugs in list [was Re: 2.6.12-rc1-mm1]
On Mon, 21 Mar 2005, Lee Revell wrote: > > > This one is fixed in ALSA CVS. > > > > But not in http://linux-sound.bkbits.net/linux-sound yet. How does stuff > > propagate from ALSA CVS into bk? > > The ALSA maintainers periodically ask Linus to pull from the linux-sound > tree. But that's just the general "ALSA update" process. > > I'm not aware of a mechanism for getting critical fixes like this in > ASAP. The last few have been shepherded through manually by various > people. Looks like we need a better system. I am trying to sync the linux-sound BK tree every week with our CVS. For "urgent" fixes we need to find another faster way. Hopefully, they are in most cases small enough, so they might be propagated automagically. I already proposed special "tag" in our CVS commit policy, so we can identify these patches / changesets. I will try to prepare some useable tool in few weeks. Jaroslav - Jaroslav Kysela <[EMAIL PROTECTED]> Linux Kernel Sound Maintainer ALSA Project, SUSE Labs - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: 2.6: sound/isa/gus/gus_lfo.c is unused (fwd)
On Sun, 6 Mar 2005, Adrian Bunk wrote: > Hi Jaroslav, > > I didn't receive any answer regarding this question. > > Any comments or shall I send a patch to remove this file? Yes, the file is unused, but it's a library for wavetable stuff which has not been ported from my linux ultra sound project yet. I removed this file in our CVS tree, so it will be removed also in ALSA BK tree in next merge. Thanks, Jaroslav - Jaroslav Kysela <[EMAIL PROTECTED]> Linux Kernel Sound Maintainer ALSA Project, SUSE Labs - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: RFD: Kernel release numbering
On Thu, 3 Mar 2005, Dave Jones wrote: > Other failures have been somewhat more dramatic. > I know ipsec-tools, and alsa-lib have both caused pain > on at least one occasion after the last 2-3 kernel updates. alsa-lib: You mean the problem with the emu10k1 based soundcards from Creative? It's because the multichannel devices were added and reorganized. But the basic functionality (sound from front speakers and analog capturing) should be preserved with all 1.0.x alsa-lib versions. Jaroslav - Jaroslav Kysela <[EMAIL PROTECTED]> Linux Kernel Sound Maintainer ALSA Project, SUSE Labs - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: smartlink alsa modem problem in 2.6.11
On Wed, 2 Mar 2005, Michal Semler wrote: > Hi, > > I tried use snd_intel8x0m with smartlink modem, but without success: > Mar 2 13:49:37 notas kernel: codec_semaphore: semaphore is not ready > [0x1][0x701300] > Mar 2 13:49:37 notas kernel: codec_write 1: semaphore is not ready for It's known bug: https://bugtrack.alsa-project.org/alsa-bug/view.php?id=890 Have you tried to load "snd-intel8x0m and snd-intel8x0" modules in opposite order? Anyway, further discussion should go to this bug report... Jaroslav - Jaroslav Kysela <[EMAIL PROTECTED]> Linux Kernel Sound Maintainer ALSA Project, SUSE Labs - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [BUG] 2.6.11-rc2 ALSA
On Wed, 26 Jan 2005, Andrew Morton wrote: > Hello list, > after upgrading to 2.6.11-rc2 my soundcard doesn't work anymore: > > I get this message during initialization of ALSA: > > /usr/sbin/alsactl: set_control:805: warning: name mismatch (External > Amplifier/Headphone Jack Sense) for control #26 > > The soundcard is integrated on my thinkpad centrino notebook (R50), lspci > reports this: > > Multimedia audio controller: Intel Corp. 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) > AC'97 Audio Controller (rev 01) > > If I boot back to 2.6.10 the PCM control has the volume set to zero, but > readjusting it to a normal value brings everything back to normal. It's probably already fixed in our CVS and ALSA BK tree: = revision 1.69 date: 2005/01/17 13:47:20; author: tiwai; state: Exp; lines: +14 -2 Summary: Fix silent output on some machines with AD1981x codecs Fixed the default state of "Headphone Jack Sense" switch on AD1981x codecs. Setting this on affects the output of some machines (e.g. Thindpads). The default value is set on only hardwares which are known to work. = Jaroslav - Jaroslav Kysela <[EMAIL PROTECTED]> Linux Kernel Sound Maintainer ALSA Project, SUSE Labs - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[ALSA PATCH] Intel HDA driver
module. Signed-off-by: Takashi Iwai <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> (05/01/20 1.1975.47.29) [ALSA] Export new register/unregister functions ALSA Core Export new register/unregister functions for compat control-ioctls. Signed-off-by: Takashi Iwai <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> (05/01/20 1.1975.47.28) [ALSA] unlocked/compat_ioctl rewrite for OSS compatible drivers ALSA<-OSS emulation,ALSA<-OSS sequencer The ioctl handlers for OSS compatible drivers are rewritten using unlocked/compat_ioctl. Signed-off-by: Takashi Iwai <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> (05/01/20 1.1975.47.27) [ALSA] unlocked/compat_ioctl rewrite for hwdep, rawmidi, timer and sequencer API HWDEP Midlevel,RawMidi Midlevel,Timer Midlevel,ALSA sequencer The ioctl handler for hwdep, rawmidi, timer and sequencer API are rewritten using unlocked/compat_ioctl. The 32bit wrapper is merged to the core module. Signed-off-by: Takashi Iwai <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> (05/01/20 1.1975.47.26) [ALSA] unlocked/compat_ioctl rewrite for PCM API PCM Midlevel The ioctl handler for PCM API is rewritten using unlocked/compat_ioctl. The 32bit wrapper is merged to the core module. Signed-off-by: Takashi Iwai <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> (05/01/20 1.1975.47.25) [ALSA] unlocked/compat_ioctl rewrite for control API Control Midlevel ioctl handler for control API is rewritten using unlocked/compat_ioctl. The 32bit wrapper is merged to the core module. Added a new register/unregister function for compat control ioctls. Signed-off-by: Takashi Iwai <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> (05/01/20 1.1975.47.24) [ALSA] Add Intel HDA driver Documentation,PCI drivers,HDA generic driver,HDA Codec driver HDA Intel driver Added a new Intel High-Definition audio driver. The driver consists of two separate modules: the generic support module for HD codecs (snd-hda-codec), and the driver for Intel ICH6/7 chipset (snd-hda-intel). The snd-hda-intel was called formerly snd-azx in the ALSA 1.0.8 rlease. Signed-off-by: Takashi Iwai <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> (05/01/20 1.1975.47.23) [ALSA] Enable HP jack sense for FSC Scenic-W AC97 Codec Enable 'Headphone Jack Sense' control on FSC Scenic-W as default, too. Signed-off-by: Takashi Iwai <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> (05/01/20 1.1975.47.22) [ALSA] Add quirk for HP nc8000 Intel8x0 driver Added ac97 quirk for HP nc8000. The list is sorted again. Signed-off-by: Takashi Iwai <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> (05/01/20 1.1975.47.21) [ALSA] Add quirk for HP pavilion ZV5030US ATIIXP driver Added ac97 quirk for HP Pavilion ZV5030US to bind the control with mute-LED. Signed-off-by: Takashi Iwai <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> (05/01/20 1.1975.47.20) [ALSA] Simplify the general ac97 volume/switch callback AC97 Codec Simplified the control callbacks of general AC97 volumes/switches. Signed-off-by: Takashi Iwai <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> (05/01/20 1.1975.47.19) [ALSA] Add missing inclusion of linux/device.h Digigram VX core,Digigram VX222 driver,Digigram VX Pocket driver Added the missing inclusion of Signed-off-by: Takashi Iwai <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> (05/01/20 1.1975.47.18) [ALSA] Add workaround for buggy ATI IXP hardwares ATIIXP-modem driver Added a workaround for buggy ATI IXP hardwares which returns bogus DMA pointer register value. Signed-off-by: Takashi Iwai <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> (05/01/20 1.1975.47.17) [ALSA] Add support for Chaintech 9CJS ICE1712 driver Added the support for Chaintech 9CJS by Delmaire Maxime. Signed-off-by: Takashi Iwai <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> (05/01/20 1.1975.47.16) [ALSA] AK4117 code - fixed cosmetic typos AK4117 receiver Signed-off-by: Jaroslav Kysela <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> (05/01/20 1.1975.47.15) [ALSA] don't use broken legacy interfaces on M-Audio Quattro/Omnistudio USB generic driver Interfaces 0-2 of M-Audio Quattro/Omnistudio devices duplicate functionality of interfaces 3-5 and cause errors when used with those. Add a quirk to tell the driver not to use them. Signed-off-by: Clemens Ladisch <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> (05/01/20 1.1975.47.14) [ALSA] Fix silent output on some machines with AD1981x codecs AC97 Codec Fixed the default state of 'Headphone Jack Sense' switch on AD1981x codecs. Setting this on affects the output of some machines (e.g.
Re: [PATCH] for YMF PCI sound cards
On Fri, 8 Dec 2000, Pete Zaitcev wrote: > > +++ ./drivers/sound/ac97_codec.cThu Dec 7 11:00:44 2000 > > @@ -61,6 +61,7 @@ > > } ac97_codec_ids[] = { > > {0x414B4D00, "Asahi Kasei AK4540 rev 0", NULL}, > > {0x414B4D01, "Asahi Kasei AK4540 rev 1", NULL}, > > + {0x41445303, "Yamaha YMF" , NULL}, > > Are you sure it's correct? I am almost certain that no YMFxxx > has on-chip AC97. I'd like to see a document that allows you > the change quoted above. It's Analog Device's AD1819 chip. Jaroslav - Jaroslav Kysela <[EMAIL PROTECTED]> SuSE Linuxhttp://www.suse.com ALSA project http://www.alsa-project.org - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] Please read the FAQ at http://www.tux.org/lkml/
Re: [PATCH] ISA PnP (2.4.0-test9)
On Mon, 9 Oct 2000, Keith Owens wrote: > On Mon, 9 Oct 2000 12:55:28 +0200 (MEST), > Jaroslav Kysela <[EMAIL PROTECTED]> wrote: > >I fully understand your point, but I don't want to have a special > >case for ISA PnP. What about this change: > > > >#define MODULE_GENERIC_TABLE(gtype,name)\ > >const struct gtype##_id * __module_##gtype##_table = name > > > >to > > > >#define MODULE_GENERIC_TABLE(gtype,name)\ > >const unsigned long __module_##gtype_size = sizeof(struct gtype##_id); \ > >const struct gtype##_id * __module_##gtype##_table = name > > Make that > > #define MODULE_GENERIC_TABLE(gtype,name)\ > static const unsigned long __module_##gtype##_size \ > __attribute__ ((unused)) = sizeof(struct gtype##_id); \ > static const struct gtype##_id * __module_##gtype##_table = name > > and you've got a deal. The _size must be static to avoid name clashes > when two or more objects that use MODULE_GENERIC_TABLE(sametype,..) are > linked together. __attribute__ ((unused)) stops the compiler > complaining about unused static variables; we know that they are used > by modutils, not by the code itself. Regarding static: Are you sure, that I'll have to do this change? I think that MODULE_GENERIC_TABLE(gtype,...) may be only one per kernel module, so we can leave this variable as global. The scope of this variable should be same as __this_module symbol. Jaroslav - Jaroslav Kysela <[EMAIL PROTECTED]> SuSE Linuxhttp://www.suse.com ALSA project http://www.alsa-project.org - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] Please read the FAQ at http://www.tux.org/lkml/
Re: [PATCH] ISA PnP (2.4.0-test9)
On Mon, 9 Oct 2000, Keith Owens wrote: > On Mon, 9 Oct 2000 12:29:19 +0200 (MEST), > Jaroslav Kysela <[EMAIL PROTECTED]> wrote: > >On Mon, 9 Oct 2000, Keith Owens wrote: > >> Modutils and the kernel are compiled from different headers, none of > >> this #include business in modutils. So you must never > >> assume that the structures in modutils and in the kernel have the same > >> specification. Since ISAPNP_CARD_DEVS is #defined and can be changed, > >> that value must be exported to user space. > > > >Although ISAPNP_CARD_DEVS is #defined, we may take this value as > >a constant. I've never seen the cards with more than five logical > >devices. I can add a comment that a change of the constant will > >cause compatibility problems with modutils. > > "compatibility problems" is putting it mildly. The moment you change > the size of that structure, all the people using older modutils will > start getting errors and they will blame me, not the person who changed > the structure size. > > Either ISAPNP_CARD_DEVS is set in concrete and *never* changed or the > value is exported to user space right from the start. "Export it > later" is not an acceptable option because all the old modutils which > do not know about the newly exported variable will fail when the > structure changes. People are still running modutils 2.1.121 on 2.4 > kernels, they just will not upgrade. Any mismatch between kernel and > modutils structures is a disaster waiting to happen, we must preserve a > compatible userspace ABI for modules. > > >Another solution is to change ISAPNP_CARD_TABLE to: > > > >#define ISAPNP_CARD_TABLE(name) \ > > const int __module_isapnp_card_devs = ISAPNP_CARD_DEVS; \ > >MODULE_GENERIC_TABLE(isapnp_card, name) > > > >But, I think that we don't need this change at the time. If the situation > >arises (we found an ISA PnP card with more than eight logical devices), we > >may add a global variable to determine the structure change as well. The > >change may be also determined with checking of the kernel version. > > That only works for people who upgrade to newer modutils. It does > nothing for the 50%+ of the population who keep running old modutils on > new kernels, they will now fail. I fully understand your point, but I don't want to have a special case for ISA PnP. What about this change: #define MODULE_GENERIC_TABLE(gtype,name)\ const struct gtype##_id * __module_##gtype##_table = name to #define MODULE_GENERIC_TABLE(gtype,name)\ const unsigned long __module_##gtype_size = sizeof(struct gtype##_id); \ const struct gtype##_id * __module_##gtype##_table = name This simple change allows runtime checking for size of the used structures. It's not only related for ISA PnP IDs, but also for PCI IDs. All structures may be freely enhanced in future. The modutils binaries may ignore the new contents and/or recommend upgrade. Comments? Jaroslav - Jaroslav Kysela <[EMAIL PROTECTED]> SuSE Linuxhttp://www.suse.com ALSA project http://www.alsa-project.org - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] Please read the FAQ at http://www.tux.org/lkml/
Re: [PATCH] ISA PnP (2.4.0-test9)
On Mon, 9 Oct 2000, Keith Owens wrote: > On Sun, 8 Oct 2000 23:50:43 +0200 (MEST), > Jaroslav Kysela <[EMAIL PROTECTED]> wrote: > > this patch contains following fixes and enhancements to export ISA > >PnP IDs outside the kernel module: > > > >* module.h - added MODULE_GENERIC_TABLE > >* isapnp.h - added 'struct isapnp_device_id' for single devices > > - added ISAPNP_CARD_TABLE for complex devices > >* isapnp.c - fixed NULL pointer dereference in input routine > > - fixed timeout (for old ALS100 card) > > - added isapnp_probe_devs() and isapnp_activate_dev() > >* serial.c - the ISA PnP table was updated using new structure > >- the ISA PnP table is exported as well > > I have add support for generating modules.isapnpmap to my modutils > tree, basically a clone of modules.pcimap. ISAPNP_CARD_TABLE is more > of a problem. > > struct isapnp_card_id { > unsigned short card_vendor, card_device; > struct { > unsigned short vendor, function; > } devs[ISAPNP_CARD_DEVS]; /* logical devices */ > unsigned long driver_data; /* data private to the driver */ > }; > > Modutils and the kernel are compiled from different headers, none of > this #include business in modutils. So you must never > assume that the structures in modutils and in the kernel have the same > specification. Since ISAPNP_CARD_DEVS is #defined and can be changed, > that value must be exported to user space. Also putting driver_data > after the array might cause parsing problems if the array size changes, > driver_data should be before the array. Although ISAPNP_CARD_DEVS is #defined, we may take this value as a constant. I've never seen the cards with more than five logical devices. I can add a comment that a change of the constant will cause compatibility problems with modutils. Another solution is to change ISAPNP_CARD_TABLE to: #define ISAPNP_CARD_TABLE(name) \ const int __module_isapnp_card_devs = ISAPNP_CARD_DEVS; \ MODULE_GENERIC_TABLE(isapnp_card, name) But, I think that we don't need this change at the time. If the situation arises (we found an ISA PnP card with more than eight logical devices), we may add a global variable to determine the structure change as well. The change may be also determined with checking of the kernel version. > Solution 1: > > struct isapnp_card_id { > unsigned short card_vendor, card_device; > int isapnp_card_devs; > unsigned long driver_data; /* data private to the driver */ > struct { > unsigned short vendor, function; > } devs[ISAPNP_CARD_DEVS]; /* logical devices */ > }; Moving of driver_data to top of the structure is a good idea. I'll proceed. > In either case depmod can print modules.isapnp_cardmap data as > > Print 1: > > # module cardvendor carddevice driver_data vendor function ... > eepro100 0x8086 0x1229 0x 0x8086 0x1229 ... all >non-zero devs entries on one line I prefer this solution (everything on one line). I don't think that this format will cause problems for simple parsers. > or as > > Print 2: > > # module cardvendor carddevice driver_data vendor function > eepro100 0x8086 0x1229 0x 0x8086 0x1229 one >line per non-zero devs entry > > Which solution do you want? > Which print format do you want? Jaroslav - Jaroslav Kysela <[EMAIL PROTECTED]> SuSE Linuxhttp://www.suse.com ALSA project http://www.alsa-project.org - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] Please read the FAQ at http://www.tux.org/lkml/
[PATCH] ISA PnP (2.4.0-test9)
Hello, this patch contains following fixes and enhancements to export ISA PnP IDs outside the kernel module: * module.h - added MODULE_GENERIC_TABLE * isapnp.h - added 'struct isapnp_device_id' for single devices - added ISAPNP_CARD_TABLE for complex devices * isapnp.c - fixed NULL pointer dereference in input routine - fixed timeout (for old ALS100 card) - added isapnp_probe_devs() and isapnp_activate_dev() * serial.c - the ISA PnP table was updated using new structure - the ISA PnP table is exported as well Please, send me comments or questions directly. Jaroslav - Jaroslav Kysela <[EMAIL PROTECTED]> SuSE Linuxhttp://www.suse.com ALSA project http://www.alsa-project.org 2.4.0-test9-isapnp-3.patch.gz