|
75 | 75 | #define GPSR0_9 F_(MSIOF5_SYNC, IP1SR0_7_4)
|
76 | 76 | #define GPSR0_8 F_(MSIOF5_SS1, IP1SR0_3_0)
|
77 | 77 | #define GPSR0_7 F_(MSIOF5_SS2, IP0SR0_31_28)
|
78 |
| -#define GPSR0_6 F_(IRQ0, IP0SR0_27_24) |
79 |
| -#define GPSR0_5 F_(IRQ1, IP0SR0_23_20) |
80 |
| -#define GPSR0_4 F_(IRQ2, IP0SR0_19_16) |
81 |
| -#define GPSR0_3 F_(IRQ3, IP0SR0_15_12) |
| 78 | +#define GPSR0_6 F_(IRQ0_A, IP0SR0_27_24) |
| 79 | +#define GPSR0_5 F_(IRQ1_A, IP0SR0_23_20) |
| 80 | +#define GPSR0_4 F_(IRQ2_A, IP0SR0_19_16) |
| 81 | +#define GPSR0_3 F_(IRQ3_A, IP0SR0_15_12) |
82 | 82 | #define GPSR0_2 F_(GP0_02, IP0SR0_11_8)
|
83 | 83 | #define GPSR0_1 F_(GP0_01, IP0SR0_7_4)
|
84 | 84 | #define GPSR0_0 F_(GP0_00, IP0SR0_3_0)
|
|
265 | 265 | #define IP0SR0_3_0 F_(0, 0) FM(ERROROUTC_N_B) FM(TCLK2_B) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
|
266 | 266 | #define IP0SR0_7_4 F_(0, 0) FM(MSIOF3_SS1) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
|
267 | 267 | #define IP0SR0_11_8 F_(0, 0) FM(MSIOF3_SS2) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
|
268 |
| -#define IP0SR0_15_12 FM(IRQ3) FM(MSIOF3_SCK) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) |
269 |
| -#define IP0SR0_19_16 FM(IRQ2) FM(MSIOF3_TXD) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) |
270 |
| -#define IP0SR0_23_20 FM(IRQ1) FM(MSIOF3_RXD) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) |
271 |
| -#define IP0SR0_27_24 FM(IRQ0) FM(MSIOF3_SYNC) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) |
| 268 | +#define IP0SR0_15_12 FM(IRQ3_A) FM(MSIOF3_SCK) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) |
| 269 | +#define IP0SR0_19_16 FM(IRQ2_A) FM(MSIOF3_TXD) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) |
| 270 | +#define IP0SR0_23_20 FM(IRQ1_A) FM(MSIOF3_RXD) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) |
| 271 | +#define IP0SR0_27_24 FM(IRQ0_A) FM(MSIOF3_SYNC) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) |
272 | 272 | #define IP0SR0_31_28 FM(MSIOF5_SS2) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
|
273 | 273 |
|
274 | 274 | /* IP1SR0 */ /* 0 */ /* 1 */ /* 2 */ /* 3 4 5 6 7 8 9 A B C D E F */
|
@@ -672,16 +672,16 @@ static const u16 pinmux_data[] = {
|
672 | 672 |
|
673 | 673 | PINMUX_IPSR_GPSR(IP0SR0_11_8, MSIOF3_SS2),
|
674 | 674 |
|
675 |
| - PINMUX_IPSR_GPSR(IP0SR0_15_12, IRQ3), |
| 675 | + PINMUX_IPSR_GPSR(IP0SR0_15_12, IRQ3_A), |
676 | 676 | PINMUX_IPSR_GPSR(IP0SR0_15_12, MSIOF3_SCK),
|
677 | 677 |
|
678 |
| - PINMUX_IPSR_GPSR(IP0SR0_19_16, IRQ2), |
| 678 | + PINMUX_IPSR_GPSR(IP0SR0_19_16, IRQ2_A), |
679 | 679 | PINMUX_IPSR_GPSR(IP0SR0_19_16, MSIOF3_TXD),
|
680 | 680 |
|
681 |
| - PINMUX_IPSR_GPSR(IP0SR0_23_20, IRQ1), |
| 681 | + PINMUX_IPSR_GPSR(IP0SR0_23_20, IRQ1_A), |
682 | 682 | PINMUX_IPSR_GPSR(IP0SR0_23_20, MSIOF3_RXD),
|
683 | 683 |
|
684 |
| - PINMUX_IPSR_GPSR(IP0SR0_27_24, IRQ0), |
| 684 | + PINMUX_IPSR_GPSR(IP0SR0_27_24, IRQ0_A), |
685 | 685 | PINMUX_IPSR_GPSR(IP0SR0_27_24, MSIOF3_SYNC),
|
686 | 686 |
|
687 | 687 | PINMUX_IPSR_GPSR(IP0SR0_31_28, MSIOF5_SS2),
|
@@ -1660,6 +1660,90 @@ static const unsigned int i2c3_mux[] = {
|
1660 | 1660 | SDA3_MARK, SCL3_MARK,
|
1661 | 1661 | };
|
1662 | 1662 |
|
| 1663 | +/* - INTC-EX ---------------------------------------------------------------- */ |
| 1664 | +static const unsigned int intc_ex_irq0_a_pins[] = { |
| 1665 | + /* IRQ0_A */ |
| 1666 | + RCAR_GP_PIN(0, 6), |
| 1667 | +}; |
| 1668 | +static const unsigned int intc_ex_irq0_a_mux[] = { |
| 1669 | + IRQ0_A_MARK, |
| 1670 | +}; |
| 1671 | +static const unsigned int intc_ex_irq0_b_pins[] = { |
| 1672 | + /* IRQ0_B */ |
| 1673 | + RCAR_GP_PIN(1, 20), |
| 1674 | +}; |
| 1675 | +static const unsigned int intc_ex_irq0_b_mux[] = { |
| 1676 | + IRQ0_B_MARK, |
| 1677 | +}; |
| 1678 | + |
| 1679 | +static const unsigned int intc_ex_irq1_a_pins[] = { |
| 1680 | + /* IRQ1_A */ |
| 1681 | + RCAR_GP_PIN(0, 5), |
| 1682 | +}; |
| 1683 | +static const unsigned int intc_ex_irq1_a_mux[] = { |
| 1684 | + IRQ1_A_MARK, |
| 1685 | +}; |
| 1686 | +static const unsigned int intc_ex_irq1_b_pins[] = { |
| 1687 | + /* IRQ1_B */ |
| 1688 | + RCAR_GP_PIN(1, 21), |
| 1689 | +}; |
| 1690 | +static const unsigned int intc_ex_irq1_b_mux[] = { |
| 1691 | + IRQ1_B_MARK, |
| 1692 | +}; |
| 1693 | + |
| 1694 | +static const unsigned int intc_ex_irq2_a_pins[] = { |
| 1695 | + /* IRQ2_A */ |
| 1696 | + RCAR_GP_PIN(0, 4), |
| 1697 | +}; |
| 1698 | +static const unsigned int intc_ex_irq2_a_mux[] = { |
| 1699 | + IRQ2_A_MARK, |
| 1700 | +}; |
| 1701 | +static const unsigned int intc_ex_irq2_b_pins[] = { |
| 1702 | + /* IRQ2_B */ |
| 1703 | + RCAR_GP_PIN(0, 13), |
| 1704 | +}; |
| 1705 | +static const unsigned int intc_ex_irq2_b_mux[] = { |
| 1706 | + IRQ2_B_MARK, |
| 1707 | +}; |
| 1708 | + |
| 1709 | +static const unsigned int intc_ex_irq3_a_pins[] = { |
| 1710 | + /* IRQ3_A */ |
| 1711 | + RCAR_GP_PIN(0, 3), |
| 1712 | +}; |
| 1713 | +static const unsigned int intc_ex_irq3_a_mux[] = { |
| 1714 | + IRQ3_A_MARK, |
| 1715 | +}; |
| 1716 | +static const unsigned int intc_ex_irq3_b_pins[] = { |
| 1717 | + /* IRQ3_B */ |
| 1718 | + RCAR_GP_PIN(1, 23), |
| 1719 | +}; |
| 1720 | +static const unsigned int intc_ex_irq3_b_mux[] = { |
| 1721 | + IRQ3_B_MARK, |
| 1722 | +}; |
| 1723 | + |
| 1724 | +static const unsigned int intc_ex_irq4_a_pins[] = { |
| 1725 | + /* IRQ4_A */ |
| 1726 | + RCAR_GP_PIN(1, 17), |
| 1727 | +}; |
| 1728 | +static const unsigned int intc_ex_irq4_a_mux[] = { |
| 1729 | + IRQ4_A_MARK, |
| 1730 | +}; |
| 1731 | +static const unsigned int intc_ex_irq4_b_pins[] = { |
| 1732 | + /* IRQ4_B */ |
| 1733 | + RCAR_GP_PIN(2, 3), |
| 1734 | +}; |
| 1735 | +static const unsigned int intc_ex_irq4_b_mux[] = { |
| 1736 | + IRQ4_B_MARK, |
| 1737 | +}; |
| 1738 | + |
| 1739 | +static const unsigned int intc_ex_irq5_pins[] = { |
| 1740 | + /* IRQ5 */ |
| 1741 | + RCAR_GP_PIN(2, 2), |
| 1742 | +}; |
| 1743 | +static const unsigned int intc_ex_irq5_mux[] = { |
| 1744 | + IRQ5_MARK, |
| 1745 | +}; |
| 1746 | + |
1663 | 1747 | /* - MMC -------------------------------------------------------------------- */
|
1664 | 1748 | static const unsigned int mmc_data_pins[] = {
|
1665 | 1749 | /* MMC_SD_D[0:3], MMC_D[4:7] */
|
@@ -2416,6 +2500,18 @@ static const struct sh_pfc_pin_group pinmux_groups[] = {
|
2416 | 2500 | SH_PFC_PIN_GROUP(i2c2),
|
2417 | 2501 | SH_PFC_PIN_GROUP(i2c3),
|
2418 | 2502 |
|
| 2503 | + SH_PFC_PIN_GROUP(intc_ex_irq0_a), |
| 2504 | + SH_PFC_PIN_GROUP(intc_ex_irq0_b), |
| 2505 | + SH_PFC_PIN_GROUP(intc_ex_irq1_a), |
| 2506 | + SH_PFC_PIN_GROUP(intc_ex_irq1_b), |
| 2507 | + SH_PFC_PIN_GROUP(intc_ex_irq2_a), |
| 2508 | + SH_PFC_PIN_GROUP(intc_ex_irq2_b), |
| 2509 | + SH_PFC_PIN_GROUP(intc_ex_irq3_a), |
| 2510 | + SH_PFC_PIN_GROUP(intc_ex_irq3_b), |
| 2511 | + SH_PFC_PIN_GROUP(intc_ex_irq4_a), |
| 2512 | + SH_PFC_PIN_GROUP(intc_ex_irq4_b), |
| 2513 | + SH_PFC_PIN_GROUP(intc_ex_irq5), |
| 2514 | + |
2419 | 2515 | BUS_DATA_PIN_GROUP(mmc_data, 1),
|
2420 | 2516 | BUS_DATA_PIN_GROUP(mmc_data, 4),
|
2421 | 2517 | BUS_DATA_PIN_GROUP(mmc_data, 8),
|
@@ -2629,6 +2725,20 @@ static const char * const i2c3_groups[] = {
|
2629 | 2725 | "i2c3",
|
2630 | 2726 | };
|
2631 | 2727 |
|
| 2728 | +static const char * const intc_ex_groups[] = { |
| 2729 | + "intc_ex_irq0_a", |
| 2730 | + "intc_ex_irq0_b", |
| 2731 | + "intc_ex_irq1_a", |
| 2732 | + "intc_ex_irq1_b", |
| 2733 | + "intc_ex_irq2_a", |
| 2734 | + "intc_ex_irq2_b", |
| 2735 | + "intc_ex_irq3_a", |
| 2736 | + "intc_ex_irq3_b", |
| 2737 | + "intc_ex_irq4_a", |
| 2738 | + "intc_ex_irq4_b", |
| 2739 | + "intc_ex_irq5", |
| 2740 | +}; |
| 2741 | + |
2632 | 2742 | static const char * const mmc_groups[] = {
|
2633 | 2743 | "mmc_data1",
|
2634 | 2744 | "mmc_data4",
|
@@ -2813,6 +2923,8 @@ static const struct sh_pfc_function pinmux_functions[] = {
|
2813 | 2923 | SH_PFC_FUNCTION(i2c2),
|
2814 | 2924 | SH_PFC_FUNCTION(i2c3),
|
2815 | 2925 |
|
| 2926 | + SH_PFC_FUNCTION(intc_ex), |
| 2927 | + |
2816 | 2928 | SH_PFC_FUNCTION(mmc),
|
2817 | 2929 |
|
2818 | 2930 | SH_PFC_FUNCTION(msiof0),
|
|
0 commit comments