Skip to contentSkip to conversation

: linux-2.5.48-uc0 (MMU-less fixups)

PATCH In review Greg Ungerer 2 participants 3 messages Nov 19, 2002

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 : linux-2.5.48-uc0 (MMU-less fixups)

Hi All,

The patch is getting quite small now. Only a handful of things still outstanding. Quite a few trivial fixup patches in here...

http://www.uclinux.org/pub/uClinux/uClinux-2.5.x/linux-2.5.48-uc0.patch.gz

Change log:

1. patch up to 2.5.48                (me)
2. h8300 architecture support        (Yoshinori Sato)
3. clean up of kernel/sysctl.c       (me)

I have separated out the 68328 frame buffer driver. Its patch set is now at:

http://www.uclinux.org/pub/uClinux/uClinux-2.5.x/linux-2.5.48-uc0-68328fb.patch.gz

And the h8300 support is at:

http://www.uclinux.org/pub/uClinux/uClinux-2.5.x/linux-2.5.48-uc0-h8300.patch.gz

Regards
Greg

------------------------------------------------------------------------
Greg Ungerer -- Chief Software Wizard EMAIL: [email protected]
SnapGear Pty Ltd PHONE: +61 7 3435 2888
825 Stanley St, FAX: +61 7 3891 3630
Woolloongabba, QLD, 4102, Australia WEB: www.SnapGear.com

#1 lore raw

Hi,

Here's a v850 update for 2.5.48-uc0 (3 new files):

v850/Kconfig renamed from orig/linux-2.5.48-uc0/arch/v850/Kconfig +2 -0
diff -ruN -X../cludes ../orig/linux-2.5.48-uc0/arch/v850/Kconfig arch/v850/Kconfig
@@ -63,6 +63,8 @@
       	     bool "NA85E2C-FPGA"
       config V850E2_ANNA
       	     bool "Anna"
+      config V850E_AS85EP1
+      	     bool "AS85EP1"
    endchoice
 
 
v850/anna-rom.ld renamed from orig/linux-2.5.48-uc0/arch/v850/anna-rom.ld +1 -1
diff -ruN -X../cludes ../orig/linux-2.5.48-uc0/arch/v850/anna-rom.ld arch/v850/anna-rom.ld
@@ -81,7 +81,7 @@
 		*(.root)
 		__root_fs_image_end = . ;
 
-		. = ALIGN (4096) ;
+		. = ALIGN (4) ;
 		___initramfs_start = . ;
 			*(.init.ramfs)
 		___initramfs_end = . ;
v850/anna.ld renamed from orig/linux-2.5.48-uc0/arch/v850/anna.ld +1 -1
diff -ruN -X../cludes ../orig/linux-2.5.48-uc0/arch/v850/anna.ld arch/v850/anna.ld
@@ -104,7 +104,7 @@
 		. = ALIGN (4) ;
 		___initcall_end = . ;
 
-		. = ALIGN (4096) ;
+		. = ALIGN (4) ;
 		___initramfs_start = . ;
 			*(.init.ramfs)
 		___initramfs_end = . ;
v850/as85ep1.ld renamed from orig/linux-2.5.48-uc0/arch/v850/as85ep1.ld +145 -0

145 lines not on this page · raw message

v850/kernel/Makefile renamed from orig/linux-2.5.48-uc0/arch/v850/kernel/Makefile +1 -0
diff -ruN -X../cludes ../orig/linux-2.5.48-uc0/arch/v850/kernel/Makefile arch/v850/kernel/Makefile
@@ -20,6 +20,7 @@
 obj-$(CONFIG_V850E_MA1)		+= ma.o	nb85e_utils.o nb85e_timer_d.o
 obj-$(CONFIG_V850E_NB85E)	+= nb85e_intc.o
 obj-$(CONFIG_V850E2_ANNA)	+= anna.o nb85e_intc.o nb85e_utils.o nb85e_timer_d.o
