1. 26 2月, 2014 1 次提交
    • J
      irq-metag*: stop set_affinity vectoring to offline cpus · f229006e
      James Hogan 提交于
      Fix irq_set_affinity callbacks in the Meta IRQ chip drivers to AND
      cpu_online_mask into the cpumask when picking a CPU to vector the
      interrupt to.
      
      As Thomas pointed out, the /proc/irq/$N/smp_affinity interface doesn't
      filter out offline CPUs, so without this patch if you offline CPU0 and
      set an IRQ affinity to 0x3 it vectors the interrupt onto CPU0 even
      though it is offline.
      Reported-by: NThomas Gleixner <tglx@linutronix.de>
      Signed-off-by: NJames Hogan <james.hogan@imgtec.com>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Cc: linux-metag@vger.kernel.org
      Cc: stable@vger.kernel.org
      f229006e
  2. 03 3月, 2013 1 次提交
    • J
      metag: Internal and external irqchips · 5698c50d
      James Hogan 提交于
      Meta core internal interrupts (from HWSTATMETA and friends) are vectored
      onto the TR1 core trigger for the current thread. This is demultiplexed
      in irq-metag.c to individual Linux IRQs for each internal interrupt.
      
      External SoC interrupts (from HWSTATEXT and friends) are vectored onto
      the TR2 core trigger for the current thread. This is demultiplexed in
      irq-metag-ext.c to individual Linux IRQs for each external SoC interrupt.
      The external irqchip has devicetree bindings for configuring the number
      of irq banks and the type of masking available.
      Signed-off-by: NJames Hogan <james.hogan@imgtec.com>
      Cc: Arnd Bergmann <arnd@arndb.de>
      Cc: Grant Likely <grant.likely@secretlab.ca>
      Cc: Rob Herring <rob.herring@calxeda.com>
      Cc: Rob Landley <rob@landley.net>
      Cc: Dom Cobley <popcornmix@gmail.com>
      Cc: Simon Arlott <simon@fire.lp0.eu>
      Cc: Viresh Kumar <viresh.kumar@linaro.org>
      Cc: Maxime Ripard <maxime.ripard@free-electrons.com>
      Cc: devicetree-discuss@lists.ozlabs.org
      Cc: linux-doc@vger.kernel.org
      5698c50d