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) * Freescale MC13783/MC13892 Power Management Integrated Circuit (PMIC)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   2) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   3) Required properties:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   4) - compatible : Should be "fsl,mc13783" or "fsl,mc13892"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   5) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   6) Optional properties:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   7) - fsl,mc13xxx-uses-adc : Indicate the ADC is being used
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   8) - fsl,mc13xxx-uses-codec : Indicate the Audio Codec is being used
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   9) - fsl,mc13xxx-uses-rtc : Indicate the RTC is being used
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  10) - fsl,mc13xxx-uses-touch : Indicate the touchscreen controller is being used
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  11) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  12) Sub-nodes:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  13) - codec: Contain the Audio Codec node.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  14)   - adc-port: Contain PMIC SSI port number used for ADC.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  15)   - dac-port: Contain PMIC SSI port number used for DAC.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  16) - leds : Contain the led nodes and initial register values in property
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  17)   "led-control". Number of register depends of used IC, for MC13783 is 6,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  18)   for MC13892 is 4, for MC34708 is 1. See datasheet for bits definitions of
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  19)   these registers.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  20)   - #address-cells: Must be 1.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  21)   - #size-cells: Must be 0.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  22)   Each led node should contain "reg", which used as LED ID (described below).
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  23)   Optional properties "label" and "linux,default-trigger" is described in
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  24)   Documentation/devicetree/bindings/leds/common.txt.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  25) - regulators : Contain the regulator nodes. The regulators are bound using
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  26)   their names as listed below with their registers and bits for enabling.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  27) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  28) MC13783 LED IDs:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  29)     0  : Main display
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  30)     1  : AUX display
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  31)     2  : Keypad
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  32)     3  : Red 1
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  33)     4  : Green 1
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  34)     5  : Blue 1
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  35)     6  : Red 2
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  36)     7  : Green 2
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  37)     8  : Blue 2
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  38)     9  : Red 3
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  39)     10 : Green 3
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  40)     11 : Blue 3
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  41) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  42) MC13892 LED IDs:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  43)     0  : Main display
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  44)     1  : AUX display
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  45)     2  : Keypad
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  46)     3  : Red
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  47)     4  : Green
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  48)     5  : Blue
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  49) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  50) MC34708 LED IDs:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  51)     0  : Charger Red
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  52)     1  : Charger Green
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  53) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  54) MC13783 regulators:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  55)     sw1a      : regulator SW1A      (register 24, bit 0)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  56)     sw1b      : regulator SW1B      (register 25, bit 0)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  57)     sw2a      : regulator SW2A      (register 26, bit 0)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  58)     sw2b      : regulator SW2B      (register 27, bit 0)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  59)     sw3       : regulator SW3       (register 29, bit 20)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  60)     vaudio    : regulator VAUDIO    (register 32, bit 0)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  61)     viohi     : regulator VIOHI     (register 32, bit 3)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  62)     violo     : regulator VIOLO     (register 32, bit 6)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  63)     vdig      : regulator VDIG      (register 32, bit 9)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  64)     vgen      : regulator VGEN      (register 32, bit 12)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  65)     vrfdig    : regulator VRFDIG    (register 32, bit 15)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  66)     vrfref    : regulator VRFREF    (register 32, bit 18)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  67)     vrfcp     : regulator VRFCP     (register 32, bit 21)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  68)     vsim      : regulator VSIM      (register 33, bit 0)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  69)     vesim     : regulator VESIM     (register 33, bit 3)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  70)     vcam      : regulator VCAM      (register 33, bit 6)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  71)     vrfbg     : regulator VRFBG     (register 33, bit 9)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  72)     vvib      : regulator VVIB      (register 33, bit 11)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  73)     vrf1      : regulator VRF1      (register 33, bit 12)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  74)     vrf2      : regulator VRF2      (register 33, bit 15)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  75)     vmmc1     : regulator VMMC1     (register 33, bit 18)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  76)     vmmc2     : regulator VMMC2     (register 33, bit 21)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  77)     gpo1      : regulator GPO1      (register 34, bit 6)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  78)     gpo2      : regulator GPO2      (register 34, bit 8)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  79)     gpo3      : regulator GPO3      (register 34, bit 10)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  80)     gpo4      : regulator GPO4      (register 34, bit 12)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  81)     pwgt1spi  : regulator PWGT1SPI  (register 34, bit 15)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  82)     pwgt2spi  : regulator PWGT2SPI  (register 34, bit 16)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  83) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  84) MC13892 regulators:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  85)     vcoincell : regulator VCOINCELL (register 13, bit 23)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  86)     sw1       : regulator SW1	    (register 24, bit 0)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  87)     sw2       : regulator SW2	    (register 25, bit 0)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  88)     sw3       : regulator SW3	    (register 26, bit 0)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  89)     sw4       : regulator SW4	    (register 27, bit 0)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  90)     swbst     : regulator SWBST	    (register 29, bit 20)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  91)     vgen1     : regulator VGEN1	    (register 32, bit 0)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  92)     viohi     : regulator VIOHI	    (register 32, bit 3)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  93)     vdig      : regulator VDIG	    (register 32, bit 9)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  94)     vgen2     : regulator VGEN2	    (register 32, bit 12)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  95)     vpll      : regulator VPLL	    (register 32, bit 15)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  96)     vusb2     : regulator VUSB2	    (register 32, bit 18)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  97)     vgen3     : regulator VGEN3	    (register 33, bit 0)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  98)     vcam      : regulator VCAM	    (register 33, bit 6)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  99)     vvideo    : regulator VVIDEO    (register 33, bit 12)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 100)     vaudio    : regulator VAUDIO    (register 33, bit 15)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 101)     vsd       : regulator VSD	    (register 33, bit 18)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 102)     gpo1      : regulator GPO1	    (register 34, bit 6)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 103)     gpo2      : regulator GPO2	    (register 34, bit 8)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 104)     gpo3      : regulator GPO3	    (register 34, bit 10)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 105)     gpo4      : regulator GPO4	    (register 34, bit 12)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 106)     pwgt1spi  : regulator PWGT1SPI  (register 34, bit 15)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 107)     pwgt2spi  : regulator PWGT2SPI  (register 34, bit 16)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 108)     vusb      : regulator VUSB	    (register 50, bit 3)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 109) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 110)   The bindings details of individual regulator device can be found in:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 111)   Documentation/devicetree/bindings/regulator/regulator.txt
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 112) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 113) Examples:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 114) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 115) ecspi@70010000 { /* ECSPI1 */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 116) 	cs-gpios = <&gpio4 24 0>, /* GPIO4_24 */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 117) 		   <&gpio4 25 0>; /* GPIO4_25 */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 118) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 119) 	pmic: mc13892@0 {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 120) 		#address-cells = <1>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 121) 		#size-cells = <0>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 122) 		compatible = "fsl,mc13892";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 123) 		spi-max-frequency = <6000000>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 124) 		reg = <0>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 125) 		interrupt-parent = <&gpio0>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 126) 		interrupts = <8>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 127) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 128) 		leds {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 129) 			#address-cells = <1>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 130) 			#size-cells = <0>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 131) 			led-control = <0x000 0x000 0x0e0 0x000>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 132) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 133) 			sysled@3 {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 134) 				reg = <3>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 135) 				label = "system:red:live";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 136) 				linux,default-trigger = "heartbeat";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 137) 			};
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 138) 		};
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 139) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 140) 		regulators {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 141) 			sw1_reg: mc13892__sw1 {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 142) 				regulator-min-microvolt = <600000>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 143) 				regulator-max-microvolt = <1375000>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 144) 				regulator-boot-on;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 145) 				regulator-always-on;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 146) 			};
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 147) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 148) 			sw2_reg: mc13892__sw2 {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 149) 				regulator-min-microvolt = <900000>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 150) 				regulator-max-microvolt = <1850000>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 151) 				regulator-boot-on;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 152) 				regulator-always-on;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 153) 			};
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 154) 		};
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 155) 	};
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 156) };