Lines Matching refs:regmap

18 #include <linux/regmap.h>
47 static bool nau8821_is_jack_inserted(struct regmap *regmap);
287 if (!component->regmap)
290 regmap_raw_read(component->regmap, NAU8821_R21_BIQ0_COF1,
303 if (!component->regmap)
311 regmap_raw_write(component->regmap, NAU8821_R21_BIQ0_COF1,
479 regmap_read(nau8821->regmap, NAU8821_R03_CLK_DIVIDER,
498 regmap_update_bits(nau8821->regmap, NAU8821_R13_DMIC_CTRL,
515 regmap_update_bits(nau8821->regmap, NAU8821_R01_ENA_CTRL,
519 regmap_update_bits(nau8821->regmap,
539 regmap_update_bits(nau8821->regmap, NAU8821_R01_ENA_CTRL,
543 regmap_update_bits(nau8821->regmap,
565 regmap_update_bits(nau8821->regmap, NAU8821_R80_CHARGE_PUMP,
569 regmap_update_bits(nau8821->regmap, NAU8821_R80_CHARGE_PUMP,
589 regmap_update_bits(nau8821->regmap, NAU8821_R66_BIAS_ADJ,
593 regmap_update_bits(nau8821->regmap, NAU8821_R66_BIAS_ADJ,
617 if (nau8821_is_jack_inserted(nau8821->regmap)) {
638 regmap_update_bits(nau8821->regmap, NAU8821_R77_FEPGA,
641 regmap_update_bits(nau8821->regmap, NAU8821_R76_BOOST,
645 regmap_update_bits(nau8821->regmap, NAU8821_R77_FEPGA,
647 regmap_update_bits(nau8821->regmap, NAU8821_R76_BOOST,
815 regmap_read(nau8821->regmap, NAU8821_R2C_DAC_CTRL1, &osr);
821 regmap_read(nau8821->regmap, NAU8821_R2B_ADC_RATE, &osr);
866 regmap_update_bits(nau8821->regmap, NAU8821_R03_CLK_DIVIDER,
870 regmap_update_bits(nau8821->regmap, NAU8821_R03_CLK_DIVIDER,
875 regmap_read(nau8821->regmap, NAU8821_R1D_I2S_PCM_CTRL2, &ctrl_val);
888 regmap_update_bits(nau8821->regmap, NAU8821_R1D_I2S_PCM_CTRL2,
910 regmap_update_bits(nau8821->regmap, NAU8821_R1C_I2S_PCM_CTRL1,
963 regmap_update_bits(nau8821->regmap, NAU8821_R1C_I2S_PCM_CTRL1,
966 regmap_update_bits(nau8821->regmap, NAU8821_R1D_I2S_PCM_CTRL2,
982 return regmap_update_bits(nau8821->regmap,
1018 static bool nau8821_is_jack_inserted(struct regmap *regmap)
1023 regmap_read(regmap, NAU8821_R0D_JACK_DET_CTRL, &jkdet);
1025 regmap_read(regmap, NAU8821_R82_GENERAL_STATUS, &status);
1033 static void nau8821_int_status_clear_all(struct regmap *regmap)
1040 regmap_read(regmap, NAU8821_R10_IRQ_STATUS, &active_irq);
1044 regmap_write(regmap,
1052 struct regmap *regmap = nau8821->regmap;
1056 regmap_update_bits(regmap, NAU8821_R74_MIC_BIAS,
1059 regmap_update_bits(regmap, NAU8821_R0D_JACK_DET_CTRL,
1065 nau8821_int_status_clear_all(regmap);
1070 regmap_update_bits(regmap, NAU8821_R12_INTERRUPT_DIS_CTRL,
1074 regmap_update_bits(regmap, NAU8821_R0F_INTERRUPT_MASK,
1078 regmap_update_bits(regmap, NAU8821_R0D_JACK_DET_CTRL,
1086 regmap_update_bits(regmap, NAU8821_R2B_ADC_RATE,
1089 regmap_update_bits(regmap, NAU8821_R0F_INTERRUPT_MASK,
1094 regmap_update_bits(regmap,
1110 struct regmap *regmap = nau8821->regmap;
1117 regmap_read(regmap, NAU8821_R58_I2C_DEVICE_ID, &jack_status_reg);
1124 regmap_update_bits(regmap, NAU8821_R74_MIC_BIAS,
1129 regmap_update_bits(regmap, NAU8821_R2B_ADC_RATE,
1132 regmap_update_bits(regmap, NAU8821_R0F_INTERRUPT_MASK,
1135 regmap_update_bits(regmap,
1153 struct regmap *regmap = nau8821->regmap;
1164 regmap_update_bits(regmap, NAU8821_R1D_I2S_PCM_CTRL2,
1166 regmap_update_bits(regmap, NAU8821_R1D_I2S_PCM_CTRL2,
1170 regmap_update_bits(regmap, NAU8821_R0D_JACK_DET_CTRL,
1173 regmap_update_bits(regmap, NAU8821_R0F_INTERRUPT_MASK,
1175 regmap_update_bits(regmap, NAU8821_R12_INTERRUPT_DIS_CTRL,
1182 struct regmap *regmap = nau8821->regmap;
1185 if (regmap_read(regmap, NAU8821_R10_IRQ_STATUS, &active_irq)) {
1194 regmap_update_bits(regmap, NAU8821_R71_ANALOG_ADC_1,
1208 regmap_update_bits(regmap, NAU8821_R71_ANALOG_ADC_1,
1210 if (nau8821_is_jack_inserted(regmap)) {
1215 regmap_update_bits(regmap,
1219 regmap_update_bits(regmap,
1234 regmap_write(regmap, NAU8821_R11_INT_CLR_KEY_STATUS, clear_irq);
1337 struct regmap *regmap = nau8821->regmap;
1339 regmap_update_bits(regmap, NAU8821_R03_CLK_DIVIDER,
1343 regmap_update_bits(regmap, NAU8821_R04_FLL1,
1347 regmap_write(regmap, NAU8821_R0A_FLL7,
1349 regmap_write(regmap, NAU8821_R0B_FLL8, fll_param->fll_frac & 0xffff);
1351 regmap_update_bits(regmap, NAU8821_R06_FLL3,
1354 regmap_update_bits(regmap, NAU8821_R07_FLL4,
1359 regmap_update_bits(regmap, NAU8821_R08_FLL5,
1362 regmap_update_bits(regmap,
1366 regmap_update_bits(regmap, NAU8821_R08_FLL5,
1371 regmap_update_bits(regmap, NAU8821_R09_FLL6,
1376 regmap_update_bits(regmap, NAU8821_R08_FLL5,
1379 regmap_update_bits(regmap, NAU8821_R09_FLL6,
1419 regmap_update_bits(nau8821->regmap, NAU8821_R03_CLK_DIVIDER,
1425 static void nau8821_configure_mclk_as_sysclk(struct regmap *regmap)
1427 regmap_update_bits(regmap, NAU8821_R03_CLK_DIVIDER,
1429 regmap_update_bits(regmap, NAU8821_R09_FLL6,
1432 regmap_update_bits(regmap, NAU8821_R04_FLL1,
1439 struct regmap *regmap = nau8821->regmap;
1444 nau8821_configure_mclk_as_sysclk(regmap);
1447 nau8821_configure_mclk_as_sysclk(regmap);
1449 regmap_update_bits(regmap, NAU8821_R03_CLK_DIVIDER,
1453 if (nau8821_is_jack_inserted(regmap)) {
1454 regmap_update_bits(regmap, NAU8821_R09_FLL6,
1456 regmap_update_bits(regmap, NAU8821_R03_CLK_DIVIDER,
1461 regmap_update_bits(regmap, NAU8821_R03_CLK_DIVIDER,
1463 regmap_update_bits(regmap, NAU8821_R04_FLL1,
1466 regmap_update_bits(regmap, NAU8821_R09_FLL6,
1475 regmap_update_bits(regmap, NAU8821_R06_FLL3,
1486 regmap_update_bits(regmap, NAU8821_R06_FLL3,
1498 regmap_update_bits(regmap, NAU8821_R06_FLL3,
1524 struct regmap *regmap = nau8821->regmap;
1530 nau8821_int_status_clear_all(regmap);
1535 regmap_update_bits(regmap, NAU8821_R0F_INTERRUPT_MASK,
1537 regmap_update_bits(regmap, NAU8821_R0D_JACK_DET_CTRL,
1540 regmap_update_bits(regmap, NAU8821_R12_INTERRUPT_DIS_CTRL,
1551 struct regmap *regmap = nau8821->regmap;
1569 regmap_update_bits(regmap, NAU8821_R0D_JACK_DET_CTRL,
1575 regmap_update_bits(regmap, NAU8821_R74_MIC_BIAS,
1581 regmap_write(regmap,
1583 regmap_update_bits(regmap, NAU8821_R0F_INTERRUPT_MASK,
1605 regcache_cache_only(nau8821->regmap, true);
1606 regcache_mark_dirty(nau8821->regmap);
1615 regcache_cache_only(nau8821->regmap, false);
1616 regcache_sync(nau8821->regmap);
1674 static void nau8821_reset_chip(struct regmap *regmap)
1676 regmap_write(regmap, NAU8821_R00_RESET, 0xffff);
1677 regmap_write(regmap, NAU8821_R00_RESET, 0xffff);
1744 struct regmap *regmap = nau8821->regmap;
1747 regmap_update_bits(regmap, NAU8821_R66_BIAS_ADJ,
1749 regmap_update_bits(regmap, NAU8821_R76_BOOST,
1756 regmap_update_bits(regmap, NAU8821_R66_BIAS_ADJ,
1761 regmap_update_bits(regmap, NAU8821_R1E_LEFT_TIME_SLOT,
1764 regmap_update_bits(regmap, NAU8821_R76_BOOST,
1770 regmap_update_bits(regmap, NAU8821_R4B_CLASSG_CTRL,
1774 regmap_update_bits(regmap, NAU8821_R6A_ANALOG_CONTROL_2,
1780 regmap_update_bits(regmap, NAU8821_R80_CHARGE_PUMP,
1783 regmap_update_bits(regmap, NAU8821_R73_RDAC,
1788 regmap_update_bits(regmap, NAU8821_R74_MIC_BIAS,
1793 regmap_update_bits(regmap, NAU8821_R2B_ADC_RATE,
1795 regmap_update_bits(regmap, NAU8821_R2C_DAC_CTRL1,
1798 regmap_update_bits(regmap, NAU8821_R6B_PGA_MUTE,
1800 regmap_update_bits(regmap, NAU8821_R74_MIC_BIAS,
1807 struct regmap *regmap = nau8821->regmap;
1810 regmap_update_bits(regmap, NAU8821_R1A_GPIO12_CTRL,
1813 regmap_update_bits(regmap, NAU8821_R1A_GPIO12_CTRL,
1816 regmap_update_bits(regmap, NAU8821_R1A_GPIO12_CTRL,
1819 regmap_update_bits(regmap, NAU8821_R0D_JACK_DET_CTRL,
1823 regmap_update_bits(regmap, NAU8821_R0D_JACK_DET_CTRL,
1827 regmap_update_bits(regmap, NAU8821_R0D_JACK_DET_CTRL,
1832 regmap_update_bits(regmap, NAU8821_R0F_INTERRUPT_MASK,
1838 regmap_update_bits(regmap, NAU8821_R0F_INTERRUPT_MASK, 0x3f5, 0x3f5);
1884 nau8821->regmap = devm_regmap_init_i2c(i2c, &nau8821_regmap_config);
1885 if (IS_ERR(nau8821->regmap))
1886 return PTR_ERR(nau8821->regmap);
1898 nau8821_reset_chip(nau8821->regmap);
1899 ret = regmap_read(nau8821->regmap, NAU8821_R58_I2C_DEVICE_ID, &value);