1. 17 10月, 2014 2 次提交
  2. 18 7月, 2014 2 次提交
  3. 14 7月, 2014 1 次提交
  4. 19 6月, 2014 1 次提交
    • R
      ARM: l2c: fix dependencies on PL310 errata symbols · a641f3a6
      Russell King 提交于
      A number of configurations spit out warnings similar to:
      
      warning: (SOC_IMX6 && SOC_VF610 && ARCH_OMAP4) selects PL310_ERRATA_588369 which has unmet direct dependencies (CACHE_L2X0)
      warning: (SOC_IMX6 && SOC_VF610 && ARCH_OMAP4) selects PL310_ERRATA_727915 which has unmet direct dependencies (CACHE_L2X0)
      
      Clean up the dependencies here:
      * PL310 symbols should only be selected when CACHE_L2X0 is enabled.
      * Since the cache-l2x0 code detects PL310 presence at runtime, and we will
        eventually get rid of CACHE_PL310, surround these errata options with an
        if CACHE_L2X0 conditional rather than repeating the dependency against
        each.
      Acked-by: NArnd Bergmann <arnd@arndb.de>
      Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
      a641f3a6
  5. 30 5月, 2014 1 次提交
  6. 23 4月, 2014 1 次提交
  7. 22 3月, 2014 1 次提交
    • A
      ARM: rpc: autoselect CPU_SA110 · fa04e209
      Arnd Bergmann 提交于
      ARCH_RPC no longer supports other CPUs aside from StrongARM110,
      so we can make the option implicitly selected by the platform
      and no longer give the option of building a kernel without CPU
      support.
      Signed-off-by: NArnd Bergmann <arnd@arndb.de>
      Cc: Russell King <linux@arm.linux.org.uk>
      fa04e209
  8. 23 2月, 2014 1 次提交
  9. 10 2月, 2014 1 次提交
    • W
      ARM: 7954/1: mm: remove remaining domain support from ARMv6 · b6ccb980
      Will Deacon 提交于
      CPU_32v6 currently selects CPU_USE_DOMAINS if CPU_V6 and MMU. This is
      because ARM 1136 r0pX CPUs lack the v6k extensions, and therefore do
      not have hardware thread registers. The lack of these registers requires
      the kernel to update the vectors page at each context switch in order to
      write a new TLS pointer. This write must be done via the userspace
      mapping, since aliasing caches can lead to expensive flushing when using
      kmap. Finally, this requires the vectors page to be mapped r/w for
      kernel and r/o for user, which has implications for things like put_user
      which must trigger CoW appropriately when targetting user pages.
      
      The upshot of all this is that a v6/v7 kernel makes use of domains to
      segregate kernel and user memory accesses. This has the nasty
      side-effect of making device mappings executable, which has been
      observed to cause subtle bugs on recent cores (e.g. Cortex-A15
      performing a speculative instruction fetch from the GIC and acking an
      interrupt in the process).
      
      This patch solves this problem by removing the remaining domain support
      from ARMv6. A new memory type is added specifically for the vectors page
      which allows that page (and only that page) to be mapped as user r/o,
      kernel r/w. All other user r/o pages are mapped also as kernel r/o.
      Patch co-developed with Russell King.
      
      Cc: <stable@vger.kernel.org>
      Signed-off-by: NWill Deacon <will.deacon@arm.com>
      Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
      b6ccb980
  10. 20 10月, 2013 1 次提交
    • B
      ARM: fix ARCH_IXP4xx usage of ARCH_SUPPORTS_BIG_ENDIAN · d10d2d48
      Ben Dooks 提交于
      The Kconfig for arch/arm/mach-ixp4xx has a local definition
      of ARCH_SUPPORTS_BIG_ENDIAN which could be used elsewhere.
      This means that if IXP4xx is selected and this symbol is
      selected eleswhere then an warning is produced.
      
      Clean the following error up by making the symbol be
      selected by the main ARCH_IXP4XX definition and have a
      common definition in arch/arm/mm/Kconfig
      
      warning: (ARCH_xxx) selects ARCH_SUPPORTS_BIG_ENDIAN which has unmet direct dependencies (ARCH_IXP4XX)
      warning: (ARCH_xxx) selects ARCH_SUPPORTS_BIG_ENDIAN which has unmet direct dependencies (ARCH_IXP4XX)
      Signed-off-by: NBen Dooks <ben.dooks@codethink.co.uk>
      d10d2d48
  11. 20 8月, 2013 1 次提交
  12. 01 8月, 2013 1 次提交
  13. 08 6月, 2013 1 次提交
    • J
      ARM: select CPU_CPU15_MMU/MPU appropriately · 66567618
      Jonathan Austin 提交于
      Currently CPU_V7 selects CPU_CP15_MMU, however in the case of a V7 CPU
      implementing the PMSA, such as the Cortex-R7, the CP15_MMU operations are
      not available. Selecting CPU_CP15_MPU is appropriate in this case.
      
      This patch makes CPU_CP15_MMU dependent on the use of the MMU, selecting
      CPU_CP15_MPU for v7 processors when !MMU is chosen.
      Signed-off-by: NJonathan Austin <jonathan.austin@arm.com>
      66567618
  14. 18 4月, 2013 1 次提交
  15. 26 3月, 2013 1 次提交
  16. 01 2月, 2013 1 次提交
  17. 11 1月, 2013 1 次提交
    • W
      ARM: virt: hide CONFIG_ARM_VIRT_EXT from user · 651134b0
      Will Deacon 提交于
      ARM_VIRT_EXT is a property of CPU_V7, but does not adversely affect
      other CPUs that can be built into the same kernel image (i.e. ARMv6+).
      
      This patch defaults ARM_VIRT_EXT to y if CPU_V7, allowing hypervisors
      such as KVM to make better use of the option and being able to rely
      on hyp-mode boot support.
      Signed-off-by: NWill Deacon <will.deacon@arm.com>
      651134b0
  18. 21 11月, 2012 1 次提交
  19. 14 10月, 2012 1 次提交
    • R
      ARM: config: sort select statements alphanumerically · b1b3f49c
      Russell King 提交于
      As suggested by Andrew Morton:
      
        This is a pet peeve of mine.  Any time there's a long list of items
        (header file inclusions, kconfig entries, array initalisers, etc) and
        someone wants to add a new item, they *always* go and stick it at the
        end of the list.
      
        Guys, don't do this.  Either put the new item into a randomly-chosen
        position or, probably better, alphanumerically sort the list.
      
      lets sort all our select statements alphanumerically.  This commit was
      created by the following perl:
      
      while (<>) {
      	while (/\\\s*$/) {
      		$_ .= <>;
      	}
      	undef %selects if /^\s*config\s+/;
      	if (/^\s+select\s+(\w+).*/) {
      		if (defined($selects{$1})) {
      			if ($selects{$1} eq $_) {
      				print STDERR "Warning: removing duplicated $1 entry\n";
      			} else {
      				print STDERR "Error: $1 differently selected\n".
      					"\tOld: $selects{$1}\n".
      					"\tNew: $_\n";
      				exit 1;
      			}
      		}
      		$selects{$1} = $_;
      		next;
      	}
      	if (%selects and (/^\s*$/ or /^\s+help/ or /^\s+---help---/ or
      			  /^endif/ or /^endchoice/)) {
      		foreach $k (sort (keys %selects)) {
      			print "$selects{$k}";
      		}
      		undef %selects;
      	}
      	print;
      }
      if (%selects) {
      	foreach $k (sort (keys %selects)) {
      		print "$selects{$k}";
      	}
      }
      
      It found two duplicates:
      
      Warning: removing duplicated S5P_SETUP_MIPIPHY entry
      Warning: removing duplicated HARDIRQS_SW_RESEND entry
      
      and they are identical duplicates, hence the shrinkage in the diffstat
      of two lines.
      
      We have four testers reporting success of this change (Tony, Stephen,
      Linus and Sekhar.)
      Acked-by: NJason Cooper <jason@lakedaemon.net>
      Acked-by: NTony Lindgren <tony@atomide.com>
      Acked-by: NStephen Warren <swarren@nvidia.com>
      Acked-by: NLinus Walleij <linus.walleij@linaro.org>
      Acked-by: NSekhar Nori <nsekhar@ti.com>
      Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
      b1b3f49c
  20. 19 9月, 2012 1 次提交
  21. 05 5月, 2012 1 次提交
  22. 13 4月, 2012 1 次提交
  23. 15 2月, 2012 1 次提交
  24. 23 1月, 2012 1 次提交
    • W
      ARM: 7291/1: cache: assume 64-byte L1 cachelines for ARMv7 CPUs · a092f2b1
      Will Deacon 提交于
      To ensure correct alignment of cacheline-aligned data, the maximum
      cacheline size needs to be known at compile time.
      
      Since Cortex-A8 and Cortex-A15 have 64-byte cachelines (and it is likely
      that there will be future ARMv7 implementations with the same line size)
      then it makes sense to assume that CPU_V7 implies a 64-byte L1 cacheline
      size. For CPUs with smaller caches, this will result in some harmless
      padding but will help with single zImage work and avoid hitting subtle
      bugs with misaligned data structures.
      Signed-off-by: NWill Deacon <will.deacon@arm.com>
      Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
      a092f2b1
  25. 19 12月, 2011 1 次提交
  26. 08 12月, 2011 1 次提交
  27. 31 10月, 2011 3 次提交
  28. 09 7月, 2011 1 次提交
  29. 07 7月, 2011 1 次提交
    • A
      ARM: cns3xxx: Add support for L2 Cache Controller · 93e85d8e
      Anton Vorontsov 提交于
      CNS3xxx SOCs have L310-compatible cache controller, so let's use it.
      
      With this patch benchmarking with 'gzip' shows that performance is
      doubled, and I'm still able to boot full-fledged userland over NFS
      (using PCIe NIC), so the support should be pretty robust.
      
      p.s. While CNS3xxx reports that it has PL310, it still needs to wait
      on cache line operations, so we should not select 'CACHE_PL310',
      which is a micro-optimization that removes these waits for v7 CPUs.
      Someday we'd better rename CACHE_PL310 Kconfig option into
      NO_CACHE_WAIT or something less ambiguous.
      Signed-off-by: NAnton Vorontsov <avorontsov@mvista.com>
      93e85d8e
  30. 21 6月, 2011 1 次提交
    • J
      ARM: Xilinx: Adding Xilinx board support · b85a3ef4
      John Linn 提交于
      The 1st board support is minimal to get a system up and running
      on the Xilinx platform.
      
      This platform reuses the clock implementation from plat-versatile, and
      it depends entirely on CONFIG_OF support.  There is only one board
      support file which obtains all device information from a device tree
      dtb file which is passed to the kernel at boot time.
      Signed-off-by: NJohn Linn <john.linn@xilinx.com>
      b85a3ef4
  31. 08 3月, 2011 1 次提交
  32. 24 2月, 2011 1 次提交
  33. 22 2月, 2011 1 次提交
  34. 10 2月, 2011 2 次提交
  35. 03 2月, 2011 1 次提交