Update cleanups of ssb-gige
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@10597 3c298f89-4303-0410-b956-a3cf2f4a3e73master
parent
dc67a3d787
commit
629ca7b2e2
|
@ -1,16 +1,16 @@
|
||||||
Index: linux-2.6.23.16/drivers/ssb/Kconfig
|
Index: linux-2.6.23.16/drivers/ssb/Kconfig
|
||||||
===================================================================
|
===================================================================
|
||||||
--- linux-2.6.23.16.orig/drivers/ssb/Kconfig 2008-02-22 19:40:57.000000000 +0100
|
--- linux-2.6.23.16.orig/drivers/ssb/Kconfig 2008-02-28 12:52:40.000000000 +0100
|
||||||
+++ linux-2.6.23.16/drivers/ssb/Kconfig 2008-02-22 19:42:52.000000000 +0100
|
+++ linux-2.6.23.16/drivers/ssb/Kconfig 2008-02-29 01:01:00.000000000 +0100
|
||||||
@@ -120,4 +120,13 @@ config SSB_DRIVER_EXTIF
|
@@ -120,4 +120,13 @@ config SSB_DRIVER_EXTIF
|
||||||
|
|
||||||
If unsure, say N
|
If unsure, say N
|
||||||
|
|
||||||
+config SSB_DRIVER_GIGE
|
+config SSB_DRIVER_GIGE
|
||||||
+ bool "SSB Broadcom Gigabit Ethernet driver (EXPERIMENTAL)"
|
+ bool "SSB Broadcom Gigabit Ethernet driver"
|
||||||
+ depends on SSB_PCIHOST_POSSIBLE && SSB_EMBEDDED && MIPS && EXPERIMENTAL
|
+ depends on SSB_PCIHOST_POSSIBLE && SSB_EMBEDDED && MIPS
|
||||||
+ help
|
+ help
|
||||||
+ Driver the the Sonics Silicon Backplane attached
|
+ Driver for the Sonics Silicon Backplane attached
|
||||||
+ Broadcom Gigabit Ethernet.
|
+ Broadcom Gigabit Ethernet.
|
||||||
+
|
+
|
||||||
+ If unsure, say N
|
+ If unsure, say N
|
||||||
|
@ -18,8 +18,8 @@ Index: linux-2.6.23.16/drivers/ssb/Kconfig
|
||||||
endmenu
|
endmenu
|
||||||
Index: linux-2.6.23.16/drivers/ssb/Makefile
|
Index: linux-2.6.23.16/drivers/ssb/Makefile
|
||||||
===================================================================
|
===================================================================
|
||||||
--- linux-2.6.23.16.orig/drivers/ssb/Makefile 2008-02-22 19:40:57.000000000 +0100
|
--- linux-2.6.23.16.orig/drivers/ssb/Makefile 2008-02-28 12:52:40.000000000 +0100
|
||||||
+++ linux-2.6.23.16/drivers/ssb/Makefile 2008-02-22 19:42:52.000000000 +0100
|
+++ linux-2.6.23.16/drivers/ssb/Makefile 2008-02-28 12:52:40.000000000 +0100
|
||||||
@@ -11,6 +11,7 @@ ssb-y += driver_chipcommon.o
|
@@ -11,6 +11,7 @@ ssb-y += driver_chipcommon.o
|
||||||
ssb-$(CONFIG_SSB_DRIVER_MIPS) += driver_mipscore.o
|
ssb-$(CONFIG_SSB_DRIVER_MIPS) += driver_mipscore.o
|
||||||
ssb-$(CONFIG_SSB_DRIVER_EXTIF) += driver_extif.o
|
ssb-$(CONFIG_SSB_DRIVER_EXTIF) += driver_extif.o
|
||||||
|
@ -31,8 +31,8 @@ Index: linux-2.6.23.16/drivers/ssb/Makefile
|
||||||
Index: linux-2.6.23.16/drivers/ssb/driver_gige.c
|
Index: linux-2.6.23.16/drivers/ssb/driver_gige.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
|
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
|
||||||
+++ linux-2.6.23.16/drivers/ssb/driver_gige.c 2008-02-28 12:26:18.000000000 +0100
|
+++ linux-2.6.23.16/drivers/ssb/driver_gige.c 2008-02-29 01:05:04.000000000 +0100
|
||||||
@@ -0,0 +1,286 @@
|
@@ -0,0 +1,294 @@
|
||||||
+/*
|
+/*
|
||||||
+ * Sonics Silicon Backplane
|
+ * Sonics Silicon Backplane
|
||||||
+ * Broadcom Gigabit Ethernet core driver
|
+ * Broadcom Gigabit Ethernet core driver
|
||||||
|
@ -44,9 +44,9 @@ Index: linux-2.6.23.16/drivers/ssb/driver_gige.c
|
||||||
+ */
|
+ */
|
||||||
+
|
+
|
||||||
+#include <linux/ssb/ssb.h>
|
+#include <linux/ssb/ssb.h>
|
||||||
|
+#include <linux/ssb/ssb_driver_gige.h>
|
||||||
+#include <linux/pci.h>
|
+#include <linux/pci.h>
|
||||||
+#include <linux/pci_regs.h>
|
+#include <linux/pci_regs.h>
|
||||||
+#include <linux/ssb/ssb_driver_gige.h>
|
|
||||||
+
|
+
|
||||||
+
|
+
|
||||||
+/*
|
+/*
|
||||||
|
@ -271,6 +271,14 @@ Index: linux-2.6.23.16/drivers/ssb/driver_gige.c
|
||||||
+ return 0;
|
+ return 0;
|
||||||
+}
|
+}
|
||||||
+
|
+
|
||||||
|
+bool pdev_is_ssb_gige_core(struct pci_dev *pdev)
|
||||||
|
+{
|
||||||
|
+ if (!pdev->resource[0].name)
|
||||||
|
+ return 0;
|
||||||
|
+ return (strcmp(pdev->resource[0].name, SSB_GIGE_MEM_RES_NAME) == 0);
|
||||||
|
+}
|
||||||
|
+EXPORT_SYMBOL(pdev_is_ssb_gige_core);
|
||||||
|
+
|
||||||
+int ssb_gige_pcibios_plat_dev_init(struct ssb_device *sdev,
|
+int ssb_gige_pcibios_plat_dev_init(struct ssb_device *sdev,
|
||||||
+ struct pci_dev *pdev)
|
+ struct pci_dev *pdev)
|
||||||
+{
|
+{
|
||||||
|
@ -322,8 +330,8 @@ Index: linux-2.6.23.16/drivers/ssb/driver_gige.c
|
||||||
Index: linux-2.6.23.16/include/linux/ssb/ssb_driver_gige.h
|
Index: linux-2.6.23.16/include/linux/ssb/ssb_driver_gige.h
|
||||||
===================================================================
|
===================================================================
|
||||||
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
|
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
|
||||||
+++ linux-2.6.23.16/include/linux/ssb/ssb_driver_gige.h 2008-02-22 20:47:58.000000000 +0100
|
+++ linux-2.6.23.16/include/linux/ssb/ssb_driver_gige.h 2008-02-29 01:10:50.000000000 +0100
|
||||||
@@ -0,0 +1,178 @@
|
@@ -0,0 +1,174 @@
|
||||||
+#ifndef LINUX_SSB_DRIVER_GIGE_H_
|
+#ifndef LINUX_SSB_DRIVER_GIGE_H_
|
||||||
+#define LINUX_SSB_DRIVER_GIGE_H_
|
+#define LINUX_SSB_DRIVER_GIGE_H_
|
||||||
+
|
+
|
||||||
|
@ -376,11 +384,7 @@ Index: linux-2.6.23.16/include/linux/ssb/ssb_driver_gige.h
|
||||||
+};
|
+};
|
||||||
+
|
+
|
||||||
+/* Check whether a PCI device is a SSB Gigabit Ethernet core. */
|
+/* Check whether a PCI device is a SSB Gigabit Ethernet core. */
|
||||||
+static inline bool pdev_is_ssb_gige_core(struct pci_dev *pdev)
|
+extern bool pdev_is_ssb_gige_core(struct pci_dev *pdev);
|
||||||
+{
|
|
||||||
+ return (pdev->resource[0].name &&
|
|
||||||
+ strcmp(pdev->resource[0].name, SSB_GIGE_MEM_RES_NAME) == 0);
|
|
||||||
+}
|
|
||||||
+
|
+
|
||||||
+/* Convert a pci_dev pointer to a ssb_gige pointer. */
|
+/* Convert a pci_dev pointer to a ssb_gige pointer. */
|
||||||
+static inline struct ssb_gige * pdev_to_ssb_gige(struct pci_dev *pdev)
|
+static inline struct ssb_gige * pdev_to_ssb_gige(struct pci_dev *pdev)
|
||||||
|
@ -426,12 +430,12 @@ Index: linux-2.6.23.16/include/linux/ssb/ssb_driver_gige.h
|
||||||
+ return 0;
|
+ return 0;
|
||||||
+}
|
+}
|
||||||
+
|
+
|
||||||
+extern char * nvram_get(const char *name); //FIXME
|
+extern char * nvram_get(const char *name);
|
||||||
+/* Get the device MAC address */
|
+/* Get the device MAC address */
|
||||||
+static inline void ssb_gige_get_macaddr(struct pci_dev *pdev, u8 *macaddr)
|
+static inline void ssb_gige_get_macaddr(struct pci_dev *pdev, u8 *macaddr)
|
||||||
+{
|
+{
|
||||||
+#ifdef CONFIG_BCM947XX
|
+#ifdef CONFIG_BCM947XX
|
||||||
+ char *res = nvram_get("et0macaddr"); //FIXME
|
+ char *res = nvram_get("et0macaddr");
|
||||||
+ if (res)
|
+ if (res)
|
||||||
+ memcpy(macaddr, res, 6);
|
+ memcpy(macaddr, res, 6);
|
||||||
+#endif
|
+#endif
|
||||||
|
@ -504,8 +508,8 @@ Index: linux-2.6.23.16/include/linux/ssb/ssb_driver_gige.h
|
||||||
+#endif /* LINUX_SSB_DRIVER_GIGE_H_ */
|
+#endif /* LINUX_SSB_DRIVER_GIGE_H_ */
|
||||||
Index: linux-2.6.23.16/drivers/ssb/driver_pcicore.c
|
Index: linux-2.6.23.16/drivers/ssb/driver_pcicore.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- linux-2.6.23.16.orig/drivers/ssb/driver_pcicore.c 2008-02-22 19:40:57.000000000 +0100
|
--- linux-2.6.23.16.orig/drivers/ssb/driver_pcicore.c 2008-02-28 12:52:40.000000000 +0100
|
||||||
+++ linux-2.6.23.16/drivers/ssb/driver_pcicore.c 2008-02-22 19:42:52.000000000 +0100
|
+++ linux-2.6.23.16/drivers/ssb/driver_pcicore.c 2008-02-28 12:52:40.000000000 +0100
|
||||||
@@ -60,74 +60,6 @@ static DEFINE_SPINLOCK(cfgspace_lock);
|
@@ -60,74 +60,6 @@ static DEFINE_SPINLOCK(cfgspace_lock);
|
||||||
/* Core to access the external PCI config space. Can only have one. */
|
/* Core to access the external PCI config space. Can only have one. */
|
||||||
static struct ssb_pcicore *extpci_core;
|
static struct ssb_pcicore *extpci_core;
|
||||||
|
@ -676,8 +680,8 @@ Index: linux-2.6.23.16/drivers/ssb/driver_pcicore.c
|
||||||
u32 val;
|
u32 val;
|
||||||
Index: linux-2.6.23.16/drivers/ssb/embedded.c
|
Index: linux-2.6.23.16/drivers/ssb/embedded.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- linux-2.6.23.16.orig/drivers/ssb/embedded.c 2008-02-22 19:40:57.000000000 +0100
|
--- linux-2.6.23.16.orig/drivers/ssb/embedded.c 2008-02-28 12:52:40.000000000 +0100
|
||||||
+++ linux-2.6.23.16/drivers/ssb/embedded.c 2008-02-22 19:42:52.000000000 +0100
|
+++ linux-2.6.23.16/drivers/ssb/embedded.c 2008-02-28 12:52:40.000000000 +0100
|
||||||
@@ -10,6 +10,9 @@
|
@@ -10,6 +10,9 @@
|
||||||
|
|
||||||
#include <linux/ssb/ssb.h>
|
#include <linux/ssb/ssb.h>
|
||||||
|
@ -781,8 +785,8 @@ Index: linux-2.6.23.16/drivers/ssb/embedded.c
|
||||||
+}
|
+}
|
||||||
Index: linux-2.6.23.16/include/linux/ssb/ssb.h
|
Index: linux-2.6.23.16/include/linux/ssb/ssb.h
|
||||||
===================================================================
|
===================================================================
|
||||||
--- linux-2.6.23.16.orig/include/linux/ssb/ssb.h 2008-02-22 19:40:57.000000000 +0100
|
--- linux-2.6.23.16.orig/include/linux/ssb/ssb.h 2008-02-28 12:52:40.000000000 +0100
|
||||||
+++ linux-2.6.23.16/include/linux/ssb/ssb.h 2008-02-22 19:42:52.000000000 +0100
|
+++ linux-2.6.23.16/include/linux/ssb/ssb.h 2008-02-28 12:52:40.000000000 +0100
|
||||||
@@ -422,5 +422,12 @@ extern int ssb_bus_powerup(struct ssb_bu
|
@@ -422,5 +422,12 @@ extern int ssb_bus_powerup(struct ssb_bu
|
||||||
extern u32 ssb_admatch_base(u32 adm);
|
extern u32 ssb_admatch_base(u32 adm);
|
||||||
extern u32 ssb_admatch_size(u32 adm);
|
extern u32 ssb_admatch_size(u32 adm);
|
||||||
|
@ -798,8 +802,8 @@ Index: linux-2.6.23.16/include/linux/ssb/ssb.h
|
||||||
#endif /* LINUX_SSB_H_ */
|
#endif /* LINUX_SSB_H_ */
|
||||||
Index: linux-2.6.23.16/include/linux/ssb/ssb_driver_pci.h
|
Index: linux-2.6.23.16/include/linux/ssb/ssb_driver_pci.h
|
||||||
===================================================================
|
===================================================================
|
||||||
--- linux-2.6.23.16.orig/include/linux/ssb/ssb_driver_pci.h 2008-02-22 19:40:57.000000000 +0100
|
--- linux-2.6.23.16.orig/include/linux/ssb/ssb_driver_pci.h 2008-02-28 12:52:40.000000000 +0100
|
||||||
+++ linux-2.6.23.16/include/linux/ssb/ssb_driver_pci.h 2008-02-22 19:42:52.000000000 +0100
|
+++ linux-2.6.23.16/include/linux/ssb/ssb_driver_pci.h 2008-02-28 12:52:40.000000000 +0100
|
||||||
@@ -1,6 +1,11 @@
|
@@ -1,6 +1,11 @@
|
||||||
#ifndef LINUX_SSB_PCICORE_H_
|
#ifndef LINUX_SSB_PCICORE_H_
|
||||||
#define LINUX_SSB_PCICORE_H_
|
#define LINUX_SSB_PCICORE_H_
|
||||||
|
@ -841,8 +845,8 @@ Index: linux-2.6.23.16/include/linux/ssb/ssb_driver_pci.h
|
||||||
#endif /* LINUX_SSB_PCICORE_H_ */
|
#endif /* LINUX_SSB_PCICORE_H_ */
|
||||||
Index: linux-2.6.23.16/drivers/ssb/main.c
|
Index: linux-2.6.23.16/drivers/ssb/main.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- linux-2.6.23.16.orig/drivers/ssb/main.c 2008-02-22 19:40:57.000000000 +0100
|
--- linux-2.6.23.16.orig/drivers/ssb/main.c 2008-02-28 12:52:40.000000000 +0100
|
||||||
+++ linux-2.6.23.16/drivers/ssb/main.c 2008-02-22 19:42:52.000000000 +0100
|
+++ linux-2.6.23.16/drivers/ssb/main.c 2008-02-28 12:52:40.000000000 +0100
|
||||||
@@ -14,6 +14,7 @@
|
@@ -14,6 +14,7 @@
|
||||||
#include <linux/io.h>
|
#include <linux/io.h>
|
||||||
#include <linux/ssb/ssb.h>
|
#include <linux/ssb/ssb.h>
|
||||||
|
@ -903,8 +907,8 @@ Index: linux-2.6.23.16/drivers/ssb/main.c
|
||||||
}
|
}
|
||||||
Index: linux-2.6.23.16/drivers/ssb/ssb_private.h
|
Index: linux-2.6.23.16/drivers/ssb/ssb_private.h
|
||||||
===================================================================
|
===================================================================
|
||||||
--- linux-2.6.23.16.orig/drivers/ssb/ssb_private.h 2008-02-22 19:40:57.000000000 +0100
|
--- linux-2.6.23.16.orig/drivers/ssb/ssb_private.h 2008-02-28 12:52:37.000000000 +0100
|
||||||
+++ linux-2.6.23.16/drivers/ssb/ssb_private.h 2008-02-22 19:42:52.000000000 +0100
|
+++ linux-2.6.23.16/drivers/ssb/ssb_private.h 2008-02-28 12:52:40.000000000 +0100
|
||||||
@@ -118,6 +118,8 @@ extern u32 ssb_calc_clock_rate(u32 pllty
|
@@ -118,6 +118,8 @@ extern u32 ssb_calc_clock_rate(u32 pllty
|
||||||
extern int ssb_devices_freeze(struct ssb_bus *bus);
|
extern int ssb_devices_freeze(struct ssb_bus *bus);
|
||||||
extern int ssb_devices_thaw(struct ssb_bus *bus);
|
extern int ssb_devices_thaw(struct ssb_bus *bus);
|
||||||
|
@ -916,8 +920,8 @@ Index: linux-2.6.23.16/drivers/ssb/ssb_private.h
|
||||||
#ifdef CONFIG_SSB_PCIHOST
|
#ifdef CONFIG_SSB_PCIHOST
|
||||||
Index: linux-2.6.23.16/drivers/net/tg3.c
|
Index: linux-2.6.23.16/drivers/net/tg3.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- linux-2.6.23.16.orig/drivers/net/tg3.c 2008-02-22 19:40:57.000000000 +0100
|
--- linux-2.6.23.16.orig/drivers/net/tg3.c 2008-02-28 12:52:37.000000000 +0100
|
||||||
+++ linux-2.6.23.16/drivers/net/tg3.c 2008-02-28 12:28:17.000000000 +0100
|
+++ linux-2.6.23.16/drivers/net/tg3.c 2008-02-29 00:59:00.000000000 +0100
|
||||||
@@ -38,6 +38,7 @@
|
@@ -38,6 +38,7 @@
|
||||||
#include <linux/workqueue.h>
|
#include <linux/workqueue.h>
|
||||||
#include <linux/prefetch.h>
|
#include <linux/prefetch.h>
|
||||||
|
@ -1203,8 +1207,8 @@ Index: linux-2.6.23.16/drivers/net/tg3.c
|
||||||
* swapping. DMA data byte swapping is controlled in the GRC_MODE
|
* swapping. DMA data byte swapping is controlled in the GRC_MODE
|
||||||
Index: linux-2.6.23.16/drivers/net/tg3.h
|
Index: linux-2.6.23.16/drivers/net/tg3.h
|
||||||
===================================================================
|
===================================================================
|
||||||
--- linux-2.6.23.16.orig/drivers/net/tg3.h 2008-02-22 19:40:57.000000000 +0100
|
--- linux-2.6.23.16.orig/drivers/net/tg3.h 2008-02-28 12:52:37.000000000 +0100
|
||||||
+++ linux-2.6.23.16/drivers/net/tg3.h 2008-02-23 20:56:08.000000000 +0100
|
+++ linux-2.6.23.16/drivers/net/tg3.h 2008-02-28 12:52:40.000000000 +0100
|
||||||
@@ -2279,6 +2279,10 @@ struct tg3 {
|
@@ -2279,6 +2279,10 @@ struct tg3 {
|
||||||
#define TG3_FLG2_PHY_JITTER_BUG 0x20000000
|
#define TG3_FLG2_PHY_JITTER_BUG 0x20000000
|
||||||
#define TG3_FLG2_NO_FWARE_REPORTED 0x40000000
|
#define TG3_FLG2_NO_FWARE_REPORTED 0x40000000
|
||||||
|
@ -1236,8 +1240,8 @@ Index: linux-2.6.23.16/drivers/net/tg3.h
|
||||||
dma_addr_t stats_mapping;
|
dma_addr_t stats_mapping;
|
||||||
Index: linux-2.6.23.16/drivers/ssb/driver_mipscore.c
|
Index: linux-2.6.23.16/drivers/ssb/driver_mipscore.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- linux-2.6.23.16.orig/drivers/ssb/driver_mipscore.c 2008-02-20 20:02:43.000000000 +0100
|
--- linux-2.6.23.16.orig/drivers/ssb/driver_mipscore.c 2008-02-28 12:52:40.000000000 +0100
|
||||||
+++ linux-2.6.23.16/drivers/ssb/driver_mipscore.c 2008-02-28 12:16:12.000000000 +0100
|
+++ linux-2.6.23.16/drivers/ssb/driver_mipscore.c 2008-02-28 12:52:40.000000000 +0100
|
||||||
@@ -211,6 +211,7 @@ void ssb_mipscore_init(struct ssb_mipsco
|
@@ -211,6 +211,7 @@ void ssb_mipscore_init(struct ssb_mipsco
|
||||||
/* fallthrough */
|
/* fallthrough */
|
||||||
case SSB_DEV_PCI:
|
case SSB_DEV_PCI:
|
||||||
|
|
Loading…
Reference in New Issue