MIPS: Alchemy: devboards: consolidate files
Share some code and merge small files: - Extract the prom init code from all devboard files (they only differ in memory configuration). - Merge the irq configuration into board setup code. - Merge smaller files into board setup code. Signed-off-by: Manuel Lauss <mano@roarinelk.homelinux.net> Signed-off-by: Ralf Baechle <ralf@linux-mips.org> delete mode 100644 arch/mips/alchemy/devboards/db1x00/init.c delete mode 100644 arch/mips/alchemy/devboards/pb1000/init.c delete mode 100644 arch/mips/alchemy/devboards/pb1000/irqmap.c delete mode 100644 arch/mips/alchemy/devboards/pb1100/init.c delete mode 100644 arch/mips/alchemy/devboards/pb1100/irqmap.c delete mode 100644 arch/mips/alchemy/devboards/pb1200/init.c delete mode 100644 arch/mips/alchemy/devboards/pb1500/init.c delete mode 100644 arch/mips/alchemy/devboards/pb1500/irqmap.c delete mode 100644 arch/mips/alchemy/devboards/pb1550/init.c delete mode 100644 arch/mips/alchemy/devboards/pb1550/irqmap.c create mode 100644 arch/mips/alchemy/devboards/prom.c
This commit is contained in:
parent
58e75e86cf
commit
23ba25d566
@ -2,6 +2,7 @@
|
|||||||
# Alchemy Develboards
|
# Alchemy Develboards
|
||||||
#
|
#
|
||||||
|
|
||||||
|
obj-y += prom.o
|
||||||
obj-$(CONFIG_MIPS_PB1000) += pb1000/
|
obj-$(CONFIG_MIPS_PB1000) += pb1000/
|
||||||
obj-$(CONFIG_MIPS_PB1100) += pb1100/
|
obj-$(CONFIG_MIPS_PB1100) += pb1100/
|
||||||
obj-$(CONFIG_MIPS_PB1200) += pb1200/
|
obj-$(CONFIG_MIPS_PB1200) += pb1200/
|
||||||
|
@ -5,4 +5,4 @@
|
|||||||
# Makefile for the Alchemy Semiconductor DBAu1xx0 boards.
|
# Makefile for the Alchemy Semiconductor DBAu1xx0 boards.
|
||||||
#
|
#
|
||||||
|
|
||||||
lib-y := init.o board_setup.o irqmap.o
|
obj-y := board_setup.o irqmap.o
|
||||||
|
@ -34,6 +34,15 @@
|
|||||||
|
|
||||||
static BCSR * const bcsr = (BCSR *)BCSR_KSEG1_ADDR;
|
static BCSR * const bcsr = (BCSR *)BCSR_KSEG1_ADDR;
|
||||||
|
|
||||||
|
const char *get_system_type(void)
|
||||||
|
{
|
||||||
|
#ifdef CONFIG_MIPS_BOSPORUS
|
||||||
|
return "Alchemy Bosporus Gateway Reference";
|
||||||
|
#else
|
||||||
|
return "Alchemy Db1x00";
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
|
||||||
void board_reset(void)
|
void board_reset(void)
|
||||||
{
|
{
|
||||||
/* Hit BCSR.SW_RESET[RESET] */
|
/* Hit BCSR.SW_RESET[RESET] */
|
||||||
|
@ -1,62 +0,0 @@
|
|||||||
/*
|
|
||||||
* BRIEF MODULE DESCRIPTION
|
|
||||||
* PB1000 board setup
|
|
||||||
*
|
|
||||||
* Copyright 2001, 2008 MontaVista Software Inc.
|
|
||||||
* Author: MontaVista Software, Inc. <source@mvista.com>
|
|
||||||
*
|
|
||||||
* 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 SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED
|
|
||||||
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
|
||||||
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN
|
|
||||||
* NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
|
|
||||||
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
|
|
||||||
* NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
|
|
||||||
* USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
|
|
||||||
* ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
|
||||||
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
|
|
||||||
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
||||||
*
|
|
||||||
* 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.,
|
|
||||||
* 675 Mass Ave, Cambridge, MA 02139, USA.
|
|
||||||
*/
|
|
||||||
|
|
||||||
#include <linux/init.h>
|
|
||||||
#include <linux/kernel.h>
|
|
||||||
|
|
||||||
#include <asm/bootinfo.h>
|
|
||||||
|
|
||||||
#include <prom.h>
|
|
||||||
|
|
||||||
const char *get_system_type(void)
|
|
||||||
{
|
|
||||||
#ifdef CONFIG_MIPS_BOSPORUS
|
|
||||||
return "Alchemy Bosporus Gateway Reference";
|
|
||||||
#else
|
|
||||||
return "Alchemy Db1x00";
|
|
||||||
#endif
|
|
||||||
}
|
|
||||||
|
|
||||||
void __init prom_init(void)
|
|
||||||
{
|
|
||||||
unsigned char *memsize_str;
|
|
||||||
unsigned long memsize;
|
|
||||||
|
|
||||||
prom_argc = fw_arg0;
|
|
||||||
prom_argv = (char **)fw_arg1;
|
|
||||||
prom_envp = (char **)fw_arg2;
|
|
||||||
|
|
||||||
prom_init_cmdline();
|
|
||||||
|
|
||||||
memsize_str = prom_getenv("memsize");
|
|
||||||
if (!memsize_str)
|
|
||||||
memsize = 0x04000000;
|
|
||||||
else
|
|
||||||
strict_strtoul(memsize_str, 0, &memsize);
|
|
||||||
add_memory_region(0, memsize, BOOT_MEM_RAM);
|
|
||||||
}
|
|
@ -5,4 +5,4 @@
|
|||||||
# Makefile for the Alchemy Semiconductor Pb1000 board.
|
# Makefile for the Alchemy Semiconductor Pb1000 board.
|
||||||
#
|
#
|
||||||
|
|
||||||
lib-y := init.o board_setup.o irqmap.o
|
obj-y := board_setup.o
|
||||||
|
@ -23,12 +23,25 @@
|
|||||||
* 675 Mass Ave, Cambridge, MA 02139, USA.
|
* 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <linux/init.h>
|
|
||||||
#include <linux/delay.h>
|
#include <linux/delay.h>
|
||||||
|
#include <linux/init.h>
|
||||||
|
#include <linux/interrupt.h>
|
||||||
#include <asm/mach-au1x00/au1000.h>
|
#include <asm/mach-au1x00/au1000.h>
|
||||||
#include <asm/mach-pb1x00/pb1000.h>
|
#include <asm/mach-pb1x00/pb1000.h>
|
||||||
|
|
||||||
|
|
||||||
|
struct au1xxx_irqmap __initdata au1xxx_irq_map[] = {
|
||||||
|
{ AU1000_GPIO_15, INTC_INT_LOW_LEVEL, 0 },
|
||||||
|
};
|
||||||
|
|
||||||
|
int __initdata au1xxx_nr_irqs = ARRAY_SIZE(au1xxx_irq_map);
|
||||||
|
|
||||||
|
|
||||||
|
const char *get_system_type(void)
|
||||||
|
{
|
||||||
|
return "Alchemy Pb1000";
|
||||||
|
}
|
||||||
|
|
||||||
void board_reset(void)
|
void board_reset(void)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
@ -1,57 +0,0 @@
|
|||||||
/*
|
|
||||||
* BRIEF MODULE DESCRIPTION
|
|
||||||
* Pb1000 board setup
|
|
||||||
*
|
|
||||||
* Copyright 2001, 2008 MontaVista Software Inc.
|
|
||||||
* Author: MontaVista Software, Inc. <source@mvista.com>
|
|
||||||
*
|
|
||||||
* 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 SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED
|
|
||||||
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
|
||||||
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN
|
|
||||||
* NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
|
|
||||||
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
|
|
||||||
* NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
|
|
||||||
* USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
|
|
||||||
* ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
|
||||||
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
|
|
||||||
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
||||||
*
|
|
||||||
* 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.,
|
|
||||||
* 675 Mass Ave, Cambridge, MA 02139, USA.
|
|
||||||
*/
|
|
||||||
|
|
||||||
#include <linux/init.h>
|
|
||||||
#include <linux/kernel.h>
|
|
||||||
|
|
||||||
#include <asm/bootinfo.h>
|
|
||||||
|
|
||||||
#include <prom.h>
|
|
||||||
|
|
||||||
const char *get_system_type(void)
|
|
||||||
{
|
|
||||||
return "Alchemy Pb1000";
|
|
||||||
}
|
|
||||||
|
|
||||||
void __init prom_init(void)
|
|
||||||
{
|
|
||||||
unsigned char *memsize_str;
|
|
||||||
unsigned long memsize;
|
|
||||||
|
|
||||||
prom_argc = (int)fw_arg0;
|
|
||||||
prom_argv = (char **)fw_arg1;
|
|
||||||
prom_envp = (char **)fw_arg2;
|
|
||||||
|
|
||||||
prom_init_cmdline();
|
|
||||||
memsize_str = prom_getenv("memsize");
|
|
||||||
if (!memsize_str)
|
|
||||||
memsize = 0x04000000;
|
|
||||||
else
|
|
||||||
strict_strtoul(memsize_str, 0, &memsize);
|
|
||||||
add_memory_region(0, memsize, BOOT_MEM_RAM);
|
|
||||||
}
|
|
@ -1,38 +0,0 @@
|
|||||||
/*
|
|
||||||
* BRIEF MODULE DESCRIPTION
|
|
||||||
* Au1xxx irq map table
|
|
||||||
*
|
|
||||||
* Copyright 2003 Embedded Edge, LLC
|
|
||||||
* dan@embeddededge.com
|
|
||||||
*
|
|
||||||
* 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 SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED
|
|
||||||
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
|
||||||
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN
|
|
||||||
* NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
|
|
||||||
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
|
|
||||||
* NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
|
|
||||||
* USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
|
|
||||||
* ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
|
||||||
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
|
|
||||||
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
||||||
*
|
|
||||||
* 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.,
|
|
||||||
* 675 Mass Ave, Cambridge, MA 02139, USA.
|
|
||||||
*/
|
|
||||||
|
|
||||||
#include <linux/init.h>
|
|
||||||
#include <linux/interrupt.h>
|
|
||||||
|
|
||||||
#include <asm/mach-au1x00/au1000.h>
|
|
||||||
|
|
||||||
struct au1xxx_irqmap __initdata au1xxx_irq_map[] = {
|
|
||||||
{ AU1000_GPIO_15, INTC_INT_LOW_LEVEL, 0 },
|
|
||||||
};
|
|
||||||
|
|
||||||
int __initdata au1xxx_nr_irqs = ARRAY_SIZE(au1xxx_irq_map);
|
|
@ -5,4 +5,4 @@
|
|||||||
# Makefile for the Alchemy Semiconductor Pb1100 board.
|
# Makefile for the Alchemy Semiconductor Pb1100 board.
|
||||||
#
|
#
|
||||||
|
|
||||||
lib-y := init.o board_setup.o irqmap.o
|
obj-y := board_setup.o
|
||||||
|
@ -29,6 +29,22 @@
|
|||||||
#include <asm/mach-au1x00/au1000.h>
|
#include <asm/mach-au1x00/au1000.h>
|
||||||
#include <asm/mach-pb1x00/pb1100.h>
|
#include <asm/mach-pb1x00/pb1100.h>
|
||||||
|
|
||||||
|
|
||||||
|
struct au1xxx_irqmap __initdata au1xxx_irq_map[] = {
|
||||||
|
{ AU1000_GPIO_9, INTC_INT_LOW_LEVEL, 0 }, /* PCMCIA Card Fully_Inserted# */
|
||||||
|
{ AU1000_GPIO_10, INTC_INT_LOW_LEVEL, 0 }, /* PCMCIA Card STSCHG# */
|
||||||
|
{ AU1000_GPIO_11, INTC_INT_LOW_LEVEL, 0 }, /* PCMCIA Card IRQ# */
|
||||||
|
{ AU1000_GPIO_13, INTC_INT_LOW_LEVEL, 0 }, /* DC_IRQ# */
|
||||||
|
};
|
||||||
|
|
||||||
|
int __initdata au1xxx_nr_irqs = ARRAY_SIZE(au1xxx_irq_map);
|
||||||
|
|
||||||
|
|
||||||
|
const char *get_system_type(void)
|
||||||
|
{
|
||||||
|
return "Alchemy Pb1100";
|
||||||
|
}
|
||||||
|
|
||||||
void board_reset(void)
|
void board_reset(void)
|
||||||
{
|
{
|
||||||
/* Hit BCSR.RST_VDDI[SOFT_RESET] */
|
/* Hit BCSR.RST_VDDI[SOFT_RESET] */
|
||||||
|
@ -1,60 +0,0 @@
|
|||||||
/*
|
|
||||||
*
|
|
||||||
* BRIEF MODULE DESCRIPTION
|
|
||||||
* Pb1100 board setup
|
|
||||||
*
|
|
||||||
* Copyright 2002, 2008 MontaVista Software Inc.
|
|
||||||
* Author: MontaVista Software, Inc. <source@mvista.com>
|
|
||||||
*
|
|
||||||
* 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 SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED
|
|
||||||
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
|
||||||
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN
|
|
||||||
* NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
|
|
||||||
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
|
|
||||||
* NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
|
|
||||||
* USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
|
|
||||||
* ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
|
||||||
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
|
|
||||||
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
||||||
*
|
|
||||||
* 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.,
|
|
||||||
* 675 Mass Ave, Cambridge, MA 02139, USA.
|
|
||||||
*/
|
|
||||||
|
|
||||||
#include <linux/init.h>
|
|
||||||
#include <linux/kernel.h>
|
|
||||||
|
|
||||||
#include <asm/bootinfo.h>
|
|
||||||
|
|
||||||
#include <prom.h>
|
|
||||||
|
|
||||||
const char *get_system_type(void)
|
|
||||||
{
|
|
||||||
return "Alchemy Pb1100";
|
|
||||||
}
|
|
||||||
|
|
||||||
void __init prom_init(void)
|
|
||||||
{
|
|
||||||
unsigned char *memsize_str;
|
|
||||||
unsigned long memsize;
|
|
||||||
|
|
||||||
prom_argc = fw_arg0;
|
|
||||||
prom_argv = (char **)fw_arg1;
|
|
||||||
prom_envp = (char **)fw_arg3;
|
|
||||||
|
|
||||||
prom_init_cmdline();
|
|
||||||
|
|
||||||
memsize_str = prom_getenv("memsize");
|
|
||||||
if (!memsize_str)
|
|
||||||
memsize = 0x04000000;
|
|
||||||
else
|
|
||||||
strict_strtoul(memsize_str, 0, &memsize);
|
|
||||||
|
|
||||||
add_memory_region(0, memsize, BOOT_MEM_RAM);
|
|
||||||
}
|
|
@ -1,40 +0,0 @@
|
|||||||
/*
|
|
||||||
* BRIEF MODULE DESCRIPTION
|
|
||||||
* Au1xx0 IRQ map table
|
|
||||||
*
|
|
||||||
* Copyright 2003 Embedded Edge, LLC
|
|
||||||
* dan@embeddededge.com
|
|
||||||
*
|
|
||||||
* 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 SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED
|
|
||||||
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
|
||||||
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN
|
|
||||||
* NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
|
|
||||||
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
|
|
||||||
* NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
|
|
||||||
* USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
|
|
||||||
* ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
|
||||||
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
|
|
||||||
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
||||||
*
|
|
||||||
* 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.,
|
|
||||||
* 675 Mass Ave, Cambridge, MA 02139, USA.
|
|
||||||
*/
|
|
||||||
|
|
||||||
#include <linux/init.h>
|
|
||||||
|
|
||||||
#include <asm/mach-au1x00/au1000.h>
|
|
||||||
|
|
||||||
struct au1xxx_irqmap __initdata au1xxx_irq_map[] = {
|
|
||||||
{ AU1000_GPIO_9, INTC_INT_LOW_LEVEL, 0 }, /* PCMCIA Card Fully_Inserted# */
|
|
||||||
{ AU1000_GPIO_10, INTC_INT_LOW_LEVEL, 0 }, /* PCMCIA Card STSCHG# */
|
|
||||||
{ AU1000_GPIO_11, INTC_INT_LOW_LEVEL, 0 }, /* PCMCIA Card IRQ# */
|
|
||||||
{ AU1000_GPIO_13, INTC_INT_LOW_LEVEL, 0 }, /* DC_IRQ# */
|
|
||||||
};
|
|
||||||
|
|
||||||
int __initdata au1xxx_nr_irqs = ARRAY_SIZE(au1xxx_irq_map);
|
|
@ -2,7 +2,6 @@
|
|||||||
# Makefile for the Alchemy Semiconductor Pb1200/DBAu1200 boards.
|
# Makefile for the Alchemy Semiconductor Pb1200/DBAu1200 boards.
|
||||||
#
|
#
|
||||||
|
|
||||||
lib-y := init.o board_setup.o irqmap.o
|
obj-y := board_setup.o irqmap.o platform.o
|
||||||
obj-y += platform.o
|
|
||||||
|
|
||||||
EXTRA_CFLAGS += -Werror
|
EXTRA_CFLAGS += -Werror
|
||||||
|
@ -33,6 +33,11 @@
|
|||||||
extern void _board_init_irq(void);
|
extern void _board_init_irq(void);
|
||||||
extern void (*board_init_irq)(void);
|
extern void (*board_init_irq)(void);
|
||||||
|
|
||||||
|
const char *get_system_type(void)
|
||||||
|
{
|
||||||
|
return "Alchemy Pb1200";
|
||||||
|
}
|
||||||
|
|
||||||
void board_reset(void)
|
void board_reset(void)
|
||||||
{
|
{
|
||||||
bcsr->resets = 0;
|
bcsr->resets = 0;
|
||||||
|
@ -1,58 +0,0 @@
|
|||||||
/*
|
|
||||||
*
|
|
||||||
* BRIEF MODULE DESCRIPTION
|
|
||||||
* PB1200 board setup
|
|
||||||
*
|
|
||||||
* Copyright 2001, 2008 MontaVista Software Inc.
|
|
||||||
* Author: MontaVista Software, Inc. <source@mvista.com>
|
|
||||||
*
|
|
||||||
* 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 SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED
|
|
||||||
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
|
||||||
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN
|
|
||||||
* NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
|
|
||||||
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
|
|
||||||
* NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
|
|
||||||
* USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
|
|
||||||
* ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
|
||||||
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
|
|
||||||
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
||||||
*
|
|
||||||
* 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.,
|
|
||||||
* 675 Mass Ave, Cambridge, MA 02139, USA.
|
|
||||||
*/
|
|
||||||
|
|
||||||
#include <linux/init.h>
|
|
||||||
#include <linux/kernel.h>
|
|
||||||
|
|
||||||
#include <asm/bootinfo.h>
|
|
||||||
|
|
||||||
#include <prom.h>
|
|
||||||
|
|
||||||
const char *get_system_type(void)
|
|
||||||
{
|
|
||||||
return "Alchemy Pb1200";
|
|
||||||
}
|
|
||||||
|
|
||||||
void __init prom_init(void)
|
|
||||||
{
|
|
||||||
unsigned char *memsize_str;
|
|
||||||
unsigned long memsize;
|
|
||||||
|
|
||||||
prom_argc = (int)fw_arg0;
|
|
||||||
prom_argv = (char **)fw_arg1;
|
|
||||||
prom_envp = (char **)fw_arg2;
|
|
||||||
|
|
||||||
prom_init_cmdline();
|
|
||||||
memsize_str = prom_getenv("memsize");
|
|
||||||
if (!memsize_str)
|
|
||||||
memsize = 0x08000000;
|
|
||||||
else
|
|
||||||
strict_strtoul(memsize_str, 0, &memsize);
|
|
||||||
add_memory_region(0, memsize, BOOT_MEM_RAM);
|
|
||||||
}
|
|
@ -5,4 +5,4 @@
|
|||||||
# Makefile for the Alchemy Semiconductor Pb1500 board.
|
# Makefile for the Alchemy Semiconductor Pb1500 board.
|
||||||
#
|
#
|
||||||
|
|
||||||
lib-y := init.o board_setup.o irqmap.o
|
obj-y := board_setup.o
|
||||||
|
@ -29,6 +29,28 @@
|
|||||||
#include <asm/mach-au1x00/au1000.h>
|
#include <asm/mach-au1x00/au1000.h>
|
||||||
#include <asm/mach-pb1x00/pb1500.h>
|
#include <asm/mach-pb1x00/pb1500.h>
|
||||||
|
|
||||||
|
|
||||||
|
char irq_tab_alchemy[][5] __initdata = {
|
||||||
|
[12] = { -1, INTA, INTX, INTX, INTX }, /* IDSEL 12 - HPT370 */
|
||||||
|
[13] = { -1, INTA, INTB, INTC, INTD }, /* IDSEL 13 - PCI slot */
|
||||||
|
};
|
||||||
|
|
||||||
|
struct au1xxx_irqmap __initdata au1xxx_irq_map[] = {
|
||||||
|
{ AU1500_GPIO_204, INTC_INT_HIGH_LEVEL, 0 },
|
||||||
|
{ AU1500_GPIO_201, INTC_INT_LOW_LEVEL, 0 },
|
||||||
|
{ AU1500_GPIO_202, INTC_INT_LOW_LEVEL, 0 },
|
||||||
|
{ AU1500_GPIO_203, INTC_INT_LOW_LEVEL, 0 },
|
||||||
|
{ AU1500_GPIO_205, INTC_INT_LOW_LEVEL, 0 },
|
||||||
|
};
|
||||||
|
|
||||||
|
int __initdata au1xxx_nr_irqs = ARRAY_SIZE(au1xxx_irq_map);
|
||||||
|
|
||||||
|
|
||||||
|
const char *get_system_type(void)
|
||||||
|
{
|
||||||
|
return "Alchemy Pb1500";
|
||||||
|
}
|
||||||
|
|
||||||
void board_reset(void)
|
void board_reset(void)
|
||||||
{
|
{
|
||||||
/* Hit BCSR.RST_VDDI[SOFT_RESET] */
|
/* Hit BCSR.RST_VDDI[SOFT_RESET] */
|
||||||
|
@ -1,58 +0,0 @@
|
|||||||
/*
|
|
||||||
*
|
|
||||||
* BRIEF MODULE DESCRIPTION
|
|
||||||
* Pb1500 board setup
|
|
||||||
*
|
|
||||||
* Copyright 2001, 2008 MontaVista Software Inc.
|
|
||||||
* Author: MontaVista Software, Inc. <source@mvista.com>
|
|
||||||
*
|
|
||||||
* 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 SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED
|
|
||||||
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
|
||||||
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN
|
|
||||||
* NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
|
|
||||||
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
|
|
||||||
* NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
|
|
||||||
* USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
|
|
||||||
* ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
|
||||||
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
|
|
||||||
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
||||||
*
|
|
||||||
* 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.,
|
|
||||||
* 675 Mass Ave, Cambridge, MA 02139, USA.
|
|
||||||
*/
|
|
||||||
|
|
||||||
#include <linux/init.h>
|
|
||||||
#include <linux/kernel.h>
|
|
||||||
|
|
||||||
#include <asm/bootinfo.h>
|
|
||||||
|
|
||||||
#include <prom.h>
|
|
||||||
|
|
||||||
const char *get_system_type(void)
|
|
||||||
{
|
|
||||||
return "Alchemy Pb1500";
|
|
||||||
}
|
|
||||||
|
|
||||||
void __init prom_init(void)
|
|
||||||
{
|
|
||||||
unsigned char *memsize_str;
|
|
||||||
unsigned long memsize;
|
|
||||||
|
|
||||||
prom_argc = (int)fw_arg0;
|
|
||||||
prom_argv = (char **)fw_arg1;
|
|
||||||
prom_envp = (char **)fw_arg2;
|
|
||||||
|
|
||||||
prom_init_cmdline();
|
|
||||||
memsize_str = prom_getenv("memsize");
|
|
||||||
if (!memsize_str)
|
|
||||||
memsize = 0x04000000;
|
|
||||||
else
|
|
||||||
strict_strtoul(memsize_str, 0, &memsize);
|
|
||||||
add_memory_region(0, memsize, BOOT_MEM_RAM);
|
|
||||||
}
|
|
@ -1,46 +0,0 @@
|
|||||||
/*
|
|
||||||
* BRIEF MODULE DESCRIPTION
|
|
||||||
* Au1xxx irq map table
|
|
||||||
*
|
|
||||||
* Copyright 2003 Embedded Edge, LLC
|
|
||||||
* dan@embeddededge.com
|
|
||||||
*
|
|
||||||
* 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 SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED
|
|
||||||
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
|
||||||
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN
|
|
||||||
* NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
|
|
||||||
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
|
|
||||||
* NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
|
|
||||||
* USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
|
|
||||||
* ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
|
||||||
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
|
|
||||||
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
||||||
*
|
|
||||||
* 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.,
|
|
||||||
* 675 Mass Ave, Cambridge, MA 02139, USA.
|
|
||||||
*/
|
|
||||||
|
|
||||||
#include <linux/init.h>
|
|
||||||
|
|
||||||
#include <asm/mach-au1x00/au1000.h>
|
|
||||||
|
|
||||||
char irq_tab_alchemy[][5] __initdata = {
|
|
||||||
[12] = { -1, INTA, INTX, INTX, INTX }, /* IDSEL 12 - HPT370 */
|
|
||||||
[13] = { -1, INTA, INTB, INTC, INTD }, /* IDSEL 13 - PCI slot */
|
|
||||||
};
|
|
||||||
|
|
||||||
struct au1xxx_irqmap __initdata au1xxx_irq_map[] = {
|
|
||||||
{ AU1500_GPIO_204, INTC_INT_HIGH_LEVEL, 0 },
|
|
||||||
{ AU1500_GPIO_201, INTC_INT_LOW_LEVEL, 0 },
|
|
||||||
{ AU1500_GPIO_202, INTC_INT_LOW_LEVEL, 0 },
|
|
||||||
{ AU1500_GPIO_203, INTC_INT_LOW_LEVEL, 0 },
|
|
||||||
{ AU1500_GPIO_205, INTC_INT_LOW_LEVEL, 0 },
|
|
||||||
};
|
|
||||||
|
|
||||||
int __initdata au1xxx_nr_irqs = ARRAY_SIZE(au1xxx_irq_map);
|
|
@ -5,4 +5,4 @@
|
|||||||
# Makefile for the Alchemy Semiconductor Pb1550 board.
|
# Makefile for the Alchemy Semiconductor Pb1550 board.
|
||||||
#
|
#
|
||||||
|
|
||||||
lib-y := init.o board_setup.o irqmap.o
|
obj-y := board_setup.o
|
||||||
|
@ -32,6 +32,25 @@
|
|||||||
#include <asm/mach-au1x00/au1000.h>
|
#include <asm/mach-au1x00/au1000.h>
|
||||||
#include <asm/mach-pb1x00/pb1550.h>
|
#include <asm/mach-pb1x00/pb1550.h>
|
||||||
|
|
||||||
|
|
||||||
|
char irq_tab_alchemy[][5] __initdata = {
|
||||||
|
[12] = { -1, INTB, INTC, INTD, INTA }, /* IDSEL 12 - PCI slot 2 (left) */
|
||||||
|
[13] = { -1, INTA, INTB, INTC, INTD }, /* IDSEL 13 - PCI slot 1 (right) */
|
||||||
|
};
|
||||||
|
|
||||||
|
struct au1xxx_irqmap __initdata au1xxx_irq_map[] = {
|
||||||
|
{ AU1000_GPIO_0, INTC_INT_LOW_LEVEL, 0 },
|
||||||
|
{ AU1000_GPIO_1, INTC_INT_LOW_LEVEL, 0 },
|
||||||
|
};
|
||||||
|
|
||||||
|
int __initdata au1xxx_nr_irqs = ARRAY_SIZE(au1xxx_irq_map);
|
||||||
|
|
||||||
|
|
||||||
|
const char *get_system_type(void)
|
||||||
|
{
|
||||||
|
return "Alchemy Pb1550";
|
||||||
|
}
|
||||||
|
|
||||||
void board_reset(void)
|
void board_reset(void)
|
||||||
{
|
{
|
||||||
/* Hit BCSR.SYSTEM[RESET] */
|
/* Hit BCSR.SYSTEM[RESET] */
|
||||||
|
@ -1,43 +0,0 @@
|
|||||||
/*
|
|
||||||
* BRIEF MODULE DESCRIPTION
|
|
||||||
* Au1xx0 IRQ map table
|
|
||||||
*
|
|
||||||
* Copyright 2003 Embedded Edge, LLC
|
|
||||||
* dan@embeddededge.com
|
|
||||||
*
|
|
||||||
* 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 SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED
|
|
||||||
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
|
||||||
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN
|
|
||||||
* NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
|
|
||||||
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
|
|
||||||
* NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
|
|
||||||
* USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
|
|
||||||
* ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
|
||||||
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
|
|
||||||
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
||||||
*
|
|
||||||
* 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.,
|
|
||||||
* 675 Mass Ave, Cambridge, MA 02139, USA.
|
|
||||||
*/
|
|
||||||
|
|
||||||
#include <linux/init.h>
|
|
||||||
|
|
||||||
#include <asm/mach-au1x00/au1000.h>
|
|
||||||
|
|
||||||
char irq_tab_alchemy[][5] __initdata = {
|
|
||||||
[12] = { -1, INTB, INTC, INTD, INTA }, /* IDSEL 12 - PCI slot 2 (left) */
|
|
||||||
[13] = { -1, INTA, INTB, INTC, INTD }, /* IDSEL 13 - PCI slot 1 (right) */
|
|
||||||
};
|
|
||||||
|
|
||||||
struct au1xxx_irqmap __initdata au1xxx_irq_map[] = {
|
|
||||||
{ AU1000_GPIO_0, INTC_INT_LOW_LEVEL, 0 },
|
|
||||||
{ AU1000_GPIO_1, INTC_INT_LOW_LEVEL, 0 },
|
|
||||||
};
|
|
||||||
|
|
||||||
int __initdata au1xxx_nr_irqs = ARRAY_SIZE(au1xxx_irq_map);
|
|
@ -1,9 +1,9 @@
|
|||||||
/*
|
/*
|
||||||
|
* Common code used by all Alchemy develboards.
|
||||||
*
|
*
|
||||||
* BRIEF MODULE DESCRIPTION
|
* Extracted from files which had this to say:
|
||||||
* Pb1550 board setup
|
|
||||||
*
|
*
|
||||||
* Copyright 2001, 2008 MontaVista Software Inc.
|
* Copyright 2000, 2008 MontaVista Software Inc.
|
||||||
* Author: MontaVista Software, Inc. <source@mvista.com>
|
* Author: MontaVista Software, Inc. <source@mvista.com>
|
||||||
*
|
*
|
||||||
* This program is free software; you can redistribute it and/or modify it
|
* This program is free software; you can redistribute it and/or modify it
|
||||||
@ -29,15 +29,19 @@
|
|||||||
|
|
||||||
#include <linux/init.h>
|
#include <linux/init.h>
|
||||||
#include <linux/kernel.h>
|
#include <linux/kernel.h>
|
||||||
|
|
||||||
#include <asm/bootinfo.h>
|
#include <asm/bootinfo.h>
|
||||||
|
#include <asm/mach-au1x00/au1000.h>
|
||||||
#include <prom.h>
|
#include <prom.h>
|
||||||
|
|
||||||
const char *get_system_type(void)
|
#if defined(CONFIG_MIPS_PB1000) || defined(CONFIG_MIPS_DB1000) || \
|
||||||
{
|
defined(CONFIG_MIPS_PB1100) || defined(CONFIG_MIPS_DB1100) || \
|
||||||
return "Alchemy Pb1550";
|
defined(CONFIG_MIPS_PB1500) || defined(CONFIG_MIPS_DB1500) || \
|
||||||
}
|
defined(CONFIG_MIPS_BOSPORUS) || defined(CONFIG_MIPS_MIRAGE)
|
||||||
|
#define ALCHEMY_BOARD_DEFAULT_MEMSIZE 0x04000000
|
||||||
|
|
||||||
|
#else /* Au1550/Au1200-based develboards */
|
||||||
|
#define ALCHEMY_BOARD_DEFAULT_MEMSIZE 0x08000000
|
||||||
|
#endif
|
||||||
|
|
||||||
void __init prom_init(void)
|
void __init prom_init(void)
|
||||||
{
|
{
|
||||||
@ -51,7 +55,7 @@ void __init prom_init(void)
|
|||||||
prom_init_cmdline();
|
prom_init_cmdline();
|
||||||
memsize_str = prom_getenv("memsize");
|
memsize_str = prom_getenv("memsize");
|
||||||
if (!memsize_str)
|
if (!memsize_str)
|
||||||
memsize = 0x08000000;
|
memsize = ALCHEMY_BOARD_DEFAULT_MEMSIZE;
|
||||||
else
|
else
|
||||||
strict_strtoul(memsize_str, 0, &memsize);
|
strict_strtoul(memsize_str, 0, &memsize);
|
||||||
add_memory_region(0, memsize, BOOT_MEM_RAM);
|
add_memory_region(0, memsize, BOOT_MEM_RAM);
|
Loading…
Reference in New Issue
Block a user