LINUX_RELEASE?=1
LINUX_VERSION-3.18 = .16
-LINUX_VERSION-4.0 = .4
+LINUX_VERSION-4.0 = .5
LINUX_KERNEL_MD5SUM-3.18.16 = 3b0e66fdf47b0660521d79b881eabf04
-LINUX_KERNEL_MD5SUM-4.0.4 = 71d8b666438e6b59f103e9384889c15a
+LINUX_KERNEL_MD5SUM-4.0.5 = 214836ae60a5674c31bb7cede5f47794
ifdef KERNEL_PATCHVER
LINUX_VERSION:=$(KERNEL_PATCHVER)$(strip $(LINUX_VERSION-$(KERNEL_PATCHVER)))
arch/mips/bcm47xx/sprom.c | 33 +++++++++++++++++++++++++++++++++
1 file changed, 33 insertions(+)
-diff --git a/arch/mips/bcm47xx/sprom.c b/arch/mips/bcm47xx/sprom.c
-index 2eff7fe..eff9205 100644
--- a/arch/mips/bcm47xx/sprom.c
+++ b/arch/mips/bcm47xx/sprom.c
-@@ -836,6 +836,38 @@ static int bcm47xx_get_sprom_ssb(struct ssb_bus *bus, struct ssb_sprom *out)
+@@ -836,6 +836,38 @@ static int bcm47xx_get_sprom_ssb(struct
#endif
#if defined(CONFIG_BCM47XX_BCMA)
static int bcm47xx_get_sprom_bcma(struct bcma_bus *bus, struct ssb_sprom *out)
{
char prefix[10];
-@@ -847,6 +879,7 @@ static int bcm47xx_get_sprom_bcma(struct bcma_bus *bus, struct ssb_sprom *out)
+@@ -847,6 +879,7 @@ static int bcm47xx_get_sprom_bcma(struct
snprintf(prefix, sizeof(prefix), "pci/%u/%u/",
bus->host_pci->bus->number + 1,
PCI_SLOT(bus->host_pci->devfn));
bcm47xx_fill_sprom(out, prefix, false);
return 0;
case BCMA_HOSTTYPE_SOC:
---
-1.8.4.5
-
arch/mips/bcm47xx/nvram.c | 7 ++-----
1 file changed, 2 insertions(+), 5 deletions(-)
-diff --git a/arch/mips/bcm47xx/nvram.c b/arch/mips/bcm47xx/nvram.c
-index c5c381c..5e4ae04 100644
--- a/arch/mips/bcm47xx/nvram.c
+++ b/arch/mips/bcm47xx/nvram.c
-@@ -91,7 +91,6 @@ static int nvram_find_and_copy(void __iomem *iobase, u32 lim)
+@@ -91,7 +91,6 @@ static int nvram_find_and_copy(void __io
return -ENXIO;
found:
return 0;
}
---
-1.8.4.5
-
arch/mips/bcm47xx/nvram.c | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
-diff --git a/arch/mips/bcm47xx/nvram.c b/arch/mips/bcm47xx/nvram.c
-index 5e4ae04..d805d8a 100644
--- a/arch/mips/bcm47xx/nvram.c
+++ b/arch/mips/bcm47xx/nvram.c
@@ -175,7 +175,7 @@ static int nvram_init(void)
if (!name)
return -EINVAL;
-@@ -191,7 +191,9 @@ int bcm47xx_nvram_getenv(const char *name, char *val, size_t val_len)
+@@ -191,7 +191,9 @@ int bcm47xx_nvram_getenv(const char *nam
end = nvram_buf + sizeof(nvram_buf) - 2;
end[0] = end[1] = '\0';
for (; *var; var = value + strlen(value) + 1) {
if (!eq)
break;
value = eq + 1;
---
-1.8.4.5
-
delete mode 100644 arch/mips/include/asm/mach-bcm47xx/bcm47xx_nvram.h
create mode 100644 include/linux/bcm47xx_nvram.h
-diff --git a/arch/mips/bcm47xx/board.c b/arch/mips/bcm47xx/board.c
-index b3ae068..6e85130 100644
--- a/arch/mips/bcm47xx/board.c
+++ b/arch/mips/bcm47xx/board.c
@@ -1,8 +1,8 @@
struct bcm47xx_board_type {
const enum bcm47xx_board board;
-diff --git a/arch/mips/bcm47xx/nvram.c b/arch/mips/bcm47xx/nvram.c
-index d805d8a..7c77a88 100644
--- a/arch/mips/bcm47xx/nvram.c
+++ b/arch/mips/bcm47xx/nvram.c
@@ -16,7 +16,7 @@
#define NVRAM_MAGIC 0x48534C46 /* 'FLSH' */
#define NVRAM_SPACE 0x8000
-diff --git a/arch/mips/bcm47xx/setup.c b/arch/mips/bcm47xx/setup.c
-index e43b504..b26c9c2 100644
--- a/arch/mips/bcm47xx/setup.c
+++ b/arch/mips/bcm47xx/setup.c
@@ -42,7 +42,6 @@
#include <bcm47xx_board.h>
union bcm47xx_bus bcm47xx_bus;
-diff --git a/arch/mips/bcm47xx/sprom.c b/arch/mips/bcm47xx/sprom.c
-index eff9205..c114b02 100644
--- a/arch/mips/bcm47xx/sprom.c
+++ b/arch/mips/bcm47xx/sprom.c
@@ -27,7 +27,6 @@
#include <linux/if_ether.h>
#include <linux/etherdevice.h>
-diff --git a/arch/mips/bcm47xx/time.c b/arch/mips/bcm47xx/time.c
-index 2c85d92..5b46510 100644
--- a/arch/mips/bcm47xx/time.c
+++ b/arch/mips/bcm47xx/time.c
@@ -27,7 +27,6 @@
#include <bcm47xx_board.h>
void __init plat_time_init(void)
-diff --git a/arch/mips/include/asm/mach-bcm47xx/bcm47xx.h b/arch/mips/include/asm/mach-bcm47xx/bcm47xx.h
-index 7527c1d..8ed77f6 100644
--- a/arch/mips/include/asm/mach-bcm47xx/bcm47xx.h
+++ b/arch/mips/include/asm/mach-bcm47xx/bcm47xx.h
@@ -22,6 +22,7 @@
-
-#endif /* __BCM47XX_NVRAM_H */
+#include <linux/bcm47xx_nvram.h>
-diff --git a/drivers/bcma/driver_mips.c b/drivers/bcma/driver_mips.c
-index 04faf6d..24424f3 100644
--- a/drivers/bcma/driver_mips.c
+++ b/drivers/bcma/driver_mips.c
@@ -21,7 +21,7 @@
#endif
enum bcma_boot_dev {
-diff --git a/drivers/net/ethernet/broadcom/b44.c b/drivers/net/ethernet/broadcom/b44.c
-index bd5916a..77363d6 100644
--- a/drivers/net/ethernet/broadcom/b44.c
+++ b/drivers/net/ethernet/broadcom/b44.c
-@@ -400,7 +400,7 @@ static void b44_set_flow_ctrl(struct b44 *bp, u32 local, u32 remote)
+@@ -400,7 +400,7 @@ static void b44_set_flow_ctrl(struct b44
}
#ifdef CONFIG_BCM47XX
static void b44_wap54g10_workaround(struct b44 *bp)
{
char buf[20];
-diff --git a/drivers/net/ethernet/broadcom/bgmac.c b/drivers/net/ethernet/broadcom/bgmac.c
-index 0469f72..be059df 100644
--- a/drivers/net/ethernet/broadcom/bgmac.c
+++ b/drivers/net/ethernet/broadcom/bgmac.c
@@ -18,7 +18,7 @@
static const struct bcma_device_id bgmac_bcma_tbl[] = {
BCMA_CORE(BCMA_MANUF_BCM, BCMA_CORE_4706_MAC_GBIT, BCMA_ANY_REV, BCMA_ANY_CLASS),
-diff --git a/drivers/ssb/driver_chipcommon_pmu.c b/drivers/ssb/driver_chipcommon_pmu.c
-index 1173a09..0942841 100644
--- a/drivers/ssb/driver_chipcommon_pmu.c
+++ b/drivers/ssb/driver_chipcommon_pmu.c
@@ -14,7 +14,7 @@
#endif
#include "ssb_private.h"
-diff --git a/drivers/ssb/driver_mipscore.c b/drivers/ssb/driver_mipscore.c
-index 7b986f9..f87efef 100644
--- a/drivers/ssb/driver_mipscore.c
+++ b/drivers/ssb/driver_mipscore.c
@@ -16,7 +16,7 @@
#endif
#include "ssb_private.h"
-diff --git a/include/linux/bcm47xx_nvram.h b/include/linux/bcm47xx_nvram.h
-new file mode 100644
-index 0000000..b12b07e
--- /dev/null
+++ b/include/linux/bcm47xx_nvram.h
@@ -0,0 +1,34 @@
+#endif
+
+#endif /* __BCM47XX_NVRAM_H */
---
-1.8.4.5
-
arch/mips/bcm47xx/time.c | 1 -
8 files changed, 34 insertions(+), 30 deletions(-)
-diff --git a/arch/mips/bcm47xx/bcm47xx_private.h b/arch/mips/bcm47xx/bcm47xx_private.h
-index ea909a5..41796be 100644
--- a/arch/mips/bcm47xx/bcm47xx_private.h
+++ b/arch/mips/bcm47xx/bcm47xx_private.h
@@ -1,6 +1,10 @@
#include <linux/kernel.h>
/* prom.c */
-diff --git a/arch/mips/bcm47xx/board.c b/arch/mips/bcm47xx/board.c
-index 6e85130..d4a5a51 100644
--- a/arch/mips/bcm47xx/board.c
+++ b/arch/mips/bcm47xx/board.c
@@ -330,9 +330,8 @@ void __init bcm47xx_board_detect(void)
board_detected = bcm47xx_board_get_nvram();
bcm47xx_board.board = board_detected->board;
-diff --git a/arch/mips/bcm47xx/nvram.c b/arch/mips/bcm47xx/nvram.c
-index 7c77a88..6a97732 100644
--- a/arch/mips/bcm47xx/nvram.c
+++ b/arch/mips/bcm47xx/nvram.c
@@ -18,8 +18,10 @@
for (i = 0; i < sizeof(struct nvram_header); i += 4)
*dst++ = __raw_readl(src++);
for (; i < header->len && i < NVRAM_SPACE && i < size; i += 4)
-@@ -189,7 +191,8 @@ int bcm47xx_nvram_getenv(const char *name, char *val, size_t val_len)
+@@ -189,7 +191,8 @@ int bcm47xx_nvram_getenv(const char *nam
/* Look for name=value and return value */
var = &nvram_buf[sizeof(struct nvram_header)];
end = nvram_buf + sizeof(nvram_buf) - 2;
for (; *var; var = value + strlen(value) + 1) {
data_left = end - var;
-@@ -197,11 +200,10 @@ int bcm47xx_nvram_getenv(const char *name, char *val, size_t val_len)
+@@ -197,11 +200,10 @@ int bcm47xx_nvram_getenv(const char *nam
if (!eq)
break;
value = eq + 1;
err = snprintf(nvram_var, sizeof(nvram_var), "gpio%i", i);
if (err <= 0)
continue;
-diff --git a/arch/mips/bcm47xx/prom.c b/arch/mips/bcm47xx/prom.c
-index 1b170bf..ab698ba 100644
--- a/arch/mips/bcm47xx/prom.c
+++ b/arch/mips/bcm47xx/prom.c
@@ -35,7 +35,6 @@
break;
}
if (!memcmp(prom_init, prom_init + mem, 32))
-diff --git a/arch/mips/bcm47xx/serial.c b/arch/mips/bcm47xx/serial.c
-index 2f5bbd6..df761d3 100644
--- a/arch/mips/bcm47xx/serial.c
+++ b/arch/mips/bcm47xx/serial.c
-@@ -36,8 +36,8 @@ static int __init uart8250_init_ssb(void)
+@@ -36,8 +36,8 @@ static int __init uart8250_init_ssb(void
struct plat_serial8250_port *p = &(uart8250_data[i]);
struct ssb_serial_port *ssb_port = &(mcore->serial_ports[i]);
p->irq = ssb_port->irq + 2;
p->uartclk = ssb_port->baud_base;
p->regshift = ssb_port->reg_shift;
-@@ -62,8 +62,8 @@ static int __init uart8250_init_bcma(void)
+@@ -62,8 +62,8 @@ static int __init uart8250_init_bcma(voi
struct bcma_serial_port *bcma_port;
bcma_port = &(cc->serial_ports[i]);
p->irq = bcma_port->irq;
p->uartclk = bcma_port->baud_base;
p->regshift = bcma_port->reg_shift;
-diff --git a/arch/mips/bcm47xx/setup.c b/arch/mips/bcm47xx/setup.c
-index b26c9c2..82ff9fd 100644
--- a/arch/mips/bcm47xx/setup.c
+++ b/arch/mips/bcm47xx/setup.c
@@ -52,7 +52,7 @@ EXPORT_SYMBOL(bcm47xx_bus_type);
local_irq_disable();
/* Set the watchdog timer to reset immediately */
switch (bcm47xx_bus_type) {
-@@ -107,7 +107,7 @@ static int bcm47xx_get_invariants(struct ssb_bus *bus,
+@@ -107,7 +107,7 @@ static int bcm47xx_get_invariants(struct
char buf[20];
/* Fill boardinfo structure */
bcm47xx_fill_ssb_boardinfo(&iv->boardinfo, NULL);
-@@ -126,7 +126,7 @@ static void __init bcm47xx_register_ssb(void)
+@@ -126,7 +126,7 @@ static void __init bcm47xx_register_ssb(
char buf[100];
struct ssb_mipscore *mcore;
bcm47xx_get_invariants);
if (err)
panic("Failed to initialize SSB bus (err %d)", err);
-@@ -136,7 +136,7 @@ static void __init bcm47xx_register_ssb(void)
+@@ -136,7 +136,7 @@ static void __init bcm47xx_register_ssb(
if (strstr(buf, "console=ttyS1")) {
struct ssb_serial_port port;
#ifdef CONFIG_BCM47XX_SSB
bcm47xx_bus_type = BCM47XX_BUS_TYPE_SSB;
bcm47xx_sprom_register_fallbacks();
-diff --git a/arch/mips/bcm47xx/sprom.c b/arch/mips/bcm47xx/sprom.c
-index c114b02..5d32afc 100644
--- a/arch/mips/bcm47xx/sprom.c
+++ b/arch/mips/bcm47xx/sprom.c
-@@ -780,8 +780,8 @@ void bcm47xx_fill_sprom(struct ssb_sprom *sprom, const char *prefix,
+@@ -780,8 +780,8 @@ void bcm47xx_fill_sprom(struct ssb_sprom
bcm47xx_fill_sprom_path_r4589(sprom, prefix, fallback);
break;
default:
sprom->revision = 1;
bcm47xx_fill_sprom_r1234589(sprom, prefix, fallback);
bcm47xx_fill_sprom_r12389(sprom, prefix, fallback);
-@@ -828,7 +828,7 @@ static int bcm47xx_get_sprom_ssb(struct ssb_bus *bus, struct ssb_sprom *out)
+@@ -828,7 +828,7 @@ static int bcm47xx_get_sprom_ssb(struct
bcm47xx_fill_sprom(out, prefix, false);
return 0;
} else {
return -EINVAL;
}
}
-@@ -893,7 +893,7 @@ static int bcm47xx_get_sprom_bcma(struct bcma_bus *bus, struct ssb_sprom *out)
+@@ -893,7 +893,7 @@ static int bcm47xx_get_sprom_bcma(struct
}
return 0;
default:
return -EINVAL;
}
}
-diff --git a/arch/mips/bcm47xx/time.c b/arch/mips/bcm47xx/time.c
-index 5b46510..74224cf 100644
--- a/arch/mips/bcm47xx/time.c
+++ b/arch/mips/bcm47xx/time.c
@@ -22,7 +22,6 @@
#include <linux/init.h>
#include <linux/ssb/ssb.h>
#include <asm/time.h>
---
-1.8.4.5
-
arch/mips/bcm47xx/nvram.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
-diff --git a/arch/mips/bcm47xx/nvram.c b/arch/mips/bcm47xx/nvram.c
-index 6a97732..2357ea3 100644
--- a/arch/mips/bcm47xx/nvram.c
+++ b/arch/mips/bcm47xx/nvram.c
@@ -11,6 +11,7 @@
#include <linux/types.h>
#include <linux/module.h>
#include <linux/kernel.h>
-@@ -203,7 +204,7 @@ int bcm47xx_nvram_getenv(const char *name, char *val, size_t val_len)
+@@ -203,7 +204,7 @@ int bcm47xx_nvram_getenv(const char *nam
if (eq - var == strlen(name) &&
strncmp(var, name, eq - var) == 0)
return snprintf(val, val_len, "%s", value);
return -ENOENT;
}
EXPORT_SYMBOL(bcm47xx_nvram_getenv);
---
-1.8.4.5
-
arch/mips/bcm47xx/nvram.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
-diff --git a/arch/mips/bcm47xx/nvram.c b/arch/mips/bcm47xx/nvram.c
-index 2357ea3..2ac7482 100644
--- a/arch/mips/bcm47xx/nvram.c
+++ b/arch/mips/bcm47xx/nvram.c
@@ -20,7 +20,7 @@
#define NVRAM_MAX_GPIO_ENTRIES 32
#define NVRAM_MAX_GPIO_VALUE_LEN 30
---
-1.8.4.5
-
arch/mips/bcm47xx/nvram.c | 36 ++++++++++++++----------------------
1 file changed, 14 insertions(+), 22 deletions(-)
-diff --git a/arch/mips/bcm47xx/nvram.c b/arch/mips/bcm47xx/nvram.c
-index 2ac7482..ba632ff 100644
--- a/arch/mips/bcm47xx/nvram.c
+++ b/arch/mips/bcm47xx/nvram.c
@@ -139,36 +139,28 @@ static int nvram_init(void)
-
- if (from < 0)
- continue;
--
-- err = mtd_read(mtd, from, sizeof(header), &bytes_read,
-- (uint8_t *)&header);
-- if (!err && header.magic == NVRAM_MAGIC) {
-- u8 *dst = (uint8_t *)nvram_buf;
-- size_t len = header.len;
+ err = mtd_read(mtd, 0, sizeof(header), &bytes_read, (uint8_t *)&header);
+ if (!err && header.magic == NVRAM_MAGIC) {
+ u8 *dst = (uint8_t *)nvram_buf;
+ size_t len = header.len;
-
-- if (header.len > NVRAM_SPACE) {
-- pr_err("nvram on flash (%i bytes) is bigger than the reserved space in memory, will just copy the first %i bytes\n",
-- header.len, NVRAM_SPACE);
-- len = NVRAM_SPACE;
-- }
++
+ if (header.len > NVRAM_SPACE) {
+ pr_err("nvram on flash (%i bytes) is bigger than the reserved space in memory, will just copy the first %i bytes\n",
+ header.len, NVRAM_SPACE);
+ len = NVRAM_SPACE;
+ }
+- err = mtd_read(mtd, from, sizeof(header), &bytes_read,
+- (uint8_t *)&header);
+- if (!err && header.magic == NVRAM_MAGIC) {
+- u8 *dst = (uint8_t *)nvram_buf;
+- size_t len = header.len;
+-
+- if (header.len > NVRAM_SPACE) {
+- pr_err("nvram on flash (%i bytes) is bigger than the reserved space in memory, will just copy the first %i bytes\n",
+- header.len, NVRAM_SPACE);
+- len = NVRAM_SPACE;
+- }
+-
- err = mtd_read(mtd, from, len, &bytes_read, dst);
- if (err)
- return err;
}
#endif
---
-1.8.4.5
-
arch/mips/bcm47xx/board.c | 48 ++++++++++++++++++++---------------------------
1 file changed, 20 insertions(+), 28 deletions(-)
-diff --git a/arch/mips/bcm47xx/board.c b/arch/mips/bcm47xx/board.c
-index d4a5a51..f936dcc 100644
--- a/arch/mips/bcm47xx/board.c
+++ b/arch/mips/bcm47xx/board.c
-@@ -40,20 +40,6 @@ struct bcm47xx_board_type_list1 bcm47xx_board_list_model_name[] __initconst = {
+@@ -40,20 +40,6 @@ struct bcm47xx_board_type_list1 bcm47xx_
{ {0}, NULL},
};
/* hardware_version */
static const
struct bcm47xx_board_type_list1 bcm47xx_board_list_hardware_version[] __initconst = {
-@@ -202,6 +188,18 @@ struct bcm47xx_board_type_list2 bcm47xx_board_list_board_type_rev[] __initconst
+@@ -202,6 +188,18 @@ struct bcm47xx_board_type_list2 bcm47xx_
{ {0}, NULL},
};
static const
struct bcm47xx_board_type bcm47xx_board_unknown[] __initconst = {
{BCM47XX_BOARD_UNKNOWN, "Unknown Board"},
-@@ -225,20 +223,6 @@ static __init const struct bcm47xx_board_type *bcm47xx_board_get_nvram(void)
+@@ -225,20 +223,6 @@ static __init const struct bcm47xx_board
}
}
if (bcm47xx_nvram_getenv("hardware_version", buf1, sizeof(buf1)) >= 0) {
for (e1 = bcm47xx_board_list_hardware_version; e1->value1; e1++) {
if (strstarts(buf1, e1->value1))
-@@ -314,6 +298,14 @@ static __init const struct bcm47xx_board_type *bcm47xx_board_get_nvram(void)
+@@ -314,6 +298,14 @@ static __init const struct bcm47xx_board
return &e2->board;
}
}
return bcm47xx_board_unknown;
}
---
-1.8.4.5
-
arch/mips/include/asm/mach-bcm47xx/bcm47xx_board.h | 4 ++++
4 files changed, 36 insertions(+)
-diff --git a/arch/mips/bcm47xx/board.c b/arch/mips/bcm47xx/board.c
-index f936dcc..41b9736 100644
--- a/arch/mips/bcm47xx/board.c
+++ b/arch/mips/bcm47xx/board.c
@@ -151,9 +151,11 @@ static const
{{BCM47XX_BOARD_NETGEAR_WNDR3400VCNA, "Netgear WNDR3400 Vcna"}, "U12H155T01_NETGEAR"},
{{BCM47XX_BOARD_NETGEAR_WNDR3700V3, "Netgear WNDR3700 V3"}, "U12H194T00_NETGEAR"},
{{BCM47XX_BOARD_NETGEAR_WNDR4000, "Netgear WNDR4000"}, "U12H181T00_NETGEAR"},
-@@ -196,6 +198,8 @@ struct bcm47xx_board_type_list2 bcm47xx_board_list_board_type_rev[] __initconst
+@@ -196,6 +198,8 @@ struct bcm47xx_board_type_list2 bcm47xx_
static const
struct bcm47xx_board_type_list2 bcm47xx_board_list_key_value[] __initconst = {
{{BCM47XX_BOARD_ASUS_WL700GE, "Asus WL700"}, "model_no", "WL700"},
{{BCM47XX_BOARD_LINKSYS_WRTSL54GS, "Linksys WRTSL54GS"}, "machine_name", "WRTSL54GS"},
{ {0}, NULL},
};
-diff --git a/arch/mips/bcm47xx/buttons.c b/arch/mips/bcm47xx/buttons.c
-index 913182b..276276a 100644
--- a/arch/mips/bcm47xx/buttons.c
+++ b/arch/mips/bcm47xx/buttons.c
-@@ -252,6 +252,12 @@ bcm47xx_buttons_linksys_wrt160nv3[] __initconst = {
+@@ -252,6 +252,12 @@ bcm47xx_buttons_linksys_wrt160nv3[] __in
};
static const struct gpio_keys_button
bcm47xx_buttons_linksys_wrt300nv11[] __initconst = {
BCM47XX_GPIO_KEY(4, KEY_UNKNOWN),
BCM47XX_GPIO_KEY(6, KEY_RESTART),
-@@ -327,6 +333,12 @@ bcm47xx_buttons_netgear_wndr3400v1[] __initconst = {
+@@ -327,6 +333,12 @@ bcm47xx_buttons_netgear_wndr3400v1[] __i
};
static const struct gpio_keys_button
bcm47xx_buttons_netgear_wndr3700v3[] __initconst = {
BCM47XX_GPIO_KEY(2, KEY_RFKILL),
BCM47XX_GPIO_KEY(3, KEY_RESTART),
-@@ -516,6 +528,9 @@ int __init bcm47xx_buttons_register(void)
+@@ -516,6 +528,9 @@ int __init bcm47xx_buttons_register(void
case BCM47XX_BOARD_LINKSYS_WRT160NV3:
err = bcm47xx_copy_bdata(bcm47xx_buttons_linksys_wrt160nv3);
break;
case BCM47XX_BOARD_LINKSYS_WRT300NV11:
err = bcm47xx_copy_bdata(bcm47xx_buttons_linksys_wrt300nv11);
break;
-@@ -557,6 +572,9 @@ int __init bcm47xx_buttons_register(void)
+@@ -557,6 +572,9 @@ int __init bcm47xx_buttons_register(void
case BCM47XX_BOARD_NETGEAR_WNDR3400V1:
err = bcm47xx_copy_bdata(bcm47xx_buttons_netgear_wndr3400v1);
break;
case BCM47XX_BOARD_NETGEAR_WNDR3700V3:
err = bcm47xx_copy_bdata(bcm47xx_buttons_netgear_wndr3700v3);
break;
-diff --git a/arch/mips/bcm47xx/leds.c b/arch/mips/bcm47xx/leds.c
-index 903a656..0e4ade3 100644
--- a/arch/mips/bcm47xx/leds.c
+++ b/arch/mips/bcm47xx/leds.c
-@@ -292,6 +292,13 @@ bcm47xx_leds_linksys_wrt160nv3[] __initconst = {
+@@ -292,6 +292,13 @@ bcm47xx_leds_linksys_wrt160nv3[] __initc
};
static const struct gpio_led
case BCM47XX_BOARD_LINKSYS_WRT300NV11:
bcm47xx_set_pdata(bcm47xx_leds_linksys_wrt300nv11);
break;
-diff --git a/arch/mips/include/asm/mach-bcm47xx/bcm47xx_board.h b/arch/mips/include/asm/mach-bcm47xx/bcm47xx_board.h
-index 1f5643b..c41d1dc 100644
--- a/arch/mips/include/asm/mach-bcm47xx/bcm47xx_board.h
+++ b/arch/mips/include/asm/mach-bcm47xx/bcm47xx_board.h
@@ -67,6 +67,7 @@ enum bcm47xx_board {
BCM47XX_BOARD_NETGEAR_WNDR3400VCNA,
BCM47XX_BOARD_NETGEAR_WNDR3700V3,
BCM47XX_BOARD_NETGEAR_WNDR4000,
---
-1.8.4.5
-
arch/mips/bcm47xx/sprom.c | 32 +++++++++++++++++++++++++++++---
1 file changed, 29 insertions(+), 3 deletions(-)
-diff --git a/arch/mips/bcm47xx/sprom.c b/arch/mips/bcm47xx/sprom.c
-index 5d32afc..77790c9 100644
--- a/arch/mips/bcm47xx/sprom.c
+++ b/arch/mips/bcm47xx/sprom.c
-@@ -180,6 +180,33 @@ static void nvram_read_alpha2(const char *prefix, const char *name,
+@@ -180,6 +180,33 @@ static void nvram_read_alpha2(const char
memcpy(val, buf, 2);
}
static void bcm47xx_fill_sprom_r1234589(struct ssb_sprom *sprom,
const char *prefix, bool fallback)
{
-@@ -714,9 +741,6 @@ static void bcm47xx_fill_sprom_ethernet(struct ssb_sprom *sprom,
+@@ -714,9 +741,6 @@ static void bcm47xx_fill_sprom_ethernet(
static void bcm47xx_fill_board_data(struct ssb_sprom *sprom, const char *prefix,
bool fallback)
{
nvram_read_u16(prefix, NULL, "boardtype", &sprom->board_type, 0, true);
nvram_read_u32_2(prefix, "boardflags", &sprom->boardflags_lo,
&sprom->boardflags_hi, fallback);
-@@ -787,6 +811,8 @@ void bcm47xx_fill_sprom(struct ssb_sprom *sprom, const char *prefix,
+@@ -787,6 +811,8 @@ void bcm47xx_fill_sprom(struct ssb_sprom
bcm47xx_fill_sprom_r12389(sprom, prefix, fallback);
bcm47xx_fill_sprom_r1(sprom, prefix, fallback);
}
}
#ifdef CONFIG_BCM47XX_SSB
---
-1.8.4.5
-
arch/mips/bcm47xx/sprom.c | 605 ++++++++++++++++------------------------------
1 file changed, 204 insertions(+), 401 deletions(-)
-diff --git a/arch/mips/bcm47xx/sprom.c b/arch/mips/bcm47xx/sprom.c
-index 77790c9..68ebf23 100644
--- a/arch/mips/bcm47xx/sprom.c
+++ b/arch/mips/bcm47xx/sprom.c
-@@ -201,9 +201,211 @@ static void bcm47xx_sprom_fill_auto(struct ssb_sprom *sprom,
+@@ -201,9 +201,211 @@ static void bcm47xx_sprom_fill_auto(stru
bool fb = fallback;
ENTRY(0xfffffffe, u16, pre, "boardrev", board_rev, 0, true);
+ ENTRY(0x00000002, u16, pre, "boardflags", boardflags_lo, 0, fb);
+ ENTRY(0xfffffffc, u16, pre, "boardtype", board_type, 0, true);
ENTRY(0xfffffffe, u16, pre, "boardnum", board_num, 0, fb);
--
-- /* TODO: Move more mappings here */
+ ENTRY(0x00000002, u8, pre, "cc", country_code, 0, fb);
+ ENTRY(0xfffffff8, u8, pre, "regrev", regrev, 0, fb);
-+
+
+- /* TODO: Move more mappings here */
+ ENTRY(0xfffffffe, u8, pre, "ledbh0", gpio0, 0xff, fb);
+ ENTRY(0xfffffffe, u8, pre, "ledbh1", gpio1, 0xff, fb);
+ ENTRY(0xfffffffe, u8, pre, "ledbh2", gpio2, 0xff, fb);
}
#undef ENTRY /* It's specififc, uses local variable, don't use it (again). */
-@@ -211,90 +413,12 @@ static void bcm47xx_fill_sprom_r1234589(struct ssb_sprom *sprom,
+@@ -211,90 +413,12 @@ static void bcm47xx_fill_sprom_r1234589(
const char *prefix, bool fallback)
{
nvram_read_u16(prefix, NULL, "devid", &sprom->dev_id, 0, fallback);
nvram_read_leddc(prefix, "leddc", &sprom->leddc_on_time,
&sprom->leddc_off_time, fallback);
}
-@@ -302,309 +426,10 @@ static void bcm47xx_fill_sprom_r3(struct ssb_sprom *sprom, const char *prefix,
+@@ -302,309 +426,10 @@ static void bcm47xx_fill_sprom_r3(struct
static void bcm47xx_fill_sprom_r4589(struct ssb_sprom *sprom,
const char *prefix, bool fallback)
{
static void bcm47xx_fill_sprom_path_r4589(struct ssb_sprom *sprom,
const char *prefix, bool fallback)
{
-@@ -741,7 +566,6 @@ static void bcm47xx_fill_sprom_ethernet(struct ssb_sprom *sprom,
+@@ -741,7 +566,6 @@ static void bcm47xx_fill_sprom_ethernet(
static void bcm47xx_fill_board_data(struct ssb_sprom *sprom, const char *prefix,
bool fallback)
{
nvram_read_u32_2(prefix, "boardflags", &sprom->boardflags_lo,
&sprom->boardflags_hi, fallback);
nvram_read_u32_2(prefix, "boardflags2", &sprom->boardflags2_lo,
-@@ -759,48 +583,29 @@ void bcm47xx_fill_sprom(struct ssb_sprom *sprom, const char *prefix,
+@@ -759,48 +583,29 @@ void bcm47xx_fill_sprom(struct ssb_sprom
switch (sprom->revision) {
case 1:
bcm47xx_fill_sprom_r1234589(sprom, prefix, fallback);
bcm47xx_fill_sprom_path_r4589(sprom, prefix, fallback);
break;
default:
-@@ -808,8 +613,6 @@ void bcm47xx_fill_sprom(struct ssb_sprom *sprom, const char *prefix,
+@@ -808,8 +613,6 @@ void bcm47xx_fill_sprom(struct ssb_sprom
sprom->revision);
sprom->revision = 1;
bcm47xx_fill_sprom_r1234589(sprom, prefix, fallback);
}
bcm47xx_sprom_fill_auto(sprom, prefix, fallback);
---
-1.8.4.5
-
arch/mips/bcm47xx/nvram.c | 9 +++++----
1 file changed, 5 insertions(+), 4 deletions(-)
-diff --git a/arch/mips/bcm47xx/nvram.c b/arch/mips/bcm47xx/nvram.c
-index ba632ff..dee1c32 100644
--- a/arch/mips/bcm47xx/nvram.c
+++ b/arch/mips/bcm47xx/nvram.c
@@ -98,7 +98,7 @@ found:
}
err = mtd_read(mtd, 0, len, &bytes_read, dst);
---
-1.8.4.5
-
arch/mips/bcm47xx/nvram.c | 13 +++++--------
1 file changed, 5 insertions(+), 8 deletions(-)
-diff --git a/arch/mips/bcm47xx/nvram.c b/arch/mips/bcm47xx/nvram.c
-index dee1c32..95d028c 100644
--- a/arch/mips/bcm47xx/nvram.c
+++ b/arch/mips/bcm47xx/nvram.c
@@ -171,7 +171,7 @@ static int nvram_init(void)
if (!name)
return -EINVAL;
-@@ -184,19 +184,16 @@ int bcm47xx_nvram_getenv(const char *name, char *val, size_t val_len)
+@@ -184,19 +184,16 @@ int bcm47xx_nvram_getenv(const char *nam
/* Look for name=value and return value */
var = &nvram_buf[sizeof(struct nvram_header)];
}
return -ENOENT;
}
---
-1.8.4.5
-
include/linux/ssb/ssb.h | 5 ++++-
2 files changed, 7 insertions(+), 1 deletion(-)
-diff --git a/arch/mips/bcm47xx/sprom.c b/arch/mips/bcm47xx/sprom.c
-index 68ebf23..4048083 100644
--- a/arch/mips/bcm47xx/sprom.c
+++ b/arch/mips/bcm47xx/sprom.c
-@@ -201,6 +201,9 @@ static void bcm47xx_sprom_fill_auto(struct ssb_sprom *sprom,
+@@ -201,6 +201,9 @@ static void bcm47xx_sprom_fill_auto(stru
bool fb = fallback;
ENTRY(0xfffffffe, u16, pre, "boardrev", board_rev, 0, true);
include/linux/ssb/ssb.h | 3 +++
2 files changed, 9 insertions(+)
-diff --git a/arch/mips/bcm47xx/sprom.c b/arch/mips/bcm47xx/sprom.c
-index 4048083..92a6c9d 100644
--- a/arch/mips/bcm47xx/sprom.c
+++ b/arch/mips/bcm47xx/sprom.c
@@ -531,6 +531,8 @@ static int mac_addr_used = 2;
nvram_read_macaddr(prefix, "et0macaddr", sprom->et0mac, fallback);
nvram_read_u8(prefix, NULL, "et0mdcport", &sprom->et0mdcport, 0,
fallback);
-@@ -543,6 +545,10 @@ static void bcm47xx_fill_sprom_ethernet(struct ssb_sprom *sprom,
+@@ -543,6 +545,10 @@ static void bcm47xx_fill_sprom_ethernet(
nvram_read_u8(prefix, NULL, "et1phyaddr", &sprom->et1phyaddr, 0,
fallback);
arch/mips/include/asm/mach-bcm47xx/bcm47xx.h | 4 ---
3 files changed, 22 insertions(+), 29 deletions(-)
-diff --git a/arch/mips/bcm47xx/setup.c b/arch/mips/bcm47xx/setup.c
-index 82ff9fd..98c075f 100644
--- a/arch/mips/bcm47xx/setup.c
+++ b/arch/mips/bcm47xx/setup.c
@@ -206,9 +206,6 @@ void __init bcm47xx_bus_setup(void)
}
#endif
-diff --git a/arch/mips/bcm47xx/sprom.c b/arch/mips/bcm47xx/sprom.c
-index 92a6c9d..b0d62e7 100644
--- a/arch/mips/bcm47xx/sprom.c
+++ b/arch/mips/bcm47xx/sprom.c
-@@ -640,19 +640,6 @@ void bcm47xx_fill_ssb_boardinfo(struct ssb_boardinfo *boardinfo,
+@@ -640,19 +640,6 @@ void bcm47xx_fill_ssb_boardinfo(struct s
}
#endif
#if defined(CONFIG_BCM47XX_SSB)
static int bcm47xx_get_sprom_ssb(struct ssb_bus *bus, struct ssb_sprom *out)
{
-@@ -707,33 +694,46 @@ static void bcm47xx_sprom_apply_prefix_alias(char *prefix, size_t prefix_size)
+@@ -707,33 +694,46 @@ static void bcm47xx_sprom_apply_prefix_a
static int bcm47xx_get_sprom_bcma(struct bcma_bus *bus, struct ssb_sprom *out)
{
}
#endif
-diff --git a/arch/mips/include/asm/mach-bcm47xx/bcm47xx.h b/arch/mips/include/asm/mach-bcm47xx/bcm47xx.h
-index 8ed77f6..1461c10 100644
--- a/arch/mips/include/asm/mach-bcm47xx/bcm47xx.h
+++ b/arch/mips/include/asm/mach-bcm47xx/bcm47xx.h
-@@ -52,10 +52,6 @@ void bcm47xx_fill_sprom(struct ssb_sprom *sprom, const char *prefix,
+@@ -52,10 +52,6 @@ void bcm47xx_fill_sprom(struct ssb_sprom
void bcm47xx_fill_ssb_boardinfo(struct ssb_boardinfo *boardinfo,
const char *prefix);
#endif
void bcm47xx_set_system_type(u16 chip_id);
---
-1.8.4.5
-
arch/mips/mm/tlb-r4k.c | 2 +-
3 files changed, 3 insertions(+), 3 deletions(-)
-diff --git a/arch/mips/bcm47xx/prom.c b/arch/mips/bcm47xx/prom.c
-index ab698ba..135a540 100644
--- a/arch/mips/bcm47xx/prom.c
+++ b/arch/mips/bcm47xx/prom.c
@@ -126,7 +126,7 @@ void __init prom_free_prom_memory(void)
{
write_c0_pagemask(PM_DEFAULT_MASK);
write_c0_wired(0);
-diff --git a/arch/mips/include/asm/pgtable-32.h b/arch/mips/include/asm/pgtable-32.h
-index 7d56686..832e216 100644
--- a/arch/mips/include/asm/pgtable-32.h
+++ b/arch/mips/include/asm/pgtable-32.h
@@ -18,7 +18,7 @@
/*
* - add_temporary_entry() add a temporary TLB entry. We use TLB entries
-diff --git a/arch/mips/mm/tlb-r4k.c b/arch/mips/mm/tlb-r4k.c
-index 08318ec..5037d58 100644
--- a/arch/mips/mm/tlb-r4k.c
+++ b/arch/mips/mm/tlb-r4k.c
-@@ -411,7 +411,7 @@ int __init has_transparent_hugepage(void)
+@@ -411,7 +411,7 @@ int __init has_transparent_hugepage(void
* lifetime of the system
*/
__init int add_temporary_entry(unsigned long entrylo0, unsigned long entrylo1,
unsigned long entryhi, unsigned long pagemask)
---
-1.8.4.5
-
arch/mips/include/asm/mach-bcm47xx/bcm47xx_board.h | 2 ++
4 files changed, 28 insertions(+)
-diff --git a/arch/mips/bcm47xx/board.c b/arch/mips/bcm47xx/board.c
-index bd56415..a88975a 100644
--- a/arch/mips/bcm47xx/board.c
+++ b/arch/mips/bcm47xx/board.c
-@@ -149,6 +149,7 @@ struct bcm47xx_board_type_list2 bcm47xx_board_list_boot_hw[] __initconst = {
+@@ -149,6 +149,7 @@ struct bcm47xx_board_type_list2 bcm47xx_
/* board_id */
static const
struct bcm47xx_board_type_list1 bcm47xx_board_list_board_id[] __initconst = {
{{BCM47XX_BOARD_NETGEAR_WGR614V8, "Netgear WGR614 V8"}, "U12H072T00_NETGEAR"},
{{BCM47XX_BOARD_NETGEAR_WGR614V9, "Netgear WGR614 V9"}, "U12H094T00_NETGEAR"},
{{BCM47XX_BOARD_NETGEAR_WGR614_V10, "Netgear WGR614 V10"}, "U12H139T01_NETGEAR"},
-diff --git a/arch/mips/bcm47xx/buttons.c b/arch/mips/bcm47xx/buttons.c
-index 276276a..08a4abf 100644
--- a/arch/mips/bcm47xx/buttons.c
+++ b/arch/mips/bcm47xx/buttons.c
-@@ -299,6 +299,13 @@ bcm47xx_buttons_linksys_wrtsl54gs[] __initconst = {
+@@ -299,6 +299,13 @@ bcm47xx_buttons_linksys_wrtsl54gs[] __in
BCM47XX_GPIO_KEY(6, KEY_RESTART),
};
/* Microsoft */
static const struct gpio_keys_button
-@@ -555,6 +562,10 @@ int __init bcm47xx_buttons_register(void)
+@@ -555,6 +562,10 @@ int __init bcm47xx_buttons_register(void
err = bcm47xx_copy_bdata(bcm47xx_buttons_linksys_wrtsl54gs);
break;
case BCM47XX_BOARD_MICROSOFT_MN700:
err = bcm47xx_copy_bdata(bcm47xx_buttons_microsoft_nm700);
break;
-diff --git a/arch/mips/bcm47xx/leds.c b/arch/mips/bcm47xx/leds.c
-index 0e4ade3..d20ae63 100644
--- a/arch/mips/bcm47xx/leds.c
+++ b/arch/mips/bcm47xx/leds.c
-@@ -370,6 +370,16 @@ bcm47xx_leds_linksys_wrtsl54gs[] __initconst = {
+@@ -370,6 +370,16 @@ bcm47xx_leds_linksys_wrtsl54gs[] __initc
BCM47XX_GPIO_LED(7, "orange", "wps", 1, LEDS_GPIO_DEFSTATE_OFF),
};
case BCM47XX_BOARD_MICROSOFT_MN700:
bcm47xx_set_pdata(bcm47xx_leds_microsoft_nm700);
break;
-diff --git a/arch/mips/include/asm/mach-bcm47xx/bcm47xx_board.h b/arch/mips/include/asm/mach-bcm47xx/bcm47xx_board.h
-index c41d1dc..2afb840 100644
--- a/arch/mips/include/asm/mach-bcm47xx/bcm47xx_board.h
+++ b/arch/mips/include/asm/mach-bcm47xx/bcm47xx_board.h
@@ -80,6 +80,8 @@ enum bcm47xx_board {
BCM47XX_BOARD_MICROSOFT_MN700,
BCM47XX_BOARD_MOTOROLA_WE800G,
---
-1.8.4.5
-
include/linux/bcm47xx_nvram.h | 15 +++++++++++
2 files changed, 60 insertions(+), 15 deletions(-)
-diff --git a/arch/mips/bcm47xx/nvram.c b/arch/mips/bcm47xx/nvram.c
-index 95d028c..2ed762e 100644
--- a/arch/mips/bcm47xx/nvram.c
+++ b/arch/mips/bcm47xx/nvram.c
-@@ -94,17 +94,22 @@ static int nvram_find_and_copy(void __iomem *iobase, u32 lim)
+@@ -94,17 +94,22 @@ static int nvram_find_and_copy(void __io
return -ENXIO;
found:
return 0;
}
#endif
-@@ -219,3 +226,26 @@ int bcm47xx_nvram_gpio_pin(const char *name)
+@@ -219,3 +226,26 @@ int bcm47xx_nvram_gpio_pin(const char *n
return -ENOENT;
}
EXPORT_SYMBOL(bcm47xx_nvram_gpio_pin);
+ return nvram;
+}
+EXPORT_SYMBOL(bcm47xx_nvram_get_contents);
-diff --git a/include/linux/bcm47xx_nvram.h b/include/linux/bcm47xx_nvram.h
-index b12b07e..c73927c 100644
--- a/include/linux/bcm47xx_nvram.h
+++ b/include/linux/bcm47xx_nvram.h
@@ -10,11 +10,17 @@
#else
static inline int bcm47xx_nvram_init_from_mem(u32 base, u32 lim)
{
-@@ -29,6 +35,15 @@ static inline int bcm47xx_nvram_gpio_pin(const char *name)
+@@ -29,6 +35,15 @@ static inline int bcm47xx_nvram_gpio_pin
{
return -ENOTSUPP;
};
#endif
#endif /* __BCM47XX_NVRAM_H */
---
-1.8.4.5
-
arch/mips/bcm47xx/nvram.c | 37 ++++++++++++++++---------------------
1 file changed, 16 insertions(+), 21 deletions(-)
-diff --git a/arch/mips/bcm47xx/nvram.c b/arch/mips/bcm47xx/nvram.c
-index 2ed762e..9ccdce8 100644
--- a/arch/mips/bcm47xx/nvram.c
+++ b/arch/mips/bcm47xx/nvram.c
@@ -35,6 +35,7 @@ struct nvram_header {
static const u32 nvram_sizes[] = {0x8000, 0xF000, 0x10000};
static u32 find_nvram_size(void __iomem *end)
-@@ -60,7 +61,7 @@ static int nvram_find_and_copy(void __iomem *iobase, u32 lim)
+@@ -60,7 +61,7 @@ static int nvram_find_and_copy(void __io
u32 *src, *dst;
u32 size;
}
#endif
-@@ -183,7 +180,7 @@ int bcm47xx_nvram_getenv(const char *name, char *val, size_t val_len)
+@@ -183,7 +180,7 @@ int bcm47xx_nvram_getenv(const char *nam
if (!name)
return -EINVAL;
err = nvram_init();
if (err)
return err;
-@@ -231,16 +228,14 @@ char *bcm47xx_nvram_get_contents(size_t *nvram_size)
+@@ -231,16 +228,14 @@ char *bcm47xx_nvram_get_contents(size_t
{
int err;
char *nvram;
nvram = vmalloc(*nvram_size);
if (!nvram)
return NULL;
---
-1.8.4.5
-
arch/mips/bcm47xx/Kconfig | 1 -
1 file changed, 1 deletion(-)
-diff --git a/arch/mips/bcm47xx/Kconfig b/arch/mips/bcm47xx/Kconfig
-index fc21d36..51ed599 100644
--- a/arch/mips/bcm47xx/Kconfig
+++ b/arch/mips/bcm47xx/Kconfig
@@ -25,7 +25,6 @@ config BCM47XX_BCMA
select BCMA_DRIVER_PCI_HOSTMODE if PCI
select BCMA_DRIVER_GPIO
default y
---
-1.8.4.5
-
drivers/ssb/driver_pcicore.c | 4 ++++
1 file changed, 4 insertions(+)
-diff --git a/drivers/ssb/driver_pcicore.c b/drivers/ssb/driver_pcicore.c
-index 15a7ee3..c603d19 100644
--- a/drivers/ssb/driver_pcicore.c
+++ b/drivers/ssb/driver_pcicore.c
-@@ -164,6 +164,10 @@ static int ssb_extpci_write_config(struct ssb_pcicore *pc,
+@@ -164,6 +164,10 @@ static int ssb_extpci_write_config(struc
SSB_WARN_ON(!pc->hostmode);
if (unlikely(len != 1 && len != 2 && len != 4))
goto out;
addr = get_cfgspace_addr(pc, bus, dev, func, off);
if (unlikely(!addr))
goto out;
---
-1.8.4.5
-
--- a/drivers/mtd/ubi/block.c
+++ b/drivers/mtd/ubi/block.c
-@@ -614,6 +614,44 @@ static void __init ubiblock_create_from_
+@@ -616,6 +616,44 @@ static void __init ubiblock_create_from_
}
}
static void ubiblock_remove_all(void)
{
struct ubiblock *next;
-@@ -644,6 +682,10 @@ int __init ubiblock_init(void)
+@@ -646,6 +684,10 @@ int __init ubiblock_init(void)
*/
ubiblock_create_from_param();
#include "ubi-media.h"
#include "ubi.h"
-@@ -437,6 +438,15 @@ int ubiblock_create(struct ubi_volume_in
+@@ -439,6 +440,15 @@ int ubiblock_create(struct ubi_volume_in
add_disk(dev->gd);
dev_info(disk_to_dev(dev->gd), "created from ubi%d:%d(%s)",
dev->ubi_num, dev->vol_id, vi->name);
{USB_DEVICE(0x0af0, 0xd155)},
--- a/drivers/usb/storage/unusual_devs.h
+++ b/drivers/usb/storage/unusual_devs.h
-@@ -1323,6 +1323,12 @@ UNUSUAL_DEV( 0x0af0, 0x8304, 0x0000, 0x0
+@@ -1330,6 +1330,12 @@ UNUSUAL_DEV( 0x0af0, 0x8304, 0x0000, 0x0
USB_SC_DEVICE, USB_PR_DEVICE, NULL,
0 ),
/*
* Define if arch has non-standard setup. This is a _PCI_ standard
-@@ -865,6 +868,12 @@ struct ata_port {
+@@ -874,6 +877,12 @@ struct ata_port {
#ifdef CONFIG_ATA_ACPI
struct ata_acpi_gtm __acpi_init_gtm; /* use ata_acpi_init_gtm() */
#endif
+#include <dt-bindings/mfd/qcom-rpm.h>
#include <dt-bindings/soc/qcom,gsbi.h>
#include <dt-bindings/reset/qcom,gcc-ipq806x.h>
-
-@@ -75,6 +76,63 @@
+ #include <include/dt-bindings/interrupt-controller/arm-gic.h>
+@@ -76,6 +77,63 @@
ranges;
compatible = "simple-bus";
qcom_pinmux: pinmux@800000 {
compatible = "qcom,ipq8064-pinctrl";
reg = <0x800000 0x4000>;
-@@ -119,6 +177,12 @@
+@@ -120,6 +178,12 @@
reg = <0x02098000 0x1000>, <0x02008000 0x1000>;
};
--- a/drivers/clk/clk.c
+++ b/drivers/clk/clk.c
-@@ -1688,21 +1688,24 @@ static struct clk_core *clk_propagate_ra
+@@ -1696,21 +1696,24 @@ static struct clk_core *clk_propagate_ra
* walk down a subtree and set the new rates notifying the rate
* change on the way
*/
if (clk->new_parent && clk->new_parent != clk->parent) {
old_parent = __clk_set_parent_before(clk, clk->new_parent);
-@@ -1722,7 +1725,7 @@ static void clk_change_rate(struct clk_c
+@@ -1730,7 +1733,7 @@ static void clk_change_rate(struct clk_c
if (!skip_set_rate && clk->ops->set_rate)
clk->ops->set_rate(clk->hw, clk->new_rate, best_parent_rate);
if (clk->notifier_count && old_rate != clk->rate)
__clk_notify(clk, POST_RATE_CHANGE, old_rate, clk->rate);
-@@ -1735,12 +1738,13 @@ static void clk_change_rate(struct clk_c
+@@ -1743,12 +1746,13 @@ static void clk_change_rate(struct clk_c
/* Skip children who will be reparented to another clock */
if (child->new_parent && child->new_parent != clk)
continue;
}
static int clk_core_set_rate_nolock(struct clk_core *clk,
-@@ -1749,6 +1753,7 @@ static int clk_core_set_rate_nolock(stru
+@@ -1757,6 +1761,7 @@ static int clk_core_set_rate_nolock(stru
struct clk_core *top, *fail_clk;
unsigned long rate = req_rate;
int ret = 0;
if (!clk)
return 0;
-@@ -1774,8 +1779,13 @@ static int clk_core_set_rate_nolock(stru
+@@ -1782,8 +1787,13 @@ static int clk_core_set_rate_nolock(stru
return -EBUSY;
}
struct clk_core *new_parent;
struct clk_core *new_child;
unsigned long flags;
-@@ -1549,7 +1552,8 @@ out:
+@@ -1557,7 +1560,8 @@ out:
static void clk_calc_subtree(struct clk_core *clk, unsigned long new_rate,
struct clk_core *new_parent, u8 p_index)
{
clk->new_rate = new_rate;
clk->new_parent = new_parent;
-@@ -1559,6 +1563,18 @@ static void clk_calc_subtree(struct clk_
+@@ -1567,6 +1571,18 @@ static void clk_calc_subtree(struct clk_
if (new_parent && new_parent != clk->parent)
new_parent->new_child = clk;
hlist_for_each_entry(child, &clk->children, child_node) {
child->new_rate = clk_recalc(child, new_rate);
clk_calc_subtree(child, child->new_rate, NULL, 0);
-@@ -1654,14 +1670,43 @@ static struct clk_core *clk_propagate_ra
+@@ -1662,14 +1678,43 @@ static struct clk_core *clk_propagate_ra
unsigned long event)
{
struct clk_core *child, *tmp_clk, *fail_clk = NULL;
fail_clk = clk;
}
-@@ -1707,7 +1752,8 @@ clk_change_rate(struct clk_core *clk, un
+@@ -1715,7 +1760,8 @@ clk_change_rate(struct clk_core *clk, un
old_rate = clk->rate;
old_parent = __clk_set_parent_before(clk, clk->new_parent);
if (clk->ops->set_rate_and_parent) {
-@@ -1727,9 +1773,6 @@ clk_change_rate(struct clk_core *clk, un
+@@ -1735,9 +1781,6 @@ clk_change_rate(struct clk_core *clk, un
clk->rate = clk->new_rate;
/*
* Use safe iteration, as change_rate can actually swap parents
* for certain clock types.
-@@ -1789,6 +1832,8 @@ static int clk_core_set_rate_nolock(stru
+@@ -1797,6 +1840,8 @@ static int clk_core_set_rate_nolock(stru
clk->req_rate = req_rate;
--- a/arch/arm/boot/dts/qcom-ipq8064.dtsi
+++ b/arch/arm/boot/dts/qcom-ipq8064.dtsi
-@@ -23,6 +23,11 @@
+@@ -24,6 +24,11 @@
next-level-cache = <&L2>;
qcom,acc = <&acc0>;
qcom,saw = <&saw0>;
};
cpu@1 {
-@@ -33,11 +38,24 @@
+@@ -34,11 +39,24 @@
next-level-cache = <&L2>;
qcom,acc = <&acc1>;
qcom,saw = <&saw1>;
};
};
-@@ -70,6 +88,46 @@
+@@ -71,6 +89,46 @@
};
};
soc: soc {
#address-cells = <1>;
#size-cells = <1>;
-@@ -170,11 +228,13 @@
+@@ -171,11 +229,13 @@
acc0: clock-controller@2088000 {
compatible = "qcom,kpss-acc-v1";
reg = <0x02088000 0x1000>, <0x02008000 0x1000>;
-Index: linux-3.18-rc4/arch/arm/include/asm/glue-cache.h
-===================================================================
---- linux-3.18-rc4.orig/arch/arm/include/asm/glue-cache.h
-+++ linux-3.18-rc4/arch/arm/include/asm/glue-cache.h
+--- a/arch/arm/include/asm/glue-cache.h
++++ b/arch/arm/include/asm/glue-cache.h
@@ -156,11 +156,19 @@ static inline void nop_dma_unmap_area(co
#define __cpuc_flush_user_range __glue(_CACHE,_flush_user_cache_range)
#define __cpuc_coherent_kern_range __glue(_CACHE,_coherent_kern_range)
#endif
#endif
-Index: linux-3.18-rc4/arch/arm/mm/Kconfig
-===================================================================
---- linux-3.18-rc4.orig/arch/arm/mm/Kconfig
-+++ linux-3.18-rc4/arch/arm/mm/Kconfig
-@@ -843,6 +843,17 @@ config DMA_CACHE_RWFO
+--- a/arch/arm/mm/Kconfig
++++ b/arch/arm/mm/Kconfig
+@@ -844,6 +844,17 @@ config DMA_CACHE_RWFO
in hardware, other workarounds are needed (e.g. cache
maintenance broadcasting in software via FIQ).
config OUTER_CACHE
bool
-Index: linux-3.18-rc4/arch/arm/mm/flush.c
-===================================================================
---- linux-3.18-rc4.orig/arch/arm/mm/flush.c
-+++ linux-3.18-rc4/arch/arm/mm/flush.c
+--- a/arch/arm/mm/flush.c
++++ b/arch/arm/mm/flush.c
@@ -314,7 +314,11 @@ void flush_dcache_page(struct page *page
mapping = page_mapping(page);
-Index: linux-3.18-rc4/Documentation/devicetree/bindings/vendor-prefixes.txt
-===================================================================
---- linux-3.18-rc4.orig/Documentation/devicetree/bindings/vendor-prefixes.txt
-+++ linux-3.18-rc4/Documentation/devicetree/bindings/vendor-prefixes.txt
-@@ -113,6 +113,7 @@ panasonic Panasonic Corporation
+--- a/Documentation/devicetree/bindings/vendor-prefixes.txt
++++ b/Documentation/devicetree/bindings/vendor-prefixes.txt
+@@ -139,6 +139,7 @@ pericom Pericom Technology Inc.
phytec PHYTEC Messtechnik GmbH
picochip Picochip Ltd
plathome Plat'Home Co., Ltd.
-Index: linux-4.0-rc4/arch/arm/Kconfig
-===================================================================
---- linux-4.0-rc4.orig/arch/arm/Kconfig
-+++ linux-4.0-rc4/arch/arm/Kconfig
+--- a/arch/arm/Kconfig
++++ b/arch/arm/Kconfig
@@ -356,6 +356,17 @@ config ARCH_VERSATILE
help
This enables support for ARM Ltd Versatile board.
config ARCH_AT91
bool "Atmel AT91"
select ARCH_REQUIRE_GPIOLIB
-@@ -916,6 +927,8 @@ source "arch/arm/mach-omap2/Kconfig"
+@@ -917,6 +928,8 @@ source "arch/arm/mach-omap2/Kconfig"
source "arch/arm/mach-orion5x/Kconfig"
source "arch/arm/mach-picoxcell/Kconfig"
source "arch/arm/mach-pxa/Kconfig"
-Index: linux-4.0-rc4/arch/arm/Makefile
-===================================================================
---- linux-4.0-rc4.orig/arch/arm/Makefile
-+++ linux-4.0-rc4/arch/arm/Makefile
+--- a/arch/arm/Makefile
++++ b/arch/arm/Makefile
@@ -188,6 +188,7 @@ machine-$(CONFIG_ARCH_NSPIRE) += nspire
machine-$(CONFIG_ARCH_OMAP1) += omap1
machine-$(CONFIG_ARCH_OMAP2PLUS) += omap2
machine-$(CONFIG_ARCH_PICOXCELL) += picoxcell
machine-$(CONFIG_ARCH_PXA) += pxa
machine-$(CONFIG_ARCH_QCOM) += qcom
-Index: linux-4.0-rc4/arch/arm/boot/dts/Makefile
-===================================================================
---- linux-4.0-rc4.orig/arch/arm/boot/dts/Makefile
-+++ linux-4.0-rc4/arch/arm/boot/dts/Makefile
+--- a/arch/arm/boot/dts/Makefile
++++ b/arch/arm/boot/dts/Makefile
@@ -429,6 +429,7 @@ dtb-$(CONFIG_ARCH_ORION5X) += \
orion5x-lacie-ethernet-disk-mini-v2.dtb \
orion5x-maxtor-shared-storage-2.dtb \
dtb-$(CONFIG_ARCH_PRIMA2) += \
prima2-evb.dtb
dtb-$(CONFIG_ARCH_QCOM) += \
-Index: linux-4.0-rc4/arch/arm/tools/mach-types
-===================================================================
---- linux-4.0-rc4.orig/arch/arm/tools/mach-types
-+++ linux-4.0-rc4/arch/arm/tools/mach-types
+--- a/arch/arm/tools/mach-types
++++ b/arch/arm/tools/mach-types
@@ -228,6 +228,7 @@ edb9302a MACH_EDB9302A EDB9302A 1127
edb9307a MACH_EDB9307A EDB9307A 1128
omap_3430sdp MACH_OMAP_3430SDP OMAP_3430SDP 1138
micro9m MACH_MICRO9M MICRO9M 1169
bug MACH_BUG BUG 1179
at91sam9263ek MACH_AT91SAM9263EK AT91SAM9263EK 1202
-Index: linux-4.0-rc4/drivers/clk/Makefile
-===================================================================
---- linux-4.0-rc4.orig/drivers/clk/Makefile
-+++ linux-4.0-rc4/drivers/clk/Makefile
+--- a/drivers/clk/Makefile
++++ b/drivers/clk/Makefile
@@ -31,6 +31,7 @@ obj-$(CONFIG_COMMON_CLK_MAX77802) += clk
obj-$(CONFIG_ARCH_MOXART) += clk-moxart.o
obj-$(CONFIG_ARCH_NOMADIK) += clk-nomadik.o
-Index: linux-4.0-rc4/drivers/clocksource/Kconfig
-===================================================================
---- linux-4.0-rc4.orig/drivers/clocksource/Kconfig
-+++ linux-4.0-rc4/drivers/clocksource/Kconfig
+--- a/drivers/clocksource/Kconfig
++++ b/drivers/clocksource/Kconfig
@@ -172,6 +172,12 @@ config VF_PIT_TIMER
help
Support for Period Interrupt Timer on Freescale Vybrid Family SoCs.
config SYS_SUPPORTS_SH_CMT
bool
-Index: linux-4.0-rc4/drivers/clocksource/Makefile
-===================================================================
---- linux-4.0-rc4.orig/drivers/clocksource/Makefile
-+++ linux-4.0-rc4/drivers/clocksource/Makefile
+--- a/drivers/clocksource/Makefile
++++ b/drivers/clocksource/Makefile
@@ -38,6 +38,7 @@ obj-$(CONFIG_CLKSRC_EFM32) += time-efm32
obj-$(CONFIG_CLKSRC_EXYNOS_MCT) += exynos_mct.o
obj-$(CONFIG_CLKSRC_SAMSUNG_PWM) += samsung_pwm_timer.o
-Index: linux-4.0-rc4/drivers/irqchip/Kconfig
-===================================================================
---- linux-4.0-rc4.orig/drivers/irqchip/Kconfig
-+++ linux-4.0-rc4/drivers/irqchip/Kconfig
+--- a/drivers/irqchip/Kconfig
++++ b/drivers/irqchip/Kconfig
@@ -27,6 +27,11 @@ config ARM_GIC_V3_ITS
bool
select PCI_MSI_IRQ_DOMAIN
config ARM_NVIC
bool
select IRQ_DOMAIN
-Index: linux-4.0-rc4/drivers/irqchip/Makefile
-===================================================================
---- linux-4.0-rc4.orig/drivers/irqchip/Makefile
-+++ linux-4.0-rc4/drivers/irqchip/Makefile
+--- a/drivers/irqchip/Makefile
++++ b/drivers/irqchip/Makefile
@@ -30,6 +30,7 @@ obj-$(CONFIG_IMGPDC_IRQ) += irq-imgpdc.
obj-$(CONFIG_SIRF_IRQ) += irq-sirfsoc.o
obj-$(CONFIG_RENESAS_INTC_IRQPIN) += irq-renesas-intc-irqpin.o
obj-$(CONFIG_VERSATILE_FPGA_IRQ) += irq-versatile-fpga.o
obj-$(CONFIG_ARCH_NSPIRE) += irq-zevio.o
obj-$(CONFIG_ARCH_VT8500) += irq-vt8500.o
-Index: linux-4.0-rc4/drivers/irqchip/irq-gic.c
-===================================================================
---- linux-4.0-rc4.orig/drivers/irqchip/irq-gic.c
-+++ linux-4.0-rc4/drivers/irqchip/irq-gic.c
+--- a/drivers/irqchip/irq-gic.c
++++ b/drivers/irqchip/irq-gic.c
@@ -1086,6 +1086,7 @@ IRQCHIP_DECLARE(arm1176jzf_dc_gic, "arm,
IRQCHIP_DECLARE(cortex_a15_gic, "arm,cortex-a15-gic", gic_of_init);
IRQCHIP_DECLARE(cortex_a9_gic, "arm,cortex-a9-gic", gic_of_init);
-Index: linux-4.0-rc4/drivers/pinctrl/Kconfig
-===================================================================
---- linux-4.0-rc4.orig/drivers/pinctrl/Kconfig
-+++ linux-4.0-rc4/drivers/pinctrl/Kconfig
+--- a/drivers/pinctrl/Kconfig
++++ b/drivers/pinctrl/Kconfig
@@ -188,6 +188,15 @@ config PINCTRL_COH901
COH 901 335 and COH 901 571/3. They contain 3, 5 or 7
ports of 8 GPIO pins each.
config PINCTRL_PALMAS
bool "Pinctrl driver for the PALMAS Series MFD devices"
depends on OF && MFD_PALMAS
-Index: linux-4.0-rc4/drivers/pinctrl/Makefile
-===================================================================
---- linux-4.0-rc4.orig/drivers/pinctrl/Makefile
-+++ linux-4.0-rc4/drivers/pinctrl/Makefile
+--- a/drivers/pinctrl/Makefile
++++ b/drivers/pinctrl/Makefile
@@ -18,6 +18,7 @@ obj-$(CONFIG_PINCTRL_BCM2835) += pinctrl
obj-$(CONFIG_PINCTRL_BCM281XX) += pinctrl-bcm281xx.o
obj-$(CONFIG_PINCTRL_FALCON) += pinctrl-falcon.o
-Index: linux-4.0-rc4/drivers/pci/host/Kconfig
-===================================================================
---- linux-4.0-rc4.orig/drivers/pci/host/Kconfig
-+++ linux-4.0-rc4/drivers/pci/host/Kconfig
+--- a/drivers/pci/host/Kconfig
++++ b/drivers/pci/host/Kconfig
@@ -106,4 +106,9 @@ config PCI_VERSATILE
bool "ARM Versatile PB PCI controller"
depends on ARCH_VERSATILE
+ select PCIEPORTBUS
+
endmenu
-Index: linux-4.0-rc4/drivers/pci/host/Makefile
-===================================================================
---- linux-4.0-rc4.orig/drivers/pci/host/Makefile
-+++ linux-4.0-rc4/drivers/pci/host/Makefile
+--- a/drivers/pci/host/Makefile
++++ b/drivers/pci/host/Makefile
@@ -3,6 +3,7 @@ obj-$(CONFIG_PCI_DRA7XX) += pci-dra7xx.o
obj-$(CONFIG_PCI_EXYNOS) += pci-exynos.o
obj-$(CONFIG_PCI_IMX6) += pci-imx6.o
-Index: linux-4.0-rc4/drivers/reset/Kconfig
-===================================================================
---- linux-4.0-rc4.orig/drivers/reset/Kconfig
-+++ linux-4.0-rc4/drivers/reset/Kconfig
+--- a/drivers/reset/Kconfig
++++ b/drivers/reset/Kconfig
@@ -12,4 +12,9 @@ menuconfig RESET_CONTROLLER
If unsure, say no.
+
source "drivers/reset/sti/Kconfig"
+
-Index: linux-4.0-rc4/drivers/reset/Makefile
-===================================================================
---- linux-4.0-rc4.orig/drivers/reset/Makefile
-+++ linux-4.0-rc4/drivers/reset/Makefile
+--- a/drivers/reset/Makefile
++++ b/drivers/reset/Makefile
@@ -1,4 +1,5 @@
obj-$(CONFIG_RESET_CONTROLLER) += core.o
+obj-$(CONFIG_RESET_CONTROLLER_OXNAS) += reset-ox820.o
-Index: linux-4.0-rc4/drivers/mtd/nand/Kconfig
-===================================================================
---- linux-4.0-rc4.orig/drivers/mtd/nand/Kconfig
-+++ linux-4.0-rc4/drivers/mtd/nand/Kconfig
+--- a/drivers/mtd/nand/Kconfig
++++ b/drivers/mtd/nand/Kconfig
@@ -530,4 +530,12 @@ config MTD_NAND_HISI504
help
Enables support for NAND controller on Hisilicon SoC Hip04.
+ to the STATIC Unit.
+
endif # MTD_NAND
-Index: linux-4.0-rc4/drivers/mtd/nand/Makefile
-===================================================================
---- linux-4.0-rc4.orig/drivers/mtd/nand/Makefile
-+++ linux-4.0-rc4/drivers/mtd/nand/Makefile
+--- a/drivers/mtd/nand/Makefile
++++ b/drivers/mtd/nand/Makefile
@@ -45,6 +45,7 @@ obj-$(CONFIG_MTD_NAND_SOCRATES) += socr
obj-$(CONFIG_MTD_NAND_TXX9NDFMC) += txx9ndfmc.o
obj-$(CONFIG_MTD_NAND_NUC900) += nuc900_nand.o
-Index: linux-4.0-rc4/drivers/ata/Kconfig
-===================================================================
---- linux-4.0-rc4.orig/drivers/ata/Kconfig
-+++ linux-4.0-rc4/drivers/ata/Kconfig
+--- a/drivers/ata/Kconfig
++++ b/drivers/ata/Kconfig
@@ -401,6 +401,13 @@ config SATA_VITESSE
If unsure, say N.
comment "PATA SFF controllers with BMDMA"
config PATA_ALI
-Index: linux-4.0-rc4/drivers/ata/Makefile
-===================================================================
---- linux-4.0-rc4.orig/drivers/ata/Makefile
-+++ linux-4.0-rc4/drivers/ata/Makefile
+--- a/drivers/ata/Makefile
++++ b/drivers/ata/Makefile
@@ -37,6 +37,7 @@ obj-$(CONFIG_SATA_SVW) += sata_svw.o
obj-$(CONFIG_SATA_ULI) += sata_uli.o
obj-$(CONFIG_SATA_VIA) += sata_via.o
-Index: linux-4.0-rc4/drivers/usb/host/Kconfig
-===================================================================
---- linux-4.0-rc4.orig/drivers/usb/host/Kconfig
-+++ linux-4.0-rc4/drivers/usb/host/Kconfig
+--- a/drivers/usb/host/Kconfig
++++ b/drivers/usb/host/Kconfig
@@ -306,6 +306,13 @@ config USB_OCTEON_EHCI
USB 2.0 device support. All CN6XXX based chips with USB are
supported.
endif # USB_EHCI_HCD
config USB_OXU210HP_HCD
-Index: linux-4.0-rc4/drivers/usb/host/Makefile
-===================================================================
---- linux-4.0-rc4.orig/drivers/usb/host/Makefile
-+++ linux-4.0-rc4/drivers/usb/host/Makefile
+--- a/drivers/usb/host/Makefile
++++ b/drivers/usb/host/Makefile
@@ -42,6 +42,7 @@ obj-$(CONFIG_USB_EHCI_HCD_AT91) += ehci-
obj-$(CONFIG_USB_EHCI_MSM) += ehci-msm.o
obj-$(CONFIG_USB_EHCI_TEGRA) += ehci-tegra.o
-Index: linux-4.0-rc4/arch/arm/boot/dts/Makefile
-===================================================================
---- linux-4.0-rc4.orig/arch/arm/boot/dts/Makefile
-+++ linux-4.0-rc4/arch/arm/boot/dts/Makefile
+--- a/arch/arm/boot/dts/Makefile
++++ b/arch/arm/boot/dts/Makefile
@@ -429,7 +429,10 @@ dtb-$(CONFIG_ARCH_ORION5X) += \
orion5x-lacie-ethernet-disk-mini-v2.dtb \
orion5x-maxtor-shared-storage-2.dtb \
-Index: linux-4.0-rc4/drivers/ata/libata-core.c
-===================================================================
---- linux-4.0-rc4.orig/drivers/ata/libata-core.c
-+++ linux-4.0-rc4/drivers/ata/libata-core.c
+--- a/drivers/ata/libata-core.c
++++ b/drivers/ata/libata-core.c
@@ -1586,6 +1586,14 @@ unsigned ata_exec_internal_sg(struct ata
return AC_ERR_SYSTEM;
}
/* initialize internal qc */
/* XXX: Tag 0 is used for drivers with legacy EH as some
-@@ -4749,6 +4757,9 @@ struct ata_queued_cmd *ata_qc_new_init(s
+@@ -4760,6 +4768,9 @@ struct ata_queued_cmd *ata_qc_new_init(s
if (unlikely(ap->pflags & ATA_PFLAG_FROZEN))
return NULL;
+ return NULL;
+
/* libsas case */
- if (!ap->scsi_host) {
+ if (ap->flags & ATA_FLAG_SAS_HOST) {
tag = ata_sas_allocate_tag(ap);
-@@ -4794,6 +4805,8 @@ void ata_qc_free(struct ata_queued_cmd *
+@@ -4805,6 +4816,8 @@ void ata_qc_free(struct ata_queued_cmd *
qc->tag = ATA_TAG_POISON;
- if (!ap->scsi_host)
+ if (ap->flags & ATA_FLAG_SAS_HOST)
ata_sas_free_tag(tag, ap);
+ if (ap->ops->qc_free)
+ ap->ops->qc_free(qc);
}
}
-Index: linux-4.0-rc4/include/linux/libata.h
-===================================================================
---- linux-4.0-rc4.orig/include/linux/libata.h
-+++ linux-4.0-rc4/include/linux/libata.h
-@@ -893,6 +893,8 @@ struct ata_port_operations {
+--- a/include/linux/libata.h
++++ b/include/linux/libata.h
+@@ -903,6 +903,8 @@ struct ata_port_operations {
void (*qc_prep)(struct ata_queued_cmd *qc);
unsigned int (*qc_issue)(struct ata_queued_cmd *qc);
bool (*qc_fill_rtf)(struct ata_queued_cmd *qc);
/*
* Configuration and exception handling
-@@ -983,6 +985,9 @@ struct ata_port_operations {
+@@ -993,6 +995,9 @@ struct ata_port_operations {
void (*phy_reset)(struct ata_port *ap);
void (*eng_timeout)(struct ata_port *ap);