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) * Hisilicon Hi6220 Clock Controller
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  2) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  3) Clock control registers reside in different Hi6220 system controllers,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  4) please refer the following document to know more about the binding rules
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  5) for these system controllers:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  6) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  7) Documentation/devicetree/bindings/arm/hisilicon/hisilicon.yaml
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  8) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  9) Required Properties:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11) - compatible: the compatible should be one of the following strings to
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12) 	indicate the clock controller functionality.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14) 	- "hisilicon,hi6220-acpu-sctrl"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15) 	- "hisilicon,hi6220-aoctrl"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16) 	- "hisilicon,hi6220-sysctrl"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17) 	- "hisilicon,hi6220-mediactrl"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18) 	- "hisilicon,hi6220-pmctrl"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19) 	- "hisilicon,hi6220-stub-clk"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 21) - reg: physical base address of the controller and length of memory mapped
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 22)   region.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 23) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 24) - #clock-cells: should be 1.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 25) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 26) Optional Properties:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 27) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 28) - hisilicon,hi6220-clk-sram: phandle to the syscon managing the SoC internal sram;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 29)   the driver need use the sram to pass parameters for frequency change.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 30) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 31) - mboxes: use the label reference for the mailbox as the first parameter, the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 32)   second parameter is the channel number.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 33) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 34) Example 1:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 35) 	sys_ctrl: sys_ctrl@f7030000 {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 36) 		compatible = "hisilicon,hi6220-sysctrl", "syscon";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 37) 		reg = <0x0 0xf7030000 0x0 0x2000>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 38) 		#clock-cells = <1>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 39) 	};
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 40) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 41) Example 2:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 42) 	stub_clock: stub_clock {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 43) 		compatible = "hisilicon,hi6220-stub-clk";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 44) 		hisilicon,hi6220-clk-sram = <&sram>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 45) 		#clock-cells = <1>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 46) 		mboxes = <&mailbox 1>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 47) 	};
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 48) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 49) Each clock is assigned an identifier and client nodes use this identifier
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 50) to specify the clock which they consume.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 51) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 52) All these identifier could be found in <dt-bindings/clock/hi6220-clock.h>.