Commit edcaf1a6 authored by Atsushi Nemoto's avatar Atsushi Nemoto Committed by Ralf Baechle
Browse files

[MIPS] TXx9: Make single kernel can support multiple boards



Make single kernel can be used on RBTX4927/37/38.  Also make
some SoC-specific code independent from board-specific code.

Signed-off-by: default avatarAtsushi Nemoto <anemo@mba.ocn.ne.jp>
Signed-off-by: default avatarRalf Baechle <ralf@linux-mips.org>
parent 76689156
Loading
Loading
Loading
Loading
+4 −63
Original line number Diff line number Diff line
@@ -550,66 +550,11 @@ config SNI_RM
	  Technology and now in turn merged with Fujitsu.  Say Y here to
	  support this machine type.

config TOSHIBA_JMR3927
	bool "Toshiba JMR-TX3927 board"
	select CEVT_TXX9
	select DMA_NONCOHERENT
	select HW_HAS_PCI
	select MIPS_TX3927
	select IRQ_TXX9
	select SWAP_IO_SPACE
	select SYS_HAS_CPU_TX39XX
	select SYS_SUPPORTS_32BIT_KERNEL
	select SYS_SUPPORTS_LITTLE_ENDIAN
	select SYS_SUPPORTS_BIG_ENDIAN
	select GENERIC_HARDIRQS_NO__DO_IRQ
	select GPIO_TXX9
config MACH_TX39XX
	bool "Toshiba TX39 series based machines"

config TOSHIBA_RBTX4927
	bool "Toshiba RBTX49[23]7 board"
	select CEVT_R4K
	select CSRC_R4K
	select CEVT_TXX9
	select DMA_NONCOHERENT
	select HAS_TXX9_SERIAL
	select HW_HAS_PCI
	select IRQ_CPU
	select IRQ_TXX9
	select PCI_TX4927
	select SWAP_IO_SPACE
	select SYS_HAS_CPU_TX49XX
	select SYS_SUPPORTS_32BIT_KERNEL
	select SYS_SUPPORTS_64BIT_KERNEL
	select SYS_SUPPORTS_LITTLE_ENDIAN
	select SYS_SUPPORTS_BIG_ENDIAN
	select SYS_SUPPORTS_KGDB
	select GENERIC_HARDIRQS_NO__DO_IRQ
	help
	  This Toshiba board is based on the TX4927 processor. Say Y here to
	  support this machine type

config TOSHIBA_RBTX4938
	bool "Toshiba RBTX4938 board"
	select CEVT_R4K
	select CSRC_R4K
	select CEVT_TXX9
	select DMA_NONCOHERENT
	select HAS_TXX9_SERIAL
	select HW_HAS_PCI
	select IRQ_CPU
	select IRQ_TXX9
	select PCI_TX4927
	select SWAP_IO_SPACE
	select SYS_HAS_CPU_TX49XX
	select SYS_SUPPORTS_32BIT_KERNEL
	select SYS_SUPPORTS_LITTLE_ENDIAN
	select SYS_SUPPORTS_BIG_ENDIAN
	select SYS_SUPPORTS_KGDB
	select GENERIC_HARDIRQS_NO__DO_IRQ
	select GPIO_TXX9
	help
	  This Toshiba board is based on the TX4938 processor. Say Y here to
	  support this machine type
config MACH_TX49XX
	bool "Toshiba TX49 series based machines"

config WR_PPMC
	bool "Wind River PPMC board"
@@ -887,10 +832,6 @@ config PCI_GT64XXX_PCI0
config NO_EXCEPT_FILL
	bool

config MIPS_TX3927
	bool
	select HAS_TXX9_SERIAL

config MIPS_RM9122
	bool
	select SERIAL_RM9000
+11 −10
Original line number Diff line number Diff line
@@ -550,30 +550,31 @@ load-$(CONFIG_SNI_RM) += 0xffffffff80030000
endif
all-$(CONFIG_SNI_RM)		:= vmlinux.ecoff

#
# Common TXx9
#
core-$(CONFIG_MACH_TX39XX)	+= arch/mips/txx9/generic/
cflags-$(CONFIG_MACH_TX39XX) += -Iinclude/asm-mips/mach-jmr3927
load-$(CONFIG_MACH_TX39XX)	+= 0xffffffff80050000
core-$(CONFIG_MACH_TX49XX)	+= arch/mips/txx9/generic/
cflags-$(CONFIG_MACH_TX49XX) += -Iinclude/asm-mips/mach-tx49xx
load-$(CONFIG_MACH_TX49XX)	+= 0xffffffff80100000

#
# Toshiba JMR-TX3927 board
#
core-$(CONFIG_TOSHIBA_JMR3927)	+= arch/mips/txx9/jmr3927/ \
				   arch/mips/txx9/generic/
cflags-$(CONFIG_TOSHIBA_JMR3927) += -Iinclude/asm-mips/mach-jmr3927
load-$(CONFIG_TOSHIBA_JMR3927)	+= 0xffffffff80050000
core-$(CONFIG_TOSHIBA_JMR3927)	+= arch/mips/txx9/jmr3927/

