aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/drivers/media/tuners/si2157.c
diff options
context:
space:
mode:
authorGon Solo <gonsolo@gmail.com>2019-10-10 06:51:01 -0300
committerMauro Carvalho Chehab <mchehab+samsung@kernel.org>2019-10-10 07:07:14 -0300
commit57df53738a8134955beee6ab1b3b006669c0e82e (patch)
treefdb2a0cdc1f1b0cdceabdfcaaf9df6fd3846208b /drivers/media/tuners/si2157.c
parentmedia: af9035: add the formula used for the I2C speed (diff)
downloadwireguard-linux-57df53738a8134955beee6ab1b3b006669c0e82e.tar.xz
wireguard-linux-57df53738a8134955beee6ab1b3b006669c0e82e.zip
media: si2157: Add option for not downloading firmware.
While at it, convert to kernel-doc format and use bits instead of bools. Signed-off-by: Gon Solo <gonsolo@gmail.com> Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
Diffstat (limited to 'drivers/media/tuners/si2157.c')
-rw-r--r--drivers/media/tuners/si2157.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/media/tuners/si2157.c b/drivers/media/tuners/si2157.c
index e87040d6eca7..898e0f9f8b70 100644
--- a/drivers/media/tuners/si2157.c
+++ b/drivers/media/tuners/si2157.c
@@ -118,6 +118,11 @@ static int si2157_init(struct dvb_frontend *fe)
goto err;
}
+ if (dev->dont_load_firmware) {
+ dev_info(&client->dev, "device is buggy, skipping firmware download\n");
+ goto skip_fw_download;
+ }
+
/* query chip revision */
memcpy(cmd.args, "\x02", 1);
cmd.wlen = 1;
@@ -440,6 +445,7 @@ static int si2157_probe(struct i2c_client *client,
i2c_set_clientdata(client, dev);
dev->fe = cfg->fe;
dev->inversion = cfg->inversion;
+ dev->dont_load_firmware = cfg->dont_load_firmware;
dev->if_port = cfg->if_port;
dev->chiptype = (u8)id->driver_data;
dev->if_frequency = 5000000; /* default value of property 0x0706 */