xref: /openbmc/linux/Documentation/devicetree/bindings/mfd/twl6040.txt (revision 5cbe786a6e32e80149f7b29def50b2bf563f6628)
137e13cecSPeter UjfalusiTexas Instruments TWL6040 family
237e13cecSPeter Ujfalusi
3*5cbe786aSPeter UjfalusiThe TWL6040s are 8-channel high quality low-power audio codecs providing audio,
4*5cbe786aSPeter 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
1237e13cecSPeter Ujfalusi- interrupt-parent: The parent interrupt controller
13*5cbe786aSPeter Ujfalusi- gpio-controller:
14*5cbe786aSPeter Ujfalusi- #gpio-cells = <1>: twl6040 provides GPO lines.
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.
2237e13cecSPeter Ujfalusi
2337e13cecSPeter UjfalusiVibra functionality
2437e13cecSPeter UjfalusiRequired properties:
2537e13cecSPeter Ujfalusi- vddvibl-supply: Regulator for the left vibra motor
2637e13cecSPeter Ujfalusi- vddvibr-supply: Regulator for the right vibra motor
2737e13cecSPeter Ujfalusi- vibra { }: Configuration section for vibra parameters containing the following
2837e13cecSPeter Ujfalusi	     properties:
2937e13cecSPeter Ujfalusi- ti,vibldrv-res: Resistance parameter for left driver
3037e13cecSPeter Ujfalusi- ti,vibrdrv-res: Resistance parameter for right driver
3137e13cecSPeter Ujfalusi- ti,viblmotor-res: Resistance parameter for left motor
3237e13cecSPeter Ujfalusi- ti,viblmotor-res: Resistance parameter for right motor
3337e13cecSPeter Ujfalusi
3437e13cecSPeter UjfalusiOptional properties within vibra { } section:
3537e13cecSPeter Ujfalusi- vddvibl_uV: If the vddvibl default voltage need to be changed
3637e13cecSPeter Ujfalusi- vddvibr_uV: If the vddvibr default voltage need to be changed
3737e13cecSPeter Ujfalusi
3837e13cecSPeter UjfalusiExample:
3937e13cecSPeter Ujfalusi&i2c1 {
4037e13cecSPeter Ujfalusi	twl6040: twl@4b {
4137e13cecSPeter Ujfalusi		compatible = "ti,twl6040";
4237e13cecSPeter Ujfalusi
4337e13cecSPeter Ujfalusi		interrupts = <0 119 4>;
4437e13cecSPeter Ujfalusi		interrupt-parent = <&gic>;
4537e13cecSPeter Ujfalusi		twl6040,audpwron-gpio = <&gpio4 31 0>;
4637e13cecSPeter Ujfalusi
4737e13cecSPeter Ujfalusi		vio-supply = <&v1v8>;
4837e13cecSPeter Ujfalusi		v2v1-supply = <&v2v1>;
4937e13cecSPeter Ujfalusi		enable-active-high;
5037e13cecSPeter Ujfalusi
5137e13cecSPeter Ujfalusi		/* regulators for vibra motor */
5237e13cecSPeter Ujfalusi		vddvibl-supply = <&vbat>;
5337e13cecSPeter Ujfalusi		vddvibr-supply = <&vbat>;
5437e13cecSPeter Ujfalusi
5537e13cecSPeter Ujfalusi		vibra {
5637e13cecSPeter Ujfalusi			/* Vibra driver, motor resistance parameters */
5737e13cecSPeter Ujfalusi			ti,vibldrv-res = <8>;
5837e13cecSPeter Ujfalusi			ti,vibrdrv-res = <3>;
5937e13cecSPeter Ujfalusi			ti,viblmotor-res = <10>;
6037e13cecSPeter Ujfalusi			ti,vibrmotor-res = <10>;
6137e13cecSPeter Ujfalusi		};
6237e13cecSPeter Ujfalusi	};
6337e13cecSPeter Ujfalusi};
64*5cbe786aSPeter Ujfalusi
65*5cbe786aSPeter Ujfalusi/include/ "twl6040.dtsi"
66