Re: [PATCH] pinctrl: sh-pfc: r8a77990: Add PWM pins, groups and functions

2018-09-19 Thread Geert Uytterhoeven
Hi Laurent,

On Wed, Sep 19, 2018 at 2:18 PM Laurent Pinchart
 wrote:
> The R8A77990 (E3) SoC has 7 PWM outputs, add pins, groups and functions
> for all of them.
>
> Signed-off-by: Laurent Pinchart 

Thanks for yur patch, but PWm has already been added, cfr.
https://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-drivers.git/commit/?h=sh-pfc-for-v4.20=951ae7cb068ffdc53afe6cb532aa5a3f215beaa2

> --- a/drivers/pinctrl/sh-pfc/pfc-r8a77990.c
> +++ b/drivers/pinctrl/sh-pfc/pfc-r8a77990.c

> +/* - PWM3 
> */
> +static const unsigned int pwm3_a_pins[] = {
> +   /* PWM */
> +   RCAR_GP_PIN(1, 1),
> +};
> +static const unsigned int pwm3_a_mux[] = {
> +   PWM3_A_MARK,
> +};
> +static const unsigned int pwm3_b_pins[] = {
> +   /* PWM */
> +   RCAR_GP_PIN(2, 5),

Should be 1, 5.

Gr{oetje,eeting}s,

Geert

-- 
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- ge...@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


[PATCH] pinctrl: sh-pfc: r8a77990: Add PWM pins, groups and functions

2018-09-19 Thread Laurent Pinchart
The R8A77990 (E3) SoC has 7 PWM outputs, add pins, groups and functions
for all of them.

Signed-off-by: Laurent Pinchart 
---
 drivers/pinctrl/sh-pfc/pfc-r8a77990.c | 180 ++
 1 file changed, 180 insertions(+)

diff --git a/drivers/pinctrl/sh-pfc/pfc-r8a77990.c 
b/drivers/pinctrl/sh-pfc/pfc-r8a77990.c
index bb9c943e2b37..eca3e678544f 100644
--- a/drivers/pinctrl/sh-pfc/pfc-r8a77990.c
+++ b/drivers/pinctrl/sh-pfc/pfc-r8a77990.c
@@ -1595,6 +1595,126 @@ static const unsigned int i2c7_b_mux[] = {
SCL7_B_MARK, SDA7_B_MARK,
 };
 
+/* - PWM0 
*/
+static const unsigned int pwm0_a_pins[] = {
+   /* PWM */
+   RCAR_GP_PIN(2, 22),
+};
+static const unsigned int pwm0_a_mux[] = {
+   PWM0_A_MARK,
+};
+static const unsigned int pwm0_b_pins[] = {
+   /* PWM */
+   RCAR_GP_PIN(6, 3),
+};
+static const unsigned int pwm0_b_mux[] = {
+   PWM0_B_MARK,
+};
+/* - PWM1 
*/
+static const unsigned int pwm1_a_pins[] = {
+   /* PWM */
+   RCAR_GP_PIN(2, 23),
+};
+static const unsigned int pwm1_a_mux[] = {
+   PWM1_A_MARK,
+};
+static const unsigned int pwm1_b_pins[] = {
+   /* PWM */
+   RCAR_GP_PIN(6, 4),
+};
+static const unsigned int pwm1_b_mux[] = {
+   PWM1_B_MARK,
+};
+/* - PWM2 
*/
+static const unsigned int pwm2_a_pins[] = {
+   /* PWM */
+   RCAR_GP_PIN(1, 0),
+};
+static const unsigned int pwm2_a_mux[] = {
+   PWM2_A_MARK,
+};
+static const unsigned int pwm2_b_pins[] = {
+   /* PWM */
+   RCAR_GP_PIN(1, 4),
+};
+static const unsigned int pwm2_b_mux[] = {
+   PWM2_B_MARK,
+};
+static const unsigned int pwm2_c_pins[] = {
+   /* PWM */
+   RCAR_GP_PIN(6, 5),
+};
+static const unsigned int pwm2_c_mux[] = {
+   PWM2_C_MARK,
+};
+/* - PWM3 
*/
+static const unsigned int pwm3_a_pins[] = {
+   /* PWM */
+   RCAR_GP_PIN(1, 1),
+};
+static const unsigned int pwm3_a_mux[] = {
+   PWM3_A_MARK,
+};
+static const unsigned int pwm3_b_pins[] = {
+   /* PWM */
+   RCAR_GP_PIN(2, 5),
+};
+static const unsigned int pwm3_b_mux[] = {
+   PWM3_B_MARK,
+};
+static const unsigned int pwm3_c_pins[] = {
+   /* PWM */
+   RCAR_GP_PIN(6, 6),
+};
+static const unsigned int pwm3_c_mux[] = {
+   PWM3_C_MARK,
+};
+/* - PWM4 
*/
+static const unsigned int pwm4_a_pins[] = {
+   /* PWM */
+   RCAR_GP_PIN(1, 3),
+};
+static const unsigned int pwm4_a_mux[] = {
+   PWM4_A_MARK,
+};
+static const unsigned int pwm4_b_pins[] = {
+   /* PWM */
+   RCAR_GP_PIN(6, 7),
+};
+static const unsigned int pwm4_b_mux[] = {
+   PWM4_B_MARK,
+};
+/* - PWM5 
*/
+static const unsigned int pwm5_a_pins[] = {
+   /* PWM */
+   RCAR_GP_PIN(2, 24),
+};
+static const unsigned int pwm5_a_mux[] = {
+   PWM5_A_MARK,
+};
+static const unsigned int pwm5_b_pins[] = {
+   /* PWM */
+   RCAR_GP_PIN(6, 10),
+};
+static const unsigned int pwm5_b_mux[] = {
+   PWM5_B_MARK,
+};
+/* - PWM6 
*/
+static const unsigned int pwm6_a_pins[] = {
+   /* PWM */
+   RCAR_GP_PIN(2, 25),
+};
+static const unsigned int pwm6_a_mux[] = {
+   PWM6_A_MARK,
+};
+static const unsigned int pwm6_b_pins[] = {
+   /* PWM */
+   RCAR_GP_PIN(6, 11),
+};
+static const unsigned int pwm6_b_mux[] = {
+   PWM6_B_MARK,
+};
+
 /* - SCIF0 -- 
*/
 static const unsigned int scif0_data_a_pins[] = {
/* RX, TX */
@@ -1951,6 +2071,22 @@ static const struct sh_pfc_pin_group pinmux_groups[] = {
SH_PFC_PIN_GROUP(i2c6_b),
SH_PFC_PIN_GROUP(i2c7_a),
SH_PFC_PIN_GROUP(i2c7_b),
+   SH_PFC_PIN_GROUP(pwm0_a),
+   SH_PFC_PIN_GROUP(pwm0_b),
+   SH_PFC_PIN_GROUP(pwm1_a),
+   SH_PFC_PIN_GROUP(pwm1_b),
+   SH_PFC_PIN_GROUP(pwm2_a),
+   SH_PFC_PIN_GROUP(pwm2_b),
+   SH_PFC_PIN_GROUP(pwm2_c),
+   SH_PFC_PIN_GROUP(pwm3_a),
+   SH_PFC_PIN_GROUP(pwm3_b),
+   SH_PFC_PIN_GROUP(pwm3_c),
+   SH_PFC_PIN_GROUP(pwm4_a),
+   SH_PFC_PIN_GROUP(pwm4_b),
+   SH_PFC_PIN_GROUP(pwm5_a),
+   SH_PFC_PIN_GROUP(pwm5_b),
+   SH_PFC_PIN_GROUP(pwm6_a),
+   SH_PFC_PIN_GROUP(pwm6_b),
SH_PFC_PIN_GROUP(scif0_data_a),
SH_PFC_PIN_GROUP(scif0_clk_a),
SH_PFC_PIN_GROUP(scif0_ctrl_a),
@@ -2043,6 +2179,43 @@ static const char * const i2c7_groups[] = {
"i2c7_b",
 };
 
+static const char * const pwm0_groups[] = {
+   "pwm0_a",
+   "pwm0_b",
+};
+
+static const char * const pwm1_groups[] = {
+   

Re: [PATCH] pinctrl: sh-pfc: r8a77990: Add PWM pins, groups and functions

2018-07-31 Thread Simon Horman
On Mon, Jul 30, 2018 at 08:47:58PM +0900, Yoshihiro Shimoda wrote:
> From: Takeshi Kihara 
> 
> This patch adds PWM{0,1,2,3,4,5,6} pins, groups and functions to
> the R8A77990 SoC.
> 
> Signed-off-by: Takeshi Kihara 
> Signed-off-by: Yoshihiro Shimoda 
> ---
>  drivers/pinctrl/sh-pfc/pfc-r8a77990.c | 211 
> ++

Reviewed-by: Simon Horman 



Re: [PATCH] pinctrl: sh-pfc: r8a77990: Add PWM pins, groups and functions

2018-07-30 Thread Geert Uytterhoeven
On Mon, Jul 30, 2018 at 1:49 PM Yoshihiro Shimoda
 wrote:
> From: Takeshi Kihara 
>
> This patch adds PWM{0,1,2,3,4,5,6} pins, groups and functions to
> the R8A77990 SoC.
>
> Signed-off-by: Takeshi Kihara 
> Signed-off-by: Yoshihiro Shimoda 

Reviewed-by: Geert Uytterhoeven 
i.e. will queue in sh-pfc-for-v4.20.

Gr{oetje,eeting}s,

Geert

-- 
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- ge...@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


[PATCH] pinctrl: sh-pfc: r8a77990: Add PWM pins, groups and functions

2018-07-30 Thread Yoshihiro Shimoda
From: Takeshi Kihara 

This patch adds PWM{0,1,2,3,4,5,6} pins, groups and functions to
the R8A77990 SoC.

Signed-off-by: Takeshi Kihara 
Signed-off-by: Yoshihiro Shimoda 
---
 drivers/pinctrl/sh-pfc/pfc-r8a77990.c | 211 ++
 1 file changed, 211 insertions(+)

diff --git a/drivers/pinctrl/sh-pfc/pfc-r8a77990.c 
b/drivers/pinctrl/sh-pfc/pfc-r8a77990.c
index b81c807..5ea63e5 100644
--- a/drivers/pinctrl/sh-pfc/pfc-r8a77990.c
+++ b/drivers/pinctrl/sh-pfc/pfc-r8a77990.c
@@ -1507,6 +1507,157 @@ enum {
SCL7_B_MARK, SDA7_B_MARK,
 };
 
+/* - PWM0 
*/
+static const unsigned int pwm0_a_pins[] = {
+   /* PWM */
+   RCAR_GP_PIN(2, 22),
+};
+
+static const unsigned int pwm0_a_mux[] = {
+   PWM0_A_MARK,
+};
+
+static const unsigned int pwm0_b_pins[] = {
+   /* PWM */
+   RCAR_GP_PIN(6, 3),
+};
+
+static const unsigned int pwm0_b_mux[] = {
+   PWM0_B_MARK,
+};
+
+/* - PWM1 
*/
+static const unsigned int pwm1_a_pins[] = {
+   /* PWM */
+   RCAR_GP_PIN(2, 23),
+};
+
+static const unsigned int pwm1_a_mux[] = {
+   PWM1_A_MARK,
+};
+
+static const unsigned int pwm1_b_pins[] = {
+   /* PWM */
+   RCAR_GP_PIN(6, 4),
+};
+
+static const unsigned int pwm1_b_mux[] = {
+   PWM1_B_MARK,
+};
+
+/* - PWM2 
*/
+static const unsigned int pwm2_a_pins[] = {
+   /* PWM */
+   RCAR_GP_PIN(1, 0),
+};
+
+static const unsigned int pwm2_a_mux[] = {
+   PWM2_A_MARK,
+};
+
+static const unsigned int pwm2_b_pins[] = {
+   /* PWM */
+   RCAR_GP_PIN(1, 4),
+};
+
+static const unsigned int pwm2_b_mux[] = {
+   PWM2_B_MARK,
+};
+
+static const unsigned int pwm2_c_pins[] = {
+   /* PWM */
+   RCAR_GP_PIN(6, 5),
+};
+
+static const unsigned int pwm2_c_mux[] = {
+   PWM2_C_MARK,
+};
+
+/* - PWM3 
*/
+static const unsigned int pwm3_a_pins[] = {
+   /* PWM */
+   RCAR_GP_PIN(1, 1),
+};
+
+static const unsigned int pwm3_a_mux[] = {
+   PWM3_A_MARK,
+};
+
+static const unsigned int pwm3_b_pins[] = {
+   /* PWM */
+   RCAR_GP_PIN(1, 5),
+};
+
+static const unsigned int pwm3_b_mux[] = {
+   PWM3_B_MARK,
+};
+
+static const unsigned int pwm3_c_pins[] = {
+   /* PWM */
+   RCAR_GP_PIN(6, 6),
+};
+
+static const unsigned int pwm3_c_mux[] = {
+   PWM3_C_MARK,
+};
+
+/* - PWM4 
*/
+static const unsigned int pwm4_a_pins[] = {
+   /* PWM */
+   RCAR_GP_PIN(1, 3),
+};
+
+static const unsigned int pwm4_a_mux[] = {
+   PWM4_A_MARK,
+};
+
+static const unsigned int pwm4_b_pins[] = {
+   /* PWM */
+   RCAR_GP_PIN(6, 7),
+};
+
+static const unsigned int pwm4_b_mux[] = {
+   PWM4_B_MARK,
+};
+
+/* - PWM5 
*/
+static const unsigned int pwm5_a_pins[] = {
+   /* PWM */
+   RCAR_GP_PIN(2, 24),
+};
+
+static const unsigned int pwm5_a_mux[] = {
+   PWM5_A_MARK,
+};
+
+static const unsigned int pwm5_b_pins[] = {
+   /* PWM */
+   RCAR_GP_PIN(6, 10),
+};
+
+static const unsigned int pwm5_b_mux[] = {
+   PWM5_B_MARK,
+};
+
+/* - PWM6 
*/
+static const unsigned int pwm6_a_pins[] = {
+   /* PWM */
+   RCAR_GP_PIN(2, 25),
+};
+
+static const unsigned int pwm6_a_mux[] = {
+   PWM6_A_MARK,
+};
+
+static const unsigned int pwm6_b_pins[] = {
+   /* PWM */
+   RCAR_GP_PIN(6, 11),
+};
+
+static const unsigned int pwm6_b_mux[] = {
+   PWM6_B_MARK,
+};
+
 /* - SCIF0 -- 
*/
 static const unsigned int scif0_data_a_pins[] = {
/* RX, TX */
@@ -1854,6 +2005,22 @@ enum {
SH_PFC_PIN_GROUP(i2c6_b),
SH_PFC_PIN_GROUP(i2c7_a),
SH_PFC_PIN_GROUP(i2c7_b),
+   SH_PFC_PIN_GROUP(pwm0_a),
+   SH_PFC_PIN_GROUP(pwm0_b),
+   SH_PFC_PIN_GROUP(pwm1_a),
+   SH_PFC_PIN_GROUP(pwm1_b),
+   SH_PFC_PIN_GROUP(pwm2_a),
+   SH_PFC_PIN_GROUP(pwm2_b),
+   SH_PFC_PIN_GROUP(pwm2_c),
+   SH_PFC_PIN_GROUP(pwm3_a),
+   SH_PFC_PIN_GROUP(pwm3_b),
+   SH_PFC_PIN_GROUP(pwm3_c),
+   SH_PFC_PIN_GROUP(pwm4_a),
+   SH_PFC_PIN_GROUP(pwm4_b),
+   SH_PFC_PIN_GROUP(pwm5_a),
+   SH_PFC_PIN_GROUP(pwm5_b),
+   SH_PFC_PIN_GROUP(pwm6_a),
+   SH_PFC_PIN_GROUP(pwm6_b),
SH_PFC_PIN_GROUP(scif0_data_a),
SH_PFC_PIN_GROUP(scif0_clk_a),
SH_PFC_PIN_GROUP(scif0_ctrl_a),
@@ -1934,6 +2101,43 @@ enum {
"i2c7_b",
 };
 
+static const char * const pwm0_groups[] = {
+   "pwm0_a",
+   "pwm0_b",
+};
+
+static const char * const pwm1_groups[] = {
+   "pwm1_a",
+