02 Oct, 2018

1 commit

  • There is nothing arch specific about building dtb files other than their
    location under /arch/*/boot/dts/. Keeping each arch aligned is a pain.
    The dependencies and supported targets are all slightly different.
    Also, a cross-compiler for each arch is needed, but really the host
    compiler preprocessor is perfectly fine for building dtbs. Move the
    build rules to a common location and remove the arch specific ones. This
    is done in a single step to avoid warnings about overriding rules.

    The build dependencies had been a mixture of 'scripts' and/or 'prepare'.
    These pull in several dependencies some of which need a target compiler
    (specifically devicetable-offsets.h) and aren't needed to build dtbs.
    All that is really needed is dtc, so adjust the dependencies to only be
    dtc.

    This change enables support 'dtbs_install' on some arches which were
    missing the target.

    Acked-by: Will Deacon
    Acked-by: Paul Burton
    Acked-by: Ley Foon Tan
    Acked-by: Masahiro Yamada
    Cc: Michal Marek
    Cc: Vineet Gupta
    Cc: Russell King
    Cc: Catalin Marinas
    Cc: Yoshinori Sato
    Cc: Michal Simek
    Cc: Ralf Baechle
    Cc: James Hogan
    Cc: Benjamin Herrenschmidt
    Cc: Paul Mackerras
    Cc: Michael Ellerman
    Cc: Chris Zankel
    Cc: Max Filippov
    Cc: linux-kbuild@vger.kernel.org
    Cc: linux-snps-arc@lists.infradead.org
    Cc: linux-arm-kernel@lists.infradead.org
    Cc: uclinux-h8-devel@lists.sourceforge.jp
    Cc: linux-mips@linux-mips.org
    Cc: nios2-dev@lists.rocketboards.org
    Cc: linuxppc-dev@lists.ozlabs.org
    Cc: linux-xtensa@linux-xtensa.org
    Signed-off-by: Rob Herring

    Rob Herring
     

24 Aug, 2018

1 commit

  • Commit a0f97e06a43c ("kbuild: enable 'make CFLAGS=...' to add
    additional options to CC") renamed CFLAGS to KBUILD_CFLAGS.

    Commit 222d394d30e7 ("kbuild: enable 'make AFLAGS=...' to add
    additional options to AS") renamed AFLAGS to KBUILD_AFLAGS.

    Commit 06c5040cdb13 ("kbuild: enable 'make CPPFLAGS=...' to add
    additional options to CPP") renamed CPPFLAGS to KBUILD_CPPFLAGS.

    For some reason, LDFLAGS was not renamed.

    Using a well-known variable like LDFLAGS may result in accidental
    override of the variable.

    Kbuild generally uses KBUILD_ prefixed variables for the internally
    appended options, so here is one more conversion to sanitize the
    naming convention.

    I did not touch Makefiles under tools/ since the tools build system
    is a different world.

    Signed-off-by: Masahiro Yamada
    Acked-by: Kirill A. Shutemov
    Reviewed-by: Palmer Dabbelt

    Masahiro Yamada
     

10 Apr, 2018

1 commit

  • c6x depends on the macro '_BIG_ENDIAN' being defined or not
    to correctly select or define endian-specific macros, structures
    or pieces of code.

    This macro is predefined by the compiler but sparse knows nothing
    about it and thus may pre-process files differently from what
    gcc would.

    Fix this by passing '-D_BIG_ENDIAN' when compiling a big-endian
    kernel, like GCC would have done.

    To: Mark Salter
    To: Aurelien Jacquiot
    CC: linux-c6x-dev@linux-c6x.org
    Signed-off-by: Luc Van Oostenryck
    Signed-off-by: Mark Salter

    Luc Van Oostenryck
     

30 Oct, 2017

1 commit

  • As kbuild document & commit 6588169d51 says: KBUILD_CFLAGS_MODULE is
    used to add arch-specific options for $(CC). From commandline,
    CFLAGS_MODULE shall be used.
    Doesn't have any functional change, but just follow kbuild rules.

    Signed-off-by: Cao jin
    CC: Mark Salter
    CC: Aurelien Jacquiot
    CC: linux-c6x-dev@linux-c6x.org
    Signed-off-by: Masahiro Yamada

    Cao jin
     

26 Mar, 2015

1 commit

  • For gcc5 c6x raw compiler, at present, it may not define __linux__, so
    c6x kernel still needs to define __linux__ just like another archs have
    done. The related error:

    CC [M] fs/coda/psdev.o
    In file included from include/linux/coda.h:64:0,
    from fs/coda/psdev.c:45:
    include/uapi/linux/coda.h:221:2: error: unknown type name 'u_quad_t'
    u_quad_t va_size; /* file size in bytes */
    ^
    include/uapi/linux/coda.h:229:2: error: unknown type name 'u_quad_t'
    u_quad_t va_bytes; /* bytes of disk space held by file */
    ^
    include/uapi/linux/coda.h:230:2: error: unknown type name 'u_quad_t'
    u_quad_t va_filerev; /* file modification number */
    ^

    Signed-off-by: Chen Gang
    Signed-off-by: Mark Salter

    Chen Gang
     

04 Dec, 2012

1 commit

  • The current rules have the .dtb files build in a different directory
    from the .dts files. This patch changes c6x to use the generic dtb
    rule which builds .dtb files in the same directory as the source .dts.

    This requires moving parts of arch/c6x/boot/Makefile into newly created
    arch/c6x/boot/dts/Makefile, and updating arch/c6x/Makefile to call the
    new Makefile. linked_dtb.S is also moved into boot/dts/ since it's used
    by rules that were moved.

    Acked-by: Mark Salter
    Cc: Aurelien Jacquiot
    Cc: linux-c6x-dev@linux-c6x.org
    Signed-off-by: Stephen Warren
    Signed-off-by: Rob Herring

    Stephen Warren
     

04 Oct, 2012

1 commit


07 Oct, 2011

1 commit