Re: [PATCH 3/3] MIPS: ath79: Add zboot debug serial support
From: Antony Pavlov
Date: Fri Jan 08 2016 - 04:03:32 EST
On Thu, 10 Dec 2015 10:57:22 +0100
Alban Bedel <albeu@xxxxxxx> wrote:
> Reuse the early printk code to support the serial in zboot. We copy
> early_printk.c instead of referencing it because we need to build a
> different object file for the normal kernel and zboot.
>
> Signed-off-by: Alban Bedel <albeu@xxxxxxx>
> ---
> arch/mips/Kconfig | 2 +-
> arch/mips/boot/compressed/Makefile | 4 ++++
> 2 files changed, 5 insertions(+), 1 deletion(-)
>
> diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
> index ef1d665..bb2987b 100644
> --- a/arch/mips/Kconfig
> +++ b/arch/mips/Kconfig
> @@ -138,7 +138,7 @@ config ATH79
> select SYS_SUPPORTS_32BIT_KERNEL
> select SYS_SUPPORTS_BIG_ENDIAN
> select SYS_SUPPORTS_MIPS16
> - select SYS_SUPPORTS_ZBOOT
> + select SYS_SUPPORTS_ZBOOT_UART_PROM
> select USE_OF
> help
> Support for the Atheros AR71XX/AR724X/AR913X SoCs.
> diff --git a/arch/mips/boot/compressed/Makefile b/arch/mips/boot/compressed/Makefile
> index 4eff1ef..f648bf7 100644
> --- a/arch/mips/boot/compressed/Makefile
> +++ b/arch/mips/boot/compressed/Makefile
> @@ -37,8 +37,12 @@ vmlinuzobjs-$(CONFIG_DEBUG_ZBOOT) += $(obj)/dbg.o
> vmlinuzobjs-$(CONFIG_SYS_SUPPORTS_ZBOOT_UART16550) += $(obj)/uart-16550.o
> vmlinuzobjs-$(CONFIG_SYS_SUPPORTS_ZBOOT_UART_PROM) += $(obj)/uart-prom.o
> vmlinuzobjs-$(CONFIG_MIPS_ALCHEMY) += $(obj)/uart-alchemy.o
> +vmlinuzobjs-$(CONFIG_ATH79) += $(obj)/uart-ath79.o
> endif
>
> +$(obj)/uart-ath79.c: $(srctree)/arch/mips/ath79/early_printk.c
> + $(call cmd,shipped)
> +
> vmlinuzobjs-$(CONFIG_KERNEL_XZ) += $(obj)/ashldi3.o
>
> $(obj)/ashldi3.o: KBUILD_CFLAGS += -I$(srctree)/arch/mips/lib
> --
> 2.0.0
>
This patch has a side effect: git untracked file arch/mips/boot/compressed/uart-ath79.c after build.
This untracked file is not removed by 'make mrproper'.
Here is my build log:
$ git clone -b ath79 https://github.com/AlbanBedel/linux
...
$ cd linux
linux$ make ARCH=mips ath79_defconfig
...
linux$ grep -w CONFIG_DEBUG_ZBOOT .config
# CONFIG_DEBUG_ZBOOT is not set
linux$ sed -i "s/^# \(CONFIG_DEBUG_ZBOOT\) .*$/\1=y/" .config
linux$ make ARCH=mips oldconfig
linux$ grep -w CONFIG_DEBUG_ZBOOT .config
CONFIG_DEBUG_ZBOOT=y
linux$ git status
On branch ath79
Your branch is up-to-date with 'origin/ath79'.
nothing to commit, working directory clean
linux$ make -s ARCH=mips CROSS_COMPILE=mips-linux-gnu- vmlinuz
...
linux$ git status
On branch ath79
Your branch is up-to-date with 'origin/ath79'.
Untracked files:
(use "git add <file>..." to include in what will be committed)
arch/mips/boot/compressed/uart-ath79.c
nothing added to commit but untracked files present (use "git add" to track)
linux$ make ARCH=mips mrproper
...
linux$ git status
On branch ath79
Your branch is up-to-date with 'origin/ath79'.
Untracked files:
(use "git add <file>..." to include in what will be committed)
arch/mips/boot/compressed/uart-ath79.c
nothing added to commit but untracked files present (use "git add" to track)
--
Best regards,
Antony Pavlov