Lines Matching defs:regmap

16 #include <linux/regmap.h>
50 static bool nau8825_is_jack_inserted(struct regmap *regmap);
206 /* The regmap patch for Rev C */
320 regmap_update_bits(nau8825->regmap, NAU8825_REG_HSVOL_CTRL,
329 regmap_update_bits(nau8825->regmap, NAU8825_REG_HSVOL_CTRL,
396 regmap_read(nau8825->regmap, nau8825_xtalk_baktab[i].reg,
423 regmap_write(nau8825->regmap, nau8825_xtalk_baktab[i].reg,
433 regmap_update_bits(nau8825->regmap, NAU8825_REG_ENA_CTRL,
442 regmap_update_bits(nau8825->regmap, NAU8825_REG_CHARGE_PUMP,
446 regmap_update_bits(nau8825->regmap, NAU8825_REG_RDAC,
451 regmap_update_bits(nau8825->regmap, NAU8825_REG_POWER_UP_CONTROL,
456 regmap_update_bits(nau8825->regmap, NAU8825_REG_POWER_UP_CONTROL,
460 regmap_update_bits(nau8825->regmap, NAU8825_REG_HSD_CTRL,
463 regmap_update_bits(nau8825->regmap, NAU8825_REG_BOOST,
466 regmap_update_bits(nau8825->regmap, NAU8825_REG_CLASSG_CTRL,
474 regmap_update_bits(nau8825->regmap, NAU8825_REG_ANALOG_ADC_2,
482 regmap_write(nau8825->regmap, NAU8825_REG_FLL1, 0x0);
483 regmap_write(nau8825->regmap, NAU8825_REG_FLL2, 0x3126);
484 regmap_write(nau8825->regmap, NAU8825_REG_FLL3, 0x0008);
485 regmap_write(nau8825->regmap, NAU8825_REG_FLL4, 0x0010);
486 regmap_write(nau8825->regmap, NAU8825_REG_FLL5, 0x0);
487 regmap_write(nau8825->regmap, NAU8825_REG_FLL6, 0x6000);
489 regmap_update_bits(nau8825->regmap, NAU8825_REG_CLK_DIVIDER,
491 regmap_update_bits(nau8825->regmap, NAU8825_REG_FLL6, NAU8825_DCO_EN,
496 regmap_update_bits(nau8825->regmap, NAU8825_REG_CLK_DIVIDER,
498 regmap_update_bits(nau8825->regmap, NAU8825_REG_FLL1,
509 regmap_update_bits(nau8825->regmap, NAU8825_REG_I2S_PCM_CTRL2,
526 regmap_update_bits(nau8825->regmap, NAU8825_REG_DACL_CTRL,
529 regmap_update_bits(nau8825->regmap, NAU8825_REG_DACR_CTRL,
535 regmap_update_bits(nau8825->regmap, NAU8825_REG_IMM_MODE_CTRL,
541 regmap_update_bits(nau8825->regmap,
545 regmap_update_bits(nau8825->regmap, NAU8825_REG_CHARGE_PUMP,
548 regmap_update_bits(nau8825->regmap, NAU8825_REG_CHARGE_PUMP,
556 regmap_update_bits(nau8825->regmap, NAU8825_REG_BOOST,
559 regmap_update_bits(nau8825->regmap, NAU8825_REG_HSD_CTRL,
564 regmap_update_bits(nau8825->regmap, NAU8825_REG_CHARGE_PUMP,
568 regmap_update_bits(nau8825->regmap, NAU8825_REG_CHARGE_PUMP,
572 regmap_update_bits(nau8825->regmap, NAU8825_REG_BIAS_ADJ,
576 regmap_update_bits(nau8825->regmap, NAU8825_REG_POWER_UP_CONTROL,
578 regmap_update_bits(nau8825->regmap, NAU8825_REG_POWER_UP_CONTROL,
582 regmap_update_bits(nau8825->regmap, NAU8825_REG_RDAC,
585 regmap_update_bits(nau8825->regmap, NAU8825_REG_CHARGE_PUMP,
588 regmap_update_bits(nau8825->regmap, NAU8825_REG_ENA_CTRL,
592 regmap_update_bits(nau8825->regmap,
599 regmap_update_bits(nau8825->regmap, NAU8825_REG_ANALOG_ADC_2,
610 regmap_write(nau8825->regmap, NAU8825_REG_IMM_MODE_CTRL, 0);
612 regmap_update_bits(nau8825->regmap, NAU8825_REG_INTERRUPT_MASK,
615 regmap_update_bits(nau8825->regmap, NAU8825_REG_I2S_PCM_CTRL2,
625 regmap_update_bits(nau8825->regmap, NAU8825_REG_ADC_DGAIN_CTRL,
630 regmap_update_bits(nau8825->regmap, NAU8825_REG_BIAS_ADJ,
636 regmap_update_bits(nau8825->regmap, NAU8825_REG_BIAS_ADJ,
642 regmap_update_bits(nau8825->regmap, NAU8825_REG_BIAS_ADJ,
651 regmap_update_bits(nau8825->regmap, NAU8825_REG_IMM_MODE_CTRL,
658 regmap_update_bits(nau8825->regmap,
701 regmap_read(nau8825->regmap, NAU8825_REG_IMM_RMS_L,
718 regmap_read(nau8825->regmap, NAU8825_REG_IMM_RMS_L,
736 regmap_write(nau8825->regmap, NAU8825_REG_DAC_DGAIN_CTRL,
866 regmap_update_bits(nau8825->regmap, NAU8825_REG_FEPGA,
869 regmap_update_bits(nau8825->regmap, NAU8825_REG_BOOST,
872 regmap_update_bits(nau8825->regmap, NAU8825_REG_BOOST,
874 regmap_update_bits(nau8825->regmap, NAU8825_REG_FEPGA,
893 regmap_update_bits(nau8825->regmap, NAU8825_REG_ENA_CTRL,
898 regmap_update_bits(nau8825->regmap,
918 regmap_update_bits(nau8825->regmap, NAU8825_REG_CHARGE_PUMP,
922 regmap_update_bits(nau8825->regmap, NAU8825_REG_CHARGE_PUMP,
941 regmap_update_bits(nau8825->regmap, NAU8825_REG_BIAS_ADJ,
944 regmap_update_bits(nau8825->regmap, NAU8825_REG_CHARGE_PUMP,
947 regmap_update_bits(nau8825->regmap, NAU8825_REG_CHARGE_PUMP,
952 regmap_update_bits(nau8825->regmap, NAU8825_REG_BIAS_ADJ,
955 regmap_update_bits(nau8825->regmap, NAU8825_REG_CHARGE_PUMP,
959 regmap_update_bits(nau8825->regmap, NAU8825_REG_CHARGE_PUMP,
975 struct regmap *regmap = nau8825->regmap;
984 if (nau8825_is_jack_inserted(regmap)) {
1001 if (!component->regmap)
1004 regmap_raw_read(component->regmap, NAU8825_REG_BIQ_COF1,
1016 if (!component->regmap)
1024 regmap_update_bits(component->regmap, NAU8825_REG_BIQ_CTRL,
1026 regmap_raw_write(component->regmap, NAU8825_REG_BIQ_COF1,
1028 regmap_update_bits(component->regmap, NAU8825_REG_BIQ_CTRL,
1242 regmap_read(nau8825->regmap,
1249 regmap_read(nau8825->regmap,
1298 regmap_update_bits(nau8825->regmap, NAU8825_REG_CLK_DIVIDER,
1302 regmap_update_bits(nau8825->regmap, NAU8825_REG_CLK_DIVIDER,
1307 regmap_read(nau8825->regmap, NAU8825_REG_I2S_PCM_CTRL2, &ctrl_val);
1319 regmap_update_bits(nau8825->regmap, NAU8825_REG_I2S_PCM_CTRL2,
1341 regmap_update_bits(nau8825->regmap, NAU8825_REG_I2S_PCM_CTRL1,
1401 regmap_update_bits(nau8825->regmap, NAU8825_REG_I2S_PCM_CTRL1,
1405 regmap_update_bits(nau8825->regmap, NAU8825_REG_I2S_PCM_CTRL2,
1456 regmap_update_bits(nau8825->regmap, NAU8825_REG_I2S_PCM_CTRL2,
1458 regmap_read(nau8825->regmap, NAU8825_REG_I2S_PCM_CTRL1, &value);
1500 regmap_update_bits(nau8825->regmap, NAU8825_REG_TDM_CTRL,
1504 regmap_update_bits(nau8825->regmap, NAU8825_REG_LEFT_TIME_SLOT,
1554 struct regmap *regmap = nau8825->regmap;
1559 regmap_update_bits(regmap, NAU8825_REG_HSD_CTRL,
1567 regmap_update_bits(regmap, NAU8825_REG_HSD_CTRL,
1576 static bool nau8825_is_jack_inserted(struct regmap *regmap)
1581 regmap_read(regmap, NAU8825_REG_JACK_DET_CTRL, &jkdet);
1583 regmap_read(regmap, NAU8825_REG_I2C_DEVICE_ID, &status);
1591 static void nau8825_restart_jack_detection(struct regmap *regmap)
1597 regmap_update_bits(regmap, NAU8825_REG_JACK_DET_CTRL,
1599 regmap_update_bits(regmap, NAU8825_REG_JACK_DET_CTRL,
1603 static void nau8825_int_status_clear_all(struct regmap *regmap)
1610 regmap_read(regmap, NAU8825_REG_IRQ_STATUS, &active_irq);
1614 regmap_write(regmap,
1622 struct regmap *regmap = nau8825->regmap;
1630 regmap_update_bits(regmap, NAU8825_REG_MIC_BIAS,
1633 regmap_update_bits(regmap, NAU8825_REG_HSD_CTRL, 0xf, 0xf);
1638 nau8825_int_status_clear_all(regmap);
1643 regmap_update_bits(regmap, NAU8825_REG_INTERRUPT_DIS_CTRL,
1646 regmap_update_bits(regmap, NAU8825_REG_INTERRUPT_MASK,
1651 regmap_update_bits(regmap, NAU8825_REG_JACK_DET_CTRL,
1655 regmap_update_bits(regmap, NAU8825_REG_ENA_CTRL,
1665 struct regmap *regmap = nau8825->regmap;
1668 regmap_update_bits(regmap, NAU8825_REG_HSD_CTRL,
1674 regmap_update_bits(regmap, NAU8825_REG_INTERRUPT_MASK,
1680 regmap_update_bits(regmap, NAU8825_REG_CLK_DIVIDER,
1684 regmap_update_bits(regmap, NAU8825_REG_ENA_CTRL,
1692 regmap_update_bits(regmap, NAU8825_REG_I2S_PCM_CTRL2,
1694 regmap_update_bits(regmap, NAU8825_REG_I2S_PCM_CTRL2,
1698 regmap_update_bits(regmap, NAU8825_REG_JACK_DET_CTRL,
1702 regmap_write(regmap, NAU8825_REG_INTERRUPT_DIS_CTRL, 0);
1705 nau8825_restart_jack_detection(regmap);
1731 struct regmap *regmap = nau8825->regmap;
1736 regmap_update_bits(regmap, NAU8825_REG_HSD_CTRL,
1739 regmap_update_bits(regmap, NAU8825_REG_ANALOG_CONTROL_1,
1741 regmap_write(regmap, NAU8825_REG_TRIM_SETTINGS, 0x6);
1742 regmap_update_bits(regmap, NAU8825_REG_MIC_BIAS,
1745 regmap_update_bits(regmap, NAU8825_REG_SAR_CTRL,
1756 regmap_update_bits(regmap, NAU8825_REG_HSD_CTRL,
1759 regmap_update_bits(regmap, NAU8825_REG_MIC_BIAS,
1762 regmap_read(regmap, NAU8825_REG_SARDOUT_RAM_STATUS, &adc_mg1);
1765 regmap_update_bits(regmap, NAU8825_REG_MIC_BIAS,
1767 regmap_update_bits(regmap, NAU8825_REG_HSD_CTRL,
1771 regmap_update_bits(regmap, NAU8825_REG_HSD_CTRL,
1774 regmap_update_bits(regmap, NAU8825_REG_MIC_BIAS,
1777 regmap_update_bits(regmap, NAU8825_REG_SAR_CTRL,
1779 regmap_read(regmap, NAU8825_REG_SARDOUT_RAM_STATUS, &adc_mg2);
1786 regmap_update_bits(regmap, NAU8825_REG_MIC_BIAS,
1789 regmap_update_bits(regmap, NAU8825_REG_HSD_CTRL,
1793 regmap_update_bits(regmap, NAU8825_REG_ANALOG_CONTROL_1,
1795 regmap_write(regmap, NAU8825_REG_TRIM_SETTINGS, 0);
1796 regmap_update_bits(regmap, NAU8825_REG_SAR_CTRL,
1799 regmap_update_bits(regmap, NAU8825_REG_SAR_CTRL,
1810 regmap_update_bits(regmap, NAU8825_REG_HSD_CTRL,
1814 regmap_update_bits(regmap, NAU8825_REG_MIC_BIAS,
1818 regmap_update_bits(regmap, NAU8825_REG_SAR_CTRL,
1825 regmap_update_bits(regmap, NAU8825_REG_HSD_CTRL,
1829 regmap_update_bits(regmap, NAU8825_REG_MIC_BIAS,
1833 regmap_update_bits(regmap, NAU8825_REG_SAR_CTRL,
1846 struct regmap *regmap = nau8825->regmap;
1851 regmap_read(regmap, NAU8825_REG_GENERAL_STATUS, &jack_status_reg);
1869 regmap_update_bits(regmap, NAU8825_REG_HSD_CTRL, 3 << 2,
1872 regmap_update_bits(regmap, NAU8825_REG_MIC_BIAS,
1876 regmap_update_bits(regmap, NAU8825_REG_SAR_CTRL,
1889 regmap_update_bits(regmap, NAU8825_REG_HSD_CTRL, 3 << 2,
1892 regmap_update_bits(regmap, NAU8825_REG_MIC_BIAS,
1896 regmap_update_bits(regmap, NAU8825_REG_SAR_CTRL,
1919 regmap_update_bits(regmap, NAU8825_REG_CLK_DIVIDER,
1923 regmap_update_bits(regmap, NAU8825_REG_HSD_CTRL, NAU8825_HSD_AUTO_MODE, 0);
1938 struct regmap *regmap = nau8825->regmap;
1941 if (regmap_read(regmap, NAU8825_REG_IRQ_STATUS, &active_irq)) {
1955 regmap_read(regmap, NAU8825_REG_INT_CLR_KEY_STATUS,
1971 if (nau8825_is_jack_inserted(regmap)) {
2033 if (nau8825_is_jack_inserted(regmap)) {
2035 regmap_update_bits(regmap,
2039 regmap_update_bits(regmap, NAU8825_REG_INTERRUPT_MASK,
2051 regmap_write(regmap, NAU8825_REG_INT_CLR_KEY_STATUS, clear_irq);
2066 struct regmap *regmap = nau8825->regmap;
2068 regmap_update_bits(regmap, NAU8825_REG_SAR_CTRL,
2071 regmap_update_bits(regmap, NAU8825_REG_SAR_CTRL,
2074 regmap_update_bits(regmap, NAU8825_REG_SAR_CTRL,
2078 regmap_update_bits(regmap, NAU8825_REG_KEYDET_CTRL,
2081 regmap_update_bits(regmap, NAU8825_REG_KEYDET_CTRL,
2084 regmap_update_bits(regmap, NAU8825_REG_KEYDET_CTRL,
2088 regmap_write(regmap, NAU8825_REG_VDET_THRESHOLD_1,
2090 regmap_write(regmap, NAU8825_REG_VDET_THRESHOLD_2,
2092 regmap_write(regmap, NAU8825_REG_VDET_THRESHOLD_3,
2094 regmap_write(regmap, NAU8825_REG_VDET_THRESHOLD_4,
2098 regmap_update_bits(regmap, NAU8825_REG_INTERRUPT_MASK,
2105 struct regmap *regmap = nau8825->regmap;
2108 regmap_write(regmap, NAU8825_REG_IIC_ADDR_SET, 0x0001);
2110 regmap_update_bits(nau8825->regmap, NAU8825_REG_BIAS_ADJ,
2112 regmap_update_bits(nau8825->regmap, NAU8825_REG_BOOST,
2116 regmap_update_bits(regmap, NAU8825_REG_BIAS_ADJ,
2120 regmap_update_bits(regmap, NAU8825_REG_BOOST,
2126 regmap_update_bits(regmap, NAU8825_REG_GPIO12_CTRL,
2129 regmap_update_bits(regmap, NAU8825_REG_GPIO12_CTRL,
2132 regmap_update_bits(regmap, NAU8825_REG_GPIO12_CTRL,
2135 regmap_update_bits(regmap, NAU8825_REG_JACK_DET_CTRL,
2140 regmap_update_bits(regmap, NAU8825_REG_JACK_DET_CTRL,
2143 regmap_update_bits(regmap, NAU8825_REG_JACK_DET_CTRL,
2148 regmap_update_bits(regmap, NAU8825_REG_INTERRUPT_MASK,
2152 regmap_update_bits(regmap, NAU8825_REG_INTERRUPT_MASK, 0x7ff, 0x7ff);
2154 regmap_update_bits(regmap, NAU8825_REG_MIC_BIAS,
2163 regmap_update_bits(regmap, NAU8825_REG_ADC_RATE,
2166 regmap_update_bits(regmap, NAU8825_REG_DAC_CTRL1,
2170 regmap_update_bits(regmap, NAU8825_REG_CHARGE_PUMP,
2177 regmap_update_bits(nau8825->regmap, NAU8825_REG_BIAS_ADJ,
2180 regmap_update_bits(regmap, NAU8825_REG_DAC_CTRL1,
2184 regmap_update_bits(regmap, NAU8825_REG_ANALOG_CONTROL_2,
2190 regmap_update_bits(regmap, NAU8825_REG_CLASSG_CTRL,
2194 regmap_update_bits(regmap, NAU8825_REG_RDAC,
2199 regmap_update_bits(nau8825->regmap, NAU8825_REG_DACL_CTRL,
2201 regmap_update_bits(nau8825->regmap, NAU8825_REG_DACR_CTRL,
2204 regmap_update_bits(regmap, NAU8825_REG_LEFT_TIME_SLOT,
2207 regmap_update_bits(regmap, NAU8825_REG_CHARGE_PUMP,
2316 regmap_update_bits(nau8825->regmap, NAU8825_REG_CLK_DIVIDER,
2320 regmap_update_bits(nau8825->regmap, NAU8825_REG_FLL1,
2325 regmap_write(nau8825->regmap, NAU8825_REG_FLL2,
2328 regmap_write(nau8825->regmap, NAU8825_REG_FLL2_LOWER,
2330 regmap_write(nau8825->regmap, NAU8825_REG_FLL2_UPPER,
2334 regmap_update_bits(nau8825->regmap, NAU8825_REG_FLL3,
2337 regmap_update_bits(nau8825->regmap, NAU8825_REG_FLL4,
2341 regmap_update_bits(nau8825->regmap, NAU8825_REG_FLL5,
2344 regmap_update_bits(nau8825->regmap,
2348 regmap_update_bits(nau8825->regmap, NAU8825_REG_FLL5,
2353 regmap_update_bits(nau8825->regmap, NAU8825_REG_FLL6,
2358 regmap_update_bits(nau8825->regmap, NAU8825_REG_FLL5,
2361 regmap_update_bits(nau8825->regmap, NAU8825_REG_FLL6,
2391 regmap_update_bits(nau8825->regmap, NAU8825_REG_CLK_DIVIDER,
2427 static void nau8825_configure_mclk_as_sysclk(struct regmap *regmap)
2429 regmap_update_bits(regmap, NAU8825_REG_CLK_DIVIDER,
2431 regmap_update_bits(regmap, NAU8825_REG_FLL6,
2434 regmap_update_bits(regmap, NAU8825_REG_FLL1,
2441 struct regmap *regmap = nau8825->regmap;
2447 nau8825_configure_mclk_as_sysclk(regmap);
2461 nau8825_configure_mclk_as_sysclk(regmap);
2463 regmap_update_bits(regmap, NAU8825_REG_CLK_DIVIDER,
2474 if (nau8825_is_jack_inserted(nau8825->regmap)) {
2475 regmap_update_bits(regmap, NAU8825_REG_FLL6,
2477 regmap_update_bits(regmap, NAU8825_REG_CLK_DIVIDER,
2482 regmap_update_bits(regmap, NAU8825_REG_CLK_DIVIDER,
2484 regmap_update_bits(regmap, NAU8825_REG_FLL1,
2487 regmap_update_bits(regmap, NAU8825_REG_FLL6,
2493 nau8825_configure_mclk_as_sysclk(regmap);
2513 regmap_update_bits(regmap, NAU8825_REG_FLL3,
2537 regmap_update_bits(regmap, NAU8825_REG_FLL3,
2563 regmap_update_bits(regmap, NAU8825_REG_FLL3,
2596 struct regmap *regmap = nau8825->regmap;
2602 nau8825_int_status_clear_all(regmap);
2607 regmap_update_bits(regmap, NAU8825_REG_INTERRUPT_MASK,
2611 regmap_update_bits(regmap, NAU8825_REG_JACK_DET_CTRL,
2613 regmap_update_bits(regmap, NAU8825_REG_INTERRUPT_DIS_CTRL,
2649 regmap_update_bits(nau8825->regmap, NAU8825_REG_MIC_BIAS,
2652 regmap_update_bits(nau8825->regmap,
2659 regmap_write(nau8825->regmap,
2662 regmap_update_bits(nau8825->regmap, NAU8825_REG_ENA_CTRL,
2681 regcache_cache_only(nau8825->regmap, true);
2682 regcache_mark_dirty(nau8825->regmap);
2692 regcache_cache_only(nau8825->regmap, false);
2693 regcache_sync(nau8825->regmap);
2730 static void nau8825_reset_chip(struct regmap *regmap)
2732 regmap_write(regmap, NAU8825_REG_RESET, 0x00);
2733 regmap_write(regmap, NAU8825_REG_RESET, 0x00);
2887 nau8825->regmap = devm_regmap_init_i2c(i2c, &nau8825_regmap_config);
2888 if (IS_ERR(nau8825->regmap))
2889 return PTR_ERR(nau8825->regmap);
2903 nau8825_reset_chip(nau8825->regmap);
2904 ret = regmap_read(nau8825->regmap, NAU8825_REG_I2C_DEVICE_ID, &value);
2915 ret = regmap_register_patch(nau8825->regmap, nau8825_regmap_patch,