[linux-yocto] [PATCH 04/15] drivers/misc: Add a New Axxia Configuration
Daniel Dragomir
daniel.dragomir at windriver.com
Wed Aug 2 05:46:39 PDT 2017
From: John Jacques <john.jacques at intel.com>
Support configuration #5.
Signed-off-by: John Jacques <john.jacques at intel.com>
---
drivers/misc/axxia-pei.c | 12 ++++++++++--
1 file changed, 10 insertions(+), 2 deletions(-)
diff --git a/drivers/misc/axxia-pei.c b/drivers/misc/axxia-pei.c
index e9baf8b..f016fc1 100644
--- a/drivers/misc/axxia-pei.c
+++ b/drivers/misc/axxia-pei.c
@@ -43,6 +43,7 @@ static void __iomem *pcie_gpreg0;
static void __iomem *pcie_gpreg1;
static void __iomem *pcie_gpreg2;
static void __iomem *pcie_rc;
+static void __iomem *syscon;
static int pcie_cc_gpreg_offset = 0x8000;
static int is_pei_control_available;
@@ -1456,10 +1457,11 @@ pei_setup_56xx(unsigned int control)
break;
case 4:
+ case 5:
/*
SRIO1x2 (HSS10-ch0,1)
SRIO0x2 (HSS11-ch0,1)
- UNUSED (HSS12-ch0,1)
+ UNUSED (HSS12-ch0,1) for config 4, PEI1x2 for config 5
PEI2x2 (HSS13-ch0,1)
*/
@@ -1468,8 +1470,13 @@ pei_setup_56xx(unsigned int control)
set_pipe_port_sel(pp_0_1_2_3);
set_pipe_nphy(four_phy);
- if (pei1_mode)
+ if (pei1_mode) {
+ writel(0xab, (syscon + 0x2000));
+ writel(0x20000000, (syscon + 0x2034));
+ writel(0, (syscon + 0x2000));
release_reset(2);
+ }
+
if (pei2_mode)
release_reset(3);
@@ -2136,6 +2143,7 @@ pei_init(void)
pcie_gpreg1 = ioremap(0xa005000000, 0x10000);
pcie_gpreg2 = ioremap(0xa007000000, 0x10000);
pcie_rc = ioremap(0xa002000000, 0x1000);
+ syscon = ioremap(0x8002c00000, 0x4000);
} else if (of_find_compatible_node(NULL, NULL, "lsi,axc6732")) {
is_6700 = 1;
pcie_gpreg0 = ioremap(0xa003000000, 0x10000);
--
2.7.4
More information about the linux-yocto
mailing list