1. 16 11月, 2011 3 次提交
    • M
      ARM: GIC: Make MULTI_IRQ_HANDLER mandatory · 08d33b27
      Marc Zyngier 提交于
      Now that MULTI_IRQ_HANDLER is selected by all the in-tree
      GIC users, make it mandatory and remove the unused macros.
      Signed-off-by: NMarc Zyngier <marc.zyngier@arm.com>
      08d33b27
    • M
      ARM: GIC: Add global gic_handle_irq() function · 562e0027
      Marc Zyngier 提交于
      Provide the GIC code with a low level handler that can be used
      by platforms using CONFIG_MULTI_IRQ_HANDLER.
      Signed-off-by: NMarc Zyngier <marc.zyngier@arm.com>
      562e0027
    • M
      ARM: gic: allow GIC to support non-banked setups · db0d4db2
      Marc Zyngier 提交于
      The GIC support code is heavily using the fact that hardware
      implementations are exposing banked registers. Unfortunately, it
      looks like at least one GIC implementation (EXYNOS) offers both
      the distributor and the CPU interfaces at different addresses,
      depending on the CPU.
      
      This problem is solved by allowing the distributor and CPU interface
      addresses to be per-cpu variables for the platforms that require it.
      The EXYNOS code is updated not to mess with the GIC internals while
      handling interrupts, and struct gic_chip_data is back to being private.
      The DT binding for the gic is updated to allow an optional "cpu-offset"
      value, which is used to compute the various base addresses.
      
      Finally, a new config option (GIC_NON_BANKED) is used to control this
      feature, so the overhead is only present on kernels compiled with
      support for EXYNOS.
      
      Tested on Origen (EXYNOS4) and Panda (OMAP4).
      
      Cc: Kukjin Kim <kgene.kim@samsung.com>
      Cc: Will Deacon <will.deacon@arm.com>
      Cc: Thomas Abraham <thomas.abraham@linaro.org>
      Acked-by: NRob Herring <rob.herring@calxeda.com>
      Signed-off-by: NMarc Zyngier <marc.zyngier@arm.com>
      db0d4db2
  2. 31 10月, 2011 3 次提交
  3. 23 10月, 2011 1 次提交
  4. 23 9月, 2011 1 次提交
  5. 20 7月, 2011 1 次提交
  6. 09 3月, 2011 1 次提交
    • S
      ARM: 6777/1: gic: Add hooks for architecture specific extensions · d7ed36a4
      Santosh Shilimkar 提交于
      Few architectures combine the GIC with an external interrupt
      controller. On such systems it may be necessary to update both
      the GIC registers and the external controller's registers to control
      IRQ behavior.
      
      This can be addressed in couple of possible methods.
       1. Export common GIC routines along with 'struct irq_chip gic_chip'
          and allow architectures to have custom function by override.
       2. Provide architecture specific function pointer hooks
          within GIC library and leave platforms to add the necessary
          code as part of these hooks.
      
      First one might be non-intrusive but have few shortcomings like arch
      needs to have there own custom gic library. Locks used should be
      common since it caters to same IRQs etc. Maintenance point of view
      also it leads to multiple file fixes.
      
      The second probably is cleaner and portable. It ensures that all the
      common GIC infrastructure is not touched and also provides archs to
      address their specific issue.
      
      Cc: Russell King <rmk+kernel@arm.linux.org.uk>
      Signed-off-by: NSantosh Shilimkar <santosh.shilimkar@ti.com>
      Acked-by: NColin Cross <ccross@android.com>
      Tested-by: NColin Cross <ccross@android.com>
      Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
      d7ed36a4
  7. 15 12月, 2010 4 次提交
  8. 17 5月, 2009 1 次提交
  9. 03 8月, 2008 1 次提交
  10. 15 2月, 2007 1 次提交
  11. 19 8月, 2005 1 次提交