diff --git a/target/linux/rdc/Makefile b/target/linux/rdc/Makefile index 0b708fc856..1839305d06 100644 --- a/target/linux/rdc/Makefile +++ b/target/linux/rdc/Makefile @@ -11,7 +11,7 @@ BOARD:=rdc BOARDNAME:=RDC 321x FEATURES:=squashfs jffs2 pci -LINUX_VERSION:=2.6.24.7 +LINUX_VERSION:=2.6.25.4 include $(INCLUDE_DIR)/target.mk diff --git a/target/linux/rdc/config-2.6.25 b/target/linux/rdc/config-2.6.25 new file mode 100644 index 0000000000..60170fa774 --- /dev/null +++ b/target/linux/rdc/config-2.6.25 @@ -0,0 +1,374 @@ +# CONFIG_60XX_WDT is not set +# CONFIG_64BIT is not set +# CONFIG_8139TOO is not set +# CONFIG_ACQUIRE_WDT is not set +CONFIG_ADM6996_PHY=y +# CONFIG_ADVANTECH_WDT is not set +# CONFIG_AGP is not set +# CONFIG_ALIM1535_WDT is not set +# CONFIG_ALIM7101_WDT is not set +CONFIG_ARCH_HAS_CPU_IDLE_WAIT=y +CONFIG_ARCH_HAS_CPU_RELAX=y +# CONFIG_ARCH_HAS_ILOG2_U32 is not set +# CONFIG_ARCH_HAS_ILOG2_U64 is not set +CONFIG_ARCH_HIBERNATION_POSSIBLE=y +CONFIG_ARCH_MAY_HAVE_PC_FDC=y +CONFIG_ARCH_POPULATES_NODE_MAP=y +CONFIG_ARCH_SUPPORTS_AOUT=y +# CONFIG_ARCH_SUPPORTS_MSI is not set +CONFIG_ARCH_SUSPEND_POSSIBLE=y +CONFIG_ATA=m +# CONFIG_ATA_NONSTANDARD is not set +CONFIG_ATA_PIIX=m +# CONFIG_AUDIT_ARCH is not set +CONFIG_BASE_SMALL=0 +CONFIG_BINFMT_AOUT=m +CONFIG_BINFMT_MISC=m +CONFIG_BITREVERSE=y +CONFIG_BLK_DEV_IDE=m +CONFIG_BLK_DEV_IDEDISK=m +# CONFIG_BLK_DEV_IDEDMA is not set +CONFIG_BOUNCE=y +# CONFIG_BROADCOM_PHY is not set +CONFIG_CLASSIC_RCU=y +CONFIG_CLOCKSOURCE_WATCHDOG=y +# CONFIG_COMPAT_VDSO is not set +# CONFIG_CPU5_WDT is not set +# CONFIG_CPU_FREQ is not set +# CONFIG_CPU_IDLE is not set +CONFIG_CRYPTO_AEAD=m +CONFIG_CRYPTO_AES_586=m +CONFIG_CRYPTO_AUTHENC=m +CONFIG_CRYPTO_GF128MUL=m +# CONFIG_CRYPTO_SALSA20_586 is not set +CONFIG_CRYPTO_TWOFISH_586=m +# CONFIG_CS5535_GPIO is not set +# CONFIG_DCDBAS is not set +# CONFIG_DEBUG_BUGVERBOSE is not set +CONFIG_DEFAULT_CFQ=y +# CONFIG_DEFAULT_DEADLINE is not set +CONFIG_DEFAULT_IOSCHED="cfq" +CONFIG_DEFAULT_IO_DELAY_TYPE=0 +CONFIG_DEFCONFIG_LIST="arch/x86/configs/i386_defconfig" +# CONFIG_DELL_RBU is not set +CONFIG_DEVPORT=y +# CONFIG_DMADEVICES is not set +CONFIG_DMI=y +CONFIG_DMIID=y +CONFIG_DOUBLEFAULT=y +# CONFIG_E100 is not set +# CONFIG_E1000E_ENABLED is not set +CONFIG_EARLY_PRINTK=y +# CONFIG_EDAC is not set +# CONFIG_EDD is not set +# CONFIG_EUROTECH_WDT is not set +CONFIG_FAST_CMPXCHG_LOCAL=y +CONFIG_FIXED_PHY=y +CONFIG_FIX_EARLYCON_MEM=y +CONFIG_FS_POSIX_ACL=y +CONFIG_GENERIC_BUG=y +CONFIG_GENERIC_CLOCKEVENTS=y +CONFIG_GENERIC_CLOCKEVENTS_BUILD=y +CONFIG_GENERIC_CMOS_UPDATE=y +# CONFIG_GENERIC_CPU is not set +CONFIG_GENERIC_GPIO=y +CONFIG_GENERIC_IOMAP=y +CONFIG_GENERIC_ISA_DMA=y +# CONFIG_GENERIC_LOCKBREAK is not set +# CONFIG_GENERIC_TIME_VSYSCALL is not set +# CONFIG_GEN_RTC is not set +# CONFIG_HANGCHECK_TIMER is not set +CONFIG_HAS_DMA=y +CONFIG_HAS_IOMEM=y +CONFIG_HAS_IOPORT=y +CONFIG_HAVE_IDE=y +CONFIG_HAVE_KPROBES=y +CONFIG_HAVE_KRETPROBES=y +CONFIG_HAVE_KVM=y +CONFIG_HAVE_LATENCYTOP_SUPPORT=y +CONFIG_HAVE_OPROFILE=y +# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set +CONFIG_HID=m +CONFIG_HID_SUPPORT=y +# CONFIG_HIGHMEM4G is not set +# CONFIG_HIGHMEM64G is not set +# CONFIG_HIGH_RES_TIMERS is not set +# CONFIG_HPET_TIMER is not set +# CONFIG_HP_WATCHDOG is not set +CONFIG_HUGETLBFS=y +CONFIG_HUGETLB_PAGE=y +CONFIG_HW_RANDOM=y +# CONFIG_HW_RANDOM_AMD is not set +# CONFIG_HW_RANDOM_GEODE is not set +# CONFIG_HW_RANDOM_INTEL is not set +# CONFIG_HW_RANDOM_VIA is not set +CONFIG_HZ=250 +# CONFIG_HZ_100 is not set +CONFIG_HZ_250=y +CONFIG_I2C=m +# CONFIG_I2C_ALGOBIT is not set +CONFIG_I2C_BOARDINFO=y +# CONFIG_I6300ESB_WDT is not set +# CONFIG_I8K is not set +# CONFIG_IB700_WDT is not set +# CONFIG_IBMASR is not set +# CONFIG_IBM_ASM is not set +# CONFIG_IBM_NEW_EMAC_EMAC4 is not set +# CONFIG_IBM_NEW_EMAC_RGMII is not set +# CONFIG_IBM_NEW_EMAC_TAH is not set +# CONFIG_IBM_NEW_EMAC_ZMII is not set +CONFIG_ICPLUS_PHY=y +CONFIG_IDE=m +CONFIG_IDE_ARCH_OBSOLETE_INIT=y +# CONFIG_IDE_GENERIC is not set +# CONFIG_IDE_PROC_FS is not set +CONFIG_INITRAMFS_SOURCE="" +CONFIG_INPUT=m +# CONFIG_INPUT_APANEL is not set +# CONFIG_INPUT_GPIO_BUTTONS is not set +CONFIG_INPUT_MISC=y +CONFIG_INPUT_YEALINK=m +# CONFIG_IOMMU_HELPER is not set +CONFIG_IOSCHED_CFQ=y +# CONFIG_IOSCHED_DEADLINE is not set +CONFIG_IO_DELAY_0X80=y +# CONFIG_IO_DELAY_0XED is not set +# CONFIG_IO_DELAY_NONE is not set +CONFIG_IO_DELAY_TYPE_0X80=0 +CONFIG_IO_DELAY_TYPE_0XED=1 +CONFIG_IO_DELAY_TYPE_NONE=3 +CONFIG_IO_DELAY_TYPE_UDELAY=2 +# CONFIG_IO_DELAY_UDELAY is not set +# CONFIG_IPWIRELESS is not set +# CONFIG_ISA is not set +CONFIG_ISA_DMA_API=y +# CONFIG_IT8712F_WDT is not set +# CONFIG_ITCO_WDT is not set +CONFIG_JFS_FS=m +CONFIG_KEXEC=y +CONFIG_KTIME_SCALAR=y +# CONFIG_KVM is not set +# CONFIG_LATENCYTOP is not set +# CONFIG_LEDS_ALIX is not set +CONFIG_LEDS_GPIO=y +# CONFIG_LGUEST is not set +CONFIG_LSF=y +CONFIG_LZO_COMPRESS=m +CONFIG_LZO_DECOMPRESS=m +# CONFIG_M386 is not set +CONFIG_M486=y +# CONFIG_M586 is not set +# CONFIG_M586MMX is not set +# CONFIG_M586TSC is not set +# CONFIG_M686 is not set +# CONFIG_MACHZ_WDT is not set +# CONFIG_MACINTOSH_DRIVERS is not set +CONFIG_MATH_EMULATION=y +# CONFIG_MCA is not set +# CONFIG_MCORE2 is not set +# CONFIG_MCRUSOE is not set +# CONFIG_MCYRIXIII is not set +CONFIG_MDIO_BITBANG=y +# CONFIG_MEFFICEON is not set +# CONFIG_MEMSTICK is not set +# CONFIG_MGEODEGX1 is not set +# CONFIG_MGEODE_LX is not set +# CONFIG_MICROCODE is not set +# CONFIG_MK6 is not set +# CONFIG_MK7 is not set +# CONFIG_MK8 is not set +CONFIG_MODULE_FORCE_UNLOAD=y +# CONFIG_MPENTIUM4 is not set +# CONFIG_MPENTIUMII is not set +# CONFIG_MPENTIUMIII is not set +# CONFIG_MPENTIUMM is not set +# CONFIG_MPSC is not set +CONFIG_MTD=y +# CONFIG_MTD_ABSENT is not set +CONFIG_MTD_BLKDEVS=y +CONFIG_MTD_BLOCK=y +# CONFIG_MTD_BLOCK2MTD is not set +CONFIG_MTD_CFI=y +# CONFIG_MTD_CFI_ADV_OPTIONS is not set +CONFIG_MTD_CFI_AMDSTD=y +CONFIG_MTD_CFI_I1=y +CONFIG_MTD_CFI_I2=y +# CONFIG_MTD_CFI_I4 is not set +# CONFIG_MTD_CFI_I8 is not set +# CONFIG_MTD_CFI_INTELEXT is not set +# CONFIG_MTD_CFI_STAA is not set +CONFIG_MTD_CFI_UTIL=y +CONFIG_MTD_CHAR=y +CONFIG_MTD_CMDLINE_PARTS=y +# CONFIG_MTD_COMPLEX_MAPPINGS is not set +CONFIG_MTD_CONCAT=y +# CONFIG_MTD_DEBUG is not set +# CONFIG_MTD_DOC2000 is not set +# CONFIG_MTD_DOC2001 is not set +# CONFIG_MTD_DOC2001PLUS is not set +CONFIG_MTD_GEN_PROBE=y +# CONFIG_MTD_JEDECPROBE is not set +CONFIG_MTD_MAP_BANK_WIDTH_1=y +# CONFIG_MTD_MAP_BANK_WIDTH_16 is not set +CONFIG_MTD_MAP_BANK_WIDTH_2=y +# CONFIG_MTD_MAP_BANK_WIDTH_32 is not set +CONFIG_MTD_MAP_BANK_WIDTH_4=y +# CONFIG_MTD_MAP_BANK_WIDTH_8 is not set +# CONFIG_MTD_MTDRAM is not set +# CONFIG_MTD_NETSC520 is not set +# CONFIG_MTD_ONENAND is not set +CONFIG_MTD_PARTITIONS=y +# CONFIG_MTD_PHRAM is not set +# CONFIG_MTD_PHYSMAP is not set +# CONFIG_MTD_PLATRAM is not set +# CONFIG_MTD_PMC551 is not set +# CONFIG_MTD_RAM is not set +CONFIG_MTD_RDC3210=y +CONFIG_MTD_RDC3210_ALLOW_JFFS2=y +CONFIG_MTD_RDC3210_BUSWIDTH=2 +# CONFIG_MTD_RDC3210_FACTORY_PRESENT is not set +CONFIG_MTD_RDC3210_SIZE=0x400000 +# CONFIG_MTD_RDC3210_STATIC_MAP is not set +# CONFIG_MTD_REDBOOT_PARTS is not set +# CONFIG_MTD_ROM is not set +# CONFIG_MTD_SC520CDP is not set +# CONFIG_MTD_SLRAM is not set +# CONFIG_MTD_TS5500 is not set +# CONFIG_MTRR is not set +# CONFIG_MVIAC3_2 is not set +# CONFIG_MVIAC7 is not set +# CONFIG_MWINCHIP2 is not set +# CONFIG_MWINCHIP3D is not set +# CONFIG_MWINCHIPC6 is not set +# CONFIG_NATSEMI is not set +# CONFIG_NE2K_PCI is not set +# CONFIG_NET_VENDOR_3COM is not set +CONFIG_NLS_ISO8859_2=m +CONFIG_NOHIGHMEM=y +CONFIG_NO_HZ=y +# CONFIG_NSC_GPIO is not set +CONFIG_NVRAM=y +CONFIG_PAGE_OFFSET=0xC0000000 +# CONFIG_PARAVIRT_GUEST is not set +CONFIG_PATA_ARTOP=m +# CONFIG_PATA_CS5536 is not set +# CONFIG_PC8736x_GPIO is not set +# CONFIG_PC87413_WDT is not set +CONFIG_PCCARD=m +CONFIG_PCCARD_NONSTATIC=m +CONFIG_PCI=y +# CONFIG_PCIEPORTBUS is not set +# CONFIG_PCIPCWATCHDOG is not set +CONFIG_PCI_BIOS=y +CONFIG_PCI_DIRECT=y +CONFIG_PCI_DOMAINS=y +CONFIG_PCI_GOANY=y +# CONFIG_PCI_GOBIOS is not set +# CONFIG_PCI_GODIRECT is not set +# CONFIG_PCI_GOMMCONFIG is not set +CONFIG_PCMCIA=m +CONFIG_PHYLIB=y +CONFIG_PHYSICAL_ALIGN=0x100000 +CONFIG_PHYSICAL_START=0x100000 +# CONFIG_PROVIDE_OHCI1394_DMA_INIT is not set +# CONFIG_QSEMI_PHY is not set +CONFIG_R6040=m +CONFIG_REALTEK_PHY=y +CONFIG_RELOCATABLE=y +# CONFIG_RTC is not set +# CONFIG_RWSEM_GENERIC_SPINLOCK is not set +CONFIG_RWSEM_XCHGADD_ALGORITHM=y +# CONFIG_SBC7240_WDT is not set +# CONFIG_SBC8360_WDT is not set +# CONFIG_SBC_EPX_C3_WATCHDOG is not set +# CONFIG_SC1200_WDT is not set +# CONFIG_SC520_WDT is not set +# CONFIG_SCHED_HRTICK is not set +# CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER is not set +# CONFIG_SCSI_LOWLEVEL_PCMCIA is not set +# CONFIG_SCSI_MULTI_LUN is not set +CONFIG_SCSI_WAIT_SCAN=m +# CONFIG_SCx200 is not set +# CONFIG_SCx200_ACB is not set +CONFIG_SEMAPHORE_SLEEPERS=y +# CONFIG_SERIAL_8250_EXTENDED is not set +CONFIG_SLABINFO=y +# CONFIG_SMP is not set +# CONFIG_SMSC37B787_WDT is not set +# CONFIG_SMSC_PHY is not set +# CONFIG_SND_SIS7019 is not set +CONFIG_SOFT_WATCHDOG=m +# CONFIG_SONYPI is not set +# CONFIG_SPARSEMEM_STATIC is not set +# CONFIG_SPARSEMEM_VMEMMAP_ENABLE is not set +CONFIG_SSB_POSSIBLE=y +CONFIG_SYSVIPC_SYSCTL=y +# CONFIG_TELCLOCK is not set +# CONFIG_THERMAL is not set +CONFIG_TICK_ONESHOT=y +# CONFIG_TOSHIBA is not set +CONFIG_UID16=y +CONFIG_USB=m +# CONFIG_USBPCWATCHDOG is not set +CONFIG_USB_EHCI_HCD=m +# CONFIG_USB_OHCI_BIG_ENDIAN_DESC is not set +# CONFIG_USB_OHCI_BIG_ENDIAN_MMIO is not set +CONFIG_USB_OHCI_HCD=m +CONFIG_USB_PWC=m +# CONFIG_USB_PWC_DEBUG is not set +# CONFIG_USB_R8A66597_HCD is not set +# CONFIG_USB_SERIAL_CH341 is not set +# CONFIG_USB_SERIAL_OTI6858 is not set +# CONFIG_USB_UHCI_HCD is not set +CONFIG_V4L_USB_DRIVERS=y +# CONFIG_VGASTATE is not set +# CONFIG_VIA_RHINE is not set +CONFIG_VIDEO_CAPTURE_DRIVERS=y +CONFIG_VIDEO_CPIA2=m +CONFIG_VIDEO_V4L1=y +CONFIG_VIDEO_V4L2_COMMON=m +# CONFIG_VIRTIO_BALLOON is not set +# CONFIG_VIRTIO_PCI is not set +CONFIG_VIRTUALIZATION=y +# CONFIG_VM86 is not set +# CONFIG_VMSPLIT_1G is not set +# CONFIG_VMSPLIT_2G is not set +# CONFIG_VMSPLIT_2G_OPT is not set +CONFIG_VMSPLIT_3G=y +# CONFIG_VMSPLIT_3G_OPT is not set +CONFIG_VM_EVENT_COUNTERS=y +# CONFIG_WAFER_WDT is not set +CONFIG_X86=y +CONFIG_X86_32=y +# CONFIG_X86_64 is not set +CONFIG_X86_ALIGNMENT_16=y +# CONFIG_X86_BIGSMP is not set +CONFIG_X86_BIOS_REBOOT=y +CONFIG_X86_BSWAP=y +CONFIG_X86_CMPXCHG=y +CONFIG_X86_CPUID=y +# CONFIG_X86_ELAN is not set +# CONFIG_X86_ES7000 is not set +CONFIG_X86_F00F_BUG=y +# CONFIG_X86_GENERIC is not set +# CONFIG_X86_GENERICARCH is not set +CONFIG_X86_INVLPG=y +CONFIG_X86_L1_CACHE_SHIFT=4 +# CONFIG_X86_MCE is not set +CONFIG_X86_MINIMUM_CPU_FAMILY=4 +CONFIG_X86_MSR=y +# CONFIG_X86_NUMAQ is not set +# CONFIG_X86_PAE is not set +# CONFIG_X86_PC is not set +CONFIG_X86_POPAD_OK=y +# CONFIG_X86_PPRO_FENCE is not set +CONFIG_X86_RDC321X=y +CONFIG_X86_REBOOTFIXUPS=y +# CONFIG_X86_SUMMIT is not set +# CONFIG_X86_UP_APIC is not set +# CONFIG_X86_VISWS is not set +# CONFIG_X86_VOYAGER is not set +# CONFIG_X86_VSMP is not set +CONFIG_X86_WP_WORKS_OK=y +CONFIG_X86_XADD=y +# CONFIG_ZONE_DMA32 is not set diff --git a/target/linux/rdc/files/arch/x86/kernel/cpu/rdc.c b/target/linux/rdc/files/arch/x86/kernel/cpu/rdc.c deleted file mode 100644 index f4b9083bfc..0000000000 --- a/target/linux/rdc/files/arch/x86/kernel/cpu/rdc.c +++ /dev/null @@ -1,24 +0,0 @@ -#include -#include -#include -#include -#include - -#include "cpu.h" - -static struct cpu_dev rdc_cpu_dev __cpuinitdata = { - .c_vendor = "RDC", - .c_models = { - { .vendor = X86_VENDOR_RDC, .family = 4, .model_names = - { - [0] = "R861x(-G)", - } - }, - }, -}; - -int __init rdc_init_cpu(void) -{ - cpu_devs[X86_VENDOR_RDC] = &rdc_cpu_dev; - return 0; -} diff --git a/target/linux/rdc/files/arch/x86/mach-rdc/Makefile b/target/linux/rdc/files/arch/x86/mach-rdc/Makefile deleted file mode 100644 index 5961bc7910..0000000000 --- a/target/linux/rdc/files/arch/x86/mach-rdc/Makefile +++ /dev/null @@ -1,5 +0,0 @@ -# -# Makefile for the RDC321x specific parts of the kernel -# -obj-$(CONFIG_X86_RDC) := gpio.o platform.o wdt.o - diff --git a/target/linux/rdc/files/arch/x86/mach-rdc/gpio.c b/target/linux/rdc/files/arch/x86/mach-rdc/gpio.c deleted file mode 100644 index dbd03270f1..0000000000 --- a/target/linux/rdc/files/arch/x86/mach-rdc/gpio.c +++ /dev/null @@ -1,91 +0,0 @@ -/* - * Copyright (C) 2007, OpenWrt.org, Florian Fainelli - * RDC321x architecture specific GPIO support - * - * 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. - */ - -#include -#include -#include -#include -#include -#include - -#include - -static inline int rdc_gpio_is_valid(unsigned gpio) -{ - return (gpio <= RDC_MAX_GPIO); -} - -static unsigned int rdc_gpio_read(unsigned gpio) -{ - unsigned int val; - - val = 0x80000000 | (7 << 11) | ((gpio&0x20?0x84:0x48)); - outl(val, RDC3210_CFGREG_ADDR); - udelay(10); - val = inl(RDC3210_CFGREG_DATA); - val |= (0x1 << (gpio & 0x1F)); - outl(val, RDC3210_CFGREG_DATA); - udelay(10); - val = 0x80000000 | (7 << 11) | ((gpio&0x20?0x88:0x4C)); - outl(val, RDC3210_CFGREG_ADDR); - udelay(10); - val = inl(RDC3210_CFGREG_DATA); - - return val; -} - -static void rdc_gpio_write(unsigned int val) -{ - if (val) { - outl(val, RDC3210_CFGREG_DATA); - udelay(10); - } -} - -int rdc_gpio_get_value(unsigned gpio) -{ - if (rdc_gpio_is_valid(gpio)) - return (int)rdc_gpio_read(gpio); - else - return -EINVAL; -} -EXPORT_SYMBOL(rdc_gpio_get_value); - -void rdc_gpio_set_value(unsigned gpio, int value) -{ - unsigned int val; - - if (!rdc_gpio_is_valid(gpio)) - return; - - val = rdc_gpio_read(gpio); - - if (value) - val &= ~(0x1 << (gpio & 0x1F)); - else - val |= (0x1 << (gpio & 0x1F)); - - rdc_gpio_write(val); -} -EXPORT_SYMBOL(rdc_gpio_set_value); - -int rdc_gpio_direction_input(unsigned gpio) -{ - return 0; -} -EXPORT_SYMBOL(rdc_gpio_direction_input); - -int rdc_gpio_direction_output(unsigned gpio, int value) -{ - return 0; -} -EXPORT_SYMBOL(rdc_gpio_direction_output); - - diff --git a/target/linux/rdc/files/arch/x86/mach-rdc/platform.c b/target/linux/rdc/files/arch/x86/mach-rdc/platform.c deleted file mode 100644 index 31af6fcc30..0000000000 --- a/target/linux/rdc/files/arch/x86/mach-rdc/platform.c +++ /dev/null @@ -1,114 +0,0 @@ -/* - * $Id: platform.c 8331 2007-08-03 15:59:23Z florian $ - * - * Generic RDC321x platform devices - * - * Copyright (C) 2007 OpenWrt.org - * Copyright (C) 2007 Florian Fainelli - * - * 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., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301, USA. - * - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include - -/* Flash */ -static struct resource rdc_flash_resource[] = { - [0] = { - .start = (u32)-CONFIG_MTD_RDC3210_SIZE, - .end = (u32)-1, - .flags = IORESOURCE_MEM, - }, -}; - -static struct platform_device rdc_flash_device = { - .name = "rdc321x-flash", - .id = -1, - .num_resources = ARRAY_SIZE(rdc_flash_resource), - .resource = rdc_flash_resource, -}; - -/* LEDS */ -static struct gpio_led default_leds[] = { - { .name = "rdc321x:dmz", .gpio = 1, }, -}; - -static struct gpio_led_platform_data rdc321x_led_data = { - .num_leds = ARRAY_SIZE(default_leds), - .leds = default_leds, -}; - -static struct platform_device rdc321x_leds = { - .name = "leds-gpio", - .id = -1, - .dev = { - .platform_data = &rdc321x_led_data, - } -}; - -/* Watchdog */ -static struct platform_device rdc321x_wdt = { - .name = "rdc321x-wdt", - .id = -1, - .num_resources = 0, -}; - -/* Button */ -static struct gpio_keys_button rdc321x_gpio_btn[] = { - { - .gpio = 0, - .code = BTN_0, - .desc = "Reset", - .active_low = 1, - } -}; - -static struct gpio_keys_platform_data rdc321x_gpio_btn_data = { - .buttons = rdc321x_gpio_btn, - .nbuttons = ARRAY_SIZE(rdc321x_gpio_btn), -}; - -static struct platform_device rdc321x_button = { - .name = "gpio-keys", - .id = -1, - .dev = { - .platform_data = &rdc321x_gpio_btn_data, - } -}; - -static struct platform_device *rdc321x_devs[] = { - &rdc_flash_device, - &rdc321x_leds, - &rdc321x_wdt, - &rdc321x_button -}; - -static int __init rdc_board_setup(void) -{ - return platform_add_devices(rdc321x_devs, ARRAY_SIZE(rdc321x_devs)); -} - -arch_initcall(rdc_board_setup); diff --git a/target/linux/rdc/files/arch/x86/mach-rdc/setup.c b/target/linux/rdc/files/arch/x86/mach-rdc/setup.c deleted file mode 100644 index ad206c3d05..0000000000 --- a/target/linux/rdc/files/arch/x86/mach-rdc/setup.c +++ /dev/null @@ -1,14 +0,0 @@ -/* - * Machine specific setup for generic - */ - -#include -#include -#include -#include -#include - -char * __init machine_specific_memory_setup(void) -{ - return "RDC R-321x"; -} diff --git a/target/linux/rdc/files/arch/x86/mach-rdc/wdt.c b/target/linux/rdc/files/arch/x86/mach-rdc/wdt.c deleted file mode 100644 index 13b69f68ab..0000000000 --- a/target/linux/rdc/files/arch/x86/mach-rdc/wdt.c +++ /dev/null @@ -1,272 +0,0 @@ -/* - * RDC321x watchdog driver - * - * Copyright (C) 2007 Florian Fainelli - * - * This driver is highly inspired from the cpu5_wdt driver - * - * 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., 675 Mass Ave, Cambridge, MA 02139, USA. - * - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include -#include - -#include - -#define RDC_WDT_MASK 0x80000000 /* Mask */ -#define RDC_WDT_EN 0x00800000 /* Enable bit */ -#define RDC_WDT_WTI 0x00200000 /* Generate a CPU reset/NMI/WDT irq when WDT timeout is reached */ -#define RDC_WDT_RST 0x00100000 /* Reset bit */ -#define RDC_WDT_WIF 0x00040000 /* WDT IRQ Flag */ -#define RDC_WDT_IRT 0x00000100 /* IRQ Routing table */ -#define RDC_WDT_CNT 0x00000001 /* WDT count */ - -#define RDC_CLS_TMR 0x80003844 /* Clear timer */ - -#define RDC_WDT_INTERVAL (HZ/10+1) - -int nowayout = WATCHDOG_NOWAYOUT; -module_param(nowayout, int, 0); -MODULE_PARM_DESC(nowayout, "Watchdog cannot be stopped once started (default=" __MODULE_STRING(WATCHDOG_NOWAYOUT) ")"); - -static int ticks = 1000; - -/* some device data */ - -static struct { - struct completion stop; - volatile int running; - struct timer_list timer; - volatile int queue; - int default_ticks; - unsigned long inuse; -} rdc321x_wdt_device; - -/* generic helper functions */ - -static void rdc321x_wdt_trigger(unsigned long unused) -{ - if( rdc321x_wdt_device.running ) - ticks--; - - /* keep watchdog alive */ - outl(RDC_WDT_EN|inl(RDC3210_CFGREG_DATA), RDC3210_CFGREG_DATA); - - /* requeue?? */ - if (rdc321x_wdt_device.queue && ticks) - mod_timer(&rdc321x_wdt_device.timer, jiffies + RDC_WDT_INTERVAL); - else { - /* ticks doesn't matter anyway */ - complete(&rdc321x_wdt_device.stop); - } - -} - -static void rdc321x_wdt_reset(void) -{ - ticks = rdc321x_wdt_device.default_ticks; -} - -static void rdc321x_wdt_start(void) -{ - if (!rdc321x_wdt_device.queue) { - rdc321x_wdt_device.queue = 1; - - /* Clear the timer */ - outl(RDC_CLS_TMR, RDC3210_CFGREG_ADDR); - - /* Enable watchdog and set the timeout to 81.92 us */ - outl(RDC_WDT_EN|RDC_WDT_CNT, RDC3210_CFGREG_DATA); - - mod_timer(&rdc321x_wdt_device.timer, jiffies + RDC_WDT_INTERVAL); - } - - /* if process dies, counter is not decremented */ - rdc321x_wdt_device.running++; -} - -static int rdc321x_wdt_stop(void) -{ - if (rdc321x_wdt_device.running) - rdc321x_wdt_device.running = 0; - - ticks = rdc321x_wdt_device.default_ticks; - - return -EIO; -} - -/* filesystem operations */ - -static int rdc321x_wdt_open(struct inode *inode, struct file *file) -{ - if (test_and_set_bit(0, &rdc321x_wdt_device.inuse)) - return -EBUSY; - - return nonseekable_open(inode, file); -} - -static int rdc321x_wdt_release(struct inode *inode, struct file *file) -{ - clear_bit(0, &rdc321x_wdt_device.inuse); - return 0; -} - -static int rdc321x_wdt_ioctl(struct inode *inode, struct file *file, unsigned int cmd, unsigned long arg) -{ - void __user *argp = (void __user *)arg; - unsigned int value; - static struct watchdog_info ident = - { - .options = WDIOF_CARDRESET, - .identity = "RDC321x WDT", - }; - - switch(cmd) { - case WDIOC_KEEPALIVE: - rdc321x_wdt_reset(); - break; - case WDIOC_GETSTATUS: - /* Read the value from the DATA register */ - value = inl(RDC3210_CFGREG_DATA); - if ( copy_to_user(argp, &value, sizeof(int)) ) - return -EFAULT; - break; - case WDIOC_GETSUPPORT: - if ( copy_to_user(argp, &ident, sizeof(ident)) ) - return -EFAULT; - break; - case WDIOC_SETOPTIONS: - if ( copy_from_user(&value, argp, sizeof(int)) ) - return -EFAULT; - switch(value) { - case WDIOS_ENABLECARD: - rdc321x_wdt_start(); - break; - case WDIOS_DISABLECARD: - return rdc321x_wdt_stop(); - default: - return -EINVAL; - } - break; - default: - return -ENOTTY; - } - return 0; -} - -static ssize_t rdc321x_wdt_write(struct file *file, const char __user *buf, size_t count, loff_t *ppos) -{ - if ( !count ) - return -EIO; - - rdc321x_wdt_reset(); - - return count; -} - -static const struct file_operations rdc321x_wdt_fops = { - .owner = THIS_MODULE, - .llseek = no_llseek, - .ioctl = rdc321x_wdt_ioctl, - .open = rdc321x_wdt_open, - .write = rdc321x_wdt_write, - .release = rdc321x_wdt_release, -}; - -static struct miscdevice rdc321x_wdt_misc = { - .minor = WATCHDOG_MINOR, - .name = "watchdog", - .fops = &rdc321x_wdt_fops, -}; - -static int __devinit rdc321x_wdt_probe(struct platform_device *pdev) -{ - int err; - - if ( (err = misc_register(&rdc321x_wdt_misc)) < 0 ) { - printk(KERN_ERR PFX "misc_register failed\n"); - return err; - } - - /* Reset the watchdog */ - outl(RDC_WDT_RST, RDC3210_CFGREG_DATA); - - init_completion(&rdc321x_wdt_device.stop); - rdc321x_wdt_device.queue = 0; - - clear_bit(0, &rdc321x_wdt_device.inuse); - - setup_timer(&rdc321x_wdt_device.timer, rdc321x_wdt_trigger, 0); - - rdc321x_wdt_device.default_ticks = ticks; - - printk(KERN_INFO PFX "init success\n"); - - return 0; -} - -static int rdc321x_wdt_remove(struct platform_device *pdev) -{ - if (rdc321x_wdt_device.queue) { - rdc321x_wdt_device.queue = 0; - wait_for_completion(&rdc321x_wdt_device.stop); - } - - misc_deregister(&rdc321x_wdt_misc); - - return 0; -} - -static struct platform_driver rdc321x_wdt_driver = { - .probe = rdc321x_wdt_probe, - .remove = rdc321x_wdt_remove, - .driver = { - .owner = THIS_MODULE, - .name = "rdc321x-wdt", - }, -}; - -static int __init rdc321x_wdt_init(void) -{ - return platform_driver_register(&rdc321x_wdt_driver); -} - -static void __exit rdc321x_wdt_exit(void) -{ - platform_driver_unregister(&rdc321x_wdt_driver); -} - -module_init(rdc321x_wdt_init); -module_exit(rdc321x_wdt_exit); - -MODULE_AUTHOR("Florian Fainelli "); -MODULE_DESCRIPTION("RDC321x watchdog driver"); -MODULE_LICENSE("GPL"); -MODULE_ALIAS_MISCDEV(WATCHDOG_MINOR); diff --git a/target/linux/rdc/files/drivers/leds/leds-rdc3211.c b/target/linux/rdc/files/drivers/leds/leds-rdc3211.c deleted file mode 100644 index ae068af14f..0000000000 --- a/target/linux/rdc/files/drivers/leds/leds-rdc3211.c +++ /dev/null @@ -1,71 +0,0 @@ -/* - * LED driver for RDC3211 boards - * - * Copyright 2007 Florian Fainelli - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. - * - */ - -#include -#include -#include -#include -#include -#include - -#include - -static void rdc321x_led_set(struct led_classdev *led_cdev, enum led_brightness brightness) -{ - gpio_set_value(1, brightness ? 1 : 0); -} - -/* The DMZ led is at GPIO line 1 */ -static struct led_classdev rdc321x_dmz_led = { - .name = "rdc321x:dmz", - .brightness_set = rdc321x_led_set, -}; - -static int rdc321x_leds_probe(struct platform_device *pdev) -{ - return led_classdev_register(&pdev->dev, &rdc321x_dmz_led); -} - -static int rdc321x_leds_remove(struct platform_device *pdev) -{ - led_classdev_unregister(&rdc321x_dmz_led); - return 0; -} - -static struct platform_driver rdc321x_leds_driver = { - .probe = rdc321x_leds_probe, - .remove = rdc321x_leds_remove, - .driver = { - .name = "rdc321x-leds", - .owner = THIS_MODULE, - } -}; - -static int __init rdc321x_leds_init(void) -{ - int ret; - - ret = platform_driver_register(&rdc321x_leds_driver); - - return ret; -} - -static void __exit rdc321x_leds_exit(void) -{ - platform_driver_unregister(&rdc321x_leds_driver); -} - -module_init(rdc321x_leds_init); -module_exit(rdc321x_leds_exit); - -MODULE_AUTHOR("Florian Fainelli "); -MODULE_DESCRIPTION("RDC321x LED driver"); -MODULE_LICENSE("GPL"); diff --git a/target/linux/rdc/files/include/asm-x86/gpio.h b/target/linux/rdc/files/include/asm-x86/gpio.h deleted file mode 100644 index ff87fca0ca..0000000000 --- a/target/linux/rdc/files/include/asm-x86/gpio.h +++ /dev/null @@ -1,6 +0,0 @@ -#ifndef _ASM_I386_GPIO_H -#define _ASM_I386_GPIO_H - -#include - -#endif /* _ASM_I386_GPIO_H */ diff --git a/target/linux/rdc/files/include/asm-x86/mach-generic/gpio.h b/target/linux/rdc/files/include/asm-x86/mach-generic/gpio.h deleted file mode 100644 index 5305dcb96d..0000000000 --- a/target/linux/rdc/files/include/asm-x86/mach-generic/gpio.h +++ /dev/null @@ -1,15 +0,0 @@ -#ifndef __ASM_MACH_GENERIC_GPIO_H -#define __ASM_MACH_GENERIC_GPIO_H - -int gpio_request(unsigned gpio, const char *label); -void gpio_free(unsigned gpio); -int gpio_direction_input(unsigned gpio); -int gpio_direction_output(unsigned gpio, int value); -int gpio_get_value(unsigned gpio); -void gpio_set_value(unsigned gpio, int value); -int gpio_to_irq(unsigned gpio); -int irq_to_gpio(unsigned irq); - -#include /* cansleep wrappers */ - -#endif /* __ASM_MACH_GENERIC_GPIO_H */ diff --git a/target/linux/rdc/files/include/asm-x86/mach-rdc/gpio.h b/target/linux/rdc/files/include/asm-x86/mach-rdc/gpio.h deleted file mode 100644 index 2368bd7583..0000000000 --- a/target/linux/rdc/files/include/asm-x86/mach-rdc/gpio.h +++ /dev/null @@ -1,56 +0,0 @@ -#ifndef _RDC_GPIO_H -#define _RDC_GPIO_H - -extern int rdc_gpio_get_value(unsigned gpio); -extern void rdc_gpio_set_value(unsigned gpio, int value); -extern int rdc_gpio_direction_input(unsigned gpio); -extern int rdc_gpio_direction_output(unsigned gpio, int value); - - -/* Wrappers for the arch-neutral GPIO API */ - -static inline int gpio_request(unsigned gpio, const char *label) -{ - /* Not yet implemented */ - return 0; -} - -static inline void gpio_free(unsigned gpio) -{ - /* Not yet implemented */ -} - -static inline int gpio_direction_input(unsigned gpio) -{ - return rdc_gpio_direction_input(gpio); -} - -static inline int gpio_direction_output(unsigned gpio, int value) -{ - return rdc_gpio_direction_output(gpio, value); -} - -static inline int gpio_get_value(unsigned gpio) -{ - return rdc_gpio_get_value(gpio); -} - -static inline void gpio_set_value(unsigned gpio, int value) -{ - rdc_gpio_set_value(gpio, value); -} - -static inline int gpio_to_irq(unsigned gpio) -{ - return gpio; -} - -static inline int irq_to_gpio(unsigned irq) -{ - return irq; -} - -/* For cansleep */ -#include - -#endif /* _RDC_GPIO_H_ */ diff --git a/target/linux/rdc/files/include/asm-x86/mach-rdc/rdc321x_defs.h b/target/linux/rdc/files/include/asm-x86/mach-rdc/rdc321x_defs.h deleted file mode 100644 index 838ba8f64f..0000000000 --- a/target/linux/rdc/files/include/asm-x86/mach-rdc/rdc321x_defs.h +++ /dev/null @@ -1,6 +0,0 @@ -#define PFX "rdc321x: " - -/* General purpose configuration and data registers */ -#define RDC3210_CFGREG_ADDR 0x0CF8 -#define RDC3210_CFGREG_DATA 0x0CFC -#define RDC_MAX_GPIO 0x3A diff --git a/target/linux/rdc/patches/001-x86_generic_gpio.patch b/target/linux/rdc/patches/001-x86_generic_gpio.patch deleted file mode 100644 index dff25a0cd9..0000000000 --- a/target/linux/rdc/patches/001-x86_generic_gpio.patch +++ /dev/null @@ -1,15 +0,0 @@ -Index: linux-2.6.24.7/arch/x86/Kconfig -=================================================================== ---- linux-2.6.24.7.orig/arch/x86/Kconfig -+++ linux-2.6.24.7/arch/x86/Kconfig -@@ -81,6 +81,10 @@ config GENERIC_BUG - default y - depends on BUG - -+config GENERIC_GPIO -+ bool -+ default n -+ - config GENERIC_HWEIGHT - bool - default y diff --git a/target/linux/rdc/patches/002-r6040_ethernet.patch b/target/linux/rdc/patches/002-r6040_ethernet.patch deleted file mode 100644 index fa484bf9e8..0000000000 --- a/target/linux/rdc/patches/002-r6040_ethernet.patch +++ /dev/null @@ -1,41 +0,0 @@ -Index: linux-2.6.24.7/drivers/net/Kconfig -=================================================================== ---- linux-2.6.24.7.orig/drivers/net/Kconfig -+++ linux-2.6.24.7/drivers/net/Kconfig -@@ -1449,6 +1449,24 @@ config APRICOT - To compile this driver as a module, choose M here. The module - will be called apricot. - -+config R6040 -+ tristate "RDC Fast-Ethernet support (EXPERIMENTAL)" -+ depends on NET_PCI && EXPERIMENTAL -+ select MII -+ help -+ If you have a network (Ethernet) controller of this type, say Y and -+ read the Ethernet-HOWTO, available from -+ . -+ -+ To compile this driver as a module, choose M here and read -+ . The module will be -+ called r6040. -+ -+ -+config R6040_NAPI -+ bool "NAPI support for R6040" -+ depends on R6040 -+ default y - config B44 - tristate "Broadcom 440x/47xx ethernet support" - depends on SSB_POSSIBLE -Index: linux-2.6.24.7/drivers/net/Makefile -=================================================================== ---- linux-2.6.24.7.orig/drivers/net/Makefile -+++ linux-2.6.24.7/drivers/net/Makefile -@@ -116,6 +116,7 @@ obj-$(CONFIG_LNE390) += lne390.o 8390.o - obj-$(CONFIG_NE3210) += ne3210.o 8390.o - obj-$(CONFIG_SB1250_MAC) += sb1250-mac.o - obj-$(CONFIG_B44) += b44.o -+obj-$(CONFIG_R6040) += r6040.o - obj-$(CONFIG_FORCEDETH) += forcedeth.o - obj-$(CONFIG_NE_H8300) += ne-h8300.o - obj-$(CONFIG_AX88796) += ax88796.o diff --git a/target/linux/rdc/patches/004-rdc_fixes.patch b/target/linux/rdc/patches/004-rdc_fixes.patch deleted file mode 100644 index ce5fbfda13..0000000000 --- a/target/linux/rdc/patches/004-rdc_fixes.patch +++ /dev/null @@ -1,81 +0,0 @@ -Index: linux-2.6.24.7/arch/x86/Kconfig -=================================================================== ---- linux-2.6.24.7.orig/arch/x86/Kconfig -+++ linux-2.6.24.7/arch/x86/Kconfig -@@ -304,6 +304,17 @@ config X86_VSMP - supposed to run on these EM64T-based machines. Only choose this option - if you have one of these machines. - -+config X86_RDC -+ bool "Support for RDC 3211 boards" -+ select GENERIC_GPIO -+ select LEDS_GPIO -+ select LEDS_CLASS -+ help -+ Support for RDC 3211 systems. Say 'Y' here if the kernel is -+ supposed to run on an IA-32 RDC R3211 system. -+ Only choose this option if you have such as system, otherwise you -+ should say N here. -+ - endchoice - - config SCHED_NO_NO_OMIT_FRAME_POINTER -Index: linux-2.6.24.7/arch/x86/kernel/reboot_fixups_32.c -=================================================================== ---- linux-2.6.24.7.orig/arch/x86/kernel/reboot_fixups_32.c -+++ linux-2.6.24.7/arch/x86/kernel/reboot_fixups_32.c -@@ -30,6 +30,17 @@ static void cs5536_warm_reset(struct pci - udelay(50); /* shouldn't get here but be safe and spin a while */ - } - -+static void r8610_reset(struct pci_dev *dev) -+{ -+ int i; -+ -+ outl(0x80003840,0xCF8); -+ i=inl(0xCFC); -+ i |= 0x1600; -+ outl(i,0xCFC); -+ outb(1,0x92); -+} -+ - struct device_fixup { - unsigned int vendor; - unsigned int device; -@@ -40,6 +51,7 @@ static struct device_fixup fixups_table[ - { PCI_VENDOR_ID_CYRIX, PCI_DEVICE_ID_CYRIX_5530_LEGACY, cs5530a_warm_reset }, - { PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_CS5536_ISA, cs5536_warm_reset }, - { PCI_VENDOR_ID_NS, PCI_DEVICE_ID_NS_SC1100_BRIDGE, cs5530a_warm_reset }, -+{ PCI_VENDOR_ID_RDC, PCI_DEVICE_ID_RDC_R6030, r8610_reset }, - }; - - /* -Index: linux-2.6.24.7/arch/x86/Makefile_32 -=================================================================== ---- linux-2.6.24.7.orig/arch/x86/Makefile_32 -+++ linux-2.6.24.7/arch/x86/Makefile_32 -@@ -99,6 +99,11 @@ mflags-$(CONFIG_X86_ES7000) := -Iinclude - mcore-$(CONFIG_X86_ES7000) := arch/x86/mach-default - core-$(CONFIG_X86_ES7000) := arch/x86/mach-es7000/ - -+# RDC subarch support -+mflags-$(CONFIG_X86_RDC) := -Iinclude/asm-x86/mach-rdc -+mcore-$(CONFIG_X86_RDC) := arch/x86/mach-default -+core-$(CONFIG_X86_RDC) += arch/x86/mach-rdc/ -+ - # Xen paravirtualization support - core-$(CONFIG_XEN) += arch/x86/xen/ - -Index: linux-2.6.24.7/include/asm-x86/timex.h -=================================================================== ---- linux-2.6.24.7.orig/include/asm-x86/timex.h -+++ linux-2.6.24.7/include/asm-x86/timex.h -@@ -7,6 +7,8 @@ - - #ifdef CONFIG_X86_ELAN - # define PIT_TICK_RATE 1189200 /* AMD Elan has different frequency! */ -+#elif defined(CONFIG_X86_RDC) -+# define PIT_TICK_RATE 1041667 /* Underlying HZ for R8610 */ - #else - # define PIT_TICK_RATE 1193182 /* Underlying HZ */ - #endif diff --git a/target/linux/rdc/patches/006-pci_ids.patch b/target/linux/rdc/patches/006-pci_ids.patch deleted file mode 100644 index dbc33c2cd8..0000000000 --- a/target/linux/rdc/patches/006-pci_ids.patch +++ /dev/null @@ -1,18 +0,0 @@ -Index: linux-2.6.24.7/include/linux/pci_ids.h -=================================================================== ---- linux-2.6.24.7.orig/include/linux/pci_ids.h -+++ linux-2.6.24.7/include/linux/pci_ids.h -@@ -2106,6 +2106,13 @@ - #define PCI_DEVICE_ID_HERC_WIN 0x5732 - #define PCI_DEVICE_ID_HERC_UNI 0x5832 - -+#define PCI_VENDOR_ID_RDC 0x17f3 -+#define PCI_DEVICE_ID_RDC_R6020 0x6020 -+#define PCI_DEVICE_ID_RDC_R6030 0x6030 -+#define PCI_DEVICE_ID_RDC_R6040 0x6040 -+#define PCI_DEVICE_ID_RDC_R6060 0x6060 -+#define PCI_DEVICE_ID_RDC_R6061 0x6061 -+ - #define PCI_VENDOR_ID_SITECOM 0x182d - #define PCI_DEVICE_ID_SITECOM_DC105V2 0x3069 - diff --git a/target/linux/rdc/patches/600-x86_lzma.patch b/target/linux/rdc/patches/600-x86_lzma.patch index 3bef6fa1a0..269340d194 100644 --- a/target/linux/rdc/patches/600-x86_lzma.patch +++ b/target/linux/rdc/patches/600-x86_lzma.patch @@ -1004,31 +1004,28 @@ Index: linux-2.6.24.7/scripts/lzma_kern +printf -v len '%.8x' "$(get-size $(ls -l "$1"))" +lzma e "$@" +echo -ne "\x$(echo $len | cut -c 7,8)\x$(echo $len | cut -c 5,6)\x$(echo $len | cut -c 3,4)\x$(echo $len | cut -c 1,2)" >> "$2" -Index: linux-2.6.24.7/arch/x86/boot/compressed/Makefile_32 -=================================================================== ---- linux-2.6.24.7.orig/arch/x86/boot/compressed/Makefile_32 -+++ linux-2.6.24.7/arch/x86/boot/compressed/Makefile_32 -@@ -4,8 +4,8 @@ +diff -urN linux-2.6.25.4/arch/x86/boot/compressed/Makefile linux-2.6.25.4.new/arch/x86/boot/compressed/Makefile +--- linux-2.6.25.4/arch/x86/boot/compressed/Makefile 2008-05-15 17:00:12.000000000 +0200 ++++ linux-2.6.25.4.new/arch/x86/boot/compressed/Makefile 2008-06-11 14:42:09.000000000 +0200 +@@ -4,7 +4,7 @@ # create a compressed vmlinux image from the original vmlinux # --targets := vmlinux vmlinux.bin vmlinux.bin.gz head_32.o misc_32.o piggy.o \ -- vmlinux.bin.all vmlinux.relocs -+targets := vmlinux vmlinux.bin vmlinux.bin.lzma head_32.o piggy.o \ -+ vmlinux.bin.all vmlinux.relocs lzma_misc.o - EXTRA_AFLAGS := -traditional +-targets := vmlinux vmlinux.bin vmlinux.bin.gz head_$(BITS).o misc.o piggy.o ++targets := vmlinux vmlinux.bin vmlinux.bin.lzma head_$(BITS).o lzma_misc.o piggy.o + KBUILD_CFLAGS := -m$(BITS) -D__KERNEL__ $(LINUX_INCLUDE) -O2 + KBUILD_CFLAGS += -fno-strict-aliasing -fPIC +@@ -18,7 +18,7 @@ + LDFLAGS := -m elf_$(UTS_MACHINE) LDFLAGS_vmlinux := -T -@@ -17,7 +17,7 @@ KBUILD_CFLAGS := -m32 -D__KERNEL__ $(LI - $(call cc-option,-fno-stack-protector) - LDFLAGS := -m elf_i386 --$(obj)/vmlinux: $(src)/vmlinux_32.lds $(obj)/head_32.o $(obj)/misc_32.o $(obj)/piggy.o FORCE -+$(obj)/vmlinux: $(src)/vmlinux_32.lds $(obj)/head_32.o $(obj)/lzma_misc.o $(obj)/piggy.o FORCE +-$(obj)/vmlinux: $(src)/vmlinux_$(BITS).lds $(obj)/head_$(BITS).o $(obj)/misc.o $(obj)/piggy.o FORCE ++$(obj)/vmlinux: $(src)/vmlinux_$(BITS).lds $(obj)/head_$(BITS).o $(obj)/lzma_misc.o $(obj)/piggy.o FORCE $(call if_changed,ld) @: -@@ -37,14 +37,14 @@ $(obj)/vmlinux.bin.all: $(vmlinux.bin.al +@@ -44,11 +44,11 @@ $(call if_changed,relocbin) ifdef CONFIG_RELOCATABLE @@ -1042,9 +1039,12 @@ Index: linux-2.6.24.7/arch/x86/boot/compressed/Makefile_32 +$(obj)/vmlinux.bin.lzma: $(obj)/vmlinux.bin FORCE + $(call if_changed,lzma) endif - LDFLAGS_piggy.o := -r --format binary --oformat elf32-i386 -T --$(obj)/piggy.o: $(src)/vmlinux_32.scr $(obj)/vmlinux.bin.gz FORCE -+$(obj)/piggy.o: $(src)/vmlinux_32.scr $(obj)/vmlinux.bin.lzma FORCE +@@ -60,5 +60,5 @@ + endif + + +-$(obj)/piggy.o: $(obj)/vmlinux.scr $(obj)/vmlinux.bin.gz FORCE ++$(obj)/piggy.o: $(obj)/vmlinux.scr $(obj)/vmlinux.bin.lzma FORCE $(call if_changed,ld)