Skip to contentSkip to conversation

H8/300 support update

PATCH New Yoshinori Sato 1 participant 1 message Oct 16, 2003

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 H8/300 support update

- document update
- fix semaphoe probrem
- fix config

Signature · 2 lines
Yoshinori Sato
<[email protected]>
arch/h8300/Kconfig +1 -1
diff -Nru linux-2.6.0-test7/arch/h8300/Kconfig linux-2.6.0-test7-h8300/arch/h8300/Kconfig
@@ -341,8 +341,8 @@
 
 endmenu
 
-#source drivers/misc/Config.in
 source "drivers/media/Kconfig"
+source "sound/Kconfig"
 
 source "fs/Kconfig"
 
arch/h8300/README +10 -8
diff -Nru linux-2.6.0-test7/arch/h8300/README linux-2.6.0-test7-h8300/arch/h8300/README
@@ -1,9 +1,8 @@
-uClinux-2.4 for H8/300 README
+linux-2.6 for H8/300 README
 Yoshinori Sato <[email protected]>
 
 * Supported CPU
-H8/300H
-H8S is planning.
+H8/300H and H8S
 
 * Supported Target
 1.simulator of GDB
@@ -15,8 +14,11 @@
   Akizuki Denshi Tsusho Ltd. <http://www.akizuki.ne.jp> (Japanese Only)
 
 3.H8MAX 
-  Under development
-  see http://www.strawberry-linux.com (Japanese Only)
+  see http://ip-sol.jp/h8max/ (Japanese Only)
+
+4.EDOSK2674
+  see http://www.eu.renesas.com/products/mpumcu/tool/edk/support/edosk2674.html
+      http://www.azpower.com/H8-uClinux/
 
 * Toolchain Version
 gcc-3.1 or higher and patch
@@ -26,10 +28,10 @@
 The environment that can compile a h8300-elf binary is necessary.
 
 * Userland Develop environment
-Tempolary used h8300-hms(h8300-coff) Toolchain.
-I prepare toolchain corresponding to h8300-elf.
+used h8300-elf toolchains.
+see http://www.uclinux.org/pub/uClinux/ports/h8/
 
 * A few words of thanks
-Porting to H8/300H is support of Information-technology Promotion Agency, Japan.
+Porting to H8/300 serieses is support of Information-technology Promotion Agency, Japan.
 I thank support.
 and All developer/user.
arch/h8300/lib/romfs.S +6 -0
diff -Nru linux-2.6.0-test7/arch/h8300/lib/romfs.S linux-2.6.0-test7-h8300/arch/h8300/lib/romfs.S
@@ -1,6 +1,7 @@
 /* romfs move to __ebss */
 
 #include <asm/linkage.h>
+#include <linux/config.h>
 
 #if defined(__H8300H__) 
 	.h8300h
@@ -9,6 +10,8 @@
 	.h8300s
 #endif
 
+#define BLKOFFSET 512
+
 	.text
 .globl	__move_romfs
 _romfs_sig_len = 8
@@ -31,6 +34,9 @@
 	add.l	er0,er1			/* romfs image end */
 	mov.l	#__ebss,er2
 	add.l	er0,er2			/* distination address */
+#if defined(CONFIG_INTELFLASH)
+	add.l	#BLKOFFSET,er2
+#endif
 	adds	#2,er0
 	adds	#1,er0
 	shlr	er0
arch/h8300/platform/h8s/ints.c +2 -3
diff -Nru linux-2.6.0-test7/arch/h8300/platform/h8s/ints.c linux-2.6.0-test7-h8300/arch/h8300/platform/h8s/ints.c
@@ -1,5 +1,5 @@
 /*
- * linux/arch/h8300/platform/h8sh/ints.c
+ * linux/arch/h8300/platform/h8s/ints.c
  *
  * Yoshinori Sato <[email protected]>
  *
@@ -20,7 +20,6 @@
 #include <linux/kernel_stat.h>
 #include <linux/seq_file.h>
 #include <linux/init.h>
-#include <linux/slab.h>
 #include <linux/bootmem.h>
 #include <linux/random.h>
 
@@ -75,7 +74,7 @@
 	{H8300_GPIO_P2,H8300_GPIO_B6},{H8300_GPIO_P2,H8300_GPIO_B7},
 };
 
-static int use_kmalloc;
+static short use_kmalloc = 0;
 
 extern unsigned long *interrupt_redirect_table;
 
include/asm-h8300/semaphore.h +8 -4
diff -Nru linux-2.6.0-test7/include/asm-h8300/semaphore.h linux-2.6.0-test7-h8300/include/asm-h8300/semaphore.h
@@ -101,13 +101,14 @@
 		"mov.l er1,%0\n\t"
 		"bpl 1f\n\t"
 		"ldc r3l,ccr\n\t"
+		"mov.l %1,er0\n\t"
 		"jsr @___down\n\t"
 		"bra 2f\n"
 		"1:\n\t"
 		"ldc r3l,ccr\n"
 		"2:"
 		: "+m"(*count)
-		: 
+		: "g"(sem)
 		: "cc",  "er1", "er2", "er3");
 }
 
@@ -129,6 +130,7 @@
 		"mov.l er2,%1\n\t"
 		"bpl 1f\n\t"
 		"ldc r1l,ccr\n\t"
+		"mov.l %2,er0\n\t"
 		"jsr @___down_interruptible\n\t"
 		"bra 2f\n"
 		"1:\n\t"
@@ -136,7 +138,7 @@
 		"sub.l %0,%0\n\t"
 		"2:\n\t"
 		: "=r" (count),"+m" (*count)
-		:
+		: "g"(sem)
 		: "cc", "er1", "er2", "er3");
 	return (int)count;
 }
@@ -161,6 +163,7 @@
 		"jmp @3f\n\t"
 		LOCK_SECTION_START(".align 2\n\t")
 		"3:\n\t"
+		"mov.l %2,er0\n\t"
 		"jsr @___down_trylock\n\t"
 		"jmp @2f\n\t"
 		LOCK_SECTION_END
@@ -169,7 +172,7 @@
 		"sub.l %1,%1\n"
 		"2:"
 		: "+m" (*count),"=r"(count)
-		: 
+		: "g"(sem)
 		: "cc", "er1","er2", "er3");
 	return (int)count;
 }
@@ -199,10 +202,11 @@
 		"sub.l er2,er2\n\t"
 		"cmp.l er2,er1\n\t"
 		"bgt 1f\n\t"
+		"mov.l %1,er0\n\t"
 		"jsr @___up\n"
 		"1:"
 		: "+m"(*count)
-		: 
+		: "g"(sem)
 		: "cc", "er1", "er2", "er3");
 }