[PATCH v2] powerpc/boot: pass CONFIG options in a simpler and more robust way

Masahiro Yamada yamada.masahiro at socionext.com
Fri Jul 5 19:59:11 AEST 2019


On Thu, Jul 4, 2019 at 9:26 AM Michael Ellerman <mpe at ellerman.id.au> wrote:
>
> Masahiro Yamada <yamada.masahiro at socionext.com> writes:
>
> > Commit 5e9dcb6188a4 ("powerpc/boot: Expose Kconfig symbols to wrapper")
> > was wrong, but commit e41b93a6be57 ("powerpc/boot: Fix build failures
> > with -j 1") was also wrong.
> >
> > The correct dependency is:
> >
> >   $(obj)/serial.o: $(obj)/autoconf.h
> >
> > However, I do not see the reason why we need to copy autoconf.h to
> > arch/power/boot/. Nor do I see consistency in the way of passing
> > CONFIG options.
> >
> > decompress.c references CONFIG_KERNEL_GZIP and CONFIG_KERNEL_XZ, which
> > are passed via the command line.
> >
> > serial.c includes autoconf.h to reference a couple of CONFIG options,
> > but this is fragile because we often forget to include "autoconf.h"
> > from source files.
> >
> > In fact, it is already broken.
> >
> > ppc_asm.h references CONFIG_PPC_8xx, but utils.S is not given any way
> > to access CONFIG options. So, CONFIG_PPC_8xx is never defined here.
> >
> > Pass $(LINUXINCLUDE) to make sure CONFIG options are accessible from
> > all .c and .S files in arch/powerpc/boot/.
>
> This breaks our skiroot_defconfig, I don't know why yet:
>
>   In file included from /kisskb/src/arch/powerpc/boot/../../../lib/decompress_unxz.c:236:0,
>                    from /kisskb/src/arch/powerpc/boot/decompress.c:42:
>   /kisskb/src/arch/powerpc/boot/../../../lib/xz/xz_dec_bcj.c: In function 'bcj_powerpc':
>   /kisskb/src/arch/powerpc/boot/../../../lib/xz/xz_dec_bcj.c:166:11: warning: implicit declaration of function 'get_unaligned_be32' [-Wimplicit-function-declaration]
>      instr = get_unaligned_be32(buf + i);


OK, now I see the cause of the error.

I will insert a new patch in v3.

Thanks.


>
> http://kisskb.ellerman.id.au/kisskb/buildresult/13862914/
>
> cheers



-- 
Best Regards
Masahiro Yamada


More information about the Linuxppc-dev mailing list