diff options
author | Takashi Iwai <tiwai@suse.de> | 2012-11-20 12:24:47 -0500 |
---|---|---|
committer | Takashi Iwai <tiwai@suse.de> | 2012-11-21 05:37:40 -0500 |
commit | 20d32022a8d8639a33d0e429f2d3c51b527ea362 (patch) | |
tree | 361cb984165311d03c39849f402d7ee4e075d9d8 | |
parent | 8ad10dc6d3fe8396d8213af4d5ce58e0010a3cbc (diff) |
ALSA: usb-audio: Deprecate async_unlink option
The async unlink behavior has been working over years. The option was
provided only as a workaround for 2.4.x kernel. Let's get rid of it.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
-rw-r--r-- | Documentation/sound/alsa/ALSA-Configuration.txt | 3 | ||||
-rw-r--r-- | sound/usb/card.c | 7 | ||||
-rw-r--r-- | sound/usb/endpoint.c | 2 | ||||
-rw-r--r-- | sound/usb/usbaudio.h | 1 |
4 files changed, 1 insertions, 12 deletions
diff --git a/Documentation/sound/alsa/ALSA-Configuration.txt b/Documentation/sound/alsa/ALSA-Configuration.txt index d90d8ec2853d..b9cfd339a6fa 100644 --- a/Documentation/sound/alsa/ALSA-Configuration.txt +++ b/Documentation/sound/alsa/ALSA-Configuration.txt | |||
@@ -1905,7 +1905,6 @@ Prior to version 0.9.0rc4 options had a 'snd_' prefix. This was removed. | |||
1905 | vid - Vendor ID for the device (optional) | 1905 | vid - Vendor ID for the device (optional) |
1906 | pid - Product ID for the device (optional) | 1906 | pid - Product ID for the device (optional) |
1907 | nrpacks - Max. number of packets per URB (default: 8) | 1907 | nrpacks - Max. number of packets per URB (default: 8) |
1908 | async_unlink - Use async unlink mode (default: yes) | ||
1909 | device_setup - Device specific magic number (optional) | 1908 | device_setup - Device specific magic number (optional) |
1910 | - Influence depends on the device | 1909 | - Influence depends on the device |
1911 | - Default: 0x0000 | 1910 | - Default: 0x0000 |
@@ -1917,8 +1916,6 @@ Prior to version 0.9.0rc4 options had a 'snd_' prefix. This was removed. | |||
1917 | NB: nrpacks parameter can be modified dynamically via sysfs. | 1916 | NB: nrpacks parameter can be modified dynamically via sysfs. |
1918 | Don't put the value over 20. Changing via sysfs has no sanity | 1917 | Don't put the value over 20. Changing via sysfs has no sanity |
1919 | check. | 1918 | check. |
1920 | NB: async_unlink=0 would cause Oops. It remains just for | ||
1921 | debugging purpose (if any). | ||
1922 | NB: ignore_ctl_error=1 may help when you get an error at accessing | 1919 | NB: ignore_ctl_error=1 may help when you get an error at accessing |
1923 | the mixer element such as URB error -22. This happens on some | 1920 | the mixer element such as URB error -22. This happens on some |
1924 | buggy USB device or the controller. | 1921 | buggy USB device or the controller. |
diff --git a/sound/usb/card.c b/sound/usb/card.c index dbf7999d18b4..ccf95cfe186f 100644 --- a/sound/usb/card.c +++ b/sound/usb/card.c | |||
@@ -25,9 +25,6 @@ | |||
25 | * | 25 | * |
26 | * NOTES: | 26 | * NOTES: |
27 | * | 27 | * |
28 | * - async unlink should be used for avoiding the sleep inside lock. | ||
29 | * 2.4.22 usb-uhci seems buggy for async unlinking and results in | ||
30 | * oops. in such a cse, pass async_unlink=0 option. | ||
31 | * - the linked URBs would be preferred but not used so far because of | 28 | * - the linked URBs would be preferred but not used so far because of |
32 | * the instability of unlinking. | 29 | * the instability of unlinking. |
33 | * - type II is not supported properly. there is no device which supports | 30 | * - type II is not supported properly. there is no device which supports |
@@ -83,7 +80,6 @@ static bool enable[SNDRV_CARDS] = SNDRV_DEFAULT_ENABLE_PNP;/* Enable this card * | |||
83 | static int vid[SNDRV_CARDS] = { [0 ... (SNDRV_CARDS-1)] = -1 }; | 80 | static int vid[SNDRV_CARDS] = { [0 ... (SNDRV_CARDS-1)] = -1 }; |
84 | static int pid[SNDRV_CARDS] = { [0 ... (SNDRV_CARDS-1)] = -1 }; | 81 | static int pid[SNDRV_CARDS] = { [0 ... (SNDRV_CARDS-1)] = -1 }; |
85 | static int nrpacks = 8; /* max. number of packets per urb */ | 82 | static int nrpacks = 8; /* max. number of packets per urb */ |
86 | static bool async_unlink = 1; | ||
87 | static int device_setup[SNDRV_CARDS]; /* device parameter for this card */ | 83 | static int device_setup[SNDRV_CARDS]; /* device parameter for this card */ |
88 | static bool ignore_ctl_error; | 84 | static bool ignore_ctl_error; |
89 | 85 | ||
@@ -99,8 +95,6 @@ module_param_array(pid, int, NULL, 0444); | |||
99 | MODULE_PARM_DESC(pid, "Product ID for the USB audio device."); | 95 | MODULE_PARM_DESC(pid, "Product ID for the USB audio device."); |
100 | module_param(nrpacks, int, 0644); | 96 | module_param(nrpacks, int, 0644); |
101 | MODULE_PARM_DESC(nrpacks, "Max. number of packets per URB."); | 97 | MODULE_PARM_DESC(nrpacks, "Max. number of packets per URB."); |
102 | module_param(async_unlink, bool, 0444); | ||
103 | MODULE_PARM_DESC(async_unlink, "Use async unlink mode."); | ||
104 | module_param_array(device_setup, int, NULL, 0444); | 98 | module_param_array(device_setup, int, NULL, 0444); |
105 | MODULE_PARM_DESC(device_setup, "Specific device setup (if needed)."); | 99 | MODULE_PARM_DESC(device_setup, "Specific device setup (if needed)."); |
106 | module_param(ignore_ctl_error, bool, 0444); | 100 | module_param(ignore_ctl_error, bool, 0444); |
@@ -345,7 +339,6 @@ static int snd_usb_audio_create(struct usb_device *dev, int idx, | |||
345 | chip->card = card; | 339 | chip->card = card; |
346 | chip->setup = device_setup[idx]; | 340 | chip->setup = device_setup[idx]; |
347 | chip->nrpacks = nrpacks; | 341 | chip->nrpacks = nrpacks; |
348 | chip->async_unlink = async_unlink; | ||
349 | chip->probing = 1; | 342 | chip->probing = 1; |
350 | 343 | ||
351 | chip->usb_id = USB_ID(le16_to_cpu(dev->descriptor.idVendor), | 344 | chip->usb_id = USB_ID(le16_to_cpu(dev->descriptor.idVendor), |
diff --git a/sound/usb/endpoint.c b/sound/usb/endpoint.c index 51a9aa372cc7..d7382a5e29bb 100644 --- a/sound/usb/endpoint.c +++ b/sound/usb/endpoint.c | |||
@@ -523,7 +523,7 @@ static int deactivate_urbs(struct snd_usb_endpoint *ep, int force, int can_sleep | |||
523 | if (!force && ep->chip->shutdown) /* to be sure... */ | 523 | if (!force && ep->chip->shutdown) /* to be sure... */ |
524 | return -EBADFD; | 524 | return -EBADFD; |
525 | 525 | ||
526 | async = !can_sleep && ep->chip->async_unlink; | 526 | async = !can_sleep; |
527 | 527 | ||
528 | clear_bit(EP_FLAG_RUNNING, &ep->flags); | 528 | clear_bit(EP_FLAG_RUNNING, &ep->flags); |
529 | 529 | ||
diff --git a/sound/usb/usbaudio.h b/sound/usb/usbaudio.h index ef42797f56fb..1ac3fd9cc5a6 100644 --- a/sound/usb/usbaudio.h +++ b/sound/usb/usbaudio.h | |||
@@ -56,7 +56,6 @@ struct snd_usb_audio { | |||
56 | 56 | ||
57 | int setup; /* from the 'device_setup' module param */ | 57 | int setup; /* from the 'device_setup' module param */ |
58 | int nrpacks; /* from the 'nrpacks' module param */ | 58 | int nrpacks; /* from the 'nrpacks' module param */ |
59 | int async_unlink; /* from the 'async_unlink' module param */ | ||
60 | 59 | ||
61 | struct usb_host_interface *ctrl_intf; /* the audio control interface */ | 60 | struct usb_host_interface *ctrl_intf; /* the audio control interface */ |
62 | }; | 61 | }; |