+obj-$(CONFIG_V850E_AS85EP1)	+= as85ep1.o nb85e_intc.o nb85e_utils.o nb85e_timer_d.o
 # platform-specific code
 obj-$(CONFIG_V850E_SIM)		+= sim.o simcons.o
 obj-$(CONFIG_V850E2_SIM85E2C)	+= sim85e2c.o nb85e_intc.o memcons.o
v850/kernel/anna.c renamed from orig/linux-2.5.48-uc0/arch/v850/kernel/anna.c +1 -1
diff -ruN -X../cludes ../orig/linux-2.5.48-uc0/arch/v850/kernel/anna.c arch/v850/kernel/anna.c
@@ -47,7 +47,7 @@
 	ANNA_BPC    = 0;
 	ANNA_BSC    = 0xAAAA;
 	ANNA_BEC    = 0;
-	ANNA_BHC    = 0x00FF;	/* icache all memory, dcache none */
+	ANNA_BHC    = 0xFFFF;	/* icache all memory, dcache all */
 	ANNA_BCT(0) = 0xB088;
 	ANNA_BCT(1) = 0x0008;
 	ANNA_DWC(0) = 0x0027;
v850/kernel/as85ep1.c renamed from orig/linux-2.5.48-uc0/arch/v850/kernel/as85ep1.c +241 -0

241 lines not on this page · raw message

v850/kernel/entry.S renamed from orig/linux-2.5.48-uc0/arch/v850/kernel/entry.S +3 -3
diff -ruN -X../cludes ../orig/linux-2.5.48-uc0/arch/v850/kernel/entry.S arch/v850/kernel/entry.S
@@ -908,10 +908,10 @@
 	.long CSYM(sys_adjtimex)
 	.long CSYM(sys_ni_syscall)	// 125 - sys_mprotect
 	.long CSYM(sys_sigprocmask)
-	.long CSYM(sys_create_module)
+	.long CSYM(sys_ni_syscall)	// sys_create_module
 	.long CSYM(sys_init_module)
 	.long CSYM(sys_delete_module)
-	.long CSYM(sys_get_kernel_syms) // 130
+	.long CSYM(sys_ni_syscall)	// 130 - sys_get_kernel_syms
 	.long CSYM(sys_quotactl)
 	.long CSYM(sys_getpgid)
 	.long CSYM(sys_fchdir)
@@ -948,7 +948,7 @@
 	.long CSYM(sys_setresuid)
 	.long CSYM(sys_getresuid)	// 165
 	.long CSYM(sys_ni_syscall)	// for vm86
-	.long CSYM(sys_query_module)
+	.long CSYM(sys_ni_syscall)	// sys_query_module
 	.long CSYM(sys_poll)
 	.long CSYM(sys_nfsservctl)
 	.long CSYM(sys_setresgid)	// 170
v850/kernel/procfs.c renamed from orig/linux-2.5.48-uc0/arch/v850/kernel/procfs.c +1 -1
diff -ruN -X../cludes ../orig/linux-2.5.48-uc0/arch/v850/kernel/procfs.c arch/v850/kernel/procfs.c
@@ -24,7 +24,7 @@
 #else
 	seq_printf (m, "CPU-Model:	%s\n", CPU_MODEL);
 #endif
