etrax: dump to 2.6.29
authorclaudio <claudio@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Sun, 19 Apr 2009 15:36:30 +0000 (15:36 +0000)
committerclaudio <claudio@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Sun, 19 Apr 2009 15:36:30 +0000 (15:36 +0000)
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@15260 3c298f89-4303-0410-b956-a3cf2f4a3e73

12 files changed:
target/linux/etrax/Makefile
target/linux/etrax/config-2.6.25
target/linux/etrax/config-2.6.29 [moved from target/linux/etrax/config-2.6.28 with 51% similarity]
target/linux/etrax/image/Makefile
target/linux/etrax/patches-2.6.28/600-fix_serial_cris.patch [deleted file]
target/linux/etrax/patches-2.6.29/100-cris-makefiles.patch [moved from target/linux/etrax/patches-2.6.28/100-cris-makefiles.patch with 100% similarity]
target/linux/etrax/patches-2.6.29/200-samsung_flash.patch [moved from target/linux/etrax/patches-2.6.28/200-samsung_flash.patch with 100% similarity]
target/linux/etrax/patches-2.6.29/201-flashsize.patch [moved from target/linux/etrax/patches-2.6.28/201-flashsize.patch with 100% similarity]
target/linux/etrax/patches-2.6.29/300-sysfs.patch [moved from target/linux/etrax/patches-2.6.28/300-sysfs.patch with 100% similarity]
target/linux/etrax/patches-2.6.29/400-Kconfig_source.patch [moved from target/linux/etrax/patches-2.6.28/400-Kconfig_source.patch with 100% similarity]
target/linux/etrax/patches-2.6.29/500-i2c_gvc.patch [moved from target/linux/etrax/patches-2.6.28/500-i2c_gvc.patch with 100% similarity]
target/linux/etrax/patches-2.6.29/600-fix_serial_cris.patch [new file with mode: 0644]

index fbb3ae41fb6de805026b2423ff73ad79adc035d6..40f04fa2e3c1e8554f7b00c6f03ade3abe1e9e96 100644 (file)
@@ -1,5 +1,5 @@
 # 
-# Copyright (C) 2006 OpenWrt.org
+# Copyright (C) 2006-2009 OpenWrt.org
 #
 # This is free software, licensed under the GNU General Public License v2.
 # See /LICENSE for more information.
@@ -10,7 +10,7 @@ ARCH:=cris
 BOARD:=etrax
 BOARDNAME:=Foxboard (ETRAX 100LX)
 FEATURES:=squashfs jffs2
-LINUX_VERSION:=2.6.25.20
+LINUX_VERSION:=2.6.29.1
 
 include $(INCLUDE_DIR)/target.mk
 
index 9027479d6080531fcc579908ca0657a1a2a9edbb..e56a9cfc2a6aeb8b339102ce011356ade402f658 100644 (file)
@@ -2,42 +2,12 @@
 # CONFIG_ARCH_HAS_ILOG2_U64 is not set
 CONFIG_BASE_SMALL=0
 CONFIG_BITREVERSE=y
-# CONFIG_BLK_DEV_LOOP is not set
-# CONFIG_BLK_DEV_NBD is not set
 CONFIG_BLK_DEV_SD=y
-# CONFIG_BONDING is not set
 CONFIG_BOUNCE=y
 # CONFIG_BRIDGE is not set
-# CONFIG_BT is not set
-# CONFIG_CIFS is not set
 CONFIG_CLASSIC_RCU=y
 CONFIG_CRIS=y
 # CONFIG_CRIS_MACH_ARTPEC3 is not set
-# CONFIG_CRYPTO_AEAD is not set
-# CONFIG_CRYPTO_ANUBIS is not set
-# CONFIG_CRYPTO_AUTHENC is not set
-# CONFIG_CRYPTO_BLOWFISH is not set
-# CONFIG_CRYPTO_CAMELLIA is not set
-# CONFIG_CRYPTO_CAST5 is not set
-# CONFIG_CRYPTO_CAST6 is not set
-# CONFIG_CRYPTO_CCM is not set
-# CONFIG_CRYPTO_CRC32C is not set
-# CONFIG_CRYPTO_CTR is not set
-# CONFIG_CRYPTO_GCM is not set
-# CONFIG_CRYPTO_KHAZAD is not set
-# CONFIG_CRYPTO_LZO is not set
-# CONFIG_CRYPTO_MD4 is not set
-# CONFIG_CRYPTO_NULL is not set
-# CONFIG_CRYPTO_SALSA20 is not set
-# CONFIG_CRYPTO_SEQIV is not set
-# CONFIG_CRYPTO_SERPENT is not set
-# CONFIG_CRYPTO_SHA256 is not set
-# CONFIG_CRYPTO_SHA512 is not set
-# CONFIG_CRYPTO_TEA is not set
-# CONFIG_CRYPTO_TEST is not set
-# CONFIG_CRYPTO_TGR192 is not set
-# CONFIG_CRYPTO_TWOFISH is not set
-# CONFIG_CRYPTO_WP512 is not set
 # CONFIG_ETRAX100LX is not set
 CONFIG_ETRAX100LX_V2=y
 # CONFIG_ETRAXFS is not set
