diff options
author | Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> | 2013-03-27 06:06:37 -0400 |
---|---|---|
committer | Simon Horman <horms+renesas@verge.net.au> | 2013-04-02 21:30:37 -0400 |
commit | ba774cc7380e83f942c08564d3c142af2fbd05be (patch) | |
tree | 9df1d2da9b2eb4acad7c3c22fce3d0aa46d47ed5 /drivers/pinctrl | |
parent | 2b4b588299fa3c8672e1049ab33acc7b600a8990 (diff) |
sh-pfc: r8a7779: Split DU input and output pixel clocks
The output pixel clocks can be used without the input pixel clocks.
Split them in different groups.
Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
Diffstat (limited to 'drivers/pinctrl')
-rw-r--r-- | drivers/pinctrl/sh-pfc/pfc-r8a7779.c | 60 |
1 files changed, 39 insertions, 21 deletions
diff --git a/drivers/pinctrl/sh-pfc/pfc-r8a7779.c b/drivers/pinctrl/sh-pfc/pfc-r8a7779.c index e448ff1f408f..62dcdcdec940 100644 --- a/drivers/pinctrl/sh-pfc/pfc-r8a7779.c +++ b/drivers/pinctrl/sh-pfc/pfc-r8a7779.c | |||
@@ -1498,19 +1498,26 @@ static const unsigned int du0_rgb888_mux[] = { | |||
1498 | DU0_DB7_MARK, DU0_DB6_MARK, DU0_DB5_MARK, DU0_DB4_MARK, | 1498 | DU0_DB7_MARK, DU0_DB6_MARK, DU0_DB5_MARK, DU0_DB4_MARK, |
1499 | DU0_DB3_MARK, DU0_DB2_MARK, DU0_DB1_MARK, DU0_DB0_MARK, | 1499 | DU0_DB3_MARK, DU0_DB2_MARK, DU0_DB1_MARK, DU0_DB0_MARK, |
1500 | }; | 1500 | }; |
1501 | static const unsigned int du0_clk_0_pins[] = { | 1501 | static const unsigned int du0_clk_in_pins[] = { |
1502 | /* CLKIN, CLKOUT */ | 1502 | /* CLKIN */ |
1503 | 29, 180, | 1503 | 29, |
1504 | }; | 1504 | }; |
1505 | static const unsigned int du0_clk_0_mux[] = { | 1505 | static const unsigned int du0_clk_in_mux[] = { |
1506 | DU0_DOTCLKIN_MARK, DU0_DOTCLKOUT0_MARK, | 1506 | DU0_DOTCLKIN_MARK, |
1507 | }; | 1507 | }; |
1508 | static const unsigned int du0_clk_1_pins[] = { | 1508 | static const unsigned int du0_clk_out_0_pins[] = { |
1509 | /* CLKIN, CLKOUT */ | 1509 | /* CLKOUT */ |
1510 | 29, 30, | 1510 | 180, |
1511 | }; | 1511 | }; |
1512 | static const unsigned int du0_clk_1_mux[] = { | 1512 | static const unsigned int du0_clk_out_0_mux[] = { |
1513 | DU0_DOTCLKIN_MARK, DU0_DOTCLKOUT1_MARK, | 1513 | DU0_DOTCLKOUT0_MARK, |
1514 | }; | ||
1515 | static const unsigned int du0_clk_out_1_pins[] = { | ||
1516 | /* CLKOUT */ | ||
1517 | 30, | ||
1518 | }; | ||
1519 | static const unsigned int du0_clk_out_1_mux[] = { | ||
1520 | DU0_DOTCLKOUT1_MARK, | ||
1514 | }; | 1521 | }; |
1515 | static const unsigned int du0_sync_0_pins[] = { | 1522 | static const unsigned int du0_sync_0_pins[] = { |
1516 | /* VSYNC, HSYNC, DISP */ | 1523 | /* VSYNC, HSYNC, DISP */ |
@@ -1571,12 +1578,19 @@ static const unsigned int du1_rgb888_mux[] = { | |||
1571 | DU1_DB7_MARK, DU1_DB6_MARK, DU1_DB5_MARK, DU1_DB4_MARK, | 1578 | DU1_DB7_MARK, DU1_DB6_MARK, DU1_DB5_MARK, DU1_DB4_MARK, |
1572 | DU1_DB3_MARK, DU1_DB2_MARK, DU1_DB1_MARK, DU1_DB0_MARK, | 1579 | DU1_DB3_MARK, DU1_DB2_MARK, DU1_DB1_MARK, DU1_DB0_MARK, |
1573 | }; | 1580 | }; |
1574 | static const unsigned int du1_clk_pins[] = { | 1581 | static const unsigned int du1_clk_in_pins[] = { |
1575 | /* CLKIN, CLKOUT */ | 1582 | /* CLKIN */ |
1576 | 58, 59, | 1583 | 58, |
1584 | }; | ||
1585 | static const unsigned int du1_clk_in_mux[] = { | ||
1586 | DU1_DOTCLKIN_MARK, | ||
1587 | }; | ||
1588 | static const unsigned int du1_clk_out_pins[] = { | ||
1589 | /* CLKOUT */ | ||
1590 | 59, | ||
1577 | }; | 1591 | }; |
1578 | static const unsigned int du1_clk_mux[] = { | 1592 | static const unsigned int du1_clk_out_mux[] = { |
1579 | DU1_DOTCLKIN_MARK, DU1_DOTCLKOUT_MARK, | 1593 | DU1_DOTCLKOUT_MARK, |
1580 | }; | 1594 | }; |
1581 | static const unsigned int du1_sync_0_pins[] = { | 1595 | static const unsigned int du1_sync_0_pins[] = { |
1582 | /* VSYNC, HSYNC, DISP */ | 1596 | /* VSYNC, HSYNC, DISP */ |
@@ -2369,15 +2383,17 @@ static const unsigned int usb2_mux[] = { | |||
2369 | static const struct sh_pfc_pin_group pinmux_groups[] = { | 2383 | static const struct sh_pfc_pin_group pinmux_groups[] = { |
2370 | SH_PFC_PIN_GROUP(du0_rgb666), | 2384 | SH_PFC_PIN_GROUP(du0_rgb666), |
2371 | SH_PFC_PIN_GROUP(du0_rgb888), | 2385 | SH_PFC_PIN_GROUP(du0_rgb888), |
2372 | SH_PFC_PIN_GROUP(du0_clk_0), | 2386 | SH_PFC_PIN_GROUP(du0_clk_in), |
2373 | SH_PFC_PIN_GROUP(du0_clk_1), | 2387 | SH_PFC_PIN_GROUP(du0_clk_out_0), |
2388 | SH_PFC_PIN_GROUP(du0_clk_out_1), | ||
2374 | SH_PFC_PIN_GROUP(du0_sync_0), | 2389 | SH_PFC_PIN_GROUP(du0_sync_0), |
2375 | SH_PFC_PIN_GROUP(du0_sync_1), | 2390 | SH_PFC_PIN_GROUP(du0_sync_1), |
2376 | SH_PFC_PIN_GROUP(du0_oddf), | 2391 | SH_PFC_PIN_GROUP(du0_oddf), |
2377 | SH_PFC_PIN_GROUP(du0_cde), | 2392 | SH_PFC_PIN_GROUP(du0_cde), |
2378 | SH_PFC_PIN_GROUP(du1_rgb666), | 2393 | SH_PFC_PIN_GROUP(du1_rgb666), |
2379 | SH_PFC_PIN_GROUP(du1_rgb888), | 2394 | SH_PFC_PIN_GROUP(du1_rgb888), |
2380 | SH_PFC_PIN_GROUP(du1_clk), | 2395 | SH_PFC_PIN_GROUP(du1_clk_in), |
2396 | SH_PFC_PIN_GROUP(du1_clk_out), | ||
2381 | SH_PFC_PIN_GROUP(du1_sync_0), | 2397 | SH_PFC_PIN_GROUP(du1_sync_0), |
2382 | SH_PFC_PIN_GROUP(du1_sync_1), | 2398 | SH_PFC_PIN_GROUP(du1_sync_1), |
2383 | SH_PFC_PIN_GROUP(du1_oddf), | 2399 | SH_PFC_PIN_GROUP(du1_oddf), |
@@ -2492,8 +2508,9 @@ static const struct sh_pfc_pin_group pinmux_groups[] = { | |||
2492 | static const char * const du0_groups[] = { | 2508 | static const char * const du0_groups[] = { |
2493 | "du0_rgb666", | 2509 | "du0_rgb666", |
2494 | "du0_rgb888", | 2510 | "du0_rgb888", |
2495 | "du0_clk_0", | 2511 | "du0_clk_in", |
2496 | "du0_clk_1", | 2512 | "du0_clk_out_0", |
2513 | "du0_clk_out_1", | ||
2497 | "du0_sync_0", | 2514 | "du0_sync_0", |
2498 | "du0_sync_1", | 2515 | "du0_sync_1", |
2499 | "du0_oddf", | 2516 | "du0_oddf", |
@@ -2503,7 +2520,8 @@ static const char * const du0_groups[] = { | |||
2503 | static const char * const du1_groups[] = { | 2520 | static const char * const du1_groups[] = { |
2504 | "du1_rgb666", | 2521 | "du1_rgb666", |
2505 | "du1_rgb888", | 2522 | "du1_rgb888", |
2506 | "du1_clk", | 2523 | "du1_clk_in", |
2524 | "du1_clk_out", | ||
2507 | "du1_sync_0", | 2525 | "du1_sync_0", |
2508 | "du1_sync_1", | 2526 | "du1_sync_1", |
2509 | "du1_oddf", | 2527 | "du1_oddf", |