- 01 12月, 2012 1 次提交
-
-
由 Takashi Iwai 提交于
The same type of code is being used in multiple places in various codec drivers, so put it as a core library. Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
- 30 11月, 2012 3 次提交
-
-
由 Takashi Iwai 提交于
Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
由 Takashi Iwai 提交于
Allocate the name string and assign the structure in alc_kcontrol_new() itself to reduce the code. Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
由 Takashi Iwai 提交于
Just refactoring, no functional changes. Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
- 29 11月, 2012 10 次提交
-
-
由 David Henningsson 提交于
A lot of headsets/headphones have a "Speaker" mixer control. This confuses PulseAudio to think it is a speaker instead of a headphone/headset. Therfore, we rename it to "Headphone". We determine if something is a headphone similar to how udev determines form factor (see 78-sound-card.rules). BugLink: https://bugs.launchpad.net/bugs/1082357Signed-off-by: NDavid Henningsson <david.henningsson@canonical.com> Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
由 Eldad Zack 提交于
The playback endpoint uses implicit feedback mode, similar to the M-Audio FTU. Like with the FTU, we need to associate the sync pipe ourselves. Signed-off-by: NEldad Zack <eldad@fogrefinery.com> Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
由 Eldad Zack 提交于
Add a mixer quirks for the M-Audio Fast Track C400 and create the following: * Volume controls * Effect Type (reusing FTU controls) * Effect Volume * Effect Send/Return * Effect Program * Effect Feedback Signed-off-by: NEldad Zack <eldad@fogrefinery.com> Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
由 Eldad Zack 提交于
Add ranges for various Fast Track C400 controls, as observed while using the vendor's mixer control software (res values are an estimation). Signed-off-by: NEldad Zack <eldad@fogrefinery.com> Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
由 Eldad Zack 提交于
Adds a quirks table for the M-Audio Fast Track C400. Thanks to Clemens Ladisch <clemens@ladisch.de> for pointing out that the table must be sorted. Based on the following patch from the alsa-devel list: http://mailman.alsa-project.org/pipermail/alsa-devel/2012-May/051676.html See also: http://mailman.alsa-project.org/pipermail/alsa-devel/2012-April/051219.htmlSigned-off-by: NEldad Zack <eldad@fogrefinery.com> Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
由 Eldad Zack 提交于
Adds the unit ID and the control as parameters to the creation of the effect unit control for the M-Audio Fast Track Ultra. This allows the code to be shared with other devices that use different unit ID and control, such as the M-Audio Fast Track C400. Signed-off-by: NEldad Zack <eldad@fogrefinery.com> Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
由 Eldad Zack 提交于
Current code mishandles the case where the device is a UAC2 and the bDescriptorSubtype is a UAC2 Effect Unit (0x07). It tries to parse it as a Processing Unit (which is similar to two other UAC1 units with overlapping subtypes), but since the structure is different (See: 4.7.2.10, 4.7.2.11 in UAC2 standard), the parsing is done incorrectly and prevents the device from initializing. For now, just ignore the unit. Signed-off-by: NEldad Zack <eldad@fogrefinery.com> Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
由 Eldad Zack 提交于
Currently, channel IDs exceeding 31 (0x1f) cannot be used. The channel ID is derived from the cmask. Extending cmask to a 64-bit type would only allow it to go up to 63 (0x3f). Some devices have channel IDs exceeding that as well. To address that, add an offset to the mixer element which is then accounted for in the UAC set/get functions. Signed-off-by: NEldad Zack <eldad@fogrefinery.com> Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
由 Eldad Zack 提交于
For implicit feedback endpoints, the number of bytes for each packet is matched by the corresponding synchronizing endpoint. The size is calculated by taking the actual size and dividing it by the stride - currently by the endpoint's stride, but we should use the synchronization source's stride. This is evident when the number of channels differ between the synchronization source and the implicitly fed-back endpoint, as with M-Audio Fast Track C400 - the synchronization source (capture) has 4 channels, while the implicit feedback mode endpoint has 6. Signed-off-by: NEldad Zack <eldad@fogrefinery.com> Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
由 Eldad Zack 提交于
In this context, 0x01 is USB_ENDPOINT_XFER_ISOC. Signed-off-by: NEldad Zack <eldad@fogrefinery.com> Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
- 28 11月, 2012 1 次提交
-
-
由 Takashi Iwai 提交于
This is a preliminary patch for introducing a protection to access races of snd_array instances. Call snd_array_init() appropriately at the initialization time and don't call it twice. Also the allocations of codec-spec structs are cleaned up by helper functions in patch_sigmatel.c and patch_analog.c. Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
- 26 11月, 2012 2 次提交
-
-
由 Takashi Iwai 提交于
Add the support for channel maps of the PCM streams on USB audio devices. The channel map information is already found in ChannelConfig descriptor entries, which haven't been referred until now. Each chmap entry is added to audioformat list entry and copied to TLV dynamically instead of creating a whole chmap array. Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
由 Takashi Iwai 提交于
USB audio class 2 has more channel map positions than we currently have. Let's add missing definitions. Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
- 23 11月, 2012 18 次提交
-
-
由 Takashi Iwai 提交于
When a playback stream is paused, the stream isn't actually stopped, thus we still need to take care of the in-flight data amount for the delay calculation. Otherwise the value of subs->last_delay is no longer reliable and can give a bogus value after resuming from pause. This will result in "delay: estimated XX, actual YY" error messages. Also, during pause after all in flight data are processed (i.e. last_delay = 0), we don't have to calculate the actual delay from the current frame. Give a short path in such a case. Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
由 Takashi Iwai 提交于
It doesn't make sense to calculate the delay for capture streams in the current implementation. It's always zero, so we should skip the computation in snd_usb_pcm_pointer() in the case of capture. Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
由 Takashi Iwai 提交于
The internal mic on MBP81 gives only the right channel, and the left channel is static. Add a verb to fix the ADC2 channel mode to expand mono right to stereo. Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=50781Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
由 Takashi Iwai 提交于
We forgot to apply the fixup verbs in cs_init(). But adding the fixup verbs will break mbp101 fixup that has been fixed recently again, since the mbp101 fixup contains the wrong verbs to override. So these bogus verbs must be removed, too. Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
由 Takashi Iwai 提交于
It's constant, so better to be put in the static init array. Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
由 Takashi Iwai 提交于
-
由 Daniel Mack 提交于
Jeffrey Barish reported an obvious bug in the pcm part of the usb-audio driver which causes the code to not initialize the sync endpoint from configure_endpoint(). Reported-by: NJeffrey Barish <jeff_barish@earthlink.net> Signed-off-by: NDaniel Mack <zonque@gmail.com> Cc: stable@kernel.org [3.5+] Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
由 Takashi Iwai 提交于
It's defined only for PM. Reported-by: NFengguang Wu <fengguang.wu@intel.com> Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
由 Takashi Iwai 提交于
Reported-by: NFengguang Wu <fengguang.wu@intel.com> Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
由 Takashi Iwai 提交于
Add a flag to suppress the update in emu1010_firmware_thread() during suspend/resume. Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
由 Takashi Iwai 提交于
Instead of calling request_firmware() at each time, keep the obtained firmware internally and reuse it. Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
由 Takashi Iwai 提交于
As the recent firmware code tries to reread and cache the firmware by itself, it's even better to keep the struct firmware data instead of keeping a local copy. Also, it makes little sense to disable the fw loader for this driver, so added the explicit dependency, too. Last, but not least, allocate the firmware data loaded via ioctl in vmalloc'ed buffer instead, as the firmware size isn't that small. Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
由 Takashi Iwai 提交于
Th buffer to save registers for PM is enough small for kmalloc(), not necessary to use vmalloc(). Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
由 Takashi Iwai 提交于
The new firmware code tries to re-read the formerly read firmware files before suspend. Thus it's wiser to keep the "patch" firmware in the driver for avoiding this unnecessary re-reading. Of course, this will consume a bit of memory for unused stuff, but the patch fw is supposed to be fairly small, so it's more benefit in the end. Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
由 Takashi Iwai 提交于
Yet again like previous two commits, drop the old hwdep user-space firmware code from vx driver (snd-vxpocket and snd-vx222). Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
由 Takashi Iwai 提交于
Like the previous commit for mixart, drop the home-baked fw loader code. Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
由 Takashi Iwai 提交于
It makes no longer sense to keep the old hwdep user-space firmware loading, which has been deprecated since ages ago. Just add a hard dependency on CONFIG_FW_LOADER and drop the useless code. Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
由 Takashi Iwai 提交于
Since we keep the pin default config values anyway internally, we don't have to set the values in the codec. This patch removes the code writing the pincfg values. As a gratis bonus, we can remove also the code restoring the original pincfg values at PM resume or module free. This will give us more benefit, as it can reduce the unnecessary power-up of codecs. This won't change the driver functionality. The only difference would be that the codec proc file will show the original pincfg values instead of the actually referred values. The actually referred values can be determined from sysfs *_pin_configs files. (Also hda-emu was updated to follow this change.) Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
- 21 11月, 2012 5 次提交
-
-
由 Takashi Iwai 提交于
The free callback is called at the state where no extra verbs are executed, thus calling *_shutup() is useless, as it's checking the shutdown flag. Remove such superfluous calls. Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
由 Takashi Iwai 提交于
Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
由 Takashi Iwai 提交于
PCM hw_free and close should wait until all the pending stop operations have been finished. Basically only PCM trigger callback should use non-wait calls. Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
由 Takashi Iwai 提交于
As we are stopping the endpoints asynchronously now, it's better to trigger the stop of both data and sync endpoints and wait for pending stopping operations, instead of the sequential trigger-and-wait procedure. So the wait argument in snd_usb_endpoint_stop() is dropped, and it's expected that the caller synchronizes explicitly by calling snd_usb_endpoint_sync_pending_stop(). (Actually there is only one place calling this, so it was safe to change.) Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
由 Takashi Iwai 提交于
For further code simplification, drop the conditional call for usb_kill_urb() with can_wait argument in deactivate_urbs(), and use only usb_unlink_urb() and wait_clear_urbs() pairs. Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-