16 Nov, 2011

4 commits

  • Now that all platforms are converted to MULTI_IRQ_HANDLER, remove the
    legacy support.

    Tested-by: Thomas Abraham
    Signed-off-by: Jamie Iles

    Jamie Iles
     
  • This adds a device tree binding for the VIC based on the of_irq_init()
    support. This adds an irqdomain to the vic and always registers all
    vics in the static vic array rather than for pm only to keep track of
    the irq domain. struct irq_data::hwirq is used where appropriate rather
    than runtime masking.

    v3: - include linux/export.h for THIS_MODULE
    v2: - use irq_domain_simple_ops
    - remove stub implementation of vic_of_init for !CONFIG_OF
    - Make VIC select IRQ_DOMAIN

    Reviewed-by: Rob Herring
    Reviewed-by: Grant Likely
    Tested-by: Thomas Abraham
    Signed-off-by: Jamie Iles

    Jamie Iles
     
  • 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: Marc Zyngier

    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
    Cc: Will Deacon
    Cc: Thomas Abraham
    Acked-by: Rob Herring
    Signed-off-by: Marc Zyngier

    Marc Zyngier
     

31 Oct, 2011

1 commit

  • Convert the gic interrupt controller to use irq domains in preparation
    for device-tree binding and MULTI_IRQ. This allows for translation between
    GIC interrupt IDs and Linux irq numbers.

    The meaning of irq_offset has changed. It now is just the number of skipped
    GIC interrupt IDs for the controller. It will be 16 for primary GIC and 32
    for secondary GICs.

    Signed-off-by: Rob Herring
    Cc: Marc Zyngier
    Reviewed-by: Jamie Iles
    Tested-by: Thomas Abraham
    Acked-by: Grant Likely

    Rob Herring
     

12 May, 2011

1 commit


26 Feb, 2011

2 commits


26 Nov, 2010

1 commit


17 May, 2010

1 commit


15 May, 2010

1 commit

  • PL330 is a configurable DMA controller PrimeCell device.
    The register map of the device is well defined.
    The configuration of a particular implementation can be
    read from the six configuration registers CR0-4,Dn.

    This patch implements a driver for the specification:-
    http://infocenter.arm.com/help/topic/com.arm.doc.ddi0424a/DDI0424A_dmac_pl330_r0p0_trm.pdf

    The exported interface should be sufficient to implement
    a driver for any DMA API.

    Signed-off-by: Jassi Brar
    Signed-off-by: Russell King

    Jassi Brar
     

02 May, 2010

1 commit


20 Mar, 2010

1 commit


14 Jun, 2009

1 commit


11 Jun, 2009

2 commits


07 May, 2009

1 commit

  • Add power management support to the VIC by registering
    each VIC as a system device to get suspend/resume
    events going.

    Since the VIC registeration is done early, we need to
    record the VICs in a static array which is used to add
    the system devices later once the initcalls are run. This
    means there is now a configuration value for the number
    of VICs in the system.

    Signed-off-by: Ben Dooks

    Ben Dooks
     

27 Nov, 2008

1 commit


17 Oct, 2008

1 commit


10 Oct, 2008

1 commit

  • Most ARM machines don't need a special "DMA" memory zone, and
    when configured out, the kernel becomes a bit smaller:

    | text data bss dec hex filename
    |3826182 102384 111700 4040266 3da64a vmlinux
    |3823593 101616 111700 4036909 3d992d vmlinux.nodmazone

    This is because the system now has only one zone total which effect is
    to optimize away many conditionals in page allocation paths.

    So let's configure this zone only on machines that need split zones.

    Signed-off-by: Nicolas Pitre
    Signed-off-by: Russell King

    Nicolas Pitre
     

08 Mar, 2007

1 commit


14 Jan, 2006

1 commit


06 Jan, 2006

1 commit

  • Patch from Richard Purdie

    This patch moves a large chunk of the sharpsl_pm driver to
    arch/arm/common so that it can be reused on other devices such as the
    SL-5500 (collie). It also abstracts some functions from the core into
    the machine and platform specific parts of the driver to aid reuse.

    Signed-off-by: Richard Purdie
    Signed-off-by: Russell King

    Richard Purdie
     

19 Aug, 2005

1 commit


17 Apr, 2005

1 commit

  • Initial git repository build. I'm not bothering with the full history,
    even though we have it. We can create a separate "historical" git
    archive of that later if we want to, and in the meantime it's about
    3.2GB when imported into git - space that would just make the early
    git days unnecessarily complicated, when we don't have a lot of good
    infrastructure for it.

    Let it rip!

    Linus Torvalds