]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
arm64: dts: qcom: sc7280: Increase config size to 256MB for ECAM feature
authorKrishna Chaitanya Chundru <krishna.chundru@oss.qualcomm.com>
Thu, 28 Aug 2025 07:34:22 +0000 (13:04 +0530)
committerBjorn Andersson <andersson@kernel.org>
Mon, 27 Oct 2025 15:04:04 +0000 (10:04 -0500)
PCIe ECAM(Enhanced Configuration Access Mechanism) feature requires
maximum of 256MB configuration space.

To enable this feature increase configuration space size to 256MB. If
the config space is increased, the BAR space needs to be truncated as
it resides in the same location. To avoid the bar space truncation move
config space, DBI, ELBI, iATU to upper PCIe region and use lower PCIe
iregion entirely for BAR region.

This depends on the commit: '10ba0854c5e6 ("PCI: qcom: Disable mirroring
of DBI and iATU register space in BAR region")'

Reviewed-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Signed-off-by: Krishna Chaitanya Chundru <krishna.chundru@oss.qualcomm.com>
Link: https://lore.kernel.org/r/20250828-ecam_v4-v8-1-92a30e0fa02d@oss.qualcomm.com
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
arch/arm64/boot/dts/qcom/sc7280.dtsi

index 4b04dea57ec8cc652e37f1d93c410404adaadd5d..e503c467b2c6893f8c0839e226d0eb91dfe209c1 100644 (file)
 
                pcie1: pcie@1c08000 {
                        compatible = "qcom,pcie-sc7280";
-                       reg = <0 0x01c08000 0 0x3000>,
-                             <0 0x40000000 0 0xf1d>,
-                             <0 0x40000f20 0 0xa8>,
-                             <0 0x40001000 0 0x1000>,
-                             <0 0x40100000 0 0x100000>;
+                       reg = <0x0 0x01c08000 0 0x3000>,
+                             <0x4 0x10001000 0 0xf1d>,
+                             <0x4 0x10001f20 0 0xa8>,
+                             <0x4 0x10000000 0 0x1000>,
+                             <0x4 0x00000000 0 0x10000000>;
 
                        reg-names = "parf", "dbi", "elbi", "atu", "config";
                        device_type = "pci";
                        #address-cells = <3>;
                        #size-cells = <2>;
 
-                       ranges = <0x01000000 0x0 0x00000000 0x0 0x40200000 0x0 0x100000>,
-                                <0x02000000 0x0 0x40300000 0x0 0x40300000 0x0 0x1fd00000>;
+                       ranges = <0x01000000 0x0 0x00000000 0x0 0x40000000 0x0 0x100000>,
+                                <0x02000000 0x0 0x40100000 0x0 0x40100000 0x0 0x1ff00000>;
 
                        interrupts = <GIC_SPI 307 IRQ_TYPE_LEVEL_HIGH>,
                                     <GIC_SPI 308 IRQ_TYPE_LEVEL_HIGH>,