|
1 | 1 | // SPDX-License-Identifier: GPL-2.0-only |
2 | 2 | /* |
3 | | - * Copyright (c) 2022, Qualcomm Innovation Center, Inc. All rights reserved. |
| 3 | + * Copyright (c) 2022,2025, Qualcomm Innovation Center, Inc. All rights reserved. |
4 | 4 | * Copyright (c) 2023, Linaro Limited |
5 | 5 | */ |
6 | 6 |
|
@@ -467,6 +467,7 @@ enum sa8775p_functions { |
467 | 467 | msm_mux_edp2_lcd, |
468 | 468 | msm_mux_edp3_hot, |
469 | 469 | msm_mux_edp3_lcd, |
| 470 | + msm_mux_egpio, |
470 | 471 | msm_mux_emac0_mcg0, |
471 | 472 | msm_mux_emac0_mcg1, |
472 | 473 | msm_mux_emac0_mcg2, |
@@ -744,6 +745,13 @@ static const char * const edp3_lcd_groups[] = { |
744 | 745 | "gpio49", |
745 | 746 | }; |
746 | 747 |
|
| 748 | +static const char *const egpio_groups[] = { |
| 749 | + "gpio126", "gpio127", "gpio128", "gpio129", "gpio130", "gpio131", |
| 750 | + "gpio132", "gpio133", "gpio134", "gpio135", "gpio136", "gpio137", |
| 751 | + "gpio138", "gpio139", "gpio140", "gpio141", "gpio142", "gpio143", |
| 752 | + "gpio144", "gpio145", "gpio146", "gpio147", "gpio148", |
| 753 | +}; |
| 754 | + |
747 | 755 | static const char * const emac0_mcg0_groups[] = { |
748 | 756 | "gpio12", |
749 | 757 | }; |
@@ -1209,6 +1217,7 @@ static const struct pinfunction sa8775p_functions[] = { |
1209 | 1217 | MSM_PIN_FUNCTION(edp2_lcd), |
1210 | 1218 | MSM_PIN_FUNCTION(edp3_hot), |
1211 | 1219 | MSM_PIN_FUNCTION(edp3_lcd), |
| 1220 | + MSM_PIN_FUNCTION(egpio), |
1212 | 1221 | MSM_PIN_FUNCTION(emac0_mcg0), |
1213 | 1222 | MSM_PIN_FUNCTION(emac0_mcg1), |
1214 | 1223 | MSM_PIN_FUNCTION(emac0_mcg2), |
@@ -1454,29 +1463,29 @@ static const struct msm_pingroup sa8775p_groups[] = { |
1454 | 1463 | [123] = PINGROUP(123, hs2_mi2s, phase_flag, _, _, _, _, _, _, _), |
1455 | 1464 | [124] = PINGROUP(124, hs2_mi2s, phase_flag, _, _, _, _, _, _, _), |
1456 | 1465 | [125] = PINGROUP(125, hs2_mi2s, phase_flag, _, _, _, _, _, _, _), |
1457 | | - [126] = PINGROUP(126, _, _, _, _, _, _, _, _, _), |
1458 | | - [127] = PINGROUP(127, _, _, _, _, _, _, _, _, _), |
1459 | | - [128] = PINGROUP(128, _, _, _, _, _, _, _, _, _), |
1460 | | - [129] = PINGROUP(129, _, _, _, _, _, _, _, _, _), |
1461 | | - [130] = PINGROUP(130, _, _, _, _, _, _, _, _, _), |
1462 | | - [131] = PINGROUP(131, _, _, _, _, _, _, _, _, _), |
1463 | | - [132] = PINGROUP(132, _, _, _, _, _, _, _, _, _), |
1464 | | - [133] = PINGROUP(133, _, _, _, _, _, _, _, _, _), |
1465 | | - [134] = PINGROUP(134, _, _, _, _, _, _, _, _, _), |
1466 | | - [135] = PINGROUP(135, _, _, _, _, _, _, _, _, _), |
1467 | | - [136] = PINGROUP(136, _, _, _, _, _, _, _, _, _), |
1468 | | - [137] = PINGROUP(137, _, _, _, _, _, _, _, _, _), |
1469 | | - [138] = PINGROUP(138, _, _, _, _, _, _, _, _, _), |
1470 | | - [139] = PINGROUP(139, _, _, _, _, _, _, _, _, _), |
1471 | | - [140] = PINGROUP(140, _, _, _, _, _, _, _, _, _), |
1472 | | - [141] = PINGROUP(141, _, _, _, _, _, _, _, _, _), |
1473 | | - [142] = PINGROUP(142, _, _, _, _, _, _, _, _, _), |
1474 | | - [143] = PINGROUP(143, _, _, _, _, _, _, _, _, _), |
1475 | | - [144] = PINGROUP(144, dbg_out, _, _, _, _, _, _, _, _), |
1476 | | - [145] = PINGROUP(145, _, _, _, _, _, _, _, _, _), |
1477 | | - [146] = PINGROUP(146, _, _, _, _, _, _, _, _, _), |
1478 | | - [147] = PINGROUP(147, _, _, _, _, _, _, _, _, _), |
1479 | | - [148] = PINGROUP(148, _, _, _, _, _, _, _, _, _), |
| 1466 | + [126] = PINGROUP(126, _, _, _, _, _, _, _, _, egpio), |
| 1467 | + [127] = PINGROUP(127, _, _, _, _, _, _, _, _, egpio), |
| 1468 | + [128] = PINGROUP(128, _, _, _, _, _, _, _, _, egpio), |
| 1469 | + [129] = PINGROUP(129, _, _, _, _, _, _, _, _, egpio), |
| 1470 | + [130] = PINGROUP(130, _, _, _, _, _, _, _, _, egpio), |
| 1471 | + [131] = PINGROUP(131, _, _, _, _, _, _, _, _, egpio), |
| 1472 | + [132] = PINGROUP(132, _, _, _, _, _, _, _, _, egpio), |
| 1473 | + [133] = PINGROUP(133, _, _, _, _, _, _, _, _, egpio), |
| 1474 | + [134] = PINGROUP(134, _, _, _, _, _, _, _, _, egpio), |
| 1475 | + [135] = PINGROUP(135, _, _, _, _, _, _, _, _, egpio), |
| 1476 | + [136] = PINGROUP(136, _, _, _, _, _, _, _, _, egpio), |
| 1477 | + [137] = PINGROUP(137, _, _, _, _, _, _, _, _, egpio), |
| 1478 | + [138] = PINGROUP(138, _, _, _, _, _, _, _, _, egpio), |
| 1479 | + [139] = PINGROUP(139, _, _, _, _, _, _, _, _, egpio), |
| 1480 | + [140] = PINGROUP(140, _, _, _, _, _, _, _, _, egpio), |
| 1481 | + [141] = PINGROUP(141, _, _, _, _, _, _, _, _, egpio), |
| 1482 | + [142] = PINGROUP(142, _, _, _, _, _, _, _, _, egpio), |
| 1483 | + [143] = PINGROUP(143, _, _, _, _, _, _, _, _, egpio), |
| 1484 | + [144] = PINGROUP(144, dbg_out, _, _, _, _, _, _, _, egpio), |
| 1485 | + [145] = PINGROUP(145, _, _, _, _, _, _, _, _, egpio), |
| 1486 | + [146] = PINGROUP(146, _, _, _, _, _, _, _, _, egpio), |
| 1487 | + [147] = PINGROUP(147, _, _, _, _, _, _, _, _, egpio), |
| 1488 | + [148] = PINGROUP(148, _, _, _, _, _, _, _, _, egpio), |
1480 | 1489 | [149] = UFS_RESET(ufs_reset, 0x1a2000), |
1481 | 1490 | [150] = SDC_QDSD_PINGROUP(sdc1_rclk, 0x199000, 15, 0), |
1482 | 1491 | [151] = SDC_QDSD_PINGROUP(sdc1_clk, 0x199000, 13, 6), |
@@ -1511,6 +1520,7 @@ static const struct msm_pinctrl_soc_data sa8775p_pinctrl = { |
1511 | 1520 | .ngpios = 150, |
1512 | 1521 | .wakeirq_map = sa8775p_pdc_map, |
1513 | 1522 | .nwakeirq_map = ARRAY_SIZE(sa8775p_pdc_map), |
| 1523 | + .egpio_func = 9, |
1514 | 1524 | }; |
1515 | 1525 |
|
1516 | 1526 | static int sa8775p_pinctrl_probe(struct platform_device *pdev) |
|
0 commit comments