summaryrefslogtreecommitdiffstats
path: root/arch/sh/include
diff options
context:
space:
mode:
authorPaul Mundt <lethal@linux-sh.org>2010-10-14 07:37:01 +0900
committerPaul Mundt <lethal@linux-sh.org>2010-10-14 07:37:01 +0900
commit61a46766c9d5d8fb5dad23da1b7cc4cb8b0107da (patch)
tree6b91ef707e1a1e4d202ab817ac066509a72b1c8b /arch/sh/include
parentf7fcec93b619337feb9da829b8a9ab6ba86393bc (diff)
downloadblackbird-op-linux-61a46766c9d5d8fb5dad23da1b7cc4cb8b0107da.tar.gz
blackbird-op-linux-61a46766c9d5d8fb5dad23da1b7cc4cb8b0107da.zip
sh: pci: Support slot 4 routing on SDK7786.
SDK7786 supports connecting either slot3 or 4 to the same PCIe port by way of FPGA muxing. By default the vertical slot 3 on the baseboard is enabled, so this adds in a command line option for forcibly enabling the slot 4 edge connector. If nothing has been specified on the command line, we fall back to reading the resistor values for card presence to figure out where to route the port to. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Diffstat (limited to 'arch/sh/include')
-rw-r--r--arch/sh/include/mach-sdk7786/mach/fpga.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/arch/sh/include/mach-sdk7786/mach/fpga.h b/arch/sh/include/mach-sdk7786/mach/fpga.h
index 416b621d94d1..8cc784147b96 100644
--- a/arch/sh/include/mach-sdk7786/mach/fpga.h
+++ b/arch/sh/include/mach-sdk7786/mach/fpga.h
@@ -31,7 +31,16 @@
#define EXTASR 0x110
#define SPCAR 0x120
#define INTMSR 0x130
+
#define PCIECR 0x140
+#define PCIECR_PCIEMUX1 BIT(15)
+#define PCIECR_PCIEMUX0 BIT(14)
+#define PCIECR_PRST4 BIT(12) /* slot 4 card present */
+#define PCIECR_PRST3 BIT(11) /* slot 3 card present */
+#define PCIECR_PRST2 BIT(10) /* slot 2 card present */
+#define PCIECR_PRST1 BIT(9) /* slot 1 card present */
+#define PCIECR_CLKEN BIT(4)
+
#define FAER 0x150
#define USRGPIR 0x160
/* 0x170 reserved */
OpenPOWER on IntegriCloud