@@ -68,6 +38,7 @@ CONFIG_ETRAX_FLASH1_SIZE=0
 CONFIG_ETRAX_FLASH_BUSWIDTH=2
 CONFIG_ETRAX_GPIO=y
 # CONFIG_ETRAX_I2C is not set
+# CONFIG_ETRAX_I2C_GVC is not set
 # CONFIG_ETRAX_KMALLOCED_MODULES is not set
 CONFIG_ETRAX_LED1G=2
 CONFIG_ETRAX_LED1R=2
@@ -165,7 +136,6 @@ CONFIG_ETRAX_USB_HOST_PORT2=y
 # CONFIG_ETRAX_VCS_SIM is not set
 # CONFIG_ETRAX_WATCHDOG is not set
 CONFIG_EXT2_FS=y
-# CONFIG_EXT3_FS is not set
 CONFIG_FORCE_MAX_ZONEORDER=6
 CONFIG_GENERIC_FIND_NEXT_BIT=y
 CONFIG_GENERIC_IOMAP=y
@@ -177,8 +147,6 @@ CONFIG_HAVE_IDE=y
 # CONFIG_HAVE_KPROBES is not set
 # CONFIG_HAVE_KRETPROBES is not set
 # CONFIG_HAVE_OPROFILE is not set
-# CONFIG_HFSPLUS_FS is not set
-# CONFIG_HFS_FS is not set
 # CONFIG_HW_RANDOM is not set
 # CONFIG_I2C is not set
 # CONFIG_IBM_NEW_EMAC_EMAC4 is not set
@@ -186,14 +154,7 @@ CONFIG_HAVE_IDE=y
 # CONFIG_IBM_NEW_EMAC_TAH is not set
 # CONFIG_IBM_NEW_EMAC_ZMII is not set
 # CONFIG_IDE is not set
-# CONFIG_IEEE80211 is not set
-# CONFIG_IFB is not set
-# CONFIG_IMQ is not set
 CONFIG_INITRAMFS_SOURCE=""
-# CONFIG_ISO9660_FS is not set
-# CONFIG_LLC is not set
-# CONFIG_MINIX_FS is not set
-# CONFIG_MSDOS_FS is not set
 CONFIG_MTD=y
 CONFIG_MTDRAM_ABS_POS=0x0
 CONFIG_MTDRAM_ERASE_SIZE=128
@@ -244,19 +205,16 @@ CONFIG_MTD_PARTITIONS=y
 # CONFIG_MTD_ROM is not set
 # CONFIG_MTD_SLRAM is not set
 # CONFIG_NETDEV_1000 is not set
-# CONFIG_NFSD is not set
-# CONFIG_NFS_FS is not set
 CONFIG_NLS=y
 CONFIG_NLS_CODEPAGE_437=y
 CONFIG_NLS_ISO8859_1=y
 CONFIG_NO_IOPORT=y
 # CONFIG_OOM_REBOOT is not set
-# CONFIG_PPP is not set
 # CONFIG_RTC is not set
 CONFIG_RWSEM_GENERIC_SPINLOCK=y
 CONFIG_SCSI=y
 # CONFIG_SCSI_LOWLEVEL_PCMCIA is not set
-# CONFIG_SCSI_WAIT_SCAN is not set
+CONFIG_SCSI_WAIT_SCAN=m
 # CONFIG_SERIAL_8250 is not set
 CONFIG_SLABINFO=y
 # CONFIG_SPARSEMEM_STATIC is not set
@@ -264,21 +222,12 @@ CONFIG_SLABINFO=y
 # CONFIG_SVINTO_SIM is not set
 # CONFIG_SYSTEM_PROFILER is not set
 CONFIG_SYSVIPC_SYSCTL=y
-# CONFIG_TUN is not set
-# CONFIG_UDF_FS is not set
 CONFIG_UID16=y
 CONFIG_USB=y
-# CONFIG_USB_ACM is not set
 # CONFIG_USB_ARCH_HAS_EHCI is not set
 # CONFIG_USB_ARCH_HAS_HCD is not set
 # CONFIG_USB_ARCH_HAS_OHCI is not set
