1. 27 6月, 2011 1 次提交
    • A
      powerpc: introduce the ePAPR embedded hypervisor vmpic driver · 3a93261f
      Ashish Kalra 提交于
      The Freescale ePAPR reference hypervisor provides interrupt controller
      services via a hypercall interface, instead of emulating the MPIC
      controller.  This is called the VMPIC.
      
      The ePAPR "virtual interrupt controller" provides interrupt controller
      services for external interrupts.  External interrupts received by a
      partition can come from two sources:
      
        - Hardware interrupts - hardware interrupts come from external
          interrupt lines or on-chip I/O devices.
        - Virtual interrupts - virtual interrupts are generated by the hypervisor
          as part of some hypervisor service or hypervisor-created virtual device.
      
      Both types of interrupts are processed using the same programming model and
      same set of hypercalls.
      Signed-off-by: NAshish Kalra <ashish.kalra@freescale.com>
      Signed-off-by: NTimur Tabi <timur@freescale.com>
      Signed-off-by: NKumar Gala <galak@kernel.crashing.org>
      3a93261f
  2. 23 6月, 2011 5 次提交
  3. 20 6月, 2011 1 次提交
  4. 31 5月, 2011 1 次提交
  5. 26 5月, 2011 3 次提交
    • R
      powerpc/4xx: Adding PCIe MSI support · 3fb79338
      Rupjyoti Sarmah 提交于
      This patch adds MSI support for 440SPe, 460Ex, 460Sx and 405Ex.
      Signed-off-by: NRupjyoti Sarmah <rsarmah@apm.com>
      Signed-off-by: NTirumala R Marri <tmarri@apm.com>
      Acked-by: NJosh Boyer <jwboyer@linux.vnet.ibm.com>
      Signed-off-by: NBenjamin Herrenschmidt <benh@kernel.crashing.org>
      3fb79338
    • M
      powerpc/cell: Rename ipi functions to match current abstractions · d5a1c193
      Milton Miller 提交于
      Rename functions and arguments to reflect current usage.  iic_cause_ipi
      becomes iic_message_pass and iic_ipi_to_irq becomes iic_msg_to_irq,
      and iic_request_ipi now takes a message (msg) instead of an ipi number.
      Also mesg is renamed to msg.
      
      Commit f1072939 (powerpc: Remove checks for MSG_ALL and
      MSG_ALL_BUT_SELF) connected the smp_message_pass hook for cell to the
      underlying iic_cause_IPI, a platform unique name.  Later 23d72bfd
      (powerpc: Consolidate ipi message mux and demux) added a cause_ipi
      hook to the smp_ops, also used in message passing, but for controllers
      that can not send 4 unique messages and require multiplexing.  It is
      even more confusing that the both take two arguments, but one is the
      small message ordinal and the other is an opaque long data associated
      with the cpu.
      
      Since cell iic maps messages one to one to ipi irqs, rename the
      function and argument to translate from ipi to message.  Also make it
      clear that iic_request_ipi takes a message number as the argument
      for which ipi to create and request.
      
      No functionional change, just renames to avoid future confusion.
      Signed-off-by: NMilton Miller <miltonm@bga.com>
      Signed-off-by: NBenjamin Herrenschmidt <benh@kernel.crashing.org>
      d5a1c193
    • M
      powerpc/cell: Use common smp ipi actions · 7ef71d75
      Milton Miller 提交于
      The cell iic interrupt controller has enough software caused interrupts
      to use a unique interrupt for each of the 4 messages powerpc uses.
      This means each interrupt gets its own irq action/data combination.
      
      Use the seperate, optimized, arch common ipi action functions
      registered via the helper smp_request_message_ipi instead passing the
      message as action data to a single action that then demultipexes to
      the required acton via a switch statement.
      
      smp_request_message_ipi will register the action as IRQF_PER_CPU
      and IRQF_DISABLED, and WARN if the allocation fails for some reason,
      so no need to print on that failure.  It will return positive if
      the message will not be used by the kernel, in which case we can
      free the virq.
      
      In addition to elimiating inefficient code, this also corrects the
      error that a kernel built with kexec but without a debugger would
      not register the ipi for kdump to notify the other cpus of a crash.
      
      This also restores the debugger action to be static to kernel/smp.c.
      Signed-off-by: NMilton Miller <miltonm@bga.com>
      Signed-off-by: NBenjamin Herrenschmidt <benh@kernel.crashing.org>
      7ef71d75
  6. 19 5月, 2011 29 次提交