aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPaul Walmsley <paul@pwsan.com>2011-07-09 21:14:07 -0400
committerPaul Walmsley <paul@pwsan.com>2011-07-09 21:14:07 -0400
commitd826ebfa49aeb8a8f4d216165e5e00826741ad9c (patch)
tree9173b27910862618f3fe356ee15a22a0aa7e976f
parentbc6149587b309e3231e5ac7138b84197813e17ec (diff)
omap_hwmod: share identical omap_hwmod_dma_info arrays
To reduce kernel source file data duplication, share struct omap_hwmod_dma_info arrays across OMAP2xxx and 3xxx hwmod data files. Signed-off-by: Paul Walmsley <paul@pwsan.com>
-rw-r--r--arch/arm/mach-omap2/omap_hwmod_2420_data.c87
-rw-r--r--arch/arm/mach-omap2/omap_hwmod_2430_data.c95
-rw-r--r--arch/arm/mach-omap2/omap_hwmod_2xxx_3xxx_ipblock_data.c92
-rw-r--r--arch/arm/mach-omap2/omap_hwmod_2xxx_ipblock_data.c6
-rw-r--r--arch/arm/mach-omap2/omap_hwmod_3xxx_data.c89
-rw-r--r--arch/arm/mach-omap2/omap_hwmod_common_data.c20
-rw-r--r--arch/arm/mach-omap2/omap_hwmod_common_data.h15
7 files changed, 144 insertions, 260 deletions
diff --git a/arch/arm/mach-omap2/omap_hwmod_2420_data.c b/arch/arm/mach-omap2/omap_hwmod_2420_data.c
index 60c817e63c3b..6acc01f58902 100644
--- a/arch/arm/mach-omap2/omap_hwmod_2420_data.c
+++ b/arch/arm/mach-omap2/omap_hwmod_2420_data.c
@@ -828,12 +828,6 @@ static struct omap_hwmod_class uart_class = {
828 828
829/* UART1 */ 829/* UART1 */
830 830
831static struct omap_hwmod_dma_info uart1_sdma_reqs[] = {
832 { .name = "rx", .dma_req = OMAP24XX_DMA_UART1_RX, },
833 { .name = "tx", .dma_req = OMAP24XX_DMA_UART1_TX, },
834 { .dma_req = -1 }
835};
836
837static struct omap_hwmod_ocp_if *omap2420_uart1_slaves[] = { 831static struct omap_hwmod_ocp_if *omap2420_uart1_slaves[] = {
838 &omap2_l4_core__uart1, 832 &omap2_l4_core__uart1,
839}; 833};
@@ -841,7 +835,7 @@ static struct omap_hwmod_ocp_if *omap2420_uart1_slaves[] = {
841static struct omap_hwmod omap2420_uart1_hwmod = { 835static struct omap_hwmod omap2420_uart1_hwmod = {
842 .name = "uart1", 836 .name = "uart1",
843 .mpu_irqs = omap2_uart1_mpu_irqs, 837 .mpu_irqs = omap2_uart1_mpu_irqs,
844 .sdma_reqs = uart1_sdma_reqs, 838 .sdma_reqs = omap2_uart1_sdma_reqs,
845 .main_clk = "uart1_fck", 839 .main_clk = "uart1_fck",
846 .prcm = { 840 .prcm = {
847 .omap2 = { 841 .omap2 = {
@@ -860,12 +854,6 @@ static struct omap_hwmod omap2420_uart1_hwmod = {
860 854
861/* UART2 */ 855/* UART2 */
862 856
863static struct omap_hwmod_dma_info uart2_sdma_reqs[] = {
864 { .name = "rx", .dma_req = OMAP24XX_DMA_UART2_RX, },
865 { .name = "tx", .dma_req = OMAP24XX_DMA_UART2_TX, },
866 { .dma_req = -1 }
867};
868
869static struct omap_hwmod_ocp_if *omap2420_uart2_slaves[] = { 857static struct omap_hwmod_ocp_if *omap2420_uart2_slaves[] = {
870 &omap2_l4_core__uart2, 858 &omap2_l4_core__uart2,
871}; 859};
@@ -873,7 +861,7 @@ static struct omap_hwmod_ocp_if *omap2420_uart2_slaves[] = {
873static struct omap_hwmod omap2420_uart2_hwmod = { 861static struct omap_hwmod omap2420_uart2_hwmod = {
874 .name = "uart2", 862 .name = "uart2",
875 .mpu_irqs = omap2_uart2_mpu_irqs, 863 .mpu_irqs = omap2_uart2_mpu_irqs,
876 .sdma_reqs = uart2_sdma_reqs, 864 .sdma_reqs = omap2_uart2_sdma_reqs,
877 .main_clk = "uart2_fck", 865 .main_clk = "uart2_fck",
878 .prcm = { 866 .prcm = {
879 .omap2 = { 867 .omap2 = {
@@ -892,12 +880,6 @@ static struct omap_hwmod omap2420_uart2_hwmod = {
892 880
893/* UART3 */ 881/* UART3 */
894 882
895static struct omap_hwmod_dma_info uart3_sdma_reqs[] = {
896 { .name = "rx", .dma_req = OMAP24XX_DMA_UART3_RX, },
897 { .name = "tx", .dma_req = OMAP24XX_DMA_UART3_TX, },
898 { .dma_req = -1 }
899};
900
901static struct omap_hwmod_ocp_if *omap2420_uart3_slaves[] = { 883static struct omap_hwmod_ocp_if *omap2420_uart3_slaves[] = {
902 &omap2_l4_core__uart3, 884 &omap2_l4_core__uart3,
903}; 885};
@@ -905,7 +887,7 @@ static struct omap_hwmod_ocp_if *omap2420_uart3_slaves[] = {
905static struct omap_hwmod omap2420_uart3_hwmod = { 887static struct omap_hwmod omap2420_uart3_hwmod = {
906 .name = "uart3", 888 .name = "uart3",
907 .mpu_irqs = omap2_uart3_mpu_irqs, 889 .mpu_irqs = omap2_uart3_mpu_irqs,
908 .sdma_reqs = uart3_sdma_reqs, 890 .sdma_reqs = omap2_uart3_sdma_reqs,
909 .main_clk = "uart3_fck", 891 .main_clk = "uart3_fck",
910 .prcm = { 892 .prcm = {
911 .omap2 = { 893 .omap2 = {
@@ -940,11 +922,6 @@ static struct omap_hwmod_class omap2420_dss_hwmod_class = {
940 .sysc = &omap2420_dss_sysc, 922 .sysc = &omap2420_dss_sysc,
941}; 923};
942 924
943static struct omap_hwmod_dma_info omap2420_dss_sdma_chs[] = {
944 { .name = "dispc", .dma_req = 5 },
945 { .dma_req = -1 }
946};
947
948/* dss */ 925/* dss */
949/* dss master ports */ 926/* dss master ports */
950static struct omap_hwmod_ocp_if *omap2420_dss_masters[] = { 927static struct omap_hwmod_ocp_if *omap2420_dss_masters[] = {
@@ -980,7 +957,7 @@ static struct omap_hwmod omap2420_dss_core_hwmod = {
980 .name = "dss_core", 957 .name = "dss_core",
981 .class = &omap2420_dss_hwmod_class, 958 .class = &omap2420_dss_hwmod_class,
982 .main_clk = "dss1_fck", /* instead of dss_fck */ 959 .main_clk = "dss1_fck", /* instead of dss_fck */
983 .sdma_reqs = omap2420_dss_sdma_chs, 960 .sdma_reqs = omap2xxx_dss_sdma_chs,
984 .prcm = { 961 .prcm = {
985 .omap2 = { 962 .omap2 = {
986 .prcm_reg_id = 1, 963 .prcm_reg_id = 1,
@@ -1183,12 +1160,6 @@ static struct omap_i2c_dev_attr i2c_dev_attr;
1183 1160
1184/* I2C1 */ 1161/* I2C1 */
1185 1162
1186static struct omap_hwmod_dma_info i2c1_sdma_reqs[] = {
1187 { .name = "tx", .dma_req = OMAP24XX_DMA_I2C1_TX },
1188 { .name = "rx", .dma_req = OMAP24XX_DMA_I2C1_RX },
1189 { .dma_req = -1 }
1190};
1191
1192static struct omap_hwmod_ocp_if *omap2420_i2c1_slaves[] = { 1163static struct omap_hwmod_ocp_if *omap2420_i2c1_slaves[] = {
1193 &omap2420_l4_core__i2c1, 1164 &omap2420_l4_core__i2c1,
1194}; 1165};
@@ -1196,7 +1167,7 @@ static struct omap_hwmod_ocp_if *omap2420_i2c1_slaves[] = {
1196static struct omap_hwmod omap2420_i2c1_hwmod = { 1167static struct omap_hwmod omap2420_i2c1_hwmod = {
1197 .name = "i2c1", 1168 .name = "i2c1",
1198 .mpu_irqs = omap2_i2c1_mpu_irqs, 1169 .mpu_irqs = omap2_i2c1_mpu_irqs,
1199 .sdma_reqs = i2c1_sdma_reqs, 1170 .sdma_reqs = omap2_i2c1_sdma_reqs,
1200 .main_clk = "i2c1_fck", 1171 .main_clk = "i2c1_fck",
1201 .prcm = { 1172 .prcm = {
1202 .omap2 = { 1173 .omap2 = {
@@ -1217,12 +1188,6 @@ static struct omap_hwmod omap2420_i2c1_hwmod = {
1217 1188
1218/* I2C2 */ 1189/* I2C2 */
1219 1190
1220static struct omap_hwmod_dma_info i2c2_sdma_reqs[] = {
1221 { .name = "tx", .dma_req = OMAP24XX_DMA_I2C2_TX },
1222 { .name = "rx", .dma_req = OMAP24XX_DMA_I2C2_RX },
1223 { .dma_req = -1 }
1224};
1225
1226static struct omap_hwmod_ocp_if *omap2420_i2c2_slaves[] = { 1191static struct omap_hwmod_ocp_if *omap2420_i2c2_slaves[] = {
1227 &omap2420_l4_core__i2c2, 1192 &omap2420_l4_core__i2c2,
1228}; 1193};
@@ -1230,7 +1195,7 @@ static struct omap_hwmod_ocp_if *omap2420_i2c2_slaves[] = {
1230static struct omap_hwmod omap2420_i2c2_hwmod = { 1195static struct omap_hwmod omap2420_i2c2_hwmod = {
1231 .name = "i2c2", 1196 .name = "i2c2",
1232 .mpu_irqs = omap2_i2c2_mpu_irqs, 1197 .mpu_irqs = omap2_i2c2_mpu_irqs,
1233 .sdma_reqs = i2c2_sdma_reqs, 1198 .sdma_reqs = omap2_i2c2_sdma_reqs,
1234 .main_clk = "i2c2_fck", 1199 .main_clk = "i2c2_fck",
1235 .prcm = { 1200 .prcm = {
1236 .omap2 = { 1201 .omap2 = {
@@ -1602,18 +1567,6 @@ static struct omap_hwmod_class omap2420_mcspi_class = {
1602}; 1567};
1603 1568
1604/* mcspi1 */ 1569/* mcspi1 */
1605static struct omap_hwmod_dma_info omap2420_mcspi1_sdma_reqs[] = {
1606 { .name = "tx0", .dma_req = 35 }, /* DMA_SPI1_TX0 */
1607 { .name = "rx0", .dma_req = 36 }, /* DMA_SPI1_RX0 */
1608 { .name = "tx1", .dma_req = 37 }, /* DMA_SPI1_TX1 */
1609 { .name = "rx1", .dma_req = 38 }, /* DMA_SPI1_RX1 */
1610 { .name = "tx2", .dma_req = 39 }, /* DMA_SPI1_TX2 */
1611 { .name = "rx2", .dma_req = 40 }, /* DMA_SPI1_RX2 */
1612 { .name = "tx3", .dma_req = 41 }, /* DMA_SPI1_TX3 */
1613 { .name = "rx3", .dma_req = 42 }, /* DMA_SPI1_RX3 */
1614 { .dma_req = -1 }
1615};
1616
1617static struct omap_hwmod_ocp_if *omap2420_mcspi1_slaves[] = { 1570static struct omap_hwmod_ocp_if *omap2420_mcspi1_slaves[] = {
1618 &omap2420_l4_core__mcspi1, 1571 &omap2420_l4_core__mcspi1,
1619}; 1572};
@@ -1625,7 +1578,7 @@ static struct omap2_mcspi_dev_attr omap_mcspi1_dev_attr = {
1625static struct omap_hwmod omap2420_mcspi1_hwmod = { 1578static struct omap_hwmod omap2420_mcspi1_hwmod = {
1626 .name = "mcspi1_hwmod", 1579 .name = "mcspi1_hwmod",
1627 .mpu_irqs = omap2_mcspi1_mpu_irqs, 1580 .mpu_irqs = omap2_mcspi1_mpu_irqs,
1628 .sdma_reqs = omap2420_mcspi1_sdma_reqs, 1581 .sdma_reqs = omap2_mcspi1_sdma_reqs,
1629 .main_clk = "mcspi1_fck", 1582 .main_clk = "mcspi1_fck",
1630 .prcm = { 1583 .prcm = {
1631 .omap2 = { 1584 .omap2 = {
@@ -1644,14 +1597,6 @@ static struct omap_hwmod omap2420_mcspi1_hwmod = {
1644}; 1597};
1645 1598
1646/* mcspi2 */ 1599/* mcspi2 */
1647static struct omap_hwmod_dma_info omap2420_mcspi2_sdma_reqs[] = {
1648 { .name = "tx0", .dma_req = 43 }, /* DMA_SPI2_TX0 */
1649 { .name = "rx0", .dma_req = 44 }, /* DMA_SPI2_RX0 */
1650 { .name = "tx1", .dma_req = 45 }, /* DMA_SPI2_TX1 */
1651 { .name = "rx1", .dma_req = 46 }, /* DMA_SPI2_RX1 */
1652 { .dma_req = -1 }
1653};
1654
1655static struct omap_hwmod_ocp_if *omap2420_mcspi2_slaves[] = { 1600static struct omap_hwmod_ocp_if *omap2420_mcspi2_slaves[] = {
1656 &omap2420_l4_core__mcspi2, 1601 &omap2420_l4_core__mcspi2,
1657}; 1602};
@@ -1663,7 +1608,7 @@ static struct omap2_mcspi_dev_attr omap_mcspi2_dev_attr = {
1663static struct omap_hwmod omap2420_mcspi2_hwmod = { 1608static struct omap_hwmod omap2420_mcspi2_hwmod = {
1664 .name = "mcspi2_hwmod", 1609 .name = "mcspi2_hwmod",
1665 .mpu_irqs = omap2_mcspi2_mpu_irqs, 1610 .mpu_irqs = omap2_mcspi2_mpu_irqs,
1666 .sdma_reqs = omap2420_mcspi2_sdma_reqs, 1611 .sdma_reqs = omap2_mcspi2_sdma_reqs,
1667 .main_clk = "mcspi2_fck", 1612 .main_clk = "mcspi2_fck",
1668 .prcm = { 1613 .prcm = {
1669 .omap2 = { 1614 .omap2 = {
@@ -1697,12 +1642,6 @@ static struct omap_hwmod_irq_info omap2420_mcbsp1_irqs[] = {
1697 { .irq = -1 } 1642 { .irq = -1 }
1698}; 1643};
1699 1644
1700static struct omap_hwmod_dma_info omap2420_mcbsp1_sdma_chs[] = {
1701 { .name = "rx", .dma_req = 32 },
1702 { .name = "tx", .dma_req = 31 },
1703 { .dma_req = -1 }
1704};
1705
1706/* l4_core -> mcbsp1 */ 1645/* l4_core -> mcbsp1 */
1707static struct omap_hwmod_ocp_if omap2420_l4_core__mcbsp1 = { 1646static struct omap_hwmod_ocp_if omap2420_l4_core__mcbsp1 = {
1708 .master = &omap2420_l4_core_hwmod, 1647 .master = &omap2420_l4_core_hwmod,
@@ -1721,7 +1660,7 @@ static struct omap_hwmod omap2420_mcbsp1_hwmod = {
1721 .name = "mcbsp1", 1660 .name = "mcbsp1",
1722 .class = &omap2420_mcbsp_hwmod_class, 1661 .class = &omap2420_mcbsp_hwmod_class,
1723 .mpu_irqs = omap2420_mcbsp1_irqs, 1662 .mpu_irqs = omap2420_mcbsp1_irqs,
1724 .sdma_reqs = omap2420_mcbsp1_sdma_chs, 1663 .sdma_reqs = omap2_mcbsp1_sdma_reqs,
1725 .main_clk = "mcbsp1_fck", 1664 .main_clk = "mcbsp1_fck",
1726 .prcm = { 1665 .prcm = {
1727 .omap2 = { 1666 .omap2 = {
@@ -1744,12 +1683,6 @@ static struct omap_hwmod_irq_info omap2420_mcbsp2_irqs[] = {
1744 { .irq = -1 } 1683 { .irq = -1 }
1745}; 1684};
1746 1685
1747static struct omap_hwmod_dma_info omap2420_mcbsp2_sdma_chs[] = {
1748 { .name = "rx", .dma_req = 34 },
1749 { .name = "tx", .dma_req = 33 },
1750 { .dma_req = -1 }
1751};
1752
1753/* l4_core -> mcbsp2 */ 1686/* l4_core -> mcbsp2 */
1754static struct omap_hwmod_ocp_if omap2420_l4_core__mcbsp2 = { 1687static struct omap_hwmod_ocp_if omap2420_l4_core__mcbsp2 = {
1755 .master = &omap2420_l4_core_hwmod, 1688 .master = &omap2420_l4_core_hwmod,
@@ -1768,7 +1701,7 @@ static struct omap_hwmod omap2420_mcbsp2_hwmod = {
1768 .name = "mcbsp2", 1701 .name = "mcbsp2",
1769 .class = &omap2420_mcbsp_hwmod_class, 1702 .class = &omap2420_mcbsp_hwmod_class,
1770 .mpu_irqs = omap2420_mcbsp2_irqs, 1703 .mpu_irqs = omap2420_mcbsp2_irqs,
1771 .sdma_reqs = omap2420_mcbsp2_sdma_chs, 1704 .sdma_reqs = omap2_mcbsp2_sdma_reqs,
1772 .main_clk = "mcbsp2_fck", 1705 .main_clk = "mcbsp2_fck",
1773 .prcm = { 1706 .prcm = {
1774 .omap2 = { 1707 .omap2 = {
diff --git a/arch/arm/mach-omap2/omap_hwmod_2430_data.c b/arch/arm/mach-omap2/omap_hwmod_2430_data.c
index af758b3e723c..639acd598c92 100644
--- a/arch/arm/mach-omap2/omap_hwmod_2430_data.c
+++ b/arch/arm/mach-omap2/omap_hwmod_2430_data.c
@@ -900,12 +900,6 @@ static struct omap_hwmod_class uart_class = {
900 900
901/* UART1 */ 901/* UART1 */
902 902
903static struct omap_hwmod_dma_info uart1_sdma_reqs[] = {
904 { .name = "rx", .dma_req = OMAP24XX_DMA_UART1_RX, },
905 { .name = "tx", .dma_req = OMAP24XX_DMA_UART1_TX, },
906 { .dma_req = -1 }
907};
908
909static struct omap_hwmod_ocp_if *omap2430_uart1_slaves[] = { 903static struct omap_hwmod_ocp_if *omap2430_uart1_slaves[] = {
910 &omap2_l4_core__uart1, 904 &omap2_l4_core__uart1,
911}; 905};
@@ -913,7 +907,7 @@ static struct omap_hwmod_ocp_if *omap2430_uart1_slaves[] = {
913static struct omap_hwmod omap2430_uart1_hwmod = { 907static struct omap_hwmod omap2430_uart1_hwmod = {
914 .name = "uart1", 908 .name = "uart1",
915 .mpu_irqs = omap2_uart1_mpu_irqs, 909 .mpu_irqs = omap2_uart1_mpu_irqs,
916 .sdma_reqs = uart1_sdma_reqs, 910 .sdma_reqs = omap2_uart1_sdma_reqs,
917 .main_clk = "uart1_fck", 911 .main_clk = "uart1_fck",
918 .prcm = { 912 .prcm = {
919 .omap2 = { 913 .omap2 = {
@@ -932,12 +926,6 @@ static struct omap_hwmod omap2430_uart1_hwmod = {
932 926
933/* UART2 */ 927/* UART2 */
934 928
935static struct omap_hwmod_dma_info uart2_sdma_reqs[] = {
936 { .name = "rx", .dma_req = OMAP24XX_DMA_UART2_RX, },
937 { .name = "tx", .dma_req = OMAP24XX_DMA_UART2_TX, },
938 { .dma_req = -1 }
939};
940
941static struct omap_hwmod_ocp_if *omap2430_uart2_slaves[] = { 929static struct omap_hwmod_ocp_if *omap2430_uart2_slaves[] = {
942 &omap2_l4_core__uart2, 930 &omap2_l4_core__uart2,
943}; 931};
@@ -945,7 +933,7 @@ static struct omap_hwmod_ocp_if *omap2430_uart2_slaves[] = {
945static struct omap_hwmod omap2430_uart2_hwmod = { 933static struct omap_hwmod omap2430_uart2_hwmod = {
946 .name = "uart2", 934 .name = "uart2",
947 .mpu_irqs = omap2_uart2_mpu_irqs, 935 .mpu_irqs = omap2_uart2_mpu_irqs,
948 .sdma_reqs = uart2_sdma_reqs, 936 .sdma_reqs = omap2_uart2_sdma_reqs,
949 .main_clk = "uart2_fck", 937 .main_clk = "uart2_fck",
950 .prcm = { 938 .prcm = {
951 .omap2 = { 939 .omap2 = {
@@ -964,12 +952,6 @@ static struct omap_hwmod omap2430_uart2_hwmod = {
964 952
965/* UART3 */ 953/* UART3 */
966 954
967static struct omap_hwmod_dma_info uart3_sdma_reqs[] = {
968 { .name = "rx", .dma_req = OMAP24XX_DMA_UART3_RX, },
969 { .name = "tx", .dma_req = OMAP24XX_DMA_UART3_TX, },
970 { .dma_req = -1 }
971};
972
973static struct omap_hwmod_ocp_if *omap2430_uart3_slaves[] = { 955static struct omap_hwmod_ocp_if *omap2430_uart3_slaves[] = {
974 &omap2_l4_core__uart3, 956 &omap2_l4_core__uart3,
975}; 957};
@@ -977,7 +959,7 @@ static struct omap_hwmod_ocp_if *omap2430_uart3_slaves[] = {
977static struct omap_hwmod omap2430_uart3_hwmod = { 959static struct omap_hwmod omap2430_uart3_hwmod = {
978 .name = "uart3", 960 .name = "uart3",
979 .mpu_irqs = omap2_uart3_mpu_irqs, 961 .mpu_irqs = omap2_uart3_mpu_irqs,
980 .sdma_reqs = uart3_sdma_reqs, 962 .sdma_reqs = omap2_uart3_sdma_reqs,
981 .main_clk = "uart3_fck", 963 .main_clk = "uart3_fck",
982 .prcm = { 964 .prcm = {
983 .omap2 = { 965 .omap2 = {
@@ -1012,11 +994,6 @@ static struct omap_hwmod_class omap2430_dss_hwmod_class = {
1012 .sysc = &omap2430_dss_sysc, 994 .sysc = &omap2430_dss_sysc,
1013}; 995};
1014 996
1015static struct omap_hwmod_dma_info omap2430_dss_sdma_chs[] = {
1016 { .name = "dispc", .dma_req = 5 },
1017 { .dma_req = -1 }
1018};
1019
1020/* dss */ 997/* dss */
1021/* dss master ports */ 998/* dss master ports */
1022static struct omap_hwmod_ocp_if *omap2430_dss_masters[] = { 999static struct omap_hwmod_ocp_if *omap2430_dss_masters[] = {
@@ -1046,7 +1023,7 @@ static struct omap_hwmod omap2430_dss_core_hwmod = {
1046 .name = "dss_core", 1023 .name = "dss_core",
1047 .class = &omap2430_dss_hwmod_class, 1024 .class = &omap2430_dss_hwmod_class,
1048 .main_clk = "dss1_fck", /* instead of dss_fck */ 1025 .main_clk = "dss1_fck", /* instead of dss_fck */
1049 .sdma_reqs = omap2430_dss_sdma_chs, 1026 .sdma_reqs = omap2xxx_dss_sdma_chs,
1050 .prcm = { 1027 .prcm = {
1051 .omap2 = { 1028 .omap2 = {
1052 .prcm_reg_id = 1, 1029 .prcm_reg_id = 1,
@@ -1234,12 +1211,6 @@ static struct omap_i2c_dev_attr i2c_dev_attr = {
1234 1211
1235/* I2C1 */ 1212/* I2C1 */
1236 1213
1237static struct omap_hwmod_dma_info i2c1_sdma_reqs[] = {
1238 { .name = "tx", .dma_req = OMAP24XX_DMA_I2C1_TX },
1239 { .name = "rx", .dma_req = OMAP24XX_DMA_I2C1_RX },
1240 { .dma_req = -1 }
1241};
1242
1243static struct omap_hwmod_ocp_if *omap2430_i2c1_slaves[] = { 1214static struct omap_hwmod_ocp_if *omap2430_i2c1_slaves[] = {
1244 &omap2430_l4_core__i2c1, 1215 &omap2430_l4_core__i2c1,
1245}; 1216};
@@ -1247,7 +1218,7 @@ static struct omap_hwmod_ocp_if *omap2430_i2c1_slaves[] = {
1247static struct omap_hwmod omap2430_i2c1_hwmod = { 1218static struct omap_hwmod omap2430_i2c1_hwmod = {
1248 .name = "i2c1", 1219 .name = "i2c1",
1249 .mpu_irqs = omap2_i2c1_mpu_irqs, 1220 .mpu_irqs = omap2_i2c1_mpu_irqs,
1250 .sdma_reqs = i2c1_sdma_reqs, 1221 .sdma_reqs = omap2_i2c1_sdma_reqs,
1251 .main_clk = "i2chs1_fck", 1222 .main_clk = "i2chs1_fck",
1252 .prcm = { 1223 .prcm = {
1253 .omap2 = { 1224 .omap2 = {
@@ -1275,12 +1246,6 @@ static struct omap_hwmod omap2430_i2c1_hwmod = {
1275 1246
1276/* I2C2 */ 1247/* I2C2 */
1277 1248
1278static struct omap_hwmod_dma_info i2c2_sdma_reqs[] = {
1279 { .name = "tx", .dma_req = OMAP24XX_DMA_I2C2_TX },
1280 { .name = "rx", .dma_req = OMAP24XX_DMA_I2C2_RX },
1281 { .dma_req = -1 }
1282};
1283
1284static struct omap_hwmod_ocp_if *omap2430_i2c2_slaves[] = { 1249static struct omap_hwmod_ocp_if *omap2430_i2c2_slaves[] = {
1285 &omap2430_l4_core__i2c2, 1250 &omap2430_l4_core__i2c2,
1286}; 1251};
@@ -1288,7 +1253,7 @@ static struct omap_hwmod_ocp_if *omap2430_i2c2_slaves[] = {
1288static struct omap_hwmod omap2430_i2c2_hwmod = { 1253static struct omap_hwmod omap2430_i2c2_hwmod = {
1289 .name = "i2c2", 1254 .name = "i2c2",
1290 .mpu_irqs = omap2_i2c2_mpu_irqs, 1255 .mpu_irqs = omap2_i2c2_mpu_irqs,
1291 .sdma_reqs = i2c2_sdma_reqs, 1256 .sdma_reqs = omap2_i2c2_sdma_reqs,
1292 .main_clk = "i2chs2_fck", 1257 .main_clk = "i2chs2_fck",
1293 .prcm = { 1258 .prcm = {
1294 .omap2 = { 1259 .omap2 = {
@@ -1707,18 +1672,6 @@ static struct omap_hwmod_class omap2430_mcspi_class = {
1707}; 1672};
1708 1673
1709/* mcspi1 */ 1674/* mcspi1 */
1710static struct omap_hwmod_dma_info omap2430_mcspi1_sdma_reqs[] = {
1711 { .name = "tx0", .dma_req = 35 }, /* DMA_SPI1_TX0 */
1712 { .name = "rx0", .dma_req = 36 }, /* DMA_SPI1_RX0 */
1713 { .name = "tx1", .dma_req = 37 }, /* DMA_SPI1_TX1 */
1714 { .name = "rx1", .dma_req = 38 }, /* DMA_SPI1_RX1 */
1715 { .name = "tx2", .dma_req = 39 }, /* DMA_SPI1_TX2 */
1716 { .name = "rx2", .dma_req = 40 }, /* DMA_SPI1_RX2 */
1717 { .name = "tx3", .dma_req = 41 }, /* DMA_SPI1_TX3 */
1718 { .name = "rx3", .dma_req = 42 }, /* DMA_SPI1_RX3 */
1719 { .dma_req = -1 }
1720};
1721
1722static struct omap_hwmod_ocp_if *omap2430_mcspi1_slaves[] = { 1675static struct omap_hwmod_ocp_if *omap2430_mcspi1_slaves[] = {
1723 &omap2430_l4_core__mcspi1, 1676 &omap2430_l4_core__mcspi1,
1724}; 1677};
@@ -1730,7 +1683,7 @@ static struct omap2_mcspi_dev_attr omap_mcspi1_dev_attr = {
1730static struct omap_hwmod omap2430_mcspi1_hwmod = { 1683static struct omap_hwmod omap2430_mcspi1_hwmod = {
1731 .name = "mcspi1_hwmod", 1684 .name = "mcspi1_hwmod",
1732 .mpu_irqs = omap2_mcspi1_mpu_irqs, 1685 .mpu_irqs = omap2_mcspi1_mpu_irqs,
1733 .sdma_reqs = omap2430_mcspi1_sdma_reqs, 1686 .sdma_reqs = omap2_mcspi1_sdma_reqs,
1734 .main_clk = "mcspi1_fck", 1687 .main_clk = "mcspi1_fck",
1735 .prcm = { 1688 .prcm = {
1736 .omap2 = { 1689 .omap2 = {
@@ -1749,14 +1702,6 @@ static struct omap_hwmod omap2430_mcspi1_hwmod = {
1749}; 1702};
1750 1703
1751/* mcspi2 */ 1704/* mcspi2 */
1752static struct omap_hwmod_dma_info omap2430_mcspi2_sdma_reqs[] = {
1753 { .name = "tx0", .dma_req = 43 }, /* DMA_SPI2_TX0 */
1754 { .name = "rx0", .dma_req = 44 }, /* DMA_SPI2_RX0 */
1755 { .name = "tx1", .dma_req = 45 }, /* DMA_SPI2_TX1 */
1756 { .name = "rx1", .dma_req = 46 }, /* DMA_SPI2_RX1 */
1757 { .dma_req = -1 }
1758};
1759
1760static struct omap_hwmod_ocp_if *omap2430_mcspi2_slaves[] = { 1705static struct omap_hwmod_ocp_if *omap2430_mcspi2_slaves[] = {
1761 &omap2430_l4_core__mcspi2, 1706 &omap2430_l4_core__mcspi2,
1762}; 1707};
@@ -1768,7 +1713,7 @@ static struct omap2_mcspi_dev_attr omap_mcspi2_dev_attr = {
1768static struct omap_hwmod omap2430_mcspi2_hwmod = { 1713static struct omap_hwmod omap2430_mcspi2_hwmod = {
1769 .name = "mcspi2_hwmod", 1714 .name = "mcspi2_hwmod",
1770 .mpu_irqs = omap2_mcspi2_mpu_irqs, 1715 .mpu_irqs = omap2_mcspi2_mpu_irqs,
1771 .sdma_reqs = omap2430_mcspi2_sdma_reqs, 1716 .sdma_reqs = omap2_mcspi2_sdma_reqs,
1772 .main_clk = "mcspi2_fck", 1717 .main_clk = "mcspi2_fck",
1773 .prcm = { 1718 .prcm = {
1774 .omap2 = { 1719 .omap2 = {
@@ -1912,12 +1857,6 @@ static struct omap_hwmod_irq_info omap2430_mcbsp1_irqs[] = {
1912 { .irq = -1 } 1857 { .irq = -1 }
1913}; 1858};
1914 1859
1915static struct omap_hwmod_dma_info omap2430_mcbsp1_sdma_chs[] = {
1916 { .name = "rx", .dma_req = 32 },
1917 { .name = "tx", .dma_req = 31 },
1918 { .dma_req = -1 }
1919};
1920
1921/* l4_core -> mcbsp1 */ 1860/* l4_core -> mcbsp1 */
1922static struct omap_hwmod_ocp_if omap2430_l4_core__mcbsp1 = { 1861static struct omap_hwmod_ocp_if omap2430_l4_core__mcbsp1 = {
1923 .master = &omap2430_l4_core_hwmod, 1862 .master = &omap2430_l4_core_hwmod,
@@ -1936,7 +1875,7 @@ static struct omap_hwmod omap2430_mcbsp1_hwmod = {
1936 .name = "mcbsp1", 1875 .name = "mcbsp1",
1937 .class = &omap2430_mcbsp_hwmod_class, 1876 .class = &omap2430_mcbsp_hwmod_class,
1938 .mpu_irqs = omap2430_mcbsp1_irqs, 1877 .mpu_irqs = omap2430_mcbsp1_irqs,
1939 .sdma_reqs = omap2430_mcbsp1_sdma_chs, 1878 .sdma_reqs = omap2_mcbsp1_sdma_reqs,
1940 .main_clk = "mcbsp1_fck", 1879 .main_clk = "mcbsp1_fck",
1941 .prcm = { 1880 .prcm = {
1942 .omap2 = { 1881 .omap2 = {
@@ -1960,12 +1899,6 @@ static struct omap_hwmod_irq_info omap2430_mcbsp2_irqs[] = {
1960 { .irq = -1 } 1899 { .irq = -1 }
1961}; 1900};
1962 1901
1963static struct omap_hwmod_dma_info omap2430_mcbsp2_sdma_chs[] = {
1964 { .name = "rx", .dma_req = 34 },
1965 { .name = "tx", .dma_req = 33 },
1966 { .dma_req = -1 }
1967};
1968
1969/* l4_core -> mcbsp2 */ 1902/* l4_core -> mcbsp2 */
1970static struct omap_hwmod_ocp_if omap2430_l4_core__mcbsp2 = { 1903static struct omap_hwmod_ocp_if omap2430_l4_core__mcbsp2 = {
1971 .master = &omap2430_l4_core_hwmod, 1904 .master = &omap2430_l4_core_hwmod,
@@ -1984,7 +1917,7 @@ static struct omap_hwmod omap2430_mcbsp2_hwmod = {
1984 .name = "mcbsp2", 1917 .name = "mcbsp2",
1985 .class = &omap2430_mcbsp_hwmod_class, 1918 .class = &omap2430_mcbsp_hwmod_class,
1986 .mpu_irqs = omap2430_mcbsp2_irqs, 1919 .mpu_irqs = omap2430_mcbsp2_irqs,
1987 .sdma_reqs = omap2430_mcbsp2_sdma_chs, 1920 .sdma_reqs = omap2_mcbsp2_sdma_reqs,
1988 .main_clk = "mcbsp2_fck", 1921 .main_clk = "mcbsp2_fck",
1989 .prcm = { 1922 .prcm = {
1990 .omap2 = { 1923 .omap2 = {
@@ -2008,12 +1941,6 @@ static struct omap_hwmod_irq_info omap2430_mcbsp3_irqs[] = {
2008 { .irq = -1 } 1941 { .irq = -1 }
2009}; 1942};
2010 1943
2011static struct omap_hwmod_dma_info omap2430_mcbsp3_sdma_chs[] = {
2012 { .name = "rx", .dma_req = 18 },
2013 { .name = "tx", .dma_req = 17 },
2014 { .dma_req = -1 }
2015};
2016
2017static struct omap_hwmod_addr_space omap2430_mcbsp3_addrs[] = { 1944static struct omap_hwmod_addr_space omap2430_mcbsp3_addrs[] = {
2018 { 1945 {
2019 .name = "mpu", 1946 .name = "mpu",
@@ -2042,7 +1969,7 @@ static struct omap_hwmod omap2430_mcbsp3_hwmod = {
2042 .name = "mcbsp3", 1969 .name = "mcbsp3",
2043 .class = &omap2430_mcbsp_hwmod_class, 1970 .class = &omap2430_mcbsp_hwmod_class,
2044 .mpu_irqs = omap2430_mcbsp3_irqs, 1971 .mpu_irqs = omap2430_mcbsp3_irqs,
2045 .sdma_reqs = omap2430_mcbsp3_sdma_chs, 1972 .sdma_reqs = omap2_mcbsp3_sdma_reqs,
2046 .main_clk = "mcbsp3_fck", 1973 .main_clk = "mcbsp3_fck",
2047 .prcm = { 1974 .prcm = {
2048 .omap2 = { 1975 .omap2 = {
diff --git a/arch/arm/mach-omap2/omap_hwmod_2xxx_3xxx_ipblock_data.c b/arch/arm/mach-omap2/omap_hwmod_2xxx_3xxx_ipblock_data.c
index 245294b97f6e..7c4f5ab374a7 100644
--- a/arch/arm/mach-omap2/omap_hwmod_2xxx_3xxx_ipblock_data.c
+++ b/arch/arm/mach-omap2/omap_hwmod_2xxx_3xxx_ipblock_data.c
@@ -10,11 +10,35 @@
10 */ 10 */
11#include <plat/omap_hwmod.h> 11#include <plat/omap_hwmod.h>
12#include <plat/serial.h> 12#include <plat/serial.h>
13#include <plat/dma.h>
13 14
14#include <mach/irqs.h> 15#include <mach/irqs.h>
15 16
16#include "omap_hwmod_common_data.h" 17#include "omap_hwmod_common_data.h"
17 18
19
20/*
21 * omap_hwmod class data
22 */
23
24struct omap_hwmod_class l3_hwmod_class = {
25 .name = "l3"
26};
27
28struct omap_hwmod_class l4_hwmod_class = {
29 .name = "l4"
30};
31
32struct omap_hwmod_class mpu_hwmod_class = {
33 .name = "mpu"
34};
35
36struct omap_hwmod_class iva_hwmod_class = {
37 .name = "iva"
38};
39
40/* Common MPU IRQ line data */
41
18struct omap_hwmod_irq_info omap2_timer1_mpu_irqs[] = { 42struct omap_hwmod_irq_info omap2_timer1_mpu_irqs[] = {
19 { .irq = 37, }, 43 { .irq = 37, },
20 { .irq = -1 } 44 { .irq = -1 }
@@ -138,5 +162,73 @@ struct omap_hwmod_irq_info omap2_mcspi2_mpu_irqs[] = {
138 { .irq = -1 } 162 { .irq = -1 }
139}; 163};
140 164
165/* Common DMA request line data */
166struct omap_hwmod_dma_info omap2_uart1_sdma_reqs[] = {
167 { .name = "rx", .dma_req = OMAP24XX_DMA_UART1_RX, },
168 { .name = "tx", .dma_req = OMAP24XX_DMA_UART1_TX, },
169 { .dma_req = -1 }
170};
171
172struct omap_hwmod_dma_info omap2_uart2_sdma_reqs[] = {
173 { .name = "rx", .dma_req = OMAP24XX_DMA_UART2_RX, },
174 { .name = "tx", .dma_req = OMAP24XX_DMA_UART2_TX, },
175 { .dma_req = -1 }
176};
177
178struct omap_hwmod_dma_info omap2_uart3_sdma_reqs[] = {
179 { .name = "rx", .dma_req = OMAP24XX_DMA_UART3_RX, },
180 { .name = "tx", .dma_req = OMAP24XX_DMA_UART3_TX, },
181 { .dma_req = -1 }
182};
183
184struct omap_hwmod_dma_info omap2_i2c1_sdma_reqs[] = {
185 { .name = "tx", .dma_req = OMAP24XX_DMA_I2C1_TX },
186 { .name = "rx", .dma_req = OMAP24XX_DMA_I2C1_RX },
187 { .dma_req = -1 }
188};
189
190struct omap_hwmod_dma_info omap2_i2c2_sdma_reqs[] = {
191 { .name = "tx", .dma_req = OMAP24XX_DMA_I2C2_TX },
192 { .name = "rx", .dma_req = OMAP24XX_DMA_I2C2_RX },
193 { .dma_req = -1 }
194};
195
196struct omap_hwmod_dma_info omap2_mcspi1_sdma_reqs[] = {
197 { .name = "tx0", .dma_req = 35 }, /* DMA_SPI1_TX0 */
198 { .name = "rx0", .dma_req = 36 }, /* DMA_SPI1_RX0 */
199 { .name = "tx1", .dma_req = 37 }, /* DMA_SPI1_TX1 */
200 { .name = "rx1", .dma_req = 38 }, /* DMA_SPI1_RX1 */
201 { .name = "tx2", .dma_req = 39 }, /* DMA_SPI1_TX2 */
202 { .name = "rx2", .dma_req = 40 }, /* DMA_SPI1_RX2 */
203 { .name = "tx3", .dma_req = 41 }, /* DMA_SPI1_TX3 */
204 { .name = "rx3", .dma_req = 42 }, /* DMA_SPI1_RX3 */
205 { .dma_req = -1 }
206};
207
208struct omap_hwmod_dma_info omap2_mcspi2_sdma_reqs[] = {
209 { .name = "tx0", .dma_req = 43 }, /* DMA_SPI2_TX0 */
210 { .name = "rx0", .dma_req = 44 }, /* DMA_SPI2_RX0 */
211 { .name = "tx1", .dma_req = 45 }, /* DMA_SPI2_TX1 */
212 { .name = "rx1", .dma_req = 46 }, /* DMA_SPI2_RX1 */
213 { .dma_req = -1 }
214};
215
216struct omap_hwmod_dma_info omap2_mcbsp1_sdma_reqs[] = {
217 { .name = "rx", .dma_req = 32 },
218 { .name = "tx", .dma_req = 31 },
219 { .dma_req = -1 }
220};
221
222struct omap_hwmod_dma_info omap2_mcbsp2_sdma_reqs[] = {
223 { .name = "rx", .dma_req = 34 },
224 { .name = "tx", .dma_req = 33 },
225 { .dma_req = -1 }
226};
227
228struct omap_hwmod_dma_info omap2_mcbsp3_sdma_reqs[] = {
229 { .name = "rx", .dma_req = 18 },
230 { .name = "tx", .dma_req = 17 },
231 { .dma_req = -1 }
232};
141 233
142 234
diff --git a/arch/arm/mach-omap2/omap_hwmod_2xxx_ipblock_data.c b/arch/arm/mach-omap2/omap_hwmod_2xxx_ipblock_data.c
index 5a078a652c33..f5b63efb1b67 100644
--- a/arch/arm/mach-omap2/omap_hwmod_2xxx_ipblock_data.c
+++ b/arch/arm/mach-omap2/omap_hwmod_2xxx_ipblock_data.c
@@ -10,6 +10,7 @@
10 */ 10 */
11#include <plat/omap_hwmod.h> 11#include <plat/omap_hwmod.h>
12#include <plat/serial.h> 12#include <plat/serial.h>
13#include <plat/dma.h>
13 14
14#include <mach/irqs.h> 15#include <mach/irqs.h>
15 16
@@ -19,3 +20,8 @@ struct omap_hwmod_irq_info omap2xxx_timer12_mpu_irqs[] = {
19 { .irq = 48, }, 20 { .irq = 48, },
20 { .irq = -1 } 21 { .irq = -1 }
21}; 22};
23
24struct omap_hwmod_dma_info omap2xxx_dss_sdma_chs[] = {
25 { .name = "dispc", .dma_req = 5 },
26 { .dma_req = -1 }
27};
diff --git a/arch/arm/mach-omap2/omap_hwmod_3xxx_data.c b/arch/arm/mach-omap2/omap_hwmod_3xxx_data.c
index 265f0b10e5ca..001f67b8777d 100644
--- a/arch/arm/mach-omap2/omap_hwmod_3xxx_data.c
+++ b/arch/arm/mach-omap2/omap_hwmod_3xxx_data.c
@@ -1210,12 +1210,6 @@ static struct omap_hwmod_class uart_class = {
1210 1210
1211/* UART1 */ 1211/* UART1 */
1212 1212
1213static struct omap_hwmod_dma_info uart1_sdma_reqs[] = {
1214 { .name = "tx", .dma_req = OMAP24XX_DMA_UART1_TX, },
1215 { .name = "rx", .dma_req = OMAP24XX_DMA_UART1_RX, },
1216 { .dma_req = -1 }
1217};
1218
1219static struct omap_hwmod_ocp_if *omap3xxx_uart1_slaves[] = { 1213static struct omap_hwmod_ocp_if *omap3xxx_uart1_slaves[] = {
1220 &omap3_l4_core__uart1, 1214 &omap3_l4_core__uart1,
1221}; 1215};
@@ -1223,7 +1217,7 @@ static struct omap_hwmod_ocp_if *omap3xxx_uart1_slaves[] = {
1223static struct omap_hwmod omap3xxx_uart1_hwmod = { 1217static struct omap_hwmod omap3xxx_uart1_hwmod = {
1224 .name = "uart1", 1218 .name = "uart1",
1225 .mpu_irqs = omap2_uart1_mpu_irqs, 1219 .mpu_irqs = omap2_uart1_mpu_irqs,
1226 .sdma_reqs = uart1_sdma_reqs, 1220 .sdma_reqs = omap2_uart1_sdma_reqs,
1227 .main_clk = "uart1_fck", 1221 .main_clk = "uart1_fck",
1228 .prcm = { 1222 .prcm = {
1229 .omap2 = { 1223 .omap2 = {
@@ -1242,12 +1236,6 @@ static struct omap_hwmod omap3xxx_uart1_hwmod = {
1242 1236
1243/* UART2 */ 1237/* UART2 */
1244 1238
1245static struct omap_hwmod_dma_info uart2_sdma_reqs[] = {
1246 { .name = "tx", .dma_req = OMAP24XX_DMA_UART2_TX, },
1247 { .name = "rx", .dma_req = OMAP24XX_DMA_UART2_RX, },
1248 { .dma_req = -1 }
1249};
1250
1251static struct omap_hwmod_ocp_if *omap3xxx_uart2_slaves[] = { 1239static struct omap_hwmod_ocp_if *omap3xxx_uart2_slaves[] = {
1252 &omap3_l4_core__uart2, 1240 &omap3_l4_core__uart2,
1253}; 1241};
@@ -1255,7 +1243,7 @@ static struct omap_hwmod_ocp_if *omap3xxx_uart2_slaves[] = {
1255static struct omap_hwmod omap3xxx_uart2_hwmod = { 1243static struct omap_hwmod omap3xxx_uart2_hwmod = {
1256 .name = "uart2", 1244 .name = "uart2",
1257 .mpu_irqs = omap2_uart2_mpu_irqs, 1245 .mpu_irqs = omap2_uart2_mpu_irqs,
1258 .sdma_reqs = uart2_sdma_reqs, 1246 .sdma_reqs = omap2_uart2_sdma_reqs,
1259 .main_clk = "uart2_fck", 1247 .main_clk = "uart2_fck",
1260 .prcm = { 1248 .prcm = {
1261 .omap2 = { 1249 .omap2 = {
@@ -1274,12 +1262,6 @@ static struct omap_hwmod omap3xxx_uart2_hwmod = {
1274 1262
1275/* UART3 */ 1263/* UART3 */
1276 1264
1277static struct omap_hwmod_dma_info uart3_sdma_reqs[] = {
1278 { .name = "tx", .dma_req = OMAP24XX_DMA_UART3_TX, },
1279 { .name = "rx", .dma_req = OMAP24XX_DMA_UART3_RX, },
1280 { .dma_req = -1 }
1281};
1282
1283static struct omap_hwmod_ocp_if *omap3xxx_uart3_slaves[] = { 1265static struct omap_hwmod_ocp_if *omap3xxx_uart3_slaves[] = {
1284 &omap3_l4_per__uart3, 1266 &omap3_l4_per__uart3,
1285}; 1267};
@@ -1287,7 +1269,7 @@ static struct omap_hwmod_ocp_if *omap3xxx_uart3_slaves[] = {
1287static struct omap_hwmod omap3xxx_uart3_hwmod = { 1269static struct omap_hwmod omap3xxx_uart3_hwmod = {
1288 .name = "uart3", 1270 .name = "uart3",
1289 .mpu_irqs = omap2_uart3_mpu_irqs, 1271 .mpu_irqs = omap2_uart3_mpu_irqs,
1290 .sdma_reqs = uart3_sdma_reqs, 1272 .sdma_reqs = omap2_uart3_sdma_reqs,
1291 .main_clk = "uart3_fck", 1273 .main_clk = "uart3_fck",
1292 .prcm = { 1274 .prcm = {
1293 .omap2 = { 1275 .omap2 = {
@@ -1714,12 +1696,6 @@ static struct omap_i2c_dev_attr i2c1_dev_attr = {
1714 .fifo_depth = 8, /* bytes */ 1696 .fifo_depth = 8, /* bytes */
1715}; 1697};
1716 1698
1717static struct omap_hwmod_dma_info i2c1_sdma_reqs[] = {
1718 { .name = "tx", .dma_req = OMAP24XX_DMA_I2C1_TX },
1719 { .name = "rx", .dma_req = OMAP24XX_DMA_I2C1_RX },
1720 { .dma_req = -1 }
1721};
1722
1723static struct omap_hwmod_ocp_if *omap3xxx_i2c1_slaves[] = { 1699static struct omap_hwmod_ocp_if *omap3xxx_i2c1_slaves[] = {
1724 &omap3_l4_core__i2c1, 1700 &omap3_l4_core__i2c1,
1725}; 1701};
@@ -1727,7 +1703,7 @@ static struct omap_hwmod_ocp_if *omap3xxx_i2c1_slaves[] = {
1727static struct omap_hwmod omap3xxx_i2c1_hwmod = { 1703static struct omap_hwmod omap3xxx_i2c1_hwmod = {
1728 .name = "i2c1", 1704 .name = "i2c1",
1729 .mpu_irqs = omap2_i2c1_mpu_irqs, 1705 .mpu_irqs = omap2_i2c1_mpu_irqs,
1730 .sdma_reqs = i2c1_sdma_reqs, 1706 .sdma_reqs = omap2_i2c1_sdma_reqs,
1731 .main_clk = "i2c1_fck", 1707 .main_clk = "i2c1_fck",
1732 .prcm = { 1708 .prcm = {
1733 .omap2 = { 1709 .omap2 = {
@@ -1751,12 +1727,6 @@ static struct omap_i2c_dev_attr i2c2_dev_attr = {
1751 .fifo_depth = 8, /* bytes */ 1727 .fifo_depth = 8, /* bytes */
1752}; 1728};
1753 1729
1754static struct omap_hwmod_dma_info i2c2_sdma_reqs[] = {
1755 { .name = "tx", .dma_req = OMAP24XX_DMA_I2C2_TX },
1756 { .name = "rx", .dma_req = OMAP24XX_DMA_I2C2_RX },
1757 { .dma_req = -1 }
1758};
1759
1760static struct omap_hwmod_ocp_if *omap3xxx_i2c2_slaves[] = { 1730static struct omap_hwmod_ocp_if *omap3xxx_i2c2_slaves[] = {
1761 &omap3_l4_core__i2c2, 1731 &omap3_l4_core__i2c2,
1762}; 1732};
@@ -1764,7 +1734,7 @@ static struct omap_hwmod_ocp_if *omap3xxx_i2c2_slaves[] = {
1764static struct omap_hwmod omap3xxx_i2c2_hwmod = { 1734static struct omap_hwmod omap3xxx_i2c2_hwmod = {
1765 .name = "i2c2", 1735 .name = "i2c2",
1766 .mpu_irqs = omap2_i2c2_mpu_irqs, 1736 .mpu_irqs = omap2_i2c2_mpu_irqs,
1767 .sdma_reqs = i2c2_sdma_reqs, 1737 .sdma_reqs = omap2_i2c2_sdma_reqs,
1768 .main_clk = "i2c2_fck", 1738 .main_clk = "i2c2_fck",
1769 .prcm = { 1739 .prcm = {
1770 .omap2 = { 1740 .omap2 = {
@@ -2269,12 +2239,6 @@ static struct omap_hwmod_irq_info omap3xxx_mcbsp1_irqs[] = {
2269 { .irq = -1 } 2239 { .irq = -1 }
2270}; 2240};
2271 2241
2272static struct omap_hwmod_dma_info omap3xxx_mcbsp1_sdma_chs[] = {
2273 { .name = "rx", .dma_req = 32 },
2274 { .name = "tx", .dma_req = 31 },
2275 { .dma_req = -1 }
2276};
2277
2278static struct omap_hwmod_addr_space omap3xxx_mcbsp1_addrs[] = { 2242static struct omap_hwmod_addr_space omap3xxx_mcbsp1_addrs[] = {
2279 { 2243 {
2280 .name = "mpu", 2244 .name = "mpu",
@@ -2303,7 +2267,7 @@ static struct omap_hwmod omap3xxx_mcbsp1_hwmod = {
2303 .name = "mcbsp1", 2267 .name = "mcbsp1",
2304 .class = &omap3xxx_mcbsp_hwmod_class, 2268 .class = &omap3xxx_mcbsp_hwmod_class,
2305 .mpu_irqs = omap3xxx_mcbsp1_irqs, 2269 .mpu_irqs = omap3xxx_mcbsp1_irqs,
2306 .sdma_reqs = omap3xxx_mcbsp1_sdma_chs, 2270 .sdma_reqs = omap2_mcbsp1_sdma_reqs,
2307 .main_clk = "mcbsp1_fck", 2271 .main_clk = "mcbsp1_fck",
2308 .prcm = { 2272 .prcm = {
2309 .omap2 = { 2273 .omap2 = {
@@ -2327,12 +2291,6 @@ static struct omap_hwmod_irq_info omap3xxx_mcbsp2_irqs[] = {
2327 { .irq = -1 } 2291 { .irq = -1 }
2328}; 2292};
2329 2293
2330static struct omap_hwmod_dma_info omap3xxx_mcbsp2_sdma_chs[] = {
2331 { .name = "rx", .dma_req = 34 },
2332 { .name = "tx", .dma_req = 33 },
2333 { .dma_req = -1 }
2334};
2335
2336static struct omap_hwmod_addr_space omap3xxx_mcbsp2_addrs[] = { 2294static struct omap_hwmod_addr_space omap3xxx_mcbsp2_addrs[] = {
2337 { 2295 {
2338 .name = "mpu", 2296 .name = "mpu",
@@ -2349,7 +2307,6 @@ static struct omap_hwmod_ocp_if omap3xxx_l4_per__mcbsp2 = {
2349 .slave = &omap3xxx_mcbsp2_hwmod, 2307 .slave = &omap3xxx_mcbsp2_hwmod,
2350 .clk = "mcbsp2_ick", 2308 .clk = "mcbsp2_ick",
2351 .addr = omap3xxx_mcbsp2_addrs, 2309 .addr = omap3xxx_mcbsp2_addrs,
2352
2353 .user = OCP_USER_MPU | OCP_USER_SDMA, 2310 .user = OCP_USER_MPU | OCP_USER_SDMA,
2354}; 2311};
2355 2312
@@ -2366,7 +2323,7 @@ static struct omap_hwmod omap3xxx_mcbsp2_hwmod = {
2366 .name = "mcbsp2", 2323 .name = "mcbsp2",
2367 .class = &omap3xxx_mcbsp_hwmod_class, 2324 .class = &omap3xxx_mcbsp_hwmod_class,
2368 .mpu_irqs = omap3xxx_mcbsp2_irqs, 2325 .mpu_irqs = omap3xxx_mcbsp2_irqs,
2369 .sdma_reqs = omap3xxx_mcbsp2_sdma_chs, 2326 .sdma_reqs = omap2_mcbsp2_sdma_reqs,
2370 .main_clk = "mcbsp2_fck", 2327 .main_clk = "mcbsp2_fck",
2371 .prcm = { 2328 .prcm = {
2372 .omap2 = { 2329 .omap2 = {
@@ -2391,12 +2348,6 @@ static struct omap_hwmod_irq_info omap3xxx_mcbsp3_irqs[] = {
2391 { .irq = -1 } 2348 { .irq = -1 }
2392}; 2349};
2393 2350
2394static struct omap_hwmod_dma_info omap3xxx_mcbsp3_sdma_chs[] = {
2395 { .name = "rx", .dma_req = 18 },
2396 { .name = "tx", .dma_req = 17 },
2397 { .dma_req = -1 }
2398};
2399
2400static struct omap_hwmod_addr_space omap3xxx_mcbsp3_addrs[] = { 2351static struct omap_hwmod_addr_space omap3xxx_mcbsp3_addrs[] = {
2401 { 2352 {
2402 .name = "mpu", 2353 .name = "mpu",
@@ -2429,7 +2380,7 @@ static struct omap_hwmod omap3xxx_mcbsp3_hwmod = {
2429 .name = "mcbsp3", 2380 .name = "mcbsp3",
2430 .class = &omap3xxx_mcbsp_hwmod_class, 2381 .class = &omap3xxx_mcbsp_hwmod_class,
2431 .mpu_irqs = omap3xxx_mcbsp3_irqs, 2382 .mpu_irqs = omap3xxx_mcbsp3_irqs,
2432 .sdma_reqs = omap3xxx_mcbsp3_sdma_chs, 2383 .sdma_reqs = omap2_mcbsp3_sdma_reqs,
2433 .main_clk = "mcbsp3_fck", 2384 .main_clk = "mcbsp3_fck",
2434 .prcm = { 2385 .prcm = {
2435 .omap2 = { 2386 .omap2 = {
@@ -2939,18 +2890,6 @@ static struct omap_hwmod_class omap34xx_mcspi_class = {
2939}; 2890};
2940 2891
2941/* mcspi1 */ 2892/* mcspi1 */
2942static struct omap_hwmod_dma_info omap34xx_mcspi1_sdma_reqs[] = {
2943 { .name = "tx0", .dma_req = 35 },
2944 { .name = "rx0", .dma_req = 36 },
2945 { .name = "tx1", .dma_req = 37 },
2946 { .name = "rx1", .dma_req = 38 },
2947 { .name = "tx2", .dma_req = 39 },
2948 { .name = "rx2", .dma_req = 40 },
2949 { .name = "tx3", .dma_req = 41 },
2950 { .name = "rx3", .dma_req = 42 },
2951 { .dma_req = -1 }
2952};
2953
2954static struct omap_hwmod_ocp_if *omap34xx_mcspi1_slaves[] = { 2893static struct omap_hwmod_ocp_if *omap34xx_mcspi1_slaves[] = {
2955 &omap34xx_l4_core__mcspi1, 2894 &omap34xx_l4_core__mcspi1,
2956}; 2895};
@@ -2962,7 +2901,7 @@ static struct omap2_mcspi_dev_attr omap_mcspi1_dev_attr = {
2962static struct omap_hwmod omap34xx_mcspi1 = { 2901static struct omap_hwmod omap34xx_mcspi1 = {
2963 .name = "mcspi1", 2902 .name = "mcspi1",
2964 .mpu_irqs = omap2_mcspi1_mpu_irqs, 2903 .mpu_irqs = omap2_mcspi1_mpu_irqs,
2965 .sdma_reqs = omap34xx_mcspi1_sdma_reqs, 2904 .sdma_reqs = omap2_mcspi1_sdma_reqs,
2966 .main_clk = "mcspi1_fck", 2905 .main_clk = "mcspi1_fck",
2967 .prcm = { 2906 .prcm = {
2968 .omap2 = { 2907 .omap2 = {
@@ -2981,14 +2920,6 @@ static struct omap_hwmod omap34xx_mcspi1 = {
2981}; 2920};
2982 2921
2983/* mcspi2 */ 2922/* mcspi2 */
2984static struct omap_hwmod_dma_info omap34xx_mcspi2_sdma_reqs[] = {
2985 { .name = "tx0", .dma_req = 43 },
2986 { .name = "rx0", .dma_req = 44 },
2987 { .name = "tx1", .dma_req = 45 },
2988 { .name = "rx1", .dma_req = 46 },
2989 { .dma_req = -1 }
2990};
2991
2992static struct omap_hwmod_ocp_if *omap34xx_mcspi2_slaves[] = { 2923static struct omap_hwmod_ocp_if *omap34xx_mcspi2_slaves[] = {
2993 &omap34xx_l4_core__mcspi2, 2924 &omap34xx_l4_core__mcspi2,
2994}; 2925};
@@ -3000,7 +2931,7 @@ static struct omap2_mcspi_dev_attr omap_mcspi2_dev_attr = {
3000static struct omap_hwmod omap34xx_mcspi2 = { 2931static struct omap_hwmod omap34xx_mcspi2 = {
3001 .name = "mcspi2", 2932 .name = "mcspi2",
3002 .mpu_irqs = omap2_mcspi2_mpu_irqs, 2933 .mpu_irqs = omap2_mcspi2_mpu_irqs,
3003 .sdma_reqs = omap34xx_mcspi2_sdma_reqs, 2934 .sdma_reqs = omap2_mcspi2_sdma_reqs,
3004 .main_clk = "mcspi2_fck", 2935 .main_clk = "mcspi2_fck",
3005 .prcm = { 2936 .prcm = {
3006 .omap2 = { 2937 .omap2 = {
diff --git a/arch/arm/mach-omap2/omap_hwmod_common_data.c b/arch/arm/mach-omap2/omap_hwmod_common_data.c
index 08a134243ecb..de832ebc93a9 100644
--- a/arch/arm/mach-omap2/omap_hwmod_common_data.c
+++ b/arch/arm/mach-omap2/omap_hwmod_common_data.c
@@ -49,23 +49,3 @@ struct omap_hwmod_sysc_fields omap_hwmod_sysc_type2 = {
49 .srst_shift = SYSC_TYPE2_SOFTRESET_SHIFT, 49 .srst_shift = SYSC_TYPE2_SOFTRESET_SHIFT,
50}; 50};
51 51
52
53/*
54 * omap_hwmod class data
55 */
56
57struct omap_hwmod_class l3_hwmod_class = {
58 .name = "l3"
59};
60
61struct omap_hwmod_class l4_hwmod_class = {
62 .name = "l4"
63};
64
65struct omap_hwmod_class mpu_hwmod_class = {
66 .name = "mpu"
67};
68
69struct omap_hwmod_class iva_hwmod_class = {
70 .name = "iva"
71};
diff --git a/arch/arm/mach-omap2/omap_hwmod_common_data.h b/arch/arm/mach-omap2/omap_hwmod_common_data.h
index 1ac878c46af3..b636cf6a62d4 100644
--- a/arch/arm/mach-omap2/omap_hwmod_common_data.h
+++ b/arch/arm/mach-omap2/omap_hwmod_common_data.h
@@ -51,6 +51,21 @@ extern struct omap_hwmod_addr_space omap2_mcbsp1_addrs[];
51 51
52/* Common IP block data across OMAP2xxx */ 52/* Common IP block data across OMAP2xxx */
53extern struct omap_hwmod_irq_info omap2xxx_timer12_mpu_irqs[]; 53extern struct omap_hwmod_irq_info omap2xxx_timer12_mpu_irqs[];
54extern struct omap_hwmod_dma_info omap2xxx_dss_sdma_chs[];
55
56/* Common IP block data */
57extern struct omap_hwmod_dma_info omap2_uart1_sdma_reqs[];
58extern struct omap_hwmod_dma_info omap2_uart2_sdma_reqs[];
59extern struct omap_hwmod_dma_info omap2_uart3_sdma_reqs[];
60extern struct omap_hwmod_dma_info omap2_i2c1_sdma_reqs[];
61extern struct omap_hwmod_dma_info omap2_i2c2_sdma_reqs[];
62extern struct omap_hwmod_dma_info omap2_mcspi1_sdma_reqs[];
63extern struct omap_hwmod_dma_info omap2_mcspi2_sdma_reqs[];
64extern struct omap_hwmod_dma_info omap2_mcbsp1_sdma_reqs[];
65extern struct omap_hwmod_dma_info omap2_mcbsp2_sdma_reqs[];
66
67/* Common IP block data on OMAP2430/OMAP3 */
68extern struct omap_hwmod_dma_info omap2_mcbsp3_sdma_reqs[];
54 69
55/* Common IP block data across OMAP2/3 */ 70/* Common IP block data across OMAP2/3 */
56extern struct omap_hwmod_irq_info omap2_timer1_mpu_irqs[]; 71extern struct omap_hwmod_irq_info omap2_timer1_mpu_irqs[];