137e13cecSPeter UjfalusiTexas Instruments TWL6040 family 237e13cecSPeter Ujfalusi 35cbe786aSPeter UjfalusiThe TWL6040s are 8-channel high quality low-power audio codecs providing audio, 45cbe786aSPeter Ujfalusivibra and GPO functionality on OMAP4+ platforms. 537e13cecSPeter UjfalusiThey are connected ot the host processor via i2c for commands, McPDM for audio 637e13cecSPeter Ujfalusidata and commands. 737e13cecSPeter Ujfalusi 837e13cecSPeter UjfalusiRequired properties: 91fc74aefSPeter Ujfalusi- compatible : "ti,twl6040" for twl6040, "ti,twl6041" for twl6041 1037e13cecSPeter Ujfalusi- reg: must be 0x4b for i2c address 1137e13cecSPeter Ujfalusi- interrupts: twl6040 has one interrupt line connecteded to the main SoC 125cbe786aSPeter Ujfalusi- gpio-controller: 135cbe786aSPeter Ujfalusi- #gpio-cells = <1>: twl6040 provides GPO lines. 14*0133d323SPeter Ujfalusi- #clock-cells = <0>; twl6040 is a provider of pdmclk which is used by McPDM 1537e13cecSPeter Ujfalusi- twl6040,audpwron-gpio: Power on GPIO line for the twl6040 1637e13cecSPeter Ujfalusi 1737e13cecSPeter Ujfalusi- vio-supply: Regulator for the twl6040 VIO supply 1837e13cecSPeter Ujfalusi- v2v1-supply: Regulator for the twl6040 V2V1 supply 1937e13cecSPeter Ujfalusi 2037e13cecSPeter UjfalusiOptional properties, nodes: 2137e13cecSPeter Ujfalusi- enable-active-high: To power on the twl6040 during boot. 220a58da1eSPeter Ujfalusi- clocks: phandle to the clk32k and/or to mclk clock provider 230a58da1eSPeter Ujfalusi- clock-names: Must be "clk32k" for the 32K clock and "mclk" for the MCLK. 2437e13cecSPeter Ujfalusi 2537e13cecSPeter UjfalusiVibra functionality 2637e13cecSPeter UjfalusiRequired properties: 2737e13cecSPeter Ujfalusi- vddvibl-supply: Regulator for the left vibra motor 2837e13cecSPeter Ujfalusi- vddvibr-supply: Regulator for the right vibra motor 2937e13cecSPeter Ujfalusi- vibra { }: Configuration section for vibra parameters containing the following 3037e13cecSPeter Ujfalusi properties: 3137e13cecSPeter Ujfalusi- ti,vibldrv-res: Resistance parameter for left driver 3237e13cecSPeter Ujfalusi- ti,vibrdrv-res: Resistance parameter for right driver 3337e13cecSPeter Ujfalusi- ti,viblmotor-res: Resistance parameter for left motor 3437e13cecSPeter Ujfalusi- ti,viblmotor-res: Resistance parameter for right motor 3537e13cecSPeter Ujfalusi 3637e13cecSPeter UjfalusiOptional properties within vibra { } section: 3737e13cecSPeter Ujfalusi- vddvibl_uV: If the vddvibl default voltage need to be changed 3837e13cecSPeter Ujfalusi- vddvibr_uV: If the vddvibr default voltage need to be changed 3937e13cecSPeter Ujfalusi 4037e13cecSPeter UjfalusiExample: 4137e13cecSPeter Ujfalusi&i2c1 { 4237e13cecSPeter Ujfalusi twl6040: twl@4b { 4337e13cecSPeter Ujfalusi compatible = "ti,twl6040"; 4437e13cecSPeter Ujfalusi 4537e13cecSPeter Ujfalusi interrupts = <0 119 4>; 4637e13cecSPeter Ujfalusi interrupt-parent = <&gic>; 4737e13cecSPeter Ujfalusi twl6040,audpwron-gpio = <&gpio4 31 0>; 4837e13cecSPeter Ujfalusi 4937e13cecSPeter Ujfalusi vio-supply = <&v1v8>; 5037e13cecSPeter Ujfalusi v2v1-supply = <&v2v1>; 5137e13cecSPeter Ujfalusi enable-active-high; 5237e13cecSPeter Ujfalusi 5337e13cecSPeter Ujfalusi /* regulators for vibra motor */ 5437e13cecSPeter Ujfalusi vddvibl-supply = <&vbat>; 5537e13cecSPeter Ujfalusi vddvibr-supply = <&vbat>; 5637e13cecSPeter Ujfalusi 5737e13cecSPeter Ujfalusi vibra { 5837e13cecSPeter Ujfalusi /* Vibra driver, motor resistance parameters */ 5937e13cecSPeter Ujfalusi ti,vibldrv-res = <8>; 6037e13cecSPeter Ujfalusi ti,vibrdrv-res = <3>; 6137e13cecSPeter Ujfalusi ti,viblmotor-res = <10>; 6237e13cecSPeter Ujfalusi ti,vibrmotor-res = <10>; 6337e13cecSPeter Ujfalusi }; 6437e13cecSPeter Ujfalusi }; 6537e13cecSPeter Ujfalusi}; 665cbe786aSPeter Ujfalusi 675cbe786aSPeter Ujfalusi/include/ "twl6040.dtsi" 68