1. 14 10月, 2012 2 次提交
    • R
      ARM: config: make sure that platforms are ordered by option string · 93e22567
      Russell King 提交于
      The large platform selection choice should be sorted by option string
      so it's easy to find the platform you're looking for.  Fix the few
      options which are out of this order.
      Acked-by: NTony Lindgren <tony@atomide.com>
      Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
      93e22567
    • 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
  2. 13 10月, 2012 1 次提交
  3. 09 10月, 2012 3 次提交
  4. 07 10月, 2012 1 次提交
  5. 01 10月, 2012 1 次提交
  6. 29 9月, 2012 3 次提交
  7. 28 9月, 2012 1 次提交
    • D
      Make most arch asm/module.h files use asm-generic/module.h · 786d35d4
      David Howells 提交于
      Use the mapping of Elf_[SPE]hdr, Elf_Addr, Elf_Sym, Elf_Dyn, Elf_Rel/Rela,
      ELF_R_TYPE() and ELF_R_SYM() to either the 32-bit version or the 64-bit version
      into asm-generic/module.h for all arches bar MIPS.
      
      Also, use the generic definition mod_arch_specific where possible.
      
      To this end, I've defined three new config bools:
      
       (*) HAVE_MOD_ARCH_SPECIFIC
      
           Arches define this if they don't want to use the empty generic
           mod_arch_specific struct.
      
       (*) MODULES_USE_ELF_RELA
      
           Arches define this if their modules can contain RELA records.  This causes
           the Elf_Rela mapping to be emitted and allows apply_relocate_add() to be
           defined by the arch rather than have the core emit an error message.
      
       (*) MODULES_USE_ELF_REL
      
           Arches define this if their modules can contain REL records.  This causes
           the Elf_Rel mapping to be emitted and allows apply_relocate() to be
           defined by the arch rather than have the core emit an error message.
      
      Note that it is possible to allow both REL and RELA records: m68k and mips are
      two arches that do this.
      
      With this, some arch asm/module.h files can be deleted entirely and replaced
      with a generic-y marker in the arch Kbuild file.
      
      Additionally, I have removed the bits from m32r and score that handle the
      unsupported type of relocation record as that's now handled centrally.
      Signed-off-by: NDavid Howells <dhowells@redhat.com>
      Acked-by: NSam Ravnborg <sam@ravnborg.org>
      Signed-off-by: NRusty Russell <rusty@rustcorp.com.au>
      786d35d4
  8. 22 9月, 2012 4 次提交
  9. 21 9月, 2012 1 次提交
  10. 20 9月, 2012 2 次提交
  11. 16 9月, 2012 1 次提交
  12. 15 9月, 2012 1 次提交
  13. 14 9月, 2012 2 次提交
    • R
      ARM: initial multiplatform support · 387798b3
      Rob Herring 提交于
      This lets us build a multiplatform kernel for experimental purposes.
      However, it will not be useful for any real work, because it relies
      on a number of useful things to be disabled for now:
      
      * SMP support must be turned off because of conflicting symbols.
        Marc Zyngier has proposed a solution by adding a new SOC
        operations structure to hold indirect function pointers
        for these, but that work is currently stalled
      
      * We turn on SPARSE_IRQ unconditionally, which is not supported
        on most platforms. Each of them is currently in a different
        state, but most are being worked on.
      
      * A common clock framework is in place since v3.4 but not yet
        being used. Work on this is on its way.
      
      * DEBUG_LL for early debugging is currently disabled.
      
      * THUMB2_KERNEL does not work with allyesconfig because the
        kernel gets too big
      
      [Rob Herring]: Rebased to not be dependent on the mass mach header rename.
      As a result, omap2plus, imx, mxs and ux500 are not converted. Highbank,
      picoxcell, mvebu, and socfpga are converted.
      Signed-off-by: NArnd Bergmann <arnd@arndb.de>
      Signed-off-by: NRob Herring <rob.herring@calxeda.com>
      Cc: Russell King <linux@arm.linux.org.uk>
      Cc: Jason Cooper <jason@lakedaemon.net>
      Cc: Andrew Lunn <andrew@lunn.ch>
      Acked-by: NJamie Iles <jamie@jamieiles.com>
      Cc: Dinh Nguyen <dinguyen@altera.com>
      387798b3
    • R
      ARM: make mach/gpio.h headers optional · 01464226
      Rob Herring 提交于
      Most platforms don't need mach/gpio.h and it prevents multi-platform
      kernel images. Add CONFIG_NEED_MACH_GPIO_H and make platforns select it
      if they need gpio.h. This is platforms that define __GPIOLIB_COMPLEX
      or have lots of implicit includes pulled in by mach/gpio.h.
      
      at91 and omap have gpio clean-up pending and can drop
      CONFIG_NEED_MACH_GPIO_H once that is in.
      Signed-off-by: NRob Herring <rob.herring@calxeda.com>
      Cc: Russell King <linux@arm.linux.org.uk>
      Acked-by: NJason Cooper <jason@lakedaemon.net>
      Acked-by: NLinus Walleij <linus.walleij@linaro.org>
      01464226
  14. 07 9月, 2012 2 次提交
    • S
      ARM: enable SUSPEND/ARCH_SUSPEND_POSSIBLE for ARCH_TEGRA · 4b1082ca
      Stephen Warren 提交于
      Even though system suspend/resume hasn't been validated on Tegra yet,
      this Kconfig option needs to be enabled so that system shutdown is
      reliable on an SMP system. Without it, I2C interrupts may be routed
      to CPU0, whereas shutdown code may be running on CPU1, causing I2C
      timeouts, preventing communication with the external PMIC.
      
      This reverts 3d5e8af4 "ARM: disable SUSPEND/ARCH_SUSPEND_POSSIBLE for
      ARCH_TEGRA".
      Signed-off-by: NStephen Warren <swarren@nvidia.com>
      4b1082ca
    • P
      ARM: tegra: Port tegra to generic clock framework · 92fe58f0
      Prashant Gaikwad 提交于
      This patch converts tegra clock code to generic clock framework in following way:
       - Implement clk_ops as required by generic clk framework. (tegraXX_clocks.c)
       - Use platform specific struct clk_tegra in clk_ops implementation instead of struct clk.
       - Initialize all clock data statically. (tegraXX_clocks_data.c)
      
      Legacy framework did not have recalc_rate and is_enabled functions. Implemented these functions.
      Removed init function. It's functionality is splitted into recalc_rate and is_enabled.
      
      Static initialization is used since slab is not up in .init_early and clock
      is needed to be initialized before clockevent/clocksource initialization.
      Macros redefined for clk_tegra.
      
      Also, single struct clk_tegra is used for all type of clocks (PLL, peripheral etc.). This
      is to move quickly to generic common clock framework so that other dependent features will
      not be blocked (such as DT binding).
      
      Enabling COMMON_CLOCK config moved to ARCH_TEGRA since it is enabled for both Tegra20
      and Tegra30.
      Signed-off-by: NPrashant Gaikwad <pgaikwad@nvidia.com>
      Signed-off-by: NStephen Warren <swarren@nvidia.com>
      92fe58f0
  15. 05 9月, 2012 1 次提交
    • L
      ARM: ks8695: convert to generic time and clocksource · c7e783d6
      Linus Walleij 提交于
      Old platforms using ancient gettimeoffset() and other arcane
      APIs are standing in the way of cleaning up the ARM kernel.
      The gettimeoffset() was also broken: it would try to read out
      the timer counter value, while this would not work (the
      counter statically returns the initially programmed value)
      so the implementation would anyway fall back to a homebrew
      version of jiffie calculation.
      
      This is an attempt at blind-coding a generic time and clocksource
      driver for the platform by way of a datasheet and looking at the
      old code.
      Tested-by: NGreg Ungerer <gerg@snapgear.com>
      Signed-off-by: NLinus Walleij <linus.walleij@linaro.org>
      c7e783d6
  16. 04 9月, 2012 1 次提交
  17. 03 9月, 2012 3 次提交
  18. 29 8月, 2012 1 次提交
  19. 28 8月, 2012 1 次提交
  20. 26 8月, 2012 1 次提交
  21. 25 8月, 2012 2 次提交
  22. 23 8月, 2012 2 次提交
    • A
      ARM: imx: select CPU_FREQ_TABLE when needed · f637c4c9
      Arnd Bergmann 提交于
      The i.MX cpufreq implementation uses the CPU_FREQ_TABLE helpers,
      so it needs to select that code to be built. This problem has
      apparently existed since the i.MX cpufreq code was first merged
      in v2.6.37.
      
      Building IMX without CPU_FREQ_TABLE results in:
      
      arch/arm/plat-mxc/built-in.o: In function `mxc_cpufreq_exit':
      arch/arm/plat-mxc/cpufreq.c:173: undefined reference to `cpufreq_frequency_table_put_attr'
      arch/arm/plat-mxc/built-in.o: In function `mxc_set_target':
      arch/arm/plat-mxc/cpufreq.c:84: undefined reference to `cpufreq_frequency_table_target'
      arch/arm/plat-mxc/built-in.o: In function `mxc_verify_speed':
      arch/arm/plat-mxc/cpufreq.c:65: undefined reference to `cpufreq_frequency_table_verify'
      arch/arm/plat-mxc/built-in.o: In function `mxc_cpufreq_init':
      arch/arm/plat-mxc/cpufreq.c:154: undefined reference to `cpufreq_frequency_table_cpuinfo'
      arch/arm/plat-mxc/cpufreq.c:162: undefined reference to `cpufreq_frequency_table_get_attr'
      Signed-off-by: NArnd Bergmann <arnd@arndb.de>
      Acked-by: NShawn Guo <shawn.guo@linaro.org>
      Cc: Sascha Hauer <s.hauer@pengutronix.de>
      Cc: Yong Shen <yong.shen@linaro.org>
      Cc: stable@vger.kernel.org
      f637c4c9
    • W
      ARM: pmu: remove unused reservation mechanism · f0d1bc47
      Will Deacon 提交于
      The PMU reservation mechanism was originally intended to allow OProfile
      and perf-events to co-ordinate over access to the CPU PMU. Since then,
      OProfile for ARM has moved to using perf as its backend, so the
      reservation code is no longer used.
      
      This patch removes the reservation code for the CPU PMU on ARM.
      Signed-off-by: NWill Deacon <will.deacon@arm.com>
      f0d1bc47
  23. 15 8月, 2012 1 次提交
  24. 13 8月, 2012 1 次提交
  25. 11 8月, 2012 1 次提交