pinctrl: sh-pfc: Updates for v4.16 (take two)

- Add PWM pin groups on various R-Car Gen2 and RZ/G1 SoCs,
   - Add missing I2C5 pin groups on R-Car E2 and RZ/G1E,
   - Add SATA pin groups on R-Car H3 ES2.0.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJaT1M+AAoJEEgEtLw/Ve77BkwP/jR3qNvbAW6Ur5bQvl5rVJcc
 +OoSZU0ULXP6kwk0KxMcddpAWyCYKsy+lbQaIAnjJlZa/JCr4Am7A42OB/lTfDo1
 EQmt9aWA8RAGvsLOZwsfP/FCw8o3BpYOjS1EhoXi+Y91VHfSehCrZiPRs/2AkVZb
 cWntYOw5EJXwKcAH7gL4dhE93vSVyKTs8uimdZ+NlNDT3Z42vUckdGXqPjKYT/OB
 wNFk/u/bZ5iOR9b7K8UQFZ255Yzp8rIfFUsXUBUGBgN0DKjsbppYd2qV6JZoGC78
 LW2kewGXLHk1zuSnveY+AbEQKz/hKlPIviW0QoQ9nJwsMthTUf/OOZFTPuryuNLc
 jtUzlqNfEHS/fbLqii8ey3VourrI3vLGZ8jaXT0k33CK9cx8bY33g103oUpUBk0w
 HXy+I9DrvE74aEf2oqW+oHOjIRp4RPsVVtgbvw2wdDcroHtNcxYLjeEaujEjDNxm
 9yslzlNSt9R9O1J/c4gPfM90laOOr8By6nA98igQykDlGEyzLZnEsqD7pmMVOhYx
 Nh6mpw4J9IRy/6lHoMc9SWPeodEvDer7XDZI69gU1jNkanTiWb8ZPn498UP9p9WH
 ytN3yxaqqAFb60oQhKw1b5a9kCjbmzX+J4qirffIcw4XT9R9CO20IGwUeyPagkVs
 dSrdEmHEfwnufmjyMC8J
 =EJKS
 -----END PGP SIGNATURE-----

Merge tag 'sh-pfc-for-v4.16-tag2' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-drivers into devel

pinctrl: sh-pfc: Updates for v4.16 (take two)

  - Add PWM pin groups on various R-Car Gen2 and RZ/G1 SoCs,
  - Add missing I2C5 pin groups on R-Car E2 and RZ/G1E,
  - Add SATA pin groups on R-Car H3 ES2.0.
This commit is contained in:
Linus Walleij 2018-01-08 08:17:10 +01:00
commit 55b6986ca1
3 changed files with 371 additions and 2 deletions

View file

