clk: rs9: Fix suspend/resume
Disabling the cache in commit2ff4ba9e37
("clk: rs9: Fix I2C accessors") without removing cache synchronization in resume path results in a kernel panic as map->cache_ops is unset, due to REGCACHE_NONE. Enable flat cache again to support resume again. num_reg_defaults_raw is necessary to read the cache defaults from hardware. Some registers are strapped in hardware and cannot be provided in software. Fixes:2ff4ba9e37
("clk: rs9: Fix I2C accessors") Signed-off-by: Alexander Stein <alexander.stein@ew.tq-group.com> Link: https://lore.kernel.org/r/20230310074940.3475703-1-alexander.stein@ew.tq-group.com Signed-off-by: Stephen Boyd <sboyd@kernel.org>
This commit is contained in:
parent
f420f47e56
commit
632e04739c
|
@ -143,8 +143,9 @@ static int rs9_regmap_i2c_read(void *context,
|
||||||
static const struct regmap_config rs9_regmap_config = {
|
static const struct regmap_config rs9_regmap_config = {
|
||||||
.reg_bits = 8,
|
.reg_bits = 8,
|
||||||
.val_bits = 8,
|
.val_bits = 8,
|
||||||
.cache_type = REGCACHE_NONE,
|
.cache_type = REGCACHE_FLAT,
|
||||||
.max_register = RS9_REG_BCP,
|
.max_register = RS9_REG_BCP,
|
||||||
|
.num_reg_defaults_raw = 0x8,
|
||||||
.rd_table = &rs9_readable_table,
|
.rd_table = &rs9_readable_table,
|
||||||
.wr_table = &rs9_writeable_table,
|
.wr_table = &rs9_writeable_table,
|
||||||
.reg_write = rs9_regmap_i2c_write,
|
.reg_write = rs9_regmap_i2c_write,
|
||||||
|
|
Loading…
Reference in New Issue