Browse Source

rework serial support for h8300 sim and qemu support

Waldemar Brodkorb 8 years ago
parent
commit
8e636decd8

+ 0 - 2
target/config/Config.in

@@ -20,11 +20,9 @@ config ADK_TARGET_UCLINUX
 
 config ADK_TARGET_SIM
 	bool
-	select ADK_TARGET_WITH_SERIAL
 
 config ADK_TARGET_QEMU
 	bool
-	select ADK_TARGET_WITH_SERIAL
 
 config ADK_TARGET_VBOX
 	bool

+ 15 - 5
target/config/Config.in.runtime

@@ -108,7 +108,9 @@ config ADK_RUNTIME_VERBOSE_KERNEL_VGA_ONLY
 
 config ADK_RUNTIME_VERBOSE_KERNEL_SERIAL_ONLY
 	bool "output via serial console only"
-	depends on ADK_TARGET_WITH_SERIAL
+	depends on ADK_TARGET_WITH_SERIAL \
+		|| ADK_TARGET_QEMU \
+		|| ADK_TARGET_SIM
 
 config ADK_RUNTIME_VERBOSE_KERNEL_VGA_SERIAL
 	bool "output via VGA and serial console"
@@ -147,7 +149,9 @@ config ADK_RUNTIME_VERBOSE_INIT_VGA
 
 config ADK_RUNTIME_VERBOSE_INIT_SERIAL
 	bool "output via serial"
-	depends on ADK_TARGET_WITH_SERIAL
+	depends on ADK_TARGET_WITH_SERIAL \
+		|| ADK_TARGET_QEMU \
+		|| ADK_TARGET_SIM
 	depends on ADK_RUNTIME_VERBOSE_KERNEL_VGA_SERIAL || \
 		   ADK_RUNTIME_VERBOSE_KERNEL_SERIAL_ONLY || \
 		   ADK_RUNTIME_QUIET_KERNEL
@@ -196,7 +200,9 @@ config ADK_RUNTIME_GETTY_VGA
 
 config ADK_RUNTIME_GETTY_SERIAL
 	bool "start getty on serial console"
-	depends on ADK_RUNTIME_GETTY && ADK_TARGET_WITH_SERIAL
+	depends on ADK_RUNTIME_GETTY && ( ADK_TARGET_WITH_SERIAL \
+		|| ADK_TARGET_QEMU \
+		|| ADK_TARGET_SIM )
 	default n if ADK_TARGET_QEMU_WITH_GRAPHIC_ONLY
 	default n if ADK_TARGET_QEMU_WITH_GRAPHIC
 	default n if ADK_TARGET_SYSTEM_RASPBERRY_PI
@@ -218,7 +224,9 @@ config ADK_RUNTIME_CONSOLE_VGA_DEVICE
 
 config ADK_RUNTIME_CONSOLE_SERIAL_DEVICE
 	string "serial console device"
-	depends on ADK_TARGET_WITH_SERIAL
+	depends on ADK_TARGET_WITH_SERIAL \
+		|| ADK_TARGET_QEMU \
+		|| ADK_TARGET_SIM
 	default "hvc0" if ADK_TARGET_SYSTEM_QEMU_PPC64
 	default "ttyUL0" if ADK_TARGET_QEMU_MICROBLAZE_MODEL_S3ADSP1800
 	default "ttyAMA0" if ADK_TARGET_QEMU_ARM_MODEL_VERSATILEPB || ADK_TARGET_QEMU_ARM_MODEL_VEXPRESS_A9 || ADK_TARGET_SYSTEM_ARM_FM || ADK_TARGET_SYSTEM_QEMU_AARCH64
@@ -231,7 +239,9 @@ config ADK_RUNTIME_CONSOLE_SERIAL_DEVICE
 
 config ADK_RUNTIME_CONSOLE_SERIAL_SPEED
 	string "serial console speed"
-	depends on ADK_TARGET_WITH_SERIAL
+	depends on ADK_TARGET_WITH_SERIAL \
+		|| ADK_TARGET_QEMU \
+		|| ADK_TARGET_SIM
 	default "9600" if ADK_TARGET_SYSTEM_FON_FON2100
 	default "38400" if ADK_TARGET_SYSTEM_PCENGINES_WRAP	
 	default "115200"

