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 Layerscape PCIe controller
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  2) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  3) This PCIe host controller is based on the Synopsys DesignWare PCIe IP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  4) and thus inherits all the common properties defined in designware-pcie.txt.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  5) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  6) This controller derives its clocks from the Reset Configuration Word (RCW)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  7) which is used to describe the PLL settings at the time of chip-reset.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  8) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  9) Also as per the available Reference Manuals, there is no specific 'version'
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10) register available in the Freescale PCIe controller register set,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11) which can allow determining the underlying DesignWare PCIe controller version
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12) information.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14) Required properties:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15) - compatible: should contain the platform identifier such as:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16)   RC mode:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17)         "fsl,ls1021a-pcie"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18)         "fsl,ls2080a-pcie", "fsl,ls2085a-pcie"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19)         "fsl,ls2088a-pcie"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20)         "fsl,ls1088a-pcie"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 21)         "fsl,ls1046a-pcie"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 22)         "fsl,ls1043a-pcie"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 23)         "fsl,ls1012a-pcie"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 24)         "fsl,ls1028a-pcie"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 25)   EP mode:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 26) 	"fsl,ls1046a-pcie-ep", "fsl,ls-pcie-ep"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 27) 	"fsl,ls1088a-pcie-ep", "fsl,ls-pcie-ep"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 28) 	"fsl,ls2088a-pcie-ep", "fsl,ls-pcie-ep"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 29) - reg: base addresses and lengths of the PCIe controller register blocks.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 30) - interrupts: A list of interrupt outputs of the controller. Must contain an
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 31)   entry for each entry in the interrupt-names property.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 32) - interrupt-names: Must include the following entries:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 33)   "intr": The interrupt that is asserted for controller interrupts
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 34) - fsl,pcie-scfg: Must include two entries.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 35)   The first entry must be a link to the SCFG device node
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 36)   The second entry must be '0' or '1' based on physical PCIe controller index.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 37)   This is used to get SCFG PEXN registers
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 38) - dma-coherent: Indicates that the hardware IP block can ensure the coherency
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 39)   of the data transferred from/to the IP block. This can avoid the software
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 40)   cache flush/invalid actions, and improve the performance significantly.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 41) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 42) Example:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 43) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 44) 	pcie@3400000 {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 45) 		compatible = "fsl,ls1021a-pcie";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 46) 		reg = <0x00 0x03400000 0x0 0x00010000   /* controller registers */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 47) 		       0x40 0x00000000 0x0 0x00002000>; /* configuration space */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 48) 		reg-names = "regs", "config";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 49) 		interrupts = <GIC_SPI 177 IRQ_TYPE_LEVEL_HIGH>; /* controller interrupt */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 50) 		interrupt-names = "intr";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 51) 		fsl,pcie-scfg = <&scfg 0>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 52) 		#address-cells = <3>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 53) 		#size-cells = <2>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 54) 		device_type = "pci";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 55) 		dma-coherent;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 56) 		num-lanes = <4>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 57) 		bus-range = <0x0 0xff>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 58) 		ranges = <0x81000000 0x0 0x00000000 0x40 0x00010000 0x0 0x00010000   /* downstream I/O */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 59) 			  0xc2000000 0x0 0x20000000 0x40 0x20000000 0x0 0x20000000   /* prefetchable memory */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 60) 			  0x82000000 0x0 0x40000000 0x40 0x40000000 0x0 0x40000000>; /* non-prefetchable memory */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 61) 		#interrupt-cells = <1>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 62) 		interrupt-map-mask = <0 0 0 7>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 63) 		interrupt-map = <0000 0 0 1 &gic GIC_SPI 91  IRQ_TYPE_LEVEL_HIGH>,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 64) 				<0000 0 0 2 &gic GIC_SPI 188 IRQ_TYPE_LEVEL_HIGH>,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 65) 				<0000 0 0 3 &gic GIC_SPI 190 IRQ_TYPE_LEVEL_HIGH>,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 66) 				<0000 0 0 4 &gic GIC_SPI 192 IRQ_TYPE_LEVEL_HIGH>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 67) 	};