1. 17 May, 2016 2 commits
  2. 18 Apr, 2016 1 commit
  3. 20 Jan, 2016 1 commit
  4. 19 Jan, 2016 1 commit
  5. 14 Dec, 2015 1 commit
  6. 09 Nov, 2015 1 commit
    • Måns Rullgård's avatar
      Replace "extern inline" with "static inline" · 44d0677a
      Måns Rullgård authored
      A number of headers define functions as "extern inline" which is
      causing problems with gcc5.  The reason is that starting with
      version 5.1, gcc defaults to the standard C99 semantics for the
      inline keyword.
      
      Under the traditional GNU inline semantics, an "extern inline"
      function would never create an external definition, the same
      as inline *without* extern in C99.  In C99, and "extern inline"
      definition is simply an external definition with an inline hint.
      In short, the meanings of inline with and without extern are
      swapped between GNU and C99.
      
      The upshot is that all these definitions in header files create
      an external definition wherever those headers are included,
      resulting in multiple definition errors at link time.
      
      Changing all these functions to "static inline" fixes the problem
      since this works as desired in all gcc versions.  Although the
      semantics are slightly different (a static inline definition may
      result in an actual function being emitted), it works as intended
      in practice.
      
      This patch also removes extern prototype declarations for the
      changed functions where they existed.
      Signed-off-by: 's avatarMans Rullgard <mans@mansr.com>
      44d0677a
  7. 05 Nov, 2015 1 commit
  8. 13 Aug, 2015 1 commit
  9. 12 May, 2015 1 commit
  10. 23 Apr, 2015 1 commit
  11. 28 Mar, 2015 11 commits
  12. 06 Mar, 2015 3 commits
  13. 13 Jan, 2015 1 commit
  14. 08 Dec, 2014 1 commit
  15. 13 Sep, 2014 1 commit
  16. 30 Jul, 2014 3 commits
    • Masahiro Yamada's avatar
      kconfig: delete redundant CONFIG_${ARCH} definition · 90f984e3
      Masahiro Yamada authored
      CONFIG_${ARCH} is defined by Kconfig.
      Signed-off-by: 's avatarMasahiro Yamada <yamada.m@jp.panasonic.com>
      Reviewed-by: 's avatarSimon Glass <sjg@chromium.org>
      90f984e3
    • Masahiro Yamada's avatar
      kconfig: switch to Kconfig · 51148790
      Masahiro Yamada authored
      This commit enables Kconfig.
      Going forward, we use Kconfig for the board configuration.
      mkconfig will never be used. Nor will include/config.mk be generated.
      
      Kconfig must be adjusted for U-Boot because our situation is
      a little more complicated than Linux Kernel.
      We have to generate multiple boot images (Normal, SPL, TPL)
      from one source tree.
      Each image needs its own configuration input.
      
      Usage:
      
      Run "make <board>_defconfig" to do the board configuration.
      
      It will create the .config file and additionally spl/.config, tpl/.config
      if SPL, TPL is enabled, respectively.
      
      You can use "make config", "make menuconfig" etc. to create
      a new .config or modify the existing one.
      
      Use "make spl/config", "make spl/menuconfig" etc. for spl/.config
      and do likewise for tpl/.config file.
      
      The generic syntax of configuration targets for SPL, TPL is:
      
        <target_image>/<config_command>
      
      Here, <target_image> is either 'spl' or 'tpl'
            <config_command> is 'config', 'menuconfig', 'xconfig', etc.
      
      When the configuration is done, run "make".
      (Or "make <board>_defconfig all" will do the configuration and build
      in one time.)
      
      For futher information of how Kconfig works in U-Boot,
      please read the comment block of scripts/multiconfig.py.
      
      By the way, there is another item worth remarking here:
      coexistence of Kconfig and board herder files.
      
      Prior to Kconfig, we used C headers to define a set of configs.
      
      We expect a very long term to migrate from C headers to Kconfig.
      Two different infractructure must coexist in the interim.
      
      In our former configuration scheme, include/autoconf.mk was generated
      for use in makefiles.
      It is still generated under include/, spl/include/, tpl/include/ directory
      for the Normal, SPL, TPL image, respectively.
      Signed-off-by: 's avatarMasahiro Yamada <yamada.m@jp.panasonic.com>
      Acked-by: 's avatarSimon Glass <sjg@chromium.org>
      51148790
    • Masahiro Yamada's avatar
      kconfig: add board Kconfig and defconfig files · dd84058d
      Masahiro Yamada authored
      This commit adds:
       - arch/${ARCH}/Kconfig
          provide a menu to select target boards
       - board/${VENDOR}/${BOARD}/Kconfig or board/${BOARD}/Kconfig
          set CONFIG macros to the appropriate values for each board
       - configs/${TARGET_BOARD}_defconfig
          default setting of each board
      
      (This commit was automatically generated by a conversion script
      based on boards.cfg)
      
      In Linux Kernel, defconfig files are located under
      arch/${ARCH}/configs/ directory.
      It works in Linux Kernel since ARCH is always given from the
      command line for cross compile.
      
      But in U-Boot, ARCH is not given from the command line.
      Which means we cannot know ARCH until the board configuration is done.
      That is why all the "*_defconfig" files should be gathered into a
      single directory ./configs/.
      Signed-off-by: 's avatarMasahiro Yamada <yamada.m@jp.panasonic.com>
      Acked-by: 's avatarSimon Glass <sjg@chromium.org>
      dd84058d
  17. 22 Jul, 2014 1 commit
    • Masahiro Yamada's avatar
      m68k: define __kernel_size_t as unsinged int again · fbe79a17
      Masahiro Yamada authored
      Commit ddc94378 changed the definition of __kernel_size_t
      from unsigned int to unsigned long.
      
      It is true that it fixed warnings on some crosstools
      but it increased warnings on the others.
      
      The problem is that we cannot see consistency in terms of
      the typedef of __kernel_size_t on M68K architecture.
      
      However, I'd like to suggest to have __kernel_size_t to be
      unsigned int again.
      
      Rationale:
      
      [1] Linux Kernel defines __kernel_size_t on M68K as unsigned int.
          Let's stick to the Linux's way.
      
      [2] We want to build boards with popular pre-built toolchains,
          not the one locally-built by indivisuals.
          I think m68-linux-gcc which can be downloaded from www.kernel.org
          is the candidate for our _recommended_ toolchains.
      
      With this patch, all the m68k boards can be built without any warnings.
      
      Give it a try with the following crosstools:
      
      https://www.kernel.org/pub/tools/crosstool/files/bin/x86_64/4.6.3/
      x86_64-gcc-4.6.3-nolibc_m68k-linux.tar.xz
      
      or
      
      https://www.kernel.org/pub/tools/crosstool/files/bin/x86_64/4.9.0/
      x86_64-gcc-4.9.0-nolibc_m68k-linux.tar.xz
      
      (The latter is newer.)
      Signed-off-by: 's avatarMasahiro Yamada <yamada.m@jp.panasonic.com>
      Cc: Simon Glass <sjg@chromium.org>
      Cc: Jason Jin <Jason.jin@freescale.com>
      fbe79a17
  18. 07 Jul, 2014 2 commits
    • Vasili Galka's avatar
      m68k: Fix incorrect memory access on M5235 · fa28179d
      Vasili Galka authored
      The csarX and cscrX registers in the fbcs_t struct are 16-bit for
      CONFIG_M5235 and 32-bit wide otherwise. The code in cpu_init.c
      accessed them always as 32-bit, effectively creating a wrong memory
      access on M5235. Fixed that by choosing out_be16/out_be32 depending
      on whether CONFIG_M5235 is defined or not.
      
      Cc: Jason Jin <Jason.jin@freescale.com>
      Signed-off-by: 's avatarVasili Galka <vvv444@gmail.com>
      fa28179d
    • Vasili Galka's avatar
      m68k: Fix bug, "address of" operator was forgotten · 6b02d06f
      Vasili Galka authored
      in_be16() shall be passed a pointer to register and not its value. This
      is clearly a typo resulting in a wrong memory access, so fix it.
      
      Cc: Alison Wang <b18965@freescale.com>, Jason Jin <Jason.jin@freescale.com>
      Signed-off-by: 's avatarVasili Galka <vvv444@gmail.com>
      6b02d06f
  19. 19 Jun, 2014 3 commits
  20. 11 Jun, 2014 1 commit
    • Simon Glass's avatar
      m68k: Fix warnings with gcc 4.6 · ddc94378
      Simon Glass authored
      Most of the warnings seem to be related to using 'int' for size_t. Change
      this and fix up the remaining warnings and problems. For bootm, the warning
      was masked by others, and there is an actual bug in the code.
      Signed-off-by: 's avatarSimon Glass <sjg@chromium.org>
      ddc94378
  21. 29 May, 2014 1 commit
  22. 12 May, 2014 1 commit
    • Masahiro Yamada's avatar
      bd_info: remove bi_barudrate member from struct bd_info · 8e261575
      Masahiro Yamada authored
      gd->bd->bi_baudrate is a copy of gd->baudrate.
      
      Since baudrate is a common feature for all architectures,
      keep gd->baudrate only.
      
      It is true that bi_baudrate was passed to the kernel in that structure
      but it was a long time ago.
      Signed-off-by: 's avatarMasahiro Yamada <yamada.m@jp.panasonic.com>
      Cc: Tom Rini <trini@ti.com>
      Cc: Simon Glass <sjg@chromium.org>
      Cc: Wolfgang Denk <wd@denx.de>
      Cc: Heiko Schocher <hs@denx.de>
      Acked-by: Michal Simek <monstr@monstr.eu> (For microblaze)
      8e261575