Rename BCM947XX into BCM47XX
Subsystems (2)
cover Rename BCM947XX into BCM47XX
The following 4 patches are replacing 4 already merged patches in order to rename BCM947XX into BCM47XX. I have been explained that the '9' in the name mean "development board", while the code refers to the CPU.
Signature · 4 lines
.''`. Aurelien Jarno | GPG: 1024D/F1BCDB73 : :' : Debian developer | Electrical Engineer `. `' [email protected] | [email protected] `- people.debian.org/~aurel32 | www.aurel32.net
Re: [PATCH 2/4][MIPS] Add CFE support to BCM47XX
This patch replaces commit 787f3e9ffdc30eabe8aa9062782dcff719ddac28 in order to replace BCM947XX into BCM47XX.
[MIPS] Add CFE support to BCM47XX
Add CFE support to the BCM47XX code. That includes querying CFE environment variables as well as using CFE to print messages before the serial port is initialized (early printk).
arch/mips/Kconfig +2 -0
@@ -55,6 +55,8 @@ config BCM47XX select SSB select SSB_DRIVER_MIPS select GENERIC_GPIO + select SYS_HAS_EARLY_PRINTK + select CFE help Support for BCM47XX based boards
arch/mips/bcm47xx/prom.c +111 -2
140 lines not on this page · raw message
arch/mips/bcm47xx/setup.c +48 -3
69 lines not on this page · raw message
Signature · 4 lines
.''`. Aurelien Jarno | GPG: 1024D/F1BCDB73 : :' : Debian developer | Electrical Engineer `. `' [email protected] | [email protected] `- people.debian.org/~aurel32 | www.aurel32.net
Re: [PATCH 3/4][MIPS] Add gpio support to the BCM47XX platform
In reply to Aurelien JarnoThis patch replaces commit 67fc54603bff71e54001d61b54f448293b76f48a in order to replace BCM947XX into BCM47XX.
[MIPS] Add gpio support to the BCM47XX platform
Add GPIO support to the BCM47XX platform. It will be used by a GPIO LED driver.
arch/mips/bcm47xx/Makefile +1 -1
@@ -3,4 +3,4 @@ # under Linux. # -obj-y := irq.o prom.o serial.o setup.o time.o +obj-y := gpio.o irq.o prom.o serial.o setup.o time.o
arch/mips/bcm47xx/gpio.c new file +79 -0
79 lines not on this page · raw message
include/asm-mips/mach-bcm47xx/gpio.h new file +59 -0
59 lines not on this page · raw message
Signature · 4 lines
.''`. Aurelien Jarno | GPG: 1024D/F1BCDB73 : :' : Debian developer | Electrical Engineer `. `' [email protected] | [email protected] `- people.debian.org/~aurel32 | www.aurel32.net
Re: [PATCH 4/4][MIPS] GPIO LED driver for the WGT634U machine
In reply to Aurelien JarnoThis patch replaces commit f2a399f458d1ba88291e9748b068d932a0993dce in order to replace BCM947XX into BCM47XX.
[MIPS] GPIO LED driver for the WGT634U machine
Add LED support to the WGT634U machine. It uses the new gpio-led driver and a platform driver for the pin definitions.
arch/mips/bcm47xx/Makefile +1 -1
@@ -3,4 +3,4 @@ # under Linux. # -obj-y := gpio.o irq.o prom.o serial.o setup.o time.o +obj-y := gpio.o irq.o prom.o serial.o setup.o time.o wgt634u.o
arch/mips/bcm47xx/wgt634u.c new file +64 -0
64 lines not on this page · raw message
Signature · 4 lines
.''`. Aurelien Jarno | GPG: 1024D/F1BCDB73 : :' : Debian developer | Electrical Engineer `. `' [email protected] | [email protected] `- people.debian.org/~aurel32 | www.aurel32.net
Re: [PATCH 1/4][MIPS] Add support for BCM47XX CPUs.
In reply to Aurelien JarnoThis patch replaces commit ceb550f7d4b24ee5d5de1a8f7ac07f8a2fe3bf1d in order to replace BCM947XX into BCM47XX.
[MIPS] Add support for BCM47XX CPUs.
Note that the BCM4710 does not support the wait instruction, this is not a mistake in the code.
It originally comes from the OpenWrt patches.
arch/mips/Kconfig +14 -0
@@ -44,6 +44,20 @@ config BASLER_EXCITE_PROTOTYPE note that a kernel built with this option selected will not be able to run on normal units. +config BCM47XX + bool "BCM47XX based boards" + select DMA_NONCOHERENT + select HW_HAS_PCI + select IRQ_CPU + select SYS_HAS_CPU_MIPS32_R1 + select SYS_SUPPORTS_32BIT_KERNEL + select SYS_SUPPORTS_LITTLE_ENDIAN + select SSB + select SSB_DRIVER_MIPS + select GENERIC_GPIO + help + Support for BCM47XX based boards + config MIPS_COBALT bool "Cobalt Server" select DMA_NONCOHERENT
arch/mips/Makefile +7 -0
@@ -535,6 +535,13 @@ libs-$(CONFIG_SIBYTE_BIGSUR) += arch/mips/sibyte/swarm/ load-$(CONFIG_SIBYTE_BIGSUR) := 0xffffffff80100000 # +# Broadcom BCM47XX boards +# +core-$(CONFIG_BCM47XX) += arch/mips/bcm47xx/ +cflags-$(CONFIG_BCM47XX) += -Iinclude/asm-mips/mach-bcm47xx +load-$(CONFIG_BCM47XX) := 0xffffffff80001000 + +# # SNI RM # core-$(CONFIG_SNI_RM) += arch/mips/sni/
arch/mips/bcm47xx/Makefile new file +6 -0
@@ -0,0 +1,6 @@ +# +# Makefile for the BCM47XX specific kernel interface routines +# under Linux. +# + +obj-y := irq.o prom.o serial.o setup.o time.o
arch/mips/bcm47xx/irq.c new file +55 -0
55 lines not on this page · raw message
arch/mips/bcm47xx/prom.c new file +49 -0
49 lines not on this page · raw message
arch/mips/bcm47xx/serial.c new file +52 -0
52 lines not on this page · raw message
arch/mips/bcm47xx/setup.c new file +79 -0
79 lines not on this page · raw message
arch/mips/bcm47xx/time.c new file +56 -0
56 lines not on this page · raw message
arch/mips/kernel/cpu-probe.c +20 -0
@@ -159,6 +159,7 @@ static inline void check_wait(void)case CPU_5KC :case CPU_25KF :case CPU_PR4450 : +case CPU_BCM3302 : cpu_wait = r4k_wait;break ;
@@ -793,6 +794,22 @@ static inline void cpu_probe_philips(struct cpuinfo_mips *c) } +static inline void cpu_probe_broadcom (struct cpuinfo_mips *c) +{ +decode_configs (c); +switch (c->processor_id &0xff00 ) { +case PRID_IMP_BCM3302 : + c->cputype =CPU_BCM3302 ; +break ; +case PRID_IMP_BCM4710 : + c->cputype =CPU_BCM4710 ; +break ; +default : + c->cputype =CPU_UNKNOWN ; +break ; + } +} +__init void cpu_probe (void ) {struct cpuinfo_mips *c = ¤t_cpu_data;
@@ -815,6 +832,9 @@ __init void cpu_probe(void)case PRID_COMP_SIBYTE :cpu_probe_sibyte (c);break ; +case PRID_COMP_BROADCOM : +cpu_probe_broadcom (c); +break ;case PRID_COMP_SANDCRAFT :cpu_probe_sandcraft (c);break ;
arch/mips/kernel/proc.c +2 -0
@@ -82,6 +82,8 @@ static const char *cpu_name[] = { [CPU_VR4181] = "NEC VR4181", [CPU_VR4181A] = "NEC VR4181A", [CPU_SR71000] = "Sandcraft SR71000", + [CPU_BCM3302] = "Broadcom BCM3302", + [CPU_BCM4710] = "Broadcom BCM4710", [CPU_PR4450] = "Philips PR4450", [CPU_LOONGSON2] = "ICT Loongson-2", };
arch/mips/mm/tlbex.c +2 -0
@@ -908,6 +908,8 @@ static __init void build_tlb_write_entry(u32 **p, struct label **l,case CPU_4KSC :case CPU_20KC :case CPU_25KF : +case CPU_BCM3302 : +case CPU_BCM4710 :case CPU_LOONGSON2 :if (m4kc_tlbp_war ())i_nop (p);
include/asm-mips/bootinfo.h +6 -0
@@ -215,6 +215,12 @@#define MACH_GROUP_WINDRIVER 28/* Windriver boards */ #define MACH_WRPPMC 1 +/* +* Valid machtype for group Broadcom +*/ +#define MACH_GROUP_BRCM 23/* Broadcom */ +#define MACH_BCM47XX 1/* Broadcom BCM47XX */ +#define CL_SIZE COMMAND_LINE_SIZEconst char *get_system_type (void );
include/asm-mips/cpu.h +10 -2
@@ -106,6 +106,13 @@#define PRID_IMP_SR71000 0x0400/* +* These are the PRID's for when 23:16 == PRID_COMP_BROADCOM +*/ + +#define PRID_IMP_BCM4710 0x4000 +#define PRID_IMP_BCM3302 0x9000 + +/* * Definitions for 7:0 on legacy processors */
@@ -217,8 +224,9 @@#define CPU_R14000 64#define CPU_LOONGSON1 65#define CPU_LOONGSON2 66 - -#define CPU_LAST 66 +#define CPU_BCM3302 67 +#define CPU_BCM4710 68 +#define CPU_LAST 68/* * ISA Level encodings
include/asm-mips/mach-bcm47xx/bcm47xx.h new file +27 -0
@@ -0,0 +1,27 @@ +/* +* Copyright (C) 2007 Aurelien Jarno <[email protected]> +* +* This program is free software; you can redistribute it and/or +* modify it under the terms of the GNU General Public License +* as published by the Free Software Foundation; either version 2 +* of the License, or (at your option) any later version. +* +* This program is distributed in the hope that it will be useful, +* but WITHOUT ANY WARRANTY; without even the implied warranty of +* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +* GNU General Public License for more details. +* +* You should have received a copy of the GNU General Public License +* along with this program; if not, write to the Free Software +* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +*/ + +#ifndef __ASM_BCM47XX_H +#define __ASM_BCM47XX_H + +/* SSB bus */ +extern struct ssb_bus ssb_bcm47xx; + +extern void bcm47xx_time_init (void ); + +#endif /* __ASM_BCM47XX_H */
Signature · 4 lines
.''`. Aurelien Jarno | GPG: 1024D/F1BCDB73 : :' : Debian developer | Electrical Engineer `. `' [email protected] | [email protected] `- people.debian.org/~aurel32 | www.aurel32.net
Re: [PATCH 1/4][MIPS] Add support for BCM47XX CPUs.
Quoted 12 lines · Aurelien Jarno
This patch replaces commit
ceb550f7d4b24ee5d5de1a8f7ac07f8a2fe3bf1din order to replace BCM947XX into BCM47XX.[MIPS] Add support for BCM47XX CPUs.
Note that the BCM4710 does not support the wait instruction, this is not a mistake in the code.
It originally comes from the OpenWrt patches.
Quoted 7 lines
Cc Michael Buesch <[email protected]>Cc Felix Fietkau <[email protected]>Cc Florian Schirmer <[email protected]>Signed-off-by Aurelien Jarno <[email protected]>Cc Ralf Baechle <[email protected]>Signed-off-by Andrew Morton <[email protected]>Signed-off-by Ralf Baechle <[email protected]>
All four updated. But please
o don't indent the log message. I have to undo that formatting damage.
o commit IDs are very useless as reference in the queue branch where they change each time I respin the tree. Which could be three times a minute.
Ralf
Quoted 3 lines · Aurelien Jarno
The following 4 patches are replacing 4 already merged patches in order to rename BCM947XX into BCM47XX. I have been explained that the '9' in the name mean "development board", while the code refers to the CPU.
With those very highly integrated SOCs the boundary between a chip and a board is beginning to be a bit fuzzy ...
Ralf
Quoted 2 lines · Ralf Baechle
With those very highly integrated SOCs the boundary between a chip and a board is beginning to be a bit fuzzy ...
Yeah, especially considering whiskers that we may now start to see
growing on leads as a side-effect of RoHS compliance...
Maciej