aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/pinctrl/sh-pfc/pfc-r8a7778.c54
1 files changed, 54 insertions, 0 deletions
diff --git a/drivers/pinctrl/sh-pfc/pfc-r8a7778.c b/drivers/pinctrl/sh-pfc/pfc-r8a7778.c
index 6b2c6b58aaf7..605f8ae6b70a 100644
--- a/drivers/pinctrl/sh-pfc/pfc-r8a7778.c
+++ b/drivers/pinctrl/sh-pfc/pfc-r8a7778.c
@@ -1371,6 +1371,32 @@ SCIF_PFC_CLK(hscif1_clk_a, HSCK1_A);
1371SCIF_PFC_PIN(hscif1_clk_b, RCAR_GP_PIN(4, 2)); 1371SCIF_PFC_PIN(hscif1_clk_b, RCAR_GP_PIN(4, 2));
1372SCIF_PFC_CLK(hscif1_clk_b, HSCK1_B); 1372SCIF_PFC_CLK(hscif1_clk_b, HSCK1_B);
1373 1373
1374/* - I2C macro ------------------------------------------------------------- */
1375#define I2C_PFC_PIN(name, args...) SH_PFC_PINS(name, args)
1376#define I2C_PFC_MUX(name, sda, scl) SH_PFC_MUX2(name, sda, scl)
1377
1378/* - I2C1 ------------------------------------------------------------------ */
1379I2C_PFC_PIN(i2c1_a, RCAR_GP_PIN(3, 8), RCAR_GP_PIN(3, 9));
1380I2C_PFC_MUX(i2c1_a, SDA1_A, SCL1_A);
1381I2C_PFC_PIN(i2c1_b, RCAR_GP_PIN(4, 17), RCAR_GP_PIN(4, 18));
1382I2C_PFC_MUX(i2c1_b, SDA1_B, SCL1_B);
1383
1384/* - I2C2 ------------------------------------------------------------------ */
1385I2C_PFC_PIN(i2c2_a, PIN_NUMBER(3, 20), RCAR_GP_PIN(1, 3));
1386I2C_PFC_MUX(i2c2_a, SDA2_A, SCL2_A);
1387I2C_PFC_PIN(i2c2_b, RCAR_GP_PIN(0, 3), RCAR_GP_PIN(0, 4));
1388I2C_PFC_MUX(i2c2_b, SDA2_B, SCL2_B);
1389I2C_PFC_PIN(i2c2_c, RCAR_GP_PIN(4, 15), RCAR_GP_PIN(4, 16));
1390I2C_PFC_MUX(i2c2_c, SDA2_C, SCL2_C);
1391
1392/* - I2C3 ------------------------------------------------------------------ */
1393I2C_PFC_PIN(i2c3_a, RCAR_GP_PIN(1, 14), RCAR_GP_PIN(1, 15));
1394I2C_PFC_MUX(i2c3_a, SDA3_A, SCL3_A);
1395I2C_PFC_PIN(i2c3_b, RCAR_GP_PIN(1, 16), RCAR_GP_PIN(1, 19));
1396I2C_PFC_MUX(i2c3_b, SDA3_B, SCL3_B);
1397I2C_PFC_PIN(i2c3_c, RCAR_GP_PIN(1, 22), RCAR_GP_PIN(1, 23));
1398I2C_PFC_MUX(i2c3_c, SDA3_C, SCL3_C);
1399
1374/* - SCIF CLOCK ------------------------------------------------------------- */ 1400/* - SCIF CLOCK ------------------------------------------------------------- */
1375SCIF_PFC_PIN(scif_clk, RCAR_GP_PIN(1, 16)); 1401SCIF_PFC_PIN(scif_clk, RCAR_GP_PIN(1, 16));
1376SCIF_PFC_CLK(scif_clk, SCIF_CLK); 1402SCIF_PFC_CLK(scif_clk, SCIF_CLK);
@@ -1584,6 +1610,14 @@ static const struct sh_pfc_pin_group pinmux_groups[] = {
1584 SH_PFC_PIN_GROUP(hscif1_ctrl_b), 1610 SH_PFC_PIN_GROUP(hscif1_ctrl_b),
1585 SH_PFC_PIN_GROUP(hscif1_clk_a), 1611 SH_PFC_PIN_GROUP(hscif1_clk_a),
1586 SH_PFC_PIN_GROUP(hscif1_clk_b), 1612 SH_PFC_PIN_GROUP(hscif1_clk_b),
1613 SH_PFC_PIN_GROUP(i2c1_a),
1614 SH_PFC_PIN_GROUP(i2c1_b),
1615 SH_PFC_PIN_GROUP(i2c2_a),
1616 SH_PFC_PIN_GROUP(i2c2_b),
1617 SH_PFC_PIN_GROUP(i2c2_c),
1618 SH_PFC_PIN_GROUP(i2c3_a),
1619 SH_PFC_PIN_GROUP(i2c3_b),
1620 SH_PFC_PIN_GROUP(i2c3_c),
1587 SH_PFC_PIN_GROUP(scif_clk), 1621 SH_PFC_PIN_GROUP(scif_clk),
1588 SH_PFC_PIN_GROUP(scif0_data_a), 1622 SH_PFC_PIN_GROUP(scif0_data_a),
1589 SH_PFC_PIN_GROUP(scif0_data_b), 1623 SH_PFC_PIN_GROUP(scif0_data_b),
@@ -1676,6 +1710,23 @@ static const char * const hscif1_groups[] = {
1676 "hscif1_clk_b", 1710 "hscif1_clk_b",
1677}; 1711};
1678 1712
1713static const char * const i2c1_groups[] = {
1714 "i2c1_a",
1715 "i2c1_b",
1716};
1717
1718static const char * const i2c2_groups[] = {
1719 "i2c2_a",
1720 "i2c2_b",
1721 "i2c2_c",
1722};
1723
1724static const char * const i2c3_groups[] = {
1725 "i2c3_a",
1726 "i2c3_b",
1727 "i2c3_c",
1728};
1729
1679static const char * const scif_clk_groups[] = { 1730static const char * const scif_clk_groups[] = {
1680 "scif_clk", 1731 "scif_clk",
1681}; 1732};
@@ -1790,6 +1841,9 @@ static const struct sh_pfc_function pinmux_functions[] = {
1790 SH_PFC_FUNCTION(ether), 1841 SH_PFC_FUNCTION(ether),
1791 SH_PFC_FUNCTION(hscif0), 1842 SH_PFC_FUNCTION(hscif0),
1792 SH_PFC_FUNCTION(hscif1), 1843 SH_PFC_FUNCTION(hscif1),
1844 SH_PFC_FUNCTION(i2c1),
1845 SH_PFC_FUNCTION(i2c2),
1846 SH_PFC_FUNCTION(i2c3),
1793 SH_PFC_FUNCTION(scif_clk), 1847 SH_PFC_FUNCTION(scif_clk),
1794 SH_PFC_FUNCTION(scif0), 1848 SH_PFC_FUNCTION(scif0),
1795 SH_PFC_FUNCTION(scif1), 1849 SH_PFC_FUNCTION(scif1),