Commit 7a3369e8 authored by Jia-Ju Bai's avatar Jia-Ju Bai Committed by Mauro Carvalho Chehab

media: usb: em28xx: Replace mdelay() with msleep() in em28xx_pre_card_setup()

em28xx_pre_card_setup() 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: default avatarJia-Ju Bai <baijiaju1990@gmail.com>
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab+samsung@kernel.org>
parent 2453e607
...@@ -2852,13 +2852,13 @@ static void em28xx_pre_card_setup(struct em28xx *dev) ...@@ -2852,13 +2852,13 @@ static void em28xx_pre_card_setup(struct em28xx *dev)
em28xx_write_reg(dev, EM2880_R04_GPO, 0x01); em28xx_write_reg(dev, EM2880_R04_GPO, 0x01);
usleep_range(10000, 11000); usleep_range(10000, 11000);
em28xx_write_reg(dev, EM2820_R08_GPIO_CTRL, 0xfd); em28xx_write_reg(dev, EM2820_R08_GPIO_CTRL, 0xfd);
mdelay(70); msleep(70);
em28xx_write_reg(dev, EM2820_R08_GPIO_CTRL, 0xfc); em28xx_write_reg(dev, EM2820_R08_GPIO_CTRL, 0xfc);
mdelay(70); msleep(70);
em28xx_write_reg(dev, EM2820_R08_GPIO_CTRL, 0xdc); em28xx_write_reg(dev, EM2820_R08_GPIO_CTRL, 0xdc);
mdelay(70); msleep(70);
em28xx_write_reg(dev, EM2820_R08_GPIO_CTRL, 0xfc); em28xx_write_reg(dev, EM2820_R08_GPIO_CTRL, 0xfc);
mdelay(70); msleep(70);
break; break;
case EM2870_BOARD_TERRATEC_XS_MT2060: case EM2870_BOARD_TERRATEC_XS_MT2060:
/* /*
...@@ -2866,11 +2866,11 @@ static void em28xx_pre_card_setup(struct em28xx *dev) ...@@ -2866,11 +2866,11 @@ static void em28xx_pre_card_setup(struct em28xx *dev)
* demod work * demod work
*/ */
em28xx_write_reg(dev, EM2820_R08_GPIO_CTRL, 0xfe); em28xx_write_reg(dev, EM2820_R08_GPIO_CTRL, 0xfe);
mdelay(70); msleep(70);
em28xx_write_reg(dev, EM2820_R08_GPIO_CTRL, 0xde); em28xx_write_reg(dev, EM2820_R08_GPIO_CTRL, 0xde);
mdelay(70); msleep(70);
em28xx_write_reg(dev, EM2820_R08_GPIO_CTRL, 0xfe); em28xx_write_reg(dev, EM2820_R08_GPIO_CTRL, 0xfe);
mdelay(70); msleep(70);
break; break;
case EM2870_BOARD_PINNACLE_PCTV_DVB: case EM2870_BOARD_PINNACLE_PCTV_DVB:
/* /*
...@@ -2878,11 +2878,11 @@ static void em28xx_pre_card_setup(struct em28xx *dev) ...@@ -2878,11 +2878,11 @@ static void em28xx_pre_card_setup(struct em28xx *dev)
* DVB-T demod work * DVB-T demod work
*/ */
em28xx_write_reg(dev, EM2820_R08_GPIO_CTRL, 0xfe); em28xx_write_reg(dev, EM2820_R08_GPIO_CTRL, 0xfe);
mdelay(70); msleep(70);
em28xx_write_reg(dev, EM2820_R08_GPIO_CTRL, 0xde); em28xx_write_reg(dev, EM2820_R08_GPIO_CTRL, 0xde);
mdelay(70); msleep(70);
em28xx_write_reg(dev, EM2820_R08_GPIO_CTRL, 0xfe); em28xx_write_reg(dev, EM2820_R08_GPIO_CTRL, 0xfe);
mdelay(70); msleep(70);
break; break;
case EM2820_BOARD_GADMEI_UTV310: case EM2820_BOARD_GADMEI_UTV310:
case EM2820_BOARD_MSI_VOX_USB_2: case EM2820_BOARD_MSI_VOX_USB_2:
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment