update to 2.6.25.20, 2.6.26.8, 2.6.27.5 and refresh patches * based on a patch by Hauke Mehrtens * closes #4193

SVN-Revision: 13192
This commit is contained in:
Gabor Juhos 2008-11-12 17:49:01 +00:00
parent 9d0f42d50a
commit 88cda758c3
42 changed files with 164 additions and 426 deletions

View File

@ -22,14 +22,14 @@ endif
ifeq ($(LINUX_VERSION),2.6.24.7) ifeq ($(LINUX_VERSION),2.6.24.7)
LINUX_KERNEL_MD5SUM:=40a73780d51525d28d36dec852c680c4 LINUX_KERNEL_MD5SUM:=40a73780d51525d28d36dec852c680c4
endif endif
ifeq ($(LINUX_VERSION),2.6.25.19) ifeq ($(LINUX_VERSION),2.6.25.20)
LINUX_KERNEL_MD5SUM:=1b20d2d2a5a0f119372a166eaf816e13 LINUX_KERNEL_MD5SUM:=0da698edccf03e2235abc2830a495114
endif endif
ifeq ($(LINUX_VERSION),2.6.26.7) ifeq ($(LINUX_VERSION),2.6.26.8)
LINUX_KERNEL_MD5SUM:=ada8af1e3ec15bd6e9bdbcadf23a9cc2 LINUX_KERNEL_MD5SUM:=05dd0d4f8f110b4219ae6ec7a36c046d
endif endif
ifeq ($(LINUX_VERSION),2.6.27.4) ifeq ($(LINUX_VERSION),2.6.27.5)
LINUX_KERNEL_MD5SUM:=3880fe9f19b9a7690afd151326eb7ce5 LINUX_KERNEL_MD5SUM:=99b687c0d2c64831cae00a046731ed94
endif endif
# disable the md5sum check for unknown kernel versions # disable the md5sum check for unknown kernel versions

View File

@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk
BOARD:=adm5120 BOARD:=adm5120
BOARDNAME:=Infineon/ADMtek ADM5120 BOARDNAME:=Infineon/ADMtek ADM5120
LINUX_VERSION:=2.6.26.7 LINUX_VERSION:=2.6.26.8
SUBTARGETS:=router_le router_be SUBTARGETS:=router_le router_be
INITRAMFS_EXTRA_FILES:= INITRAMFS_EXTRA_FILES:=

View File

@ -11,7 +11,7 @@ BOARD:=ar7
BOARDNAME:=TI AR7 BOARDNAME:=TI AR7
FEATURES:=squashfs jffs2 atm FEATURES:=squashfs jffs2 atm
LINUX_VERSION:=2.6.26.7 LINUX_VERSION:=2.6.26.8
include $(INCLUDE_DIR)/target.mk include $(INCLUDE_DIR)/target.mk

View File

@ -11,7 +11,7 @@ BOARD:=ar71xx
BOARDNAME:=Atheros AR71xx BOARDNAME:=Atheros AR71xx
FEATURES:=squashfs tgz FEATURES:=squashfs tgz
LINUX_VERSION:=2.6.26.7 LINUX_VERSION:=2.6.26.8
include $(INCLUDE_DIR)/target.mk include $(INCLUDE_DIR)/target.mk

View File

@ -11,7 +11,7 @@ BOARD:=at91
BOARDNAME:=Atmel AT91 BOARDNAME:=Atmel AT91
FEATURES:=squashfs usb FEATURES:=squashfs usb
LINUX_VERSION:=2.6.25.19 LINUX_VERSION:=2.6.25.20
include $(INCLUDE_DIR)/target.mk include $(INCLUDE_DIR)/target.mk

View File

@ -11,7 +11,7 @@ BOARD:=atheros
BOARDNAME:=Atheros 231x/5312 BOARDNAME:=Atheros 231x/5312
FEATURES:=squashfs jffs2 FEATURES:=squashfs jffs2
LINUX_VERSION:=2.6.26.7 LINUX_VERSION:=2.6.26.8
include $(INCLUDE_DIR)/target.mk include $(INCLUDE_DIR)/target.mk

View File

@ -1,6 +1,6 @@
--- a/net/core/dev.c --- a/net/core/dev.c
+++ b/net/core/dev.c +++ b/net/core/dev.c
@@ -3786,8 +3786,8 @@ int register_netdevice(struct net_device @@ -3783,8 +3783,8 @@ int register_netdevice(struct net_device
/* Fix illegal SG+CSUM combinations. */ /* Fix illegal SG+CSUM combinations. */
if ((dev->features & NETIF_F_SG) && if ((dev->features & NETIF_F_SG) &&
!(dev->features & NETIF_F_ALL_CSUM)) { !(dev->features & NETIF_F_ALL_CSUM)) {
@ -11,7 +11,7 @@
dev->features &= ~NETIF_F_SG; dev->features &= ~NETIF_F_SG;
} }
@@ -3800,9 +3800,9 @@ int register_netdevice(struct net_device @@ -3797,9 +3797,9 @@ int register_netdevice(struct net_device
} }
if (dev->features & NETIF_F_UFO) { if (dev->features & NETIF_F_UFO) {
if (!(dev->features & NETIF_F_HW_CSUM)) { if (!(dev->features & NETIF_F_HW_CSUM)) {

View File

@ -11,7 +11,7 @@ BOARD:=au1000
BOARDNAME:=RMI/AMD AU1x00 BOARDNAME:=RMI/AMD AU1x00
FEATURES:=jffs2 usb pci FEATURES:=jffs2 usb pci
LINUX_VERSION:=2.6.25.19 LINUX_VERSION:=2.6.25.20
include $(INCLUDE_DIR)/target.mk include $(INCLUDE_DIR)/target.mk
DEFAULT_PACKAGES += yamonenv DEFAULT_PACKAGES += yamonenv

View File

@ -10,7 +10,7 @@ ARCH:=avr32
BOARD:=avr32 BOARD:=avr32
BOARDNAME:=Atmel AVR32 BOARDNAME:=Atmel AVR32
FEATURES:=squashfs FEATURES:=squashfs
LINUX_VERSION:=2.6.25.19 LINUX_VERSION:=2.6.25.20
include $(INCLUDE_DIR)/target.mk include $(INCLUDE_DIR)/target.mk

View File

@ -11,7 +11,7 @@ BOARD:=brcm47xx
BOARDNAME:=Broadcom BCM947xx/953xx BOARDNAME:=Broadcom BCM947xx/953xx
FEATURES:=squashfs usb FEATURES:=squashfs usb
LINUX_VERSION:=2.6.25.19 LINUX_VERSION:=2.6.25.20
include $(INCLUDE_DIR)/target.mk include $(INCLUDE_DIR)/target.mk
DEFAULT_PACKAGES += kmod-switch kmod-diag DEFAULT_PACKAGES += kmod-switch kmod-diag

View File

@ -10,7 +10,7 @@ ARCH:=mips
BOARD:=brcm63xx BOARD:=brcm63xx
BOARDNAME:=Broadcom BCM63xx BOARDNAME:=Broadcom BCM63xx
FEATURES:=squashfs jffs2 usb atm FEATURES:=squashfs jffs2 usb atm
LINUX_VERSION:=2.6.27.4 LINUX_VERSION:=2.6.27.5
include $(INCLUDE_DIR)/target.mk include $(INCLUDE_DIR)/target.mk

View File

@ -10,8 +10,6 @@ Signed-off-by: Maxime Bizon <mbizon@freebox.fr>
include/asm-mips/cpu.h | 7 +++++++ include/asm-mips/cpu.h | 7 +++++++
3 files changed, 36 insertions(+), 0 deletions(-) 3 files changed, 36 insertions(+), 0 deletions(-)
diff --git a/arch/mips/kernel/cpu-probe.c b/arch/mips/kernel/cpu-probe.c
index e621fda..9775315 100644
--- a/arch/mips/kernel/cpu-probe.c --- a/arch/mips/kernel/cpu-probe.c
+++ b/arch/mips/kernel/cpu-probe.c +++ b/arch/mips/kernel/cpu-probe.c
@@ -153,6 +153,10 @@ void __init check_wait(void) @@ -153,6 +153,10 @@ void __init check_wait(void)
@ -25,7 +23,7 @@ index e621fda..9775315 100644
cpu_wait = r4k_wait; cpu_wait = r4k_wait;
break; break;
@@ -802,11 +806,28 @@ static inline void cpu_probe_broadcom(struct cpuinfo_mips *c) @@ -802,11 +806,28 @@ static inline void cpu_probe_broadcom(st
decode_configs(c); decode_configs(c);
switch (c->processor_id & 0xff00) { switch (c->processor_id & 0xff00) {
case PRID_IMP_BCM3302: case PRID_IMP_BCM3302:
@ -54,7 +52,7 @@ index e621fda..9775315 100644
default: default:
c->cputype = CPU_UNKNOWN; c->cputype = CPU_UNKNOWN;
break; break;
@@ -892,6 +913,10 @@ static __cpuinit const char *cpu_to_name(struct cpuinfo_mips *c) @@ -892,6 +913,10 @@ static __cpuinit const char *cpu_to_name
case CPU_SR71000: name = "Sandcraft SR71000"; break; case CPU_SR71000: name = "Sandcraft SR71000"; break;
case CPU_BCM3302: name = "Broadcom BCM3302"; break; case CPU_BCM3302: name = "Broadcom BCM3302"; break;
case CPU_BCM4710: name = "Broadcom BCM4710"; break; case CPU_BCM4710: name = "Broadcom BCM4710"; break;
@ -65,11 +63,9 @@ index e621fda..9775315 100644
case CPU_PR4450: name = "Philips PR4450"; break; case CPU_PR4450: name = "Philips PR4450"; break;
case CPU_LOONGSON2: name = "ICT Loongson-2"; break; case CPU_LOONGSON2: name = "ICT Loongson-2"; break;
default: default:
diff --git a/arch/mips/mm/tlbex.c b/arch/mips/mm/tlbex.c
index 979cf91..f6deda3 100644
--- a/arch/mips/mm/tlbex.c --- a/arch/mips/mm/tlbex.c
+++ b/arch/mips/mm/tlbex.c +++ b/arch/mips/mm/tlbex.c
@@ -317,6 +317,10 @@ static void __cpuinit build_tlb_write_entry(u32 **p, struct uasm_label **l, @@ -317,6 +317,10 @@ static void __cpuinit build_tlb_write_en
case CPU_BCM3302: case CPU_BCM3302:
case CPU_BCM4710: case CPU_BCM4710:
case CPU_LOONGSON2: case CPU_LOONGSON2:
@ -80,8 +76,6 @@ index 979cf91..f6deda3 100644
if (m4kc_tlbp_war()) if (m4kc_tlbp_war())
uasm_i_nop(p); uasm_i_nop(p);
tlbw(p); tlbw(p);
diff --git a/include/asm-mips/cpu.h b/include/asm-mips/cpu.h
index 229a786..538bcde 100644
--- a/include/asm-mips/cpu.h --- a/include/asm-mips/cpu.h
+++ b/include/asm-mips/cpu.h +++ b/include/asm-mips/cpu.h
@@ -112,6 +112,12 @@ @@ -112,6 +112,12 @@
@ -105,6 +99,3 @@ index 229a786..538bcde 100644
/* /*
* MIPS64 class processors * MIPS64 class processors
--
1.5.4.3

View File

@ -54,8 +54,6 @@ Signed-off-by: Maxime Bizon <mbizon@freebox.fr>
create mode 100644 include/asm-mips/mach-bcm63xx/gpio.h create mode 100644 include/asm-mips/mach-bcm63xx/gpio.h
create mode 100644 include/asm-mips/mach-bcm63xx/war.h create mode 100644 include/asm-mips/mach-bcm63xx/war.h
diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
index 1e06d23..88dfe21 100644
--- a/arch/mips/Kconfig --- a/arch/mips/Kconfig
+++ b/arch/mips/Kconfig +++ b/arch/mips/Kconfig
@@ -59,6 +59,21 @@ config BCM47XX @@ -59,6 +59,21 @@ config BCM47XX
@ -88,11 +86,9 @@ index 1e06d23..88dfe21 100644
source "arch/mips/jazz/Kconfig" source "arch/mips/jazz/Kconfig"
source "arch/mips/lasat/Kconfig" source "arch/mips/lasat/Kconfig"
source "arch/mips/pmc-sierra/Kconfig" source "arch/mips/pmc-sierra/Kconfig"
diff --git a/arch/mips/Makefile b/arch/mips/Makefile
index 9aab51c..a45652e 100644
--- a/arch/mips/Makefile --- a/arch/mips/Makefile
+++ b/arch/mips/Makefile +++ b/arch/mips/Makefile
@@ -533,6 +533,13 @@ cflags-$(CONFIG_BCM47XX) += -Iinclude/asm-mips/mach-bcm47xx @@ -533,6 +533,13 @@ cflags-$(CONFIG_BCM47XX) += -Iinclude/as
load-$(CONFIG_BCM47XX) := 0xffffffff80001000 load-$(CONFIG_BCM47XX) := 0xffffffff80001000
# #
@ -106,9 +102,6 @@ index 9aab51c..a45652e 100644
# SNI RM # SNI RM
# #
core-$(CONFIG_SNI_RM) += arch/mips/sni/ core-$(CONFIG_SNI_RM) += arch/mips/sni/
diff --git a/arch/mips/bcm63xx/Kconfig b/arch/mips/bcm63xx/Kconfig
new file mode 100644
index 0000000..e6d2699
--- /dev/null --- /dev/null
+++ b/arch/mips/bcm63xx/Kconfig +++ b/arch/mips/bcm63xx/Kconfig
@@ -0,0 +1,9 @@ @@ -0,0 +1,9 @@
@ -121,17 +114,11 @@ index 0000000..e6d2699
+config BCM63XX_CPU_6358 +config BCM63XX_CPU_6358
+ bool "support 6358 CPU" + bool "support 6358 CPU"
+endmenu +endmenu
diff --git a/arch/mips/bcm63xx/Makefile b/arch/mips/bcm63xx/Makefile
new file mode 100644
index 0000000..4fc0a1c
--- /dev/null --- /dev/null
+++ b/arch/mips/bcm63xx/Makefile +++ b/arch/mips/bcm63xx/Makefile
@@ -0,0 +1,2 @@ @@ -0,0 +1,2 @@
+obj-y += clk.o cpu.o cs.o gpio.o irq.o prom.o setup.o timer.o +obj-y += clk.o cpu.o cs.o gpio.o irq.o prom.o setup.o timer.o
+obj-$(CONFIG_EARLY_PRINTK) += early_printk.o +obj-$(CONFIG_EARLY_PRINTK) += early_printk.o
diff --git a/arch/mips/bcm63xx/clk.c b/arch/mips/bcm63xx/clk.c
new file mode 100644
index 0000000..ae1f41f
--- /dev/null --- /dev/null
+++ b/arch/mips/bcm63xx/clk.c +++ b/arch/mips/bcm63xx/clk.c
@@ -0,0 +1,220 @@ @@ -0,0 +1,220 @@
@ -355,9 +342,6 @@ index 0000000..ae1f41f
+} +}
+ +
+EXPORT_SYMBOL(clk_put); +EXPORT_SYMBOL(clk_put);
diff --git a/arch/mips/bcm63xx/cpu.c b/arch/mips/bcm63xx/cpu.c
new file mode 100644
index 0000000..0a403dd
--- /dev/null --- /dev/null
+++ b/arch/mips/bcm63xx/cpu.c +++ b/arch/mips/bcm63xx/cpu.c
@@ -0,0 +1,245 @@ @@ -0,0 +1,245 @@
@ -606,9 +590,6 @@ index 0000000..0a403dd
+ printk(KERN_INFO "%uMB of RAM installed\n", + printk(KERN_INFO "%uMB of RAM installed\n",
+ bcm63xx_memory_size >> 20); + bcm63xx_memory_size >> 20);
+} +}
diff --git a/arch/mips/bcm63xx/cs.c b/arch/mips/bcm63xx/cs.c
new file mode 100644
index 0000000..50d8190
--- /dev/null --- /dev/null
+++ b/arch/mips/bcm63xx/cs.c +++ b/arch/mips/bcm63xx/cs.c
@@ -0,0 +1,144 @@ @@ -0,0 +1,144 @@
@ -756,9 +737,6 @@ index 0000000..50d8190
+} +}
+ +
+EXPORT_SYMBOL(bcm63xx_set_cs_status); +EXPORT_SYMBOL(bcm63xx_set_cs_status);
diff --git a/arch/mips/bcm63xx/early_printk.c b/arch/mips/bcm63xx/early_printk.c
new file mode 100644
index 0000000..bf353c9
--- /dev/null --- /dev/null
+++ b/arch/mips/bcm63xx/early_printk.c +++ b/arch/mips/bcm63xx/early_printk.c
@@ -0,0 +1,30 @@ @@ -0,0 +1,30 @@
@ -792,9 +770,6 @@ index 0000000..bf353c9
+ bcm_uart0_writel(c, UART_FIFO_REG); + bcm_uart0_writel(c, UART_FIFO_REG);
+ wait_xfered(); + wait_xfered();
+} +}
diff --git a/arch/mips/bcm63xx/gpio.c b/arch/mips/bcm63xx/gpio.c
new file mode 100644
index 0000000..2c203a6
--- /dev/null --- /dev/null
+++ b/arch/mips/bcm63xx/gpio.c +++ b/arch/mips/bcm63xx/gpio.c
@@ -0,0 +1,98 @@ @@ -0,0 +1,98 @@
@ -896,9 +871,6 @@ index 0000000..2c203a6
+} +}
+ +
+EXPORT_SYMBOL(bcm63xx_gpio_set_direction); +EXPORT_SYMBOL(bcm63xx_gpio_set_direction);
diff --git a/arch/mips/bcm63xx/irq.c b/arch/mips/bcm63xx/irq.c
new file mode 100644
index 0000000..a0c5cd1
--- /dev/null --- /dev/null
+++ b/arch/mips/bcm63xx/irq.c +++ b/arch/mips/bcm63xx/irq.c
@@ -0,0 +1,253 @@ @@ -0,0 +1,253 @@
@ -1155,9 +1127,6 @@ index 0000000..a0c5cd1
+ +
+ setup_irq(IRQ_MIPS_BASE + 2, &cpu_ip2_cascade_action); + setup_irq(IRQ_MIPS_BASE + 2, &cpu_ip2_cascade_action);
+} +}
diff --git a/arch/mips/bcm63xx/prom.c b/arch/mips/bcm63xx/prom.c
new file mode 100644
index 0000000..f0b49e8
--- /dev/null --- /dev/null
+++ b/arch/mips/bcm63xx/prom.c +++ b/arch/mips/bcm63xx/prom.c
@@ -0,0 +1,43 @@ @@ -0,0 +1,43 @@
@ -1204,9 +1173,6 @@ index 0000000..f0b49e8
+void __init prom_free_prom_memory(void) +void __init prom_free_prom_memory(void)
+{ +{
+} +}
diff --git a/arch/mips/bcm63xx/setup.c b/arch/mips/bcm63xx/setup.c
new file mode 100644
index 0000000..55c51a9
--- /dev/null --- /dev/null
+++ b/arch/mips/bcm63xx/setup.c +++ b/arch/mips/bcm63xx/setup.c
@@ -0,0 +1,108 @@ @@ -0,0 +1,108 @@
@ -1318,9 +1284,6 @@ index 0000000..55c51a9
+ +
+ set_io_port_base(0); + set_io_port_base(0);
+} +}
diff --git a/arch/mips/bcm63xx/timer.c b/arch/mips/bcm63xx/timer.c
new file mode 100644
index 0000000..ba522bd
--- /dev/null --- /dev/null
+++ b/arch/mips/bcm63xx/timer.c +++ b/arch/mips/bcm63xx/timer.c
@@ -0,0 +1,205 @@ @@ -0,0 +1,205 @@
@ -1529,8 +1492,6 @@ index 0000000..ba522bd
+} +}
+ +
+arch_initcall(bcm63xx_timer_init); +arch_initcall(bcm63xx_timer_init);
diff --git a/include/asm-mips/fixmap.h b/include/asm-mips/fixmap.h
index 9cc8522..884c7a9 100644
--- a/include/asm-mips/fixmap.h --- a/include/asm-mips/fixmap.h
+++ b/include/asm-mips/fixmap.h +++ b/include/asm-mips/fixmap.h
@@ -67,11 +67,15 @@ enum fixed_addresses { @@ -67,11 +67,15 @@ enum fixed_addresses {
@ -1549,9 +1510,6 @@ index 9cc8522..884c7a9 100644
#define FIXADDR_SIZE (__end_of_fixed_addresses << PAGE_SHIFT) #define FIXADDR_SIZE (__end_of_fixed_addresses << PAGE_SHIFT)
#define FIXADDR_START (FIXADDR_TOP - FIXADDR_SIZE) #define FIXADDR_START (FIXADDR_TOP - FIXADDR_SIZE)
diff --git a/include/asm-mips/mach-bcm63xx/bcm63xx_clk.h b/include/asm-mips/mach-bcm63xx/bcm63xx_clk.h
new file mode 100644
index 0000000..8fcf8df
--- /dev/null --- /dev/null
+++ b/include/asm-mips/mach-bcm63xx/bcm63xx_clk.h +++ b/include/asm-mips/mach-bcm63xx/bcm63xx_clk.h
@@ -0,0 +1,11 @@ @@ -0,0 +1,11 @@
@ -1566,9 +1524,6 @@ index 0000000..8fcf8df
+}; +};
+ +
+#endif /* ! BCM63XX_CLK_H_ */ +#endif /* ! BCM63XX_CLK_H_ */
diff --git a/include/asm-mips/mach-bcm63xx/bcm63xx_cpu.h b/include/asm-mips/mach-bcm63xx/bcm63xx_cpu.h
new file mode 100644
index 0000000..29b61fd
--- /dev/null --- /dev/null
+++ b/include/asm-mips/mach-bcm63xx/bcm63xx_cpu.h +++ b/include/asm-mips/mach-bcm63xx/bcm63xx_cpu.h
@@ -0,0 +1,314 @@ @@ -0,0 +1,314 @@
@ -1886,9 +1841,6 @@ index 0000000..29b61fd
+unsigned int bcm63xx_get_memory_size(void); +unsigned int bcm63xx_get_memory_size(void);
+ +
+#endif /* !BCM63XX_CPU_H_ */ +#endif /* !BCM63XX_CPU_H_ */
diff --git a/include/asm-mips/mach-bcm63xx/bcm63xx_cs.h b/include/asm-mips/mach-bcm63xx/bcm63xx_cs.h
new file mode 100644
index 0000000..b1821c8
--- /dev/null --- /dev/null
+++ b/include/asm-mips/mach-bcm63xx/bcm63xx_cs.h +++ b/include/asm-mips/mach-bcm63xx/bcm63xx_cs.h
@@ -0,0 +1,10 @@ @@ -0,0 +1,10 @@
@ -1902,9 +1854,6 @@ index 0000000..b1821c8
+int bcm63xx_set_cs_status(unsigned int cs, int enable); +int bcm63xx_set_cs_status(unsigned int cs, int enable);
+ +
+#endif /* !BCM63XX_CS_H */ +#endif /* !BCM63XX_CS_H */
diff --git a/include/asm-mips/mach-bcm63xx/bcm63xx_gpio.h b/include/asm-mips/mach-bcm63xx/bcm63xx_gpio.h
new file mode 100644
index 0000000..31145df
--- /dev/null --- /dev/null
+++ b/include/asm-mips/mach-bcm63xx/bcm63xx_gpio.h +++ b/include/asm-mips/mach-bcm63xx/bcm63xx_gpio.h
@@ -0,0 +1,14 @@ @@ -0,0 +1,14 @@
@ -1922,9 +1871,6 @@ index 0000000..31145df
+#define GPIO_DIR_IN 0x1 +#define GPIO_DIR_IN 0x1
+ +
+#endif /* !BCM63XX_GPIO_H */ +#endif /* !BCM63XX_GPIO_H */
diff --git a/include/asm-mips/mach-bcm63xx/bcm63xx_io.h b/include/asm-mips/mach-bcm63xx/bcm63xx_io.h
new file mode 100644
index 0000000..1aef06f
--- /dev/null --- /dev/null
+++ b/include/asm-mips/mach-bcm63xx/bcm63xx_io.h +++ b/include/asm-mips/mach-bcm63xx/bcm63xx_io.h
@@ -0,0 +1,93 @@ @@ -0,0 +1,93 @@
@ -2021,9 +1967,6 @@ index 0000000..1aef06f
+#define bcm_ddr_writel(v,o) bcm_rset_writel(RSET_DDR, (v), (o)) +#define bcm_ddr_writel(v,o) bcm_rset_writel(RSET_DDR, (v), (o))
+ +
+#endif /* ! BCM63XX_IO_H_ */ +#endif /* ! BCM63XX_IO_H_ */
diff --git a/include/asm-mips/mach-bcm63xx/bcm63xx_irq.h b/include/asm-mips/mach-bcm63xx/bcm63xx_irq.h
new file mode 100644
index 0000000..5f95577
--- /dev/null --- /dev/null
+++ b/include/asm-mips/mach-bcm63xx/bcm63xx_irq.h +++ b/include/asm-mips/mach-bcm63xx/bcm63xx_irq.h
@@ -0,0 +1,15 @@ @@ -0,0 +1,15 @@
@ -2042,9 +1985,6 @@ index 0000000..5f95577
+#define IRQ_EXT_3 (IRQ_EXT_BASE + 3) +#define IRQ_EXT_3 (IRQ_EXT_BASE + 3)
+ +
+#endif /* ! BCM63XX_IRQ_H_ */ +#endif /* ! BCM63XX_IRQ_H_ */
diff --git a/include/asm-mips/mach-bcm63xx/bcm63xx_regs.h b/include/asm-mips/mach-bcm63xx/bcm63xx_regs.h
new file mode 100644
index 0000000..b5562b1
--- /dev/null --- /dev/null
+++ b/include/asm-mips/mach-bcm63xx/bcm63xx_regs.h +++ b/include/asm-mips/mach-bcm63xx/bcm63xx_regs.h
@@ -0,0 +1,728 @@ @@ -0,0 +1,728 @@
@ -2776,9 +2716,6 @@ index 0000000..b5562b1
+ +
+#endif /* BCM63XX_REGS_H_ */ +#endif /* BCM63XX_REGS_H_ */
+ +
diff --git a/include/asm-mips/mach-bcm63xx/bcm63xx_timer.h b/include/asm-mips/mach-bcm63xx/bcm63xx_timer.h
new file mode 100644
index 0000000..c0fce83
--- /dev/null --- /dev/null
+++ b/include/asm-mips/mach-bcm63xx/bcm63xx_timer.h +++ b/include/asm-mips/mach-bcm63xx/bcm63xx_timer.h
@@ -0,0 +1,11 @@ @@ -0,0 +1,11 @@
@ -2793,9 +2730,6 @@ index 0000000..c0fce83
+unsigned int bcm63xx_timer_countdown(unsigned int countdown_us); +unsigned int bcm63xx_timer_countdown(unsigned int countdown_us);
+ +
+#endif /* !BCM63XX_TIMER_H_ */ +#endif /* !BCM63XX_TIMER_H_ */
diff --git a/include/asm-mips/mach-bcm63xx/cpu-feature-overrides.h b/include/asm-mips/mach-bcm63xx/cpu-feature-overrides.h
new file mode 100644
index 0000000..1a5c4b1
--- /dev/null --- /dev/null
+++ b/include/asm-mips/mach-bcm63xx/cpu-feature-overrides.h +++ b/include/asm-mips/mach-bcm63xx/cpu-feature-overrides.h
@@ -0,0 +1,51 @@ @@ -0,0 +1,51 @@
@ -2850,9 +2784,6 @@ index 0000000..1a5c4b1
+#define cpu_scache_line_size() 0 +#define cpu_scache_line_size() 0
+ +
+#endif /* __ASM_MACH_BCM963XX_CPU_FEATURE_OVERRIDES_H */ +#endif /* __ASM_MACH_BCM963XX_CPU_FEATURE_OVERRIDES_H */
diff --git a/include/asm-mips/mach-bcm63xx/gpio.h b/include/asm-mips/mach-bcm63xx/gpio.h
new file mode 100644
index 0000000..dd2c0f3
--- /dev/null --- /dev/null
+++ b/include/asm-mips/mach-bcm63xx/gpio.h +++ b/include/asm-mips/mach-bcm63xx/gpio.h
@@ -0,0 +1,52 @@ @@ -0,0 +1,52 @@
@ -2908,9 +2839,6 @@ index 0000000..dd2c0f3
+} +}
+ +
+#endif /* __ASM_MIPS_MACH_BCM63XX_GPIO_H */ +#endif /* __ASM_MIPS_MACH_BCM63XX_GPIO_H */
diff --git a/include/asm-mips/mach-bcm63xx/war.h b/include/asm-mips/mach-bcm63xx/war.h
new file mode 100644
index 0000000..8e3f3fd
--- /dev/null --- /dev/null
+++ b/include/asm-mips/mach-bcm63xx/war.h +++ b/include/asm-mips/mach-bcm63xx/war.h
@@ -0,0 +1,25 @@ @@ -0,0 +1,25 @@
@ -2939,6 +2867,3 @@ index 0000000..8e3f3fd
+#define MIPS34K_MISSED_ITLB_WAR 0 +#define MIPS34K_MISSED_ITLB_WAR 0
+ +
+#endif /* __ASM_MIPS_MACH_BCM63XX_WAR_H */ +#endif /* __ASM_MIPS_MACH_BCM63XX_WAR_H */
--
1.5.4.3

View File

@ -17,17 +17,12 @@ Signed-off-by: Maxime Bizon <mbizon@freebox.fr>
create mode 100644 drivers/serial/bcm63xx_uart.c create mode 100644 drivers/serial/bcm63xx_uart.c
create mode 100644 include/asm-mips/mach-bcm63xx/bcm63xx_dev_uart.h create mode 100644 include/asm-mips/mach-bcm63xx/bcm63xx_dev_uart.h
diff --git a/arch/mips/bcm63xx/Makefile b/arch/mips/bcm63xx/Makefile
index 4fc0a1c..8f3299e 100644
--- a/arch/mips/bcm63xx/Makefile --- a/arch/mips/bcm63xx/Makefile
+++ b/arch/mips/bcm63xx/Makefile +++ b/arch/mips/bcm63xx/Makefile
@@ -1,2 +1,3 @@ @@ -1,2 +1,3 @@
obj-y += clk.o cpu.o cs.o gpio.o irq.o prom.o setup.o timer.o obj-y += clk.o cpu.o cs.o gpio.o irq.o prom.o setup.o timer.o
+obj-y += dev-uart.o +obj-y += dev-uart.o
obj-$(CONFIG_EARLY_PRINTK) += early_printk.o obj-$(CONFIG_EARLY_PRINTK) += early_printk.o
diff --git a/arch/mips/bcm63xx/dev-uart.c b/arch/mips/bcm63xx/dev-uart.c
new file mode 100644
index 0000000..5f3d89c
--- /dev/null --- /dev/null
+++ b/arch/mips/bcm63xx/dev-uart.c +++ b/arch/mips/bcm63xx/dev-uart.c
@@ -0,0 +1,41 @@ @@ -0,0 +1,41 @@
@ -72,8 +67,6 @@ index 0000000..5f3d89c
+ uart_resources[1].start = bcm63xx_get_irq_number(IRQ_UART0); + uart_resources[1].start = bcm63xx_get_irq_number(IRQ_UART0);
+ return platform_device_register(&bcm63xx_uart_device); + return platform_device_register(&bcm63xx_uart_device);
+} +}
diff --git a/drivers/serial/Kconfig b/drivers/serial/Kconfig
index 77cb342..52b31a4 100644
--- a/drivers/serial/Kconfig --- a/drivers/serial/Kconfig
+++ b/drivers/serial/Kconfig +++ b/drivers/serial/Kconfig
@@ -1421,4 +1421,23 @@ config SPORT_BAUD_RATE @@ -1421,4 +1421,23 @@ config SPORT_BAUD_RATE
@ -100,11 +93,9 @@ index 77cb342..52b31a4 100644
+ you can make it the console by answering Y to this option. + you can make it the console by answering Y to this option.
+ +
endmenu endmenu
diff --git a/drivers/serial/Makefile b/drivers/serial/Makefile
index 7e7383e..84f6cfc 100644
--- a/drivers/serial/Makefile --- a/drivers/serial/Makefile
+++ b/drivers/serial/Makefile +++ b/drivers/serial/Makefile
@@ -24,6 +24,7 @@ obj-$(CONFIG_SERIAL_CLPS711X) += clps711x.o @@ -24,6 +24,7 @@ obj-$(CONFIG_SERIAL_CLPS711X) += clps711
obj-$(CONFIG_SERIAL_PXA) += pxa.o obj-$(CONFIG_SERIAL_PXA) += pxa.o
obj-$(CONFIG_SERIAL_PNX8XXX) += pnx8xxx_uart.o obj-$(CONFIG_SERIAL_PNX8XXX) += pnx8xxx_uart.o
obj-$(CONFIG_SERIAL_SA1100) += sa1100.o obj-$(CONFIG_SERIAL_SA1100) += sa1100.o
@ -112,9 +103,6 @@ index 7e7383e..84f6cfc 100644
obj-$(CONFIG_SERIAL_BFIN) += bfin_5xx.o obj-$(CONFIG_SERIAL_BFIN) += bfin_5xx.o
obj-$(CONFIG_SERIAL_BFIN_SPORT) += bfin_sport_uart.o obj-$(CONFIG_SERIAL_BFIN_SPORT) += bfin_sport_uart.o
obj-$(CONFIG_SERIAL_SAMSUNG) += samsung.o obj-$(CONFIG_SERIAL_SAMSUNG) += samsung.o
diff --git a/drivers/serial/bcm63xx_uart.c b/drivers/serial/bcm63xx_uart.c
new file mode 100644
index 0000000..606f4d6
--- /dev/null --- /dev/null
+++ b/drivers/serial/bcm63xx_uart.c +++ b/drivers/serial/bcm63xx_uart.c
@@ -0,0 +1,890 @@ @@ -0,0 +1,890 @@
@ -1008,9 +996,6 @@ index 0000000..606f4d6
+MODULE_AUTHOR("Maxime Bizon <mbizon@freebox.fr>"); +MODULE_AUTHOR("Maxime Bizon <mbizon@freebox.fr>");
+MODULE_DESCRIPTION("Broadcom 63<xx integrated uart driver"); +MODULE_DESCRIPTION("Broadcom 63<xx integrated uart driver");
+MODULE_LICENSE("GPL"); +MODULE_LICENSE("GPL");
diff --git a/include/asm-mips/mach-bcm63xx/bcm63xx_dev_uart.h b/include/asm-mips/mach-bcm63xx/bcm63xx_dev_uart.h
new file mode 100644
index 0000000..bf348f5
--- /dev/null --- /dev/null
+++ b/include/asm-mips/mach-bcm63xx/bcm63xx_dev_uart.h +++ b/include/asm-mips/mach-bcm63xx/bcm63xx_dev_uart.h
@@ -0,0 +1,6 @@ @@ -0,0 +1,6 @@
@ -1020,8 +1005,6 @@ index 0000000..bf348f5
+int bcm63xx_uart_register(void); +int bcm63xx_uart_register(void);
+ +
+#endif /* BCM63XX_DEV_UART_H_ */ +#endif /* BCM63XX_DEV_UART_H_ */
diff --git a/include/linux/serial_core.h b/include/linux/serial_core.h
index 3b2f6c0..f49ddff 100644
--- a/include/linux/serial_core.h --- a/include/linux/serial_core.h
+++ b/include/linux/serial_core.h +++ b/include/linux/serial_core.h
@@ -155,6 +155,8 @@ @@ -155,6 +155,8 @@
@ -1033,6 +1016,3 @@ index 3b2f6c0..f49ddff 100644
#ifdef __KERNEL__ #ifdef __KERNEL__
#include <linux/compiler.h> #include <linux/compiler.h>
--
1.5.4.3

View File

@ -20,8 +20,6 @@ Signed-off-by: Maxime Bizon <mbizon@freebox.fr>
create mode 100644 arch/mips/pci/pci-bcm63xx.h create mode 100644 arch/mips/pci/pci-bcm63xx.h
create mode 100644 include/asm-mips/mach-bcm63xx/bcm63xx_dev_pci.h create mode 100644 include/asm-mips/mach-bcm63xx/bcm63xx_dev_pci.h
diff --git a/arch/mips/bcm63xx/Kconfig b/arch/mips/bcm63xx/Kconfig
index e6d2699..7ca370a 100644
--- a/arch/mips/bcm63xx/Kconfig --- a/arch/mips/bcm63xx/Kconfig
+++ b/arch/mips/bcm63xx/Kconfig +++ b/arch/mips/bcm63xx/Kconfig
@@ -3,7 +3,9 @@ menu "CPU support" @@ -3,7 +3,9 @@ menu "CPU support"
@ -34,8 +32,6 @@ index e6d2699..7ca370a 100644
bool "support 6358 CPU" bool "support 6358 CPU"
+ select HW_HAS_PCI + select HW_HAS_PCI
endmenu endmenu
diff --git a/arch/mips/bcm63xx/setup.c b/arch/mips/bcm63xx/setup.c
index 55c51a9..4d8b127 100644
--- a/arch/mips/bcm63xx/setup.c --- a/arch/mips/bcm63xx/setup.c
+++ b/arch/mips/bcm63xx/setup.c +++ b/arch/mips/bcm63xx/setup.c
@@ -105,4 +105,6 @@ void __init plat_mem_setup(void) @@ -105,4 +105,6 @@ void __init plat_mem_setup(void)
@ -45,11 +41,9 @@ index 55c51a9..4d8b127 100644
+ ioport_resource.start = 0; + ioport_resource.start = 0;
+ ioport_resource.end = ~0; + ioport_resource.end = ~0;
} }
diff --git a/arch/mips/pci/Makefile b/arch/mips/pci/Makefile
index c8c32f4..0b688a8 100644
--- a/arch/mips/pci/Makefile --- a/arch/mips/pci/Makefile
+++ b/arch/mips/pci/Makefile +++ b/arch/mips/pci/Makefile
@@ -16,6 +16,8 @@ obj-$(CONFIG_PCI_VR41XX) += ops-vr41xx.o pci-vr41xx.o @@ -16,6 +16,8 @@ obj-$(CONFIG_PCI_VR41XX) += ops-vr41xx.o
obj-$(CONFIG_MARKEINS) += ops-emma2rh.o pci-emma2rh.o fixup-emma2rh.o obj-$(CONFIG_MARKEINS) += ops-emma2rh.o pci-emma2rh.o fixup-emma2rh.o
obj-$(CONFIG_PCI_TX4927) += ops-tx4927.o obj-$(CONFIG_PCI_TX4927) += ops-tx4927.o
obj-$(CONFIG_BCM47XX) += pci-bcm47xx.o obj-$(CONFIG_BCM47XX) += pci-bcm47xx.o
@ -58,9 +52,6 @@ index c8c32f4..0b688a8 100644
# #
# These are still pretty much in the old state, watch, go blind. # These are still pretty much in the old state, watch, go blind.
diff --git a/arch/mips/pci/fixup-bcm63xx.c b/arch/mips/pci/fixup-bcm63xx.c
new file mode 100644
index 0000000..3408630
--- /dev/null --- /dev/null
+++ b/arch/mips/pci/fixup-bcm63xx.c +++ b/arch/mips/pci/fixup-bcm63xx.c
@@ -0,0 +1,21 @@ @@ -0,0 +1,21 @@
@ -85,9 +76,6 @@ index 0000000..3408630
+{ +{
+ return 0; + return 0;
+} +}
diff --git a/arch/mips/pci/ops-bcm63xx.c b/arch/mips/pci/ops-bcm63xx.c
new file mode 100644
index 0000000..f8dce9d
--- /dev/null --- /dev/null
+++ b/arch/mips/pci/ops-bcm63xx.c +++ b/arch/mips/pci/ops-bcm63xx.c
@@ -0,0 +1,179 @@ @@ -0,0 +1,179 @@
@ -270,9 +258,6 @@ index 0000000..f8dce9d
+ .read = bcm63xx_pci_read, + .read = bcm63xx_pci_read,
+ .write = bcm63xx_pci_write + .write = bcm63xx_pci_write
+}; +};
diff --git a/arch/mips/pci/pci-bcm63xx.c b/arch/mips/pci/pci-bcm63xx.c
new file mode 100644
index 0000000..52bac8e
--- /dev/null --- /dev/null
+++ b/arch/mips/pci/pci-bcm63xx.c +++ b/arch/mips/pci/pci-bcm63xx.c
@@ -0,0 +1,178 @@ @@ -0,0 +1,178 @@
@ -454,9 +439,6 @@ index 0000000..52bac8e
+} +}
+ +
+arch_initcall(bcm63xx_pci_init); +arch_initcall(bcm63xx_pci_init);
diff --git a/arch/mips/pci/pci-bcm63xx.h b/arch/mips/pci/pci-bcm63xx.h
new file mode 100644
index 0000000..a6e594e
--- /dev/null --- /dev/null
+++ b/arch/mips/pci/pci-bcm63xx.h +++ b/arch/mips/pci/pci-bcm63xx.h
@@ -0,0 +1,27 @@ @@ -0,0 +1,27 @@
@ -487,9 +469,6 @@ index 0000000..a6e594e
+extern void __iomem *pci_iospace_start; +extern void __iomem *pci_iospace_start;
+ +
+#endif /* ! PCI_BCM63XX_H_ */ +#endif /* ! PCI_BCM63XX_H_ */
diff --git a/include/asm-mips/mach-bcm63xx/bcm63xx_dev_pci.h b/include/asm-mips/mach-bcm63xx/bcm63xx_dev_pci.h
new file mode 100644
index 0000000..c549344
--- /dev/null --- /dev/null
+++ b/include/asm-mips/mach-bcm63xx/bcm63xx_dev_pci.h +++ b/include/asm-mips/mach-bcm63xx/bcm63xx_dev_pci.h
@@ -0,0 +1,6 @@ @@ -0,0 +1,6 @@
@ -499,6 +478,3 @@ index 0000000..c549344
+extern int bcm63xx_pci_enabled; +extern int bcm63xx_pci_enabled;
+ +
+#endif /* BCM63XX_DEV_PCI_H_ */ +#endif /* BCM63XX_DEV_PCI_H_ */
--
1.5.4.3

View File

@ -9,8 +9,6 @@ Signed-off-by: Maxime Bizon <mbizon@freebox.fr>
arch/mips/pci/pci-bcm63xx.c | 44 +++++++ arch/mips/pci/pci-bcm63xx.c | 44 +++++++
2 files changed, 332 insertions(+), 0 deletions(-) 2 files changed, 332 insertions(+), 0 deletions(-)
diff --git a/arch/mips/pci/ops-bcm63xx.c b/arch/mips/pci/ops-bcm63xx.c
index f8dce9d..822ae17 100644
--- a/arch/mips/pci/ops-bcm63xx.c --- a/arch/mips/pci/ops-bcm63xx.c
+++ b/arch/mips/pci/ops-bcm63xx.c +++ b/arch/mips/pci/ops-bcm63xx.c
@@ -177,3 +177,291 @@ struct pci_ops bcm63xx_pci_ops = { @@ -177,3 +177,291 @@ struct pci_ops bcm63xx_pci_ops = {
@ -305,11 +303,9 @@ index f8dce9d..822ae17 100644
+ +
+DECLARE_PCI_FIXUP_ENABLE(PCI_ANY_ID, PCI_ANY_ID, bcm63xx_fixup); +DECLARE_PCI_FIXUP_ENABLE(PCI_ANY_ID, PCI_ANY_ID, bcm63xx_fixup);
+#endif +#endif
diff --git a/arch/mips/pci/pci-bcm63xx.c b/arch/mips/pci/pci-bcm63xx.c
index 52bac8e..601700d 100644
--- a/arch/mips/pci/pci-bcm63xx.c --- a/arch/mips/pci/pci-bcm63xx.c
+++ b/arch/mips/pci/pci-bcm63xx.c +++ b/arch/mips/pci/pci-bcm63xx.c
@@ -28,7 +28,11 @@ static struct resource bcm_pci_mem_resource = { @@ -28,7 +28,11 @@ static struct resource bcm_pci_mem_resou
static struct resource bcm_pci_io_resource = { static struct resource bcm_pci_io_resource = {
.name = "bcm63xx PCI IO space", .name = "bcm63xx PCI IO space",
.start = BCM_PCI_IO_BASE_PA, .start = BCM_PCI_IO_BASE_PA,
@ -321,7 +317,7 @@ index 52bac8e..601700d 100644
.flags = IORESOURCE_IO .flags = IORESOURCE_IO
}; };
@@ -38,6 +42,33 @@ struct pci_controller bcm63xx_controller = { @@ -38,6 +42,33 @@ struct pci_controller bcm63xx_controller
.mem_resource = &bcm_pci_mem_resource, .mem_resource = &bcm_pci_mem_resource,
}; };
@ -384,6 +380,3 @@ index 52bac8e..601700d 100644
/* mark memory space used for IO mapping as reserved */ /* mark memory space used for IO mapping as reserved */
request_mem_region(BCM_PCI_IO_BASE_PA, BCM_PCI_IO_SIZE, request_mem_region(BCM_PCI_IO_BASE_PA, BCM_PCI_IO_SIZE,
"bcm63xx PCI IO space"); "bcm63xx PCI IO space");
--
1.5.4.3

View File

@ -18,8 +18,6 @@ Signed-off-by: Maxime Bizon <mbizon@freebox.fr>
create mode 100644 drivers/pcmcia/bcm63xx_pcmcia.h create mode 100644 drivers/pcmcia/bcm63xx_pcmcia.h
create mode 100644 include/asm-mips/mach-bcm63xx/bcm63xx_dev_pcmcia.h create mode 100644 include/asm-mips/mach-bcm63xx/bcm63xx_dev_pcmcia.h
diff --git a/arch/mips/bcm63xx/Makefile b/arch/mips/bcm63xx/Makefile
index 8f3299e..456e915 100644
--- a/arch/mips/bcm63xx/Makefile --- a/arch/mips/bcm63xx/Makefile
+++ b/arch/mips/bcm63xx/Makefile +++ b/arch/mips/bcm63xx/Makefile
@@ -1,3 +1,4 @@ @@ -1,3 +1,4 @@
@ -27,9 +25,6 @@ index 8f3299e..456e915 100644
obj-y += dev-uart.o obj-y += dev-uart.o
+obj-y += dev-pcmcia.o +obj-y += dev-pcmcia.o
obj-$(CONFIG_EARLY_PRINTK) += early_printk.o obj-$(CONFIG_EARLY_PRINTK) += early_printk.o
diff --git a/arch/mips/bcm63xx/dev-pcmcia.c b/arch/mips/bcm63xx/dev-pcmcia.c
new file mode 100644
index 0000000..40ec4bc
--- /dev/null --- /dev/null
+++ b/arch/mips/bcm63xx/dev-pcmcia.c +++ b/arch/mips/bcm63xx/dev-pcmcia.c
@@ -0,0 +1,135 @@ @@ -0,0 +1,135 @@
@ -168,8 +163,6 @@ index 0000000..40ec4bc
+ printk(KERN_ERR "unable to set pcmcia chip select"); + printk(KERN_ERR "unable to set pcmcia chip select");
+ return ret; + return ret;
+} +}
diff --git a/drivers/pcmcia/Kconfig b/drivers/pcmcia/Kconfig
index e0f8840..5c640ca 100644
--- a/drivers/pcmcia/Kconfig --- a/drivers/pcmcia/Kconfig
+++ b/drivers/pcmcia/Kconfig +++ b/drivers/pcmcia/Kconfig
@@ -196,6 +196,10 @@ config PCMCIA_AU1X00 @@ -196,6 +196,10 @@ config PCMCIA_AU1X00
@ -183,11 +176,9 @@ index e0f8840..5c640ca 100644
config PCMCIA_SA1100 config PCMCIA_SA1100
tristate "SA1100 support" tristate "SA1100 support"
depends on ARM && ARCH_SA1100 && PCMCIA depends on ARM && ARCH_SA1100 && PCMCIA
diff --git a/drivers/pcmcia/Makefile b/drivers/pcmcia/Makefile
index 269a9e9..32b19b5 100644
--- a/drivers/pcmcia/Makefile --- a/drivers/pcmcia/Makefile
+++ b/drivers/pcmcia/Makefile +++ b/drivers/pcmcia/Makefile
@@ -33,6 +33,7 @@ obj-$(CONFIG_PCMCIA_PXA2XX) += pxa2xx_core.o pxa2xx_cs.o @@ -33,6 +33,7 @@ obj-$(CONFIG_PCMCIA_PXA2XX)
obj-$(CONFIG_M32R_PCC) += m32r_pcc.o obj-$(CONFIG_M32R_PCC) += m32r_pcc.o
obj-$(CONFIG_M32R_CFC) += m32r_cfc.o obj-$(CONFIG_M32R_CFC) += m32r_cfc.o
obj-$(CONFIG_PCMCIA_AU1X00) += au1x00_ss.o obj-$(CONFIG_PCMCIA_AU1X00) += au1x00_ss.o
@ -195,9 +186,6 @@ index 269a9e9..32b19b5 100644
obj-$(CONFIG_PCMCIA_VRC4171) += vrc4171_card.o obj-$(CONFIG_PCMCIA_VRC4171) += vrc4171_card.o
obj-$(CONFIG_PCMCIA_VRC4173) += vrc4173_cardu.o obj-$(CONFIG_PCMCIA_VRC4173) += vrc4173_cardu.o
obj-$(CONFIG_OMAP_CF) += omap_cf.o obj-$(CONFIG_OMAP_CF) += omap_cf.o
diff --git a/drivers/pcmcia/bcm63xx_pcmcia.c b/drivers/pcmcia/bcm63xx_pcmcia.c
new file mode 100644
index 0000000..3a0b7fc
--- /dev/null --- /dev/null
+++ b/drivers/pcmcia/bcm63xx_pcmcia.c +++ b/drivers/pcmcia/bcm63xx_pcmcia.c
@@ -0,0 +1,521 @@ @@ -0,0 +1,521 @@
@ -722,9 +710,6 @@ index 0000000..3a0b7fc
+MODULE_LICENSE("GPL"); +MODULE_LICENSE("GPL");
+MODULE_AUTHOR("Maxime Bizon <mbizon@freebox.fr>"); +MODULE_AUTHOR("Maxime Bizon <mbizon@freebox.fr>");
+MODULE_DESCRIPTION("Linux PCMCIA Card Services: bcm63xx Socket Controller"); +MODULE_DESCRIPTION("Linux PCMCIA Card Services: bcm63xx Socket Controller");
diff --git a/drivers/pcmcia/bcm63xx_pcmcia.h b/drivers/pcmcia/bcm63xx_pcmcia.h
new file mode 100644
index 0000000..85de866
--- /dev/null --- /dev/null
+++ b/drivers/pcmcia/bcm63xx_pcmcia.h +++ b/drivers/pcmcia/bcm63xx_pcmcia.h
@@ -0,0 +1,65 @@ @@ -0,0 +1,65 @@
@ -793,9 +778,6 @@ index 0000000..85de866
+}; +};
+ +
+#endif /* BCM63XX_PCMCIA_H_ */ +#endif /* BCM63XX_PCMCIA_H_ */
diff --git a/include/asm-mips/mach-bcm63xx/bcm63xx_dev_pcmcia.h b/include/asm-mips/mach-bcm63xx/bcm63xx_dev_pcmcia.h
new file mode 100644
index 0000000..2beb396
--- /dev/null --- /dev/null
+++ b/include/asm-mips/mach-bcm63xx/bcm63xx_dev_pcmcia.h +++ b/include/asm-mips/mach-bcm63xx/bcm63xx_dev_pcmcia.h
@@ -0,0 +1,13 @@ @@ -0,0 +1,13 @@
@ -812,6 +794,3 @@ index 0000000..2beb396
+int bcm63xx_pcmcia_register(void); +int bcm63xx_pcmcia_register(void);
+ +
+#endif /* BCM63XX_DEV_PCMCIA_H_ */ +#endif /* BCM63XX_DEV_PCMCIA_H_ */
--
1.5.4.3

View File

@ -17,8 +17,6 @@ Signed-off-by: Maxime Bizon <mbizon@freebox.fr>
create mode 100644 drivers/usb/host/ohci-bcm63xx.c create mode 100644 drivers/usb/host/ohci-bcm63xx.c
create mode 100644 include/asm-mips/mach-bcm63xx/bcm63xx_dev_usb_ohci.h create mode 100644 include/asm-mips/mach-bcm63xx/bcm63xx_dev_usb_ohci.h
diff --git a/arch/mips/bcm63xx/Kconfig b/arch/mips/bcm63xx/Kconfig
index 7ca370a..f2ddb87 100644
--- a/arch/mips/bcm63xx/Kconfig --- a/arch/mips/bcm63xx/Kconfig
+++ b/arch/mips/bcm63xx/Kconfig +++ b/arch/mips/bcm63xx/Kconfig
@@ -4,8 +4,14 @@ menu "CPU support" @@ -4,8 +4,14 @@ menu "CPU support"
@ -36,8 +34,6 @@ index 7ca370a..f2ddb87 100644
+ select USB_OHCI_BIG_ENDIAN_DESC + select USB_OHCI_BIG_ENDIAN_DESC
+ select USB_OHCI_BIG_ENDIAN_MMIO + select USB_OHCI_BIG_ENDIAN_MMIO
endmenu endmenu
diff --git a/arch/mips/bcm63xx/Makefile b/arch/mips/bcm63xx/Makefile
index 456e915..75f0d54 100644
--- a/arch/mips/bcm63xx/Makefile --- a/arch/mips/bcm63xx/Makefile
+++ b/arch/mips/bcm63xx/Makefile +++ b/arch/mips/bcm63xx/Makefile
@@ -1,4 +1,5 @@ @@ -1,4 +1,5 @@
@ -46,9 +42,6 @@ index 456e915..75f0d54 100644
obj-y += dev-pcmcia.o obj-y += dev-pcmcia.o
+obj-y += dev-usb-ohci.o +obj-y += dev-usb-ohci.o
obj-$(CONFIG_EARLY_PRINTK) += early_printk.o obj-$(CONFIG_EARLY_PRINTK) += early_printk.o
diff --git a/arch/mips/bcm63xx/dev-usb-ohci.c b/arch/mips/bcm63xx/dev-usb-ohci.c
new file mode 100644
index 0000000..377e67c
--- /dev/null --- /dev/null
+++ b/arch/mips/bcm63xx/dev-usb-ohci.c +++ b/arch/mips/bcm63xx/dev-usb-ohci.c
@@ -0,0 +1,50 @@ @@ -0,0 +1,50 @@
@ -102,9 +95,6 @@ index 0000000..377e67c
+ ohci_resources[1].start = bcm63xx_get_irq_number(IRQ_OHCI0); + ohci_resources[1].start = bcm63xx_get_irq_number(IRQ_OHCI0);
+ return platform_device_register(&bcm63xx_ohci_device); + return platform_device_register(&bcm63xx_ohci_device);
+} +}
diff --git a/drivers/usb/host/ohci-bcm63xx.c b/drivers/usb/host/ohci-bcm63xx.c
new file mode 100644
index 0000000..08807d9
--- /dev/null --- /dev/null
+++ b/drivers/usb/host/ohci-bcm63xx.c +++ b/drivers/usb/host/ohci-bcm63xx.c
@@ -0,0 +1,159 @@ @@ -0,0 +1,159 @@
@ -267,8 +257,6 @@ index 0000000..08807d9
+}; +};
+ +
+MODULE_ALIAS("platform:bcm63xx_ohci"); +MODULE_ALIAS("platform:bcm63xx_ohci");
diff --git a/drivers/usb/host/ohci-hcd.c b/drivers/usb/host/ohci-hcd.c
index 8990196..7e360ef 100644
--- a/drivers/usb/host/ohci-hcd.c --- a/drivers/usb/host/ohci-hcd.c
+++ b/drivers/usb/host/ohci-hcd.c +++ b/drivers/usb/host/ohci-hcd.c
@@ -1050,6 +1050,11 @@ MODULE_LICENSE ("GPL"); @@ -1050,6 +1050,11 @@ MODULE_LICENSE ("GPL");
@ -283,11 +271,9 @@ index 8990196..7e360ef 100644
#if defined(CONFIG_CPU_SUBTYPE_SH7720) || \ #if defined(CONFIG_CPU_SUBTYPE_SH7720) || \
defined(CONFIG_CPU_SUBTYPE_SH7721) || \ defined(CONFIG_CPU_SUBTYPE_SH7721) || \
defined(CONFIG_CPU_SUBTYPE_SH7763) defined(CONFIG_CPU_SUBTYPE_SH7763)
diff --git a/drivers/usb/host/ohci.h b/drivers/usb/host/ohci.h
index faf622e..947e240 100644
--- a/drivers/usb/host/ohci.h --- a/drivers/usb/host/ohci.h
+++ b/drivers/usb/host/ohci.h +++ b/drivers/usb/host/ohci.h
@@ -549,6 +549,11 @@ static inline struct usb_hcd *ohci_to_hcd (const struct ohci_hcd *ohci) @@ -549,6 +549,11 @@ static inline struct usb_hcd *ohci_to_hc
#define writel_be(val, addr) out_be32((__force unsigned *)addr, val) #define writel_be(val, addr) out_be32((__force unsigned *)addr, val)
#endif #endif
@ -299,7 +285,7 @@ index faf622e..947e240 100644
static inline unsigned int _ohci_readl (const struct ohci_hcd *ohci, static inline unsigned int _ohci_readl (const struct ohci_hcd *ohci,
__hc32 __iomem * regs) __hc32 __iomem * regs)
{ {
@@ -654,7 +659,7 @@ static inline u32 hc32_to_cpup (const struct ohci_hcd *ohci, const __hc32 *x) @@ -654,7 +659,7 @@ static inline u32 hc32_to_cpup (const st
* some big-endian SOC implementations. Same thing happens with PSW access. * some big-endian SOC implementations. Same thing happens with PSW access.
*/ */
@ -308,9 +294,6 @@ index faf622e..947e240 100644
#define big_endian_frame_no_quirk(ohci) (ohci->flags & OHCI_QUIRK_FRAME_NO) #define big_endian_frame_no_quirk(ohci) (ohci->flags & OHCI_QUIRK_FRAME_NO)
#else #else
#define big_endian_frame_no_quirk(ohci) 0 #define big_endian_frame_no_quirk(ohci) 0
diff --git a/include/asm-mips/mach-bcm63xx/bcm63xx_dev_usb_ohci.h b/include/asm-mips/mach-bcm63xx/bcm63xx_dev_usb_ohci.h
new file mode 100644
index 0000000..518a04d
--- /dev/null --- /dev/null
+++ b/include/asm-mips/mach-bcm63xx/bcm63xx_dev_usb_ohci.h +++ b/include/asm-mips/mach-bcm63xx/bcm63xx_dev_usb_ohci.h
@@ -0,0 +1,6 @@ @@ -0,0 +1,6 @@
@ -320,6 +303,3 @@ index 0000000..518a04d
+int bcm63xx_ohci_register(void); +int bcm63xx_ohci_register(void);
+ +
+#endif /* BCM63XX_DEV_USB_OHCI_H_ */ +#endif /* BCM63XX_DEV_USB_OHCI_H_ */
--
1.5.4.3

View File

@ -17,8 +17,6 @@ Signed-off-by: Maxime Bizon <mbizon@freebox.fr>
create mode 100644 drivers/usb/host/ehci-bcm63xx.c create mode 100644 drivers/usb/host/ehci-bcm63xx.c
create mode 100644 include/asm-mips/mach-bcm63xx/bcm63xx_dev_usb_ehci.h create mode 100644 include/asm-mips/mach-bcm63xx/bcm63xx_dev_usb_ehci.h
diff --git a/arch/mips/bcm63xx/Kconfig b/arch/mips/bcm63xx/Kconfig
index f2ddb87..be120f7 100644
--- a/arch/mips/bcm63xx/Kconfig --- a/arch/mips/bcm63xx/Kconfig
+++ b/arch/mips/bcm63xx/Kconfig +++ b/arch/mips/bcm63xx/Kconfig
@@ -14,4 +14,6 @@ config BCM63XX_CPU_6358 @@ -14,4 +14,6 @@ config BCM63XX_CPU_6358
@ -28,19 +26,14 @@ index f2ddb87..be120f7 100644
+ select USB_ARCH_HAS_EHCI + select USB_ARCH_HAS_EHCI
+ select USB_EHCI_BIG_ENDIAN_MMIO + select USB_EHCI_BIG_ENDIAN_MMIO
endmenu endmenu
diff --git a/arch/mips/bcm63xx/Makefile b/arch/mips/bcm63xx/Makefile
index 75f0d54..99e335d 100644
--- a/arch/mips/bcm63xx/Makefile --- a/arch/mips/bcm63xx/Makefile
+++ b/arch/mips/bcm63xx/Makefile +++ b/arch/mips/bcm63xx/Makefile
@@ -2,4 +2,5 @@ obj-y += clk.o cpu.o cs.o gpio.o irq.o prom.o setup.o timer.o @@ -2,4 +2,5 @@ obj-y += clk.o cpu.o cs.o gpio.o irq.o
obj-y += dev-uart.o obj-y += dev-uart.o
obj-y += dev-pcmcia.o obj-y += dev-pcmcia.o
obj-y += dev-usb-ohci.o obj-y += dev-usb-ohci.o
+obj-y += dev-usb-ehci.o +obj-y += dev-usb-ehci.o
obj-$(CONFIG_EARLY_PRINTK) += early_printk.o obj-$(CONFIG_EARLY_PRINTK) += early_printk.o
diff --git a/arch/mips/bcm63xx/dev-usb-ehci.c b/arch/mips/bcm63xx/dev-usb-ehci.c
new file mode 100644
index 0000000..7885405
--- /dev/null --- /dev/null
+++ b/arch/mips/bcm63xx/dev-usb-ehci.c +++ b/arch/mips/bcm63xx/dev-usb-ehci.c
@@ -0,0 +1,50 @@ @@ -0,0 +1,50 @@
@ -94,9 +87,6 @@ index 0000000..7885405
+ ehci_resources[1].start = bcm63xx_get_irq_number(IRQ_EHCI0); + ehci_resources[1].start = bcm63xx_get_irq_number(IRQ_EHCI0);
+ return platform_device_register(&bcm63xx_ehci_device); + return platform_device_register(&bcm63xx_ehci_device);
+} +}
diff --git a/drivers/usb/host/ehci-bcm63xx.c b/drivers/usb/host/ehci-bcm63xx.c
new file mode 100644
index 0000000..2fef571
--- /dev/null --- /dev/null
+++ b/drivers/usb/host/ehci-bcm63xx.c +++ b/drivers/usb/host/ehci-bcm63xx.c
@@ -0,0 +1,152 @@ @@ -0,0 +1,152 @@
@ -252,8 +242,6 @@ index 0000000..2fef571
+}; +};
+ +
+MODULE_ALIAS("platform:bcm63xx_ehci"); +MODULE_ALIAS("platform:bcm63xx_ehci");
diff --git a/drivers/usb/host/ehci-hcd.c b/drivers/usb/host/ehci-hcd.c
index 8409e07..3230ba3 100644
--- a/drivers/usb/host/ehci-hcd.c --- a/drivers/usb/host/ehci-hcd.c
+++ b/drivers/usb/host/ehci-hcd.c +++ b/drivers/usb/host/ehci-hcd.c
@@ -1040,6 +1040,11 @@ MODULE_LICENSE ("GPL"); @@ -1040,6 +1040,11 @@ MODULE_LICENSE ("GPL");
@ -268,11 +256,9 @@ index 8409e07..3230ba3 100644
#if !defined(PCI_DRIVER) && !defined(PLATFORM_DRIVER) && \ #if !defined(PCI_DRIVER) && !defined(PLATFORM_DRIVER) && \
!defined(PS3_SYSTEM_BUS_DRIVER) && !defined(OF_PLATFORM_DRIVER) !defined(PS3_SYSTEM_BUS_DRIVER) && !defined(OF_PLATFORM_DRIVER)
#error "missing bus glue for ehci-hcd" #error "missing bus glue for ehci-hcd"
diff --git a/drivers/usb/host/ehci.h b/drivers/usb/host/ehci.h
index 5799298..71d0eca 100644
--- a/drivers/usb/host/ehci.h --- a/drivers/usb/host/ehci.h
+++ b/drivers/usb/host/ehci.h +++ b/drivers/usb/host/ehci.h
@@ -755,6 +755,11 @@ ehci_port_speed(struct ehci_hcd *ehci, unsigned int portsc) @@ -755,6 +755,11 @@ ehci_port_speed(struct ehci_hcd *ehci, u
#define writel_be(val, addr) __raw_writel(val, (__force unsigned *)addr) #define writel_be(val, addr) __raw_writel(val, (__force unsigned *)addr)
#endif #endif
@ -284,9 +270,6 @@ index 5799298..71d0eca 100644
static inline unsigned int ehci_readl(const struct ehci_hcd *ehci, static inline unsigned int ehci_readl(const struct ehci_hcd *ehci,
__u32 __iomem * regs) __u32 __iomem * regs)
{ {
diff --git a/include/asm-mips/mach-bcm63xx/bcm63xx_dev_usb_ehci.h b/include/asm-mips/mach-bcm63xx/bcm63xx_dev_usb_ehci.h
new file mode 100644
index 0000000..17fb519
--- /dev/null --- /dev/null
+++ b/include/asm-mips/mach-bcm63xx/bcm63xx_dev_usb_ehci.h +++ b/include/asm-mips/mach-bcm63xx/bcm63xx_dev_usb_ehci.h
@@ -0,0 +1,6 @@ @@ -0,0 +1,6 @@
@ -296,6 +279,3 @@ index 0000000..17fb519
+int bcm63xx_ehci_register(void); +int bcm63xx_ehci_register(void);
+ +
+#endif /* BCM63XX_DEV_USB_EHCI_H_ */ +#endif /* BCM63XX_DEV_USB_EHCI_H_ */
--
1.5.4.3

View File

@ -18,8 +18,6 @@ Signed-off-by: Maxime Bizon <mbizon@freebox.fr>
create mode 100644 drivers/net/bcm63xx_enet.h create mode 100644 drivers/net/bcm63xx_enet.h
create mode 100644 include/asm-mips/mach-bcm63xx/bcm63xx_dev_enet.h create mode 100644 include/asm-mips/mach-bcm63xx/bcm63xx_dev_enet.h
diff --git a/arch/mips/bcm63xx/Makefile b/arch/mips/bcm63xx/Makefile
index 99e335d..5358093 100644
--- a/arch/mips/bcm63xx/Makefile --- a/arch/mips/bcm63xx/Makefile
+++ b/arch/mips/bcm63xx/Makefile +++ b/arch/mips/bcm63xx/Makefile
@@ -3,4 +3,5 @@ obj-y += dev-uart.o @@ -3,4 +3,5 @@ obj-y += dev-uart.o
@ -28,9 +26,6 @@ index 99e335d..5358093 100644
obj-y += dev-usb-ehci.o obj-y += dev-usb-ehci.o
+obj-y += dev-enet.o +obj-y += dev-enet.o
obj-$(CONFIG_EARLY_PRINTK) += early_printk.o obj-$(CONFIG_EARLY_PRINTK) += early_printk.o
diff --git a/arch/mips/bcm63xx/dev-enet.c b/arch/mips/bcm63xx/dev-enet.c
new file mode 100644
index 0000000..c6e472e
--- /dev/null --- /dev/null
+++ b/arch/mips/bcm63xx/dev-enet.c +++ b/arch/mips/bcm63xx/dev-enet.c
@@ -0,0 +1,158 @@ @@ -0,0 +1,158 @@
@ -192,11 +187,9 @@ index 0000000..c6e472e
+ return ret; + return ret;
+ return 0; + return 0;
+} +}
diff --git a/drivers/net/Kconfig b/drivers/net/Kconfig
index bbd0e67..01f7e5a 100644
--- a/drivers/net/Kconfig --- a/drivers/net/Kconfig
+++ b/drivers/net/Kconfig +++ b/drivers/net/Kconfig
@@ -1840,6 +1840,15 @@ config NE_H8300 @@ -1963,6 +1963,15 @@ config NE_H8300
Say Y here if you want to use the NE2000 compatible Say Y here if you want to use the NE2000 compatible
controller on the Renesas H8/300 processor. controller on the Renesas H8/300 processor.
@ -212,8 +205,6 @@ index bbd0e67..01f7e5a 100644
source "drivers/net/fs_enet/Kconfig" source "drivers/net/fs_enet/Kconfig"
endif # NET_ETHERNET endif # NET_ETHERNET
diff --git a/drivers/net/Makefile b/drivers/net/Makefile
index 284ed83..ab22f32 100644
--- a/drivers/net/Makefile --- a/drivers/net/Makefile
+++ b/drivers/net/Makefile +++ b/drivers/net/Makefile
@@ -123,6 +123,7 @@ obj-$(CONFIG_SB1250_MAC) += sb1250-mac.o @@ -123,6 +123,7 @@ obj-$(CONFIG_SB1250_MAC) += sb1250-mac.o
@ -224,9 +215,6 @@ index 284ed83..ab22f32 100644
obj-$(CONFIG_AX88796) += ax88796.o obj-$(CONFIG_AX88796) += ax88796.o
obj-$(CONFIG_TSI108_ETH) += tsi108_eth.o obj-$(CONFIG_TSI108_ETH) += tsi108_eth.o
diff --git a/drivers/net/bcm63xx_enet.c b/drivers/net/bcm63xx_enet.c
new file mode 100644
index 0000000..40c2565
--- /dev/null --- /dev/null
+++ b/drivers/net/bcm63xx_enet.c +++ b/drivers/net/bcm63xx_enet.c
@@ -0,0 +1,1894 @@ @@ -0,0 +1,1894 @@
@ -2124,9 +2112,6 @@ index 0000000..40c2565
+MODULE_DESCRIPTION("BCM63xx internal ethernet mac driver"); +MODULE_DESCRIPTION("BCM63xx internal ethernet mac driver");
+MODULE_AUTHOR("Maxime Bizon <mbizon@freebox.fr>"); +MODULE_AUTHOR("Maxime Bizon <mbizon@freebox.fr>");
+MODULE_LICENSE("GPL"); +MODULE_LICENSE("GPL");
diff --git a/drivers/net/bcm63xx_enet.h b/drivers/net/bcm63xx_enet.h
new file mode 100644
index 0000000..fe7ffc1
--- /dev/null --- /dev/null
+++ b/drivers/net/bcm63xx_enet.h +++ b/drivers/net/bcm63xx_enet.h
@@ -0,0 +1,294 @@ @@ -0,0 +1,294 @@
@ -2424,9 +2409,6 @@ index 0000000..fe7ffc1
+}; +};
+ +
+#endif /* ! BCM63XX_ENET_H_ */ +#endif /* ! BCM63XX_ENET_H_ */
diff --git a/include/asm-mips/mach-bcm63xx/bcm63xx_dev_enet.h b/include/asm-mips/mach-bcm63xx/bcm63xx_dev_enet.h
new file mode 100644
index 0000000..d53f611
--- /dev/null --- /dev/null
+++ b/include/asm-mips/mach-bcm63xx/bcm63xx_dev_enet.h +++ b/include/asm-mips/mach-bcm63xx/bcm63xx_dev_enet.h
@@ -0,0 +1,45 @@ @@ -0,0 +1,45 @@
@ -2475,6 +2457,3 @@ index 0000000..d53f611
+ const struct bcm63xx_enet_platform_data *pd); + const struct bcm63xx_enet_platform_data *pd);
+ +
+#endif /* ! BCM63XX_DEV_ENET_H_ */ +#endif /* ! BCM63XX_DEV_ENET_H_ */
--
1.5.4.3

View File

@ -11,11 +11,9 @@ Signed-off-by: Maxime Bizon <mbizon@freebox.fr>
3 files changed, 139 insertions(+), 0 deletions(-) 3 files changed, 139 insertions(+), 0 deletions(-)
create mode 100644 drivers/net/phy/bcm63xx.c create mode 100644 drivers/net/phy/bcm63xx.c
diff --git a/drivers/net/phy/Kconfig b/drivers/net/phy/Kconfig
index d55932a..a5d2c2d 100644
--- a/drivers/net/phy/Kconfig --- a/drivers/net/phy/Kconfig
+++ b/drivers/net/phy/Kconfig +++ b/drivers/net/phy/Kconfig
@@ -56,6 +56,12 @@ config BROADCOM_PHY @@ -62,6 +62,12 @@ config BROADCOM_PHY
Currently supports the BCM5411, BCM5421, BCM5461, BCM5464, BCM5481 Currently supports the BCM5411, BCM5421, BCM5461, BCM5464, BCM5481
and BCM5482 PHYs. and BCM5482 PHYs.
@ -28,21 +26,16 @@ index d55932a..a5d2c2d 100644
config ICPLUS_PHY config ICPLUS_PHY
tristate "Drivers for ICPlus PHYs" tristate "Drivers for ICPlus PHYs"
---help--- ---help---
diff --git a/drivers/net/phy/Makefile b/drivers/net/phy/Makefile
index eee329f..0d43f58 100644
--- a/drivers/net/phy/Makefile --- a/drivers/net/phy/Makefile
+++ b/drivers/net/phy/Makefile +++ b/drivers/net/phy/Makefile
@@ -11,6 +11,7 @@ obj-$(CONFIG_QSEMI_PHY) += qsemi.o @@ -12,6 +12,7 @@ obj-$(CONFIG_QSEMI_PHY) += qsemi.o
obj-$(CONFIG_SMSC_PHY) += smsc.o obj-$(CONFIG_SMSC_PHY) += smsc.o
obj-$(CONFIG_VITESSE_PHY) += vitesse.o obj-$(CONFIG_VITESSE_PHY) += vitesse.o
obj-$(CONFIG_BROADCOM_PHY) += broadcom.o obj-$(CONFIG_BROADCOM_PHY) += broadcom.o
+obj-$(CONFIG_BCM63XX_PHY) += bcm63xx.o +obj-$(CONFIG_BCM63XX_PHY) += bcm63xx.o
obj-$(CONFIG_ICPLUS_PHY) += icplus.o obj-$(CONFIG_ICPLUS_PHY) += icplus.o
obj-$(CONFIG_REALTEK_PHY) += realtek.o obj-$(CONFIG_ADM6996_PHY) += adm6996.o
obj-$(CONFIG_FIXED_PHY) += fixed.o obj-$(CONFIG_MVSWITCH_PHY) += mvswitch.o
diff --git a/drivers/net/phy/bcm63xx.c b/drivers/net/phy/bcm63xx.c
new file mode 100644
index 0000000..4fed95e
--- /dev/null --- /dev/null
+++ b/drivers/net/phy/bcm63xx.c +++ b/drivers/net/phy/bcm63xx.c
@@ -0,0 +1,132 @@ @@ -0,0 +1,132 @@
@ -178,6 +171,3 @@ index 0000000..4fed95e
+ +
+module_init(bcm63xx_phy_init); +module_init(bcm63xx_phy_init);
+module_exit(bcm63xx_phy_exit); +module_exit(bcm63xx_phy_exit);
--
1.5.4.3

View File

@ -21,8 +21,6 @@ Signed-off-by: Maxime Bizon <mbizon@freebox.fr>
create mode 100644 include/asm-mips/mach-bcm63xx/bcm63xx_board.h create mode 100644 include/asm-mips/mach-bcm63xx/bcm63xx_board.h
create mode 100644 include/asm-mips/mach-bcm63xx/board_bcm963xx.h create mode 100644 include/asm-mips/mach-bcm63xx/board_bcm963xx.h
diff --git a/arch/mips/bcm63xx/Kconfig b/arch/mips/bcm63xx/Kconfig
index be120f7..8c192e7 100644
--- a/arch/mips/bcm63xx/Kconfig --- a/arch/mips/bcm63xx/Kconfig
+++ b/arch/mips/bcm63xx/Kconfig +++ b/arch/mips/bcm63xx/Kconfig
@@ -17,3 +17,5 @@ config BCM63XX_CPU_6358 @@ -17,3 +17,5 @@ config BCM63XX_CPU_6358
@ -31,8 +29,6 @@ index be120f7..8c192e7 100644
endmenu endmenu
+ +
+source "arch/mips/bcm63xx/boards/Kconfig" +source "arch/mips/bcm63xx/boards/Kconfig"
diff --git a/arch/mips/bcm63xx/Makefile b/arch/mips/bcm63xx/Makefile
index 5358093..10462ae 100644
--- a/arch/mips/bcm63xx/Makefile --- a/arch/mips/bcm63xx/Makefile
+++ b/arch/mips/bcm63xx/Makefile +++ b/arch/mips/bcm63xx/Makefile
@@ -5,3 +5,5 @@ obj-y += dev-usb-ohci.o @@ -5,3 +5,5 @@ obj-y += dev-usb-ohci.o
@ -41,9 +37,6 @@ index 5358093..10462ae 100644
obj-$(CONFIG_EARLY_PRINTK) += early_printk.o obj-$(CONFIG_EARLY_PRINTK) += early_printk.o
+ +
+obj-y += boards/ +obj-y += boards/
diff --git a/arch/mips/bcm63xx/boards/Kconfig b/arch/mips/bcm63xx/boards/Kconfig
new file mode 100644
index 0000000..da5eeaa
--- /dev/null --- /dev/null
+++ b/arch/mips/bcm63xx/boards/Kconfig +++ b/arch/mips/bcm63xx/boards/Kconfig
@@ -0,0 +1,10 @@ @@ -0,0 +1,10 @@
@ -57,16 +50,10 @@ index 0000000..da5eeaa
+ help + help
+ +
+endchoice +endchoice
diff --git a/arch/mips/bcm63xx/boards/Makefile b/arch/mips/bcm63xx/boards/Makefile
new file mode 100644
index 0000000..af07c1a
--- /dev/null --- /dev/null
+++ b/arch/mips/bcm63xx/boards/Makefile +++ b/arch/mips/bcm63xx/boards/Makefile
@@ -0,0 +1 @@ @@ -0,0 +1 @@
+obj-$(CONFIG_BOARD_BCM963XX) += board_bcm963xx.o +obj-$(CONFIG_BOARD_BCM963XX) += board_bcm963xx.o
diff --git a/arch/mips/bcm63xx/boards/board_bcm963xx.c b/arch/mips/bcm63xx/boards/board_bcm963xx.c
new file mode 100644
index 0000000..6e2b4ae
--- /dev/null --- /dev/null
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
@@ -0,0 +1,328 @@ @@ -0,0 +1,328 @@
@ -398,8 +385,6 @@ index 0000000..6e2b4ae
+ return 0; + return 0;
+} +}
+ +
diff --git a/arch/mips/bcm63xx/prom.c b/arch/mips/bcm63xx/prom.c
index f0b49e8..d97ceed 100644
--- a/arch/mips/bcm63xx/prom.c --- a/arch/mips/bcm63xx/prom.c
+++ b/arch/mips/bcm63xx/prom.c +++ b/arch/mips/bcm63xx/prom.c
@@ -9,6 +9,7 @@ @@ -9,6 +9,7 @@
@ -420,8 +405,6 @@ index f0b49e8..d97ceed 100644
} }
void __init prom_free_prom_memory(void) void __init prom_free_prom_memory(void)
diff --git a/arch/mips/bcm63xx/setup.c b/arch/mips/bcm63xx/setup.c
index 4d8b127..c4516fb 100644
--- a/arch/mips/bcm63xx/setup.c --- a/arch/mips/bcm63xx/setup.c
+++ b/arch/mips/bcm63xx/setup.c +++ b/arch/mips/bcm63xx/setup.c
@@ -16,6 +16,7 @@ @@ -16,6 +16,7 @@
@ -432,7 +415,7 @@ index 4d8b127..c4516fb 100644
#include <bcm63xx_cpu.h> #include <bcm63xx_cpu.h>
#include <bcm63xx_regs.h> #include <bcm63xx_regs.h>
#include <bcm63xx_io.h> #include <bcm63xx_io.h>
@@ -87,8 +88,9 @@ static void __bcm63xx_machine_reboot(char *p) @@ -87,8 +88,9 @@ static void __bcm63xx_machine_reboot(cha
const char *get_system_type(void) const char *get_system_type(void)
{ {
static char buf[128]; static char buf[128];
@ -466,9 +449,6 @@ index 4d8b127..c4516fb 100644
} }
+ +
+device_initcall(bcm63xx_register_devices); +device_initcall(bcm63xx_register_devices);
diff --git a/include/asm-mips/mach-bcm63xx/bcm63xx_board.h b/include/asm-mips/mach-bcm63xx/bcm63xx_board.h
new file mode 100644
index 0000000..fa3e7e6
--- /dev/null --- /dev/null
+++ b/include/asm-mips/mach-bcm63xx/bcm63xx_board.h +++ b/include/asm-mips/mach-bcm63xx/bcm63xx_board.h
@@ -0,0 +1,12 @@ @@ -0,0 +1,12 @@
@ -484,9 +464,6 @@ index 0000000..fa3e7e6
+int board_register_devices(void); +int board_register_devices(void);
+ +
+#endif /* ! BCM63XX_BOARD_H_ */ +#endif /* ! BCM63XX_BOARD_H_ */
diff --git a/include/asm-mips/mach-bcm63xx/board_bcm963xx.h b/include/asm-mips/mach-bcm63xx/board_bcm963xx.h
new file mode 100644
index 0000000..17e4e7e
--- /dev/null --- /dev/null
+++ b/include/asm-mips/mach-bcm63xx/board_bcm963xx.h +++ b/include/asm-mips/mach-bcm63xx/board_bcm963xx.h
@@ -0,0 +1,50 @@ @@ -0,0 +1,50 @@
@ -540,6 +517,3 @@ index 0000000..17e4e7e
+}; +};
+ +
+#endif /* ! BOARD_BCM963XX_H_ */ +#endif /* ! BOARD_BCM963XX_H_ */
--
1.5.4.3

