ALSA:: ctxfi: cthw20k1: Replace mdelay() with msleep()
hw_pll_init(), hw_reset_dac() and hw_card_init() are never called in atomic context. They 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: Takashi Iwai <tiwai@suse.de>
This commit is contained in:
parent
df3f0347fd
commit
08fd8325d9
@ -1319,7 +1319,7 @@ static int hw_pll_init(struct hw *hw, unsigned int rsr)
|
||||
break;
|
||||
|
||||
hw_write_20kx(hw, PLLCTL, pllctl);
|
||||
mdelay(40);
|
||||
msleep(40);
|
||||
}
|
||||
if (i >= 3) {
|
||||
dev_alert(hw->card->dev, "PLL initialization failed!!!\n");
|
||||
@ -1407,7 +1407,7 @@ static int hw_reset_dac(struct hw *hw)
|
||||
/* To be effective, need to reset the DAC twice. */
|
||||
for (i = 0; i < 2; i++) {
|
||||
/* set gpio */
|
||||
mdelay(100);
|
||||
msleep(100);
|
||||
gpioorg = (u16)hw_read_20kx(hw, GPIO);
|
||||
gpioorg &= 0xfffd;
|
||||
hw_write_20kx(hw, GPIO, gpioorg);
|
||||
@ -2030,7 +2030,7 @@ static int hw_card_init(struct hw *hw, struct card_conf *info)
|
||||
hw_write_20kx(hw, GIE, 0);
|
||||
/* Reset all SRC pending interrupts */
|
||||
hw_write_20kx(hw, SRCIP, 0);
|
||||
mdelay(30);
|
||||
msleep(30);
|
||||
|
||||
/* Detect the card ID and configure GPIO accordingly. */
|
||||
switch (hw->model) {
|
||||
|
Loading…
Reference in New Issue
Block a user