Lines Matching refs:regmap
13 #include <linux/regmap.h>
56 int (*init)(struct regmap *regmap);
192 static int tfa9890_init(struct regmap *regmap)
197 ret = regmap_write(regmap, TFA989X_HIDE_UNHIDE_KEY, 0x5a6b);
202 ret = regmap_set_bits(regmap, 0x59, 0x3);
207 ret = regmap_write(regmap, TFA989X_HIDE_UNHIDE_KEY, 0x0000);
211 return regmap_write(regmap, TFA989X_CURRENTSENSE2, 0x7BE1);
233 static int tfa9895_init(struct regmap *regmap)
235 return regmap_multi_reg_write(regmap, tfa9895_reg_init,
244 static int tfa9897_init(struct regmap *regmap)
249 ret = regmap_write(regmap, TFA989X_CURRENTSENSE3, 0x0300);
254 ret = regmap_clear_bits(regmap, TFA989X_CURRENTSENSE4, 0x1);
259 return regmap_write(regmap, 0x14, 0x0);
286 static int tfa989x_dsp_bypass(struct regmap *regmap)
291 ret = regmap_clear_bits(regmap, TFA989X_I2SREG, TFA989X_I2SREG_CHSA_MSK);
296 ret = regmap_update_bits(regmap, TFA989X_I2S_SEL_REG,
304 return regmap_clear_bits(regmap, TFA989X_SYS_CTRL,
322 struct regmap *regmap;
350 regmap = devm_regmap_init_i2c(i2c, &tfa989x_regmap);
351 if (IS_ERR(regmap))
352 return PTR_ERR(regmap);
365 regcache_cache_bypass(regmap, true);
368 regmap_read(regmap, TFA989X_REVISIONNUMBER, &val);
370 ret = regmap_read(regmap, TFA989X_REVISIONNUMBER, &val);
383 ret = regmap_write(regmap, TFA989X_SYS_CTRL, BIT(TFA989X_SYS_CTRL_I2CR));
389 ret = rev->init(regmap);
395 ret = tfa989x_dsp_bypass(regmap);
400 regcache_cache_bypass(regmap, false);