1. 05 8月, 2016 1 次提交
    • T
      ARM: Rework and correct barrier definitions · a78cd861
      Tom Rini 提交于
      As part of testing booting Linux kernels on Rockchip devices, it was
      discovered by Ziyuan Xu and Sandy Patterson that we had multiple and for
      some cases incomplete isb definitions.  This was causing a failure to
      boot of the Linux kernel.
      
      In order to solve this problem as well as cover any corner cases that we
      may also have had a number of changes are made in order to consolidate
      things.  First, <asm/barriers.h> now becomes the source of isb/dsb/dmb
      definitions.  This however introduces another complexity.  Due to
      needing to build SPL for 32bit tegra with -march=armv4 we need to borrow
      the __LINUX_ARM_ARCH__ logic from the Linux Kernel in a more complete
      form.  Move this from arch/arm/lib/Makefile to arch/arm/Makefile and add
      a comment about it.  Now that we can always know what the target CPU is
      capable off we can get always do the correct thing for the barrier.  The
      final part of this is that need to be consistent everywhere and call
      isb()/dsb()/dmb() and NOT call ISB/DSB/DMB in some cases and the
      function names in others.
      Reviewed-by: NStephen Warren <swarren@nvidia.com>
      Tested-by: NStephen Warren <swarren@nvidia.com>
      Acked-by: NZiyuan Xu <xzy.xu@rock-chips.com>
      Acked-by: NSandy Patterson <apatterson@sightlogix.com>
      Reported-by: NZiyuan Xu <xzy.xu@rock-chips.com>
      Reported-by: NSandy Patterson <apatterson@sightlogix.com>
      Signed-off-by: NTom Rini <trini@konsulko.com>
      a78cd861
  2. 03 6月, 2016 1 次提交
  3. 28 5月, 2016 1 次提交
  4. 02 4月, 2016 2 次提交
  5. 01 4月, 2016 1 次提交
  6. 16 2月, 2016 1 次提交
  7. 20 1月, 2016 1 次提交
  8. 14 1月, 2016 1 次提交
    • S
      arm: mvebu: Move SoC selection (A38X vs AXP) into Kconfig · 81e33f4b
      Stefan Roese 提交于
      Until now, the SoC selection for the ARCH_MVEBU platforms has been done
      in the config header. Using CONFIG_ARMADA_XP in a non-clear way. As
      it needed to get selected for AXP and A38x based boards. This patch
      now changes this to move the SoC selection to Kconfig. And also
      uses CONFIG_ARCH_MVEBU as a common define for both AXP and A38x.
      This makes things a bit clearer - especially for new board additions.
      
      Additionally the defines CONFIG_SYS_MVEBU_DDR_AXP and
      CONFIG_SYS_MVEBU_DDR_A38X are replaced with the already available
      CONFIG_ARMADA_38X and CONFIG_ARMADA_XP.
      
      And CONFIG_DDR3 is removed, as its not referenced anywhere.
      Signed-off-by: NStefan Roese <sr@denx.de>
      Cc: Luka Perkov <luka.perkov@sartura.hr>
      81e33f4b
  9. 30 11月, 2015 1 次提交
  10. 16 9月, 2015 1 次提交
  11. 13 9月, 2015 1 次提交
  12. 12 9月, 2015 1 次提交
  13. 03 9月, 2015 1 次提交
  14. 17 8月, 2015 1 次提交
  15. 13 8月, 2015 1 次提交
  16. 07 5月, 2015 1 次提交
  17. 05 5月, 2015 3 次提交
  18. 29 4月, 2015 2 次提交
  19. 12 4月, 2015 1 次提交
  20. 28 3月, 2015 1 次提交
  21. 27 3月, 2015 1 次提交
    • M
      ARM: move -march=* and -mtune= options to arch/arm/Makefile · 79d75d75
      Masahiro Yamada 提交于
      My main motivations for this commit are:
      
      [1] Follow the arch/arm/Makefile style of Linux Kernel
      
      [2] Maintain compiler options systematically
        Currently, we give -march=* and -mtune=* options inconsistently:
        Only some of the CPUs pass -march=* and -mtune=* options.
        By collecting such options into the single place arch/arm/Makefile
        we can tell which options are missing at a glance.
      
      [3] Prepare for deprecating arch/*/cpu/*/config.mk
      
      Note:
        This commit just moves the compiler options so as not to change
        the behavior at all.  It does not care about the correctness of
        the given options.  Fox example, "-march=armv5te" might be better
        than "-march=armv4" for ARM946EJS, but it is beyond the scope this
        commit.  Also, filling the missing -march=* and -tune=* is left
        to follow-up patches.
      Signed-off-by: NMasahiro Yamada <yamada.m@jp.panasonic.com>
      Acked-by: NMarek Vasut <marex@denx.de>
      Acked-by: NStefan Roese <sr@denx.de>
      79d75d75
  22. 28 2月, 2015 1 次提交
  23. 21 2月, 2015 11 次提交
    • M
      ARM: prepare for including <mach/*.h> · 30ebf88f
      Masahiro Yamada 提交于
      This commit adds $(srctree)/arch/arm/$(machdirs)/include/mach to
      the headers search path.
      
      It allows us to replace "#include <asm/arch/foo.h>" with
      "#include <mach/foo.h>".  As "#include <asm/arch/foo.h>" is still
      supported, we can modify each file one by one.
      Signed-off-by: NMasahiro Yamada <yamada.m@jp.panasonic.com>
      30ebf88f
    • M
      ARM: keystone: move SoC sources to mach-keystone · 39a72345
      Masahiro Yamada 提交于
      Move
      arch/arm/cpu/armv7/keystone/* -> arch/arm/mach-keystone/*
      Signed-off-by: NMasahiro Yamada <yamada.m@jp.panasonic.com>
      Cc: Tom Rini <trini@ti.com>
      39a72345
    • M
      ARM: versatile: move SoC sources to mach-versatile · 63637a48
      Masahiro Yamada 提交于
      Move
      arch/arm/cpu/arm926ejs/versatile/* -> arch/arm/mach-versatile/*
      Signed-off-by: NMasahiro Yamada <yamada.m@jp.panasonic.com>
      63637a48
    • M
      ARM: orion5x: move SoC sources to mach-orion5x · 3e93b4e6
      Masahiro Yamada 提交于
      Move
      arch/arm/cpu/arm926ejs/orion5x/* -> arch/arm/mach-orion5x/*
      Signed-off-by: NMasahiro Yamada <yamada.m@jp.panasonic.com>
      Cc: Albert ARIBAUD <albert.u.boot@aribaud.net>
      3e93b4e6
    • M
      ARM: highbank: move SoC sources to mach-highbank · 72a8ff4b
      Masahiro Yamada 提交于
      Move
      arch/arm/cpu/armv7/highbank/* -> arch/arm/mach-highbank/*
      Signed-off-by: NMasahiro Yamada <yamada.m@jp.panasonic.com>
      Cc: Rob Herring <robh@kernel.org>
      72a8ff4b
    • M
      ARM: nomadik: move SoC sources to mach-nomadik · ef917ddb
      Masahiro Yamada 提交于
      Move
      arch/arm/cpu/arm926ejs/nomadik/* -> arch/arm/mach-nomadik/*
      Signed-off-by: NMasahiro Yamada <yamada.m@jp.panasonic.com>
      Cc: Nomadik Linux Team <STN_WMM_nomadik_linux@list.st.com>
      Cc: Alessandro Rubini <rubini@unipv.it>
      ef917ddb
    • M
      ARM: kirkwood: move SOC sources to mach-kirkwood · 56f86e39
      Masahiro Yamada 提交于
      Move
      arch/arm/cpu/arm926ejs/kirkwood/* -> arch/arm/mach-kirkwood/*
      
      Note:
       Perhaps, can we merge arch/arm/mach-kirkwood and
       arch/arm/mvebu-common into arch/arm/mach-mvebu, like Linux?
      Signed-off-by: NMasahiro Yamada <yamada.m@jp.panasonic.com>
      Acked-by: NStefan Roese <sr@denx.de>
      Cc: Prafulla Wadaskar <prafulla@marvell.com>
      Cc: Luka Perkov <luka.perkov@sartura.hr>
      56f86e39
    • M
      ARM: davinci: move SoC sources to mach-davinci · 601fbec7
      Masahiro Yamada 提交于
      Move
      arch/arm/cpu/arm926ejs/davinci/* -> arch/arm/mach-davinci/*
      Signed-off-by: NMasahiro Yamada <yamada.m@jp.panasonic.com>
      Cc: Tom Rini <trini@ti.com>
      601fbec7
    • M
      ARM: tegra: collect SoC sources into mach-tegra · 09f455dc
      Masahiro Yamada 提交于
      This commit moves files as follows:
      
       arch/arm/cpu/arm720t/tegra20/*      -> arch/arm/mach-tegra/tegra20/*
       arch/arm/cpu/arm720t/tegra30/*      -> arch/arm/mach-tegra/tegra30/*
       arch/arm/cpu/arm720t/tegra114/*     -> arch/arm/mach-tegra/tegra114/*
       arch/arm/cpu/arm720t/tegra124*      -> arch/arm/mach-tegra/tegra124/*
       arch/arm/cpu/arm720t/tegra-common/* -> arch/arm/mach-tegra/*
       arch/arm/cpu/armv7/tegra20/*        -> arch/arm/mach-tegra/tegra20/*
       arch/arm/cpu/armv7/tegra30/*        -> arch/arm/mach-tegra/tegra30/*
       arch/arm/cpu/armv7/tegra114/*       -> arch/arm/mach-tegra/tegra114/*
       arch/arm/cpu/armv7/tegra124/*       -> arch/arm/mach-tegra/tegra124/*
       arch/arm/cpu/armv7/tegra-common/*   -> arch/arm/mach-tegra/*
       arch/arm/cpu/tegra20-common/*       -> arch/arm/mach-tegra/tegra20/*
       arch/arm/cpu/tegra30-common/*       -> arch/arm/mach-tegra/tegra30/*
       arch/arm/cpu/tegra114-common/*      -> arch/arm/mach-tegra/tegra114/*
       arch/arm/cpu/tegra124-common/*      -> arch/arm/mach-tegra/tegra124/*
       arch/arm/cpu/tegra-common/*         -> arch/arm/mach-tegra/*
      Signed-off-by: NMasahiro Yamada <yamada.m@jp.panasonic.com>
      Tested-by: Simon Glass <sjg@chromium.org> [ on nyan-big ]
      Cc: Stephen Warren <swarren@nvidia.com>
      Cc: Tom Warren <twarren@nvidia.com>
      09f455dc
    • M
      ARM: at91: collect SoC sources into mach-at91 · 62011840
      Masahiro Yamada 提交于
      This commit moves source files as follows:
      
        arch/arm/cpu/arm920t/at91/*   -> arch/arm/mach-at91/arm920t/*
        arch/arm/cpu/arm926ejs/at91/* -> arch/arm/mach-at91/arm926ejs/*
        arch/arm/cpu/armv7/at91/*     -> arch/arm/mach-at91/armv7/*
        arch/arm/cpu/at91-common/*    -> arch/arm/mach-at91/*
      Signed-off-by: NMasahiro Yamada <yamada.m@jp.panasonic.com>
      Acked-by: NAndreas Bießmann <andreas.devel@googlemail.co>
      62011840
    • M
      ARM: prepare for moving SoC sources into mach-* · 01f14456
      Masahiro Yamada 提交于
      In U-boot, the directory structure, arch/$(ARCH)/cpu/$(CPU)/$(SOC)/
      has been adopted except that $(CPU) is missing from some
      architectures and $(SOC) is missing from some CPUs.
      
      This structure did not fit very well in some cases.
      
      [1] AT91
      
      AT91 SoC family have been developed across some ARM processor
      generations.  Generally speaking, some IPs are often re-used in the
      same SoC family (same SoC vendor) even when the main processor is
      updated.  As a result, a SoC-common directory is needed in the upper
      level.  Currently, AT91 source files are placed as follows:
      
        arch/arm/cpu/arm920t/at91/*
        arch/arm/cpu/arm926ejs/at91/*
        arch/arm/cpu/armv7/at91/*
        arch/arm/cpu/at91-common/*
      
      Once directories are split, the motivation for refactorings across
      CPU directories is lost.  Some files in arm920t/at91/ and
      arm926ejs/at91/ are so similar that they could be merged.
      
      [2] Tegra
      
      Tegra is a little bit special case where different CPUs are used for
      SPL and the main U-boot.  To obey the arch/$(ARCH)/cpu/$(CPU)/$(SOC)
      structure, the source files must be placed across the CPUs,
      again SoC-common directory is necessary in the upper level.
      
      Moreover, there are several families in Tegra: Tegra20, Tegra30,
      Tegra114, Tegra124.  Here again, the tegra-common directory is needed
      to contain commonly-used files.
      
      Tegra directories have been sprinkled in the directory structure.
      
        arch/arm/cpu/arm720t/tegra20
        arch/arm/cpu/arm720t/tegra30
        arch/arm/cpu/arm720t/tegra114
        arch/arm/cpu/arm720t/tegra124
        arch/arm/cpu/arm720t/tegra-common
        arch/arm/cpu/armv7/tegra20
        arch/arm/cpu/armv7/tegra30
        arch/arm/cpu/armv7/tegra114
        arch/arm/cpu/armv7/tegra124
        arch/arm/cpu/armv7/tegra-common
        arch/arm/cpu/tegra20-common
        arch/arm/cpu/tegra30-common
        arch/arm/cpu/tegra114-common
        arch/arm/cpu/tegra124-common
        arch/arm/cpu/tegra-common
      
      As you see, splitting SoC code by the CPU is not going well,
      especially for ARM.
      Why don't we collect SoC-specific files into a single place?
      
      A good example we can follow is Linux's arch/arm/mach-* structure.
      
      This item was discussed in the following thread:
      http://thread.gmane.org/gmane.comp.boot-loaders.u-boot/188548/
      
      Looks like I got some positive responses and we are almost ready to
      start this movement.
      
      This commit prepares arch/arm/Makefile for describing machdirs in it.
      
      After this commit, we can move SoC directory to arch/arm/mach-$(SOC)
      in simple steps although some cases such as AT91 and Tegra need more
      fixes.
      
      What we generally have to do is:
      
      [1] Move files arch/arm/cpu/$(CPU)/$(SOC)/* to arch/arm/mach-$(SOC)/*
      [2] Add machine entry into arch/arm/Makefile
      [3] Remove "obj-y += $(SOC)" from arch/arm/cpu/$(CPU)/Makefile
      [4] Fix the Kconfig file path in arch/arm/Kconfig
      [5] Modify MAINTAINERS if necessary
      Signed-off-by: NMasahiro Yamada <yamada.m@jp.panasonic.com>
      01f14456
  24. 08 12月, 2014 1 次提交