+ 9 - 3
target/h8300/Makefile

@@ -8,6 +8,7 @@ include $(ADK_TOPDIR)/mk/kernel-build.mk
 include $(ADK_TOPDIR)/mk/image.mk
 
 KERNEL:=$(LINUX_DIR)/vmlinux
+OSTRIP:=-R .reginfo -R .notes -R .note -R .comment -R .mdebug -R .note.gnu.build-id
 
 # target helper text
 ifeq ($(ADK_TARGET_FS),initramfs)
@@ -25,15 +26,20 @@ targethelp:
 	@echo 'The kernel+initramfs file is: $(FW_DIR)/${TARGET_KERNEL}'
 ifeq ($(ADK_TARGET_SIM),y)
 	@echo "Run the simulator via:"
-	@echo '$(TARGET_CROSS)run $(FW_DIR)/$(TARGET_KERNEL) "earlyprintk=h8300-sim console=ttySC0"'
+	@echo '$(TARGET_CROSS)gdb $(FW_DIR)/$(TARGET_KERNEL)'
+	@echo 'target sim'
+	@echo 'sim intmode 1'
+	@echo 'sim sci pty'
+	@echo 'load'
+	@echo 'run earlyprintk=h8300-sim console=ttySC0'
 endif
 endif
 
 kernel-strip:
-	@cp $(KERNEL) $(BUILD_DIR)/$(TARGET_KERNEL)
+	$(TARGET_CROSS)objcopy $(OSTRIP) -S $(KERNEL) $(BUILD_DIR)/$(TARGET_KERNEL)
 
 kernel-install: kernel-strip
-	@cp $(KERNEL) $(FW_DIR)/$(TARGET_KERNEL)
+	@cp $(BUILD_DIR)/$(TARGET_KERNEL) $(FW_DIR)/$(TARGET_KERNEL)
 
 # filesystem specific targets
 ifeq ($(ADK_TARGET_FS),initramfs)

+ 0 - 2
target/h8300/kernel/sim-h8300h

@@ -1,4 +1,2 @@
 CONFIG_H8300H_SIM=y
 CONFIG_H8300_BUILTIN_DTB="h8300h_sim"
-CONFIG_SERIAL_SH_SCI=y
-CONFIG_SERIAL_SH_SCI_CONSOLE=y

+ 13 - 1
target/linux/config/Config.in.serial

@@ -1,5 +1,5 @@
 menu "Serial devices support"
-depends on ADK_TARGET_WITH_SERIAL || ADK_TARGET_QEMU || ADK_TARGET_VBOX
+depends on ADK_TARGET_WITH_SERIAL || ADK_TARGET_QEMU || ADK_TARGET_VBOX || ADK_TARGET_SIM
 
 config ADK_KERNEL_SERIAL_8250_CONSOLE
 	bool
@@ -19,6 +19,9 @@ config ADK_KERNEL_SERIAL_PMACZILOG_TTYS
 config ADK_KERNEL_SERIAL_PMACZILOG_CONSOLE
 	bool
 
+config ADK_KERNEL_SERIAL_SH_SCI_CONSOLE
+	bool
+
 config ADK_KERNEL_SERIAL_ETRAXFS
 	bool "ETRAXFS serial driver"
 	select ADK_KERNEL_SERIAL_ETRAXFS_CONSOLE
@@ -41,6 +44,15 @@ config ADK_KERNEL_SERIAL_8250
 	help
 	  Serial driver for 8250 UART chip.
 
+config ADK_KERNEL_SERIAL_SH_SCI
+	bool "sci serial driver"
+	select ADK_KERNEL_SERIAL_SH_SCI_CONSOLE
+	depends on ADK_TARGET_SYSTEM_SIM_H8300H
+	default y if ADK_TARGET_SYSTEM_SIM_H8300H
+	default n
+	help
+	  Serial driver for SCI chip.
+
 config ADK_KERNEL_SERIAL_PMACZILOG
 	bool "pmac serial driver"
 	select ADK_KERNEL_SERIAL_PMACZILOG_TTYS