View File

@ -9,9 +9,6 @@ Signed-off-by: Maxime Bizon <mbizon@freebox.fr>
1 files changed, 868 insertions(+), 0 deletions(-) 1 files changed, 868 insertions(+), 0 deletions(-)
create mode 100644 arch/mips/configs/bcm63xx_defconfig create mode 100644 arch/mips/configs/bcm63xx_defconfig
diff --git a/arch/mips/configs/bcm63xx_defconfig b/arch/mips/configs/bcm63xx_defconfig
new file mode 100644
index 0000000..65cacae
--- /dev/null --- /dev/null
+++ b/arch/mips/configs/bcm63xx_defconfig +++ b/arch/mips/configs/bcm63xx_defconfig
@@ -0,0 +1,868 @@ @@ -0,0 +1,868 @@
@ -883,6 +880,3 @@ index 0000000..65cacae
+CONFIG_HAS_IOMEM=y +CONFIG_HAS_IOMEM=y
+CONFIG_HAS_IOPORT=y +CONFIG_HAS_IOPORT=y
+CONFIG_HAS_DMA=y +CONFIG_HAS_DMA=y
--
1.5.4.3

View File

@ -1,7 +1,6 @@
diff -urN linux-2.6.27/arch/mips/bcm63xx/boards/board_bcm963xx.c linux-2.6.27.new/arch/mips/bcm63xx/boards/board_bcm963xx.c --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
--- linux-2.6.27/arch/mips/bcm63xx/boards/board_bcm963xx.c 2008-10-20 14:24:02.000000000 +0200 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
+++ linux-2.6.27.new/arch/mips/bcm63xx/boards/board_bcm963xx.c 2008-10-20 14:28:15.000000000 +0200 @@ -68,6 +68,30 @@ static struct board_info __initdata boar
@@ -68,6 +68,30 @@
* known 6358 boards * known 6358 boards
*/ */
#ifdef CONFIG_BCM63XX_CPU_6358 #ifdef CONFIG_BCM63XX_CPU_6358
@ -32,7 +31,7 @@ diff -urN linux-2.6.27/arch/mips/bcm63xx/boards/board_bcm963xx.c linux-2.6.27.ne
static struct board_info __initdata board_96358vw2 = { static struct board_info __initdata board_96358vw2 = {
.name = "96358VW2", .name = "96358VW2",
.expected_cpu_id = 0x6358, .expected_cpu_id = 0x6358,
@@ -103,6 +127,7 @@ @@ -103,6 +127,7 @@ static const struct board_info __initdat
#endif #endif
#ifdef CONFIG_BCM63XX_CPU_6358 #ifdef CONFIG_BCM63XX_CPU_6358

View File

@ -1,7 +1,6 @@
diff -urN linux-2.6.27.4/arch/mips/bcm63xx/boards/Kconfig linux-2.6.27.4.new/arch/mips/bcm63xx/boards/Kconfig --- a/arch/mips/bcm63xx/boards/Kconfig
--- linux-2.6.27.4/arch/mips/bcm63xx/boards/Kconfig 2008-11-03 20:00:41.000000000 +0100 +++ b/arch/mips/bcm63xx/boards/Kconfig
+++ linux-2.6.27.4.new/arch/mips/bcm63xx/boards/Kconfig 2008-11-03 20:02:45.000000000 +0100 @@ -7,4 +7,9 @@ config BOARD_BCM963XX
@@ -7,4 +7,9 @@
bool "Generic Broadcom 963xx boards" bool "Generic Broadcom 963xx boards"
help help
@ -11,15 +10,13 @@ diff -urN linux-2.6.27.4/arch/mips/bcm63xx/boards/Kconfig linux-2.6.27.4.new/arc
+ Boards using RedBoot. + Boards using RedBoot.
+ +
endchoice endchoice
diff -urN linux-2.6.27.4/arch/mips/bcm63xx/boards/Makefile linux-2.6.27.4.new/arch/mips/bcm63xx/boards/Makefile --- a/arch/mips/bcm63xx/boards/Makefile
--- linux-2.6.27.4/arch/mips/bcm63xx/boards/Makefile 2008-11-03 20:00:41.000000000 +0100 +++ b/arch/mips/bcm63xx/boards/Makefile
+++ linux-2.6.27.4.new/arch/mips/bcm63xx/boards/Makefile 2008-11-03 20:01:34.000000000 +0100
@@ -1 +1,2 @@ @@ -1 +1,2 @@
obj-$(CONFIG_BOARD_BCM963XX) += board_bcm963xx.o obj-$(CONFIG_BOARD_BCM963XX) += board_bcm963xx.o
+obj-$(CONFIG_BOARD_LIVEBOX) += board_livebox.o +obj-$(CONFIG_BOARD_LIVEBOX) += board_livebox.o
diff -urN linux-2.6.27.4/arch/mips/bcm63xx/boards/board_livebox.c linux-2.6.27.4.new/arch/mips/bcm63xx/boards/board_livebox.c --- /dev/null
--- linux-2.6.27.4/arch/mips/bcm63xx/boards/board_livebox.c 1970-01-01 01:00:00.000000000 +0100 +++ b/arch/mips/bcm63xx/boards/board_livebox.c
+++ linux-2.6.27.4.new/arch/mips/bcm63xx/boards/board_livebox.c 2008-11-03 20:03:59.000000000 +0100
@@ -0,0 +1,172 @@ @@ -0,0 +1,172 @@
+/* +/*
+ * This file is subject to the terms and conditions of the GNU General Public + * This file is subject to the terms and conditions of the GNU General Public

View File

@ -13,9 +13,9 @@ Signed-off-by: Axel Gembe <ago@bastart.eu.org>
--- a/drivers/mtd/maps/Kconfig --- a/drivers/mtd/maps/Kconfig
+++ b/drivers/mtd/maps/Kconfig +++ b/drivers/mtd/maps/Kconfig
@@ -262,6 +262,13 @@ @@ -257,6 +257,13 @@ config MTD_ALCHEMY
Flash memory access on 4G Systems MTX-1 Board. If you have one of help
these boards and would like to use the flash chips on it, say 'Y'. Flash memory access on AMD Alchemy Pb/Db/RDK Reference Boards
+config MTD_BCM963XX +config MTD_BCM963XX
+ tristate "BCM963xx Flash device" + tristate "BCM963xx Flash device"
@ -29,7 +29,7 @@ Signed-off-by: Axel Gembe <ago@bastart.eu.org>
depends on X86 && MTD_CONCAT && MTD_PARTITIONS && MTD_CFI_INTELEXT depends on X86 && MTD_CONCAT && MTD_PARTITIONS && MTD_CFI_INTELEXT
--- a/drivers/mtd/redboot.c --- a/drivers/mtd/redboot.c
+++ b/drivers/mtd/redboot.c +++ b/drivers/mtd/redboot.c
@@ -39,7 +39,7 @@ @@ -39,7 +39,7 @@ static inline int redboot_checksum(struc
return 1; return 1;
} }
@ -38,7 +38,7 @@ Signed-off-by: Axel Gembe <ago@bastart.eu.org>
struct mtd_partition **pparts, struct mtd_partition **pparts,
unsigned long fis_origin) unsigned long fis_origin)
{ {
@@ -161,6 +161,14 @@ @@ -162,6 +162,14 @@ static int parse_redboot_partitions(stru
goto out; goto out;
} }
@ -53,7 +53,7 @@ Signed-off-by: Axel Gembe <ago@bastart.eu.org>
for (i = 0; i < numslots; i++) { for (i = 0; i < numslots; i++) {
struct fis_list *new_fl, **prev; struct fis_list *new_fl, **prev;
@@ -183,9 +191,8 @@ @@ -184,9 +192,8 @@ static int parse_redboot_partitions(stru
new_fl->img = &buf[i]; new_fl->img = &buf[i];
if (fis_origin) { if (fis_origin) {
buf[i].flash_base -= fis_origin; buf[i].flash_base -= fis_origin;
@ -64,9 +64,9 @@ Signed-off-by: Axel Gembe <ago@bastart.eu.org>
/* I'm sure the JFFS2 code has done me permanent damage. /* I'm sure the JFFS2 code has done me permanent damage.
* I now think the following is _normal_ * I now think the following is _normal_
--- linux-2.6.27/drivers/mtd/maps/Makefile 2008-10-10 00:13:53.000000000 +0200 --- a/drivers/mtd/maps/Makefile
+++ linux-2.6.27.new/drivers/mtd/maps/Makefile 2008-10-20 14:22:52.000000000 +0200 +++ b/drivers/mtd/maps/Makefile
@@ -65,3 +65,4 @@ @@ -65,3 +65,4 @@ obj-$(CONFIG_MTD_PLATRAM) += plat-ram.o
obj-$(CONFIG_MTD_OMAP_NOR) += omap_nor.o obj-$(CONFIG_MTD_OMAP_NOR) += omap_nor.o
obj-$(CONFIG_MTD_INTEL_VR_NOR) += intel_vr_nor.o obj-$(CONFIG_MTD_INTEL_VR_NOR) += intel_vr_nor.o
obj-$(CONFIG_MTD_BFIN_ASYNC) += bfin-async-flash.o obj-$(CONFIG_MTD_BFIN_ASYNC) += bfin-async-flash.o

View File

@ -10,7 +10,7 @@ ARCH:=cris
BOARD:=etrax BOARD:=etrax
BOARDNAME:=Foxboard (ETRAX 100LX) BOARDNAME:=Foxboard (ETRAX 100LX)
FEATURES:=squashfs jffs2 broken FEATURES:=squashfs jffs2 broken
LINUX_VERSION:=2.6.25.19 LINUX_VERSION:=2.6.25.20
include $(INCLUDE_DIR)/target.mk include $(INCLUDE_DIR)/target.mk

View File

@ -373,51 +373,84 @@
return err; return err;
} }
@@ -210,32 +246,109 @@ static int block2mtd_write(struct mtd_info *mtd, loff_t to, size_t len, @@ -210,52 +246,29 @@ static int block2mtd_write(struct mtd_in
static void block2mtd_sync(struct mtd_info *mtd) static void block2mtd_sync(struct mtd_info *mtd)
{ {
struct block2mtd_dev *dev = mtd->priv; struct block2mtd_dev *dev = mtd->priv;
- sync_blockdev(dev->blkdev); - sync_blockdev(dev->blkdev);
+ - return;
-}
-
-
-static void block2mtd_free_device(struct block2mtd_dev *dev)
-{
- if (!dev)
- return;
-
- kfree(dev->mtd.name);
- if (dev->blkdev) {
- invalidate_mapping_pages(dev->blkdev->bd_inode->i_mapping,
- 0, -1);
- close_bdev_excl(dev->blkdev);
- }
+ read_lock(&dev->bdev_mutex); + read_lock(&dev->bdev_mutex);
+ if (dev->blkdev) + if (dev->blkdev)
+ sync_blockdev(dev->blkdev); + sync_blockdev(dev->blkdev);
+ read_unlock(&dev->bdev_mutex); + read_unlock(&dev->bdev_mutex);
+
return; - kfree(dev);
+ return;
} }
-/* FIXME: ensure that mtd->size % erase_size == 0 */
-static struct block2mtd_dev *add_device(char *devname, int erase_size, const char *mtdname)
+static int _open_bdev(struct block2mtd_dev *dev) +static int _open_bdev(struct block2mtd_dev *dev)
+{ {
+ struct block_device *bdev; struct block_device *bdev;
+ - struct block2mtd_dev *dev;
+ /* Get a handle on the device */ - struct mtd_partition *part;
- char *name;
-
- if (!devname)
- return NULL;
-
- dev = kzalloc(sizeof(struct block2mtd_dev), GFP_KERNEL);
- if (!dev)
- return NULL;
/* Get a handle on the device */
- bdev = open_bdev_excl(devname, O_RDWR, NULL);
+ bdev = open_bdev_excl(dev->devname, O_RDWR, NULL); + bdev = open_bdev_excl(dev->devname, O_RDWR, NULL);
+#ifndef MODULE #ifndef MODULE
+ if (IS_ERR(bdev)) { if (IS_ERR(bdev)) {
+
+ /* We might not have rootfs mounted at this point. Try /* We might not have rootfs mounted at this point. Try
+ to resolve the device name by other means. */ to resolve the device name by other means. */
+
- dev_t devt = name_to_dev_t(devname);
+ dev_t devt = name_to_dev_t(dev->devname); + dev_t devt = name_to_dev_t(dev->devname);
+ if (devt) { if (devt) {
+ bdev = open_by_devnum(devt, FMODE_WRITE | FMODE_READ); bdev = open_by_devnum(devt, FMODE_WRITE | FMODE_READ);
+ } }
+ } @@ -263,17 +276,97 @@ static struct block2mtd_dev *add_device(
+#endif #endif
+
+ if (IS_ERR(bdev)) { if (IS_ERR(bdev)) {
- ERROR("error: cannot open device %s", devname);
- goto devinit_err;
+ ERROR("error: cannot open device %s", dev->devname); + ERROR("error: cannot open device %s", dev->devname);
+ return 1; + return 1;
+ } }
+ dev->blkdev = bdev; dev->blkdev = bdev;
+
+ if (MAJOR(bdev->bd_dev) == MTD_BLOCK_MAJOR) { if (MAJOR(bdev->bd_dev) == MTD_BLOCK_MAJOR) {
+ ERROR("attempting to use an MTD device as a block device"); ERROR("attempting to use an MTD device as a block device");
- goto devinit_err;
+ return 1; + return 1;
+ } }
+
+ return 0; + return 0;
+} +}
+ +
@ -434,12 +467,12 @@
+ dev->blkdev = NULL; + dev->blkdev = NULL;
+} +}
+ +
static void block2mtd_free_device(struct block2mtd_dev *dev) +static void block2mtd_free_device(struct block2mtd_dev *dev)
{ +{
if (!dev) + if (!dev)
return; + return;
+
kfree(dev->mtd.name); + kfree(dev->mtd.name);
+ _close_bdev(dev); + _close_bdev(dev);
+ kfree(dev); + kfree(dev);
+} +}
@ -457,11 +490,7 @@
+ +
+ /* get the device number for the whole disk */ + /* get the device number for the whole disk */
+ devt = MKDEV(MAJOR(dev->blkdev->bd_dev), 0); + devt = MKDEV(MAJOR(dev->blkdev->bd_dev), 0);
+
- if (dev->blkdev) {
- invalidate_mapping_pages(dev->blkdev->bd_inode->i_mapping,
- 0, -1);
- close_bdev_excl(dev->blkdev);
+ /* close the old block device */ + /* close the old block device */
+ _close_bdev(dev); + _close_bdev(dev);
+ +
@ -471,70 +500,42 @@
+ err = -EINVAL; + err = -EINVAL;
+ else { + else {
+ err = rescan_partitions(bdev->bd_disk, bdev); + err = rescan_partitions(bdev->bd_disk, bdev);
} + }
+ if (bdev) + if (bdev)
+ close_bdev_excl(bdev); + close_bdev_excl(bdev);
+
- kfree(dev);
-}
+ /* try to open the partition block device again */ + /* try to open the partition block device again */
+ _open_bdev(dev); + _open_bdev(dev);
+ write_unlock(&dev->bdev_mutex); + write_unlock(&dev->bdev_mutex);
+
+ return err; + return err;
+} +}
+
/* FIXME: ensure that mtd->size % erase_size == 0 */ +/* FIXME: ensure that mtd->size % erase_size == 0 */
-static struct block2mtd_dev *add_device(char *devname, int erase_size, const char *mtdname)
+static struct block2mtd_dev *add_device(char *devname, int erase_size, char *mtdname) +static struct block2mtd_dev *add_device(char *devname, int erase_size, char *mtdname)
{ +{
- struct block_device *bdev; + struct block2mtd_dev *dev;
struct block2mtd_dev *dev; + struct mtd_partition *part;
struct mtd_partition *part; + char *name;
char *name; +
@@ -243,37 +356,17 @@ static struct block2mtd_dev *add_device(char *devname, int erase_size, const cha + if (!devname)
if (!devname) + return NULL;
return NULL; +
- dev = kzalloc(sizeof(struct block2mtd_dev), GFP_KERNEL);
+ dev = kzalloc(sizeof(struct block2mtd_dev) + strlen(devname) + 1, GFP_KERNEL); + dev = kzalloc(sizeof(struct block2mtd_dev) + strlen(devname) + 1, GFP_KERNEL);
if (!dev) + if (!dev)
return NULL; + return NULL;
+
- /* Get a handle on the device */
- bdev = open_bdev_excl(devname, O_RDWR, NULL);
-#ifndef MODULE
- if (IS_ERR(bdev)) {
-
- /* We might not have rootfs mounted at this point. Try
- to resolve the device name by other means. */
+ strcpy(dev->devname, devname); + strcpy(dev->devname, devname);
+
- dev_t devt = name_to_dev_t(devname);
- if (devt) {
- bdev = open_by_devnum(devt, FMODE_WRITE | FMODE_READ);
- }
- }
-#endif
-
- if (IS_ERR(bdev)) {
- ERROR("error: cannot open device %s", devname);
+ if (_open_bdev(dev)) + if (_open_bdev(dev))
goto devinit_err; + goto devinit_err;
- } +
- dev->blkdev = bdev;
-
- if (MAJOR(bdev->bd_dev) == MTD_BLOCK_MAJOR) {
- ERROR("attempting to use an MTD device as a block device");
- goto devinit_err;
- }
mutex_init(&dev->write_mutex); mutex_init(&dev->write_mutex);
+ rwlock_init(&dev->bdev_mutex); + rwlock_init(&dev->bdev_mutex);
if (!mtdname) if (!mtdname)
mtdname = devname; mtdname = devname;
@@ -297,6 +408,7 @@ static struct block2mtd_dev *add_device( @@ -297,6 +390,7 @@ static struct block2mtd_dev *add_device(
dev->mtd.read = block2mtd_read; dev->mtd.read = block2mtd_read;
dev->mtd.priv = dev; dev->mtd.priv = dev;
dev->mtd.owner = THIS_MODULE; dev->mtd.owner = THIS_MODULE;

View File

@ -1,6 +1,6 @@
--- a/drivers/net/phy/phy_device.c --- a/drivers/net/phy/phy_device.c
+++ b/drivers/net/phy/phy_device.c +++ b/drivers/net/phy/phy_device.c
@@ -143,6 +143,18 @@ @@ -143,6 +143,18 @@ int phy_scan_fixups(struct phy_device *p
} }
EXPORT_SYMBOL(phy_scan_fixups); EXPORT_SYMBOL(phy_scan_fixups);
@ -19,7 +19,7 @@
struct phy_device* phy_device_create(struct mii_bus *bus, int addr, int phy_id) struct phy_device* phy_device_create(struct mii_bus *bus, int addr, int phy_id)
{ {
struct phy_device *dev; struct phy_device *dev;
@@ -168,6 +180,8 @@ @@ -168,6 +180,8 @@ struct phy_device* phy_device_create(str
dev->bus = bus; dev->bus = bus;
dev->state = PHY_DOWN; dev->state = PHY_DOWN;
@ -30,7 +30,7 @@
--- a/include/linux/phy.h --- a/include/linux/phy.h
+++ b/include/linux/phy.h +++ b/include/linux/phy.h
@@ -309,6 +309,20 @@ @@ -309,6 +309,20 @@ struct phy_device {
void (*adjust_link)(struct net_device *dev); void (*adjust_link)(struct net_device *dev);
void (*adjust_state)(struct net_device *dev); void (*adjust_state)(struct net_device *dev);
@ -53,7 +53,7 @@
--- a/include/linux/netdevice.h --- a/include/linux/netdevice.h
+++ b/include/linux/netdevice.h +++ b/include/linux/netdevice.h
@@ -613,6 +613,7 @@ @@ -613,6 +613,7 @@ struct net_device
void *ax25_ptr; /* AX.25 specific data */ void *ax25_ptr; /* AX.25 specific data */
struct wireless_dev *ieee80211_ptr; /* IEEE 802.11 specific data, struct wireless_dev *ieee80211_ptr; /* IEEE 802.11 specific data,
assign before registering */ assign before registering */

View File

@ -10,7 +10,7 @@ ARCH:=mips
BOARD:=ifxmips BOARD:=ifxmips
BOARDNAME:=Infineon Mips BOARDNAME:=Infineon Mips
FEATURES:=squashfs jffs2 FEATURES:=squashfs jffs2
LINUX_VERSION:=2.6.26.7 LINUX_VERSION:=2.6.26.8
include $(INCLUDE_DIR)/target.mk include $(INCLUDE_DIR)/target.mk
DEFAULT_PACKAGES+=uboot-ifxmips DEFAULT_PACKAGES+=uboot-ifxmips

View File

@ -11,7 +11,7 @@ BOARD:=iop32x
BOARDNAME:=Intel IOP32x BOARDNAME:=Intel IOP32x
FEATURES:=squashfs jffs2 FEATURES:=squashfs jffs2
LINUX_VERSION:=2.6.26.7 LINUX_VERSION:=2.6.26.8
include $(INCLUDE_DIR)/target.mk include $(INCLUDE_DIR)/target.mk

View File

@ -12,7 +12,7 @@ BOARDNAME:=Intel IXP4xx
FEATURES:=squashfs FEATURES:=squashfs
SUBTARGETS=generic harddisk SUBTARGETS=generic harddisk
LINUX_VERSION:=2.6.26.7 LINUX_VERSION:=2.6.26.8
include $(INCLUDE_DIR)/target.mk include $(INCLUDE_DIR)/target.mk

View File

@ -11,7 +11,7 @@ BOARD:=magicbox
BOARDNAME:=Magicbox BOARDNAME:=Magicbox
FEATURES:=squashfs pci FEATURES:=squashfs pci
LINUX_VERSION:=2.6.26.7 LINUX_VERSION:=2.6.26.8
LINUX_KARCH:=ppc LINUX_KARCH:=ppc
include $(INCLUDE_DIR)/target.mk include $(INCLUDE_DIR)/target.mk

View File

@ -11,7 +11,7 @@ BOARD:=olpc
BOARDNAME:=OLPC XO-1 BOARDNAME:=OLPC XO-1
FEATURES:=squashfs ext2 FEATURES:=squashfs ext2
LINUX_VERSION:=2.6.27.4 LINUX_VERSION:=2.6.27.5
include $(INCLUDE_DIR)/target.mk include $(INCLUDE_DIR)/target.mk
DEFAULT_PACKAGES += kmod-natsemi kmod-ne2k-pci DEFAULT_PACKAGES += kmod-natsemi kmod-ne2k-pci

View File

@ -69,7 +69,7 @@
static struct page *page_read(struct address_space *mapping, int index) static struct page *page_read(struct address_space *mapping, int index)
{ {
@@ -510,7 +542,9 @@ static int block2mtd_setup2(const char *val) @@ -510,7 +542,9 @@ static int block2mtd_setup2(const char *
if (token[2] && (strlen(token[2]) + 1 > 80)) if (token[2] && (strlen(token[2]) + 1 > 80))
parse_err("mtd device name too long"); parse_err("mtd device name too long");
@ -100,7 +100,7 @@
VMLINUX_SYMBOL(__per_cpu_start) = .; \ VMLINUX_SYMBOL(__per_cpu_start) = .; \
--- a/init/do_mounts.c --- a/init/do_mounts.c
+++ b/init/do_mounts.c +++ b/init/do_mounts.c
@@ -174,16 +174,8 @@ static int __init fs_names_setup(char *str) @@ -174,16 +174,8 @@ static int __init fs_names_setup(char *s
return 1; return 1;
} }
@ -185,7 +185,7 @@
static int __init kernel_init(void * unused) static int __init kernel_init(void * unused)
{ {
lock_kernel(); lock_kernel();
@@ -873,7 +882,16 @@ static int __init kernel_init(void * unused) @@ -873,7 +882,16 @@ static int __init kernel_init(void * unu
if (sys_access((const char __user *) ramdisk_execute_command, 0) != 0) { if (sys_access((const char __user *) ramdisk_execute_command, 0) != 0) {
ramdisk_execute_command = NULL; ramdisk_execute_command = NULL;

View File

@ -11,7 +11,7 @@ BOARD:=orion
BOARDNAME:=Marvell Orion BOARDNAME:=Marvell Orion
FEATURES:=squashfs FEATURES:=squashfs
LINUX_VERSION:=2.6.26.7 LINUX_VERSION:=2.6.26.8
include $(INCLUDE_DIR)/target.mk include $(INCLUDE_DIR)/target.mk

View File

@ -11,7 +11,7 @@ BOARD:=ppc40x
BOARDNAME:=AMCC/IBM PPC40x BOARDNAME:=AMCC/IBM PPC40x
FEATURES:=squashfs FEATURES:=squashfs
LINUX_VERSION:=2.6.26.7 LINUX_VERSION:=2.6.26.8
LINUX_KARCH:=powerpc LINUX_KARCH:=powerpc
include $(INCLUDE_DIR)/target.mk include $(INCLUDE_DIR)/target.mk

View File

@ -11,7 +11,7 @@ BOARD:=ppc44x
BOARDNAME:=AMCC/IBM PPC44x BOARDNAME:=AMCC/IBM PPC44x
FEATURES:=squashfs FEATURES:=squashfs
LINUX_VERSION:=2.6.26.7 LINUX_VERSION:=2.6.26.8
LINUX_KARCH:=powerpc LINUX_KARCH:=powerpc
include $(INCLUDE_DIR)/target.mk include $(INCLUDE_DIR)/target.mk

View File

@ -10,7 +10,7 @@ ARCH:=powerpc
BOARD:=ps3 BOARD:=ps3
BOARDNAME:=Sony PS3 Game Console BOARDNAME:=Sony PS3 Game Console
LINUX_VERSION:=2.6.25.19 LINUX_VERSION:=2.6.25.20
KERNEL_CC:= KERNEL_CC:=

View File

@ -11,7 +11,7 @@ BOARD:=sibyte
BOARDNAME:=Broadcom/SiByte SB-1 BOARDNAME:=Broadcom/SiByte SB-1
FEATURES:=broken FEATURES:=broken
LINUX_VERSION:=2.6.26.7 LINUX_VERSION:=2.6.26.8
include $(INCLUDE_DIR)/target.mk include $(INCLUDE_DIR)/target.mk

View File

@ -23,7 +23,7 @@ BOARDNAME:=User Mode Linux
FEATURES:=ext2 FEATURES:=ext2
LINUX_CONFIG:=$(CURDIR)/config/$(ARCH) LINUX_CONFIG:=$(CURDIR)/config/$(ARCH)
LINUX_VERSION:=2.6.26.7 LINUX_VERSION:=2.6.26.8
include $(INCLUDE_DIR)/target.mk include $(INCLUDE_DIR)/target.mk

View File

@ -12,7 +12,7 @@ BOARDNAME:=x86
FEATURES:=squashfs jffs2 ext2 vdi vmdk FEATURES:=squashfs jffs2 ext2 vdi vmdk
SUBTARGETS=generic SUBTARGETS=generic
LINUX_VERSION:=2.6.25.19 LINUX_VERSION:=2.6.25.20
include $(INCLUDE_DIR)/target.mk include $(INCLUDE_DIR)/target.mk
DEFAULT_PACKAGES += kmod-natsemi kmod-ne2k-pci DEFAULT_PACKAGES += kmod-natsemi kmod-ne2k-pci