-# CONFIG_USB_PRINTER is not set
-# CONFIG_USB_R8A66597_HCD is not set
-# CONFIG_USB_SERIAL is not set
 CONFIG_USB_STORAGE=y
 CONFIG_USB_SUPPORT=y
-# CONFIG_VFAT_FS is not set
-# CONFIG_VIDEO_V4L2_COMMON is not set
 # CONFIG_VLAN_8021Q is not set
 # CONFIG_WLAN_80211 is not set
-# CONFIG_XFS_FS is not set
similarity index 51%
rename from target/linux/etrax/config-2.6.28
rename to target/linux/etrax/config-2.6.29
index c9b464f9c29c0cfc15b06c7f7fbe52f91bf8678a..872a110d2b69f94b92435601ebe13f718c8c3ca3 100644 (file)
@@ -2,38 +2,17 @@
 # CONFIG_ARCH_HAS_ILOG2_U64 is not set
 CONFIG_BASE_SMALL=0
 CONFIG_BITREVERSE=y
-# CONFIG_BLK_DEV_LOOP is not set
-# CONFIG_BONDING is not set
+# CONFIG_BLK_DEV_INITRD is not set
 CONFIG_BOUNCE=y
 # CONFIG_BRIDGE is not set
-# CONFIG_BT is not set
-# CONFIG_CIFS is not set
-CONFIG_CLASSIC_RCU=y
+# CONFIG_CFG80211 is not set
+CONFIG_COMPAT_NET_DEV_OPS=y
 CONFIG_CRIS=y
 # CONFIG_CRIS_MACH_ARTPEC3 is not set
-# CONFIG_CRYPTO_AEAD2 is not set
-# CONFIG_CRYPTO_ALGAPI2 is not set
-# CONFIG_CRYPTO_ANUBIS is not set
-# CONFIG_CRYPTO_BLKCIPHER2 is not set
-# CONFIG_CRYPTO_BLOWFISH is not set
-# CONFIG_CRYPTO_CAMELLIA is not set
-# CONFIG_CRYPTO_CAST5 is not set
-# CONFIG_CRYPTO_CAST6 is not set
-# CONFIG_CRYPTO_CRC32C is not set
-# CONFIG_CRYPTO_HASH2 is not set
-# CONFIG_CRYPTO_KHAZAD is not set
-# CONFIG_CRYPTO_MANAGER2 is not set
-# CONFIG_CRYPTO_MD4 is not set
-# CONFIG_CRYPTO_NULL is not set
-# CONFIG_CRYPTO_RNG2 is not set
-# CONFIG_CRYPTO_SERPENT is not set
-# CONFIG_CRYPTO_SHA256 is not set
-# CONFIG_CRYPTO_SHA512 is not set
-# CONFIG_CRYPTO_TEA is not set
-# CONFIG_CRYPTO_TEST is not set
-# CONFIG_CRYPTO_TGR192 is not set
-# CONFIG_CRYPTO_TWOFISH is not set
-# CONFIG_CRYPTO_WP512 is not set
+# CONFIG_DCB is not set
+CONFIG_DEFAULT_VEGAS=y
+# CONFIG_DEFAULT_WESTWOOD is not set
+# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
 # CONFIG_ETRAX100LX is not set
 CONFIG_ETRAX100LX_V2=y
 # CONFIG_ETRAXFS is not set
@@ -64,6 +43,7 @@ CONFIG_ETRAX_FLASH1_SIZE=0
 CONFIG_ETRAX_FLASH_BUSWIDTH=2
 CONFIG_ETRAX_GPIO=y
 # CONFIG_ETRAX_I2C is not set
+# CONFIG_ETRAX_I2C_GVC is not set
 # CONFIG_ETRAX_KMALLOCED_MODULES is not set
 CONFIG_ETRAX_LED1G=2
 CONFIG_ETRAX_LED1R=2
@@ -87,72 +67,8 @@ CONFIG_ETRAX_RESCUE_SER0=y
 # CONFIG_ETRAX_RESCUE_SER1 is not set
 # CONFIG_ETRAX_RESCUE_SER2 is not set
 # CONFIG_ETRAX_RESCUE_SER3 is not set
-# CONFIG_ETRAX_RS485 is not set
 CONFIG_ETRAX_SDRAM=y
