Orange Pi5 kernel

Deprecated Linux kernel 5.10.110 for OrangePi 5/5B/5+ boards

3 Commits   0 Branches   0 Tags
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  1) Texas Instruments TWL6040 family
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  2) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  3) The TWL6040s are 8-channel high quality low-power audio codecs providing audio,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  4) vibra and GPO functionality on OMAP4+ platforms.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  5) They are connected ot the host processor via i2c for commands, McPDM for audio
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  6) data and commands.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  7) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  8) Required properties:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  9) - compatible : "ti,twl6040" for twl6040, "ti,twl6041" for twl6041
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10) - reg: must be 0x4b for i2c address
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11) - interrupts: twl6040 has one interrupt line connecteded to the main SoC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12) - gpio-controller:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13) - #gpio-cells = <1>: twl6040 provides GPO lines.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14) - #clock-cells = <0>; twl6040 is a provider of pdmclk which is used by McPDM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15) - twl6040,audpwron-gpio: Power on GPIO line for the twl6040
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17) - vio-supply: Regulator for the twl6040 VIO supply
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18) - v2v1-supply: Regulator for the twl6040 V2V1 supply
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20) Optional properties, nodes:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 21) - enable-active-high: To power on the twl6040 during boot.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 22) - clocks: phandle to the clk32k and/or to mclk clock provider
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 23) - clock-names: Must be "clk32k" for the 32K clock and "mclk" for the MCLK.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 24) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 25) Vibra functionality
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 26) Required properties:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 27) - vddvibl-supply: Regulator for the left vibra motor
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 28) - vddvibr-supply: Regulator for the right vibra motor
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 29) - vibra { }: Configuration section for vibra parameters containing the following
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 30) 	     properties:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 31) - ti,vibldrv-res: Resistance parameter for left driver
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 32) - ti,vibrdrv-res: Resistance parameter for right driver
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 33) - ti,viblmotor-res: Resistance parameter for left motor
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 34) - ti,viblmotor-res: Resistance parameter for right motor
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 35) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 36) Optional properties within vibra { } section:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 37) - vddvibl_uV: If the vddvibl default voltage need to be changed
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 38) - vddvibr_uV: If the vddvibr default voltage need to be changed
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 39) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 40) Example:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 41) &i2c1 {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 42) 	twl6040: twl@4b {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 43) 		compatible = "ti,twl6040";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 44) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 45) 		interrupts = <0 119 4>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 46) 		interrupt-parent = <&gic>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 47) 		twl6040,audpwron-gpio = <&gpio4 31 0>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 48) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 49) 		vio-supply = <&v1v8>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 50) 		v2v1-supply = <&v2v1>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 51) 		enable-active-high;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 52) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 53) 		/* regulators for vibra motor */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 54) 		vddvibl-supply = <&vbat>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 55) 		vddvibr-supply = <&vbat>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 56) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 57) 		vibra {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 58) 			/* Vibra driver, motor resistance parameters */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 59) 			ti,vibldrv-res = <8>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 60) 			ti,vibrdrv-res = <3>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 61) 			ti,viblmotor-res = <10>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 62) 			ti,vibrmotor-res = <10>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 63) 		};
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 64) 	};
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 65) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 66) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 67) /include/ "twl6040.dtsi"