bcm63xx: Add a fixup for rt2x00 devices.
This patch adds support for defining rt2x00 eeprom data. This eeprom data can be extracted from flash or loaded directly from a firmware file. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@34322 3c298f89-4303-0410-b956-a3cf2f4a3e73master
parent
4560dbf0b6
commit
3083251662
|
@ -0,0 +1,39 @@
|
|||
#!/bin/sh
|
||||
# Based on gabors ralink wisoc implementation.
|
||||
|
||||
rt2x00_eeprom_die() {
|
||||
echo "rt2x00 eeprom: " "$*"
|
||||
exit 1
|
||||
}
|
||||
|
||||
rt2x00_eeprom_extract() {
|
||||
local part=$1
|
||||
local offset=$2
|
||||
local count=$3
|
||||
local mtd
|
||||
|
||||
. /etc/functions.sh
|
||||
|
||||
mtd=$(find_mtd_part $part)
|
||||
[ -n "$mtd" ] || \
|
||||
rt2x00_eeprom_die "no mtd device found for partition $part"
|
||||
|
||||
dd if=$mtd of=/lib/firmware/$FIRMWARE bs=1 skip=$offset count=$count || \
|
||||
rt2x00_eeprom_die "failed to extract from $mtd"
|
||||
}
|
||||
|
||||
[ -e /lib/firmware/$FIRMWARE ] && exit 0
|
||||
|
||||
. /lib/brcm63xx.sh
|
||||
|
||||
board=$board_name
|
||||
|
||||
case "$FIRMWARE" in
|
||||
"RT3062.eeprom" )
|
||||
case $board in
|
||||
*)
|
||||
rt2x00_eeprom_die "board $board is not supported yet"
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
esac
|
|
@ -0,0 +1,188 @@
|
|||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
@@ -34,6 +34,7 @@
|
||||
#include <board_bcm963xx.h>
|
||||
#include <linux/bcm963xx_tag.h>
|
||||
#include <pci_ath9k_fixup.h>
|
||||
+#include <pci_rt2x00_fixup.h>
|
||||
|
||||
#define PFX "board_bcm963xx: "
|
||||
|
||||
@@ -937,9 +938,19 @@ int __init board_register_devices(void)
|
||||
}
|
||||
|
||||
/* register any fixups */
|
||||
- for (i = 0; i < board.has_caldata; i++)
|
||||
- pci_enable_ath9k_fixup(board.caldata[i].slot, board.caldata[i].caldata_offset,
|
||||
- board.caldata[i].endian_check, board.caldata[i].led_pin);
|
||||
+ for (i = 0; i < board.has_caldata; i++) {
|
||||
+ switch (board.caldata[i].vendor) {
|
||||
+ case PCI_VENDOR_ID_ATHEROS:
|
||||
+ pci_enable_ath9k_fixup(board.caldata[i].slot,
|
||||
+ board.caldata[i].caldata_offset, board.caldata[i].endian_check,
|
||||
+ board.caldata[i].led_pin);
|
||||
+ break;
|
||||
+ case PCI_VENDOR_ID_RALINK:
|
||||
+ pci_enable_rt2x00_fixup(board.caldata[i].slot,
|
||||
+ board.caldata[i].eeprom);
|
||||
+ break;
|
||||
+ }
|
||||
+ }
|
||||
|
||||
return 0;
|
||||
}
|
||||
--- a/arch/mips/bcm63xx/dev-flash.c
|
||||
+++ b/arch/mips/bcm63xx/dev-flash.c
|
||||
@@ -146,7 +146,7 @@ static int __init bcm63xx_detect_flash_t
|
||||
return 0;
|
||||
}
|
||||
|
||||
-int __init bcm63xx_flash_register(int num_caldata, struct ath9k_caldata *caldata)
|
||||
+int __init bcm63xx_flash_register(int num_caldata, struct bcm63xx_caldata *caldata)
|
||||
{
|
||||
u32 val;
|
||||
unsigned int i;
|
||||
--- a/arch/mips/bcm63xx/Makefile
|
||||
+++ b/arch/mips/bcm63xx/Makefile
|
||||
@@ -1,7 +1,8 @@
|
||||
obj-y += clk.o cpu.o cs.o gpio.o irq.o nvram.o prom.o setup.o \
|
||||
timer.o dev-dsp.o dev-enet.o dev-flash.o dev-hsspi.o \
|
||||
dev-pcmcia.o dev-rng.o dev-spi.o dev-uart.o dev-usb-ehci.o \
|
||||
- dev-usb-ohci.o dev-wdt.o pci-ath9k-fixup.o
|
||||
+ dev-usb-ohci.o dev-wdt.o pci-ath9k-fixup.o \
|
||||
+ pci-rt2x00-fixup.o
|
||||
obj-$(CONFIG_EARLY_PRINTK) += early_printk.o
|
||||
|
||||
obj-y += boards/
|
||||
--- /dev/null
|
||||
+++ b/arch/mips/bcm63xx/pci-rt2x00-fixup.c
|
||||
@@ -0,0 +1,71 @@
|
||||
+/*
|
||||
+ * Broadcom BCM63XX RT2x00 EEPROM fixup helper.
|
||||
+ *
|
||||
+ * Copyright (C) 2012 Álvaro Fernández Rojas <noltari@gmail.com>
|
||||
+ *
|
||||
+ * Based on
|
||||
+ *
|
||||
+ * Broadcom BCM63XX Ath9k EEPROM fixup helper.
|
||||
+ *
|
||||
+ * Copyright (C) 2012 Jonas Gorski <jonas.gorski@gmail.com>
|
||||
+ *
|
||||
+ * This program is free software; you can redistribute it and/or modify it
|
||||
+ * under the terms of the GNU General Public License version 2 as published
|
||||
+ * by the Free Software Foundation.
|
||||
+ */
|
||||
+
|
||||
+#include <linux/pci.h>
|
||||
+#include <linux/platform_device.h>
|
||||
+#include <linux/rt2x00_platform.h>
|
||||
+
|
||||
+#include <bcm63xx_nvram.h>
|
||||
+#include <pci_rt2x00_fixup.h>
|
||||
+
|
||||
+struct rt2x00_fixup {
|
||||
+ unsigned slot;
|
||||
+ u8 mac[ETH_ALEN];
|
||||
+ struct rt2x00_platform_data pdata;
|
||||
+};
|
||||
+
|
||||
+static int rt2x00_num_fixups;
|
||||
+static struct rt2x00_fixup rt2x00_fixups[2] = {
|
||||
+ {
|
||||
+ .slot = 255,
|
||||
+ },
|
||||
+ {
|
||||
+ .slot = 255,
|
||||
+ },
|
||||
+};
|
||||
+
|
||||
+static void rt2x00_pci_fixup(struct pci_dev *dev)
|
||||
+{
|
||||
+ unsigned i;
|
||||
+ struct rt2x00_platform_data *pdata = NULL;
|
||||
+
|
||||
+ for (i = 0; i < rt2x00_num_fixups; i++) {
|
||||
+ if (rt2x00_fixups[i].slot != PCI_SLOT(dev->devfn))
|
||||
+ continue;
|
||||
+
|
||||
+ pdata = &rt2x00_fixups[i].pdata;
|
||||
+ break;
|
||||
+ }
|
||||
+
|
||||
+ dev->dev.platform_data = pdata;
|
||||
+}
|
||||
+DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_RALINK, PCI_ANY_ID, rt2x00_pci_fixup);
|
||||
+
|
||||
+void __init pci_enable_rt2x00_fixup(unsigned slot, char* eeprom)
|
||||
+{
|
||||
+ if (rt2x00_num_fixups >= ARRAY_SIZE(rt2x00_fixups))
|
||||
+ return;
|
||||
+
|
||||
+ rt2x00_fixups[rt2x00_num_fixups].slot = slot;
|
||||
+ rt2x00_fixups[rt2x00_num_fixups].pdata.eeprom_file_name = kstrdup(eeprom, GFP_KERNEL);
|
||||
+
|
||||
+ if (bcm63xx_nvram_get_mac_address(rt2x00_fixups[rt2x00_num_fixups].mac))
|
||||
+ return;
|
||||
+
|
||||
+ rt2x00_fixups[rt2x00_num_fixups].pdata.mac_address = rt2x00_fixups[rt2x00_num_fixups].mac;
|
||||
+ rt2x00_num_fixups++;
|
||||
+}
|
||||
+
|
||||
--- a/arch/mips/include/asm/mach-bcm63xx/bcm63xx_dev_flash.h
|
||||
+++ b/arch/mips/include/asm/mach-bcm63xx/bcm63xx_dev_flash.h
|
||||
@@ -11,6 +11,6 @@ enum {
|
||||
|
||||
extern int bcm63xx_attached_flash;
|
||||
|
||||
-int __init bcm63xx_flash_register(int num_caldata, struct ath9k_caldata *caldata);
|
||||
+int __init bcm63xx_flash_register(int num_caldata, struct bcm63xx_caldata *caldata);
|
||||
|
||||
#endif /* __BCM63XX_FLASH_H */
|
||||
--- a/arch/mips/include/asm/mach-bcm63xx/board_bcm963xx.h
|
||||
+++ b/arch/mips/include/asm/mach-bcm63xx/board_bcm963xx.h
|
||||
@@ -8,6 +8,7 @@
|
||||
#include <bcm63xx_dev_enet.h>
|
||||
#include <bcm63xx_dev_dsp.h>
|
||||
#include <pci_ath9k_fixup.h>
|
||||
+#include <pci_rt2x00_fixup.h>
|
||||
|
||||
/*
|
||||
* flash mapping
|
||||
@@ -15,11 +16,15 @@
|
||||
#define BCM963XX_CFE_VERSION_OFFSET 0x570
|
||||
#define BCM963XX_NVRAM_OFFSET 0x580
|
||||
|
||||
-struct ath9k_caldata {
|
||||
+struct bcm63xx_caldata {
|
||||
+ unsigned int vendor;
|
||||
unsigned int slot;
|
||||
u32 caldata_offset;
|
||||
+ /* Atheros */
|
||||
unsigned int endian_check:1;
|
||||
int led_pin;
|
||||
+ /* Ralink */
|
||||
+ char* eeprom;
|
||||
};
|
||||
|
||||
/*
|
||||
@@ -43,7 +48,7 @@ struct board_info {
|
||||
unsigned int has_caldata:2;
|
||||
|
||||
/* wifi calibration data config */
|
||||
- struct ath9k_caldata caldata[2];
|
||||
+ struct bcm63xx_caldata caldata[2];
|
||||
|
||||
/* ethernet config */
|
||||
struct bcm63xx_enet_platform_data enet0;
|
||||
--- /dev/null
|
||||
+++ b/arch/mips/include/asm/mach-bcm63xx/pci_rt2x00_fixup.h
|
||||
@@ -0,0 +1,9 @@
|
||||
+#ifndef _PCI_RT2X00_FIXUP
|
||||
+#define _PCI_RT2X00_FIXUP
|
||||
+
|
||||
+#define PCI_VENDOR_ID_RALINK 0x1814
|
||||
+
|
||||
+void pci_enable_rt2x00_fixup(unsigned slot, char* eeprom) __init;
|
||||
+
|
||||
+#endif /* _PCI_RT2X00_FIXUP */
|
||||
+
|
|
@ -1,6 +1,6 @@
|
|||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
@@ -469,6 +469,54 @@ static struct board_info __initdata boar
|
||||
@@ -470,6 +470,54 @@ static struct board_info __initdata boar
|
||||
|
||||
.has_ohci0 = 1,
|
||||
};
|
||||
|
@ -55,7 +55,7 @@
|
|||
#endif
|
||||
|
||||
/*
|
||||
@@ -640,6 +688,7 @@ static const struct board_info __initdat
|
||||
@@ -641,6 +689,7 @@ static const struct board_info __initdat
|
||||
&board_DV201AMR,
|
||||
&board_96348gw_a,
|
||||
&board_rta1025w_16,
|
||||
|
|
|
@ -9,7 +9,7 @@
|
|||
#include <asm/addrspace.h>
|
||||
#include <bcm63xx_board.h>
|
||||
#include <bcm63xx_cpu.h>
|
||||
@@ -43,6 +45,12 @@
|
||||
@@ -44,6 +46,12 @@
|
||||
#define CFE_OFFSET_64K 0x10000
|
||||
#define CFE_OFFSET_128K 0x20000
|
||||
|
||||
|
@ -22,7 +22,7 @@
|
|||
static struct board_info board;
|
||||
|
||||
/*
|
||||
@@ -666,6 +674,586 @@ static struct board_info __initdata boar
|
||||
@@ -667,6 +675,586 @@ static struct board_info __initdata boar
|
||||
|
||||
.has_ohci0 = 1,
|
||||
};
|
||||
|
@ -609,7 +609,7 @@
|
|||
#endif
|
||||
|
||||
/*
|
||||
@@ -696,6 +1284,11 @@ static const struct board_info __initdat
|
||||
@@ -697,6 +1285,11 @@ static const struct board_info __initdat
|
||||
&board_96358vw2,
|
||||
&board_AGPFS0,
|
||||
&board_DWVS0,
|
||||
|
@ -621,7 +621,7 @@
|
|||
#endif
|
||||
};
|
||||
|
||||
@@ -750,6 +1343,16 @@ static void __init boardid_fixup(u8 *boo
|
||||
@@ -751,6 +1344,16 @@ static void __init boardid_fixup(u8 *boo
|
||||
struct bcm_tag *tag = (struct bcm_tag *)(boot_addr + CFE_OFFSET_64K);
|
||||
char *board_name = (char *)bcm63xx_nvram_get_name();
|
||||
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
@@ -140,6 +140,38 @@ static struct board_info __initdata boar
|
||||
@@ -141,6 +141,38 @@ static struct board_info __initdata boar
|
||||
},
|
||||
},
|
||||
};
|
||||
|
@ -39,7 +39,7 @@
|
|||
#endif
|
||||
|
||||
/*
|
||||
@@ -1263,6 +1295,7 @@ static const struct board_info __initdat
|
||||
@@ -1264,6 +1296,7 @@ static const struct board_info __initdat
|
||||
#ifdef CONFIG_BCM63XX_CPU_6338
|
||||
&board_96338gw,
|
||||
&board_96338w,
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
@@ -663,6 +663,96 @@ static struct board_info __initdata boar
|
||||
@@ -664,6 +664,96 @@ static struct board_info __initdata boar
|
||||
},
|
||||
};
|
||||
|
||||
|
@ -97,7 +97,7 @@
|
|||
static struct board_info __initdata board_AGPFS0 = {
|
||||
.name = "AGPF-S0",
|
||||
.expected_cpu_id = 0x6358,
|
||||
@@ -1316,6 +1406,7 @@ static const struct board_info __initdat
|
||||
@@ -1317,6 +1407,7 @@ static const struct board_info __initdat
|
||||
&board_96358vw,
|
||||
&board_96358vw2,
|
||||
&board_AGPFS0,
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
@@ -797,6 +797,59 @@ static struct board_info __initdata boar
|
||||
@@ -798,6 +798,59 @@ static struct board_info __initdata boar
|
||||
.has_ohci0 = 1,
|
||||
};
|
||||
|
||||
|
@ -60,7 +60,7 @@
|
|||
struct spi_gpio_platform_data nb4_spi_gpio_data = {
|
||||
.sck = NB4_SPI_GPIO_CLK,
|
||||
.mosi = NB4_SPI_GPIO_MOSI,
|
||||
@@ -1408,6 +1461,7 @@ static const struct board_info __initdat
|
||||
@@ -1409,6 +1462,7 @@ static const struct board_info __initdat
|
||||
&board_AGPFS0,
|
||||
&board_CPVA642,
|
||||
&board_DWVS0,
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
@@ -557,6 +557,67 @@ static struct board_info __initdata boar
|
||||
@@ -558,6 +558,67 @@ static struct board_info __initdata boar
|
||||
},
|
||||
},
|
||||
};
|
||||
|
@ -68,7 +68,7 @@
|
|||
#endif
|
||||
|
||||
/*
|
||||
@@ -1453,6 +1514,7 @@ static const struct board_info __initdat
|
||||
@@ -1454,6 +1515,7 @@ static const struct board_info __initdat
|
||||
&board_96348gw_a,
|
||||
&board_rta1025w_16,
|
||||
&board_96348_D4PW,
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
@@ -426,6 +426,112 @@ static struct board_info __initdata boar
|
||||
@@ -427,6 +427,112 @@ static struct board_info __initdata boar
|
||||
},
|
||||
};
|
||||
|
||||
|
@ -113,7 +113,7 @@
|
|||
static struct board_info __initdata board_FAST2404 = {
|
||||
.name = "F@ST2404",
|
||||
.expected_cpu_id = 0x6348,
|
||||
@@ -1507,6 +1613,8 @@ static const struct board_info __initdat
|
||||
@@ -1508,6 +1614,8 @@ static const struct board_info __initdat
|
||||
#ifdef CONFIG_BCM63XX_CPU_6348
|
||||
&board_96348r,
|
||||
&board_96348gw,
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
@@ -724,6 +724,76 @@ static struct board_info __initdata boar
|
||||
@@ -725,6 +725,76 @@ static struct board_info __initdata boar
|
||||
},
|
||||
},
|
||||
};
|
||||
|
@ -77,7 +77,7 @@
|
|||
#endif
|
||||
|
||||
/*
|
||||
@@ -1623,6 +1693,7 @@ static const struct board_info __initdat
|
||||
@@ -1624,6 +1694,7 @@ static const struct board_info __initdat
|
||||
&board_rta1025w_16,
|
||||
&board_96348_D4PW,
|
||||
&board_spw500v,
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
@@ -1666,6 +1666,80 @@ static struct board_info __initdata boar
|
||||
@@ -1667,6 +1667,80 @@ static struct board_info __initdata boar
|
||||
.spis = nb4_spi_devices,
|
||||
.num_spis = ARRAY_SIZE(nb4_spi_devices),
|
||||
};
|
||||
|
@ -81,7 +81,7 @@
|
|||
#endif
|
||||
|
||||
/*
|
||||
@@ -1708,6 +1782,7 @@ static const struct board_info __initdat
|
||||
@@ -1709,6 +1783,7 @@ static const struct board_info __initdat
|
||||
&board_nb4_ser_r2,
|
||||
&board_nb4_fxc_r1,
|
||||
&board_nb4_fxc_r2,
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
@@ -172,6 +172,43 @@ static struct board_info __initdata boar
|
||||
@@ -173,6 +173,43 @@ static struct board_info __initdata boar
|
||||
},
|
||||
},
|
||||
};
|
||||
|
@ -44,7 +44,7 @@
|
|||
#endif
|
||||
|
||||
/*
|
||||
@@ -1750,6 +1787,7 @@ static const struct board_info __initdat
|
||||
@@ -1751,6 +1788,7 @@ static const struct board_info __initdat
|
||||
&board_96338gw,
|
||||
&board_96338w,
|
||||
&board_96338w2_e7t,
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
@@ -1777,6 +1777,72 @@ static struct board_info __initdata boar
|
||||
@@ -1778,6 +1778,72 @@ static struct board_info __initdata boar
|
||||
},
|
||||
},
|
||||
};
|
||||
|
@ -73,7 +73,7 @@
|
|||
#endif
|
||||
|
||||
/*
|
||||
@@ -1821,6 +1887,7 @@ static const struct board_info __initdat
|
||||
@@ -1822,6 +1888,7 @@ static const struct board_info __initdat
|
||||
&board_nb4_fxc_r1,
|
||||
&board_nb4_fxc_r2,
|
||||
&board_HW553,
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
@@ -831,6 +831,63 @@ static struct board_info __initdata boar
|
||||
@@ -832,6 +832,63 @@ static struct board_info __initdata boar
|
||||
},
|
||||
},
|
||||
};
|
||||
|
@ -64,7 +64,7 @@
|
|||
#endif
|
||||
|
||||
/*
|
||||
@@ -1872,6 +1929,7 @@ static const struct board_info __initdat
|
||||
@@ -1873,6 +1930,7 @@ static const struct board_info __initdat
|
||||
&board_96348_D4PW,
|
||||
&board_spw500v,
|
||||
&board_96348sv,
|
||||
|
@ -72,7 +72,7 @@
|
|||
#endif
|
||||
|
||||
#ifdef CONFIG_BCM63XX_CPU_6358
|
||||
@@ -1992,6 +2050,23 @@ void __init board_prom_init(void)
|
||||
@@ -1993,6 +2051,23 @@ void __init board_prom_init(void)
|
||||
val &= MPI_CSBASE_BASE_MASK;
|
||||
}
|
||||
boot_addr = (u8 *)KSEG1ADDR(val);
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
@@ -395,6 +395,62 @@ static struct board_info __initdata boar
|
||||
@@ -396,6 +396,62 @@ static struct board_info __initdata boar
|
||||
},
|
||||
};
|
||||
|
||||
|
@ -63,7 +63,7 @@
|
|||
static struct board_info __initdata board_96348gw = {
|
||||
.name = "96348GW",
|
||||
.expected_cpu_id = 0x6348,
|
||||
@@ -1930,6 +1986,7 @@ static const struct board_info __initdat
|
||||
@@ -1931,6 +1987,7 @@ static const struct board_info __initdat
|
||||
&board_spw500v,
|
||||
&board_96348sv,
|
||||
&board_V2500V_BB,
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
@@ -451,6 +451,49 @@ static struct board_info __initdata boar
|
||||
@@ -452,6 +452,49 @@ static struct board_info __initdata boar
|
||||
};
|
||||
|
||||
|
||||
|
@ -50,7 +50,7 @@
|
|||
static struct board_info __initdata board_96348gw = {
|
||||
.name = "96348GW",
|
||||
.expected_cpu_id = 0x6348,
|
||||
@@ -1987,6 +2030,7 @@ static const struct board_info __initdat
|
||||
@@ -1988,6 +2031,7 @@ static const struct board_info __initdat
|
||||
&board_96348sv,
|
||||
&board_V2500V_BB,
|
||||
&board_V2110,
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
@@ -1210,6 +1210,8 @@ static struct board_info __initdata boar
|
||||
@@ -1211,6 +1211,8 @@ static struct board_info __initdata boar
|
||||
.name = "DWV-S0",
|
||||
.expected_cpu_id = 0x6358,
|
||||
|
||||
|
@ -9,7 +9,7 @@
|
|||
.has_enet0 = 1,
|
||||
.has_enet1 = 1,
|
||||
.has_pci = 1,
|
||||
@@ -1225,6 +1227,7 @@ static struct board_info __initdata boar
|
||||
@@ -1226,6 +1228,7 @@ static struct board_info __initdata boar
|
||||
},
|
||||
|
||||
.has_ohci0 = 1,
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
@@ -494,6 +494,67 @@ static struct board_info __initdata boar
|
||||
@@ -495,6 +495,67 @@ static struct board_info __initdata boar
|
||||
},
|
||||
};
|
||||
|
||||
|
@ -68,7 +68,7 @@
|
|||
static struct board_info __initdata board_96348gw = {
|
||||
.name = "96348GW",
|
||||
.expected_cpu_id = 0x6348,
|
||||
@@ -2034,6 +2095,7 @@ static const struct board_info __initdat
|
||||
@@ -2035,6 +2096,7 @@ static const struct board_info __initdat
|
||||
&board_V2500V_BB,
|
||||
&board_V2110,
|
||||
&board_ct536_ct5621,
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
@@ -757,6 +757,7 @@ static struct board_info __initdata boar
|
||||
@@ -758,6 +758,7 @@ static struct board_info __initdata boar
|
||||
.name = "RTA1025W_16",
|
||||
.expected_cpu_id = 0x6348,
|
||||
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
@@ -1049,6 +1049,44 @@ static struct board_info __initdata boar
|
||||
@@ -1050,6 +1050,44 @@ static struct board_info __initdata boar
|
||||
},
|
||||
},
|
||||
};
|
||||
|
@ -45,7 +45,7 @@
|
|||
#endif
|
||||
|
||||
/*
|
||||
@@ -2097,6 +2135,7 @@ static const struct board_info __initdat
|
||||
@@ -2098,6 +2136,7 @@ static const struct board_info __initdat
|
||||
&board_V2110,
|
||||
&board_ct536_ct5621,
|
||||
&board_96348A_122,
|
||||
|
|
|
@ -10,7 +10,7 @@ Subject: [PATCH 32/63] bcm63xx: add support for 96368MVWG board.
|
|||
|
||||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
@@ -2105,6 +2105,78 @@ static struct board_info __initdata boar
|
||||
@@ -2106,6 +2106,78 @@ static struct board_info __initdata boar
|
||||
#endif
|
||||
|
||||
/*
|
||||
|
@ -89,7 +89,7 @@ Subject: [PATCH 32/63] bcm63xx: add support for 96368MVWG board.
|
|||
* all boards
|
||||
*/
|
||||
static const struct board_info __initdata *bcm963xx_boards[] = {
|
||||
@@ -2153,6 +2225,10 @@ static const struct board_info __initdat
|
||||
@@ -2154,6 +2226,10 @@ static const struct board_info __initdat
|
||||
&board_HW553,
|
||||
&board_spw303v,
|
||||
#endif
|
||||
|
@ -100,7 +100,7 @@ Subject: [PATCH 32/63] bcm63xx: add support for 96368MVWG board.
|
|||
};
|
||||
|
||||
/*
|
||||
@@ -2324,12 +2400,25 @@ void __init board_prom_init(void)
|
||||
@@ -2325,12 +2401,25 @@ void __init board_prom_init(void)
|
||||
bcm63xx_pci_enabled = 1;
|
||||
if (BCMCPU_IS_6348())
|
||||
val |= GPIO_MODE_6348_G2_PCI;
|
||||
|
|
|
@ -9,7 +9,7 @@ Subject: [PATCH 33/63] bcm63xx: add support for 96368MVNgr board.
|
|||
|
||||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
@@ -2174,6 +2174,72 @@ static struct board_info __initdata boar
|
||||
@@ -2175,6 +2175,72 @@ static struct board_info __initdata boar
|
||||
.has_ohci0 = 1,
|
||||
.has_ehci0 = 1,
|
||||
};
|
||||
|
@ -82,7 +82,7 @@ Subject: [PATCH 33/63] bcm63xx: add support for 96368MVNgr board.
|
|||
#endif
|
||||
|
||||
/*
|
||||
@@ -2228,6 +2294,7 @@ static const struct board_info __initdat
|
||||
@@ -2229,6 +2295,7 @@ static const struct board_info __initdat
|
||||
|
||||
#ifdef CONFIG_BCM63XX_CPU_6368
|
||||
&board_96368mvwg,
|
||||
|
|
|
@ -9,7 +9,7 @@ Subject: [PATCH] MIPS: BCM63XX: add 96328avng reference board
|
|||
|
||||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
@@ -54,6 +54,80 @@
|
||||
@@ -55,6 +55,80 @@
|
||||
static struct board_info board;
|
||||
|
||||
/*
|
||||
|
@ -90,7 +90,7 @@ Subject: [PATCH] MIPS: BCM63XX: add 96328avng reference board
|
|||
* known 6338 boards
|
||||
*/
|
||||
#ifdef CONFIG_BCM63XX_CPU_6338
|
||||
@@ -2246,6 +2320,9 @@ static struct board_info __initdata boar
|
||||
@@ -2247,6 +2321,9 @@ static struct board_info __initdata boar
|
||||
* all boards
|
||||
*/
|
||||
static const struct board_info __initdata *bcm963xx_boards[] = {
|
||||
|
|
|
@ -9,7 +9,7 @@ Subject: [PATCH] MIPS: BCM63XX: add 963281TAN reference board
|
|||
|
||||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
@@ -125,6 +125,76 @@ static struct board_info __initdata boar
|
||||
@@ -126,6 +126,76 @@ static struct board_info __initdata boar
|
||||
},
|
||||
},
|
||||
};
|
||||
|
@ -86,7 +86,7 @@ Subject: [PATCH] MIPS: BCM63XX: add 963281TAN reference board
|
|||
#endif
|
||||
|
||||
/*
|
||||
@@ -2322,6 +2392,7 @@ static struct board_info __initdata boar
|
||||
@@ -2323,6 +2393,7 @@ static struct board_info __initdata boar
|
||||
static const struct board_info __initdata *bcm963xx_boards[] = {
|
||||
#ifdef CONFIG_BCM63XX_CPU_6328
|
||||
&board_96328avng,
|
||||
|
|
|
@ -10,7 +10,7 @@ Subject: [PATCH 70/79] MIPS: BCM63XX: Add board definition for D-Link
|
|||
|
||||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
@@ -195,6 +195,110 @@ static struct board_info __initdata boar
|
||||
@@ -196,6 +196,111 @@ static struct board_info __initdata boar
|
||||
|
||||
},
|
||||
};
|
||||
|
@ -25,6 +25,7 @@ Subject: [PATCH 70/79] MIPS: BCM63XX: Add board definition for D-Link
|
|||
+ .has_caldata = 1,
|
||||
+ .caldata = {
|
||||
+ {
|
||||
+ .vendor = PCI_VENDOR_ID_ATHEROS,
|
||||
+ .caldata_offset = 0x7d1000,
|
||||
+ .slot = 0,
|
||||
+ .led_pin = -1,
|
||||
|
@ -121,7 +122,7 @@ Subject: [PATCH 70/79] MIPS: BCM63XX: Add board definition for D-Link
|
|||
#endif
|
||||
|
||||
/*
|
||||
@@ -2393,6 +2497,7 @@ static const struct board_info __initdat
|
||||
@@ -2394,6 +2499,7 @@ static const struct board_info __initdat
|
||||
#ifdef CONFIG_BCM63XX_CPU_6328
|
||||
&board_96328avng,
|
||||
&board_963281TAN,
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
@@ -1335,6 +1335,57 @@ static struct board_info __initdata boar
|
||||
@@ -1337,6 +1337,57 @@ static struct board_info __initdata boar
|
||||
},
|
||||
};
|
||||
|
||||
|
@ -58,7 +58,7 @@
|
|||
#endif
|
||||
|
||||
/*
|
||||
@@ -2527,6 +2578,7 @@ static const struct board_info __initdat
|
||||
@@ -2529,6 +2580,7 @@ static const struct board_info __initdat
|
||||
&board_ct536_ct5621,
|
||||
&board_96348A_122,
|
||||
&board_CPVA502plus,
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
@@ -51,6 +51,13 @@
|
||||
@@ -52,6 +52,13 @@
|
||||
#define NB4_SPI_GPIO_CLK 6
|
||||
#define NB4_74HC64_GPIO(X) (NB4_74X164_GPIO_BASE + (X))
|
||||
|
||||
|
@ -14,7 +14,7 @@
|
|||
static struct board_info board;
|
||||
|
||||
/*
|
||||
@@ -2262,6 +2269,111 @@ static struct board_info __initdata boar
|
||||
@@ -2264,6 +2271,111 @@ static struct board_info __initdata boar
|
||||
.num_spis = ARRAY_SIZE(nb4_spi_devices),
|
||||
};
|
||||
|
||||
|
@ -126,7 +126,7 @@
|
|||
static struct board_info __initdata board_HW553 = {
|
||||
.name = "HW553",
|
||||
.expected_cpu_id = 0x6358,
|
||||
@@ -2593,6 +2705,7 @@ static const struct board_info __initdat
|
||||
@@ -2595,6 +2707,7 @@ static const struct board_info __initdat
|
||||
&board_nb4_ser_r2,
|
||||
&board_nb4_fxc_r1,
|
||||
&board_nb4_fxc_r2,
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
@@ -2513,6 +2513,71 @@ static struct board_info __initdata boar
|
||||
@@ -2515,6 +2515,71 @@ static struct board_info __initdata boar
|
||||
},
|
||||
}
|
||||
};
|
||||
|
@ -72,7 +72,7 @@
|
|||
#endif
|
||||
|
||||
/*
|
||||
@@ -2708,6 +2773,7 @@ static const struct board_info __initdat
|
||||
@@ -2710,6 +2775,7 @@ static const struct board_info __initdat
|
||||
&board_ct6373_1,
|
||||
&board_HW553,
|
||||
&board_spw303v,
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
#include <asm/addrspace.h>
|
||||
#include <bcm63xx_board.h>
|
||||
#include <bcm63xx_cpu.h>
|
||||
@@ -50,6 +51,8 @@
|
||||
@@ -51,6 +52,8 @@
|
||||
#define NB4_SPI_GPIO_MOSI 7
|
||||
#define NB4_SPI_GPIO_CLK 6
|
||||
#define NB4_74HC64_GPIO(X) (NB4_74X164_GPIO_BASE + (X))
|
||||
|
@ -17,7 +17,7 @@
|
|||
|
||||
#define CT6373_PID_OFFSET 0xff80
|
||||
#define CT6373_74X164_GPIO_BASE 64
|
||||
@@ -2580,6 +2583,103 @@ static struct board_info __initdata boar
|
||||
@@ -2582,6 +2585,103 @@ static struct board_info __initdata boar
|
||||
};
|
||||
#endif
|
||||
|
||||
|
@ -121,7 +121,7 @@
|
|||
/*
|
||||
* known 6368 boards
|
||||
*/
|
||||
@@ -2776,6 +2876,10 @@ static const struct board_info __initdat
|
||||
@@ -2778,6 +2878,10 @@ static const struct board_info __initdat
|
||||
&board_DVAG3810BN,
|
||||
#endif
|
||||
|
||||
|
@ -132,7 +132,7 @@
|
|||
#ifdef CONFIG_BCM63XX_CPU_6368
|
||||
&board_96368mvwg,
|
||||
&board_96368mvngr,
|
||||
@@ -2843,6 +2947,11 @@ static void __init boardid_fixup(u8 *boo
|
||||
@@ -2845,6 +2949,11 @@ static void __init boardid_fixup(u8 *boo
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
@@ -1011,6 +1011,55 @@ static struct board_info __initdata boar
|
||||
@@ -1013,6 +1013,55 @@ static struct board_info __initdata boar
|
||||
.has_ehci0 = 1,
|
||||
};
|
||||
|
||||
|
@ -56,7 +56,7 @@
|
|||
static struct board_info __initdata board_rta1025w_16 = {
|
||||
.name = "RTA1025W_16",
|
||||
.expected_cpu_id = 0x6348,
|
||||
@@ -2844,6 +2893,7 @@ static const struct board_info __initdat
|
||||
@@ -2846,6 +2895,7 @@ static const struct board_info __initdat
|
||||
&board_96348gw_10,
|
||||
&board_96348gw_11,
|
||||
&board_FAST2404,
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
@@ -206,6 +206,125 @@ static struct board_info __initdata boar
|
||||
@@ -207,6 +207,125 @@ static struct board_info __initdata boar
|
||||
},
|
||||
};
|
||||
|
||||
|
@ -126,7 +126,7 @@
|
|||
static struct board_info __initdata board_dsl_274xb_f1 = {
|
||||
.name = "AW4339U",
|
||||
.expected_cpu_id = 0x6328,
|
||||
@@ -2874,6 +2993,7 @@ static const struct board_info __initdat
|
||||
@@ -2876,6 +2995,7 @@ static const struct board_info __initdat
|
||||
#ifdef CONFIG_BCM63XX_CPU_6328
|
||||
&board_96328avng,
|
||||
&board_963281TAN,
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
@@ -136,6 +136,78 @@ static struct board_info __initdata boar
|
||||
@@ -137,6 +137,78 @@ static struct board_info __initdata boar
|
||||
},
|
||||
};
|
||||
|
||||
|
@ -79,7 +79,7 @@
|
|||
static struct board_info __initdata board_963281TAN = {
|
||||
.name = "963281TAN",
|
||||
.expected_cpu_id = 0x6328,
|
||||
@@ -2992,6 +3064,7 @@ static struct board_info __initdata boar
|
||||
@@ -2994,6 +3066,7 @@ static struct board_info __initdata boar
|
||||
static const struct board_info __initdata *bcm963xx_boards[] = {
|
||||
#ifdef CONFIG_BCM63XX_CPU_6328
|
||||
&board_96328avng,
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
@@ -136,6 +136,72 @@ static struct board_info __initdata boar
|
||||
@@ -137,6 +137,72 @@ static struct board_info __initdata boar
|
||||
},
|
||||
};
|
||||
|
||||
|
@ -73,7 +73,7 @@
|
|||
static struct board_info __initdata board_96328A_1441N1 = {
|
||||
.name = "96328A-1441N1",
|
||||
.expected_cpu_id = 0x6328,
|
||||
@@ -3064,6 +3130,7 @@ static struct board_info __initdata boar
|
||||
@@ -3066,6 +3132,7 @@ static struct board_info __initdata boar
|
||||
static const struct board_info __initdata *bcm963xx_boards[] = {
|
||||
#ifdef CONFIG_BCM63XX_CPU_6328
|
||||
&board_96328avng,
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
@@ -1919,6 +1919,99 @@ static struct board_info __initdata boar
|
||||
@@ -1921,6 +1921,99 @@ static struct board_info __initdata boar
|
||||
|
||||
.has_ohci0 = 1,
|
||||
.has_ehci0 = 1,
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
@@ -1376,6 +1376,19 @@ static struct board_info __initdata boar
|
||||
@@ -1378,6 +1378,19 @@ static struct board_info __initdata boar
|
||||
},
|
||||
|
||||
.has_ohci0 = 1,
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
@@ -844,6 +844,17 @@ static struct board_info __initdata boar
|
||||
@@ -846,6 +846,17 @@ static struct board_info __initdata boar
|
||||
.active_low = 1,
|
||||
},
|
||||
},
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
@@ -736,6 +736,53 @@ static struct board_info __initdata boar
|
||||
@@ -738,6 +738,53 @@ static struct board_info __initdata boar
|
||||
|
||||
.has_uart0 = 1,
|
||||
};
|
||||
|
@ -54,7 +54,7 @@
|
|||
#endif
|
||||
|
||||
/*
|
||||
@@ -3261,6 +3308,7 @@ static const struct board_info __initdat
|
||||
@@ -3263,6 +3310,7 @@ static const struct board_info __initdat
|
||||
#endif
|
||||
#ifdef CONFIG_BCM63XX_CPU_6345
|
||||
&board_96345gw2,
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
#include <linux/spi/spi.h>
|
||||
#include <linux/spi/spi_gpio.h>
|
||||
#include <linux/spi/74x164.h>
|
||||
@@ -3366,7 +3367,7 @@ static const struct board_info __initdat
|
||||
@@ -3368,7 +3369,7 @@ static const struct board_info __initdat
|
||||
* bcm4318 WLAN work
|
||||
*/
|
||||
#ifdef CONFIG_SSB_PCIHOST
|
||||
|
@ -17,7 +17,7 @@
|
|||
.revision = 0x02,
|
||||
.board_rev = 0x17,
|
||||
.country_code = 0x0,
|
||||
@@ -3386,6 +3387,7 @@ static struct ssb_sprom bcm63xx_sprom =
|
||||
@@ -3388,6 +3389,7 @@ static struct ssb_sprom bcm63xx_sprom =
|
||||
.boardflags_lo = 0x2848,
|
||||
.boardflags_hi = 0x0000,
|
||||
};
|
||||
|
|
|
@ -0,0 +1,188 @@
|
|||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
@@ -34,6 +34,7 @@
|
||||
#include <board_bcm963xx.h>
|
||||
#include <linux/bcm963xx_tag.h>
|
||||
#include <pci_ath9k_fixup.h>
|
||||
+#include <pci_rt2x00_fixup.h>
|
||||
|
||||
#define PFX "board_bcm963xx: "
|
||||
|
||||
@@ -982,9 +983,19 @@ int __init board_register_devices(void)
|
||||
}
|
||||
|
||||
/* register any fixups */
|
||||
- for (i = 0; i < board.has_caldata; i++)
|
||||
- pci_enable_ath9k_fixup(board.caldata[i].slot, board.caldata[i].caldata_offset,
|
||||
- board.caldata[i].endian_check, board.caldata[i].led_pin);
|
||||
+ for (i = 0; i < board.has_caldata; i++) {
|
||||
+ switch (board.caldata[i].vendor) {
|
||||
+ case PCI_VENDOR_ID_ATHEROS:
|
||||
+ pci_enable_ath9k_fixup(board.caldata[i].slot,
|
||||
+ board.caldata[i].caldata_offset, board.caldata[i].endian_check,
|
||||
+ board.caldata[i].led_pin);
|
||||
+ break;
|
||||
+ case PCI_VENDOR_ID_RALINK:
|
||||
+ pci_enable_rt2x00_fixup(board.caldata[i].slot,
|
||||
+ board.caldata[i].eeprom);
|
||||
+ break;
|
||||
+ }
|
||||
+ }
|
||||
|
||||
return 0;
|
||||
}
|
||||
--- a/arch/mips/bcm63xx/dev-flash.c
|
||||
+++ b/arch/mips/bcm63xx/dev-flash.c
|
||||
@@ -146,7 +146,7 @@ static int __init bcm63xx_detect_flash_t
|
||||
return 0;
|
||||
}
|
||||
|
||||
-int __init bcm63xx_flash_register(int num_caldata, struct ath9k_caldata *caldata)
|
||||
+int __init bcm63xx_flash_register(int num_caldata, struct bcm63xx_caldata *caldata)
|
||||
{
|
||||
u32 val;
|
||||
unsigned int i;
|
||||
--- a/arch/mips/bcm63xx/Makefile
|
||||
+++ b/arch/mips/bcm63xx/Makefile
|
||||
@@ -1,7 +1,8 @@
|
||||
obj-y += clk.o cpu.o cs.o gpio.o irq.o nvram.o prom.o setup.o \
|
||||
timer.o dev-dsp.o dev-enet.o dev-flash.o dev-hsspi.o \
|
||||
dev-pcmcia.o dev-rng.o dev-spi.o dev-uart.o dev-usb-ehci.o \
|
||||
- dev-usb-ohci.o dev-wdt.o pci-ath9k-fixup.o
|
||||
+ dev-usb-ohci.o dev-wdt.o pci-ath9k-fixup.o \
|
||||
+ pci-rt2x00-fixup.o
|
||||
obj-$(CONFIG_EARLY_PRINTK) += early_printk.o
|
||||
|
||||
obj-y += boards/
|
||||
--- /dev/null
|
||||
+++ b/arch/mips/bcm63xx/pci-rt2x00-fixup.c
|
||||
@@ -0,0 +1,71 @@
|
||||
+/*
|
||||
+ * Broadcom BCM63XX RT2x00 EEPROM fixup helper.
|
||||
+ *
|
||||
+ * Copyright (C) 2012 Álvaro Fernández Rojas <noltari@gmail.com>
|
||||
+ *
|
||||
+ * Based on
|
||||
+ *
|
||||
+ * Broadcom BCM63XX Ath9k EEPROM fixup helper.
|
||||
+ *
|
||||
+ * Copyright (C) 2012 Jonas Gorski <jonas.gorski@gmail.com>
|
||||
+ *
|
||||
+ * This program is free software; you can redistribute it and/or modify it
|
||||
+ * under the terms of the GNU General Public License version 2 as published
|
||||
+ * by the Free Software Foundation.
|
||||
+ */
|
||||
+
|
||||
+#include <linux/pci.h>
|
||||
+#include <linux/platform_device.h>
|
||||
+#include <linux/rt2x00_platform.h>
|
||||
+
|
||||
+#include <bcm63xx_nvram.h>
|
||||
+#include <pci_rt2x00_fixup.h>
|
||||
+
|
||||
+struct rt2x00_fixup {
|
||||
+ unsigned slot;
|
||||
+ u8 mac[ETH_ALEN];
|
||||
+ struct rt2x00_platform_data pdata;
|
||||
+};
|
||||
+
|
||||
+static int rt2x00_num_fixups;
|
||||
+static struct rt2x00_fixup rt2x00_fixups[2] = {
|
||||
+ {
|
||||
+ .slot = 255,
|
||||
+ },
|
||||
+ {
|
||||
+ .slot = 255,
|
||||
+ },
|
||||
+};
|
||||
+
|
||||
+static void rt2x00_pci_fixup(struct pci_dev *dev)
|
||||
+{
|
||||
+ unsigned i;
|
||||
+ struct rt2x00_platform_data *pdata = NULL;
|
||||
+
|
||||
+ for (i = 0; i < rt2x00_num_fixups; i++) {
|
||||
+ if (rt2x00_fixups[i].slot != PCI_SLOT(dev->devfn))
|
||||
+ continue;
|
||||
+
|
||||
+ pdata = &rt2x00_fixups[i].pdata;
|
||||
+ break;
|
||||
+ }
|
||||
+
|
||||
+ dev->dev.platform_data = pdata;
|
||||
+}
|
||||
+DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_RALINK, PCI_ANY_ID, rt2x00_pci_fixup);
|
||||
+
|
||||
+void __init pci_enable_rt2x00_fixup(unsigned slot, char* eeprom)
|
||||
+{
|
||||
+ if (rt2x00_num_fixups >= ARRAY_SIZE(rt2x00_fixups))
|
||||
+ return;
|
||||
+
|
||||
+ rt2x00_fixups[rt2x00_num_fixups].slot = slot;
|
||||
+ rt2x00_fixups[rt2x00_num_fixups].pdata.eeprom_file_name = kstrdup(eeprom, GFP_KERNEL);
|
||||
+
|
||||
+ if (bcm63xx_nvram_get_mac_address(rt2x00_fixups[rt2x00_num_fixups].mac))
|
||||
+ return;
|
||||
+
|
||||
+ rt2x00_fixups[rt2x00_num_fixups].pdata.mac_address = rt2x00_fixups[rt2x00_num_fixups].mac;
|
||||
+ rt2x00_num_fixups++;
|
||||
+}
|
||||
+
|
||||
--- a/arch/mips/include/asm/mach-bcm63xx/bcm63xx_dev_flash.h
|
||||
+++ b/arch/mips/include/asm/mach-bcm63xx/bcm63xx_dev_flash.h
|
||||
@@ -11,6 +11,6 @@ enum {
|
||||
|
||||
extern int bcm63xx_attached_flash;
|
||||
|
||||
-int __init bcm63xx_flash_register(int num_caldata, struct ath9k_caldata *caldata);
|
||||
+int __init bcm63xx_flash_register(int num_caldata, struct bcm63xx_caldata *caldata);
|
||||
|
||||
#endif /* __BCM63XX_FLASH_H */
|
||||
--- a/arch/mips/include/asm/mach-bcm63xx/board_bcm963xx.h
|
||||
+++ b/arch/mips/include/asm/mach-bcm63xx/board_bcm963xx.h
|
||||
@@ -8,6 +8,7 @@
|
||||
#include <bcm63xx_dev_enet.h>
|
||||
#include <bcm63xx_dev_dsp.h>
|
||||
#include <pci_ath9k_fixup.h>
|
||||
+#include <pci_rt2x00_fixup.h>
|
||||
|
||||
/*
|
||||
* flash mapping
|
||||
@@ -15,11 +16,15 @@
|
||||
#define BCM963XX_CFE_VERSION_OFFSET 0x570
|
||||
#define BCM963XX_NVRAM_OFFSET 0x580
|
||||
|
||||
-struct ath9k_caldata {
|
||||
+struct bcm63xx_caldata {
|
||||
+ unsigned int vendor;
|
||||
unsigned int slot;
|
||||
u32 caldata_offset;
|
||||
+ /* Atheros */
|
||||
unsigned int endian_check:1;
|
||||
int led_pin;
|
||||
+ /* Ralink */
|
||||
+ char* eeprom;
|
||||
};
|
||||
|
||||
/*
|
||||
@@ -43,7 +48,7 @@ struct board_info {
|
||||
unsigned int has_caldata:2;
|
||||
|
||||
/* wifi calibration data config */
|
||||
- struct ath9k_caldata caldata[2];
|
||||
+ struct bcm63xx_caldata caldata[2];
|
||||
|
||||
/* ethernet config */
|
||||
struct bcm63xx_enet_platform_data enet0;
|
||||
--- /dev/null
|
||||
+++ b/arch/mips/include/asm/mach-bcm63xx/pci_rt2x00_fixup.h
|
||||
@@ -0,0 +1,9 @@
|
||||
+#ifndef _PCI_RT2X00_FIXUP
|
||||
+#define _PCI_RT2X00_FIXUP
|
||||
+
|
||||
+#define PCI_VENDOR_ID_RALINK 0x1814
|
||||
+
|
||||
+void pci_enable_rt2x00_fixup(unsigned slot, char* eeprom) __init;
|
||||
+
|
||||
+#endif /* _PCI_RT2X00_FIXUP */
|
||||
+
|
|
@ -1,6 +1,6 @@
|
|||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
@@ -511,6 +511,54 @@ static struct board_info __initdata boar
|
||||
@@ -512,6 +512,54 @@ static struct board_info __initdata boar
|
||||
|
||||
.has_ohci0 = 1,
|
||||
};
|
||||
|
@ -55,7 +55,7 @@
|
|||
#endif
|
||||
|
||||
/*
|
||||
@@ -685,6 +733,7 @@ static const struct board_info __initdat
|
||||
@@ -686,6 +734,7 @@ static const struct board_info __initdat
|
||||
&board_DV201AMR,
|
||||
&board_96348gw_a,
|
||||
&board_rta1025w_16,
|
||||
|
|
|
@ -9,7 +9,7 @@
|
|||
#include <asm/addrspace.h>
|
||||
#include <bcm63xx_board.h>
|
||||
#include <bcm63xx_cpu.h>
|
||||
@@ -43,6 +45,12 @@
|
||||
@@ -44,6 +46,12 @@
|
||||
#define CFE_OFFSET_64K 0x10000
|
||||
#define CFE_OFFSET_128K 0x20000
|
||||
|
||||
|
@ -22,7 +22,7 @@
|
|||
static struct board_info board;
|
||||
|
||||
/*
|
||||
@@ -708,6 +716,586 @@ static struct board_info __initdata boar
|
||||
@@ -709,6 +717,586 @@ static struct board_info __initdata boar
|
||||
|
||||
.has_ohci0 = 1,
|
||||
};
|
||||
|
@ -609,7 +609,7 @@
|
|||
#endif
|
||||
|
||||
/*
|
||||
@@ -741,6 +1329,11 @@ static const struct board_info __initdat
|
||||
@@ -742,6 +1330,11 @@ static const struct board_info __initdat
|
||||
&board_96358vw2,
|
||||
&board_AGPFS0,
|
||||
&board_DWVS0,
|
||||
|
@ -621,7 +621,7 @@
|
|||
#endif
|
||||
};
|
||||
|
||||
@@ -795,6 +1388,16 @@ static void __init boardid_fixup(u8 *boo
|
||||
@@ -796,6 +1389,16 @@ static void __init boardid_fixup(u8 *boo
|
||||
struct bcm_tag *tag = (struct bcm_tag *)(boot_addr + CFE_OFFSET_64K);
|
||||
char *board_name = (char *)bcm63xx_nvram_get_name();
|
||||
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
@@ -182,6 +182,38 @@ static struct board_info __initdata boar
|
||||
@@ -183,6 +183,38 @@ static struct board_info __initdata boar
|
||||
},
|
||||
},
|
||||
};
|
||||
|
@ -39,7 +39,7 @@
|
|||
#endif
|
||||
|
||||
/*
|
||||
@@ -1308,6 +1340,7 @@ static const struct board_info __initdat
|
||||
@@ -1309,6 +1341,7 @@ static const struct board_info __initdat
|
||||
#ifdef CONFIG_BCM63XX_CPU_6338
|
||||
&board_96338gw,
|
||||
&board_96338w,
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
@@ -705,6 +705,96 @@ static struct board_info __initdata boar
|
||||
@@ -706,6 +706,96 @@ static struct board_info __initdata boar
|
||||
},
|
||||
};
|
||||
|
||||
|
@ -97,7 +97,7 @@
|
|||
static struct board_info __initdata board_AGPFS0 = {
|
||||
.name = "AGPF-S0",
|
||||
.expected_cpu_id = 0x6358,
|
||||
@@ -1361,6 +1451,7 @@ static const struct board_info __initdat
|
||||
@@ -1362,6 +1452,7 @@ static const struct board_info __initdat
|
||||
&board_96358vw,
|
||||
&board_96358vw2,
|
||||
&board_AGPFS0,
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
@@ -839,6 +839,59 @@ static struct board_info __initdata boar
|
||||
@@ -840,6 +840,59 @@ static struct board_info __initdata boar
|
||||
.has_ohci0 = 1,
|
||||
};
|
||||
|
||||
|
@ -60,7 +60,7 @@
|
|||
struct spi_gpio_platform_data nb4_spi_gpio_data = {
|
||||
.sck = NB4_SPI_GPIO_CLK,
|
||||
.mosi = NB4_SPI_GPIO_MOSI,
|
||||
@@ -1453,6 +1506,7 @@ static const struct board_info __initdat
|
||||
@@ -1454,6 +1507,7 @@ static const struct board_info __initdat
|
||||
&board_AGPFS0,
|
||||
&board_CPVA642,
|
||||
&board_DWVS0,
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
@@ -599,6 +599,67 @@ static struct board_info __initdata boar
|
||||
@@ -600,6 +600,67 @@ static struct board_info __initdata boar
|
||||
},
|
||||
},
|
||||
};
|
||||
|
@ -68,7 +68,7 @@
|
|||
#endif
|
||||
|
||||
/*
|
||||
@@ -1498,6 +1559,7 @@ static const struct board_info __initdat
|
||||
@@ -1499,6 +1560,7 @@ static const struct board_info __initdat
|
||||
&board_96348gw_a,
|
||||
&board_rta1025w_16,
|
||||
&board_96348_D4PW,
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
@@ -468,6 +468,112 @@ static struct board_info __initdata boar
|
||||
@@ -469,6 +469,112 @@ static struct board_info __initdata boar
|
||||
},
|
||||
};
|
||||
|
||||
|
@ -113,7 +113,7 @@
|
|||
static struct board_info __initdata board_FAST2404 = {
|
||||
.name = "F@ST2404",
|
||||
.expected_cpu_id = 0x6348,
|
||||
@@ -1552,6 +1658,8 @@ static const struct board_info __initdat
|
||||
@@ -1553,6 +1659,8 @@ static const struct board_info __initdat
|
||||
#ifdef CONFIG_BCM63XX_CPU_6348
|
||||
&board_96348r,
|
||||
&board_96348gw,
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
@@ -766,6 +766,76 @@ static struct board_info __initdata boar
|
||||
@@ -767,6 +767,76 @@ static struct board_info __initdata boar
|
||||
},
|
||||
},
|
||||
};
|
||||
|
@ -77,7 +77,7 @@
|
|||
#endif
|
||||
|
||||
/*
|
||||
@@ -1668,6 +1738,7 @@ static const struct board_info __initdat
|
||||
@@ -1669,6 +1739,7 @@ static const struct board_info __initdat
|
||||
&board_rta1025w_16,
|
||||
&board_96348_D4PW,
|
||||
&board_spw500v,
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
@@ -1708,6 +1708,80 @@ static struct board_info __initdata boar
|
||||
@@ -1709,6 +1709,80 @@ static struct board_info __initdata boar
|
||||
.spis = nb4_spi_devices,
|
||||
.num_spis = ARRAY_SIZE(nb4_spi_devices),
|
||||
};
|
||||
|
@ -81,7 +81,7 @@
|
|||
#endif
|
||||
|
||||
/*
|
||||
@@ -1753,6 +1827,7 @@ static const struct board_info __initdat
|
||||
@@ -1754,6 +1828,7 @@ static const struct board_info __initdat
|
||||
&board_nb4_ser_r2,
|
||||
&board_nb4_fxc_r1,
|
||||
&board_nb4_fxc_r2,
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
@@ -214,6 +214,43 @@ static struct board_info __initdata boar
|
||||
@@ -215,6 +215,43 @@ static struct board_info __initdata boar
|
||||
},
|
||||
},
|
||||
};
|
||||
|
@ -44,7 +44,7 @@
|
|||
#endif
|
||||
|
||||
/*
|
||||
@@ -1795,6 +1832,7 @@ static const struct board_info __initdat
|
||||
@@ -1796,6 +1833,7 @@ static const struct board_info __initdat
|
||||
&board_96338gw,
|
||||
&board_96338w,
|
||||
&board_96338w2_e7t,
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
@@ -1819,6 +1819,72 @@ static struct board_info __initdata boar
|
||||
@@ -1820,6 +1820,72 @@ static struct board_info __initdata boar
|
||||
},
|
||||
},
|
||||
};
|
||||
|
@ -73,7 +73,7 @@
|
|||
#endif
|
||||
|
||||
/*
|
||||
@@ -1866,6 +1932,7 @@ static const struct board_info __initdat
|
||||
@@ -1867,6 +1933,7 @@ static const struct board_info __initdat
|
||||
&board_nb4_fxc_r1,
|
||||
&board_nb4_fxc_r2,
|
||||
&board_HW553,
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
@@ -873,6 +873,63 @@ static struct board_info __initdata boar
|
||||
@@ -874,6 +874,63 @@ static struct board_info __initdata boar
|
||||
},
|
||||
},
|
||||
};
|
||||
|
@ -64,7 +64,7 @@
|
|||
#endif
|
||||
|
||||
/*
|
||||
@@ -1917,6 +1974,7 @@ static const struct board_info __initdat
|
||||
@@ -1918,6 +1975,7 @@ static const struct board_info __initdat
|
||||
&board_96348_D4PW,
|
||||
&board_spw500v,
|
||||
&board_96348sv,
|
||||
|
@ -72,7 +72,7 @@
|
|||
#endif
|
||||
|
||||
#ifdef CONFIG_BCM63XX_CPU_6358
|
||||
@@ -2037,6 +2095,23 @@ void __init board_prom_init(void)
|
||||
@@ -2038,6 +2096,23 @@ void __init board_prom_init(void)
|
||||
val &= MPI_CSBASE_BASE_MASK;
|
||||
}
|
||||
boot_addr = (u8 *)KSEG1ADDR(val);
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
@@ -437,6 +437,62 @@ static struct board_info __initdata boar
|
||||
@@ -438,6 +438,62 @@ static struct board_info __initdata boar
|
||||
},
|
||||
};
|
||||
|
||||
|
@ -63,7 +63,7 @@
|
|||
static struct board_info __initdata board_96348gw = {
|
||||
.name = "96348GW",
|
||||
.expected_cpu_id = 0x6348,
|
||||
@@ -1975,6 +2031,7 @@ static const struct board_info __initdat
|
||||
@@ -1976,6 +2032,7 @@ static const struct board_info __initdat
|
||||
&board_spw500v,
|
||||
&board_96348sv,
|
||||
&board_V2500V_BB,
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
@@ -493,6 +493,49 @@ static struct board_info __initdata boar
|
||||
@@ -494,6 +494,49 @@ static struct board_info __initdata boar
|
||||
};
|
||||
|
||||
|
||||
|
@ -50,7 +50,7 @@
|
|||
static struct board_info __initdata board_96348gw = {
|
||||
.name = "96348GW",
|
||||
.expected_cpu_id = 0x6348,
|
||||
@@ -2032,6 +2075,7 @@ static const struct board_info __initdat
|
||||
@@ -2033,6 +2076,7 @@ static const struct board_info __initdat
|
||||
&board_96348sv,
|
||||
&board_V2500V_BB,
|
||||
&board_V2110,
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
@@ -1252,6 +1252,8 @@ static struct board_info __initdata boar
|
||||
@@ -1253,6 +1253,8 @@ static struct board_info __initdata boar
|
||||
.name = "DWV-S0",
|
||||
.expected_cpu_id = 0x6358,
|
||||
|
||||
|
@ -9,7 +9,7 @@
|
|||
.has_enet0 = 1,
|
||||
.has_enet1 = 1,
|
||||
.has_pci = 1,
|
||||
@@ -1267,6 +1269,7 @@ static struct board_info __initdata boar
|
||||
@@ -1268,6 +1270,7 @@ static struct board_info __initdata boar
|
||||
},
|
||||
|
||||
.has_ohci0 = 1,
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
@@ -536,6 +536,67 @@ static struct board_info __initdata boar
|
||||
@@ -537,6 +537,67 @@ static struct board_info __initdata boar
|
||||
},
|
||||
};
|
||||
|
||||
|
@ -68,7 +68,7 @@
|
|||
static struct board_info __initdata board_96348gw = {
|
||||
.name = "96348GW",
|
||||
.expected_cpu_id = 0x6348,
|
||||
@@ -2079,6 +2140,7 @@ static const struct board_info __initdat
|
||||
@@ -2080,6 +2141,7 @@ static const struct board_info __initdat
|
||||
&board_V2500V_BB,
|
||||
&board_V2110,
|
||||
&board_ct536_ct5621,
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
@@ -799,6 +799,7 @@ static struct board_info __initdata boar
|
||||
@@ -800,6 +800,7 @@ static struct board_info __initdata boar
|
||||
.name = "RTA1025W_16",
|
||||
.expected_cpu_id = 0x6348,
|
||||
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
@@ -1091,6 +1091,44 @@ static struct board_info __initdata boar
|
||||
@@ -1092,6 +1092,44 @@ static struct board_info __initdata boar
|
||||
},
|
||||
},
|
||||
};
|
||||
|
@ -45,7 +45,7 @@
|
|||
#endif
|
||||
|
||||
/*
|
||||
@@ -2142,6 +2180,7 @@ static const struct board_info __initdat
|
||||
@@ -2143,6 +2181,7 @@ static const struct board_info __initdat
|
||||
&board_V2110,
|
||||
&board_ct536_ct5621,
|
||||
&board_96348A_122,
|
||||
|
|
|
@ -10,7 +10,7 @@ Subject: [PATCH 32/63] bcm63xx: add support for 96368MVWG board.
|
|||
|
||||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
@@ -2147,6 +2147,78 @@ static struct board_info __initdata boar
|
||||
@@ -2148,6 +2148,78 @@ static struct board_info __initdata boar
|
||||
#endif
|
||||
|
||||
/*
|
||||
|
@ -89,7 +89,7 @@ Subject: [PATCH 32/63] bcm63xx: add support for 96368MVWG board.
|
|||
* all boards
|
||||
*/
|
||||
static const struct board_info __initdata *bcm963xx_boards[] = {
|
||||
@@ -2198,6 +2270,10 @@ static const struct board_info __initdat
|
||||
@@ -2199,6 +2271,10 @@ static const struct board_info __initdat
|
||||
&board_HW553,
|
||||
&board_spw303v,
|
||||
#endif
|
||||
|
@ -100,7 +100,7 @@ Subject: [PATCH 32/63] bcm63xx: add support for 96368MVWG board.
|
|||
};
|
||||
|
||||
/*
|
||||
@@ -2369,12 +2445,25 @@ void __init board_prom_init(void)
|
||||
@@ -2370,12 +2446,25 @@ void __init board_prom_init(void)
|
||||
bcm63xx_pci_enabled = 1;
|
||||
if (BCMCPU_IS_6348())
|
||||
val |= GPIO_MODE_6348_G2_PCI;
|
||||
|
|
|
@ -9,7 +9,7 @@ Subject: [PATCH 33/63] bcm63xx: add support for 96368MVNgr board.
|
|||
|
||||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
@@ -2216,6 +2216,72 @@ static struct board_info __initdata boar
|
||||
@@ -2217,6 +2217,72 @@ static struct board_info __initdata boar
|
||||
.has_ohci0 = 1,
|
||||
.has_ehci0 = 1,
|
||||
};
|
||||
|
@ -82,7 +82,7 @@ Subject: [PATCH 33/63] bcm63xx: add support for 96368MVNgr board.
|
|||
#endif
|
||||
|
||||
/*
|
||||
@@ -2273,6 +2339,7 @@ static const struct board_info __initdat
|
||||
@@ -2274,6 +2340,7 @@ static const struct board_info __initdat
|
||||
|
||||
#ifdef CONFIG_BCM63XX_CPU_6368
|
||||
&board_96368mvwg,
|
||||
|
|
|
@ -9,7 +9,7 @@ Subject: [PATCH] MIPS: BCM63XX: add 96328avng reference board
|
|||
|
||||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
@@ -64,13 +64,45 @@ static struct board_info __initdata boar
|
||||
@@ -65,13 +65,45 @@ static struct board_info __initdata boar
|
||||
.has_uart0 = 1,
|
||||
.has_pci = 1,
|
||||
|
||||
|
@ -56,7 +56,7 @@ Subject: [PATCH] MIPS: BCM63XX: add 96328avng reference board
|
|||
.name = "96328avng::power",
|
||||
.gpio = 4,
|
||||
.active_low = 1,
|
||||
@@ -87,7 +119,7 @@ static struct board_info __initdata boar
|
||||
@@ -88,7 +120,7 @@ static struct board_info __initdata boar
|
||||
.active_low = 1,
|
||||
},
|
||||
{
|
||||
|
|
|
@ -9,7 +9,7 @@ Subject: [PATCH] MIPS: BCM63XX: add 963281TAN reference board
|
|||
|
||||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
@@ -125,6 +125,76 @@ static struct board_info __initdata boar
|
||||
@@ -126,6 +126,76 @@ static struct board_info __initdata boar
|
||||
},
|
||||
},
|
||||
};
|
||||
|
@ -86,7 +86,7 @@ Subject: [PATCH] MIPS: BCM63XX: add 963281TAN reference board
|
|||
#endif
|
||||
|
||||
/*
|
||||
@@ -2322,6 +2392,7 @@ static struct board_info __initdata boar
|
||||
@@ -2323,6 +2393,7 @@ static struct board_info __initdata boar
|
||||
static const struct board_info __initdata *bcm963xx_boards[] = {
|
||||
#ifdef CONFIG_BCM63XX_CPU_6328
|
||||
&board_96328avng,
|
||||
|
|
|
@ -10,7 +10,7 @@ Subject: [PATCH 70/79] MIPS: BCM63XX: Add board definition for D-Link
|
|||
|
||||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
@@ -195,6 +195,110 @@ static struct board_info __initdata boar
|
||||
@@ -196,6 +196,111 @@ static struct board_info __initdata boar
|
||||
|
||||
},
|
||||
};
|
||||
|
@ -25,6 +25,7 @@ Subject: [PATCH 70/79] MIPS: BCM63XX: Add board definition for D-Link
|
|||
+ .has_caldata = 1,
|
||||
+ .caldata = {
|
||||
+ {
|
||||
+ .vendor = PCI_VENDOR_ID_ATHEROS,
|
||||
+ .caldata_offset = 0x7d1000,
|
||||
+ .slot = 0,
|
||||
+ .led_pin = -1,
|
||||
|
@ -121,7 +122,7 @@ Subject: [PATCH 70/79] MIPS: BCM63XX: Add board definition for D-Link
|
|||
#endif
|
||||
|
||||
/*
|
||||
@@ -2393,6 +2497,7 @@ static const struct board_info __initdat
|
||||
@@ -2394,6 +2499,7 @@ static const struct board_info __initdat
|
||||
#ifdef CONFIG_BCM63XX_CPU_6328
|
||||
&board_96328avng,
|
||||
&board_963281TAN,
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
@@ -1335,6 +1335,57 @@ static struct board_info __initdata boar
|
||||
@@ -1337,6 +1337,57 @@ static struct board_info __initdata boar
|
||||
},
|
||||
};
|
||||
|
||||
|
@ -58,7 +58,7 @@
|
|||
#endif
|
||||
|
||||
/*
|
||||
@@ -2527,6 +2578,7 @@ static const struct board_info __initdat
|
||||
@@ -2529,6 +2580,7 @@ static const struct board_info __initdat
|
||||
&board_ct536_ct5621,
|
||||
&board_96348A_122,
|
||||
&board_CPVA502plus,
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
@@ -51,6 +51,13 @@
|
||||
@@ -52,6 +52,13 @@
|
||||
#define NB4_SPI_GPIO_CLK 6
|
||||
#define NB4_74HC64_GPIO(X) (NB4_74X164_GPIO_BASE + (X))
|
||||
|
||||
|
@ -14,7 +14,7 @@
|
|||
static struct board_info board;
|
||||
|
||||
/*
|
||||
@@ -2262,6 +2269,111 @@ static struct board_info __initdata boar
|
||||
@@ -2264,6 +2271,111 @@ static struct board_info __initdata boar
|
||||
.num_spis = ARRAY_SIZE(nb4_spi_devices),
|
||||
};
|
||||
|
||||
|
@ -126,7 +126,7 @@
|
|||
static struct board_info __initdata board_HW553 = {
|
||||
.name = "HW553",
|
||||
.expected_cpu_id = 0x6358,
|
||||
@@ -2593,6 +2705,7 @@ static const struct board_info __initdat
|
||||
@@ -2595,6 +2707,7 @@ static const struct board_info __initdat
|
||||
&board_nb4_ser_r2,
|
||||
&board_nb4_fxc_r1,
|
||||
&board_nb4_fxc_r2,
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
@@ -2513,6 +2513,71 @@ static struct board_info __initdata boar
|
||||
@@ -2515,6 +2515,71 @@ static struct board_info __initdata boar
|
||||
},
|
||||
}
|
||||
};
|
||||
|
@ -72,7 +72,7 @@
|
|||
#endif
|
||||
|
||||
/*
|
||||
@@ -2708,6 +2773,7 @@ static const struct board_info __initdat
|
||||
@@ -2710,6 +2775,7 @@ static const struct board_info __initdat
|
||||
&board_ct6373_1,
|
||||
&board_HW553,
|
||||
&board_spw303v,
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
#include <asm/addrspace.h>
|
||||
#include <bcm63xx_board.h>
|
||||
#include <bcm63xx_cpu.h>
|
||||
@@ -50,6 +51,8 @@
|
||||
@@ -51,6 +52,8 @@
|
||||
#define NB4_SPI_GPIO_MOSI 7
|
||||
#define NB4_SPI_GPIO_CLK 6
|
||||
#define NB4_74HC64_GPIO(X) (NB4_74X164_GPIO_BASE + (X))
|
||||
|
@ -17,7 +17,7 @@
|
|||
|
||||
#define CT6373_PID_OFFSET 0xff80
|
||||
#define CT6373_74X164_GPIO_BASE 64
|
||||
@@ -2580,6 +2583,103 @@ static struct board_info __initdata boar
|
||||
@@ -2582,6 +2585,103 @@ static struct board_info __initdata boar
|
||||
};
|
||||
#endif
|
||||
|
||||
|
@ -121,7 +121,7 @@
|
|||
/*
|
||||
* known 6368 boards
|
||||
*/
|
||||
@@ -2776,6 +2876,10 @@ static const struct board_info __initdat
|
||||
@@ -2778,6 +2878,10 @@ static const struct board_info __initdat
|
||||
&board_DVAG3810BN,
|
||||
#endif
|
||||
|
||||
|
@ -132,7 +132,7 @@
|
|||
#ifdef CONFIG_BCM63XX_CPU_6368
|
||||
&board_96368mvwg,
|
||||
&board_96368mvngr,
|
||||
@@ -2843,6 +2947,11 @@ static void __init boardid_fixup(u8 *boo
|
||||
@@ -2845,6 +2949,11 @@ static void __init boardid_fixup(u8 *boo
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
@@ -1011,6 +1011,55 @@ static struct board_info __initdata boar
|
||||
@@ -1013,6 +1013,55 @@ static struct board_info __initdata boar
|
||||
.has_ehci0 = 1,
|
||||
};
|
||||
|
||||
|
@ -56,7 +56,7 @@
|
|||
static struct board_info __initdata board_rta1025w_16 = {
|
||||
.name = "RTA1025W_16",
|
||||
.expected_cpu_id = 0x6348,
|
||||
@@ -2844,6 +2893,7 @@ static const struct board_info __initdat
|
||||
@@ -2846,6 +2895,7 @@ static const struct board_info __initdat
|
||||
&board_96348gw_10,
|
||||
&board_96348gw_11,
|
||||
&board_FAST2404,
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
@@ -206,6 +206,125 @@ static struct board_info __initdata boar
|
||||
@@ -207,6 +207,125 @@ static struct board_info __initdata boar
|
||||
},
|
||||
};
|
||||
|
||||
|
@ -126,7 +126,7 @@
|
|||
static struct board_info __initdata board_dsl_274xb_f1 = {
|
||||
.name = "AW4339U",
|
||||
.expected_cpu_id = 0x6328,
|
||||
@@ -2874,6 +2993,7 @@ static const struct board_info __initdat
|
||||
@@ -2876,6 +2995,7 @@ static const struct board_info __initdat
|
||||
#ifdef CONFIG_BCM63XX_CPU_6328
|
||||
&board_96328avng,
|
||||
&board_963281TAN,
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
@@ -136,6 +136,78 @@ static struct board_info __initdata boar
|
||||
@@ -137,6 +137,78 @@ static struct board_info __initdata boar
|
||||
},
|
||||
};
|
||||
|
||||
|
@ -79,7 +79,7 @@
|
|||
static struct board_info __initdata board_963281TAN = {
|
||||
.name = "963281TAN",
|
||||
.expected_cpu_id = 0x6328,
|
||||
@@ -2992,6 +3064,7 @@ static struct board_info __initdata boar
|
||||
@@ -2994,6 +3066,7 @@ static struct board_info __initdata boar
|
||||
static const struct board_info __initdata *bcm963xx_boards[] = {
|
||||
#ifdef CONFIG_BCM63XX_CPU_6328
|
||||
&board_96328avng,
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
@@ -136,6 +136,72 @@ static struct board_info __initdata boar
|
||||
@@ -137,6 +137,72 @@ static struct board_info __initdata boar
|
||||
},
|
||||
};
|
||||
|
||||
|
@ -73,7 +73,7 @@
|
|||
static struct board_info __initdata board_96328A_1441N1 = {
|
||||
.name = "96328A-1441N1",
|
||||
.expected_cpu_id = 0x6328,
|
||||
@@ -3064,6 +3130,7 @@ static struct board_info __initdata boar
|
||||
@@ -3066,6 +3132,7 @@ static struct board_info __initdata boar
|
||||
static const struct board_info __initdata *bcm963xx_boards[] = {
|
||||
#ifdef CONFIG_BCM63XX_CPU_6328
|
||||
&board_96328avng,
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
@@ -1919,6 +1919,99 @@ static struct board_info __initdata boar
|
||||
@@ -1921,6 +1921,99 @@ static struct board_info __initdata boar
|
||||
|
||||
.has_ohci0 = 1,
|
||||
.has_ehci0 = 1,
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
@@ -1376,6 +1376,19 @@ static struct board_info __initdata boar
|
||||
@@ -1378,6 +1378,19 @@ static struct board_info __initdata boar
|
||||
},
|
||||
|
||||
.has_ohci0 = 1,
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
@@ -844,6 +844,17 @@ static struct board_info __initdata boar
|
||||
@@ -846,6 +846,17 @@ static struct board_info __initdata boar
|
||||
.active_low = 1,
|
||||
},
|
||||
},
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
@@ -736,6 +736,53 @@ static struct board_info __initdata boar
|
||||
@@ -738,6 +738,53 @@ static struct board_info __initdata boar
|
||||
|
||||
.has_uart0 = 1,
|
||||
};
|
||||
|
@ -54,7 +54,7 @@
|
|||
#endif
|
||||
|
||||
/*
|
||||
@@ -3261,6 +3308,7 @@ static const struct board_info __initdat
|
||||
@@ -3263,6 +3310,7 @@ static const struct board_info __initdat
|
||||
#endif
|
||||
#ifdef CONFIG_BCM63XX_CPU_6345
|
||||
&board_96345gw2,
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
#include <linux/spi/spi.h>
|
||||
#include <linux/spi/spi_gpio.h>
|
||||
#include <linux/spi/74x164.h>
|
||||
@@ -3366,7 +3367,7 @@ static const struct board_info __initdat
|
||||
@@ -3368,7 +3369,7 @@ static const struct board_info __initdat
|
||||
* bcm4318 WLAN work
|
||||
*/
|
||||
#ifdef CONFIG_SSB_PCIHOST
|
||||
|
@ -17,7 +17,7 @@
|
|||
.revision = 0x02,
|
||||
.board_rev = 0x17,
|
||||
.country_code = 0x0,
|
||||
@@ -3386,6 +3387,7 @@ static struct ssb_sprom bcm63xx_sprom =
|
||||
@@ -3388,6 +3389,7 @@ static struct ssb_sprom bcm63xx_sprom =
|
||||
.boardflags_lo = 0x2848,
|
||||
.boardflags_hi = 0x0000,
|
||||
};
|
||||
|
|
Loading…
Reference in New Issue