aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/bcm53xx/patches-3.10/122-bcma-add-arm-support.patch
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/bcm53xx/patches-3.10/122-bcma-add-arm-support.patch')
-rw-r--r--target/linux/bcm53xx/patches-3.10/122-bcma-add-arm-support.patch156
1 files changed, 0 insertions, 156 deletions
diff --git a/target/linux/bcm53xx/patches-3.10/122-bcma-add-arm-support.patch b/target/linux/bcm53xx/patches-3.10/122-bcma-add-arm-support.patch
deleted file mode 100644
index 2439f0762a..0000000000
--- a/target/linux/bcm53xx/patches-3.10/122-bcma-add-arm-support.patch
+++ /dev/null
@@ -1,156 +0,0 @@
-bcma: add arm support
-
-
-Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
----
- drivers/bcma/Kconfig | 9 +++++
- drivers/bcma/Makefile | 1 +
- drivers/bcma/driver_arm.c | 61 ++++++++++++++++++++++++++++++++++
- drivers/bcma/main.c | 7 ++++
- include/linux/bcma/bcma.h | 2 ++
- include/linux/bcma/bcma_driver_arm.h | 20 +++++++++++
- 6 files changed, 100 insertions(+)
- create mode 100644 drivers/bcma/driver_arm.c
- create mode 100644 include/linux/bcma/bcma_driver_arm.h
-
---- a/drivers/bcma/Kconfig
-+++ b/drivers/bcma/Kconfig
-@@ -54,6 +54,15 @@ config BCMA_DRIVER_MIPS
-
- If unsure, say N
-
-+config BCMA_DRIVER_ARM
-+ bool "BCMA Broadcom ARM core driver"
-+ depends on BCMA && ARM
-+ help
-+ Driver for the Broadcom MIPS core attached to Broadcom specific
-+ Advanced Microcontroller Bus.
-+
-+ If unsure, say N
-+
- config BCMA_SFLASH
- bool
- depends on BCMA_DRIVER_MIPS
---- a/drivers/bcma/Makefile
-+++ b/drivers/bcma/Makefile
-@@ -5,6 +5,7 @@ bcma-$(CONFIG_BCMA_NFLASH) += driver_ch
- bcma-y += driver_pci.o
- bcma-$(CONFIG_BCMA_DRIVER_PCI_HOSTMODE) += driver_pci_host.o
- bcma-$(CONFIG_BCMA_DRIVER_MIPS) += driver_mips.o
-+bcma-$(CONFIG_BCMA_DRIVER_ARM) += driver_arm.o
- bcma-$(CONFIG_BCMA_DRIVER_GMAC_CMN) += driver_gmac_cmn.o
- bcma-$(CONFIG_BCMA_DRIVER_GPIO) += driver_gpio.o
- bcma-$(CONFIG_BCMA_HOST_PCI) += host_pci.o
---- /dev/null
-+++ b/drivers/bcma/driver_arm.c
-@@ -0,0 +1,53 @@
-+/*
-+ * Broadcom specific AMBA
-+ * Broadcom MIPS32 74K core driver
-+ *
-+ * Copyright 2009, Broadcom Corporation
-+ * Copyright 2006, 2007, Michael Buesch <mb@bu3sch.de>
-+ * Copyright 2010, Bernhard Loos <bernhardloos@googlemail.com>
-+ * Copyright 2011, Hauke Mehrtens <hauke@hauke-m.de>
-+ *
-+ * Licensed under the GNU/GPL. See COPYING for details.
-+ */
-+
-+#include "bcma_private.h"
-+
-+#include <linux/bcma/bcma.h>
-+
-+static void bcma_core_mips_set_irq_name(struct bcma_bus *bus, unsigned int irq,
-+ u16 coreid, u8 unit)
-+{
-+ struct bcma_device *core;
-+
-+ core = bcma_find_core_unit(bus, coreid, unit);
-+ if (!core) {
-+ bcma_warn(bus,
-+ "Can not find core (id: 0x%x, unit %i) for IRQ configuration.\n",
-+ coreid, unit);
-+ return;
-+ }
-+ core->irq = irq;
-+}
-+
-+void bcma_core_arm_init(struct bcma_drv_arm *acore)
-+{
-+ struct bcma_bus *bus;
-+ struct bcma_device *core;
-+ bus = acore->core->bus;
-+
-+ if (acore->setup_done)
-+ return;
-+
-+ bcma_core_mips_set_irq_name(bus, 111, BCMA_CORE_USB20, 0);
-+
-+ bcma_core_mips_set_irq_name(bus, 179, BCMA_CORE_MAC_GBIT, 0);
-+ bcma_core_mips_set_irq_name(bus, 180, BCMA_CORE_MAC_GBIT, 1);
-+ bcma_core_mips_set_irq_name(bus, 181, BCMA_CORE_MAC_GBIT, 2);
-+ bcma_core_mips_set_irq_name(bus, 182, BCMA_CORE_MAC_GBIT, 3);
-+
-+ bcma_core_mips_set_irq_name(bus, 112, BCMA_CORE_USB30, 0);
-+ bcma_debug(bus, "IRQ reconfiguration done\n");
-+
-+
-+ acore->setup_done = true;
-+}
---- a/drivers/bcma/main.c
-+++ b/drivers/bcma/main.c
-@@ -259,6 +259,13 @@ int bcma_bus_register(struct bcma_bus *b
- bcma_core_mips_init(&bus->drv_mips);
- }
-
-+ /* Init ARM core */
-+ core = bcma_find_core(bus, BCMA_CORE_ARMCA9);
-+ if (core) {
-+ bus->drv_arm.core = core;
-+ bcma_core_arm_init(&bus->drv_arm);
-+ }
-+
- /* Init PCIE core */
- core = bcma_find_core_unit(bus, BCMA_CORE_PCIE, 0);
- if (core) {
---- a/include/linux/bcma/bcma.h
-+++ b/include/linux/bcma/bcma.h
-@@ -7,6 +7,7 @@
- #include <linux/bcma/bcma_driver_chipcommon.h>
- #include <linux/bcma/bcma_driver_pci.h>
- #include <linux/bcma/bcma_driver_mips.h>
-+#include <linux/bcma/bcma_driver_arm.h>
- #include <linux/bcma/bcma_driver_gmac_cmn.h>
- #include <linux/ssb/ssb.h> /* SPROM sharing */
-
-@@ -334,6 +335,7 @@ struct bcma_bus {
- struct bcma_drv_cc drv_cc;
- struct bcma_drv_pci drv_pci[2];
- struct bcma_drv_mips drv_mips;
-+ struct bcma_drv_arm drv_arm;
- struct bcma_drv_gmac_cmn drv_gmac_cmn;
-
- /* We decided to share SPROM struct with SSB as long as we do not need
---- /dev/null
-+++ b/include/linux/bcma/bcma_driver_arm.h
-@@ -0,0 +1,20 @@
-+#ifndef LINUX_BCMA_DRIVER_ARM_H_
-+#define LINUX_BCMA_DRIVER_ARM_H_
-+
-+struct bcma_device;
-+
-+struct bcma_drv_arm {
-+ struct bcma_device *core;
-+ u8 setup_done:1;
-+ u8 early_setup_done:1;
-+};
-+
-+#ifdef CONFIG_BCMA_DRIVER_ARM
-+extern void bcma_core_arm_init(struct bcma_drv_arm *acore);
-+
-+#else
-+static inline void bcma_core_arm_init(struct bcma_drv_arm *acore) { }
-+
-+#endif
-+
-+#endif /* LINUX_BCMA_DRIVER_ARM_H_ */