- 
+
 #ifdef CPU_CLOCK_FREQ
 	seq_printf (m, "CPU-Clock:	%ld (%ld MHz)\n",
 		    (long)CPU_CLOCK_FREQ,
v850/kernel/setup.c renamed from orig/linux-2.5.48-uc0/arch/v850/kernel/setup.c +10 -0
diff -ruN -X../cludes ../orig/linux-2.5.48-uc0/arch/v850/kernel/setup.c arch/v850/kernel/setup.c
@@ -270,6 +270,16 @@
 	zones_size[ZONE_DMA]
 		= ADDR_TO_PAGE (ram_len + (ram_start - PAGE_OFFSET));
 
+	/* The allocator is very picky about the address of the first
+	   allocatable page -- it must be at least as aligned as the
+	   maximum allocation -- so try to detect cases where it will get
+	   confused and signal them at compile time (this is a common
+	   problem when porting to a new platform with ).  There is a
+	   similar runtime check in free_area_init_core.  */
+#if ((PAGE_OFFSET >> PAGE_SHIFT) & ((1UL << (MAX_ORDER - 1)) - 1))
+#error MAX_ORDER is too large for given PAGE_OFFSET (use CONFIG_FORCE_MAX_ZONEORDER to change it)
+#endif
+
 	free_area_init_node (0, NODE_DATA(0), 0, zones_size,
 			     ADDR_TO_PAGE (PAGE_OFFSET), 0);
 	mem_map = NODE_DATA(0)->node_mem_map;
v850/rte_ma1_cb-ksram.ld renamed from orig/linux-2.5.48-uc0/arch/v850/rte_ma1_cb-ksram.ld +1 -1
diff -ruN -X../cludes ../orig/linux-2.5.48-uc0/arch/v850/rte_ma1_cb-ksram.ld arch/v850/rte_ma1_cb-ksram.ld
@@ -94,7 +94,7 @@
 		. = ALIGN (4) ;
 		___initcall_end = . ;
 
-		. = ALIGN (4096) ;
+		. = ALIGN (4) ;
 		___initramfs_start = . ;
 			*(.init.ramfs)
 		___initramfs_end = . ;
v850/rte_ma1_cb-rom.ld renamed from orig/linux-2.5.48-uc0/arch/v850/rte_ma1_cb-rom.ld +1 -1
diff -ruN -X../cludes ../orig/linux-2.5.48-uc0/arch/v850/rte_ma1_cb-rom.ld arch/v850/rte_ma1_cb-rom.ld
@@ -46,7 +46,7 @@
 		. = ALIGN (4) ;
 		__etext = . ;
 
-		. = ALIGN (4096) ;
+		. = ALIGN (4) ;
 		___initramfs_start = . ;
 			*(.init.ramfs)
 		___initramfs_end = . ;
v850/rte_ma1_cb.ld renamed from orig/linux-2.5.48-uc0/arch/v850/rte_ma1_cb.ld +1 -1
diff -ruN -X../cludes ../orig/linux-2.5.48-uc0/arch/v850/rte_ma1_cb.ld arch/v850/rte_ma1_cb.ld
@@ -99,7 +99,7 @@
 		. = ALIGN (4) ;
 		___initcall_end = . ;
 
-		. = ALIGN (4096) ;
+		. = ALIGN (4) ;
 		___initramfs_start = . ;
 			*(.init.ramfs)
 		___initramfs_end = . ;
v850/sim.ld renamed from orig/linux-2.5.48-uc0/arch/v850/sim.ld +1 -1
diff -ruN -X../cludes ../orig/linux-2.5.48-uc0/arch/v850/sim.ld arch/v850/sim.ld
@@ -97,7 +97,7 @@
 		. = ALIGN (4) ;
 		___initcall_end = . ;
 
-		. = ALIGN (4096) ;
+		. = ALIGN (4) ;
 		___initramfs_start = . ;
 			*(.init.ramfs)
 		___initramfs_end = . ;
v850/sim85e2c.ld renamed from orig/linux-2.5.48-uc0/arch/v850/sim85e2c.ld +1 -1
diff -ruN -X../cludes ../orig/linux-2.5.48-uc0/arch/v850/sim85e2c.ld arch/v850/sim85e2c.ld
@@ -87,7 +87,7 @@
 		. = ALIGN (4) ;
 		___initcall_end = . ;
 
-		. = ALIGN (4096) ;
+		. = ALIGN (4) ;
 		___initramfs_start = . ;
 			*(.init.ramfs)
 		___initramfs_end = . ;
v850/vmlinux.lds.S renamed from orig/linux-2.5.48-uc0/arch/v850/vmlinux.lds.S +4 -0
diff -ruN -X../cludes ../orig/linux-2.5.48-uc0/arch/v850/vmlinux.lds.S arch/v850/vmlinux.lds.S
@@ -20,6 +20,10 @@
 # endif
 #endif
 
+#ifdef CONFIG_V850E_AS85EP1
+# include "as85ep1.ld"
+#endif
+
 #ifdef CONFIG_RTE_CB_MA1
 # ifdef CONFIG_ROM_KERNEL
 #  include "rte_ma1_cb-rom.ld"
serial/Kconfig renamed from orig/linux-2.5.48-uc0/drivers/serial/Kconfig +1 -1
diff -ruN -X../cludes ../orig/linux-2.5.48-uc0/drivers/serial/Kconfig drivers/serial/Kconfig
@@ -365,7 +365,7 @@
 
 config V850E_NB85E_UART
 	bool "NEC V850E on-chip UART support"
-	depends on V850E_NB85E || V850E2_ANNA
+	depends on V850E_NB85E || V850E2_ANNA || V850E_AS85EP1
 	default y
 
 config V850E_NB85E_UART_CONSOLE
asm-v850/as85ep1.h renamed from orig/linux-2.5.48-uc0/include/asm-v850/as85ep1.h +160 -0

160 lines not on this page · raw message

asm-v850/hardirq.h renamed from orig/linux-2.5.48-uc0/include/asm-v850/hardirq.h +1 -0
diff -ruN -X../cludes ../orig/linux-2.5.48-uc0/include/asm-v850/hardirq.h include/asm-v850/hardirq.h
@@ -3,6 +3,7 @@
 
 #include <linux/config.h>
 #include <linux/threads.h>
+#include <linux/cache.h>
 
 typedef struct {
 	unsigned int __softirq_pending;
asm-v850/machdep.h renamed from orig/linux-2.5.48-uc0/include/asm-v850/machdep.h +4 -1
diff -ruN -X../cludes ../orig/linux-2.5.48-uc0/include/asm-v850/machdep.h include/asm-v850/machdep.h
@@ -24,10 +24,13 @@
 #include <asm/teg.h>
 #endif
 
-/* Anna is both a chip _and_ a platform, so put it in the middle... */
+/* These are both chips _and_ platforms, so put them in the middle... */
 #ifdef CONFIG_V850E2_ANNA
 #include <asm/anna.h>
 #endif
+#ifdef CONFIG_V850E_AS85EP1
+#include <asm/as85ep1.h>
+#endif
 
 /* platforms */
 #ifdef CONFIG_RTE_CB_MA1
asm-v850/stat.h renamed from orig/linux-2.5.48-uc0/include/asm-v850/stat.h +3 -3
diff -ruN -X../cludes ../orig/linux-2.5.48-uc0/include/asm-v850/stat.h include/asm-v850/stat.h
@@ -46,13 +46,13 @@
 	unsigned long	__unused4; /* future possible st_blocks high bits */
 
 	unsigned long	st_atime;
-	unsigned long	__unused5;
+	unsigned long	st_atime_nsec;
 
 	unsigned long	st_mtime;
-	unsigned long	__unused6;
+	unsigned long	st_mtime_nsec;
 
 	unsigned long	st_ctime;
-	unsigned long	__unused7; /* high 32 bits of ctime someday */
+	unsigned long	st_ctime_nsec;
 
 	unsigned long	__unused8;
 };
asm-v850/unistd.h renamed from orig/linux-2.5.48-uc0/include/asm-v850/unistd.h +35 -10

73 lines not on this page · raw message

Thanks,

-Miles

Signature · 1 line
自らを空にして、心を開く時、道は開かれる
#2 lore raw

Hi Miles,

Quoted 1 line · Miles Bader

Here's a v850 update for 2.5.48-uc0 (3 new files):

Got it.

Thanks
Greg

------------------------------------------------------------------------
Greg Ungerer -- Chief Software Wizard EMAIL: [email protected]
SnapGear Pty Ltd PHONE: +61 7 3435 2888
825 Stanley St, FAX: +61 7 3891 3630
Woolloongabba, QLD, 4102, Australia WEB: www.SnapGear.com