Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

Merge tag 'renesas-pinmux2-for-v3.11' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas into next/drivers

From Simon Horman:

Second Round of Renesas ARM based SoC pinmux and GPIO update for v3.11

tidyup MMC_D1 pin for r8a7778 SoC
fix two pin numbers and add HSCIF pin groups to r8a7790 SoC
add pinmux data for MMCIF and SDHI interfaces for r8a73a4 SoC

* tag 'renesas-pinmux2-for-v3.11' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas:
sh-pfc: r8a7778: tidyup MMC_D1 pin
pinctrl: r8a7790: fix two pin numbers
sh-pfc: r8a7790: add HSCIF pin groups
pinctrl: r8a73a4: add pinmux data for MMCIF and SDHI interfaces

Signed-off-by: Arnd Bergmann <arnd@arndb.de>

+403 -26
+198
drivers/pinctrl/sh-pfc/pfc-r8a73a4.c
··· 1488 1488 IRQC_PINS_MUX(327, 55); 1489 1489 IRQC_PINS_MUX(328, 56); 1490 1490 IRQC_PINS_MUX(329, 57); 1491 + /* - MMCIF0 ----------------------------------------------------------------- */ 1492 + static const unsigned int mmc0_data1_pins[] = { 1493 + /* D[0] */ 1494 + 164, 1495 + }; 1496 + static const unsigned int mmc0_data1_mux[] = { 1497 + MMCD0_0_MARK, 1498 + }; 1499 + static const unsigned int mmc0_data4_pins[] = { 1500 + /* D[0:3] */ 1501 + 164, 165, 166, 167, 1502 + }; 1503 + static const unsigned int mmc0_data4_mux[] = { 1504 + MMCD0_0_MARK, MMCD0_1_MARK, MMCD0_2_MARK, MMCD0_3_MARK, 1505 + }; 1506 + static const unsigned int mmc0_data8_pins[] = { 1507 + /* D[0:7] */ 1508 + 164, 165, 166, 167, 168, 169, 170, 171, 1509 + }; 1510 + static const unsigned int mmc0_data8_mux[] = { 1511 + MMCD0_0_MARK, MMCD0_1_MARK, MMCD0_2_MARK, MMCD0_3_MARK, 1512 + MMCD0_4_MARK, MMCD0_5_MARK, MMCD0_6_MARK, MMCD0_7_MARK, 1513 + }; 1514 + static const unsigned int mmc0_ctrl_pins[] = { 1515 + /* CMD, CLK */ 1516 + 172, 173, 1517 + }; 1518 + static const unsigned int mmc0_ctrl_mux[] = { 1519 + MMCCMD0_MARK, MMCCLK0_MARK, 1520 + }; 1521 + /* - MMCIF1 ----------------------------------------------------------------- */ 1522 + static const unsigned int mmc1_data1_pins[] = { 1523 + /* D[0] */ 1524 + 199, 1525 + }; 1526 + static const unsigned int mmc1_data1_mux[] = { 1527 + MMCD1_0_MARK, 1528 + }; 1529 + static const unsigned int mmc1_data4_pins[] = { 1530 + /* D[0:3] */ 1531 + 199, 198, 197, 196, 1532 + }; 1533 + static const unsigned int mmc1_data4_mux[] = { 1534 + MMCD1_0_MARK, MMCD1_1_MARK, MMCD1_2_MARK, MMCD1_3_MARK, 1535 + }; 1536 + static const unsigned int mmc1_data8_pins[] = { 1537 + /* D[0:7] */ 1538 + 199, 198, 197, 196, 195, 194, 193, 192, 1539 + }; 1540 + static const unsigned int mmc1_data8_mux[] = { 1541 + MMCD1_0_MARK, MMCD1_1_MARK, MMCD1_2_MARK, MMCD1_3_MARK, 1542 + MMCD1_4_MARK, MMCD1_5_MARK, MMCD1_6_MARK, MMCD1_7_MARK, 1543 + }; 1544 + static const unsigned int mmc1_ctrl_pins[] = { 1545 + /* CMD, CLK */ 1546 + 200, 203, 1547 + }; 1548 + static const unsigned int mmc1_ctrl_mux[] = { 1549 + MMCCMD1_MARK, MMCCLK1_MARK, 1550 + }; 1491 1551 /* - SCIFA0 ----------------------------------------------------------------- */ 1492 1552 static const unsigned int scifa0_data_pins[] = { 1493 1553 /* SCIFA0_RXD, SCIFA0_TXD */ ··· 1743 1683 static const unsigned int scifb3_ctrl_b_mux[] = { 1744 1684 SCIFB3_RTS_38_MARK, SCIFB3_CTS_39_MARK, 1745 1685 }; 1686 + /* - SDHI0 ------------------------------------------------------------------ */ 1687 + static const unsigned int sdhi0_data1_pins[] = { 1688 + /* D0 */ 1689 + 302, 1690 + }; 1691 + static const unsigned int sdhi0_data1_mux[] = { 1692 + SDHID0_0_MARK, 1693 + }; 1694 + static const unsigned int sdhi0_data4_pins[] = { 1695 + /* D[0:3] */ 1696 + 302, 303, 304, 305, 1697 + }; 1698 + static const unsigned int sdhi0_data4_mux[] = { 1699 + SDHID0_0_MARK, SDHID0_1_MARK, SDHID0_2_MARK, SDHID0_3_MARK, 1700 + }; 1701 + static const unsigned int sdhi0_ctrl_pins[] = { 1702 + /* CLK, CMD */ 1703 + 308, 306, 1704 + }; 1705 + static const unsigned int sdhi0_ctrl_mux[] = { 1706 + SDHICLK0_MARK, SDHICMD0_MARK, 1707 + }; 1708 + static const unsigned int sdhi0_cd_pins[] = { 1709 + /* CD */ 1710 + 301, 1711 + }; 1712 + static const unsigned int sdhi0_cd_mux[] = { 1713 + SDHICD0_MARK, 1714 + }; 1715 + static const unsigned int sdhi0_wp_pins[] = { 1716 + /* WP */ 1717 + 307, 1718 + }; 1719 + static const unsigned int sdhi0_wp_mux[] = { 1720 + SDHIWP0_MARK, 1721 + }; 1722 + /* - SDHI1 ------------------------------------------------------------------ */ 1723 + static const unsigned int sdhi1_data1_pins[] = { 1724 + /* D0 */ 1725 + 289, 1726 + }; 1727 + static const unsigned int sdhi1_data1_mux[] = { 1728 + SDHID1_0_MARK, 1729 + }; 1730 + static const unsigned int sdhi1_data4_pins[] = { 1731 + /* D[0:3] */ 1732 + 289, 290, 291, 292, 1733 + }; 1734 + static const unsigned int sdhi1_data4_mux[] = { 1735 + SDHID1_0_MARK, SDHID1_1_MARK, SDHID1_2_MARK, SDHID1_3_MARK, 1736 + }; 1737 + static const unsigned int sdhi1_ctrl_pins[] = { 1738 + /* CLK, CMD */ 1739 + 293, 294, 1740 + }; 1741 + static const unsigned int sdhi1_ctrl_mux[] = { 1742 + SDHICLK1_MARK, SDHICMD1_MARK, 1743 + }; 1744 + /* - SDHI2 ------------------------------------------------------------------ */ 1745 + static const unsigned int sdhi2_data1_pins[] = { 1746 + /* D0 */ 1747 + 295, 1748 + }; 1749 + static const unsigned int sdhi2_data1_mux[] = { 1750 + SDHID2_0_MARK, 1751 + }; 1752 + static const unsigned int sdhi2_data4_pins[] = { 1753 + /* D[0:3] */ 1754 + 295, 296, 297, 298, 1755 + }; 1756 + static const unsigned int sdhi2_data4_mux[] = { 1757 + SDHID2_0_MARK, SDHID2_1_MARK, SDHID2_2_MARK, SDHID2_3_MARK, 1758 + }; 1759 + static const unsigned int sdhi2_ctrl_pins[] = { 1760 + /* CLK, CMD */ 1761 + 299, 300, 1762 + }; 1763 + static const unsigned int sdhi2_ctrl_mux[] = { 1764 + SDHICLK2_MARK, SDHICMD2_MARK, 1765 + }; 1746 1766 1747 1767 static const struct sh_pfc_pin_group pinmux_groups[] = { 1748 1768 SH_PFC_PIN_GROUP(irqc_irq0), ··· 1883 1743 SH_PFC_PIN_GROUP(irqc_irq55), 1884 1744 SH_PFC_PIN_GROUP(irqc_irq56), 1885 1745 SH_PFC_PIN_GROUP(irqc_irq57), 1746 + SH_PFC_PIN_GROUP(mmc0_data1), 1747 + SH_PFC_PIN_GROUP(mmc0_data4), 1748 + SH_PFC_PIN_GROUP(mmc0_data8), 1749 + SH_PFC_PIN_GROUP(mmc0_ctrl), 1750 + SH_PFC_PIN_GROUP(mmc1_data1), 1751 + SH_PFC_PIN_GROUP(mmc1_data4), 1752 + SH_PFC_PIN_GROUP(mmc1_data8), 1753 + SH_PFC_PIN_GROUP(mmc1_ctrl), 1886 1754 SH_PFC_PIN_GROUP(scifa0_data), 1887 1755 SH_PFC_PIN_GROUP(scifa0_clk), 1888 1756 SH_PFC_PIN_GROUP(scifa0_ctrl), ··· 1918 1770 SH_PFC_PIN_GROUP(scifb3_data_b), 1919 1771 SH_PFC_PIN_GROUP(scifb3_clk_b), 1920 1772 SH_PFC_PIN_GROUP(scifb3_ctrl_b), 1773 + SH_PFC_PIN_GROUP(sdhi0_data1), 1774 + SH_PFC_PIN_GROUP(sdhi0_data4), 1775 + SH_PFC_PIN_GROUP(sdhi0_ctrl), 1776 + SH_PFC_PIN_GROUP(sdhi0_cd), 1777 + SH_PFC_PIN_GROUP(sdhi0_wp), 1778 + SH_PFC_PIN_GROUP(sdhi1_data1), 1779 + SH_PFC_PIN_GROUP(sdhi1_data4), 1780 + SH_PFC_PIN_GROUP(sdhi1_ctrl), 1781 + SH_PFC_PIN_GROUP(sdhi2_data1), 1782 + SH_PFC_PIN_GROUP(sdhi2_data4), 1783 + SH_PFC_PIN_GROUP(sdhi2_ctrl), 1921 1784 }; 1922 1785 1923 1786 static const char * const irqc_groups[] = { ··· 1992 1833 "irqc_irq57", 1993 1834 }; 1994 1835 1836 + static const char * const mmc0_groups[] = { 1837 + "mmc0_data1", 1838 + "mmc0_data4", 1839 + "mmc0_data8", 1840 + "mmc0_ctrl", 1841 + }; 1842 + 1843 + static const char * const mmc1_groups[] = { 1844 + "mmc1_data1", 1845 + "mmc1_data4", 1846 + "mmc1_data8", 1847 + "mmc1_ctrl", 1848 + }; 1849 + 1995 1850 static const char * const scifa0_groups[] = { 1996 1851 "scifa0_data", 1997 1852 "scifa0_clk", ··· 2051 1878 "scifb3_ctrl_b", 2052 1879 }; 2053 1880 1881 + static const char * const sdhi0_groups[] = { 1882 + "sdhi0_data1", 1883 + "sdhi0_data4", 1884 + "sdhi0_ctrl", 1885 + "sdhi0_cd", 1886 + "sdhi0_wp", 1887 + }; 1888 + 1889 + static const char * const sdhi1_groups[] = { 1890 + "sdhi1_data1", 1891 + "sdhi1_data4", 1892 + "sdhi1_ctrl", 1893 + }; 1894 + 1895 + static const char * const sdhi2_groups[] = { 1896 + "sdhi2_data1", 1897 + "sdhi2_data4", 1898 + "sdhi2_ctrl", 1899 + }; 1900 + 2054 1901 static const struct sh_pfc_function pinmux_functions[] = { 2055 1902 SH_PFC_FUNCTION(irqc), 1903 + SH_PFC_FUNCTION(mmc0), 1904 + SH_PFC_FUNCTION(mmc1), 2056 1905 SH_PFC_FUNCTION(scifa0), 2057 1906 SH_PFC_FUNCTION(scifa1), 2058 1907 SH_PFC_FUNCTION(scifb0), 2059 1908 SH_PFC_FUNCTION(scifb1), 2060 1909 SH_PFC_FUNCTION(scifb2), 2061 1910 SH_PFC_FUNCTION(scifb3), 1911 + SH_PFC_FUNCTION(sdhi0), 1912 + SH_PFC_FUNCTION(sdhi1), 1913 + SH_PFC_FUNCTION(sdhi2), 2062 1914 }; 2063 1915 2064 1916 #undef PORTCR
+2 -2
drivers/pinctrl/sh-pfc/pfc-r8a7778.c
··· 1447 1447 MMC_PFC_CTRL(mmc_ctrl, MMC_CLK, MMC_CMD); 1448 1448 MMC_PFC_PINS(mmc_data1, RCAR_GP_PIN(1, 7)); 1449 1449 MMC_PFC_DAT1(mmc_data1, MMC_D0); 1450 - MMC_PFC_PINS(mmc_data4, RCAR_GP_PIN(1, 7), RCAR_GP_PIN(2, 8), 1450 + MMC_PFC_PINS(mmc_data4, RCAR_GP_PIN(1, 7), RCAR_GP_PIN(1, 8), 1451 1451 RCAR_GP_PIN(0, 5), RCAR_GP_PIN(0, 6)); 1452 1452 MMC_PFC_DAT4(mmc_data4, MMC_D0, MMC_D1, 1453 1453 MMC_D2, MMC_D3); 1454 - MMC_PFC_PINS(mmc_data8, RCAR_GP_PIN(1, 7), RCAR_GP_PIN(2, 8), 1454 + MMC_PFC_PINS(mmc_data8, RCAR_GP_PIN(1, 7), RCAR_GP_PIN(1, 8), 1455 1455 RCAR_GP_PIN(0, 5), RCAR_GP_PIN(0, 6), 1456 1456 RCAR_GP_PIN(1, 4), RCAR_GP_PIN(1, 0), 1457 1457 RCAR_GP_PIN(0, 30), RCAR_GP_PIN(0, 31));
+203 -24
drivers/pinctrl/sh-pfc/pfc-r8a7790.c
··· 1979 1979 static const unsigned int scif1_clk_e_mux[] = { 1980 1980 SCK1_E_MARK, 1981 1981 }; 1982 + /* - HSCIF0 ----------------------------------------------------------------- */ 1983 + static const unsigned int hscif0_data_pins[] = { 1984 + /* RX, TX */ 1985 + RCAR_GP_PIN(5, 8), RCAR_GP_PIN(5, 9), 1986 + }; 1987 + static const unsigned int hscif0_data_mux[] = { 1988 + HRX0_MARK, HTX0_MARK, 1989 + }; 1990 + static const unsigned int hscif0_clk_pins[] = { 1991 + /* SCK */ 1992 + RCAR_GP_PIN(5, 7), 1993 + }; 1994 + static const unsigned int hscif0_clk_mux[] = { 1995 + HSCK0_MARK, 1996 + }; 1997 + static const unsigned int hscif0_ctrl_pins[] = { 1998 + /* RTS, CTS */ 1999 + RCAR_GP_PIN(5, 11), RCAR_GP_PIN(5, 10), 2000 + }; 2001 + static const unsigned int hscif0_ctrl_mux[] = { 2002 + HRTS0_N_MARK, HCTS0_N_MARK, 2003 + }; 2004 + static const unsigned int hscif0_data_b_pins[] = { 2005 + /* RX, TX */ 2006 + RCAR_GP_PIN(1, 23), RCAR_GP_PIN(1, 12), 2007 + }; 2008 + static const unsigned int hscif0_data_b_mux[] = { 2009 + HRX0_B_MARK, HTX0_B_MARK, 2010 + }; 2011 + static const unsigned int hscif0_ctrl_b_pins[] = { 2012 + /* RTS, CTS */ 2013 + RCAR_GP_PIN(1, 29), RCAR_GP_PIN(1, 28), 2014 + }; 2015 + static const unsigned int hscif0_ctrl_b_mux[] = { 2016 + HRTS0_N_B_MARK, HCTS0_N_B_MARK, 2017 + }; 2018 + static const unsigned int hscif0_data_c_pins[] = { 2019 + /* RX, TX */ 2020 + RCAR_GP_PIN(5, 13), RCAR_GP_PIN(5, 16), 2021 + }; 2022 + static const unsigned int hscif0_data_c_mux[] = { 2023 + HRX0_C_MARK, HTX0_C_MARK, 2024 + }; 2025 + static const unsigned int hscif0_ctrl_c_pins[] = { 2026 + /* RTS, CTS */ 2027 + RCAR_GP_PIN(5, 3), RCAR_GP_PIN(5, 7), 2028 + }; 2029 + static const unsigned int hscif0_ctrl_c_mux[] = { 2030 + HRTS0_N_C_MARK, HCTS0_N_C_MARK, 2031 + }; 2032 + static const unsigned int hscif0_data_d_pins[] = { 2033 + /* RX, TX */ 2034 + RCAR_GP_PIN(3, 20), RCAR_GP_PIN(3, 21), 2035 + }; 2036 + static const unsigned int hscif0_data_d_mux[] = { 2037 + HRX0_D_MARK, HTX0_D_MARK, 2038 + }; 2039 + static const unsigned int hscif0_ctrl_d_pins[] = { 2040 + /* RTS, CTS */ 2041 + RCAR_GP_PIN(3, 23), RCAR_GP_PIN(3, 22), 2042 + }; 2043 + static const unsigned int hscif0_ctrl_d_mux[] = { 2044 + HRTS0_N_D_MARK, HCTS0_N_D_MARK, 2045 + }; 2046 + static const unsigned int hscif0_data_e_pins[] = { 2047 + /* RX, TX */ 2048 + RCAR_GP_PIN(2, 21), RCAR_GP_PIN(2, 22), 2049 + }; 2050 + static const unsigned int hscif0_data_e_mux[] = { 2051 + HRX0_E_MARK, HTX0_E_MARK, 2052 + }; 2053 + static const unsigned int hscif0_ctrl_e_pins[] = { 2054 + /* RTS, CTS */ 2055 + RCAR_GP_PIN(2, 24), RCAR_GP_PIN(2, 23), 2056 + }; 2057 + static const unsigned int hscif0_ctrl_e_mux[] = { 2058 + HRTS0_N_E_MARK, HCTS0_N_E_MARK, 2059 + }; 2060 + static const unsigned int hscif0_data_f_pins[] = { 2061 + /* RX, TX */ 2062 + RCAR_GP_PIN(2, 23), RCAR_GP_PIN(2, 25), 2063 + }; 2064 + static const unsigned int hscif0_data_f_mux[] = { 2065 + HRX0_F_MARK, HTX0_F_MARK, 2066 + }; 2067 + static const unsigned int hscif0_ctrl_f_pins[] = { 2068 + /* RTS, CTS */ 2069 + RCAR_GP_PIN(2, 26), RCAR_GP_PIN(2, 24), 2070 + }; 2071 + static const unsigned int hscif0_ctrl_f_mux[] = { 2072 + HRTS0_N_F_MARK, HCTS0_N_F_MARK, 2073 + }; 2074 + /* - HSCIF1 ----------------------------------------------------------------- */ 2075 + static const unsigned int hscif1_data_pins[] = { 2076 + /* RX, TX */ 2077 + RCAR_GP_PIN(4, 28), RCAR_GP_PIN(4, 29), 2078 + }; 2079 + static const unsigned int hscif1_data_mux[] = { 2080 + HRX1_MARK, HTX1_MARK, 2081 + }; 2082 + static const unsigned int hscif1_clk_pins[] = { 2083 + /* SCK */ 2084 + RCAR_GP_PIN(4, 27), 2085 + }; 2086 + static const unsigned int hscif1_clk_mux[] = { 2087 + HSCK1_MARK, 2088 + }; 2089 + static const unsigned int hscif1_ctrl_pins[] = { 2090 + /* RTS, CTS */ 2091 + RCAR_GP_PIN(4, 31), RCAR_GP_PIN(4, 30), 2092 + }; 2093 + static const unsigned int hscif1_ctrl_mux[] = { 2094 + HRTS1_N_MARK, HCTS1_N_MARK, 2095 + }; 2096 + static const unsigned int hscif1_data_b_pins[] = { 2097 + /* RX, TX */ 2098 + RCAR_GP_PIN(1, 12), RCAR_GP_PIN(1, 18), 2099 + }; 2100 + static const unsigned int hscif1_data_b_mux[] = { 2101 + HRX1_B_MARK, HTX1_B_MARK, 2102 + }; 2103 + static const unsigned int hscif1_clk_b_pins[] = { 2104 + /* SCK */ 2105 + RCAR_GP_PIN(1, 28), 2106 + }; 2107 + static const unsigned int hscif1_clk_b_mux[] = { 2108 + HSCK1_B_MARK, 2109 + }; 2110 + static const unsigned int hscif1_ctrl_b_pins[] = { 2111 + /* RTS, CTS */ 2112 + RCAR_GP_PIN(1, 14), RCAR_GP_PIN(1, 13), 2113 + }; 2114 + static const unsigned int hscif1_ctrl_b_mux[] = { 2115 + HRTS1_N_B_MARK, HCTS1_N_B_MARK, 2116 + }; 1982 2117 /* - SCIFA0 ----------------------------------------------------------------- */ 1983 2118 static const unsigned int scifa0_data_pins[] = { 1984 2119 /* RXD, TXD */ ··· 2506 2371 static const unsigned int tpu0_to3_mux[] = { 2507 2372 TPU0TO3_MARK, 2508 2373 }; 2509 - 2510 - /* - MMCIF ------------------------------------------------------------------ */ 2374 + /* - MMCIF0 ----------------------------------------------------------------- */ 2511 2375 static const unsigned int mmc0_data1_pins[] = { 2512 2376 /* D[0] */ 2513 2377 RCAR_GP_PIN(3, 18), ··· 2540 2406 static const unsigned int mmc0_ctrl_mux[] = { 2541 2407 MMC0_CLK_MARK, MMC0_CMD_MARK, 2542 2408 }; 2543 - 2409 + /* - MMCIF1 ----------------------------------------------------------------- */ 2544 2410 static const unsigned int mmc1_data1_pins[] = { 2545 2411 /* D[0] */ 2546 2412 RCAR_GP_PIN(3, 26), ··· 2561 2427 RCAR_GP_PIN(3, 26), RCAR_GP_PIN(3, 27), 2562 2428 RCAR_GP_PIN(3, 28), RCAR_GP_PIN(3, 29), 2563 2429 RCAR_GP_PIN(3, 30), RCAR_GP_PIN(3, 31), 2564 - RCAR_GP_PIN(3, 13), RCAR_GP_PIN(3, 14), 2430 + RCAR_GP_PIN(3, 14), RCAR_GP_PIN(3, 15), 2565 2431 }; 2566 2432 static const unsigned int mmc1_data8_mux[] = { 2567 2433 MMC1_D0_MARK, MMC1_D1_MARK, MMC1_D2_MARK, MMC1_D3_MARK, ··· 2574 2440 static const unsigned int mmc1_ctrl_mux[] = { 2575 2441 MMC1_CLK_MARK, MMC1_CMD_MARK, 2576 2442 }; 2577 - 2578 - /* - SDHI ------------------------------------------------------------------- */ 2443 + /* - SDHI0 ------------------------------------------------------------------ */ 2579 2444 static const unsigned int sdhi0_data1_pins[] = { 2580 2445 /* D0 */ 2581 2446 RCAR_GP_PIN(3, 2), ··· 2610 2477 static const unsigned int sdhi0_wp_mux[] = { 2611 2478 SD0_WP_MARK, 2612 2479 }; 2613 - 2480 + /* - SDHI1 ------------------------------------------------------------------ */ 2614 2481 static const unsigned int sdhi1_data1_pins[] = { 2615 2482 /* D0 */ 2616 2483 RCAR_GP_PIN(3, 10), ··· 2646 2513 static const unsigned int sdhi1_wp_mux[] = { 2647 2514 SD1_WP_MARK, 2648 2515 }; 2649 - 2516 + /* - SDHI2 ------------------------------------------------------------------ */ 2650 2517 static const unsigned int sdhi2_data1_pins[] = { 2651 2518 /* D0 */ 2652 2519 RCAR_GP_PIN(3, 18), ··· 2682 2549 static const unsigned int sdhi2_wp_mux[] = { 2683 2550 SD2_WP_MARK, 2684 2551 }; 2685 - 2552 + /* - SDHI3 ------------------------------------------------------------------ */ 2686 2553 static const unsigned int sdhi3_data1_pins[] = { 2687 2554 /* D0 */ 2688 2555 RCAR_GP_PIN(3, 26), ··· 2724 2591 SH_PFC_PIN_GROUP(eth_magic), 2725 2592 SH_PFC_PIN_GROUP(eth_mdio), 2726 2593 SH_PFC_PIN_GROUP(eth_rmii), 2594 + SH_PFC_PIN_GROUP(hscif0_data), 2595 + SH_PFC_PIN_GROUP(hscif0_clk), 2596 + SH_PFC_PIN_GROUP(hscif0_ctrl), 2597 + SH_PFC_PIN_GROUP(hscif0_data_b), 2598 + SH_PFC_PIN_GROUP(hscif0_ctrl_b), 2599 + SH_PFC_PIN_GROUP(hscif0_data_c), 2600 + SH_PFC_PIN_GROUP(hscif0_ctrl_c), 2601 + SH_PFC_PIN_GROUP(hscif0_data_d), 2602 + SH_PFC_PIN_GROUP(hscif0_ctrl_d), 2603 + SH_PFC_PIN_GROUP(hscif0_data_e), 2604 + SH_PFC_PIN_GROUP(hscif0_ctrl_e), 2605 + SH_PFC_PIN_GROUP(hscif0_data_f), 2606 + SH_PFC_PIN_GROUP(hscif0_ctrl_f), 2607 + SH_PFC_PIN_GROUP(hscif1_data), 2608 + SH_PFC_PIN_GROUP(hscif1_clk), 2609 + SH_PFC_PIN_GROUP(hscif1_ctrl), 2610 + SH_PFC_PIN_GROUP(hscif1_data_b), 2611 + SH_PFC_PIN_GROUP(hscif1_clk_b), 2612 + SH_PFC_PIN_GROUP(hscif1_ctrl_b), 2727 2613 SH_PFC_PIN_GROUP(intc_irq0), 2728 2614 SH_PFC_PIN_GROUP(intc_irq1), 2729 2615 SH_PFC_PIN_GROUP(intc_irq2), 2730 2616 SH_PFC_PIN_GROUP(intc_irq3), 2617 + SH_PFC_PIN_GROUP(mmc0_data1), 2618 + SH_PFC_PIN_GROUP(mmc0_data4), 2619 + SH_PFC_PIN_GROUP(mmc0_data8), 2620 + SH_PFC_PIN_GROUP(mmc0_ctrl), 2621 + SH_PFC_PIN_GROUP(mmc1_data1), 2622 + SH_PFC_PIN_GROUP(mmc1_data4), 2623 + SH_PFC_PIN_GROUP(mmc1_data8), 2624 + SH_PFC_PIN_GROUP(mmc1_ctrl), 2731 2625 SH_PFC_PIN_GROUP(scif0_data), 2732 2626 SH_PFC_PIN_GROUP(scif0_clk), 2733 2627 SH_PFC_PIN_GROUP(scif0_ctrl), ··· 2819 2659 SH_PFC_PIN_GROUP(scifb2_clk_b), 2820 2660 SH_PFC_PIN_GROUP(scifb2_ctrl_b), 2821 2661 SH_PFC_PIN_GROUP(scifb2_data_c), 2822 - SH_PFC_PIN_GROUP(tpu0_to0), 2823 - SH_PFC_PIN_GROUP(tpu0_to1), 2824 - SH_PFC_PIN_GROUP(tpu0_to2), 2825 - SH_PFC_PIN_GROUP(tpu0_to3), 2826 - SH_PFC_PIN_GROUP(mmc0_data1), 2827 - SH_PFC_PIN_GROUP(mmc0_data4), 2828 - SH_PFC_PIN_GROUP(mmc0_data8), 2829 - SH_PFC_PIN_GROUP(mmc0_ctrl), 2830 - SH_PFC_PIN_GROUP(mmc1_data1), 2831 - SH_PFC_PIN_GROUP(mmc1_data4), 2832 - SH_PFC_PIN_GROUP(mmc1_data8), 2833 - SH_PFC_PIN_GROUP(mmc1_ctrl), 2834 2662 SH_PFC_PIN_GROUP(sdhi0_data1), 2835 2663 SH_PFC_PIN_GROUP(sdhi0_data4), 2836 2664 SH_PFC_PIN_GROUP(sdhi0_ctrl), ··· 2839 2691 SH_PFC_PIN_GROUP(sdhi3_ctrl), 2840 2692 SH_PFC_PIN_GROUP(sdhi3_cd), 2841 2693 SH_PFC_PIN_GROUP(sdhi3_wp), 2694 + SH_PFC_PIN_GROUP(tpu0_to0), 2695 + SH_PFC_PIN_GROUP(tpu0_to1), 2696 + SH_PFC_PIN_GROUP(tpu0_to2), 2697 + SH_PFC_PIN_GROUP(tpu0_to3), 2842 2698 }; 2843 2699 2844 2700 static const char * const eth_groups[] = { ··· 2876 2724 "scif1_clk_d", 2877 2725 "scif1_data_e", 2878 2726 "scif1_clk_e", 2727 + }; 2728 + 2729 + static const char * const hscif0_groups[] = { 2730 + "hscif0_data", 2731 + "hscif0_clk", 2732 + "hscif0_ctrl", 2733 + "hscif0_data_b", 2734 + "hscif0_ctrl_b", 2735 + "hscif0_data_c", 2736 + "hscif0_ctrl_c", 2737 + "hscif0_data_d", 2738 + "hscif0_ctrl_d", 2739 + "hscif0_data_e", 2740 + "hscif0_ctrl_e", 2741 + "hscif0_data_f", 2742 + "hscif0_ctrl_f", 2743 + }; 2744 + 2745 + static const char * const hscif1_groups[] = { 2746 + "hscif1_data", 2747 + "hscif1_clk", 2748 + "hscif1_ctrl", 2749 + "hscif1_data_b", 2750 + "hscif1_clk_b", 2751 + "hscif1_ctrl_b", 2879 2752 }; 2880 2753 2881 2754 static const char * const scifa0_groups[] = { ··· 3027 2850 3028 2851 static const struct sh_pfc_function pinmux_functions[] = { 3029 2852 SH_PFC_FUNCTION(eth), 2853 + SH_PFC_FUNCTION(hscif0), 2854 + SH_PFC_FUNCTION(hscif1), 3030 2855 SH_PFC_FUNCTION(intc), 2856 + SH_PFC_FUNCTION(mmc0), 2857 + SH_PFC_FUNCTION(mmc1), 3031 2858 SH_PFC_FUNCTION(scif0), 3032 2859 SH_PFC_FUNCTION(scif1), 3033 2860 SH_PFC_FUNCTION(scifa0), ··· 3040 2859 SH_PFC_FUNCTION(scifb0), 3041 2860 SH_PFC_FUNCTION(scifb1), 3042 2861 SH_PFC_FUNCTION(scifb2), 3043 - SH_PFC_FUNCTION(tpu0), 3044 - SH_PFC_FUNCTION(mmc0), 3045 - SH_PFC_FUNCTION(mmc1), 3046 2862 SH_PFC_FUNCTION(sdhi0), 3047 2863 SH_PFC_FUNCTION(sdhi1), 3048 2864 SH_PFC_FUNCTION(sdhi2), 3049 2865 SH_PFC_FUNCTION(sdhi3), 2866 + SH_PFC_FUNCTION(tpu0), 3050 2867 }; 3051 2868 3052 2869 static struct pinmux_cfg_reg pinmux_config_regs[] = {