mirror of
https://github.com/FEX-Emu/linux.git
synced 2025-01-05 08:48:53 +00:00
[media] gspca - main: Avoid clobbering all bandwidth when mic in webcam
Signed-off-by: Hans de Goede <hdegoede@redhat.com> Signed-off-by: Jean-François Moine <moinejf@free.fr> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
This commit is contained in:
parent
5dae603d84
commit
2d39059a65
@ -726,6 +726,23 @@ static int build_isoc_ep_tb(struct gspca_dev *gspca_dev,
|
|||||||
ep_tb++;
|
ep_tb++;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* If the camera:
|
||||||
|
* has a usb audio class interface (a built in usb mic); and
|
||||||
|
* is a usb 1 full speed device; and
|
||||||
|
* uses the max full speed iso bandwidth; and
|
||||||
|
* and has more than 1 alt setting
|
||||||
|
* then skip the highest alt setting to spare bandwidth for the mic
|
||||||
|
*/
|
||||||
|
if (gspca_dev->audio &&
|
||||||
|
gspca_dev->dev->speed == USB_SPEED_FULL &&
|
||||||
|
last_bw >= 1000000 &&
|
||||||
|
i > 1) {
|
||||||
|
PDEBUG(D_STREAM, "dev has usb audio, skipping highest alt");
|
||||||
|
i--;
|
||||||
|
ep_tb--;
|
||||||
|
}
|
||||||
|
|
||||||
/* get the requested bandwidth and start at the highest atlsetting */
|
/* get the requested bandwidth and start at the highest atlsetting */
|
||||||
bandwidth = which_bandwidth(gspca_dev);
|
bandwidth = which_bandwidth(gspca_dev);
|
||||||
ep_tb--;
|
ep_tb--;
|
||||||
|
Loading…
Reference in New Issue
Block a user