Skip to content

Commit 0e1c7a9

Browse files
rshanmugeertu
authored andcommitted
pinctrl: sh-pfc: r8a7795: Add CAN FD support
This patch adds CAN FD[0-1] pinmux support for R-Car H3 ES2.0. The pin config is identical to H3 ES1.*. Signed-off-by: Ramesh Shanmugasundaram <[email protected]> Reviewed-by: Fabrizio Castro <[email protected]> Signed-off-by: Geert Uytterhoeven <[email protected]>
1 parent a678abf commit 0e1c7a9

File tree

1 file changed

+37
-0
lines changed

1 file changed

+37
-0
lines changed

drivers/pinctrl/sh-pfc/pfc-r8a7795.c

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1813,6 +1813,29 @@ static const unsigned int can_clk_mux[] = {
18131813
CAN_CLK_MARK,
18141814
};
18151815

1816+
/* - CAN FD --------------------------------------------------------------- */
1817+
static const unsigned int canfd0_data_a_pins[] = {
1818+
/* TX, RX */
1819+
RCAR_GP_PIN(1, 23), RCAR_GP_PIN(1, 24),
1820+
};
1821+
static const unsigned int canfd0_data_a_mux[] = {
1822+
CANFD0_TX_A_MARK, CANFD0_RX_A_MARK,
1823+
};
1824+
static const unsigned int canfd0_data_b_pins[] = {
1825+
/* TX, RX */
1826+
RCAR_GP_PIN(2, 0), RCAR_GP_PIN(2, 1),
1827+
};
1828+
static const unsigned int canfd0_data_b_mux[] = {
1829+
CANFD0_TX_B_MARK, CANFD0_RX_B_MARK,
1830+
};
1831+
static const unsigned int canfd1_data_pins[] = {
1832+
/* TX, RX */
1833+
RCAR_GP_PIN(1, 22), RCAR_GP_PIN(1, 26),
1834+
};
1835+
static const unsigned int canfd1_data_mux[] = {
1836+
CANFD1_TX_MARK, CANFD1_RX_MARK,
1837+
};
1838+
18161839
/* - DRIF0 --------------------------------------------------------------- */
18171840
static const unsigned int drif0_ctrl_a_pins[] = {
18181841
/* CLK, SYNC */
@@ -3879,6 +3902,9 @@ static const struct sh_pfc_pin_group pinmux_groups[] = {
38793902
SH_PFC_PIN_GROUP(can0_data_b),
38803903
SH_PFC_PIN_GROUP(can1_data),
38813904
SH_PFC_PIN_GROUP(can_clk),
3905+
SH_PFC_PIN_GROUP(canfd0_data_a),
3906+
SH_PFC_PIN_GROUP(canfd0_data_b),
3907+
SH_PFC_PIN_GROUP(canfd1_data),
38823908
SH_PFC_PIN_GROUP(drif0_ctrl_a),
38833909
SH_PFC_PIN_GROUP(drif0_data0_a),
38843910
SH_PFC_PIN_GROUP(drif0_data1_a),
@@ -4203,6 +4229,15 @@ static const char * const can_clk_groups[] = {
42034229
"can_clk",
42044230
};
42054231

4232+
static const char * const canfd0_groups[] = {
4233+
"canfd0_data_a",
4234+
"canfd0_data_b",
4235+
};
4236+
4237+
static const char * const canfd1_groups[] = {
4238+
"canfd1_data",
4239+
};
4240+
42064241
static const char * const drif0_groups[] = {
42074242
"drif0_ctrl_a",
42084243
"drif0_data0_a",
@@ -4611,6 +4646,8 @@ static const struct sh_pfc_function pinmux_functions[] = {
46114646
SH_PFC_FUNCTION(can0),
46124647
SH_PFC_FUNCTION(can1),
46134648
SH_PFC_FUNCTION(can_clk),
4649+
SH_PFC_FUNCTION(canfd0),
4650+
SH_PFC_FUNCTION(canfd1),
46144651
SH_PFC_FUNCTION(drif0),
46154652
SH_PFC_FUNCTION(drif1),
46164653
SH_PFC_FUNCTION(drif2),

0 commit comments

Comments
 (0)