22 Aug, 2014

1 commit

  • Currently the sh-intc driver is compiled on all SuperH and
    non-multiplatform SH-Mobile platforms, while it's only used on a limited
    number of platforms:
    - SuperH: SH2(A), SH3(A), SH4(A)(L) (all but SH5)
    - ARM: sh7372, sh73a0

    Drop the "default y" on SH_INTC, make all CPU platforms that use it
    select it, and protect all sub-options by "if SH_INTC" to fix this.

    Signed-off-by: Geert Uytterhoeven
    Acked-by: Magnus Damm
    Signed-off-by: Simon Horman

    Geert Uytterhoeven
     

12 May, 2014

1 commit

  • If the kernel is built to support multi-ARM configuration with shmobile
    support built in, then drivers/sh is not built. This contains the PM
    runtime code in drivers/sh/pm_runtime.c, which implicitly enables the
    module clocks for all devices, and thus is quite essential.
    Without this, the state of clocks depends on implicit reset state, or on
    the bootloader.

    If ARCH_SHMOBILE_MULTI then build the drivers/sh directory, but ensure that
    bits that may conflict (drivers/sh/clk if the common clock framework is
    enabled) or are not used (drivers/sh/intc), are not built.
    Also, only enable the PM runtime code when actually running on a shmobile
    SoCs that needs it.

    ARCH_SHMOBILE_MULTI was added a while ago by commit
    efacfce5f8a523457e9419a25d52fe39db00b26a ("ARM: shmobile: Introduce
    ARCH_SHMOBILE_MULTI"), but drivers/sh was compiled for both
    ARCH_SHMOBILE_LEGACY and ARCH_SHMOBILE_MULTI until commit
    bf98c1eac1d4a6bcf00532e4fa41d8126cd6c187 ("ARM: Rename ARCH_SHMOBILE to
    ARCH_SHMOBILE_LEGACY").

    Inspired by a patch from Ben Dooks .

    Signed-off-by: Geert Uytterhoeven
    Signed-off-by: Simon Horman

    Geert Uytterhoeven
     

25 Jan, 2013

1 commit


10 Jul, 2012

1 commit

  • This follows the intc/clk changes and shuffles the PFC support code under
    its own directory. This will facilitate better code sharing, and allow us
    to trim down the exported interface by quite a margin.

    Signed-off-by: Paul Mundt

    Paul Mundt
     

20 Jun, 2012

2 commits

  • This implements some Kconfig knobs for ensuring that the PFC gpio chip
    can be disabled or built as a module in the cases where it's optional, or
    forcibly enabled in cases where it's not.

    Signed-off-by: Paul Mundt

    Paul Mundt
     
  • This implements a bit of rework for the PFC code, making the core itself
    slightly more pluggable and moving out the gpio chip handling completely.

    The API is preserved in such a way that platforms that depend on it for
    early configuration are still able to do so, while making it possible to
    migrate to alternate interfaces going forward.

    This is the first step of chainsawing necessary to support the pinctrl
    API, with the eventual goal being able to decouple pin function state
    from the gpio API while retaining gpio chip tie-in for gpio pin functions
    only, relying on the pinctrl/pinmux API for non-gpio function demux.

    Signed-off-by: Paul Mundt

    Paul Mundt
     

12 Jan, 2012

1 commit


18 Nov, 2011

4 commits


11 Nov, 2011

1 commit

  • The runtime PM platform support stub in use by ARM-based SH/R-Mobile
    platforms contains nothing that's specifically ARM-related and instead of
    wholly generic to anything using the clock framework.

    The recent runtime PM changes interact rather badly with the lazy
    disabling of clocks late in the boot process through the clock framework,
    leading to situations where the runtime suspend/resume paths are entered
    without a clock being actively driven due to having been lazily gated
    off.

    In order to correct this we can trivially tie in the aforementioned stub
    as a general fallback for all SH platforms that don't presently have
    their own runtime PM implementations (the corner case being SH-based
    SH-Mobile platforms, which have their own stub through the hwblk API --
    which in turn has bitrotted and will be subsequently adapted to use the
    same stub as everyone else), regardless of whether the platforms choose
    to define power domains of their own or not.

    This fixes up regressions for clock framework users who also build in
    runtime PM support without any specific power domains of their own, which
    was previously causing the serial console to be lost when warring with
    lazy clock disabling.

    Signed-off-by: Paul Mundt

    Paul Mundt
     

18 Oct, 2010

1 commit


05 Oct, 2010

1 commit

  • This splits up the sh intc core in to something more vaguely resembling
    a subsystem. Most of the functionality was alread fairly well
    compartmentalized, and there were only a handful of interdependencies
    that needed to be resolved in the process.

    This also serves as future-proofing for the genirq and sparseirq rework,
    which will make some of the split out functionality wholly generic,
    allowing things to be killed off in place with minimal migration pain.

    Signed-off-by: Paul Mundt

    Paul Mundt
     

20 May, 2010

1 commit

  • Teach SH-Mobile ARM how to make use of the shared SH clock
    framework. This commit is one atomic switch that dumps the
    local hackery and instead links in the shared clock framework
    code in drivers/sh. A few local functions are kept in clock.c.

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

    Magnus Damm
     

13 May, 2010

2 commits

  • Move the CPG helpers to drivers/sh/clk-cpg.c V2.

    This to allow SH-Mobile ARM to share the code with
    SH. All functions except the legacy CPG stuff is moved.

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

    Magnus Damm
     
  • This patch is V2 of the SH clock framework move from
    arch/sh/kernel/cpu/clock.c to drivers/sh/clk.c. All
    code except the following functions are moved:
    clk_init(), clk_get() and clk_put().

    The init function is still kept in clock.c since it
    depends on the SH-specific machvec implementation.

    The symbols clk_get() and clk_put() already exist in
    the common ARM clkdev code, those symbols are left in
    the SH tree to avoid duplicating them for SH-Mobile ARM.

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

    Magnus Damm
     

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
     

01 Oct, 2008

1 commit


21 Sep, 2007

1 commit

  • The Maple bus is SEGA's proprietary serial bus for peripherals
    (keyboard, mouse, controller etc). The bus is capable of some
    (limited) hotplugging and operates at up to 2 M/bits.

    Drivers of one sort or another existed/exist for 2.4 and a rudimentary
    port, which didn't support the 2.6 device driver model was also in
    existence.

    This driver - for the bus logic itself and for the keyboard (other
    drivers will follow) are based on the code and concepts of those old
    drivers but have lots of completely rewritten parts.

    I have the maple bus code as a built in now as that seems the sane and
    rational way to handle something like that - you either want the bus
    or you don't.

    Signed-off-by: Adrian McMenamin
    Signed-off-by: Paul Mundt

    Adrian McMenamin
     

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