Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

[media] au8522: Fix demod analog mode setting

There are several issues on the current code:
1) msleep(1) is actually equivalent to msleep(10);
2) au8522_video_set() will set reg 0xa4 to the
proper value for SIF, CVBS or S-Video. No need
to force it to CVBS;
3) Let's not hardcode 0x9d for CBS on audio_set.

Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>

+4 -6
+4 -6
drivers/media/dvb-frontends/au8522_decoder.c
··· 458 458 au8522_writereg(state, AU8522_I2C_CONTROL_REG0_REG090H, 0x84); 459 459 msleep(150); 460 460 au8522_writereg(state, AU8522_SYSTEM_MODULE_CONTROL_0_REG0A4H, 0x00); 461 - msleep(1); 462 - au8522_writereg(state, AU8522_SYSTEM_MODULE_CONTROL_0_REG0A4H, 0x9d); 461 + msleep(10); 462 + au8522_writereg(state, AU8522_SYSTEM_MODULE_CONTROL_0_REG0A4H, 463 + AU8522_SYSTEM_MODULE_CONTROL_0_REG0A4H_CVBS); 463 464 msleep(50); 464 465 au8522_writereg(state, AU8522_AUDIO_VOLUME_L_REG0F2H, 0x7F); 465 466 au8522_writereg(state, AU8522_AUDIO_VOLUME_R_REG0F3H, 0x7F); ··· 586 585 587 586 au8522_writereg(state, AU8522_SYSTEM_MODULE_CONTROL_0_REG0A4H, 588 587 0x01); 589 - msleep(1); 590 - au8522_writereg(state, AU8522_SYSTEM_MODULE_CONTROL_0_REG0A4H, 591 - AU8522_SYSTEM_MODULE_CONTROL_0_REG0A4H_CVBS); 588 + msleep(10); 592 589 593 590 au8522_video_set(state); 594 - 595 591 set_audio_input(state); 596 592 597 593 state->operational_mode = AU8522_ANALOG_MODE;