1. 14 12月, 2009 1 次提交
    • R
      ARM: fix sa1100 build · 1937f5b9
      Russell King 提交于
      Fix:
      
      arch/arm/mach-sa1100/generic.c:117: error: redefinition of 'cpufreq_get'
      include/linux/cpufreq.h:299: error: previous definition of 'cpufreq_get' was here
      
      cpufreq_get() is used on these platforms to tell drivers what the CPU
      frequency is, and therefore the bus frequency - which is critical for
      setting the PCMCIA and LCD timings.  Adding ifdefs to these drivers to
      select cpufreq_get() or some other interface adds confusion.  Making
      these drivers use some other interface for the normal paths and cpufreq
      stuff for the cpufreq notifier is insane as well.
      
      (Why x86 can't provide a version of cpufreq_get() which returns the
      CPU frequency when CPUFREQ is disabled is beyond me, rather than
      requiring a dummy zero-returning cpufreq_get().  Especially as they
      do:
      
      			unsigned long khz = cpufreq_get(cpu);
      			if (!khz)
      				khz = tsc_khz;
      
      In other words, if CPUFREQ is disabled, get it from tsc_khz - why
      not provide a dummy cpufreq_get() which returns tsc_khz?)
      Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
      1937f5b9
  2. 01 12月, 2009 1 次提交
    • B
      ARM: SAMSUNG: Add plat-samsung as starting point for plat-s3c* moves · cf383678
      Ben Dooks 提交于
      We inted to re-organise the plat-s3c/plat-s3c24xx/plat-s3c64xx into a
      more generic plat-samsung with less code in the other plat- directories
      to make it easier to port new devices and try and clear up some of the
      naming issues with newer devices.
      
      Start by creating a small arch/arm/plat-samsung with no actuall code in
      so we can move items in as we process them.
      
      Add this to arch/arm to allow it to build things once support is added.
      Signed-off-by: NBen Dooks <ben-linux@fluff.org>
      cf383678
  3. 28 11月, 2009 3 次提交
  4. 30 10月, 2009 2 次提交
    • M
      iop: enable generic time · 980f2296
      Mikael Pettersson 提交于
      This updates the IOP platform to use the kernel's generic time
      framework. With clockevent support in place, this reduces to
      selecting GENERIC_TIME and removing the platform's private timer
      ->offset() operation (iop_gettimeoffset).
      
      Tested on n2100, compile-tested for all plat-iop machines.
      Signed-off-by: NMikael Pettersson <mikpe@it.uu.se>
      Signed-off-by: NDan Williams <dan.j.williams@intel.com>
      980f2296
    • M
      iop: clockevent support · 469d3044
      Mikael Pettersson 提交于
      This updates the IOP platform to expose the interrupting
      timer 0 as a clockevent object. The timer interrupt handler
      is changed to call the clockevent ->event_handler() instead
      of timer_tick(), and ->set_next_event() and ->set_mode()
      operations are added to allow the mode of the timer to be
      updated (required for ONESHOT/NOHZ mode).
      
      Timer 0 must now be properly initialised, which requires
      a new write_tcr0() function from the mach-specific code.
      
      The mode of timer 0 must be read at the start of ->set_mode(),
      which requires a new read_tmr0() function from the mach-
      specific code.
      
      Initial setup of timer 0 is also rewritten to be more robust.
      
      Tested on n2100, compile-tested for all plat-iop machines.
      Signed-off-by: NMikael Pettersson <mikpe@it.uu.se>
      Signed-off-by: NDan Williams <dan.j.williams@intel.com>
      469d3044
  5. 16 9月, 2009 1 次提交
  6. 18 8月, 2009 1 次提交
  7. 17 8月, 2009 1 次提交
    • B
      ARM: S5PC100: Kconfigs and Makefiles · 5a7652f2
      Byungho Min 提交于
      S5PC100 is a new SoC with ARM coretex-A8 and numerous peripherals. This SoC is
      successor of S3C64XX. S5PC100 has peripherals which are still similar to S3C
      families so some drivers in "arch/arm/plat-s3c" can be shared. S5PC100 specific
      drivers will be added in "arch/arm/plat-s5pcxx" or "arch/arm/mach-s5pc100"
      Signed-off-by: NByungho Min <bhmin@samsung.com>
      [ben-linux@fluff.org: tidy and edit description]
      Signed-off-by: NBen Dooks <ben-linux@fluff.org>
      5a7652f2
  8. 15 8月, 2009 3 次提交
  9. 14 8月, 2009 2 次提交
    • U
      [ARM] let arch/arm/Kconfig source drivers/Kconfig · ac25150f
      Uwe Kleine-König 提交于
      The changes introduced by this change are:
        - drivers/mtd/Kconfig doesn't depend on ALIGNMENT_TRAP ||
          !CPU_CP15_MMU any more
        - the following files are sourced additionally:
          + drivers/macintosh/Kconfig
            completely depends on PPC || MAC || X86
          + drivers/telephony/Kconfig
            new
          + drivers/pps/Kconfig
            new
          + drivers/infiniband/Kconfig
            new
          + drivers/edac/Kconfig
            depends on X86 || PPC
          + drivers/vlynq/Kconfig
            depends on AR7 && EXPERIMENTAL (that is ARCH_MIPS)
          + drivers/xen/Kconfig
            everything depends on XEN
          + drivers/platform/Kconfig
            depends on X86
        - drivers/regulator/Kconfig is sourced later as is
          drivers/accessibility/Kconfig
      Signed-off-by: NUwe Kleine-König <u.kleine-koenig@pengutronix.de>
      ac25150f
    • U
      Use kernel/Kconfig.preempt for ARM · d45a398f
      Uwe Kleine-König 提交于
      before this patch ARM had it's own definition of CONFIG_PREEMPT.
      Instead of that use the general definition provided in
      kernel/Kconfig.preempt.
      
      This patch changes the available options in *config.  Namely PREEMPT
      isn't a stand alone bool anymore, but part of a 'choice' the
      following Kconfig symbols are added:
      
      	PREEMPT_NONE
      	PREEMPT_VOLUNTARY
      
      Selecting PREEMPT_NONE now produces exactly the code as not selecting
      PREEMPT before (apart from a comment in
      /sys/kernel/debug/tracing/(per_cpu/cpuX/)?trace).  The only difference
      PREEMPT_VOLUNTARY does is that might_resched might reschedule.  Both
      should't introduce regressions.
      Signed-off-by: NUwe Kleine-König <u.kleine-koenig@pengutronix.de>
      Cc: Russell King <linux@arm.linux.org.uk>
      d45a398f
  10. 31 7月, 2009 3 次提交
  11. 24 7月, 2009 3 次提交
  12. 17 7月, 2009 1 次提交
  13. 07 7月, 2009 1 次提交
  14. 06 7月, 2009 1 次提交
  15. 03 7月, 2009 2 次提交
  16. 17 6月, 2009 1 次提交
    • M
      [ARM] S3C64XX: Initial support for DVFS · b3748ddd
      Mark Brown 提交于
      This patch provides initial support for CPU frequency scaling on the
      Samsung S3C ARM processors. Currently only S3C6410 processors are
      supported, though addition of another data table with supported clock
      rates should be sufficient to enable support for further CPUs.
      
      Use the regulator framework to provide optional support for DVFS in
      the S3C cpufreq driver. When a software controllable regulator is
      configured the driver will use it to lower the supply voltage when
      running at a lower frequency, giving improved power savings.
      
      When regulator support is disabled or no regulator can be obtained
      for VDDARM the driver will fall back to scaling only the frequency.
      Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
      Signed-off-by: NBen Dooks <ben-linux@fluff.org>
      b3748ddd
  17. 11 6月, 2009 2 次提交
  18. 09 6月, 2009 2 次提交
  19. 31 5月, 2009 1 次提交
  20. 30 5月, 2009 4 次提交
  21. 29 5月, 2009 1 次提交
    • D
      davinci: add SRAM allocator · 20e9969b
      David Brownell 提交于
      Provide a generic SRAM allocator using genalloc, and vaguely
      modeled after what AVR32 uses.  This builds on top of the
      static CPU mapping set up in the previous patch, and returns
      DMA mappings as requested (if possible).
      
      Compared to its OMAP cousin, there's no current support for
      (currently non-existent) DaVinci power management code running
      in SRAM; and this has ways to deallocate, instead of being
      allocate-only.
      
      The initial user of this should probably be the audio code,
      because EDMA from DDR is subject to various dropouts on at
      least DM355 and DM6446 chips.
      Signed-off-by: NDavid Brownell <dbrownell@users.sourceforge.net>
      Signed-off-by: NKevin Hilman <khilman@deeprootsystems.com>
      20e9969b
  22. 18 5月, 2009 3 次提交
    • M
      [ARM] Double check memmap is actually valid with a memmap has unexpected holes V2 · eb33575c
      Mel Gorman 提交于
      pfn_valid() is meant to be able to tell if a given PFN has valid memmap
      associated with it or not. In FLATMEM, it is expected that holes always
      have valid memmap as long as there is valid PFNs either side of the hole.
      In SPARSEMEM, it is assumed that a valid section has a memmap for the
      entire section.
      
      However, ARM and maybe other embedded architectures in the future free
      memmap backing holes to save memory on the assumption the memmap is never
      used. The page_zone linkages are then broken even though pfn_valid()
      returns true. A walker of the full memmap must then do this additional
      check to ensure the memmap they are looking at is sane by making sure the
      zone and PFN linkages are still valid. This is expensive, but walkers of
      the full memmap are extremely rare.
      
      This was caught before for FLATMEM and hacked around but it hits again for
      SPARSEMEM because the page_zone linkages can look ok where the PFN linkages
      are totally screwed. This looks like a hatchet job but the reality is that
      any clean solution would end up consumning all the memory saved by punching
      these unexpected holes in the memmap. For example, we tried marking the
      memmap within the section invalid but the section size exceeds the size of
      the hole in most cases so pfn_valid() starts returning false where valid
      memmap exists. Shrinking the size of the section would increase memory
      consumption offsetting the gains.
      
      This patch identifies when an architecture is punching unexpected holes
      in the memmap that the memory model cannot automatically detect and sets
      ARCH_HAS_HOLES_MEMORYMODEL. At the moment, this is restricted to EP93xx
      which is the model sub-architecture this has been reported on but may expand
      later. When set, walkers of the full memmap must call memmap_valid_within()
      for each PFN and passing in what it expects the page and zone to be for
      that PFN. If it finds the linkages to be broken, it assumes the memmap is
      invalid for that PFN.
      Signed-off-by: NMel Gorman <mel@csn.ul.ie>
      Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
      eb33575c
    • R
    • R
      a8cbcd92