pinctrl: renesas: r8a7799[05]: Add MediaLB pins
authorNikita Yushchenko <nikita.yoush@cogentembedded.com>
Sat, 25 Dec 2021 19:17:13 +0000 (22:17 +0300)
committerGeert Uytterhoeven <geert+renesas@glider.be>
Mon, 24 Jan 2022 08:59:43 +0000 (09:59 +0100)
This adds pins, groups, and functions for MediaLB devices on Renesas
R-Car E3 and D3 SoCs.

Signed-off-by: Nikita Yushchenko <nikita.yoush@cogentembedded.com>
Link: https://lore.kernel.org/r/20211225191713.2187975-1-nikita.yoush@cogentembedded.com
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
drivers/pinctrl/renesas/pfc-r8a77990.c
drivers/pinctrl/renesas/pfc-r8a77995.c

index f44c7da..b7ab4c5 100644 (file)
@@ -2339,6 +2339,16 @@ static const unsigned int intc_ex_irq5_mux[] = {
        IRQ5_MARK,
 };
 
+#ifdef CONFIG_PINCTRL_PFC_R8A77990
+/* - MLB+ ------------------------------------------------------------------- */
+static const unsigned int mlb_3pin_pins[] = {
+       RCAR_GP_PIN(5, 17), RCAR_GP_PIN(5, 18), RCAR_GP_PIN(5, 19),
+};
+static const unsigned int mlb_3pin_mux[] = {
+       MLB_CLK_MARK, MLB_SIG_MARK, MLB_DAT_MARK,
+};
+#endif /* CONFIG_PINCTRL_PFC_R8A77990 */
+
 /* - MSIOF0 ----------------------------------------------------------------- */
 static const unsigned int msiof0_clk_pins[] = {
        /* SCK */
@@ -3842,7 +3852,7 @@ static const unsigned int vin5_clk_b_mux[] = {
 static const struct {
        struct sh_pfc_pin_group common[255];
 #ifdef CONFIG_PINCTRL_PFC_R8A77990
-       struct sh_pfc_pin_group automotive[21];
+       struct sh_pfc_pin_group automotive[22];
 #endif
 } pinmux_groups = {
        .common = {
@@ -4125,6 +4135,7 @@ static const struct {
                SH_PFC_PIN_GROUP(drif3_ctrl_b),
                SH_PFC_PIN_GROUP(drif3_data0_b),
                SH_PFC_PIN_GROUP(drif3_data1_b),
+               SH_PFC_PIN_GROUP(mlb_3pin),
        }
 #endif /* CONFIG_PINCTRL_PFC_R8A77990 */
 };
@@ -4315,6 +4326,12 @@ static const char * const intc_ex_groups[] = {
        "intc_ex_irq5",
 };
 
+#ifdef CONFIG_PINCTRL_PFC_R8A77990
+static const char * const mlb_3pin_groups[] = {
+       "mlb_3pin",
+};
+#endif /* CONFIG_PINCTRL_PFC_R8A77990 */
+
 static const char * const msiof0_groups[] = {
        "msiof0_clk",
        "msiof0_sync",
@@ -4569,7 +4586,7 @@ static const char * const vin5_groups[] = {
 static const struct {
        struct sh_pfc_function common[49];
 #ifdef CONFIG_PINCTRL_PFC_R8A77990
-       struct sh_pfc_function automotive[4];
+       struct sh_pfc_function automotive[5];
 #endif
 } pinmux_functions = {
        .common = {
@@ -4629,6 +4646,7 @@ static const struct {
                SH_PFC_FUNCTION(drif1),
                SH_PFC_FUNCTION(drif2),
                SH_PFC_FUNCTION(drif3),
+               SH_PFC_FUNCTION(mlb_3pin),
        }
 #endif /* CONFIG_PINCTRL_PFC_R8A77990 */
 };
index c56e1e4..7851948 100644 (file)
@@ -1257,6 +1257,14 @@ static const unsigned int i2c3_b_mux[] = {
        SCL3_B_MARK, SDA3_B_MARK,
 };
 
+/* - MLB+ ------------------------------------------------------------------- */
+static const unsigned int mlb_3pin_pins[] = {
+       RCAR_GP_PIN(0, 6), RCAR_GP_PIN(0, 8), RCAR_GP_PIN(0, 7),
+};
+static const unsigned int mlb_3pin_mux[] = {
+       MLB_CLK_MARK, MLB_SIG_MARK, MLB_DAT_MARK,
+};
+
 /* - MMC ------------------------------------------------------------------- */
 static const unsigned int mmc_data1_pins[] = {
        /* D0 */
@@ -2049,6 +2057,7 @@ static const struct sh_pfc_pin_group pinmux_groups[] = {
        SH_PFC_PIN_GROUP(i2c2_b),
        SH_PFC_PIN_GROUP(i2c3_a),
        SH_PFC_PIN_GROUP(i2c3_b),
+       SH_PFC_PIN_GROUP(mlb_3pin),
        SH_PFC_PIN_GROUP(mmc_data1),
        SH_PFC_PIN_GROUP(mmc_data4),
        SH_PFC_PIN_GROUP(mmc_data8),
@@ -2210,6 +2219,10 @@ static const char * const i2c3_groups[] = {
        "i2c3_b",
 };
 
+static const char * const mlb_3pin_groups[] = {
+       "mlb_3pin",
+};
+
 static const char * const mmc_groups[] = {
        "mmc_data1",
        "mmc_data4",
@@ -2370,6 +2383,7 @@ static const struct sh_pfc_function pinmux_functions[] = {
        SH_PFC_FUNCTION(i2c1),
        SH_PFC_FUNCTION(i2c2),
        SH_PFC_FUNCTION(i2c3),
+       SH_PFC_FUNCTION(mlb_3pin),
        SH_PFC_FUNCTION(mmc),
        SH_PFC_FUNCTION(msiof0),
        SH_PFC_FUNCTION(msiof1),