summaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-kirkwood/pcie.c
diff options
context:
space:
mode:
authorRonen Shitrit <rshitrit@marvell.com>2008-09-15 10:40:35 +0300
committerNicolas Pitre <nico@cam.org>2008-09-25 16:27:21 -0400
commitb2b3dc2fc41ef441610d0140f0f5ccacbd43f40c (patch)
tree70116ea6c823e5ac6a8b048ee6911257e722e5b7 /arch/arm/mach-kirkwood/pcie.c
parent79d4dd77f0d86e4315887edaa5dfabb0c2081ba7 (diff)
downloadblackbird-op-linux-b2b3dc2fc41ef441610d0140f0f5ccacbd43f40c.tar.gz
blackbird-op-linux-b2b3dc2fc41ef441610d0140f0f5ccacbd43f40c.zip
[ARM] Kirkwood: add support for newer SoC models
Add support to the Kirkwood port for newer device models and silicon revisions. Instead of looking at the DEVICE_ID register, the device version is now determined by looking at the PCI-Express device ID and revision registers, as it is done for orion5x, and this information is used to determine the TCLK frequency, again, as it is done for orion5x. Signed-off-by: Ronen Shitrit <rshitrit@marvell.com> Signed-off-by: Lennert Buytenhek <buytenh@marvell.com>
Diffstat (limited to 'arch/arm/mach-kirkwood/pcie.c')
-rw-r--r--arch/arm/mach-kirkwood/pcie.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/arch/arm/mach-kirkwood/pcie.c b/arch/arm/mach-kirkwood/pcie.c
index 2195fa31f6b7..f6b08f207c89 100644
--- a/arch/arm/mach-kirkwood/pcie.c
+++ b/arch/arm/mach-kirkwood/pcie.c
@@ -18,6 +18,12 @@
#define PCIE_BASE ((void __iomem *)PCIE_VIRT_BASE)
+void __init kirkwood_pcie_id(u32 *dev, u32 *rev)
+{
+ *dev = orion_pcie_dev_id(PCIE_BASE);
+ *rev = orion_pcie_rev(PCIE_BASE);
+}
+
static int pcie_valid_config(int bus, int dev)
{
/*
OpenPOWER on IntegriCloud