diff mbox

[RFC,4/4] pinctrl: sh-pfc: r8a77995: add Audio SSI pin support

Message ID 878tgtou1t.wl%kuninori.morimoto.gx@renesas.com (mailing list archive)
State Superseded
Delegated to: Geert Uytterhoeven
Headers show

Commit Message

Kuninori Morimoto Oct. 3, 2017, 2:23 a.m. UTC
From: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
---
 drivers/pinctrl/sh-pfc/pfc-r8a77995.c | 60 +++++++++++++++++++++++++++++++++++
 1 file changed, 60 insertions(+)

Comments

Sergei Shtylyov Oct. 3, 2017, 9:36 a.m. UTC | #1
Hello!

On 10/3/2017 5:23 AM, Kuninori Morimoto wrote:

> From: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
> 
> Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
> ---
>   drivers/pinctrl/sh-pfc/pfc-r8a77995.c | 60 +++++++++++++++++++++++++++++++++++
>   1 file changed, 60 insertions(+)
> 
> diff --git a/drivers/pinctrl/sh-pfc/pfc-r8a77995.c b/drivers/pinctrl/sh-pfc/pfc-r8a77995.c
> index 2b56253..1a5c5a7 100644
> --- a/drivers/pinctrl/sh-pfc/pfc-r8a77995.c
> +++ b/drivers/pinctrl/sh-pfc/pfc-r8a77995.c
> @@ -1232,6 +1232,50 @@ enum {
>   	SCIF_CLK_MARK,
>   };
>   
> +/* - SSI ---------------------------------------------------------------*/
> +static const unsigned int ssi3_data_pins[] = {
> +	/* SDATA3 */
> +	RCAR_GP_PIN(4, 3),
> +};
> +static const unsigned int ssi3_data_mux[] = {
> +	SSI_SDATA3_MARK,
> +};
> +static const unsigned int ssi34_ctrl_pins[] = {
> +	/* SCK34,  WS34 */
> +	RCAR_GP_PIN(4, 2), RCAR_GP_PIN(4, 4),
> +};
> +static const unsigned int ssi34_ctrl_mux[] = {
> +	SSI_SCK34_MARK, SSI_WS34_MARK,
> +};
> +static const unsigned int ssi4_ctrl_a_pins[] = {
> +	/* SCK4_A, WS4_A */

    Why these sudden A/B suffixes in the comments?
We haven't had them yet, I think.

> +	RCAR_GP_PIN(4, 5), RCAR_GP_PIN(4, 7),
> +};
> +static const unsigned int ssi4_ctrl_a_mux[] = {
> +	SSI_SCK4_A_MARK, SSI_WS4_A_MARK,
> +};
> +static const unsigned int ssi4_data_a_pins[] = {
> +	/* SDATA4_A */
> +	RCAR_GP_PIN(4, 6),
> +};
> +static const unsigned int ssi4_data_a_mux[] = {
> +	SSI_SDATA4_A_MARK,
> +};
> +static const unsigned int ssi4_ctrl_b_pins[] = {
> +	/* SCK4_B, WS4_B */
> +	RCAR_GP_PIN(2, 15), RCAR_GP_PIN(2, 20),
> +};
> +static const unsigned int ssi4_ctrl_b_mux[] = {
> +	SSI_SCK4_B_MARK, SSI_WS4_B_MARK,
> +};
> +static const unsigned int ssi4_data_b_pins[] = {
> +	/* SDATA4_B */
> +	RCAR_GP_PIN(2, 16),
> +};
> +static const unsigned int ssi4_data_b_mux[] = {
> +	SSI_SDATA4_B_MARK,
> +};
> +
>   static const struct sh_pfc_pin_group pinmux_groups[] = {
>   	SH_PFC_PIN_GROUP(audio_clka),
>   	SH_PFC_PIN_GROUP(audio_clkb),
[...]

MBR, Sergei
Geert Uytterhoeven Oct. 4, 2017, 1:50 p.m. UTC | #2
Hi Sergei, Morimoto-san,

On Tue, Oct 3, 2017 at 11:36 AM, Sergei Shtylyov
<sergei.shtylyov@cogentembedded.com> wrote:
> On 10/3/2017 5:23 AM, Kuninori Morimoto wrote:
>> From: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
>>
>> Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
>> ---
>>   drivers/pinctrl/sh-pfc/pfc-r8a77995.c | 60
>> +++++++++++++++++++++++++++++++++++
>>   1 file changed, 60 insertions(+)
>>
>> diff --git a/drivers/pinctrl/sh-pfc/pfc-r8a77995.c
>> b/drivers/pinctrl/sh-pfc/pfc-r8a77995.c
>> index 2b56253..1a5c5a7 100644
>> --- a/drivers/pinctrl/sh-pfc/pfc-r8a77995.c
>> +++ b/drivers/pinctrl/sh-pfc/pfc-r8a77995.c
>> @@ -1232,6 +1232,50 @@ enum {
>>         SCIF_CLK_MARK,
>>   };
>>   +/* - SSI
>> ---------------------------------------------------------------*/
>> +static const unsigned int ssi3_data_pins[] = {
>> +       /* SDATA3 */
>> +       RCAR_GP_PIN(4, 3),
>> +};
>> +static const unsigned int ssi3_data_mux[] = {
>> +       SSI_SDATA3_MARK,
>> +};
>> +static const unsigned int ssi34_ctrl_pins[] = {
>> +       /* SCK34,  WS34 */
>> +       RCAR_GP_PIN(4, 2), RCAR_GP_PIN(4, 4),
>> +};
>> +static const unsigned int ssi34_ctrl_mux[] = {
>> +       SSI_SCK34_MARK, SSI_WS34_MARK,
>> +};
>> +static const unsigned int ssi4_ctrl_a_pins[] = {
>> +       /* SCK4_A, WS4_A */
>
>
>    Why these sudden A/B suffixes in the comments?
> We haven't had them yet, I think.

Indeed. Other drivers don't even have the numerical suffixes, except for
R-Car H2 and E2.

Gr{oetje,eeting}s,

                        Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
                                -- Linus Torvalds
diff mbox

Patch

diff --git a/drivers/pinctrl/sh-pfc/pfc-r8a77995.c b/drivers/pinctrl/sh-pfc/pfc-r8a77995.c
index 2b56253..1a5c5a7 100644
--- a/drivers/pinctrl/sh-pfc/pfc-r8a77995.c
+++ b/drivers/pinctrl/sh-pfc/pfc-r8a77995.c
@@ -1232,6 +1232,50 @@  enum {
 	SCIF_CLK_MARK,
 };
 
+/* - SSI ---------------------------------------------------------------*/
+static const unsigned int ssi3_data_pins[] = {
+	/* SDATA3 */
+	RCAR_GP_PIN(4, 3),
+};
+static const unsigned int ssi3_data_mux[] = {
+	SSI_SDATA3_MARK,
+};
+static const unsigned int ssi34_ctrl_pins[] = {
+	/* SCK34,  WS34 */
+	RCAR_GP_PIN(4, 2), RCAR_GP_PIN(4, 4),
+};
+static const unsigned int ssi34_ctrl_mux[] = {
+	SSI_SCK34_MARK, SSI_WS34_MARK,
+};
+static const unsigned int ssi4_ctrl_a_pins[] = {
+	/* SCK4_A, WS4_A */
+	RCAR_GP_PIN(4, 5), RCAR_GP_PIN(4, 7),
+};
+static const unsigned int ssi4_ctrl_a_mux[] = {
+	SSI_SCK4_A_MARK, SSI_WS4_A_MARK,
+};
+static const unsigned int ssi4_data_a_pins[] = {
+	/* SDATA4_A */
+	RCAR_GP_PIN(4, 6),
+};
+static const unsigned int ssi4_data_a_mux[] = {
+	SSI_SDATA4_A_MARK,
+};
+static const unsigned int ssi4_ctrl_b_pins[] = {
+	/* SCK4_B, WS4_B */
+	RCAR_GP_PIN(2, 15), RCAR_GP_PIN(2, 20),
+};
+static const unsigned int ssi4_ctrl_b_mux[] = {
+	SSI_SCK4_B_MARK, SSI_WS4_B_MARK,
+};
+static const unsigned int ssi4_data_b_pins[] = {
+	/* SDATA4_B */
+	RCAR_GP_PIN(2, 16),
+};
+static const unsigned int ssi4_data_b_mux[] = {
+	SSI_SDATA4_B_MARK,
+};
+
 static const struct sh_pfc_pin_group pinmux_groups[] = {
 	SH_PFC_PIN_GROUP(audio_clka),
 	SH_PFC_PIN_GROUP(audio_clkb),
@@ -1272,6 +1316,12 @@  enum {
 	SH_PFC_PIN_GROUP(scif5_data_b),
 	SH_PFC_PIN_GROUP(scif5_clk_b),
 	SH_PFC_PIN_GROUP(scif_clk),
+	SH_PFC_PIN_GROUP(ssi3_data),
+	SH_PFC_PIN_GROUP(ssi34_ctrl),
+	SH_PFC_PIN_GROUP(ssi4_ctrl_a),
+	SH_PFC_PIN_GROUP(ssi4_data_a),
+	SH_PFC_PIN_GROUP(ssi4_ctrl_b),
+	SH_PFC_PIN_GROUP(ssi4_data_b),
 };
 
 static const char * const audio_clk_groups[] = {
@@ -1351,6 +1401,15 @@  enum {
 	"scif_clk",
 };
 
+static const char * const ssi_groups[] = {
+	"ssi3_data",
+	"ssi34_ctrl",
+	"ssi4_ctrl_a",
+	"ssi4_data_a",
+	"ssi4_ctrl_b",
+	"ssi4_data_b",
+};
+
 static const struct sh_pfc_function pinmux_functions[] = {
 	SH_PFC_FUNCTION(audio_clk),
 	SH_PFC_FUNCTION(i2c0),
@@ -1365,6 +1424,7 @@  enum {
 	SH_PFC_FUNCTION(scif4),
 	SH_PFC_FUNCTION(scif5),
 	SH_PFC_FUNCTION(scif_clk),
+	SH_PFC_FUNCTION(ssi),
 };
 
 static const struct pinmux_cfg_reg pinmux_config_regs[] = {