mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-12-23 02:54:32 +08:00
[media] drx-j: be sure to do a full software reset
Mimic what windows driver does here: it writes 0x07 to SIO_CC_SOFT_RST__A, instead of just 0x03. Acked-by: Devin Heitmueller <dheitmueller@kernellabs.com> Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
This commit is contained in:
parent
d7a5478a8a
commit
8afff9a23f
@ -19876,8 +19876,15 @@ int drxj_open(struct drx_demod_instance *demod)
|
||||
goto rw_error;
|
||||
}
|
||||
|
||||
/* Soft reset of sys- and osc-clockdomain */
|
||||
rc = drxj_dap_write_reg16(dev_addr, SIO_CC_SOFT_RST__A, (SIO_CC_SOFT_RST_SYS__M | SIO_CC_SOFT_RST_OSC__M), 0);
|
||||
/*
|
||||
* Soft reset of sys- and osc-clockdomain
|
||||
*
|
||||
* HACK: On windows, it writes a 0x07 here, instead of just 0x03.
|
||||
* As we didn't load the firmware here yet, we should do the same.
|
||||
* Btw, this is coherent with DRX-K, where we send reset codes
|
||||
* for modulation (OFTM, in DRX-k), SYS and OSC clock domains.
|
||||
*/
|
||||
rc = drxj_dap_write_reg16(dev_addr, SIO_CC_SOFT_RST__A, (0x04 | SIO_CC_SOFT_RST_SYS__M | SIO_CC_SOFT_RST_OSC__M), 0);
|
||||
if (rc != 0) {
|
||||
pr_err("error %d\n", rc);
|
||||
goto rw_error;
|
||||
|
Loading…
Reference in New Issue
Block a user