18c2ecf20Sopenharmony_ciTexas Instruments TWL6040 family 28c2ecf20Sopenharmony_ci 38c2ecf20Sopenharmony_ciThe TWL6040s are 8-channel high quality low-power audio codecs providing audio, 48c2ecf20Sopenharmony_civibra and GPO functionality on OMAP4+ platforms. 58c2ecf20Sopenharmony_ciThey are connected ot the host processor via i2c for commands, McPDM for audio 68c2ecf20Sopenharmony_cidata and commands. 78c2ecf20Sopenharmony_ci 88c2ecf20Sopenharmony_ciRequired properties: 98c2ecf20Sopenharmony_ci- compatible : "ti,twl6040" for twl6040, "ti,twl6041" for twl6041 108c2ecf20Sopenharmony_ci- reg: must be 0x4b for i2c address 118c2ecf20Sopenharmony_ci- interrupts: twl6040 has one interrupt line connecteded to the main SoC 128c2ecf20Sopenharmony_ci- gpio-controller: 138c2ecf20Sopenharmony_ci- #gpio-cells = <1>: twl6040 provides GPO lines. 148c2ecf20Sopenharmony_ci- #clock-cells = <0>; twl6040 is a provider of pdmclk which is used by McPDM 158c2ecf20Sopenharmony_ci- twl6040,audpwron-gpio: Power on GPIO line for the twl6040 168c2ecf20Sopenharmony_ci 178c2ecf20Sopenharmony_ci- vio-supply: Regulator for the twl6040 VIO supply 188c2ecf20Sopenharmony_ci- v2v1-supply: Regulator for the twl6040 V2V1 supply 198c2ecf20Sopenharmony_ci 208c2ecf20Sopenharmony_ciOptional properties, nodes: 218c2ecf20Sopenharmony_ci- enable-active-high: To power on the twl6040 during boot. 228c2ecf20Sopenharmony_ci- clocks: phandle to the clk32k and/or to mclk clock provider 238c2ecf20Sopenharmony_ci- clock-names: Must be "clk32k" for the 32K clock and "mclk" for the MCLK. 248c2ecf20Sopenharmony_ci 258c2ecf20Sopenharmony_ciVibra functionality 268c2ecf20Sopenharmony_ciRequired properties: 278c2ecf20Sopenharmony_ci- vddvibl-supply: Regulator for the left vibra motor 288c2ecf20Sopenharmony_ci- vddvibr-supply: Regulator for the right vibra motor 298c2ecf20Sopenharmony_ci- vibra { }: Configuration section for vibra parameters containing the following 308c2ecf20Sopenharmony_ci properties: 318c2ecf20Sopenharmony_ci- ti,vibldrv-res: Resistance parameter for left driver 328c2ecf20Sopenharmony_ci- ti,vibrdrv-res: Resistance parameter for right driver 338c2ecf20Sopenharmony_ci- ti,viblmotor-res: Resistance parameter for left motor 348c2ecf20Sopenharmony_ci- ti,viblmotor-res: Resistance parameter for right motor 358c2ecf20Sopenharmony_ci 368c2ecf20Sopenharmony_ciOptional properties within vibra { } section: 378c2ecf20Sopenharmony_ci- vddvibl_uV: If the vddvibl default voltage need to be changed 388c2ecf20Sopenharmony_ci- vddvibr_uV: If the vddvibr default voltage need to be changed 398c2ecf20Sopenharmony_ci 408c2ecf20Sopenharmony_ciExample: 418c2ecf20Sopenharmony_ci&i2c1 { 428c2ecf20Sopenharmony_ci twl6040: twl@4b { 438c2ecf20Sopenharmony_ci compatible = "ti,twl6040"; 448c2ecf20Sopenharmony_ci 458c2ecf20Sopenharmony_ci interrupts = <0 119 4>; 468c2ecf20Sopenharmony_ci interrupt-parent = <&gic>; 478c2ecf20Sopenharmony_ci twl6040,audpwron-gpio = <&gpio4 31 0>; 488c2ecf20Sopenharmony_ci 498c2ecf20Sopenharmony_ci vio-supply = <&v1v8>; 508c2ecf20Sopenharmony_ci v2v1-supply = <&v2v1>; 518c2ecf20Sopenharmony_ci enable-active-high; 528c2ecf20Sopenharmony_ci 538c2ecf20Sopenharmony_ci /* regulators for vibra motor */ 548c2ecf20Sopenharmony_ci vddvibl-supply = <&vbat>; 558c2ecf20Sopenharmony_ci vddvibr-supply = <&vbat>; 568c2ecf20Sopenharmony_ci 578c2ecf20Sopenharmony_ci vibra { 588c2ecf20Sopenharmony_ci /* Vibra driver, motor resistance parameters */ 598c2ecf20Sopenharmony_ci ti,vibldrv-res = <8>; 608c2ecf20Sopenharmony_ci ti,vibrdrv-res = <3>; 618c2ecf20Sopenharmony_ci ti,viblmotor-res = <10>; 628c2ecf20Sopenharmony_ci ti,vibrmotor-res = <10>; 638c2ecf20Sopenharmony_ci }; 648c2ecf20Sopenharmony_ci }; 658c2ecf20Sopenharmony_ci}; 668c2ecf20Sopenharmony_ci 678c2ecf20Sopenharmony_ci/include/ "twl6040.dtsi" 68