/linux-6.1.9/drivers/mfd/ |
D | twl6040.c | 99 int twl6040_reg_read(struct twl6040 *twl6040, unsigned int reg) in twl6040_reg_read() argument 104 ret = regmap_read(twl6040->regmap, reg, &val); in twl6040_reg_read() 112 int twl6040_reg_write(struct twl6040 *twl6040, unsigned int reg, u8 val) in twl6040_reg_write() argument 116 ret = regmap_write(twl6040->regmap, reg, val); in twl6040_reg_write() 122 int twl6040_set_bits(struct twl6040 *twl6040, unsigned int reg, u8 mask) in twl6040_set_bits() argument 124 return regmap_update_bits(twl6040->regmap, reg, mask, mask); in twl6040_set_bits() 128 int twl6040_clear_bits(struct twl6040 *twl6040, unsigned int reg, u8 mask) in twl6040_clear_bits() argument 130 return regmap_update_bits(twl6040->regmap, reg, mask, 0); in twl6040_clear_bits() 135 static int twl6040_power_up_manual(struct twl6040 *twl6040) in twl6040_power_up_manual() argument 142 ret = twl6040_reg_write(twl6040, TWL6040_REG_LDOCTL, ldoctl); in twl6040_power_up_manual() [all …]
|
D | Makefile | 113 obj-$(CONFIG_TWL6040_CORE) += twl6040.o
|
/linux-6.1.9/include/linux/mfd/ |
D | twl6040.h | 209 struct twl6040 { struct 235 int twl6040_reg_read(struct twl6040 *twl6040, unsigned int reg); argument 236 int twl6040_reg_write(struct twl6040 *twl6040, unsigned int reg, 238 int twl6040_set_bits(struct twl6040 *twl6040, unsigned int reg, 240 int twl6040_clear_bits(struct twl6040 *twl6040, unsigned int reg, 242 int twl6040_power(struct twl6040 *twl6040, int on); 243 int twl6040_set_pll(struct twl6040 *twl6040, int pll_id, 245 int twl6040_get_pll(struct twl6040 *twl6040); 246 unsigned int twl6040_get_sysclk(struct twl6040 *twl6040); 249 int twl6040_get_vibralr_status(struct twl6040 *twl6040); [all …]
|
/linux-6.1.9/drivers/input/misc/ |
D | twl6040-vibra.c | 50 struct twl6040 *twl6040; member 56 struct twl6040 *twl6040 = info->twl6040; in twl6040_vib_irq_handler() local 59 status = twl6040_reg_read(twl6040, TWL6040_REG_STATUS); in twl6040_vib_irq_handler() 62 twl6040_clear_bits(twl6040, TWL6040_REG_VIBCTLL, in twl6040_vib_irq_handler() 67 twl6040_clear_bits(twl6040, TWL6040_REG_VIBCTLR, in twl6040_vib_irq_handler() 76 struct twl6040 *twl6040 = info->twl6040; in twl6040_vibra_enable() local 85 twl6040_power(info->twl6040, 1); in twl6040_vibra_enable() 86 if (twl6040_get_revid(twl6040) <= TWL6040_REV_ES1_1) { in twl6040_vibra_enable() 92 twl6040_reg_write(twl6040, TWL6040_REG_VIBCTLL, in twl6040_vibra_enable() 94 twl6040_reg_write(twl6040, TWL6040_REG_VIBCTLR, in twl6040_vibra_enable() [all …]
|
D | Makefile | 85 obj-$(CONFIG_INPUT_TWL6040_VIBRA) += twl6040-vibra.o
|
/linux-6.1.9/drivers/clk/ |
D | clk-twl6040.c | 16 struct twl6040 *twl6040; member 36 ret = twl6040_set_bits(pdmclk->twl6040, reg, reset_mask); in twl6040_pdmclk_reset_one_clock() 40 ret = twl6040_clear_bits(pdmclk->twl6040, reg, reset_mask); in twl6040_pdmclk_reset_one_clock() 73 ret = twl6040_power(pdmclk->twl6040, 1); in twl6040_pdmclk_prepare() 87 twl6040_power(pdmclk->twl6040, 0); in twl6040_pdmclk_prepare() 98 ret = twl6040_power(pdmclk->twl6040, 0); in twl6040_pdmclk_unprepare() 110 return twl6040_get_sysclk(pdmclk->twl6040); in twl6040_pdmclk_recalc_rate() 128 struct twl6040 *twl6040 = dev_get_drvdata(pdev->dev.parent); in twl6040_pdmclk_probe() local 137 clkdata->twl6040 = twl6040; in twl6040_pdmclk_probe()
|
D | Makefile | 72 obj-$(CONFIG_CLK_TWL6040) += clk-twl6040.o
|
D | Kconfig | 282 tristate "External McPDM functional clock from twl6040"
|
/linux-6.1.9/drivers/gpio/ |
D | gpio-twl6040.c | 25 struct twl6040 *twl6040 = dev_get_drvdata(chip->parent->parent); in twl6040gpo_get() local 28 ret = twl6040_reg_read(twl6040, TWL6040_REG_GPOCTL); in twl6040gpo_get() 49 struct twl6040 *twl6040 = dev_get_drvdata(chip->parent->parent); in twl6040gpo_set() local 53 ret = twl6040_reg_read(twl6040, TWL6040_REG_GPOCTL); in twl6040gpo_set() 62 twl6040_reg_write(twl6040, TWL6040_REG_GPOCTL, gpoctl); in twl6040gpo_set() 80 struct twl6040 *twl6040 = dev_get_drvdata(twl6040_core_dev); in gpo_twl6040_probe() local 87 if (twl6040_get_revid(twl6040) < TWL6041_REV_ES2_0) in gpo_twl6040_probe()
|
D | Makefile | 166 obj-$(CONFIG_GPIO_TWL6040) += gpio-twl6040.o
|
/linux-6.1.9/Documentation/devicetree/bindings/mfd/ |
D | twl6040.txt | 9 - compatible : "ti,twl6040" for twl6040, "ti,twl6041" for twl6041 11 - interrupts: twl6040 has one interrupt line connecteded to the main SoC 13 - #gpio-cells = <1>: twl6040 provides GPO lines. 14 - #clock-cells = <0>; twl6040 is a provider of pdmclk which is used by McPDM 15 - twl6040,audpwron-gpio: Power on GPIO line for the twl6040 17 - vio-supply: Regulator for the twl6040 VIO supply 18 - v2v1-supply: Regulator for the twl6040 V2V1 supply 21 - enable-active-high: To power on the twl6040 during boot. 42 twl6040: twl@4b { 43 compatible = "ti,twl6040"; [all …]
|
/linux-6.1.9/Documentation/devicetree/bindings/sound/ |
D | omap-abe-twl6040.txt | 1 * Texas Instruments OMAP4+ and twl6040 based audio setups 4 - compatible: "ti,abe-twl6040" 8 - ti,twl6040: phandle for the twl6040 core node 32 twl6040 pins: 59 compatible = "ti,abe-twl6040"; 68 ti,twl6040 = <&twl6040>;
|
D | omap-mcpdm.txt | 10 - clocks: phandle for the pdmclk provider, likely <&twl6040> 27 clocks = <&twl6040>;
|
/linux-6.1.9/sound/soc/codecs/ |
D | twl6040.c | 100 struct twl6040 *twl6040 = to_twl6040(component); in twl6040_read() local 115 value = twl6040_reg_read(twl6040, reg); in twl6040_read() 162 struct twl6040 *twl6040 = to_twl6040(component); in twl6040_write() local 169 return twl6040_reg_write(twl6040, reg, value); in twl6040_write() 563 struct twl6040 *twl6040 = to_twl6040(component); in twl6040_get_hs_step_size() local 565 if (twl6040_get_revid(twl6040) < TWL6040_REV_ES1_3) in twl6040_get_hs_step_size() 821 struct twl6040 *twl6040 = to_twl6040(component); in twl6040_set_bias_level() local 833 ret = twl6040_set_pll(twl6040, TWL6040_SYSCLK_SEL_LPPLL, in twl6040_set_bias_level() 838 ret = twl6040_power(twl6040, 1); in twl6040_set_bias_level() 851 twl6040_power(twl6040, 0); in twl6040_set_bias_level() [all …]
|
D | Makefile | 277 snd-soc-twl6040-objs := twl6040.o 634 obj-$(CONFIG_SND_SOC_TWL6040) += snd-soc-twl6040.o
|
/linux-6.1.9/arch/arm/boot/dts/ |
D | omap4-duovero.dtsi | 23 compatible = "ti,abe-twl6040"; 30 ti,twl6040 = <&twl6040>; 171 twl6040: twl@4b { label 172 compatible = "ti,twl6040";
|
D | omap4-var-som-om44.dtsi | 19 compatible = "ti,abe-twl6040"; 24 ti,twl6040 = <&twl6040>; 179 twl6040: twl@4b { label 180 compatible = "ti,twl6040";
|
D | omap4-panda-common.dtsi | 81 compatible = "ti,abe-twl6040"; 88 ti,twl6040 = <&twl6040>; 413 twl6040: twl@4b { label 414 compatible = "ti,twl6040";
|
D | omap5-board-common.dtsi | 119 compatible = "ti,abe-twl6040"; 127 ti,twl6040 = <&twl6040>; 638 twl6040: twl@4b { label 639 compatible = "ti,twl6040"; 668 clocks = <&twl6040>;
|
D | omap4-sdp.dts | 120 compatible = "ti,abe-twl6040"; 129 ti,twl6040 = <&twl6040>; 385 twl6040: twl@4b { label 386 compatible = "ti,twl6040";
|
D | omap4-mcpdm.dtsi | 42 clocks = <&twl6040>;
|
D | omap5-igep0050.dts | 110 &twl6040 {
|
D | omap5-uevm.dts | 191 &twl6040 {
|
/linux-6.1.9/sound/soc/ti/ |
D | Makefile | 33 snd-soc-omap-abe-twl6040-objs := omap-abe-twl6040.o 44 obj-$(CONFIG_SND_SOC_OMAP_ABE_TWL6040) += snd-soc-omap-abe-twl6040.o
|
D | Kconfig | 119 tristate "SoC Audio support for OMAP boards using ABE and twl6040 codec" 127 using ABE and twl6040 codec. This driver currently supports:
|