@ -4145,6 +4145,32 @@ static const unsigned int ssi9_ctrl_b_mux[] = {
SSI_SCK9_B_MARK, SSI_WS9_B_MARK,
};
/* - TPU -------------------------------------------------------------------- */
static const unsigned int tpu_to0_pins[] = {
RCAR_GP_PIN(6, 14),
};
static const unsigned int tpu_to0_mux[] = {
TPU_TO0_MARK,
};
static const unsigned int tpu_to1_pins[] = {
RCAR_GP_PIN(1, 17),
};
static const unsigned int tpu_to1_mux[] = {
TPU_TO1_MARK,
};
static const unsigned int tpu_to2_pins[] = {
RCAR_GP_PIN(1, 18),
};
static const unsigned int tpu_to2_mux[] = {
TPU_TO2_MARK,
};
static const unsigned int tpu_to3_pins[] = {
RCAR_GP_PIN(1, 24),
};
static const unsigned int tpu_to3_mux[] = {
TPU_TO3_MARK,
};
/* - USB0 ------------------------------------------------------------------- */
static const unsigned int usb0_pins[] = {
RCAR_GP_PIN(7, 23), /* PWEN */
@ -4431,7 +4457,7 @@ static const unsigned int vin2_clk_mux[] = {
};
static const struct {
struct sh_pfc_pin_group common[342];
struct sh_pfc_pin_group common[346];
struct sh_pfc_pin_group r8a779x[9];
} pinmux_groups = {
.common = {
@ -4743,6 +4769,10 @@ static const struct {
SH_PFC_PIN_GROUP(ssi9_data_b),
SH_PFC_PIN_GROUP(ssi9_ctrl),
SH_PFC_PIN_GROUP(ssi9_ctrl_b),
SH_PFC_PIN_GROUP(tpu_to0),
SH_PFC_PIN_GROUP(tpu_to1),
SH_PFC_PIN_GROUP(tpu_to2),
SH_PFC_PIN_GROUP(tpu_to3),
SH_PFC_PIN_GROUP(usb0),
SH_PFC_PIN_GROUP(usb1),
VIN_DATA_PIN_GROUP(vin0_data, 24),
@ -5278,6 +5308,13 @@ static const char * const ssi_groups[] = {
"ssi9_ctrl_b",
};
static const char * const tpu_groups[] = {
"tpu_to0",
"tpu_to1",
"tpu_to2",
"tpu_to3",
};
static const char * const usb0_groups[] = {
"usb0",
};
@ -5327,7 +5364,7 @@ static const char * const vin2_groups[] = {
};
static const struct {
struct sh_pfc_function common[57];
struct sh_pfc_function common[58];
struct sh_pfc_function r8a779x[2];
} pinmux_functions = {
.common = {
@ -5383,6 +5420,7 @@ static const struct {
SH_PFC_FUNCTION(sdhi1),
SH_PFC_FUNCTION(sdhi2),
SH_PFC_FUNCTION(ssi),
SH_PFC_FUNCTION(tpu),
SH_PFC_FUNCTION(usb0),
SH_PFC_FUNCTION(usb1),
SH_PFC_FUNCTION(vin0),

View file

@ -2228,6 +2228,35 @@ static const unsigned int i2c4_e_pins[] = {
static const unsigned int i2c4_e_mux[] = {
I2C4_SCL_E_MARK, I2C4_SDA_E_MARK,
};
/* - I2C5 ------------------------------------------------------------------- */
static const unsigned int i2c5_pins[] = {
/* SCL, SDA */
RCAR_GP_PIN(4, 14), RCAR_GP_PIN(4, 15),
};
static const unsigned int i2c5_mux[] = {
I2C5_SCL_MARK, I2C5_SDA_MARK,
};
static const unsigned int i2c5_b_pins[] = {
/* SCL, SDA */
RCAR_GP_PIN(0, 14), RCAR_GP_PIN(0, 15),
};
static const unsigned int i2c5_b_mux[] = {
I2C5_SCL_B_MARK, I2C5_SDA_B_MARK,
};
static const unsigned int i2c5_c_pins[] = {
/* SCL, SDA */
RCAR_GP_PIN(4, 31), RCAR_GP_PIN(4, 30),
};
static const unsigned int i2c5_c_mux[] = {
I2C5_SCL_C_MARK, I2C5_SDA_C_MARK,
};
static const unsigned int i2c5_d_pins[] = {
/* SCL, SDA */
RCAR_GP_PIN(3, 13), RCAR_GP_PIN(3, 14),
};
static const unsigned int i2c5_d_mux[] = {
I2C5_SCL_D_MARK, I2C5_SDA_D_MARK,
};
/* - INTC ------------------------------------------------------------------- */
static const unsigned int intc_irq0_pins[] = {
/* IRQ0 */
@ -2546,6 +2575,109 @@ static const unsigned int msiof2_tx_b_pins[] = {
static const unsigned int msiof2_tx_b_mux[] = {
MSIOF2_TXD_B_MARK,
};
/* - PWM -------------------------------------------------------------------- */
static const unsigned int pwm0_pins[] = {
RCAR_GP_PIN(1, 14),
};
static const unsigned int pwm0_mux[] = {
PWM0_MARK,
};
static const unsigned int pwm0_b_pins[] = {
RCAR_GP_PIN(5, 3),
};
static const unsigned int pwm0_b_mux[] = {
PWM0_B_MARK,
};
static const unsigned int pwm1_pins[] = {
RCAR_GP_PIN(4, 5),
};
static const unsigned int pwm1_mux[] = {
PWM1_MARK,
};
static const unsigned int pwm1_b_pins[] = {
RCAR_GP_PIN(5, 10),
};
static const unsigned int pwm1_b_mux[] = {
PWM1_B_MARK,
};
static const unsigned int pwm1_c_pins[] = {
RCAR_GP_PIN(1, 18),
};
static const unsigned int pwm1_c_mux[] = {
PWM1_C_MARK,
};
static const unsigned int pwm2_pins[] = {
RCAR_GP_PIN(4, 10),
};
static const unsigned int pwm2_mux[] = {
PWM2_MARK,
};
static const unsigned int pwm2_b_pins[] = {
RCAR_GP_PIN(5, 17),
};
static const unsigned int pwm2_b_mux[] = {
PWM2_B_MARK,
};
static const unsigned int pwm2_c_pins[] = {
RCAR_GP_PIN(0, 13),
};
static const unsigned int pwm2_c_mux[] = {
PWM2_C_MARK,
};
static const unsigned int pwm3_pins[] = {
RCAR_GP_PIN(4, 13),
};
static const unsigned int pwm3_mux[] = {
PWM3_MARK,
};
static const unsigned int pwm3_b_pins[] = {
RCAR_GP_PIN(0, 16),
};
static const unsigned int pwm3_b_mux[] = {
PWM3_B_MARK,
};
static const unsigned int pwm4_pins[] = {
RCAR_GP_PIN(1, 3),
};
static const unsigned int pwm4_mux[] = {
PWM4_MARK,
};
static const unsigned int pwm4_b_pins[] = {
RCAR_GP_PIN(0, 21),
};
static const unsigned int pwm4_b_mux[] = {
PWM4_B_MARK,
};
static const unsigned int pwm5_pins[] = {
RCAR_GP_PIN(3, 30),
};
static const unsigned int pwm5_mux[] = {
PWM5_MARK,
};
static const unsigned int pwm5_b_pins[] = {
RCAR_GP_PIN(4, 0),
};
static const unsigned int pwm5_b_mux[] = {
PWM5_B_MARK,
};
static const unsigned int pwm5_c_pins[] = {
RCAR_GP_PIN(0, 10),
};
static const unsigned int pwm5_c_mux[] = {
PWM5_C_MARK,
};
static const unsigned int pwm6_pins[] = {
RCAR_GP_PIN(4, 8),
};
static const unsigned int pwm6_mux[] = {
PWM6_MARK,
};
static const unsigned int pwm6_b_pins[] = {
RCAR_GP_PIN(0, 7),
};
static const unsigned int pwm6_b_mux[] = {
PWM6_B_MARK,
};
/* - QSPI ------------------------------------------------------------------- */
static const unsigned int qspi_ctrl_pins[] = {
/* SPCLK, SSL */
@ -3390,6 +3522,79 @@ static const unsigned int ssi9_ctrl_b_pins[] = {
static const unsigned int ssi9_ctrl_b_mux[] = {
SSI_SCK9_B_MARK, SSI_WS9_B_MARK,
};
/* - TPU -------------------------------------------------------------------- */
static const unsigned int tpu_to0_pins[] = {
RCAR_GP_PIN(3, 31),
};
static const unsigned int tpu_to0_mux[] = {
TPUTO0_MARK,
};
static const unsigned int tpu_to0_b_pins[] = {
RCAR_GP_PIN(3, 30),
};
static const unsigned int tpu_to0_b_mux[] = {
TPUTO0_B_MARK,
};
static const unsigned int tpu_to0_c_pins[] = {
RCAR_GP_PIN(1, 18),
};
static const unsigned int tpu_to0_c_mux[] = {
TPUTO0_C_MARK,
};
static const unsigned int tpu_to1_pins[] = {
RCAR_GP_PIN(4, 9),
};
static const unsigned int tpu_to1_mux[] = {
TPUTO1_MARK,
};
static const unsigned int tpu_to1_b_pins[] = {
RCAR_GP_PIN(4, 0),
};
static const unsigned int tpu_to1_b_mux[] = {
TPUTO1_B_MARK,
};
static const unsigned int tpu_to1_c_pins[] = {
RCAR_GP_PIN(4, 4),
};
static const unsigned int tpu_to1_c_mux[] = {
TPUTO1_C_MARK,
};
static const unsigned int tpu_to2_pins[] = {
RCAR_GP_PIN(1, 3),
};
static const unsigned int tpu_to2_mux[] = {
TPUTO2_MARK,
};
static const unsigned int tpu_to2_b_pins[] = {
RCAR_GP_PIN(1, 0),
};
static const unsigned int tpu_to2_b_mux[] = {
TPUTO2_B_MARK,
};
static const unsigned int tpu_to2_c_pins[] = {
RCAR_GP_PIN(0, 22),
};
static const unsigned int tpu_to2_c_mux[] = {
TPUTO2_C_MARK,
};
static const unsigned int tpu_to3_pins[] = {
RCAR_GP_PIN(1, 14),
};
static const unsigned int tpu_to3_mux[] = {
TPUTO3_MARK,
};
static const unsigned int tpu_to3_b_pins[] = {
RCAR_GP_PIN(1, 13),
};
static const unsigned int tpu_to3_b_mux[] = {
TPUTO3_B_MARK,
};
static const unsigned int tpu_to3_c_pins[] = {
RCAR_GP_PIN(0, 21),
};
static const unsigned int tpu_to3_c_mux[] = {
TPUTO3_C_MARK,
};
/* - USB0 ------------------------------------------------------------------- */
static const unsigned int usb0_pins[] = {
RCAR_GP_PIN(5, 24), /* PWEN */
@ -3645,6 +3850,10 @@ static const struct sh_pfc_pin_group pinmux_groups[] = {
SH_PFC_PIN_GROUP(i2c4_c),
SH_PFC_PIN_GROUP(i2c4_d),
SH_PFC_PIN_GROUP(i2c4_e),
SH_PFC_PIN_GROUP(i2c5),
SH_PFC_PIN_GROUP(i2c5_b),
SH_PFC_PIN_GROUP(i2c5_c),
SH_PFC_PIN_GROUP(i2c5_d),
SH_PFC_PIN_GROUP(intc_irq0),
SH_PFC_PIN_GROUP(intc_irq1),
SH_PFC_PIN_GROUP(intc_irq2),
@ -3689,6 +3898,23 @@ static const struct sh_pfc_pin_group pinmux_groups[] = {
SH_PFC_PIN_GROUP(msiof2_ss2_b),
SH_PFC_PIN_GROUP(msiof2_rx_b),
SH_PFC_PIN_GROUP(msiof2_tx_b),
SH_PFC_PIN_GROUP(pwm0),
SH_PFC_PIN_GROUP(pwm0_b),
SH_PFC_PIN_GROUP(pwm1),
SH_PFC_PIN_GROUP(pwm1_b),
SH_PFC_PIN_GROUP(pwm1_c),
SH_PFC_PIN_GROUP(pwm2),
SH_PFC_PIN_GROUP(pwm2_b),
SH_PFC_PIN_GROUP(pwm2_c),
SH_PFC_PIN_GROUP(pwm3),
SH_PFC_PIN_GROUP(pwm3_b),
SH_PFC_PIN_GROUP(pwm4),
SH_PFC_PIN_GROUP(pwm4_b),
SH_PFC_PIN_GROUP(pwm5),
SH_PFC_PIN_GROUP(pwm5_b),
SH_PFC_PIN_GROUP(pwm5_c),
SH_PFC_PIN_GROUP(pwm6),
SH_PFC_PIN_GROUP(pwm6_b),
SH_PFC_PIN_GROUP(qspi_ctrl),
SH_PFC_PIN_GROUP(qspi_data2),
SH_PFC_PIN_GROUP(qspi_data4),
@ -3806,6 +4032,18 @@ static const struct sh_pfc_pin_group pinmux_groups[] = {
SH_PFC_PIN_GROUP(ssi9_ctrl),
SH_PFC_PIN_GROUP(ssi9_data_b),
SH_PFC_PIN_GROUP(ssi9_ctrl_b),
SH_PFC_PIN_GROUP(tpu_to0),
SH_PFC_PIN_GROUP(tpu_to0_b),
SH_PFC_PIN_GROUP(tpu_to0_c),
SH_PFC_PIN_GROUP(tpu_to1),
SH_PFC_PIN_GROUP(tpu_to1_b),
SH_PFC_PIN_GROUP(tpu_to1_c),
SH_PFC_PIN_GROUP(tpu_to2),
SH_PFC_PIN_GROUP(tpu_to2_b),
SH_PFC_PIN_GROUP(tpu_to2_c),
SH_PFC_PIN_GROUP(tpu_to3),
SH_PFC_PIN_GROUP(tpu_to3_b),
SH_PFC_PIN_GROUP(tpu_to3_c),
SH_PFC_PIN_GROUP(usb0),
SH_PFC_PIN_GROUP(usb1),
VIN_DATA_PIN_GROUP(vin0_data, 24),
@ -3991,6 +4229,13 @@ static const char * const i2c4_groups[] = {
"i2c4_e",
};
static const char * const i2c5_groups[] = {
"i2c5",
"i2c5_b",
"i2c5_c",
"i2c5_d",
};
static const char * const intc_groups[] = {
"intc_irq0",
"intc_irq1",
@ -4050,6 +4295,44 @@ static const char * const msiof2_groups[] = {
"msiof2_tx_b",
};
static const char * const pwm0_groups[] = {
"pwm0",
"pwm0_b",
};
static const char * const pwm1_groups[] = {
"pwm1",
"pwm1_b",
"pwm1_c",
};
static const char * const pwm2_groups[] = {
"pwm2",
"pwm2_b",
"pwm2_c",
};
static const char * const pwm3_groups[] = {
"pwm3",
"pwm3_b",
};
static const char * const pwm4_groups[] = {
"pwm4",
"pwm4_b",
};
static const char * const pwm5_groups[] = {
"pwm5",
"pwm5_b",
"pwm5_c",
};
static const char * const pwm6_groups[] = {
"pwm6",
"pwm6_b",
};
static const char * const qspi_groups[] = {
"qspi_ctrl",
"qspi_data2",
@ -4230,6 +4513,21 @@ static const char * const ssi_groups[] = {
"ssi9_ctrl_b",
};
static const char * const tpu_groups[] = {
"tpu_to0",
"tpu_to0_b",
"tpu_to0_c",
"tpu_to1",
"tpu_to1_b",
"tpu_to1_c",
"tpu_to2",
"tpu_to2_b",
"tpu_to2_c",
"tpu_to3",
"tpu_to3_b",
"tpu_to3_c",
};
static const char * const usb0_groups[] = {
"usb0",
};
@ -4279,11 +4577,19 @@ static const struct sh_pfc_function pinmux_functions[] = {
SH_PFC_FUNCTION(i2c2),
SH_PFC_FUNCTION(i2c3),
SH_PFC_FUNCTION(i2c4),
SH_PFC_FUNCTION(i2c5),
SH_PFC_FUNCTION(intc),
SH_PFC_FUNCTION(mmc),
SH_PFC_FUNCTION(msiof0),
SH_PFC_FUNCTION(msiof1),
SH_PFC_FUNCTION(msiof2),
SH_PFC_FUNCTION(pwm0),
SH_PFC_FUNCTION(pwm1),
SH_PFC_FUNCTION(pwm2),
SH_PFC_FUNCTION(pwm3),
SH_PFC_FUNCTION(pwm4),
SH_PFC_FUNCTION(pwm5),
SH_PFC_FUNCTION(pwm6),
SH_PFC_FUNCTION(qspi),
SH_PFC_FUNCTION(scif0),
SH_PFC_FUNCTION(scif1),
@ -4305,6 +4611,7 @@ static const struct sh_pfc_function pinmux_functions[] = {
SH_PFC_FUNCTION(sdhi1),
SH_PFC_FUNCTION(sdhi2),
SH_PFC_FUNCTION(ssi),
SH_PFC_FUNCTION(tpu),
SH_PFC_FUNCTION(usb0),
SH_PFC_FUNCTION(usb1),
SH_PFC_FUNCTION(vin0),

View file

@ -3227,6 +3227,22 @@ static const unsigned int pwm6_b_mux[] = {
PWM6_B_MARK,
};
/* - SATA --------------------------------------------------------------------*/
static const unsigned int sata0_devslp_a_pins[] = {
/* DEVSLP */
RCAR_GP_PIN(6, 16),
};
static const unsigned int sata0_devslp_a_mux[] = {
SATA_DEVSLP_A_MARK,
};
static const unsigned int sata0_devslp_b_pins[] = {
/* DEVSLP */
RCAR_GP_PIN(4, 6),
};
static const unsigned int sata0_devslp_b_mux[] = {
SATA_DEVSLP_B_MARK,
};
/* - SCIF0 ------------------------------------------------------------------ */
static const unsigned int scif0_data_pins[] = {
/* RX, TX */
@ -4092,6 +4108,8 @@ static const struct sh_pfc_pin_group pinmux_groups[] = {
SH_PFC_PIN_GROUP(pwm5_b),
SH_PFC_PIN_GROUP(pwm6_a),
SH_PFC_PIN_GROUP(pwm6_b),
SH_PFC_PIN_GROUP(sata0_devslp_a),
SH_PFC_PIN_GROUP(sata0_devslp_b),
SH_PFC_PIN_GROUP(scif0_data),
SH_PFC_PIN_GROUP(scif0_clk),
SH_PFC_PIN_GROUP(scif0_ctrl),
@ -4500,6 +4518,11 @@ static const char * const pwm6_groups[] = {
"pwm6_b",
};
static const char * const sata0_groups[] = {
"sata0_devslp_a",
"sata0_devslp_b",
};
static const char * const scif0_groups[] = {
"scif0_data",
"scif0_clk",
@ -4669,6 +4692,7 @@ static const struct sh_pfc_function pinmux_functions[] = {
SH_PFC_FUNCTION(pwm4),
SH_PFC_FUNCTION(pwm5),
SH_PFC_FUNCTION(pwm6),
SH_PFC_FUNCTION(sata0),
SH_PFC_FUNCTION(scif0),
SH_PFC_FUNCTION(scif1),
SH_PFC_FUNCTION(scif2),