RE: [PATCH] pinctrl: sh-pfc: r8a7791: Add missing mmc_data8_b pin group

2017-07-13 Thread Chris Paterson
Hello Geert,

> From: linux-gpio-ow...@vger.kernel.org [mailto:linux-gpio-
> ow...@vger.kernel.org] On Behalf Of Geert Uytterhoeven
> Sent: 12 July 2017 12:59
> 
> Pins D6 and D7 of the MMC interface can be muxed to two different sets of
> pins, but currently only one set is supported.
> Add a pin group for the alternative set to fix this.
> 
> Signed-off-by: Geert Uytterhoeven 
Reviewed-by: Chris Paterson 

I've also tested this on the iwg20m board which uses these pins. All looks okay.
Tested-by: Chris Paterson 

Kind regards, Chris


[PATCH] pinctrl: sh-pfc: r8a7791: Add missing mmc_data8_b pin group

2017-07-12 Thread Geert Uytterhoeven
Pins D6 and D7 of the MMC interface can be muxed to two different sets
of pins, but currently only one set is supported.
Add a pin group for the alternative set to fix this.

Signed-off-by: Geert Uytterhoeven 
---
To be queued in sh-pfc-for-v4.14.

 drivers/pinctrl/sh-pfc/pfc-r8a7791.c | 15 ++-
 1 file changed, 14 insertions(+), 1 deletion(-)

diff --git a/drivers/pinctrl/sh-pfc/pfc-r8a7791.c 
b/drivers/pinctrl/sh-pfc/pfc-r8a7791.c
index 4c5ffbd75be77148..10bd35f8c894c58e 100644
--- a/drivers/pinctrl/sh-pfc/pfc-r8a7791.c
+++ b/drivers/pinctrl/sh-pfc/pfc-r8a7791.c
@@ -2589,6 +2589,17 @@ static const unsigned int mmc_data8_mux[] = {
MMC_D0_MARK, MMC_D1_MARK, MMC_D2_MARK, MMC_D3_MARK,
MMC_D4_MARK, MMC_D5_MARK, MMC_D6_MARK, MMC_D7_MARK,
 };
+static const unsigned int mmc_data8_b_pins[] = {
+   /* D[0:7] */
+   RCAR_GP_PIN(6, 18), RCAR_GP_PIN(6, 19),
+   RCAR_GP_PIN(6, 20), RCAR_GP_PIN(6, 21),
+   RCAR_GP_PIN(6, 22), RCAR_GP_PIN(6, 23),
+   RCAR_GP_PIN(6, 6), RCAR_GP_PIN(6, 7),
+};
+static const unsigned int mmc_data8_b_mux[] = {
+   MMC_D0_MARK, MMC_D1_MARK, MMC_D2_MARK, MMC_D3_MARK,
+   MMC_D4_MARK, MMC_D5_MARK, MMC_D6_B_MARK, MMC_D7_B_MARK,
+};
 static const unsigned int mmc_ctrl_pins[] = {
/* CLK, CMD */
RCAR_GP_PIN(6, 16), RCAR_GP_PIN(6, 17),
@@ -4420,7 +4431,7 @@ static const unsigned int vin2_clk_mux[] = {
 };
 
 static const struct {
-   struct sh_pfc_pin_group common[341];
+   struct sh_pfc_pin_group common[342];
struct sh_pfc_pin_group r8a779x[9];
 } pinmux_groups = {
.common = {
@@ -4523,6 +4534,7 @@ static const struct {
SH_PFC_PIN_GROUP(mmc_data1),
SH_PFC_PIN_GROUP(mmc_data4),
SH_PFC_PIN_GROUP(mmc_data8),
+   SH_PFC_PIN_GROUP(mmc_data8_b),
SH_PFC_PIN_GROUP(mmc_ctrl),
SH_PFC_PIN_GROUP(msiof0_clk),
SH_PFC_PIN_GROUP(msiof0_sync),
@@ -4955,6 +4967,7 @@ static const char * const mmc_groups[] = {
"mmc_data1",
"mmc_data4",
"mmc_data8",
+   "mmc_data8_b",
"mmc_ctrl",
 };
 
-- 
2.7.4