]> asedeno.scripts.mit.edu Git - linux.git/commitdiff
media: pci: cx88: Replace mdelay() with msleep() in dvb_register()
authorJia-Ju Bai <baijiaju1990@gmail.com>
Fri, 27 Jul 2018 03:41:50 +0000 (23:41 -0400)
committerMauro Carvalho Chehab <mchehab+samsung@kernel.org>
Fri, 27 Jul 2018 12:15:18 +0000 (08:15 -0400)
dvb_register() is never called in atomic context.
It calls mdelay() to busily wait, which is not necessary.
mdelay() can be replaced with msleep().

This is found by a static analysis tool named DCNS written by myself.

Signed-off-by: Jia-Ju Bai <baijiaju1990@gmail.com>
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
drivers/media/pci/cx88/cx88-dvb.c

index ccfde28d4af245d02ae723b47d0c8bcc25083f29..90b208747e0fde3c51eb083e9367c8d19a01be16 100644 (file)
@@ -1226,9 +1226,9 @@ static int dvb_register(struct cx8802_dev *dev)
 
                /* Do a hardware reset of chip before using it. */
                cx_clear(MO_GP0_IO, 1);
-               mdelay(100);
+               msleep(100);
                cx_set(MO_GP0_IO, 1);
-               mdelay(200);
+               msleep(200);
 
                /* Select RF connector callback */
                fusionhdtv_3_gold.pll_rf_set = lgdt330x_pll_rf_set;
@@ -1248,9 +1248,9 @@ static int dvb_register(struct cx8802_dev *dev)
 
                /* Do a hardware reset of chip before using it. */
                cx_clear(MO_GP0_IO, 1);
-               mdelay(100);
+               msleep(100);
                cx_set(MO_GP0_IO, 9);
-               mdelay(200);
+               msleep(200);
                fe0->dvb.frontend = dvb_attach(lgdt330x_attach,
                                               &fusionhdtv_3_gold,
                                               0x0e,
@@ -1267,9 +1267,9 @@ static int dvb_register(struct cx8802_dev *dev)
 
                /* Do a hardware reset of chip before using it. */
                cx_clear(MO_GP0_IO, 1);
-               mdelay(100);
+               msleep(100);
                cx_set(MO_GP0_IO, 1);
-               mdelay(200);
+               msleep(200);
                fe0->dvb.frontend = dvb_attach(lgdt330x_attach,
                                               &fusionhdtv_5_gold,
                                               0x0e,
@@ -1289,9 +1289,9 @@ static int dvb_register(struct cx8802_dev *dev)
 
                /* Do a hardware reset of chip before using it. */
                cx_clear(MO_GP0_IO, 1);
-               mdelay(100);
+               msleep(100);
                cx_set(MO_GP0_IO, 1);
-               mdelay(200);
+               msleep(200);
                fe0->dvb.frontend = dvb_attach(lgdt330x_attach,
                                               &pchdtv_hd5500,
                                               0x59,
@@ -1583,9 +1583,9 @@ static int dvb_register(struct cx8802_dev *dev)
                cx_set(MO_GP0_IO, 0x0101);
 
                cx_clear(MO_GP0_IO, 0x01);
-               mdelay(100);
+               msleep(100);
                cx_set(MO_GP0_IO, 0x01);
-               mdelay(200);
+               msleep(200);
 
                fe0->dvb.frontend = dvb_attach(stv0299_attach,
                                               &samsung_stv0299_config,