| From e399da1134e4c85fc880d32e73fc9bfa18ef0ee4 Mon Sep 17 00:00:00 2001 |
| From: Geert Uytterhoeven <geert+renesas@glider.be> |
| Date: Mon, 13 Mar 2017 11:59:42 +0100 |
| Subject: [PATCH 0200/1795] pinctrl: sh-pfc: r8a7795: Add INTC-EX pins, groups |
| and function |
| |
| Add pins, groups, and a function for the INTC-EX interrupt controller on |
| R-Car H3 ES2.0. |
| |
| Extracted from a big patch in the BSP by Takeshi Kihara. |
| |
| Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be> |
| (cherry picked from commit 8480e6ca800046d14bfc610a24f2317341250b04) |
| Signed-off-by: Simon Horman <horms+renesas@verge.net.au> |
| Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be> |
| --- |
| drivers/pinctrl/sh-pfc/pfc-r8a7795.c | 60 ++++++++++++++++++++++++++++ |
| 1 file changed, 60 insertions(+) |
| |
| diff --git a/drivers/pinctrl/sh-pfc/pfc-r8a7795.c b/drivers/pinctrl/sh-pfc/pfc-r8a7795.c |
| index 9772a6c7b303..22201fc37420 100644 |
| --- a/drivers/pinctrl/sh-pfc/pfc-r8a7795.c |
| +++ b/drivers/pinctrl/sh-pfc/pfc-r8a7795.c |
| @@ -2127,6 +2127,50 @@ static const unsigned int i2c6_c_mux[] = { |
| SDA6_C_MARK, SCL6_C_MARK, |
| }; |
| |
| +/* - INTC-EX ---------------------------------------------------------------- */ |
| +static const unsigned int intc_ex_irq0_pins[] = { |
| + /* IRQ0 */ |
| + RCAR_GP_PIN(2, 0), |
| +}; |
| +static const unsigned int intc_ex_irq0_mux[] = { |
| + IRQ0_MARK, |
| +}; |
| +static const unsigned int intc_ex_irq1_pins[] = { |
| + /* IRQ1 */ |
| + RCAR_GP_PIN(2, 1), |
| +}; |
| +static const unsigned int intc_ex_irq1_mux[] = { |
| + IRQ1_MARK, |
| +}; |
| +static const unsigned int intc_ex_irq2_pins[] = { |
| + /* IRQ2 */ |
| + RCAR_GP_PIN(2, 2), |
| +}; |
| +static const unsigned int intc_ex_irq2_mux[] = { |
| + IRQ2_MARK, |
| +}; |
| +static const unsigned int intc_ex_irq3_pins[] = { |
| + /* IRQ3 */ |
| + RCAR_GP_PIN(2, 3), |
| +}; |
| +static const unsigned int intc_ex_irq3_mux[] = { |
| + IRQ3_MARK, |
| +}; |
| +static const unsigned int intc_ex_irq4_pins[] = { |
| + /* IRQ4 */ |
| + RCAR_GP_PIN(2, 4), |
| +}; |
| +static const unsigned int intc_ex_irq4_mux[] = { |
| + IRQ4_MARK, |
| +}; |
| +static const unsigned int intc_ex_irq5_pins[] = { |
| + /* IRQ5 */ |
| + RCAR_GP_PIN(2, 5), |
| +}; |
| +static const unsigned int intc_ex_irq5_mux[] = { |
| + IRQ5_MARK, |
| +}; |
| + |
| /* - MSIOF0 ----------------------------------------------------------------- */ |
| static const unsigned int msiof0_clk_pins[] = { |
| /* SCK */ |
| @@ -3636,6 +3680,12 @@ static const struct sh_pfc_pin_group pinmux_groups[] = { |
| SH_PFC_PIN_GROUP(i2c6_a), |
| SH_PFC_PIN_GROUP(i2c6_b), |
| SH_PFC_PIN_GROUP(i2c6_c), |
| + SH_PFC_PIN_GROUP(intc_ex_irq0), |
| + SH_PFC_PIN_GROUP(intc_ex_irq1), |
| + SH_PFC_PIN_GROUP(intc_ex_irq2), |
| + SH_PFC_PIN_GROUP(intc_ex_irq3), |
| + SH_PFC_PIN_GROUP(intc_ex_irq4), |
| + SH_PFC_PIN_GROUP(intc_ex_irq5), |
| SH_PFC_PIN_GROUP(msiof0_clk), |
| SH_PFC_PIN_GROUP(msiof0_sync), |
| SH_PFC_PIN_GROUP(msiof0_ss1), |
| @@ -3937,6 +3987,15 @@ static const char * const i2c6_groups[] = { |
| "i2c6_c", |
| }; |
| |
| +static const char * const intc_ex_groups[] = { |
| + "intc_ex_irq0", |
| + "intc_ex_irq1", |
| + "intc_ex_irq2", |
| + "intc_ex_irq3", |
| + "intc_ex_irq4", |
| + "intc_ex_irq5", |
| +}; |
| + |
| static const char * const msiof0_groups[] = { |
| "msiof0_clk", |
| "msiof0_sync", |
| @@ -4229,6 +4288,7 @@ static const struct sh_pfc_function pinmux_functions[] = { |
| SH_PFC_FUNCTION(i2c1), |
| SH_PFC_FUNCTION(i2c2), |
| SH_PFC_FUNCTION(i2c6), |
| + SH_PFC_FUNCTION(intc_ex), |
| SH_PFC_FUNCTION(msiof0), |
| SH_PFC_FUNCTION(msiof1), |
| SH_PFC_FUNCTION(msiof2), |
| -- |
| 2.19.0 |
| |