-CONFIG_ETRAX_SER0_CD_ON_PA_BIT=-1
-CONFIG_ETRAX_SER0_CD_ON_PB_BIT=-1
-CONFIG_ETRAX_SER0_DSR_ON_PA_BIT=-1
-CONFIG_ETRAX_SER0_DSR_ON_PB_BIT=-1
-CONFIG_ETRAX_SER0_DTR_ON_PA_BIT=-1
-CONFIG_ETRAX_SER0_DTR_ON_PB_BIT=-1
-# CONFIG_ETRAX_SER0_DTR_RI_DSR_CD_MIXED is not set
-CONFIG_ETRAX_SER0_DTR_RI_DSR_CD_ON_NONE=y
-# CONFIG_ETRAX_SER0_DTR_RI_DSR_CD_ON_PA is not set
-# CONFIG_ETRAX_SER0_DTR_RI_DSR_CD_ON_PB is not set
-CONFIG_ETRAX_SER0_RI_ON_PA_BIT=-1
-CONFIG_ETRAX_SER0_RI_ON_PB_BIT=-1
-CONFIG_ETRAX_SER2_CD_ON_PA_BIT=-1
-CONFIG_ETRAX_SER2_CD_ON_PB_BIT=-1
-CONFIG_ETRAX_SER2_DSR_ON_PA_BIT=-1
-CONFIG_ETRAX_SER2_DSR_ON_PB_BIT=-1
-CONFIG_ETRAX_SER2_DTR_ON_PA_BIT=-1
-CONFIG_ETRAX_SER2_DTR_ON_PB_BIT=-1
-# CONFIG_ETRAX_SER2_DTR_RI_DSR_CD_MIXED is not set
-CONFIG_ETRAX_SER2_DTR_RI_DSR_CD_ON_NONE=y
-# CONFIG_ETRAX_SER2_DTR_RI_DSR_CD_ON_PA is not set
-# CONFIG_ETRAX_SER2_DTR_RI_DSR_CD_ON_PB is not set
-CONFIG_ETRAX_SER2_RI_ON_PA_BIT=-1
-CONFIG_ETRAX_SER2_RI_ON_PB_BIT=-1
-CONFIG_ETRAX_SER3_CD_ON_PA_BIT=-1
-CONFIG_ETRAX_SER3_CD_ON_PB_BIT=-1
-CONFIG_ETRAX_SER3_DSR_ON_PA_BIT=-1
-CONFIG_ETRAX_SER3_DSR_ON_PB_BIT=-1
-CONFIG_ETRAX_SER3_DTR_ON_PA_BIT=-1
-CONFIG_ETRAX_SER3_DTR_ON_PB_BIT=-1
-# CONFIG_ETRAX_SER3_DTR_RI_DSR_CD_MIXED is not set
-CONFIG_ETRAX_SER3_DTR_RI_DSR_CD_ON_NONE=y
-# CONFIG_ETRAX_SER3_DTR_RI_DSR_CD_ON_PA is not set
-# CONFIG_ETRAX_SER3_DTR_RI_DSR_CD_ON_PB is not set
-CONFIG_ETRAX_SER3_RI_ON_PA_BIT=-1
-CONFIG_ETRAX_SER3_RI_ON_PB_BIT=-1
-CONFIG_ETRAX_SERIAL=y
-# CONFIG_ETRAX_SERIAL_FAST_TIMER is not set
-# CONFIG_ETRAX_SERIAL_FLUSH_DMA_FAST is not set
-CONFIG_ETRAX_SERIAL_PORT0=y
-# CONFIG_ETRAX_SERIAL_PORT0_DMA0_OUT is not set
-# CONFIG_ETRAX_SERIAL_PORT0_DMA1_IN is not set
-# CONFIG_ETRAX_SERIAL_PORT0_DMA6_OUT is not set
-# CONFIG_ETRAX_SERIAL_PORT0_DMA7_IN is not set
-CONFIG_ETRAX_SERIAL_PORT0_NO_DMA_IN=y
-CONFIG_ETRAX_SERIAL_PORT0_NO_DMA_OUT=y
-# CONFIG_ETRAX_SERIAL_PORT1 is not set
-CONFIG_ETRAX_SERIAL_PORT2=y
-CONFIG_ETRAX_SERIAL_PORT2_DMA2_OUT=y
-CONFIG_ETRAX_SERIAL_PORT2_DMA3_IN=y
-# CONFIG_ETRAX_SERIAL_PORT2_DMA6_OUT is not set
-# CONFIG_ETRAX_SERIAL_PORT2_DMA7_IN is not set
-# CONFIG_ETRAX_SERIAL_PORT2_NO_DMA_IN is not set
-# CONFIG_ETRAX_SERIAL_PORT2_NO_DMA_OUT is not set
-CONFIG_ETRAX_SERIAL_PORT3=y
-# CONFIG_ETRAX_SERIAL_PORT3_DMA2_OUT is not set
-# CONFIG_ETRAX_SERIAL_PORT3_DMA3_IN is not set
-CONFIG_ETRAX_SERIAL_PORT3_DMA4_OUT=y
-CONFIG_ETRAX_SERIAL_PORT3_DMA5_IN=y
-# CONFIG_ETRAX_SERIAL_PORT3_DMA8_OUT is not set
-# CONFIG_ETRAX_SERIAL_PORT3_DMA9_IN is not set
-# CONFIG_ETRAX_SERIAL_PORT3_NO_DMA_IN is not set
-# CONFIG_ETRAX_SERIAL_PORT3_NO_DMA_OUT is not set
-CONFIG_ETRAX_SERIAL_RX_TIMEOUT_TICKS=1
+# CONFIG_ETRAX_SERIAL is not set
 # CONFIG_ETRAX_SOFT_SHUTDOWN is not set
 # CONFIG_ETRAX_SYNCHRONOUS_SERIAL is not set
 CONFIG_ETRAX_USB_HOST=y
