aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTakeshi Kihara <takeshi.kihara.df@renesas.com>2017-08-09 08:19:46 -0400
committerGeert Uytterhoeven <geert+renesas@glider.be>2017-08-16 08:26:31 -0400
commit4e5a70ff61da6b24b9db6547ae234163a01df7d6 (patch)
tree469d6aaf3037253b49d6c3cda5f4f27466a4bf57
parente8c6b9eca54a8c4266fa9aeb49bb93ee45b8cdc7 (diff)
pinctrl: sh-pfc: r8a77995: Add MMC pins, groups and functions
Signed-off-by: Takeshi Kihara <takeshi.kihara.df@renesas.com> Signed-off-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com> Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
-rw-r--r--drivers/pinctrl/sh-pfc/pfc-r8a77995.c50
1 files changed, 50 insertions, 0 deletions
diff --git a/drivers/pinctrl/sh-pfc/pfc-r8a77995.c b/drivers/pinctrl/sh-pfc/pfc-r8a77995.c
index 480fd9169975..e747ca58b34c 100644
--- a/drivers/pinctrl/sh-pfc/pfc-r8a77995.c
+++ b/drivers/pinctrl/sh-pfc/pfc-r8a77995.c
@@ -980,6 +980,44 @@ static const unsigned int i2c3_b_mux[] = {
980 SCL3_B_MARK, SDA3_B_MARK, 980 SCL3_B_MARK, SDA3_B_MARK,
981}; 981};
982 982
983/* - MMC ------------------------------------------------------------------- */
984static const unsigned int mmc_data1_pins[] = {
985 /* D0 */
986 RCAR_GP_PIN(3, 2),
987};
988static const unsigned int mmc_data1_mux[] = {
989 MMC_D0_MARK,
990};
991static const unsigned int mmc_data4_pins[] = {
992 /* D[0:3] */
993 RCAR_GP_PIN(3, 2), RCAR_GP_PIN(3, 3),
994 RCAR_GP_PIN(3, 4), RCAR_GP_PIN(3, 5),
995};
996static const unsigned int mmc_data4_mux[] = {
997 MMC_D0_MARK, MMC_D1_MARK,
998 MMC_D2_MARK, MMC_D3_MARK,
999};
1000static const unsigned int mmc_data8_pins[] = {
1001 /* D[0:7] */
1002 RCAR_GP_PIN(3, 2), RCAR_GP_PIN(3, 3),
1003 RCAR_GP_PIN(3, 4), RCAR_GP_PIN(3, 5),
1004 RCAR_GP_PIN(3, 6), RCAR_GP_PIN(3, 7),
1005 RCAR_GP_PIN(3, 8), RCAR_GP_PIN(3, 9),
1006};
1007static const unsigned int mmc_data8_mux[] = {
1008 MMC_D0_MARK, MMC_D1_MARK,
1009 MMC_D2_MARK, MMC_D3_MARK,
1010 MMC_D4_MARK, MMC_D5_MARK,
1011 MMC_D6_MARK, MMC_D7_MARK,
1012};
1013static const unsigned int mmc_ctrl_pins[] = {
1014 /* CLK, CMD */
1015 RCAR_GP_PIN(3, 1), RCAR_GP_PIN(3, 0),
1016};
1017static const unsigned int mmc_ctrl_mux[] = {
1018 MMC_CLK_MARK, MMC_CMD_MARK,
1019};
1020
983/* - SCIF0 ------------------------------------------------------------------ */ 1021/* - SCIF0 ------------------------------------------------------------------ */
984static const unsigned int scif0_data_a_pins[] = { 1022static const unsigned int scif0_data_a_pins[] = {
985 /* RX, TX */ 1023 /* RX, TX */
@@ -1171,6 +1209,10 @@ static const struct sh_pfc_pin_group pinmux_groups[] = {
1171 SH_PFC_PIN_GROUP(i2c2_b), 1209 SH_PFC_PIN_GROUP(i2c2_b),
1172 SH_PFC_PIN_GROUP(i2c3_a), 1210 SH_PFC_PIN_GROUP(i2c3_a),
1173 SH_PFC_PIN_GROUP(i2c3_b), 1211 SH_PFC_PIN_GROUP(i2c3_b),
1212 SH_PFC_PIN_GROUP(mmc_data1),
1213 SH_PFC_PIN_GROUP(mmc_data4),
1214 SH_PFC_PIN_GROUP(mmc_data8),
1215 SH_PFC_PIN_GROUP(mmc_ctrl),
1174 SH_PFC_PIN_GROUP(scif0_data_a), 1216 SH_PFC_PIN_GROUP(scif0_data_a),
1175 SH_PFC_PIN_GROUP(scif0_clk_a), 1217 SH_PFC_PIN_GROUP(scif0_clk_a),
1176 SH_PFC_PIN_GROUP(scif0_data_b), 1218 SH_PFC_PIN_GROUP(scif0_data_b),
@@ -1215,6 +1257,13 @@ static const char * const i2c3_groups[] = {
1215 "i2c3_b", 1257 "i2c3_b",
1216}; 1258};
1217 1259
1260static const char * const mmc_groups[] = {
1261 "mmc_data1",
1262 "mmc_data4",
1263 "mmc_data8",
1264 "mmc_ctrl",
1265};
1266
1218static const char * const scif0_groups[] = { 1267static const char * const scif0_groups[] = {
1219 "scif0_data_a", 1268 "scif0_data_a",
1220 "scif0_clk_a", 1269 "scif0_clk_a",
@@ -1266,6 +1315,7 @@ static const struct sh_pfc_function pinmux_functions[] = {
1266 SH_PFC_FUNCTION(i2c1), 1315 SH_PFC_FUNCTION(i2c1),
1267 SH_PFC_FUNCTION(i2c2), 1316 SH_PFC_FUNCTION(i2c2),
1268 SH_PFC_FUNCTION(i2c3), 1317 SH_PFC_FUNCTION(i2c3),
1318 SH_PFC_FUNCTION(mmc),
1269 SH_PFC_FUNCTION(scif0), 1319 SH_PFC_FUNCTION(scif0),
1270 SH_PFC_FUNCTION(scif1), 1320 SH_PFC_FUNCTION(scif1),
1271 SH_PFC_FUNCTION(scif2), 1321 SH_PFC_FUNCTION(scif2),