[PATCH -queue v3] MIPS: Cleanup the debugging of compressed kernel support

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



From: Wu Zhangjin <wuzhangjin@xxxxxxxxx>

Changes from v2:

  O Not make the DEBUG_ZBOOT depend on the specific debugging support but only
  SYS_SUPPORTS_ZBOOT, which will make this option stable.
  O Keep the obj-$() work as the first revision does to allow the developers to
  add a new debugging support more conveniently.
  O Add new comment for this commit as a "manual" for the developers.

This patch adds a new DEBUG_ZBOOT option to allow the developers to debug the
compressed kernel support for a new board.

If you want to add compressed kernel support to a new board, and the board
supports uart16550 compatible serial port, please select
SYS_SUPPORTS_ZBOOT_UART16550 for your board and enable this option to debug it:

FILE: arch/mips/Kconfig

config MACH_XXX
	...
+	select SYS_SUPPORTS_ZBOOT_UART16550
	...

If your board doesn't support uart16550 compatible serial port, you can try to
select SYS_SUPPORTS_ZBOOT and use the other methods to debug it. for example,
add a new serial port support just as arch/mips/boot/compressed/uart-16550.c
does:

FILE: arch/mips/Kconfig

config MACH_XXX
	...
+	select SYS_SUPPORTS_ZBOOT_UARTXXX
	...

+config SYS_SUPPORTS_ZBOOT_UARTXXX
+	bool
+	select SYS_SUPPORTS_ZBOOT

FILE: arch/mips/boot/compressed/Makefile

ifdef DEBUG_ZBOOT
obj-$(CONFIG_SYS_SUPPORTS_ZBOOT_UART16550) += $(obj)/uart-16550.o
+obj-$(CONFIG_SYS_SUPPORTS_ZBOOT_UARTXXX) += $(obj)/uart-xxx.o
endif

FILE(new): arch/mips/boot/compressed/uart-xxx.c

After the compressed kernel support works, please disable this option to reduce
the kernel image size and speed up the booting procedure a little.

Signed-off-by: Wu Zhangjin <wuzhangjin@xxxxxxxxx>
---
 arch/mips/Kconfig.debug            |   18 ++++++++++++++++++
 arch/mips/boot/compressed/Makefile |    2 ++
 2 files changed, 20 insertions(+), 0 deletions(-)

diff --git a/arch/mips/Kconfig.debug b/arch/mips/Kconfig.debug
index d2b88a0..6fccbf0 100644
--- a/arch/mips/Kconfig.debug
+++ b/arch/mips/Kconfig.debug
@@ -102,4 +102,22 @@ config RUNTIME_DEBUG
 	  arch/mips/include/asm/debug.h for debugging macros.
 	  If unsure, say N.
 
+config DEBUG_ZBOOT
+	bool "Enable compressed kernel support debugging"
+	depends on DEBUG_KERNEL && SYS_SUPPORTS_ZBOOT
+	help
+	  If you want to add compressed kernel support to a new board, and the
+	  board supports uart16550 compatible serial port, please select
+	  SYS_SUPPORTS_ZBOOT_UART16550 for your board and enable this option to
+	  debug it.
+
+	  If your board doesn't support uart16550 compatible serial port, you
+	  can try to select SYS_SUPPORTS_ZBOOT and use the other methods to
+	  debug it. for example, add a new serial port support just as
+	  arch/mips/boot/compressed/uart-16550.c does.
+
+	  After the compressed kernel support works, please disable this option
+	  to reduce the kernel image size and speed up the booting procedure a
+	  little.
+
 endmenu
diff --git a/arch/mips/boot/compressed/Makefile b/arch/mips/boot/compressed/Makefile
index 91a57a6..b27d12a 100644
--- a/arch/mips/boot/compressed/Makefile
+++ b/arch/mips/boot/compressed/Makefile
@@ -32,7 +32,9 @@ KBUILD_AFLAGS := $(LINUXINCLUDE) $(KBUILD_AFLAGS) -D__ASSEMBLY__ \
 
 obj-y := $(obj)/head.o $(obj)/decompress.o $(obj)/dbg.o
 
+ifdef DEBUG_ZBOOT
 obj-$(CONFIG_SYS_SUPPORTS_ZBOOT_UART16550) += $(obj)/uart-16550.o
+endif
 
 OBJCOPYFLAGS_vmlinux.bin := $(OBJCOPYFLAGS) -O binary -R .comment -S
 $(obj)/vmlinux.bin: $(KBUILD_IMAGE)
-- 
1.6.6



[Index of Archives]     [Linux MIPS Home]     [LKML Archive]     [Linux ARM Kernel]     [Linux ARM]     [Linux]     [Git]     [Yosemite News]     [Linux SCSI]     [Linux Hams]

  Powered by Linux