#
# Toshiba RBTX4927 board or
# Toshiba RBTX4937 board
#
core-$(CONFIG_TOSHIBA_RBTX4927)	+= arch/mips/txx9/rbtx4927/
core-$(CONFIG_TOSHIBA_RBTX4927)	+= arch/mips/txx9/generic/
cflags-$(CONFIG_TOSHIBA_RBTX4927) += -Iinclude/asm-mips/mach-tx49xx
load-$(CONFIG_TOSHIBA_RBTX4927)	+= 0xffffffff80020000

#
# Toshiba RBTX4938 board
#
core-$(CONFIG_TOSHIBA_RBTX4938) += arch/mips/txx9/rbtx4938/
core-$(CONFIG_TOSHIBA_RBTX4938) += arch/mips/txx9/generic/
cflags-$(CONFIG_TOSHIBA_RBTX4938) += -Iinclude/asm-mips/mach-tx49xx
load-$(CONFIG_TOSHIBA_RBTX4938) += 0xffffffff80100000

cflags-y			+= -Iinclude/asm-mips/mach-generic
drivers-$(CONFIG_PCI)		+= arch/mips/pci/
+5 −4
Original line number Diff line number Diff line
@@ -11,11 +11,10 @@ obj-$(CONFIG_MIPS_BONITO64) += ops-bonito64.o
obj-$(CONFIG_PCI_GT64XXX_PCI0)	+= ops-gt64xxx_pci0.o
obj-$(CONFIG_MIPS_MSC)		+= ops-msc.o
obj-$(CONFIG_MIPS_NILE4)	+= ops-nile4.o
obj-$(CONFIG_MIPS_TX3927)	+= ops-tx3927.o
obj-$(CONFIG_SOC_TX3927)	+= ops-tx3927.o
obj-$(CONFIG_PCI_VR41XX)	+= ops-vr41xx.o pci-vr41xx.o
obj-$(CONFIG_NEC_CMBVR4133)	+= fixup-vr4133.o
obj-$(CONFIG_MARKEINS)		+= ops-emma2rh.o pci-emma2rh.o fixup-emma2rh.o
obj-$(CONFIG_PCI_TX3927)	+= ops-tx3927.o
obj-$(CONFIG_PCI_TX4927)	+= ops-tx4927.o

#
@@ -44,8 +43,10 @@ obj-$(CONFIG_TANBAC_TB0219) += fixup-tb0219.o
obj-$(CONFIG_TANBAC_TB0226)	+= fixup-tb0226.o
obj-$(CONFIG_TANBAC_TB0287)	+= fixup-tb0287.o
obj-$(CONFIG_TOSHIBA_JMR3927)	+= fixup-jmr3927.o
obj-$(CONFIG_TOSHIBA_RBTX4927)	+= fixup-rbtx4927.o pci-tx4927.o pci-tx4938.o
obj-$(CONFIG_TOSHIBA_RBTX4938)	+= fixup-rbtx4938.o pci-tx4938.o
obj-$(CONFIG_SOC_TX4927)	+= pci-tx4927.o
obj-$(CONFIG_SOC_TX4938)	+= pci-tx4938.o
obj-$(CONFIG_TOSHIBA_RBTX4927)	+= fixup-rbtx4927.o
obj-$(CONFIG_TOSHIBA_RBTX4938)	+= fixup-rbtx4938.o
obj-$(CONFIG_VICTOR_MPC30X)	+= fixup-mpc30x.o
obj-$(CONFIG_ZAO_CAPCELLA)	+= fixup-capcella.o
obj-$(CONFIG_WR_PPMC)		+= fixup-wrppmc.o
+1 −7
Original line number Diff line number Diff line
@@ -31,7 +31,7 @@
#include <asm/txx9/pci.h>
#include <asm/txx9/jmr3927.h>

int __init pcibios_map_irq(const struct pci_dev *dev, u8 slot, u8 pin)
int __init jmr3927_pci_map_irq(const struct pci_dev *dev, u8 slot, u8 pin)
{
	unsigned char irq = pin;

@@ -77,9 +77,3 @@ int __init pcibios_map_irq(const struct pci_dev *dev, u8 slot, u8 pin)
		irq = JMR3927_IRQ_ETHER0;
	return irq;
}

/* Do platform specific device initialization at pci_enable_device() time */
int pcibios_plat_dev_init(struct pci_dev *dev)
{
	return 0;
}
+1 −7
Original line number Diff line number Diff line
@@ -36,7 +36,7 @@
#include <asm/txx9/pci.h>
#include <asm/txx9/rbtx4927.h>

int __init pcibios_map_irq(const struct pci_dev *dev, u8 slot, u8 pin)
int __init rbtx4927_pci_map_irq(const struct pci_dev *dev, u8 slot, u8 pin)
{
	unsigned char irq = pin;

@@ -71,9 +71,3 @@ int __init pcibios_map_irq(const struct pci_dev *dev, u8 slot, u8 pin)
	}
	return irq;
}

/* Do platform specific device initialization at pci_enable_device() time */
int pcibios_plat_dev_init(struct pci_dev *dev)
{
	return 0;
}
Loading