1. 26 5月, 2009 4 次提交
    • T
    • C
      davinci: use 32-bit accesses for low-level debug macros · 17eb1570
      Chaithrika U S 提交于
      This patch defines debug macros for low-level debugging for Davinci
      based platforms
      
      Tested on :
              - DM644x DaVinci EVM
              - DM646X DaVinciHD EVM
      	- DM355 EVM
      
      This patch attempts to solve the low-level debug issue in DM646x. The
      UART on DM646x SoC allows only 32-bit access. The existing
      debug-macro.S uses the macros from debug-8250.S file. This led to
      garbage serial out in the case of DM646x.
      
      The inclusion of debug-8250.S does not allow for run time fix for this
      issue.  There are compile time errors due to multiple definitions of
      the macros.  Also when building a single image for multiple DaVinci
      Platforms, the ifdefs cannot be relied upon.
      
      The solution below does not include the debug-8250.S file and defines
      the necessary macros. This solution was arrived at after observing
      that word access does not affect the low-level debug messages on
      DM644x/DM355.
      
      The other approach to this issue is to use the UART module information
      available in the peripheral registers to decide the access
      mechanism. But this will have to be done for every access of UART
      specifically for DM646x. Also this calls for a modification of the
      debug-8250.S file.
      Signed-off-by: NChaithrika U S <chaithrika@ti.com>
      Signed-off-by: NKevin Hilman <khilman@deeprootsystems.com>
      17eb1570
    • K
      davinci: fixups for banked GPIO interrupt handling · dc756026
      Kevin Hilman 提交于
      This patch seems to get me much more reliable performance using the
      GPIO banked interrupts on dm355 for the dm9000 driver.
      
      Changes include:
      
      - init GPIO handling along with normal GPIO init
      - mask the level-sensitive bank IRQ during handling
      Signed-off-by: NKevin Hilman <khilman@deeprootsystems.com>
      dc756026
    • D
      davinci: gpio irq enable tweaks · df4aab46
      David Brownell 提交于
      Fix two IRQ triggering bugs affecting GPIO IRQs:
      
       - Make sure enabling with IRQ_TYPE_NONE ("default, unspecified")
         isn't a NOP ... default to both edges, at least one must work.
      
       - As noted by Kevin Hilman, setting the irq trigger type for a
         banked gpio interrupt shouldn't enable irqs that are disabled.
      
      Since GPIO IRQs haven't been used much yet, it's not clear these
      bugs could have affected anything.  The few current users don't
      seem to have been obviously suffering from these issues.
      Signed-off-by: NDavid Brownell <dbrownell@users.sourceforge.net>
      Signed-off-by: NKevin Hilman <khilman@deeprootsystems.com>
      df4aab46
  2. 19 5月, 2009 2 次提交
  3. 18 5月, 2009 3 次提交
    • P
    • 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
      [ARM] realview: fix broadcast tick support · ee348d5a
      Russell King 提交于
      Having discussed broadcast tick support with Thomas Glexiner, the
      broadcast tick devices should be registered with a higher rating
      than the global tick device, and it should have the ONESHOT and
      PERIODIC feature flags set.
      Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
      Acked-by: NThomas Glexiner <tglx@linutronix.de>
      ee348d5a
  4. 17 5月, 2009 4 次提交
  5. 16 5月, 2009 3 次提交
  6. 15 5月, 2009 8 次提交
  7. 13 5月, 2009 4 次提交
  8. 12 5月, 2009 1 次提交
  9. 09 5月, 2009 1 次提交
  10. 08 5月, 2009 1 次提交
  11. 07 5月, 2009 1 次提交
  12. 05 5月, 2009 8 次提交