@@ -161,9 +77,9 @@ CONFIG_ETRAX_USB_HOST_PORT2=y
 # CONFIG_ETRAX_VCS_SIM is not set
 # CONFIG_ETRAX_WATCHDOG is not set
 CONFIG_EXT2_FS=y
-# CONFIG_EXT3_FS is not set
 CONFIG_FORCE_MAX_ZONEORDER=6
 # CONFIG_FREEZER is not set
+CONFIG_GENERIC_FIND_LAST_BIT=y
 CONFIG_GENERIC_FIND_NEXT_BIT=y
 CONFIG_GENERIC_IOMAP=y
 # CONFIG_GEN_RTC is not set
@@ -173,22 +89,11 @@ CONFIG_HAS_IOMEM=y
 # CONFIG_HAVE_AOUT is not set
 # CONFIG_HAVE_GENERIC_DMA_COHERENT is not set
 CONFIG_HAVE_IDE=y
-# CONFIG_HFSPLUS_FS is not set
-# CONFIG_HFS_FS is not set
 # CONFIG_HW_RANDOM is not set
 # CONFIG_I2C is not set
-# CONFIG_IBM_NEW_EMAC_MAL_CLR_ICINTSTAT is not set
-# CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set
-# CONFIG_IBM_NEW_EMAC_NO_FLOW_CTRL is not set
-# CONFIG_IDE is not set
-# CONFIG_IEEE80211 is not set
-# CONFIG_IFB is not set
-CONFIG_INITRAMFS_SOURCE=""
-# CONFIG_ISO9660_FS is not set
-CONFIG_KMOD=y
-# CONFIG_LLC is not set
-# CONFIG_MINIX_FS is not set
-# CONFIG_MSDOS_FS is not set
+# CONFIG_LIB80211 is not set
+# CONFIG_MAC80211 is not set
+CONFIG_MISC_FILESYSTEMS=y
 CONFIG_MTD=y
 CONFIG_MTDRAM_ABS_POS=0x0
 CONFIG_MTDRAM_ERASE_SIZE=128
@@ -217,6 +122,7 @@ CONFIG_MTD_COMPLEX_MAPPINGS=y
 CONFIG_MTD_CONCAT=y
 CONFIG_MTD_GEN_PROBE=y
 CONFIG_MTD_JEDECPROBE=y
+# CONFIG_MTD_LPDDR 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
@@ -234,10 +140,9 @@ CONFIG_MTD_PARTITIONS=y
 # CONFIG_MTD_REDBOOT_PARTS is not set
 # CONFIG_MTD_ROM is not set
 # CONFIG_MTD_SLRAM is not set
+# CONFIG_MTD_TESTS is not set
 # CONFIG_NETDEV_1000 is not set
-# CONFIG_NFSD is not set
-# CONFIG_NFS_FS is not set
-CONFIG_NF_CT_ACCT=y
+# CONFIG_NET_SCH_DRR is not set
 # CONFIG_NF_DEFRAG_IPV4 is not set
 CONFIG_NLS=y
 CONFIG_NLS_CODEPAGE_437=y
@@ -246,26 +151,22 @@ CONFIG_NO_IOPORT=y
 # CONFIG_OOM_REBOOT is not set
 CONFIG_PAGEFLAGS_EXTENDED=y
 # CONFIG_PHYS_ADDR_T_64BIT is not set
-# CONFIG_PPP is not set
 CONFIG_ROMFS_FS=y
 # CONFIG_RTC is not set
 CONFIG_RWSEM_GENERIC_SPINLOCK=y
+# CONFIG_SCSI_DMA is not set
 # CONFIG_SERIAL_8250 is not set
-# CONFIG_STP is not set
 # CONFIG_SVINTO_SIM is not set
 # CONFIG_SYSTEM_PROFILER is not set
 CONFIG_SYSVIPC_SYSCTL=y
-# CONFIG_TUN is not set
-# CONFIG_UDF_FS is not set
 CONFIG_UID16=y
 CONFIG_USB=y
