2
0
mirror of https://github.com/edk2-porting/linux-next.git synced 2024-12-25 05:34:00 +08:00
linux-next/drivers/clk/renesas
Geert Uytterhoeven e34084fb9a clk: renesas: mstp: Make INTC-SYS a critical clock
INTC-SYS is the module clock for the GIC.  Accessing the GIC while it is
disabled causes:

    Unhandled fault: asynchronous external abort (0x1211) at 0x00000000

Currently, the GIC-400 driver cannot enable its module clock for several
reasons:
  - It does not use a platform device, so Runtime PM is not an option,
  - gic_of_init() runs before any clocks are registered, so it cannot
    enable the clock explicitly,
  - gic_of_init() cannot return -EPROBE_DEFER, as IRQCHIP_DECLARE()
    doesn't support deferred probing.

Hence we have to keep on relying on the boot loader for enabling the
module clock.

To prevent the module clock from being disabled when the CCF core thinks
it is unused, and thus causing a system lock-up, add a check to the MSTP
clock driver and enable CLK_IS_CRITICAL. This will make sure the module
clock is never disabled.

This is a hard dependency for describing the INTC-SYS clock in DT on
R-Mobile APE6 and R-Car Gen2.

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Acked-by: Stephen Boyd <sboyd@codeaurora.org>
2017-01-23 11:04:46 +01:00
..
clk-div6.c
clk-div6.h clk: renesas: div6: use RENESAS for #define 2016-03-15 18:13:02 -07:00
clk-emev2.c
clk-mstp.c clk: renesas: mstp: Make INTC-SYS a critical clock 2017-01-23 11:04:46 +01:00
clk-r8a73a4.c clk: renesas: Rename header file renesas.h 2016-03-15 18:12:14 -07:00
clk-r8a7740.c clk: renesas: Rename header file renesas.h 2016-03-15 18:12:14 -07:00
clk-r8a7778.c clk: renesas: r8a7778: Remove obsolete r8a7778_clocks_init() 2016-11-02 20:44:14 +01:00
clk-r8a7779.c clk: renesas: r8a7779: Remove obsolete r8a7779_clocks_init() 2016-11-02 20:44:17 +01:00
clk-rcar-gen2.c clk: renesas: rcar-gen2: Remove obsolete rcar_gen2_clocks_init() 2016-11-02 20:44:20 +01:00
clk-rz.c clk: renesas: rz: Select EXTAL vs USB clock 2016-09-05 14:16:25 +02:00
clk-sh73a0.c clk: renesas: Rename header file renesas.h 2016-03-15 18:12:14 -07:00
Kconfig clk: renesas: cpg-mssr: Add R8A7745 support 2016-11-10 15:29:30 +01:00
Makefile clk: renesas: cpg-mssr: Add R8A7745 support 2016-11-10 15:29:30 +01:00
r8a7743-cpg-mssr.c clk: renesas: cpg-mssr: Add R8A7743 support 2016-11-10 15:29:28 +01:00
r8a7745-cpg-mssr.c clk: renesas: cpg-mssr: Add R8A7745 support 2016-11-10 15:29:30 +01:00
r8a7795-cpg-mssr.c clk: renesas: r8a7795: Fix HDMI parent clock 2016-11-07 15:16:18 +01:00
r8a7796-cpg-mssr.c clk: renesas: r8a7796: Add MSIOF controller clocks 2016-12-27 10:56:08 +01:00
rcar-gen2-cpg.c clk: renesas: cpg-mssr: Add common R-Car Gen2 support 2016-11-10 15:29:25 +01:00
rcar-gen2-cpg.h clk: renesas: cpg-mssr: Add common R-Car Gen2 support 2016-11-10 15:29:25 +01:00
rcar-gen3-cpg.c Merge branch 'rcar-rst' into clk-renesas-for-v4.10 2016-11-02 20:53:26 +01:00
rcar-gen3-cpg.h clk: renesas: rcar-gen3-cpg: Remove obsolete rcar_gen3_read_mode_pins() 2016-11-02 20:43:59 +01:00
renesas-cpg-mssr.c clk: renesas: cpg-mssr: Migrate to CLK_IS_CRITICAL 2017-01-23 11:04:45 +01:00
renesas-cpg-mssr.h clk: renesas: cpg-mssr: Add R8A7745 support 2016-11-10 15:29:30 +01:00