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 Kirin SoCs PCIe host DT description
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  2) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  3) Kirin PCIe host controller is based on the Synopsys DesignWare PCI core.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  4) It shares common functions with the PCIe DesignWare core driver and
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  5) inherits common properties defined in
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  6) Documentation/devicetree/bindings/pci/designware-pcie.txt.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  7) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  8) Additional properties are described here:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  9) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10) Required properties
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11) - compatible:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12) 	"hisilicon,kirin960-pcie" for PCIe of Kirin960 SoC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13) - reg: Should contain rc_dbi, apb, phy, config registers location and length.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14) - reg-names: Must include the following entries:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15)   "dbi": controller configuration registers;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16)   "apb": apb Ctrl register defined by Kirin;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17)   "phy": apb PHY register defined by Kirin;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18)   "config": PCIe configuration space registers.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19) - reset-gpios: The GPIO to generate PCIe PERST# assert and deassert signal.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 21) Optional properties:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 22) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 23) Example based on kirin960:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 24) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 25) 	pcie@f4000000 {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 26) 		compatible = "hisilicon,kirin-pcie";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 27) 		reg = <0x0 0xf4000000 0x0 0x1000>, <0x0 0xff3fe000 0x0 0x1000>,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 28) 		      <0x0 0xf3f20000 0x0 0x40000>, <0x0 0xF4000000 0 0x2000>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 29) 		reg-names = "dbi","apb","phy", "config";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 30) 		bus-range = <0x0  0x1>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 31) 		#address-cells = <3>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 32) 		#size-cells = <2>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 33) 		device_type = "pci";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 34) 		ranges = <0x02000000 0x0 0x00000000 0x0 0xf5000000 0x0 0x2000000>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 35) 		num-lanes = <1>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 36) 		#interrupt-cells = <1>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 37) 		interrupt-map-mask = <0xf800 0 0 7>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 38) 		interrupt-map = <0x0 0 0 1 &gic 0 0 0  282 4>,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 39) 				<0x0 0 0 2 &gic 0 0 0  283 4>,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 40) 				<0x0 0 0 3 &gic 0 0 0  284 4>,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 41) 				<0x0 0 0 4 &gic 0 0 0  285 4>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 42) 		clocks = <&crg_ctrl HI3660_PCIEPHY_REF>,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 43) 			 <&crg_ctrl HI3660_CLK_GATE_PCIEAUX>,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 44) 			 <&crg_ctrl HI3660_PCLK_GATE_PCIE_PHY>,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 45) 			 <&crg_ctrl HI3660_PCLK_GATE_PCIE_SYS>,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 46) 			 <&crg_ctrl HI3660_ACLK_GATE_PCIE>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 47) 		clock-names = "pcie_phy_ref", "pcie_aux",
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 48) 			      "pcie_apb_phy", "pcie_apb_sys", "pcie_aclk";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 49) 		reset-gpios = <&gpio11 1 0 >;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 50) 	};