-# CONFIG_USB_ACM is not set
 # CONFIG_USB_ARCH_HAS_EHCI is not set
 # CONFIG_USB_ARCH_HAS_HCD is not set
 # CONFIG_USB_ARCH_HAS_OHCI is not set
-# CONFIG_USB_PRINTER is not set
-# CONFIG_USB_SERIAL is not set
+# CONFIG_USB_OXU210HP_HCD is not set
 CONFIG_USB_SUPPORT=y
-# CONFIG_VFAT_FS is not set
 # CONFIG_VLAN_8021Q is not set
+# CONFIG_WIRELESS_EXT_SYSFS is not set
+# CONFIG_WIRELESS_OLD_REGULATORY is not set
 # CONFIG_WLAN_80211 is not set
index 9f716202c3d349a6dc04e5ad839144dcb5ce6acc..44856ca4d9722995bf3583523e01272e52a6cbc1 100644 (file)
@@ -1,5 +1,5 @@
 # 
-# Copyright (C) 2006 OpenWrt.org
+# Copyright (C) 2006-2009 OpenWrt.org
 #
 # This is free software, licensed under the GNU General Public License v2.
 # See /LICENSE for more information.
@@ -13,7 +13,7 @@ define Image/BuildKernel
 endef
 
 define Image/Prepare
-       cp $(LINUX_DIR)/arch/cris/boot/zImage $(KDIR)/vmlinuz
+       cp $(LINUX_DIR)/arch/cris/arch-v10/boot/zImage $(KDIR)/vmlinuz
        $(MAKE) -C e100boot compile
        $(MAKE) -C mkfimage compile
        $(INSTALL_BIN) ./boot_linux $(BIN_DIR)
