mirror of
https://github.com/torvalds/linux.git
synced 2024-11-15 00:21:59 +00:00
[media] tuner-xc2028: More firmware loading retries
My Hauppauge WinTV HVR-1400 needs sometimes more then only one retry to load the firmware successfully. Signed-off-by: Alina Friedrichsen <x-alina@gmx.net> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
This commit is contained in:
parent
2b97e2201e
commit
b8bc77db1e
@ -685,7 +685,7 @@ static int check_firmware(struct dvb_frontend *fe, unsigned int type,
|
|||||||
{
|
{
|
||||||
struct xc2028_data *priv = fe->tuner_priv;
|
struct xc2028_data *priv = fe->tuner_priv;
|
||||||
struct firmware_properties new_fw;
|
struct firmware_properties new_fw;
|
||||||
int rc = 0, is_retry = 0;
|
int rc = 0, retry_count = 0;
|
||||||
u16 version, hwmodel;
|
u16 version, hwmodel;
|
||||||
v4l2_std_id std0;
|
v4l2_std_id std0;
|
||||||
|
|
||||||
@ -855,9 +855,9 @@ read_not_reliable:
|
|||||||
|
|
||||||
fail:
|
fail:
|
||||||
memset(&priv->cur_fw, 0, sizeof(priv->cur_fw));
|
memset(&priv->cur_fw, 0, sizeof(priv->cur_fw));
|
||||||
if (!is_retry) {
|
if (retry_count < 8) {
|
||||||
msleep(50);
|
msleep(50);
|
||||||
is_retry = 1;
|
retry_count++;
|
||||||
tuner_dbg("Retrying firmware load\n");
|
tuner_dbg("Retrying firmware load\n");
|
||||||
goto retry;
|
goto retry;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user