mirror of
git://projects.qi-hardware.com/openwrt-xburst.git
synced 2025-02-04 09:51:06 +02:00
[etrax] patches for 2.6.28
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@15174 3c298f89-4303-0410-b956-a3cf2f4a3e73
This commit is contained in:
parent
409fb7adfc
commit
57e5b00f97
@ -1,97 +0,0 @@
|
|||||||
Index: linux-2.6.28/arch/cris/Makefile
|
|
||||||
===================================================================
|
|
||||||
--- linux-2.6.28.orig/arch/cris/Makefile 2008-12-25 00:26:37.000000000 +0100
|
|
||||||
+++ linux-2.6.28/arch/cris/Makefile 2009-01-09 22:52:39.000000000 +0100
|
|
||||||
@@ -40,7 +40,7 @@
|
|
||||||
|
|
||||||
LD = $(CROSS_COMPILE)ld -mcrislinux
|
|
||||||
|
|
||||||
-OBJCOPYFLAGS := -O binary -R .note -R .comment -S
|
|
||||||
+OBJCOPYFLAGS := -O binary -R .bss -R .note -R .note.gnu.build-id -R .comment -S
|
|
||||||
|
|
||||||
CPPFLAGS_vmlinux.lds = -DDRAM_VIRTUAL_BASE=0x$(CONFIG_ETRAX_DRAM_VIRTUAL_BASE)
|
|
||||||
|
|
||||||
Index: linux-2.6.28/arch/cris/arch-v10/boot/Makefile
|
|
||||||
===================================================================
|
|
||||||
--- linux-2.6.28.orig/arch/cris/arch-v10/boot/Makefile 2008-12-25 00:26:37.000000000 +0100
|
|
||||||
+++ linux-2.6.28/arch/cris/arch-v10/boot/Makefile 2009-01-09 22:52:39.000000000 +0100
|
|
||||||
@@ -13,7 +13,6 @@
|
|
||||||
|
|
||||||
$(obj)/compressed/vmlinux: $(obj)/Image FORCE
|
|
||||||
$(Q)$(MAKE) $(build)=$(obj)/compressed $@
|
|
||||||
- $(Q)$(MAKE) $(build)=$(obj)/rescue $(obj)/rescue/rescue.bin
|
|
||||||
|
|
||||||
$(obj)/zImage: $(obj)/compressed/vmlinux
|
|
||||||
@cp $< $@
|
|
||||||
Index: linux-2.6.28/arch/cris/arch-v10/boot/compressed/misc.c
|
|
||||||
===================================================================
|
|
||||||
--- linux-2.6.28.orig/arch/cris/arch-v10/boot/compressed/misc.c 2008-12-25 00:26:37.000000000 +0100
|
|
||||||
+++ linux-2.6.28/arch/cris/arch-v10/boot/compressed/misc.c 2009-01-10 18:00:45.000000000 +0100
|
|
||||||
@@ -5,7 +5,7 @@
|
|
||||||
* adapted for Linux.
|
|
||||||
*
|
|
||||||
* malloc by Hannu Savolainen 1993 and Matthias Urlichs 1994
|
|
||||||
- * puts by Nick Holloway 1993, better puts by Martin Mares 1995
|
|
||||||
+ * putstr by Nick Holloway 1993, better putstr by Martin Mares 1995
|
|
||||||
* adaptation for Linux/CRIS Axis Communications AB, 1999
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
@@ -102,7 +102,6 @@
|
|
||||||
static long bytes_out = 0;
|
|
||||||
static uch *output_data;
|
|
||||||
static unsigned long output_ptr = 0;
|
|
||||||
-static void puts(const char *);
|
|
||||||
|
|
||||||
/* the "heap" is put directly after the BSS ends, at end */
|
|
||||||
|
|
||||||
@@ -115,7 +114,7 @@
|
|
||||||
/* decompressor info and error messages to serial console */
|
|
||||||
|
|
||||||
static void
|
|
||||||
-puts(const char *s)
|
|
||||||
+putstr(const char *s)
|
|
||||||
{
|
|
||||||
#ifndef CONFIG_ETRAX_DEBUG_PORT_NULL
|
|
||||||
while (*s) {
|
|
||||||
@@ -188,9 +187,9 @@
|
|
||||||
|
|
||||||
static void error(char *x)
|
|
||||||
{
|
|
||||||
- puts("\n\n");
|
|
||||||
- puts(x);
|
|
||||||
- puts("\n\n -- System halted\n");
|
|
||||||
+ putstr("\n\n");
|
|
||||||
+ putstr(x);
|
|
||||||
+ putstr("\n\n -- System halted\n");
|
|
||||||
|
|
||||||
while (1); /* Halt */
|
|
||||||
}
|
|
||||||
@@ -236,11 +235,11 @@
|
|
||||||
|
|
||||||
__asm__ volatile ("move $vr,%0" : "=rm" (revision));
|
|
||||||
if (revision < 10) {
|
|
||||||
- puts("You need an ETRAX 100LX to run linux 2.6\n");
|
|
||||||
+ putstr("You need an ETRAX 100LX to run linux 2.6\n");
|
|
||||||
while (1);
|
|
||||||
}
|
|
||||||
|
|
||||||
- puts("Uncompressing Linux...\n");
|
|
||||||
+ putstr("Uncompressing Linux...\n");
|
|
||||||
gunzip();
|
|
||||||
- puts("Done. Now booting the kernel.\n");
|
|
||||||
+ putstr("Done. Now booting the kernel.\n");
|
|
||||||
}
|
|
||||||
Index: linux-2.6.28/arch/cris/arch-v10/mm/init.c
|
|
||||||
===================================================================
|
|
||||||
--- linux-2.6.28.orig/arch/cris/arch-v10/mm/init.c 2008-12-25 00:26:37.000000000 +0100
|
|
||||||
+++ linux-2.6.28/arch/cris/arch-v10/mm/init.c 2009-01-09 22:52:39.000000000 +0100
|
|
||||||
@@ -184,6 +184,9 @@
|
|
||||||
|
|
||||||
free_area_init_node(0, zones_size, PAGE_OFFSET >> PAGE_SHIFT, 0);
|
|
||||||
}
|
|
||||||
+void free_initrd_mem(unsigned long start, unsigned long end)
|
|
||||||
+{
|
|
||||||
+}
|
|
||||||
|
|
||||||
/* Initialize remaps of some I/O-ports. It is important that this
|
|
||||||
* is called before any driver is initialized.
|
|
55
target/linux/etrax/patches-2.6.28/100-cris-makefiles.patch
Normal file
55
target/linux/etrax/patches-2.6.28/100-cris-makefiles.patch
Normal file
@ -0,0 +1,55 @@
|
|||||||
|
diff -urN linux-2.6.28.clean/arch/cris/Makefile linux-2.6.28.mod/arch/cris/Makefile
|
||||||
|
--- linux-2.6.28.clean/arch/cris/Makefile 2008-12-25 00:26:37.000000000 +0100
|
||||||
|
+++ linux-2.6.28.mod/arch/cris/Makefile 2009-04-07 11:52:30.000000000 +0200
|
||||||
|
@@ -40,7 +40,7 @@
|
||||||
|
|
||||||
|
LD = $(CROSS_COMPILE)ld -mcrislinux
|
||||||
|
|
||||||
|
-OBJCOPYFLAGS := -O binary -R .note -R .comment -S
|
||||||
|
+OBJCOPYFLAGS := -O binary -R .bss -R .note -R .note.gnu.build-id -R .comment -S
|
||||||
|
|
||||||
|
CPPFLAGS_vmlinux.lds = -DDRAM_VIRTUAL_BASE=0x$(CONFIG_ETRAX_DRAM_VIRTUAL_BASE)
|
||||||
|
|
||||||
|
diff -urN linux-2.6.28.clean/arch/cris/arch-v10/boot/Makefile linux-2.6.28.mod/arch/cris/arch-v10/boot/Makefile
|
||||||
|
--- linux-2.6.28.clean/arch/cris/arch-v10/boot/Makefile 2008-12-25 00:26:37.000000000 +0100
|
||||||
|
+++ linux-2.6.28.mod/arch/cris/arch-v10/boot/Makefile 2009-04-07 11:55:01.000000000 +0200
|
||||||
|
@@ -2,8 +2,6 @@
|
||||||
|
# arch/cris/arch-v10/boot/Makefile
|
||||||
|
#
|
||||||
|
|
||||||
|
-OBJCOPYFLAGS = -O binary --remove-section=.bss
|
||||||
|
-
|
||||||
|
subdir- := compressed rescue
|
||||||
|
targets := Image
|
||||||
|
|
||||||
|
@@ -13,7 +11,7 @@
|
||||||
|
|
||||||
|
$(obj)/compressed/vmlinux: $(obj)/Image FORCE
|
||||||
|
$(Q)$(MAKE) $(build)=$(obj)/compressed $@
|
||||||
|
- $(Q)$(MAKE) $(build)=$(obj)/rescue $(obj)/rescue/rescue.bin
|
||||||
|
+# $(Q)$(MAKE) $(build)=$(obj)/rescue $(obj)/rescue/rescue.bin
|
||||||
|
|
||||||
|
$(obj)/zImage: $(obj)/compressed/vmlinux
|
||||||
|
@cp $< $@
|
||||||
|
diff -urN linux-2.6.28.clean/arch/cris/arch-v10/boot/compressed/Makefile linux-2.6.28.mod/arch/cris/arch-v10/boot/compressed/Makefile
|
||||||
|
--- linux-2.6.28.clean/arch/cris/arch-v10/boot/compressed/Makefile 2008-12-25 00:26:37.000000000 +0100
|
||||||
|
+++ linux-2.6.28.mod/arch/cris/arch-v10/boot/compressed/Makefile 2009-04-07 11:53:02.000000000 +0200
|
||||||
|
@@ -6,7 +6,6 @@
|
||||||
|
ccflags-y += -O2 $(LINUXINCLUDE)
|
||||||
|
ldflags-y += -T $(srctree)/$(src)/decompress.lds
|
||||||
|
OBJECTS = $(obj)/head.o $(obj)/misc.o
|
||||||
|
-OBJCOPYFLAGS = -O binary --remove-section=.bss
|
||||||
|
|
||||||
|
quiet_cmd_image = BUILD $@
|
||||||
|
cmd_image = cat $(obj)/decompress.bin $(obj)/piggy.gz > $@
|
||||||
|
diff -urN linux-2.6.28.clean/arch/cris/arch-v10/boot/rescue/Makefile linux-2.6.28.mod/arch/cris/arch-v10/boot/rescue/Makefile
|
||||||
|
--- linux-2.6.28.clean/arch/cris/arch-v10/boot/rescue/Makefile 2008-12-25 00:26:37.000000000 +0100
|
||||||
|
+++ linux-2.6.28.mod/arch/cris/arch-v10/boot/rescue/Makefile 2009-04-07 11:53:09.000000000 +0200
|
||||||
|
@@ -5,7 +5,6 @@
|
||||||
|
ccflags-y += -O2 $(LINUXINCLUDE)
|
||||||
|
asflags-y += $(LINUXINCLUDE)
|
||||||
|
ldflags-y += -T $(srctree)/$(src)/rescue.lds
|
||||||
|
-OBJCOPYFLAGS = -O binary --remove-section=.bss
|
||||||
|
obj-$(CONFIG_ETRAX_AXISFLASHMAP) = head.o
|
||||||
|
OBJECT := $(obj)/head.o
|
||||||
|
|
43
target/linux/etrax/patches-2.6.28/300-sysfs.patch
Normal file
43
target/linux/etrax/patches-2.6.28/300-sysfs.patch
Normal file
@ -0,0 +1,43 @@
|
|||||||
|
--- a/drivers/serial/crisv10.c
|
||||||
|
+++ b/drivers/serial/crisv10.c
|
||||||
|
@@ -27,6 +27,7 @@ static char *serial_version = "$Revision
|
||||||
|
#include <linux/kernel.h>
|
||||||
|
#include <linux/mutex.h>
|
||||||
|
#include <linux/bitops.h>
|
||||||
|
+#include <linux/device.h>
|
||||||
|
|
||||||
|
#include <asm/io.h>
|
||||||
|
#include <asm/irq.h>
|
||||||
|
@@ -4384,6 +4385,7 @@ static const struct tty_operations rs_op
|
||||||
|
.tiocmset = rs_tiocmset
|
||||||
|
};
|
||||||
|
|
||||||
|
+static struct class *rs_class;
|
||||||
|
static int __init
|
||||||
|
rs_init(void)
|
||||||
|
{
|
||||||
|
@@ -4518,6 +4520,24 @@ rs_init(void)
|
||||||
|
#endif
|
||||||
|
#endif /* CONFIG_SVINTO_SIM */
|
||||||
|
|
||||||
|
+ rs_class = class_create(THIS_MODULE, "rs_tty");
|
||||||
|
+#ifdef CONFIG_ETRAX_SERIAL_PORT0
|
||||||
|
+ device_create(rs_class, NULL,
|
||||||
|
+ MKDEV(TTY_MAJOR, 64), NULL, "ttyS0");
|
||||||
|
+#endif
|
||||||
|
+#ifdef CONFIG_ETRAX_SERIAL_PORT1
|
||||||
|
+ device_create(rs_class, NULL,
|
||||||
|
+ MKDEV(TTY_MAJOR, 65), NULL, "ttyS1");
|
||||||
|
+#endif
|
||||||
|
+#ifdef CONFIG_ETRAX_SERIAL_PORT2
|
||||||
|
+ device_create(rs_class, NULL,
|
||||||
|
+ MKDEV(TTY_MAJOR, 66), NULL, "ttyS2");
|
||||||
|
+#endif
|
||||||
|
+#ifdef CONFIG_ETRAX_SERIAL_PORT3
|
||||||
|
+ device_create(rs_class, NULL,
|
||||||
|
+ MKDEV(TTY_MAJOR, 67), NULL, "ttyS3");
|
||||||
|
+#endif
|
||||||
|
+
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
17
target/linux/etrax/patches-2.6.28/400-Kconfig_source.patch
Normal file
17
target/linux/etrax/patches-2.6.28/400-Kconfig_source.patch
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
Index: linux-2.6.28.9/arch/cris/Kconfig
|
||||||
|
===================================================================
|
||||||
|
--- linux-2.6.28.9.orig/arch/cris/Kconfig 2009-03-23 22:55:52.000000000 +0100
|
||||||
|
+++ linux-2.6.28.9/arch/cris/Kconfig 2009-04-08 16:53:30.000000000 +0200
|
||||||
|
@@ -662,6 +662,12 @@
|
||||||
|
|
||||||
|
source "drivers/ide/Kconfig"
|
||||||
|
|
||||||
|
+source "drivers/scsi/Kconfig"
|
||||||
|
+
|
||||||
|
+source "drivers/media/Kconfig"
|
||||||
|
+
|
||||||
|
+source "sound/Kconfig"
|
||||||
|
+
|
||||||
|
source "drivers/net/Kconfig"
|
||||||
|
|
||||||
|
source "drivers/i2c/Kconfig"
|
45
target/linux/etrax/patches-2.6.28/500-i2c_gvc.patch
Normal file
45
target/linux/etrax/patches-2.6.28/500-i2c_gvc.patch
Normal file
@ -0,0 +1,45 @@
|
|||||||
|
Index: linux-2.6.25.20/arch/cris/arch-v10/drivers/Kconfig
|
||||||
|
===================================================================
|
||||||
|
--- linux-2.6.25.20.orig/arch/cris/arch-v10/drivers/Kconfig 2009-02-09 09:30:40.000000000 +0100
|
||||||
|
+++ linux-2.6.25.20/arch/cris/arch-v10/drivers/Kconfig 2009-02-09 21:23:12.000000000 +0100
|
||||||
|
@@ -450,11 +450,18 @@
|
||||||
|
i2c_arg = I2C_READARG(STA013_READ_ADDR, reg);
|
||||||
|
val = ioctl(fd, _IO(ETRAXI2C_IOCTYPE, I2C_READREG), i2c_arg);
|
||||||
|
|
||||||
|
+config ETRAX_I2C_GVC
|
||||||
|
+ bool "I2C GVC support"
|
||||||
|
+ depends on ETRAX_ARCH_V10 && !ETRAX_I2C
|
||||||
|
+ select ETRAX_I2C_USES_PB_NOT_PB_I2C
|
||||||
|
+ help
|
||||||
|
+ Enables an I2C driver with Geert Vancompernolle improvement.
|
||||||
|
+
|
||||||
|
# this is true for most products since PB-I2C seems to be somewhat
|
||||||
|
# flawed..
|
||||||
|
config ETRAX_I2C_USES_PB_NOT_PB_I2C
|
||||||
|
bool "I2C uses PB not PB-I2C"
|
||||||
|
- depends on ETRAX_I2C
|
||||||
|
+ depends on ETRAX_I2C || ETRAX_I2C_GVC
|
||||||
|
help
|
||||||
|
Select whether to use the special I2C mode in the PB I/O register or
|
||||||
|
not. This option needs to be selected in order to use some drivers
|
||||||
|
@@ -478,7 +485,7 @@
|
||||||
|
|
||||||
|
config ETRAX_I2C_EEPROM
|
||||||
|
bool "I2C EEPROM (non-volatile RAM) support"
|
||||||
|
- depends on ETRAX_I2C
|
||||||
|
+ depends on ETRAX_I2C || ETRAX_I2C_GVC
|
||||||
|
help
|
||||||
|
Enables I2C EEPROM (non-volatile RAM) on PB0 and PB1 using the I2C
|
||||||
|
driver. Select size option: Probed, 2k, 8k, 16k.
|
||||||
|
Index: linux-2.6.25.20/arch/cris/arch-v10/drivers/Makefile
|
||||||
|
===================================================================
|
||||||
|
--- linux-2.6.25.20.orig/arch/cris/arch-v10/drivers/Makefile 2009-02-09 09:30:41.000000000 +0100
|
||||||
|
+++ linux-2.6.25.20/arch/cris/arch-v10/drivers/Makefile 2009-02-09 09:35:39.000000000 +0100
|
||||||
|
@@ -4,6 +4,7 @@
|
||||||
|
|
||||||
|
obj-$(CONFIG_ETRAX_AXISFLASHMAP) += axisflashmap.o
|
||||||
|
obj-$(CONFIG_ETRAX_I2C) += i2c.o
|
||||||
|
+obj-$(CONFIG_ETRAX_I2C_GVC) += i2c_gvc.o
|
||||||
|
obj-$(CONFIG_ETRAX_I2C_EEPROM) += eeprom.o
|
||||||
|
obj-$(CONFIG_ETRAX_GPIO) += gpio.o
|
||||||
|
obj-$(CONFIG_ETRAX_DS1302) += ds1302.o
|
29
target/linux/etrax/patches-2.6.28/600-fix_serial_cris.patch
Normal file
29
target/linux/etrax/patches-2.6.28/600-fix_serial_cris.patch
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
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,
|
Loading…
x
Reference in New Issue
Block a user