diff --git a/target/linux/etrax/patches-2.6.28/600-fix_serial_cris.patch b/target/linux/etrax/patches-2.6.28/600-fix_serial_cris.patch
deleted file mode 100644 (file)
index 0c54b7b..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-Index: linux-2.6.28.9/drivers/serial/crisv10.c
-===================================================================
---- linux-2.6.28.9.orig/drivers/serial/crisv10.c       2009-04-08 16:47:06.000000000 +0200
-+++ linux-2.6.28.9/drivers/serial/crisv10.c    2009-04-08 16:47:27.000000000 +0200
-@@ -28,6 +28,7 @@
- #include <linux/mutex.h>
- #include <linux/bitops.h>
- #include <linux/device.h>
-+#include <linux/proc_fs.h>
- #include <asm/io.h>
- #include <asm/irq.h>
-@@ -4389,7 +4390,6 @@
-       .break_ctl = rs_break,
-       .send_xchar = rs_send_xchar,
-       .wait_until_sent = rs_wait_until_sent,
--      .read_proc = rs_read_proc,
-       .tiocmget = rs_tiocmget,
-       .tiocmset = rs_tiocmset
- };
-@@ -4455,7 +4455,7 @@
-       if (tty_register_driver(driver))
-               panic("Couldn't register serial driver\n");
-       /* do some initializing for the separate ports */
--
-+      driver->proc_entry->read_proc = rs_read_proc;
-       for (i = 0, info = rs_table; i < NR_PORTS; i++,info++) {
-               if (info->enabled) {
-                       if (cris_request_io_interface(info->io_if,
diff --git a/target/linux/etrax/patches-2.6.29/600-fix_serial_cris.patch b/target/linux/etrax/patches-2.6.29/600-fix_serial_cris.patch
new file mode 100644 (file)
index 0000000..7ac24a4
--- /dev/null
@@ -0,0 +1,265 @@
+Index: linux-2.6.28.9/drivers/serial/crisv10.c
+===================================================================
+--- linux-2.6.28.9.orig/drivers/serial/crisv10.c       2009-04-10 12:58:18.000000000 +0200
++++ linux-2.6.28.9/drivers/serial/crisv10.c    2009-04-10 12:58:22.000000000 +0200
+@@ -28,12 +28,15 @@
+ #include <linux/mutex.h>
+ #include <linux/bitops.h>
+ #include <linux/device.h>
++#include <linux/seq_file.h>
++#include <linux/delay.h>
++#include <linux/module.h>
++#include <linux/uaccess.h>
++#include <linux/io.h>
+-#include <asm/io.h>
+ #include <asm/irq.h>
+ #include <asm/dma.h>
+ #include <asm/system.h>
+-#include <linux/delay.h>
+ #include <arch/svinto.h>
+@@ -457,7 +460,6 @@
+ #define NR_PORTS (sizeof(rs_table)/sizeof(struct e100_serial))
+-static struct ktermios *serial_termios[NR_PORTS];
+ #ifdef CONFIG_ETRAX_SERIAL_FAST_TIMER
+ static struct fast_timer fast_timers[NR_PORTS];
+ #endif
+@@ -4221,151 +4223,132 @@
+       return 0;
+ }
++#ifdef CONFIG_PROC_FS
+ /*
+  * /proc fs routines....
+  */
+-static int line_info(char *buf, struct e100_serial *info)
++static void seq_line_info(struct seq_file *m, struct e100_serial *info)
+ {
+-      char    stat_buf[30];
+-      int     ret;
+       unsigned long tmp;
+-      ret = sprintf(buf, "%d: uart:E100 port:%lX irq:%d",
+-                    info->line, (unsigned long)info->ioport, info->irq);
++      seq_printf(m, "%d: uart:E100 port:%lX irq:%d",
++                 info->line, (unsigned long)info->ioport, info->irq);
+       if (!info->ioport || (info->type == PORT_UNKNOWN)) {
+-              ret += sprintf(buf+ret, "\n");
+-              return ret;
++              seq_printf(m, "\n");
++              return;
+       }
+-      stat_buf[0] = 0;
+-      stat_buf[1] = 0;
+-      if (!E100_RTS_GET(info))
+-              strcat(stat_buf, "|RTS");
+-      if (!E100_CTS_GET(info))
+-              strcat(stat_buf, "|CTS");
+-      if (!E100_DTR_GET(info))
+-              strcat(stat_buf, "|DTR");
+-      if (!E100_DSR_GET(info))
+-              strcat(stat_buf, "|DSR");
+-      if (!E100_CD_GET(info))
+-              strcat(stat_buf, "|CD");
+-      if (!E100_RI_GET(info))
+-              strcat(stat_buf, "|RI");
+-
+-      ret += sprintf(buf+ret, " baud:%d", info->baud);
+-
+-      ret += sprintf(buf+ret, " tx:%lu rx:%lu",
++      seq_printf(m, " baud:%d", info->baud);
++      seq_printf(m, " tx:%lu rx:%lu",
+                      (unsigned long)info->icount.tx,
+                      (unsigned long)info->icount.rx);
+       tmp = CIRC_CNT(info->xmit.head, info->xmit.tail, SERIAL_XMIT_SIZE);
+-      if (tmp) {
+-              ret += sprintf(buf+ret, " tx_pend:%lu/%lu",
+-                             (unsigned long)tmp,
+-                             (unsigned long)SERIAL_XMIT_SIZE);
+-      }
+-
+-      ret += sprintf(buf+ret, " rx_pend:%lu/%lu",
+-                     (unsigned long)info->recv_cnt,
+-                     (unsigned long)info->max_recv_cnt);
++      if (tmp)
++              seq_printf(m, " tx_pend:%lu/%lu",
++                         (unsigned long)tmp,
++                         (unsigned long)SERIAL_XMIT_SIZE);
++
++      seq_printf(m, " rx_pend:%lu/%lu",
++                 (unsigned long)info->recv_cnt,
++                 (unsigned long)info->max_recv_cnt);
+ #if 1
+       if (info->port.tty) {
+-
+               if (info->port.tty->stopped)
+-                      ret += sprintf(buf+ret, " stopped:%i",
+-                                     (int)info->port.tty->stopped);
++                      seq_printf(m, " stopped:%i",
++                                 (int)info->port.tty->stopped);
+               if (info->port.tty->hw_stopped)
+-                      ret += sprintf(buf+ret, " hw_stopped:%i",
+-                                     (int)info->port.tty->hw_stopped);
++                      seq_printf(m, " hw_stopped:%i",
++                                 (int)info->port.tty->hw_stopped);
+       }
+       {
+               unsigned char rstat = info->ioport[REG_STATUS];
+-              if (rstat & IO_MASK(R_SERIAL0_STATUS, xoff_detect) )
+-                      ret += sprintf(buf+ret, " xoff_detect:1");
++              if (rstat & IO_MASK(R_SERIAL0_STATUS, xoff_detect))
++                      seq_printf(m, " xoff_detect:1");
+       }
+ #endif
+-
+-
+-
+       if (info->icount.frame)
+-              ret += sprintf(buf+ret, " fe:%lu",
+-                             (unsigned long)info->icount.frame);
++              seq_printf(m, " fe:%lu", (unsigned long)info->icount.frame);
+       if (info->icount.parity)
+-              ret += sprintf(buf+ret, " pe:%lu",
+-                             (unsigned long)info->icount.parity);
++              seq_printf(m, " pe:%lu", (unsigned long)info->icount.parity);
+       if (info->icount.brk)
+-              ret += sprintf(buf+ret, " brk:%lu",
+-                             (unsigned long)info->icount.brk);
++              seq_printf(m, " brk:%lu", (unsigned long)info->icount.brk);
+       if (info->icount.overrun)
+-              ret += sprintf(buf+ret, " oe:%lu",
+-                             (unsigned long)info->icount.overrun);
++              seq_printf(m, " oe:%lu", (unsigned long)info->icount.overrun);
+       /*
+        * Last thing is the RS-232 status lines
+        */
+-      ret += sprintf(buf+ret, " %s\n", stat_buf+1);
+-      return ret;
++      if (!E100_RTS_GET(info))
++              seq_puts(m, "|RTS");
++      if (!E100_CTS_GET(info))
++              seq_puts(m, "|CTS");
++      if (!E100_DTR_GET(info))
++              seq_puts(m, "|DTR");
++      if (!E100_DSR_GET(info))
++              seq_puts(m, "|DSR");
++      if (!E100_CD_GET(info))
++              seq_puts(m, "|CD");
++      if (!E100_RI_GET(info))
++              seq_puts(m, "|RI");
++      seq_puts(m, "\n");
+ }
+-int rs_read_proc(char *page, char **start, off_t off, int count,
+-               int *eof, void *data)
++
++static int crisv10_proc_show(struct seq_file *m, void *v)
+ {
+-      int i, len = 0, l;
+-      off_t   begin = 0;
++      int i;
++
++      seq_printf(m, "serinfo:1.0 driver:%s\n", serial_version);
+-      len += sprintf(page, "serinfo:1.0 driver:%s\n",
+-                     serial_version);
+-      for (i = 0; i < NR_PORTS && len < 4000; i++) {
++      for (i = 0; i < NR_PORTS; i++) {
+               if (!rs_table[i].enabled)
+                       continue;
+-              l = line_info(page + len, &rs_table[i]);
+-              len += l;
+-              if (len+begin > off+count)
+-                      goto done;
+-              if (len+begin < off) {
+-                      begin += len;
+-                      len = 0;
+-              }
++              seq_line_info(m, &rs_table[i]);
+       }
+ #ifdef DEBUG_LOG_INCLUDED
+       for (i = 0; i < debug_log_pos; i++) {
+-              len += sprintf(page + len, "%-4i %lu.%lu ", i, debug_log[i].time, timer_data_to_ns(debug_log[i].timer_data));
+-              len += sprintf(page + len, debug_log[i].string, debug_log[i].value);
+-              if (len+begin > off+count)
+-                      goto done;
+-              if (len+begin < off) {
+-                      begin += len;
+-                      len = 0;
+-              }
++              seq_printf(m, "%-4i %lu.%lu ",
++                       i, debug_log[i].time,
++                       timer_data_to_ns(debug_log[i].timer_data));
++              seq_printf(m, debug_log[i].string, debug_log[i].value);
+       }
+-      len += sprintf(page + len, "debug_log %i/%i  %li bytes\n",
+-                     i, DEBUG_LOG_SIZE, begin+len);
++      seq_printf(m, "debug_log %i/%i\n", i, DEBUG_LOG_SIZE);
+       debug_log_pos = 0;
+ #endif
++      return 0;
++}
+-      *eof = 1;
+-done:
+-      if (off >= len+begin)
+-              return 0;
+-      *start = page + (off-begin);
+-      return ((count < begin+len-off) ? count : begin+len-off);
++static int crisv10_proc_open(struct inode *inode, struct file *file)
++{
++      return single_open(file, crisv10_proc_show, NULL);
+ }
++static const struct file_operations crisv10_proc_fops = {
++      .owner          = THIS_MODULE,
++      .open           = crisv10_proc_open,
++      .read           = seq_read,
++      .llseek         = seq_lseek,
++      .release        = single_release,
++};
++#endif
++
++
+ /* Finally, routines used to initialize the serial driver. */
+-static void
+-show_serial_version(void)
++static void show_serial_version(void)
+ {
+       printk(KERN_INFO
+-             "ETRAX 100LX serial-driver %s, (c) 2000-2004 Axis Communications AB\r\n",
++             "ETRAX 100LX serial-driver %s, "
++             "(c) 2000-2004 Axis Communications AB\r\n",
+              &serial_version[11]); /* "$Revision: x.yy" */
+ }
+@@ -4389,9 +4372,11 @@
+       .break_ctl = rs_break,
+       .send_xchar = rs_send_xchar,
+       .wait_until_sent = rs_wait_until_sent,
+-      .read_proc = rs_read_proc,
+       .tiocmget = rs_tiocmget,
+-      .tiocmset = rs_tiocmset
++      .tiocmset = rs_tiocmset,
++#ifdef CONFIG_PROC_FS
++      .proc_fops = &crisv10_proc_fops,
++#endif
+ };
+ static struct class *rs_class;