diff options
Diffstat (limited to 'packages/linux')
-rw-r--r-- | packages/linux/ixp4xx-kernel/2.6.15/65-loft-config.patch | 84 | ||||
-rw-r--r-- | packages/linux/ixp4xx-kernel/2.6.15/defconfig | 6 | ||||
-rw-r--r-- | packages/linux/ixp4xx-kernel_2.6.15.bb | 3 |
3 files changed, 90 insertions, 3 deletions
diff --git a/packages/linux/ixp4xx-kernel/2.6.15/65-loft-config.patch b/packages/linux/ixp4xx-kernel/2.6.15/65-loft-config.patch new file mode 100644 index 0000000000..c6b0c7c679 --- /dev/null +++ b/packages/linux/ixp4xx-kernel/2.6.15/65-loft-config.patch @@ -0,0 +1,84 @@ +support for the Giant Shoulder Inc Loft board - a very minor +variation on a standard Avila board + +--- linux-2.6.15/arch/arm/mach-ixp4xx/Kconfig 1970-01-01 00:00:00.000000000 +0000 ++++ linux-2.6.15/arch/arm/mach-ixp4xx/Kconfig 1970-01-01 00:00:00.000000000 +0000 +@@ -25,6 +25,12 @@ config ARCH_AVILA + Avila Network Platform. For more information on this platform, + see <file:Documentation/arm/IXP4xx>. + ++config MACH_LOFT ++ bool "Loft" ++ help ++ Say 'Y' here if you want your kernel to support the Giant ++ Shoulder Inc Loft board. ++ + config ARCH_ADI_COYOTE + bool "Coyote" + help +@@ -85,7 +91,7 @@ config MACH_NAS100D + # + config ARCH_IXDP4XX + bool +- depends on ARCH_IXDP425 || ARCH_AVILA || MACH_IXDP465 ++ depends on ARCH_IXDP425 || ARCH_AVILA || MACH_IXDP465 || MACH_LOFT + default y + + # +--- linux-2.6.15/arch/arm/mach-ixp4xx/ixdp425-pci.c 1970-01-01 00:00:00.000000000 +0000 ++++ linux-2.6.15/arch/arm/mach-ixp4xx/ixdp425-pci.c 1970-01-01 00:00:00.000000000 +0000 +@@ -51,7 +51,8 @@ static int __init ixdp425_map_irq(struct + + int irq = -1; + +- if (slot >= 1 && slot <= IXDP425_PCI_MAX_DEV && ++ if (slot >= 1 && ++ slot <= (machine_is_loft() ? LOFT_PCI_MAX_DEV : IXDP425_PCI_MAX_DEV) && + pin >= 1 && pin <= IXDP425_PCI_IRQ_LINES) { + irq = pci_irq_table[(slot + pin - 2) % 4]; + } +@@ -71,7 +72,8 @@ struct hw_pci ixdp425_pci __initdata = { + int __init ixdp425_pci_init(void) + { + if (machine_is_ixdp425() || machine_is_ixcdp1100() || +- machine_is_avila() || machine_is_ixdp465()) ++ machine_is_avila() || machine_is_ixdp465() || ++ machine_is_loft()) + pci_common_init(&ixdp425_pci); + return 0; + } +--- linux-2.6.15/arch/arm/mach-ixp4xx/ixdp425-setup.c 1970-01-01 00:00:00.000000000 +0000 ++++ linux-2.6.15/arch/arm/mach-ixp4xx/ixdp425-setup.c 1970-01-01 00:00:00.000000000 +0000 +@@ -185,3 +185,22 @@ MACHINE_START(AVILA, "Gateworks Avila Ne + MACHINE_END + #endif + ++/* ++ * Loft is functionally equivalent to Avila except that it has a ++ * different number for the maximum PCI devices. The MACHINE ++ * structure below is identical to Avila except for the comment. ++ */ ++#ifdef CONFIG_MACH_LOFT ++MACHINE_START(LOFT, "Giant Shoulder Inc Loft board") ++ /* Maintainer: Tom Billman <kernel@giantshoulderinc.com> */ ++ .phys_ram = PHYS_OFFSET, ++ .phys_io = IXP4XX_PERIPHERAL_BASE_PHYS, ++ .io_pg_offst = ((IXP4XX_PERIPHERAL_BASE_VIRT) >> 18) & 0xfffc, ++ .map_io = ixp4xx_map_io, ++ .init_irq = ixp4xx_init_irq, ++ .timer = &ixp4xx_timer, ++ .boot_params = 0x0100, ++ .init_machine = ixdp425_init, ++MACHINE_END ++#endif ++ +--- linux-2.6.15/include/asm-arm/arch-ixp4xx/ixdp425.h 1970-01-01 00:00:00.000000000 +0000 ++++ linux-2.6.15/include/asm-arm/arch-ixp4xx/ixdp425.h 1970-01-01 00:00:00.000000000 +0000 +@@ -26,6 +26,7 @@ + * IXDP425 PCI IRQs + */ + #define IXDP425_PCI_MAX_DEV 4 ++#define LOFT_PCI_MAX_DEV 6 + #define IXDP425_PCI_IRQ_LINES 4 + + diff --git a/packages/linux/ixp4xx-kernel/2.6.15/defconfig b/packages/linux/ixp4xx-kernel/2.6.15/defconfig index ff69ccc6f1..c05034de19 100644 --- a/packages/linux/ixp4xx-kernel/2.6.15/defconfig +++ b/packages/linux/ixp4xx-kernel/2.6.15/defconfig @@ -1,7 +1,7 @@ # # Automatically generated make config: don't edit # Linux kernel version: 2.6.15 -# Sun Jan 8 02:47:26 2006 +# Thu Jan 12 17:44:50 2006 # CONFIG_ARM=y CONFIG_MMU=y @@ -113,12 +113,14 @@ CONFIG_ARCH_SUPPORTS_BIG_ENDIAN=y # CONFIG_MACH_NSLU2=y # CONFIG_ARCH_AVILA is not set +CONFIG_MACH_LOFT=y # CONFIG_ARCH_ADI_COYOTE is not set # CONFIG_ARCH_IXDP425 is not set # CONFIG_MACH_IXDPG425 is not set # CONFIG_MACH_IXDP465 is not set # CONFIG_ARCH_PRPMC1100 is not set CONFIG_MACH_NAS100D=y +CONFIG_ARCH_IXDP4XX=y # CONFIG_MACH_GTWX5715 is not set # @@ -177,7 +179,7 @@ CONFIG_ALIGNMENT_TRAP=y # CONFIG_ZBOOT_ROM_TEXT=0x0 CONFIG_ZBOOT_ROM_BSS=0x0 -CONFIG_CMDLINE="root=/dev/mtdblock4 rw rootfstype=jffs2 mem=32M@0x00000000 init=/linuxrc rtc-x1205.hctosys=1 rtc-x1205.probe=0,0x6f noirqdebug console=ttyS0,115200n8" +CONFIG_CMDLINE="root=/dev/mtdblock4 rw rootfstype=jffs2 mem=32M@0x00000000 init=/linuxrc rtc-x1205.hctosys=1 rtc-x1205.probe=0,0x6f rtc-ds1672.probe=0,0x68 rtc-ds1672.hctosys=1 pcf8563.hctosys=1 noirqdebug console=ttyS0,115200n8" # CONFIG_XIP_KERNEL is not set # diff --git a/packages/linux/ixp4xx-kernel_2.6.15.bb b/packages/linux/ixp4xx-kernel_2.6.15.bb index 39ad707916..4a7cd96d37 100644 --- a/packages/linux/ixp4xx-kernel_2.6.15.bb +++ b/packages/linux/ixp4xx-kernel_2.6.15.bb @@ -8,7 +8,7 @@ PR_CONFIG = "0" # Increment the number below (i.e. the digits after PR) when # making changes within this file or for changes to the patches # applied to the kernel. -PR = "r3.${PR_CONFIG}" +PR = "r4.${PR_CONFIG}" include ixp4xx-kernel.inc @@ -25,6 +25,7 @@ IXP4XX_PATCHES += "file://60-nas100d-i2c.patch;patch=1" # IXP4XX_PATCHES += "file://60-nas100d-ide.patch;patch=1" IXP4XX_PATCHES += "file://60-nas100d-rtc.patch;patch=1" IXP4XX_PATCHES += "file://60-nslu2-beeper.patch;patch=1" +IXP4XX_PATCHES += "file://65-loft-config.patch;patch=1" # IXP4XX_PATCHES += "file://75-nslu2-leds.patch;patch=1" IXP4XX_PATCHES += "file://80-nslu2-io.patch;patch=1" IXP4XX_PATCHES += "file://85-timer.patch;patch=1" |