diff options
Diffstat (limited to 'arch/arm/mach-omap2/omap_hwmod_7xx_data.c')
-rw-r--r-- | arch/arm/mach-omap2/omap_hwmod_7xx_data.c | 260 |
1 files changed, 260 insertions, 0 deletions
diff --git a/arch/arm/mach-omap2/omap_hwmod_7xx_data.c b/arch/arm/mach-omap2/omap_hwmod_7xx_data.c index 31fd26062535..e3562624ae48 100644 --- a/arch/arm/mach-omap2/omap_hwmod_7xx_data.c +++ b/arch/arm/mach-omap2/omap_hwmod_7xx_data.c | |||
@@ -273,6 +273,56 @@ static struct omap_hwmod dra7xx_ctrl_module_wkup_hwmod = { | |||
273 | }; | 273 | }; |
274 | 274 | ||
275 | /* | 275 | /* |
276 | * 'gmac' class | ||
277 | * cpsw/gmac sub system | ||
278 | */ | ||
279 | static struct omap_hwmod_class_sysconfig dra7xx_gmac_sysc = { | ||
280 | .rev_offs = 0x0, | ||
281 | .sysc_offs = 0x8, | ||
282 | .syss_offs = 0x4, | ||
283 | .sysc_flags = (SYSC_HAS_SIDLEMODE | SYSC_HAS_MIDLEMODE | | ||
284 | SYSS_HAS_RESET_STATUS), | ||
285 | .idlemodes = (SIDLE_FORCE | SIDLE_NO | MSTANDBY_FORCE | | ||
286 | MSTANDBY_NO), | ||
287 | .sysc_fields = &omap_hwmod_sysc_type3, | ||
288 | }; | ||
289 | |||
290 | static struct omap_hwmod_class dra7xx_gmac_hwmod_class = { | ||
291 | .name = "gmac", | ||
292 | .sysc = &dra7xx_gmac_sysc, | ||
293 | }; | ||
294 | |||
295 | static struct omap_hwmod dra7xx_gmac_hwmod = { | ||
296 | .name = "gmac", | ||
297 | .class = &dra7xx_gmac_hwmod_class, | ||
298 | .clkdm_name = "gmac_clkdm", | ||
299 | .flags = (HWMOD_SWSUP_SIDLE | HWMOD_SWSUP_MSTANDBY), | ||
300 | .main_clk = "dpll_gmac_ck", | ||
301 | .mpu_rt_idx = 1, | ||
302 | .prcm = { | ||
303 | .omap4 = { | ||
304 | .clkctrl_offs = DRA7XX_CM_GMAC_GMAC_CLKCTRL_OFFSET, | ||
305 | .context_offs = DRA7XX_RM_GMAC_GMAC_CONTEXT_OFFSET, | ||
306 | .modulemode = MODULEMODE_SWCTRL, | ||
307 | }, | ||
308 | }, | ||
309 | }; | ||
310 | |||
311 | /* | ||
312 | * 'mdio' class | ||
313 | */ | ||
314 | static struct omap_hwmod_class dra7xx_mdio_hwmod_class = { | ||
315 | .name = "davinci_mdio", | ||
316 | }; | ||
317 | |||
318 | static struct omap_hwmod dra7xx_mdio_hwmod = { | ||
319 | .name = "davinci_mdio", | ||
320 | .class = &dra7xx_mdio_hwmod_class, | ||
321 | .clkdm_name = "gmac_clkdm", | ||
322 | .main_clk = "dpll_gmac_ck", | ||
323 | }; | ||
324 | |||
325 | /* | ||
276 | * 'dcan' class | 326 | * 'dcan' class |
277 | * | 327 | * |
278 | */ | 328 | */ |
@@ -1206,6 +1256,97 @@ static struct omap_hwmod dra7xx_ocp2scp1_hwmod = { | |||
1206 | }, | 1256 | }, |
1207 | }; | 1257 | }; |
1208 | 1258 | ||
1259 | /* ocp2scp3 */ | ||
1260 | static struct omap_hwmod dra7xx_ocp2scp3_hwmod = { | ||
1261 | .name = "ocp2scp3", | ||
1262 | .class = &dra7xx_ocp2scp_hwmod_class, | ||
1263 | .clkdm_name = "l3init_clkdm", | ||
1264 | .main_clk = "l4_root_clk_div", | ||
1265 | .prcm = { | ||
1266 | .omap4 = { | ||
1267 | .clkctrl_offs = DRA7XX_CM_L3INIT_OCP2SCP3_CLKCTRL_OFFSET, | ||
1268 | .context_offs = DRA7XX_RM_L3INIT_OCP2SCP3_CONTEXT_OFFSET, | ||
1269 | .modulemode = MODULEMODE_HWCTRL, | ||
1270 | }, | ||
1271 | }, | ||
1272 | }; | ||
1273 | |||
1274 | /* | ||
1275 | * 'PCIE' class | ||
1276 | * | ||
1277 | */ | ||
1278 | |||
1279 | static struct omap_hwmod_class dra7xx_pcie_hwmod_class = { | ||
1280 | .name = "pcie", | ||
1281 | }; | ||
1282 | |||
1283 | /* pcie1 */ | ||
1284 | static struct omap_hwmod dra7xx_pcie1_hwmod = { | ||
1285 | .name = "pcie1", | ||
1286 | .class = &dra7xx_pcie_hwmod_class, | ||
1287 | .clkdm_name = "pcie_clkdm", | ||
1288 | .main_clk = "l4_root_clk_div", | ||
1289 | .prcm = { | ||
1290 | .omap4 = { | ||
1291 | .clkctrl_offs = DRA7XX_CM_PCIE_CLKSTCTRL_OFFSET, | ||
1292 | .modulemode = MODULEMODE_SWCTRL, | ||
1293 | }, | ||
1294 | }, | ||
1295 | }; | ||
1296 | |||
1297 | /* pcie2 */ | ||
1298 | static struct omap_hwmod dra7xx_pcie2_hwmod = { | ||
1299 | .name = "pcie2", | ||
1300 | .class = &dra7xx_pcie_hwmod_class, | ||
1301 | .clkdm_name = "pcie_clkdm", | ||
1302 | .main_clk = "l4_root_clk_div", | ||
1303 | .prcm = { | ||
1304 | .omap4 = { | ||
1305 | .clkctrl_offs = DRA7XX_CM_PCIE_CLKSTCTRL_OFFSET, | ||
1306 | .modulemode = MODULEMODE_SWCTRL, | ||
1307 | }, | ||
1308 | }, | ||
1309 | }; | ||
1310 | |||
1311 | /* | ||
1312 | * 'PCIE PHY' class | ||
1313 | * | ||
1314 | */ | ||
1315 | |||
1316 | static struct omap_hwmod_class dra7xx_pcie_phy_hwmod_class = { | ||
1317 | .name = "pcie-phy", | ||
1318 | }; | ||
1319 | |||
1320 | /* pcie1 phy */ | ||
1321 | static struct omap_hwmod dra7xx_pcie1_phy_hwmod = { | ||
1322 | .name = "pcie1-phy", | ||
1323 | .class = &dra7xx_pcie_phy_hwmod_class, | ||
1324 | .clkdm_name = "l3init_clkdm", | ||
1325 | .main_clk = "l4_root_clk_div", | ||
1326 | .prcm = { | ||
1327 | .omap4 = { | ||
1328 | .clkctrl_offs = DRA7XX_CM_L3INIT_PCIESS1_CLKCTRL_OFFSET, | ||
1329 | .context_offs = DRA7XX_RM_L3INIT_PCIESS1_CONTEXT_OFFSET, | ||
1330 | .modulemode = MODULEMODE_SWCTRL, | ||
1331 | }, | ||
1332 | }, | ||
1333 | }; | ||
1334 | |||
1335 | /* pcie2 phy */ | ||
1336 | static struct omap_hwmod dra7xx_pcie2_phy_hwmod = { | ||
1337 | .name = "pcie2-phy", | ||
1338 | .class = &dra7xx_pcie_phy_hwmod_class, | ||
1339 | .clkdm_name = "l3init_clkdm", | ||
1340 | .main_clk = "l4_root_clk_div", | ||
1341 | .prcm = { | ||
1342 | .omap4 = { | ||
1343 | .clkctrl_offs = DRA7XX_CM_L3INIT_PCIESS2_CLKCTRL_OFFSET, | ||
1344 | .context_offs = DRA7XX_RM_L3INIT_PCIESS2_CONTEXT_OFFSET, | ||
1345 | .modulemode = MODULEMODE_SWCTRL, | ||
1346 | }, | ||
1347 | }, | ||
1348 | }; | ||
1349 | |||
1209 | /* | 1350 | /* |
1210 | * 'qspi' class | 1351 | * 'qspi' class |
1211 | * | 1352 | * |
@@ -1240,6 +1381,38 @@ static struct omap_hwmod dra7xx_qspi_hwmod = { | |||
1240 | }; | 1381 | }; |
1241 | 1382 | ||
1242 | /* | 1383 | /* |
1384 | * 'rtcss' class | ||
1385 | * | ||
1386 | */ | ||
1387 | static struct omap_hwmod_class_sysconfig dra7xx_rtcss_sysc = { | ||
1388 | .sysc_offs = 0x0078, | ||
1389 | .sysc_flags = SYSC_HAS_SIDLEMODE, | ||
1390 | .idlemodes = (SIDLE_FORCE | SIDLE_NO | SIDLE_SMART | | ||
1391 | SIDLE_SMART_WKUP), | ||
1392 | .sysc_fields = &omap_hwmod_sysc_type3, | ||
1393 | }; | ||
1394 | |||
1395 | static struct omap_hwmod_class dra7xx_rtcss_hwmod_class = { | ||
1396 | .name = "rtcss", | ||
1397 | .sysc = &dra7xx_rtcss_sysc, | ||
1398 | }; | ||
1399 | |||
1400 | /* rtcss */ | ||
1401 | static struct omap_hwmod dra7xx_rtcss_hwmod = { | ||
1402 | .name = "rtcss", | ||
1403 | .class = &dra7xx_rtcss_hwmod_class, | ||
1404 | .clkdm_name = "rtc_clkdm", | ||
1405 | .main_clk = "sys_32k_ck", | ||
1406 | .prcm = { | ||
1407 | .omap4 = { | ||
1408 | .clkctrl_offs = DRA7XX_CM_RTC_RTCSS_CLKCTRL_OFFSET, | ||
1409 | .context_offs = DRA7XX_RM_RTC_RTCSS_CONTEXT_OFFSET, | ||
1410 | .modulemode = MODULEMODE_SWCTRL, | ||
1411 | }, | ||
1412 | }, | ||
1413 | }; | ||
1414 | |||
1415 | /* | ||
1243 | * 'sata' class | 1416 | * 'sata' class |
1244 | * | 1417 | * |
1245 | */ | 1418 | */ |
@@ -1990,6 +2163,19 @@ static struct omap_hwmod_ocp_if dra7xx_l4_wkup__ctrl_module_wkup = { | |||
1990 | .user = OCP_USER_MPU | OCP_USER_SDMA, | 2163 | .user = OCP_USER_MPU | OCP_USER_SDMA, |
1991 | }; | 2164 | }; |
1992 | 2165 | ||
2166 | static struct omap_hwmod_ocp_if dra7xx_l4_per2__cpgmac0 = { | ||
2167 | .master = &dra7xx_l4_per2_hwmod, | ||
2168 | .slave = &dra7xx_gmac_hwmod, | ||
2169 | .clk = "dpll_gmac_ck", | ||
2170 | .user = OCP_USER_MPU, | ||
2171 | }; | ||
2172 | |||
2173 | static struct omap_hwmod_ocp_if dra7xx_gmac__mdio = { | ||
2174 | .master = &dra7xx_gmac_hwmod, | ||
2175 | .slave = &dra7xx_mdio_hwmod, | ||
2176 | .user = OCP_USER_MPU, | ||
2177 | }; | ||
2178 | |||
1993 | /* l4_wkup -> dcan1 */ | 2179 | /* l4_wkup -> dcan1 */ |
1994 | static struct omap_hwmod_ocp_if dra7xx_l4_wkup__dcan1 = { | 2180 | static struct omap_hwmod_ocp_if dra7xx_l4_wkup__dcan1 = { |
1995 | .master = &dra7xx_l4_wkup_hwmod, | 2181 | .master = &dra7xx_l4_wkup_hwmod, |
@@ -2317,6 +2503,62 @@ static struct omap_hwmod_ocp_if dra7xx_l4_cfg__ocp2scp1 = { | |||
2317 | .user = OCP_USER_MPU | OCP_USER_SDMA, | 2503 | .user = OCP_USER_MPU | OCP_USER_SDMA, |
2318 | }; | 2504 | }; |
2319 | 2505 | ||
2506 | /* l4_cfg -> ocp2scp3 */ | ||
2507 | static struct omap_hwmod_ocp_if dra7xx_l4_cfg__ocp2scp3 = { | ||
2508 | .master = &dra7xx_l4_cfg_hwmod, | ||
2509 | .slave = &dra7xx_ocp2scp3_hwmod, | ||
2510 | .clk = "l4_root_clk_div", | ||
2511 | .user = OCP_USER_MPU | OCP_USER_SDMA, | ||
2512 | }; | ||
2513 | |||
2514 | /* l3_main_1 -> pcie1 */ | ||
2515 | static struct omap_hwmod_ocp_if dra7xx_l3_main_1__pcie1 = { | ||
2516 | .master = &dra7xx_l3_main_1_hwmod, | ||
2517 | .slave = &dra7xx_pcie1_hwmod, | ||
2518 | .clk = "l3_iclk_div", | ||
2519 | .user = OCP_USER_MPU | OCP_USER_SDMA, | ||
2520 | }; | ||
2521 | |||
2522 | /* l4_cfg -> pcie1 */ | ||
2523 | static struct omap_hwmod_ocp_if dra7xx_l4_cfg__pcie1 = { | ||
2524 | .master = &dra7xx_l4_cfg_hwmod, | ||
2525 | .slave = &dra7xx_pcie1_hwmod, | ||
2526 | .clk = "l4_root_clk_div", | ||
2527 | .user = OCP_USER_MPU | OCP_USER_SDMA, | ||
2528 | }; | ||
2529 | |||
2530 | /* l3_main_1 -> pcie2 */ | ||
2531 | static struct omap_hwmod_ocp_if dra7xx_l3_main_1__pcie2 = { | ||
2532 | .master = &dra7xx_l3_main_1_hwmod, | ||
2533 | .slave = &dra7xx_pcie2_hwmod, | ||
2534 | .clk = "l3_iclk_div", | ||
2535 | .user = OCP_USER_MPU | OCP_USER_SDMA, | ||
2536 | }; | ||
2537 | |||
2538 | /* l4_cfg -> pcie2 */ | ||
2539 | static struct omap_hwmod_ocp_if dra7xx_l4_cfg__pcie2 = { | ||
2540 | .master = &dra7xx_l4_cfg_hwmod, | ||
2541 | .slave = &dra7xx_pcie2_hwmod, | ||
2542 | .clk = "l4_root_clk_div", | ||
2543 | .user = OCP_USER_MPU | OCP_USER_SDMA, | ||
2544 | }; | ||
2545 | |||
2546 | /* l4_cfg -> pcie1 phy */ | ||
2547 | static struct omap_hwmod_ocp_if dra7xx_l4_cfg__pcie1_phy = { | ||
2548 | .master = &dra7xx_l4_cfg_hwmod, | ||
2549 | .slave = &dra7xx_pcie1_phy_hwmod, | ||
2550 | .clk = "l4_root_clk_div", | ||
2551 | .user = OCP_USER_MPU | OCP_USER_SDMA, | ||
2552 | }; | ||
2553 | |||
2554 | /* l4_cfg -> pcie2 phy */ | ||
2555 | static struct omap_hwmod_ocp_if dra7xx_l4_cfg__pcie2_phy = { | ||
2556 | .master = &dra7xx_l4_cfg_hwmod, | ||
2557 | .slave = &dra7xx_pcie2_phy_hwmod, | ||
2558 | .clk = "l4_root_clk_div", | ||
2559 | .user = OCP_USER_MPU | OCP_USER_SDMA, | ||
2560 | }; | ||
2561 | |||
2320 | static struct omap_hwmod_addr_space dra7xx_qspi_addrs[] = { | 2562 | static struct omap_hwmod_addr_space dra7xx_qspi_addrs[] = { |
2321 | { | 2563 | { |
2322 | .pa_start = 0x4b300000, | 2564 | .pa_start = 0x4b300000, |
@@ -2335,6 +2577,14 @@ static struct omap_hwmod_ocp_if dra7xx_l3_main_1__qspi = { | |||
2335 | .user = OCP_USER_MPU | OCP_USER_SDMA, | 2577 | .user = OCP_USER_MPU | OCP_USER_SDMA, |
2336 | }; | 2578 | }; |
2337 | 2579 | ||
2580 | /* l4_per3 -> rtcss */ | ||
2581 | static struct omap_hwmod_ocp_if dra7xx_l4_per3__rtcss = { | ||
2582 | .master = &dra7xx_l4_per3_hwmod, | ||
2583 | .slave = &dra7xx_rtcss_hwmod, | ||
2584 | .clk = "l4_root_clk_div", | ||
2585 | .user = OCP_USER_MPU | OCP_USER_SDMA, | ||
2586 | }; | ||
2587 | |||
2338 | static struct omap_hwmod_addr_space dra7xx_sata_addrs[] = { | 2588 | static struct omap_hwmod_addr_space dra7xx_sata_addrs[] = { |
2339 | { | 2589 | { |
2340 | .name = "sysc", | 2590 | .name = "sysc", |
@@ -2633,6 +2883,8 @@ static struct omap_hwmod_ocp_if *dra7xx_hwmod_ocp_ifs[] __initdata = { | |||
2633 | &dra7xx_l4_wkup__ctrl_module_wkup, | 2883 | &dra7xx_l4_wkup__ctrl_module_wkup, |
2634 | &dra7xx_l4_wkup__dcan1, | 2884 | &dra7xx_l4_wkup__dcan1, |
2635 | &dra7xx_l4_per2__dcan2, | 2885 | &dra7xx_l4_per2__dcan2, |
2886 | &dra7xx_l4_per2__cpgmac0, | ||
2887 | &dra7xx_gmac__mdio, | ||
2636 | &dra7xx_l4_cfg__dma_system, | 2888 | &dra7xx_l4_cfg__dma_system, |
2637 | &dra7xx_l3_main_1__dss, | 2889 | &dra7xx_l3_main_1__dss, |
2638 | &dra7xx_l3_main_1__dispc, | 2890 | &dra7xx_l3_main_1__dispc, |
@@ -2663,7 +2915,15 @@ static struct omap_hwmod_ocp_if *dra7xx_hwmod_ocp_ifs[] __initdata = { | |||
2663 | &dra7xx_l4_per1__mmc4, | 2915 | &dra7xx_l4_per1__mmc4, |
2664 | &dra7xx_l4_cfg__mpu, | 2916 | &dra7xx_l4_cfg__mpu, |
2665 | &dra7xx_l4_cfg__ocp2scp1, | 2917 | &dra7xx_l4_cfg__ocp2scp1, |
2918 | &dra7xx_l4_cfg__ocp2scp3, | ||
2919 | &dra7xx_l3_main_1__pcie1, | ||
2920 | &dra7xx_l4_cfg__pcie1, | ||
2921 | &dra7xx_l3_main_1__pcie2, | ||
2922 | &dra7xx_l4_cfg__pcie2, | ||
2923 | &dra7xx_l4_cfg__pcie1_phy, | ||
2924 | &dra7xx_l4_cfg__pcie2_phy, | ||
2666 | &dra7xx_l3_main_1__qspi, | 2925 | &dra7xx_l3_main_1__qspi, |
2926 | &dra7xx_l4_per3__rtcss, | ||
2667 | &dra7xx_l4_cfg__sata, | 2927 | &dra7xx_l4_cfg__sata, |
2668 | &dra7xx_l4_cfg__smartreflex_core, | 2928 | &dra7xx_l4_cfg__smartreflex_core, |
2669 | &dra7xx_l4_cfg__smartreflex_mpu, | 2929 | &dra7xx_l4_cfg__smartreflex_mpu, |