09 Jan, 2012

2 commits

  • Add PFC support for a 32-bit unlock register. Needed to
    drive the r8a7779 PFC that comes with a funky PMMR register.

    Signed-off-by: Magnus Damm
    Signed-off-by: Paul Mundt

    Magnus Damm
     
  • Add support for variable config reg hardware by adding
    the macro PINMUX_CFG_REG_VAR(). The width of each bitfield
    needs to be passed to the macro, and the correct space must
    be consumed by each bitfield in the enum table following the
    macro. Data registers still need to have fixed bitfields.

    Signed-off-by: Magnus Damm
    Signed-off-by: Paul Mundt

    Magnus Damm
     

09 Dec, 2011

1 commit

  • Add support for non-entity mapped PFC registers through
    the use of struct resource and ioremap()/iounmap().

    The PFC main data structure gets updated with a pointer
    to a struct resources array that point out all register
    windows used by the PFC instance. The register definitions
    are kept as physical addresses but the PFC code will do
    transparent conversion into virtual addresses whenever
    register windows are specified using with struct resource.

    To introduce as little performance penalty as possible the
    virtual address of each data register is cached in memory.
    The virtual address of each configuration register is however
    calculated during run time. This because the configuration
    is considered slow path so focus is instead put on keeping
    memory foot print as small as possible.

    The PFC register access code is in this patch updated from
    __raw_readN() / __raw_writeN() into ioreadN() / iowriteN().

    This patch is needed to support the PFC block in r8a7779.

    Signed-off-by: Magnus Damm
    Signed-off-by: Paul Mundt

    Magnus Damm
     

11 Nov, 2011

3 commits


28 Oct, 2011

2 commits

  • Add GPIO IRQ support to the shared PFC code in drivers/sh/pfc.c

    The enums pointed out by a certain GPIO will be matched against
    a table for IRQ to enum mappings.

    Only the shared PFC code is updated by this patch. SoC specific
    changes are also needed to allow platforms to make use of this
    feature.

    Signed-off-by: Magnus Damm
    Signed-off-by: Paul Mundt

    Magnus Damm
     
  • Remove unused member gpio_in_use from struct pinmux_info.

    Signed-off-by: Magnus Damm
    Signed-off-by: Paul Mundt

    Magnus Damm
     

04 Oct, 2010

1 commit

  • Presently the pinmux code is a one-way thing, but there's nothing
    preventing an unregistration if no one has grabbed any of the pins.
    This will permit us to save a bit of memory on systems that require pin
    demux for certain peripherals in the case where registration of those
    peripherals fails, or they are otherwise not attached to the system.

    Signed-off-by: Paul Mundt

    Paul Mundt
     

30 Nov, 2009

1 commit

  • This file breaks out the SuperH PFC code from
    arch/sh/kernel/gpio.c + arch/sh/include/asm/gpio.h
    to drivers/sh/pfc.c + include/linux/sh_pfc.h.

    Similar to the INTC stuff. The non-SuperH specific
    file location makes it possible to share the code
    between multiple architectures.

    Signed-off-by: Magnus Damm
    Signed-off-by: Paul Mundt

    Magnus Damm