aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/pci/host/pcie-designware.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/drivers/pci/host/pcie-designware.c b/drivers/pci/host/pcie-designware.c
index 2e9f84fdd9ce..4ce0aa5e8248 100644
--- a/drivers/pci/host/pcie-designware.c
+++ b/drivers/pci/host/pcie-designware.c
@@ -31,6 +31,7 @@
31#define PORT_LINK_MODE_1_LANES (0x1 << 16) 31#define PORT_LINK_MODE_1_LANES (0x1 << 16)
32#define PORT_LINK_MODE_2_LANES (0x3 << 16) 32#define PORT_LINK_MODE_2_LANES (0x3 << 16)
33#define PORT_LINK_MODE_4_LANES (0x7 << 16) 33#define PORT_LINK_MODE_4_LANES (0x7 << 16)
34#define PORT_LINK_MODE_8_LANES (0xf << 16)
34 35
35#define PCIE_LINK_WIDTH_SPEED_CONTROL 0x80C 36#define PCIE_LINK_WIDTH_SPEED_CONTROL 0x80C
36#define PORT_LOGIC_SPEED_CHANGE (0x1 << 17) 37#define PORT_LOGIC_SPEED_CHANGE (0x1 << 17)
@@ -38,6 +39,7 @@
38#define PORT_LOGIC_LINK_WIDTH_1_LANES (0x1 << 8) 39#define PORT_LOGIC_LINK_WIDTH_1_LANES (0x1 << 8)
39#define PORT_LOGIC_LINK_WIDTH_2_LANES (0x2 << 8) 40#define PORT_LOGIC_LINK_WIDTH_2_LANES (0x2 << 8)
40#define PORT_LOGIC_LINK_WIDTH_4_LANES (0x4 << 8) 41#define PORT_LOGIC_LINK_WIDTH_4_LANES (0x4 << 8)
42#define PORT_LOGIC_LINK_WIDTH_8_LANES (0x8 << 8)
41 43
42#define PCIE_MSI_ADDR_LO 0x820 44#define PCIE_MSI_ADDR_LO 0x820
43#define PCIE_MSI_ADDR_HI 0x824 45#define PCIE_MSI_ADDR_HI 0x824
@@ -778,6 +780,9 @@ void dw_pcie_setup_rc(struct pcie_port *pp)
778 case 4: 780 case 4:
779 val |= PORT_LINK_MODE_4_LANES; 781 val |= PORT_LINK_MODE_4_LANES;
780 break; 782 break;
783 case 8:
784 val |= PORT_LINK_MODE_8_LANES;
785 break;
781 } 786 }
782 dw_pcie_writel_rc(pp, val, PCIE_PORT_LINK_CONTROL); 787 dw_pcie_writel_rc(pp, val, PCIE_PORT_LINK_CONTROL);
783 788
@@ -794,6 +799,9 @@ void dw_pcie_setup_rc(struct pcie_port *pp)
794 case 4: 799 case 4:
795 val |= PORT_LOGIC_LINK_WIDTH_4_LANES; 800 val |= PORT_LOGIC_LINK_WIDTH_4_LANES;
796 break; 801 break;
802 case 8:
803 val |= PORT_LOGIC_LINK_WIDTH_8_LANES;
804 break;
797 } 805 }
798 dw_pcie_writel_rc(pp, val, PCIE_LINK_WIDTH_SPEED_CONTROL); 806 dw_pcie_writel_rc(pp, val, PCIE_LINK_WIDTH_SPEED_CONTROL);
799 807