aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTony Lindgren <tony@atomide.com>2017-10-10 17:27:26 -0400
committerTony Lindgren <tony@atomide.com>2017-10-10 17:27:26 -0400
commitc2b84a9bb3414cabaa039b8860a694464a0bad06 (patch)
tree947bf0d74636dc0532d254c527c918271f8b6e68
parentfe97874a41bf911350bae6bda7fc044d12c76a4a (diff)
ARM: OMAP2+: Drop omap_hwmod_dma_info
We have all of mach-omap2 booting in device tree only mode now, and this data is populated from device tree. Note that once we have removed support for the omap legacy DMA, we can also drop struct omap_dma_dev_attr. Cc: Lokesh Vutla <lokeshvutla@ti.com> Cc: Paul Walmsley <paul@pwsan.com> Cc: Tero Kristo <t-kristo@ti.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
-rw-r--r--arch/arm/mach-omap2/omap_device.c155
-rw-r--r--arch/arm/mach-omap2/omap_hwmod.c119
-rw-r--r--arch/arm/mach-omap2/omap_hwmod.h17
-rw-r--r--arch/arm/mach-omap2/omap_hwmod_2xxx_ipblock_data.c6
-rw-r--r--arch/arm/mach-omap2/omap_hwmod_3xxx_data.c8
-rw-r--r--arch/arm/mach-omap2/omap_hwmod_44xx_data.c108
-rw-r--r--arch/arm/mach-omap2/omap_hwmod_7xx_data.c6
-rw-r--r--arch/arm/mach-omap2/omap_hwmod_common_data.h14
8 files changed, 4 insertions, 429 deletions
diff --git a/arch/arm/mach-omap2/omap_device.c b/arch/arm/mach-omap2/omap_device.c
index 50f81b2d22b7..713fc6b4b894 100644
--- a/arch/arm/mach-omap2/omap_device.c
+++ b/arch/arm/mach-omap2/omap_device.c
@@ -311,88 +311,6 @@ int omap_device_get_context_loss_count(struct platform_device *pdev)
311} 311}
312 312
313/** 313/**
314 * omap_device_count_resources - count number of struct resource entries needed
315 * @od: struct omap_device *
316 * @flags: Type of resources to include when counting (IRQ/DMA/MEM)
317 *
318 * Count the number of struct resource entries needed for this
319 * omap_device @od. Used by omap_device_build_ss() to determine how
320 * much memory to allocate before calling
321 * omap_device_fill_resources(). Returns the count.
322 */
323static int omap_device_count_resources(struct omap_device *od,
324 unsigned long flags)
325{
326 int c = 0;
327 int i;
328
329 for (i = 0; i < od->hwmods_cnt; i++)
330 c += omap_hwmod_count_resources(od->hwmods[i], flags);
331
332 pr_debug("omap_device: %s: counted %d total resources across %d hwmods\n",
333 od->pdev->name, c, od->hwmods_cnt);
334
335 return c;
336}
337
338/**
339 * omap_device_fill_resources - fill in array of struct resource
340 * @od: struct omap_device *
341 * @res: pointer to an array of struct resource to be filled in
342 *
343 * Populate one or more empty struct resource pointed to by @res with
344 * the resource data for this omap_device @od. Used by
345 * omap_device_build_ss() after calling omap_device_count_resources().
346 * Ideally this function would not be needed at all. If omap_device
347 * replaces platform_device, then we can specify our own
348 * get_resource()/ get_irq()/etc functions that use the underlying
349 * omap_hwmod information. Or if platform_device is extended to use
350 * subarchitecture-specific function pointers, the various
351 * platform_device functions can simply call omap_device internal
352 * functions to get device resources. Hacking around the existing
353 * platform_device code wastes memory. Returns 0.
354 */
355static int omap_device_fill_resources(struct omap_device *od,
356 struct resource *res)
357{
358 int i, r;
359
360 for (i = 0; i < od->hwmods_cnt; i++) {
361 r = omap_hwmod_fill_resources(od->hwmods[i], res);
362 res += r;
363 }
364
365 return 0;
366}
367
368/**
369 * _od_fill_dma_resources - fill in array of struct resource with dma resources
370 * @od: struct omap_device *
371 * @res: pointer to an array of struct resource to be filled in
372 *
373 * Populate one or more empty struct resource pointed to by @res with
374 * the dma resource data for this omap_device @od. Used by
375 * omap_device_alloc() after calling omap_device_count_resources().
376 *
377 * Ideally this function would not be needed at all. If we have
378 * mechanism to get dma resources from DT.
379 *
380 * Returns 0.
381 */
382static int _od_fill_dma_resources(struct omap_device *od,
383 struct resource *res)
384{
385 int i, r;
386
387 for (i = 0; i < od->hwmods_cnt; i++) {
388 r = omap_hwmod_fill_dma_resources(od->hwmods[i], res);
389 res += r;
390 }
391
392 return 0;
393}
394
395/**
396 * omap_device_alloc - allocate an omap_device 314 * omap_device_alloc - allocate an omap_device
397 * @pdev: platform_device that will be included in this omap_device 315 * @pdev: platform_device that will be included in this omap_device
398 * @oh: ptr to the single omap_hwmod that backs this omap_device 316 * @oh: ptr to the single omap_hwmod that backs this omap_device
@@ -409,8 +327,7 @@ struct omap_device *omap_device_alloc(struct platform_device *pdev,
409{ 327{
410 int ret = -ENOMEM; 328 int ret = -ENOMEM;
411 struct omap_device *od; 329 struct omap_device *od;
412 struct resource *res = NULL; 330 int i;
413 int i, res_count;
414 struct omap_hwmod **hwmods; 331 struct omap_hwmod **hwmods;
415 332
416 od = kzalloc(sizeof(struct omap_device), GFP_KERNEL); 333 od = kzalloc(sizeof(struct omap_device), GFP_KERNEL);
@@ -426,74 +343,6 @@ struct omap_device *omap_device_alloc(struct platform_device *pdev,
426 343
427 od->hwmods = hwmods; 344 od->hwmods = hwmods;
428 od->pdev = pdev; 345 od->pdev = pdev;
429
430 /*
431 * Non-DT Boot:
432 * Here, pdev->num_resources = 0, and we should get all the
433 * resources from hwmod.
434 *
435 * DT Boot:
436 * OF framework will construct the resource structure (currently
437 * does for MEM & IRQ resource) and we should respect/use these
438 * resources, killing hwmod dependency.
439 * If pdev->num_resources > 0, we assume that MEM & IRQ resources
440 * have been allocated by OF layer already (through DTB).
441 * As preparation for the future we examine the OF provided resources
442 * to see if we have DMA resources provided already. In this case
443 * there is no need to update the resources for the device, we use the
444 * OF provided ones.
445 *
446 * TODO: Once DMA resource is available from OF layer, we should
447 * kill filling any resources from hwmod.
448 */
449 if (!pdev->num_resources) {
450 /* Count all resources for the device */
451 res_count = omap_device_count_resources(od, IORESOURCE_IRQ |
452 IORESOURCE_DMA |
453 IORESOURCE_MEM);
454 } else {
455 /* Take a look if we already have DMA resource via DT */
456 for (i = 0; i < pdev->num_resources; i++) {
457 struct resource *r = &pdev->resource[i];
458
459 /* We have it, no need to touch the resources */
460 if (r->flags == IORESOURCE_DMA)
461 goto have_everything;
462 }
463 /* Count only DMA resources for the device */
464 res_count = omap_device_count_resources(od, IORESOURCE_DMA);
465 /* The device has no DMA resource, no need for update */
466 if (!res_count)
467 goto have_everything;
468
469 res_count += pdev->num_resources;
470 }
471
472 /* Allocate resources memory to account for new resources */
473 res = kzalloc(sizeof(struct resource) * res_count, GFP_KERNEL);
474 if (!res)
475 goto oda_exit3;
476
477 if (!pdev->num_resources) {
478 dev_dbg(&pdev->dev, "%s: using %d resources from hwmod\n",
479 __func__, res_count);
480 omap_device_fill_resources(od, res);
481 } else {
482 dev_dbg(&pdev->dev,
483 "%s: appending %d DMA resources from hwmod\n",
484 __func__, res_count - pdev->num_resources);
485 memcpy(res, pdev->resource,
486 sizeof(struct resource) * pdev->num_resources);
487 _od_fill_dma_resources(od, &res[pdev->num_resources]);
488 }
489
490 ret = platform_device_add_resources(pdev, res, res_count);
491 kfree(res);
492
493 if (ret)
494 goto oda_exit3;
495
496have_everything:
497 pdev->archdata.od = od; 346 pdev->archdata.od = od;
498 347
499 for (i = 0; i < oh_cnt; i++) { 348 for (i = 0; i < oh_cnt; i++) {
@@ -503,8 +352,6 @@ have_everything:
503 352
504 return od; 353 return od;
505 354
506oda_exit3:
507 kfree(hwmods);
508oda_exit2: 355oda_exit2:
509 kfree(od); 356 kfree(od);
510oda_exit1: 357oda_exit1:
diff --git a/arch/arm/mach-omap2/omap_hwmod.c b/arch/arm/mach-omap2/omap_hwmod.c
index 5a0fbdec339a..29b6c85f6ce8 100644
--- a/arch/arm/mach-omap2/omap_hwmod.c
+++ b/arch/arm/mach-omap2/omap_hwmod.c
@@ -1102,29 +1102,6 @@ static int _omap4_wait_target_disable(struct omap_hwmod *oh)
1102} 1102}
1103 1103
1104/** 1104/**
1105 * _count_sdma_reqs - count the number of SDMA request lines associated with @oh
1106 * @oh: struct omap_hwmod *oh
1107 *
1108 * Count and return the number of SDMA request lines associated with
1109 * the hwmod @oh. Used to allocate struct resource data. Returns 0
1110 * if @oh is NULL.
1111 */
1112static int _count_sdma_reqs(struct omap_hwmod *oh)
1113{
1114 struct omap_hwmod_dma_info *ohdi;
1115 int i = 0;
1116
1117 if (!oh || !oh->sdma_reqs)
1118 return 0;
1119
1120 do {
1121 ohdi = &oh->sdma_reqs[i++];
1122 } while (ohdi->dma_req != -1);
1123
1124 return i-1;
1125}
1126
1127/**
1128 * _count_ocp_if_addr_spaces - count the number of address space entries for @oh 1105 * _count_ocp_if_addr_spaces - count the number of address space entries for @oh
1129 * @oh: struct omap_hwmod *oh 1106 * @oh: struct omap_hwmod *oh
1130 * 1107 *
@@ -1148,49 +1125,6 @@ static int _count_ocp_if_addr_spaces(struct omap_hwmod_ocp_if *os)
1148} 1125}
1149 1126
1150/** 1127/**
1151 * _get_sdma_req_by_name - fetch SDMA request line ID by name
1152 * @oh: struct omap_hwmod * to operate on
1153 * @name: pointer to the name of the SDMA request line to fetch (optional)
1154 * @dma: pointer to an unsigned int to store the request line ID to
1155 *
1156 * Retrieve an SDMA request line ID named by @name on the IP block
1157 * pointed to by @oh. The ID will be filled into the address pointed
1158 * to by @dma. When @name is non-null, the request line ID associated
1159 * with the named entry will be returned. If @name is null, the first
1160 * matching entry will be returned. Data order is not meaningful in
1161 * hwmod data, so callers are strongly encouraged to use a non-null
1162 * @name whenever possible to avoid unpredictable effects if hwmod
1163 * data is later added that causes data ordering to change. Returns 0
1164 * upon success or a negative error code upon error.
1165 */
1166static int _get_sdma_req_by_name(struct omap_hwmod *oh, const char *name,
1167 unsigned int *dma)
1168{
1169 int i;
1170 bool found = false;
1171
1172 if (!oh->sdma_reqs)
1173 return -ENOENT;
1174
1175 i = 0;
1176 while (oh->sdma_reqs[i].dma_req != -1) {
1177 if (name == oh->sdma_reqs[i].name ||
1178 !strcmp(name, oh->sdma_reqs[i].name)) {
1179 found = true;
1180 break;
1181 }
1182 i++;
1183 }
1184
1185 if (!found)
1186 return -ENOENT;
1187
1188 *dma = oh->sdma_reqs[i].dma_req;
1189
1190 return 0;
1191}
1192
1193/**
1194 * _get_addr_space_by_name - fetch address space start & end by name 1128 * _get_addr_space_by_name - fetch address space start & end by name
1195 * @oh: struct omap_hwmod * to operate on 1129 * @oh: struct omap_hwmod * to operate on
1196 * @name: pointer to the name of the address space to fetch (optional) 1130 * @name: pointer to the name of the address space to fetch (optional)
@@ -3385,9 +3319,6 @@ int omap_hwmod_count_resources(struct omap_hwmod *oh, unsigned long flags)
3385{ 3319{
3386 int ret = 0; 3320 int ret = 0;
3387 3321
3388 if (flags & IORESOURCE_DMA)
3389 ret += _count_sdma_reqs(oh);
3390
3391 if (flags & IORESOURCE_MEM) { 3322 if (flags & IORESOURCE_MEM) {
3392 struct omap_hwmod_ocp_if *os; 3323 struct omap_hwmod_ocp_if *os;
3393 3324
@@ -3411,19 +3342,10 @@ int omap_hwmod_count_resources(struct omap_hwmod *oh, unsigned long flags)
3411int omap_hwmod_fill_resources(struct omap_hwmod *oh, struct resource *res) 3342int omap_hwmod_fill_resources(struct omap_hwmod *oh, struct resource *res)
3412{ 3343{
3413 struct omap_hwmod_ocp_if *os; 3344 struct omap_hwmod_ocp_if *os;
3414 int i, j, sdma_reqs_cnt, addr_cnt; 3345 int j, addr_cnt;
3415 int r = 0; 3346 int r = 0;
3416 3347
3417 /* For each DMA, memory area, fill in array.*/ 3348 /* For each memory area, fill in array.*/
3418
3419 sdma_reqs_cnt = _count_sdma_reqs(oh);
3420 for (i = 0; i < sdma_reqs_cnt; i++) {
3421 (res + r)->name = (oh->sdma_reqs + i)->name;
3422 (res + r)->start = (oh->sdma_reqs + i)->dma_req;
3423 (res + r)->end = (oh->sdma_reqs + i)->dma_req;
3424 (res + r)->flags = IORESOURCE_DMA;
3425 r++;
3426 }
3427 3349
3428 list_for_each_entry(os, &oh->slave_ports, node) { 3350 list_for_each_entry(os, &oh->slave_ports, node) {
3429 addr_cnt = _count_ocp_if_addr_spaces(os); 3351 addr_cnt = _count_ocp_if_addr_spaces(os);
@@ -3441,33 +3363,6 @@ int omap_hwmod_fill_resources(struct omap_hwmod *oh, struct resource *res)
3441} 3363}
3442 3364
3443/** 3365/**
3444 * omap_hwmod_fill_dma_resources - fill struct resource array with dma data
3445 * @oh: struct omap_hwmod *
3446 * @res: pointer to the array of struct resource to fill
3447 *
3448 * Fill the struct resource array @res with dma resource data from the
3449 * omap_hwmod @oh. Intended to be called by code that registers
3450 * omap_devices. See also omap_hwmod_count_resources(). Returns the
3451 * number of array elements filled.
3452 */
3453int omap_hwmod_fill_dma_resources(struct omap_hwmod *oh, struct resource *res)
3454{
3455 int i, sdma_reqs_cnt;
3456 int r = 0;
3457
3458 sdma_reqs_cnt = _count_sdma_reqs(oh);
3459 for (i = 0; i < sdma_reqs_cnt; i++) {
3460 (res + r)->name = (oh->sdma_reqs + i)->name;
3461 (res + r)->start = (oh->sdma_reqs + i)->dma_req;
3462 (res + r)->end = (oh->sdma_reqs + i)->dma_req;
3463 (res + r)->flags = IORESOURCE_DMA;
3464 r++;
3465 }
3466
3467 return r;
3468}
3469
3470/**
3471 * omap_hwmod_get_resource_byname - fetch IP block integration data by name 3366 * omap_hwmod_get_resource_byname - fetch IP block integration data by name
3472 * @oh: struct omap_hwmod * to operate on 3367 * @oh: struct omap_hwmod * to operate on
3473 * @type: one of the IORESOURCE_* constants from include/linux/ioport.h 3368 * @type: one of the IORESOURCE_* constants from include/linux/ioport.h
@@ -3493,20 +3388,12 @@ int omap_hwmod_get_resource_byname(struct omap_hwmod *oh, unsigned int type,
3493 const char *name, struct resource *rsrc) 3388 const char *name, struct resource *rsrc)
3494{ 3389{
3495 int r; 3390 int r;
3496 unsigned int dma;
3497 u32 pa_start, pa_end; 3391 u32 pa_start, pa_end;
3498 3392
3499 if (!oh || !rsrc) 3393 if (!oh || !rsrc)
3500 return -EINVAL; 3394 return -EINVAL;
3501 3395
3502 if (type == IORESOURCE_DMA) { 3396 if (type == IORESOURCE_MEM) {
3503 r = _get_sdma_req_by_name(oh, name, &dma);
3504 if (r)
3505 return r;
3506
3507 rsrc->start = dma;
3508 rsrc->end = dma;
3509 } else if (type == IORESOURCE_MEM) {
3510 r = _get_addr_space_by_name(oh, name, &pa_start, &pa_end); 3397 r = _get_addr_space_by_name(oh, name, &pa_start, &pa_end);
3511 if (r) 3398 if (r)
3512 return r; 3399 return r;
diff --git a/arch/arm/mach-omap2/omap_hwmod.h b/arch/arm/mach-omap2/omap_hwmod.h
index b655bb3ffc56..1319babeaebc 100644
--- a/arch/arm/mach-omap2/omap_hwmod.h
+++ b/arch/arm/mach-omap2/omap_hwmod.h
@@ -150,20 +150,6 @@ extern struct omap_hwmod_sysc_fields omap_hwmod_sysc_type3;
150#endif 150#endif
151 151
152/** 152/**
153 * struct omap_hwmod_dma_info - DMA channels used by the hwmod
154 * @name: name of the DMA channel (module local name)
155 * @dma_req: DMA request ID (should be non-negative except -1 = terminator)
156 *
157 * @name should be something short, e.g., "tx" or "rx". It is for use
158 * by platform_get_resource_byname(). It is defined locally to the
159 * hwmod.
160 */
161struct omap_hwmod_dma_info {
162 const char *name;
163 s16 dma_req;
164};
165
166/**
167 * struct omap_hwmod_rst_info - IPs reset lines use by hwmod 153 * struct omap_hwmod_rst_info - IPs reset lines use by hwmod
168 * @name: name of the reset line (module local name) 154 * @name: name of the reset line (module local name)
169 * @rst_shift: Offset of the reset bit 155 * @rst_shift: Offset of the reset bit
@@ -598,7 +584,6 @@ struct omap_hwmod_class {
598 * @name: name of the hwmod 584 * @name: name of the hwmod
599 * @class: struct omap_hwmod_class * to the class of this hwmod 585 * @class: struct omap_hwmod_class * to the class of this hwmod
600 * @od: struct omap_device currently associated with this hwmod (internal use) 586 * @od: struct omap_device currently associated with this hwmod (internal use)
601 * @sdma_reqs: ptr to an array of System DMA request IDs
602 * @prcm: PRCM data pertaining to this hwmod 587 * @prcm: PRCM data pertaining to this hwmod
603 * @main_clk: main clock: OMAP clock name 588 * @main_clk: main clock: OMAP clock name
604 * @_clk: pointer to the main struct clk (filled in at runtime) 589 * @_clk: pointer to the main struct clk (filled in at runtime)
@@ -641,7 +626,6 @@ struct omap_hwmod {
641 const char *name; 626 const char *name;
642 struct omap_hwmod_class *class; 627 struct omap_hwmod_class *class;
643 struct omap_device *od; 628 struct omap_device *od;
644 struct omap_hwmod_dma_info *sdma_reqs;
645 struct omap_hwmod_rst_info *rst_lines; 629 struct omap_hwmod_rst_info *rst_lines;
646 union { 630 union {
647 struct omap_hwmod_omap2_prcm omap2; 631 struct omap_hwmod_omap2_prcm omap2;
@@ -697,7 +681,6 @@ int omap_hwmod_softreset(struct omap_hwmod *oh);
697 681
698int omap_hwmod_count_resources(struct omap_hwmod *oh, unsigned long flags); 682int omap_hwmod_count_resources(struct omap_hwmod *oh, unsigned long flags);
699int omap_hwmod_fill_resources(struct omap_hwmod *oh, struct resource *res); 683int omap_hwmod_fill_resources(struct omap_hwmod *oh, struct resource *res);
700int omap_hwmod_fill_dma_resources(struct omap_hwmod *oh, struct resource *res);
701int omap_hwmod_get_resource_byname(struct omap_hwmod *oh, unsigned int type, 684int omap_hwmod_get_resource_byname(struct omap_hwmod *oh, unsigned int type,
702 const char *name, struct resource *res); 685 const char *name, struct resource *res);
703 686
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 d190f1ad97b7..beec4cd617b1 100644
--- a/arch/arm/mach-omap2/omap_hwmod_2xxx_ipblock_data.c
+++ b/arch/arm/mach-omap2/omap_hwmod_2xxx_ipblock_data.c
@@ -20,11 +20,6 @@
20#include "prm-regbits-24xx.h" 20#include "prm-regbits-24xx.h"
21#include "wd_timer.h" 21#include "wd_timer.h"
22 22
23static struct omap_hwmod_dma_info omap2xxx_dss_sdma_chs[] = {
24 { .name = "dispc", .dma_req = 5 },
25 { .dma_req = -1, },
26};
27
28/* 23/*
29 * 'dispc' class 24 * 'dispc' class
30 * display controller 25 * display controller
@@ -550,7 +545,6 @@ struct omap_hwmod omap2xxx_dss_core_hwmod = {
550 .name = "dss_core", 545 .name = "dss_core",
551 .class = &omap2_dss_hwmod_class, 546 .class = &omap2_dss_hwmod_class,
552 .main_clk = "dss1_fck", /* instead of dss_fck */ 547 .main_clk = "dss1_fck", /* instead of dss_fck */
553 .sdma_reqs = omap2xxx_dss_sdma_chs,
554 .prcm = { 548 .prcm = {
555 .omap2 = { 549 .omap2 = {
556 .prcm_reg_id = 1, 550 .prcm_reg_id = 1,
diff --git a/arch/arm/mach-omap2/omap_hwmod_3xxx_data.c b/arch/arm/mach-omap2/omap_hwmod_3xxx_data.c
index a331a4e4e3ca..6b3782a857a0 100644
--- a/arch/arm/mach-omap2/omap_hwmod_3xxx_data.c
+++ b/arch/arm/mach-omap2/omap_hwmod_3xxx_data.c
@@ -565,12 +565,6 @@ static struct omap_hwmod_class i2c_class = {
565 .reset = &omap_i2c_reset, 565 .reset = &omap_i2c_reset,
566}; 566};
567 567
568static struct omap_hwmod_dma_info omap3xxx_dss_sdma_chs[] = {
569 { .name = "dispc", .dma_req = 5 },
570 { .name = "dsi1", .dma_req = 74 },
571 { .dma_req = -1, },
572};
573
574/* dss */ 568/* dss */
575static struct omap_hwmod_opt_clk dss_opt_clks[] = { 569static struct omap_hwmod_opt_clk dss_opt_clks[] = {
576 /* 570 /*
@@ -587,7 +581,6 @@ static struct omap_hwmod omap3430es1_dss_core_hwmod = {
587 .name = "dss_core", 581 .name = "dss_core",
588 .class = &omap2_dss_hwmod_class, 582 .class = &omap2_dss_hwmod_class,
589 .main_clk = "dss1_alwon_fck", /* instead of dss_fck */ 583 .main_clk = "dss1_alwon_fck", /* instead of dss_fck */
590 .sdma_reqs = omap3xxx_dss_sdma_chs,
591 .prcm = { 584 .prcm = {
592 .omap2 = { 585 .omap2 = {
593 .prcm_reg_id = 1, 586 .prcm_reg_id = 1,
@@ -607,7 +600,6 @@ static struct omap_hwmod omap3xxx_dss_core_hwmod = {
607 .flags = HWMOD_CONTROL_OPT_CLKS_IN_RESET, 600 .flags = HWMOD_CONTROL_OPT_CLKS_IN_RESET,
608 .class = &omap2_dss_hwmod_class, 601 .class = &omap2_dss_hwmod_class,
609 .main_clk = "dss1_alwon_fck", /* instead of dss_fck */ 602 .main_clk = "dss1_alwon_fck", /* instead of dss_fck */
610 .sdma_reqs = omap3xxx_dss_sdma_chs,
611 .prcm = { 603 .prcm = {
612 .omap2 = { 604 .omap2 = {
613 .prcm_reg_id = 1, 605 .prcm_reg_id = 1,
diff --git a/arch/arm/mach-omap2/omap_hwmod_44xx_data.c b/arch/arm/mach-omap2/omap_hwmod_44xx_data.c
index 22d4799c9ce0..20732d93d993 100644
--- a/arch/arm/mach-omap2/omap_hwmod_44xx_data.c
+++ b/arch/arm/mach-omap2/omap_hwmod_44xx_data.c
@@ -610,11 +610,6 @@ static struct omap_hwmod_class omap44xx_dispc_hwmod_class = {
610}; 610};
611 611
612/* dss_dispc */ 612/* dss_dispc */
613static struct omap_hwmod_dma_info omap44xx_dss_dispc_sdma_reqs[] = {
614 { .dma_req = 5 + OMAP44XX_DMA_REQ_START },
615 { .dma_req = -1 }
616};
617
618static struct omap_dss_dispc_dev_attr omap44xx_dss_dispc_dev_attr = { 613static struct omap_dss_dispc_dev_attr omap44xx_dss_dispc_dev_attr = {
619 .manager_count = 3, 614 .manager_count = 3,
620 .has_framedonetv_irq = 1 615 .has_framedonetv_irq = 1
@@ -624,7 +619,6 @@ static struct omap_hwmod omap44xx_dss_dispc_hwmod = {
624 .name = "dss_dispc", 619 .name = "dss_dispc",
625 .class = &omap44xx_dispc_hwmod_class, 620 .class = &omap44xx_dispc_hwmod_class,
626 .clkdm_name = "l3_dss_clkdm", 621 .clkdm_name = "l3_dss_clkdm",
627 .sdma_reqs = omap44xx_dss_dispc_sdma_reqs,
628 .main_clk = "dss_dss_clk", 622 .main_clk = "dss_dss_clk",
629 .prcm = { 623 .prcm = {
630 .omap4 = { 624 .omap4 = {
@@ -658,11 +652,6 @@ static struct omap_hwmod_class omap44xx_dsi_hwmod_class = {
658}; 652};
659 653
660/* dss_dsi1 */ 654/* dss_dsi1 */
661static struct omap_hwmod_dma_info omap44xx_dss_dsi1_sdma_reqs[] = {
662 { .dma_req = 74 + OMAP44XX_DMA_REQ_START },
663 { .dma_req = -1 }
664};
665
666static struct omap_hwmod_opt_clk dss_dsi1_opt_clks[] = { 655static struct omap_hwmod_opt_clk dss_dsi1_opt_clks[] = {
667 { .role = "sys_clk", .clk = "dss_sys_clk" }, 656 { .role = "sys_clk", .clk = "dss_sys_clk" },
668}; 657};
@@ -671,7 +660,6 @@ static struct omap_hwmod omap44xx_dss_dsi1_hwmod = {
671 .name = "dss_dsi1", 660 .name = "dss_dsi1",
672 .class = &omap44xx_dsi_hwmod_class, 661 .class = &omap44xx_dsi_hwmod_class,
673 .clkdm_name = "l3_dss_clkdm", 662 .clkdm_name = "l3_dss_clkdm",
674 .sdma_reqs = omap44xx_dss_dsi1_sdma_reqs,
675 .main_clk = "dss_dss_clk", 663 .main_clk = "dss_dss_clk",
676 .prcm = { 664 .prcm = {
677 .omap4 = { 665 .omap4 = {
@@ -685,11 +673,6 @@ static struct omap_hwmod omap44xx_dss_dsi1_hwmod = {
685}; 673};
686 674
687/* dss_dsi2 */ 675/* dss_dsi2 */
688static struct omap_hwmod_dma_info omap44xx_dss_dsi2_sdma_reqs[] = {
689 { .dma_req = 83 + OMAP44XX_DMA_REQ_START },
690 { .dma_req = -1 }
691};
692
693static struct omap_hwmod_opt_clk dss_dsi2_opt_clks[] = { 676static struct omap_hwmod_opt_clk dss_dsi2_opt_clks[] = {
694 { .role = "sys_clk", .clk = "dss_sys_clk" }, 677 { .role = "sys_clk", .clk = "dss_sys_clk" },
695}; 678};
@@ -698,7 +681,6 @@ static struct omap_hwmod omap44xx_dss_dsi2_hwmod = {
698 .name = "dss_dsi2", 681 .name = "dss_dsi2",
699 .class = &omap44xx_dsi_hwmod_class, 682 .class = &omap44xx_dsi_hwmod_class,
700 .clkdm_name = "l3_dss_clkdm", 683 .clkdm_name = "l3_dss_clkdm",
701 .sdma_reqs = omap44xx_dss_dsi2_sdma_reqs,
702 .main_clk = "dss_dss_clk", 684 .main_clk = "dss_dss_clk",
703 .prcm = { 685 .prcm = {
704 .omap4 = { 686 .omap4 = {
@@ -732,11 +714,6 @@ static struct omap_hwmod_class omap44xx_hdmi_hwmod_class = {
732}; 714};
733 715
734/* dss_hdmi */ 716/* dss_hdmi */
735static struct omap_hwmod_dma_info omap44xx_dss_hdmi_sdma_reqs[] = {
736 { .dma_req = 75 + OMAP44XX_DMA_REQ_START },
737 { .dma_req = -1 }
738};
739
740static struct omap_hwmod_opt_clk dss_hdmi_opt_clks[] = { 717static struct omap_hwmod_opt_clk dss_hdmi_opt_clks[] = {
741 { .role = "sys_clk", .clk = "dss_sys_clk" }, 718 { .role = "sys_clk", .clk = "dss_sys_clk" },
742 { .role = "hdmi_clk", .clk = "dss_48mhz_clk" }, 719 { .role = "hdmi_clk", .clk = "dss_48mhz_clk" },
@@ -751,7 +728,6 @@ static struct omap_hwmod omap44xx_dss_hdmi_hwmod = {
751 * set idle mode by software. 728 * set idle mode by software.
752 */ 729 */
753 .flags = HWMOD_SWSUP_SIDLE | HWMOD_OPT_CLKS_NEEDED, 730 .flags = HWMOD_SWSUP_SIDLE | HWMOD_OPT_CLKS_NEEDED,
754 .sdma_reqs = omap44xx_dss_hdmi_sdma_reqs,
755 .main_clk = "dss_48mhz_clk", 731 .main_clk = "dss_48mhz_clk",
756 .prcm = { 732 .prcm = {
757 .omap4 = { 733 .omap4 = {
@@ -785,11 +761,6 @@ static struct omap_hwmod_class omap44xx_rfbi_hwmod_class = {
785}; 761};
786 762
787/* dss_rfbi */ 763/* dss_rfbi */
788static struct omap_hwmod_dma_info omap44xx_dss_rfbi_sdma_reqs[] = {
789 { .dma_req = 13 + OMAP44XX_DMA_REQ_START },
790 { .dma_req = -1 }
791};
792
793static struct omap_hwmod_opt_clk dss_rfbi_opt_clks[] = { 764static struct omap_hwmod_opt_clk dss_rfbi_opt_clks[] = {
794 { .role = "ick", .clk = "l3_div_ck" }, 765 { .role = "ick", .clk = "l3_div_ck" },
795}; 766};
@@ -798,7 +769,6 @@ static struct omap_hwmod omap44xx_dss_rfbi_hwmod = {
798 .name = "dss_rfbi", 769 .name = "dss_rfbi",
799 .class = &omap44xx_rfbi_hwmod_class, 770 .class = &omap44xx_rfbi_hwmod_class,
800 .clkdm_name = "l3_dss_clkdm", 771 .clkdm_name = "l3_dss_clkdm",
801 .sdma_reqs = omap44xx_dss_rfbi_sdma_reqs,
802 .main_clk = "dss_dss_clk", 772 .main_clk = "dss_dss_clk",
803 .prcm = { 773 .prcm = {
804 .omap4 = { 774 .omap4 = {
@@ -1898,19 +1868,6 @@ static struct omap_hwmod_class omap44xx_mcspi_hwmod_class = {
1898}; 1868};
1899 1869
1900/* mcspi1 */ 1870/* mcspi1 */
1901static struct omap_hwmod_dma_info omap44xx_mcspi1_sdma_reqs[] = {
1902 { .name = "tx0", .dma_req = 34 + OMAP44XX_DMA_REQ_START },
1903 { .name = "rx0", .dma_req = 35 + OMAP44XX_DMA_REQ_START },
1904 { .name = "tx1", .dma_req = 36 + OMAP44XX_DMA_REQ_START },
1905 { .name = "rx1", .dma_req = 37 + OMAP44XX_DMA_REQ_START },
1906 { .name = "tx2", .dma_req = 38 + OMAP44XX_DMA_REQ_START },
1907 { .name = "rx2", .dma_req = 39 + OMAP44XX_DMA_REQ_START },
1908 { .name = "tx3", .dma_req = 40 + OMAP44XX_DMA_REQ_START },
1909 { .name = "rx3", .dma_req = 41 + OMAP44XX_DMA_REQ_START },
1910 { .dma_req = -1 }
1911};
1912
1913/* mcspi1 dev_attr */
1914static struct omap2_mcspi_dev_attr mcspi1_dev_attr = { 1871static struct omap2_mcspi_dev_attr mcspi1_dev_attr = {
1915 .num_chipselect = 4, 1872 .num_chipselect = 4,
1916}; 1873};
@@ -1919,7 +1876,6 @@ static struct omap_hwmod omap44xx_mcspi1_hwmod = {
1919 .name = "mcspi1", 1876 .name = "mcspi1",
1920 .class = &omap44xx_mcspi_hwmod_class, 1877 .class = &omap44xx_mcspi_hwmod_class,
1921 .clkdm_name = "l4_per_clkdm", 1878 .clkdm_name = "l4_per_clkdm",
1922 .sdma_reqs = omap44xx_mcspi1_sdma_reqs,
1923 .main_clk = "func_48m_fclk", 1879 .main_clk = "func_48m_fclk",
1924 .prcm = { 1880 .prcm = {
1925 .omap4 = { 1881 .omap4 = {
@@ -1932,15 +1888,6 @@ static struct omap_hwmod omap44xx_mcspi1_hwmod = {
1932}; 1888};
1933 1889
1934/* mcspi2 */ 1890/* mcspi2 */
1935static struct omap_hwmod_dma_info omap44xx_mcspi2_sdma_reqs[] = {
1936 { .name = "tx0", .dma_req = 42 + OMAP44XX_DMA_REQ_START },
1937 { .name = "rx0", .dma_req = 43 + OMAP44XX_DMA_REQ_START },
1938 { .name = "tx1", .dma_req = 44 + OMAP44XX_DMA_REQ_START },
1939 { .name = "rx1", .dma_req = 45 + OMAP44XX_DMA_REQ_START },
1940 { .dma_req = -1 }
1941};
1942
1943/* mcspi2 dev_attr */
1944static struct omap2_mcspi_dev_attr mcspi2_dev_attr = { 1891static struct omap2_mcspi_dev_attr mcspi2_dev_attr = {
1945 .num_chipselect = 2, 1892 .num_chipselect = 2,
1946}; 1893};
@@ -1949,7 +1896,6 @@ static struct omap_hwmod omap44xx_mcspi2_hwmod = {
1949 .name = "mcspi2", 1896 .name = "mcspi2",
1950 .class = &omap44xx_mcspi_hwmod_class, 1897 .class = &omap44xx_mcspi_hwmod_class,
1951 .clkdm_name = "l4_per_clkdm", 1898 .clkdm_name = "l4_per_clkdm",
1952 .sdma_reqs = omap44xx_mcspi2_sdma_reqs,
1953 .main_clk = "func_48m_fclk", 1899 .main_clk = "func_48m_fclk",
1954 .prcm = { 1900 .prcm = {
1955 .omap4 = { 1901 .omap4 = {
@@ -1962,15 +1908,6 @@ static struct omap_hwmod omap44xx_mcspi2_hwmod = {
1962}; 1908};
1963 1909
1964/* mcspi3 */ 1910/* mcspi3 */
1965static struct omap_hwmod_dma_info omap44xx_mcspi3_sdma_reqs[] = {
1966 { .name = "tx0", .dma_req = 14 + OMAP44XX_DMA_REQ_START },
1967 { .name = "rx0", .dma_req = 15 + OMAP44XX_DMA_REQ_START },
1968 { .name = "tx1", .dma_req = 22 + OMAP44XX_DMA_REQ_START },
1969 { .name = "rx1", .dma_req = 23 + OMAP44XX_DMA_REQ_START },
1970 { .dma_req = -1 }
1971};
1972
1973/* mcspi3 dev_attr */
1974static struct omap2_mcspi_dev_attr mcspi3_dev_attr = { 1911static struct omap2_mcspi_dev_attr mcspi3_dev_attr = {
1975 .num_chipselect = 2, 1912 .num_chipselect = 2,
1976}; 1913};
@@ -1979,7 +1916,6 @@ static struct omap_hwmod omap44xx_mcspi3_hwmod = {
1979 .name = "mcspi3", 1916 .name = "mcspi3",
1980 .class = &omap44xx_mcspi_hwmod_class, 1917 .class = &omap44xx_mcspi_hwmod_class,
1981 .clkdm_name = "l4_per_clkdm", 1918 .clkdm_name = "l4_per_clkdm",
1982 .sdma_reqs = omap44xx_mcspi3_sdma_reqs,
1983 .main_clk = "func_48m_fclk", 1919 .main_clk = "func_48m_fclk",
1984 .prcm = { 1920 .prcm = {
1985 .omap4 = { 1921 .omap4 = {
@@ -1992,13 +1928,6 @@ static struct omap_hwmod omap44xx_mcspi3_hwmod = {
1992}; 1928};
1993 1929
1994/* mcspi4 */ 1930/* mcspi4 */
1995static struct omap_hwmod_dma_info omap44xx_mcspi4_sdma_reqs[] = {
1996 { .name = "tx0", .dma_req = 69 + OMAP44XX_DMA_REQ_START },
1997 { .name = "rx0", .dma_req = 70 + OMAP44XX_DMA_REQ_START },
1998 { .dma_req = -1 }
1999};
2000
2001/* mcspi4 dev_attr */
2002static struct omap2_mcspi_dev_attr mcspi4_dev_attr = { 1931static struct omap2_mcspi_dev_attr mcspi4_dev_attr = {
2003 .num_chipselect = 1, 1932 .num_chipselect = 1,
2004}; 1933};
@@ -2007,7 +1936,6 @@ static struct omap_hwmod omap44xx_mcspi4_hwmod = {
2007 .name = "mcspi4", 1936 .name = "mcspi4",
2008 .class = &omap44xx_mcspi_hwmod_class, 1937 .class = &omap44xx_mcspi_hwmod_class,
2009 .clkdm_name = "l4_per_clkdm", 1938 .clkdm_name = "l4_per_clkdm",
2010 .sdma_reqs = omap44xx_mcspi4_sdma_reqs,
2011 .main_clk = "func_48m_fclk", 1939 .main_clk = "func_48m_fclk",
2012 .prcm = { 1940 .prcm = {
2013 .omap4 = { 1941 .omap4 = {
@@ -2042,13 +1970,6 @@ static struct omap_hwmod_class omap44xx_mmc_hwmod_class = {
2042}; 1970};
2043 1971
2044/* mmc1 */ 1972/* mmc1 */
2045static struct omap_hwmod_dma_info omap44xx_mmc1_sdma_reqs[] = {
2046 { .name = "tx", .dma_req = 60 + OMAP44XX_DMA_REQ_START },
2047 { .name = "rx", .dma_req = 61 + OMAP44XX_DMA_REQ_START },
2048 { .dma_req = -1 }
2049};
2050
2051/* mmc1 dev_attr */
2052static struct omap_hsmmc_dev_attr mmc1_dev_attr = { 1973static struct omap_hsmmc_dev_attr mmc1_dev_attr = {
2053 .flags = OMAP_HSMMC_SUPPORTS_DUAL_VOLT, 1974 .flags = OMAP_HSMMC_SUPPORTS_DUAL_VOLT,
2054}; 1975};
@@ -2057,7 +1978,6 @@ static struct omap_hwmod omap44xx_mmc1_hwmod = {
2057 .name = "mmc1", 1978 .name = "mmc1",
2058 .class = &omap44xx_mmc_hwmod_class, 1979 .class = &omap44xx_mmc_hwmod_class,
2059 .clkdm_name = "l3_init_clkdm", 1980 .clkdm_name = "l3_init_clkdm",
2060 .sdma_reqs = omap44xx_mmc1_sdma_reqs,
2061 .main_clk = "hsmmc1_fclk", 1981 .main_clk = "hsmmc1_fclk",
2062 .prcm = { 1982 .prcm = {
2063 .omap4 = { 1983 .omap4 = {
@@ -2070,17 +1990,10 @@ static struct omap_hwmod omap44xx_mmc1_hwmod = {
2070}; 1990};
2071 1991
2072/* mmc2 */ 1992/* mmc2 */
2073static struct omap_hwmod_dma_info omap44xx_mmc2_sdma_reqs[] = {
2074 { .name = "tx", .dma_req = 46 + OMAP44XX_DMA_REQ_START },
2075 { .name = "rx", .dma_req = 47 + OMAP44XX_DMA_REQ_START },
2076 { .dma_req = -1 }
2077};
2078
2079static struct omap_hwmod omap44xx_mmc2_hwmod = { 1993static struct omap_hwmod omap44xx_mmc2_hwmod = {
2080 .name = "mmc2", 1994 .name = "mmc2",
2081 .class = &omap44xx_mmc_hwmod_class, 1995 .class = &omap44xx_mmc_hwmod_class,
2082 .clkdm_name = "l3_init_clkdm", 1996 .clkdm_name = "l3_init_clkdm",
2083 .sdma_reqs = omap44xx_mmc2_sdma_reqs,
2084 .main_clk = "hsmmc2_fclk", 1997 .main_clk = "hsmmc2_fclk",
2085 .prcm = { 1998 .prcm = {
2086 .omap4 = { 1999 .omap4 = {
@@ -2092,17 +2005,10 @@ static struct omap_hwmod omap44xx_mmc2_hwmod = {
2092}; 2005};
2093 2006
2094/* mmc3 */ 2007/* mmc3 */
2095static struct omap_hwmod_dma_info omap44xx_mmc3_sdma_reqs[] = {
2096 { .name = "tx", .dma_req = 76 + OMAP44XX_DMA_REQ_START },
2097 { .name = "rx", .dma_req = 77 + OMAP44XX_DMA_REQ_START },
2098 { .dma_req = -1 }
2099};
2100
2101static struct omap_hwmod omap44xx_mmc3_hwmod = { 2008static struct omap_hwmod omap44xx_mmc3_hwmod = {
2102 .name = "mmc3", 2009 .name = "mmc3",
2103 .class = &omap44xx_mmc_hwmod_class, 2010 .class = &omap44xx_mmc_hwmod_class,
2104 .clkdm_name = "l4_per_clkdm", 2011 .clkdm_name = "l4_per_clkdm",
2105 .sdma_reqs = omap44xx_mmc3_sdma_reqs,
2106 .main_clk = "func_48m_fclk", 2012 .main_clk = "func_48m_fclk",
2107 .prcm = { 2013 .prcm = {
2108 .omap4 = { 2014 .omap4 = {
@@ -2114,17 +2020,10 @@ static struct omap_hwmod omap44xx_mmc3_hwmod = {
2114}; 2020};
2115 2021
2116/* mmc4 */ 2022/* mmc4 */
2117static struct omap_hwmod_dma_info omap44xx_mmc4_sdma_reqs[] = {
2118 { .name = "tx", .dma_req = 56 + OMAP44XX_DMA_REQ_START },
2119 { .name = "rx", .dma_req = 57 + OMAP44XX_DMA_REQ_START },
2120 { .dma_req = -1 }
2121};
2122
2123static struct omap_hwmod omap44xx_mmc4_hwmod = { 2023static struct omap_hwmod omap44xx_mmc4_hwmod = {
2124 .name = "mmc4", 2024 .name = "mmc4",
2125 .class = &omap44xx_mmc_hwmod_class, 2025 .class = &omap44xx_mmc_hwmod_class,
2126 .clkdm_name = "l4_per_clkdm", 2026 .clkdm_name = "l4_per_clkdm",
2127 .sdma_reqs = omap44xx_mmc4_sdma_reqs,
2128 .main_clk = "func_48m_fclk", 2027 .main_clk = "func_48m_fclk",
2129 .prcm = { 2028 .prcm = {
2130 .omap4 = { 2029 .omap4 = {
@@ -2136,17 +2035,10 @@ static struct omap_hwmod omap44xx_mmc4_hwmod = {
2136}; 2035};
2137 2036
2138/* mmc5 */ 2037/* mmc5 */
2139static struct omap_hwmod_dma_info omap44xx_mmc5_sdma_reqs[] = {
2140 { .name = "tx", .dma_req = 58 + OMAP44XX_DMA_REQ_START },
2141 { .name = "rx", .dma_req = 59 + OMAP44XX_DMA_REQ_START },
2142 { .dma_req = -1 }
2143};
2144
2145static struct omap_hwmod omap44xx_mmc5_hwmod = { 2038static struct omap_hwmod omap44xx_mmc5_hwmod = {
2146 .name = "mmc5", 2039 .name = "mmc5",
2147 .class = &omap44xx_mmc_hwmod_class, 2040 .class = &omap44xx_mmc_hwmod_class,
2148 .clkdm_name = "l4_per_clkdm", 2041 .clkdm_name = "l4_per_clkdm",
2149 .sdma_reqs = omap44xx_mmc5_sdma_reqs,
2150 .main_clk = "func_48m_fclk", 2042 .main_clk = "func_48m_fclk",
2151 .prcm = { 2043 .prcm = {
2152 .omap4 = { 2044 .omap4 = {
diff --git a/arch/arm/mach-omap2/omap_hwmod_7xx_data.c b/arch/arm/mach-omap2/omap_hwmod_7xx_data.c
index f040244c57e7..6779975a4464 100644
--- a/arch/arm/mach-omap2/omap_hwmod_7xx_data.c
+++ b/arch/arm/mach-omap2/omap_hwmod_7xx_data.c
@@ -572,11 +572,6 @@ static struct omap_hwmod_class dra7xx_dss_hwmod_class = {
572}; 572};
573 573
574/* dss */ 574/* dss */
575static struct omap_hwmod_dma_info dra7xx_dss_sdma_reqs[] = {
576 { .dma_req = 75 + DRA7XX_DMA_REQ_START },
577 { .dma_req = -1 }
578};
579
580static struct omap_hwmod_opt_clk dss_opt_clks[] = { 575static struct omap_hwmod_opt_clk dss_opt_clks[] = {
581 { .role = "dss_clk", .clk = "dss_dss_clk" }, 576 { .role = "dss_clk", .clk = "dss_dss_clk" },
582 { .role = "hdmi_phy_clk", .clk = "dss_48mhz_clk" }, 577 { .role = "hdmi_phy_clk", .clk = "dss_48mhz_clk" },
@@ -592,7 +587,6 @@ static struct omap_hwmod dra7xx_dss_hwmod = {
592 .class = &dra7xx_dss_hwmod_class, 587 .class = &dra7xx_dss_hwmod_class,
593 .clkdm_name = "dss_clkdm", 588 .clkdm_name = "dss_clkdm",
594 .flags = HWMOD_CONTROL_OPT_CLKS_IN_RESET, 589 .flags = HWMOD_CONTROL_OPT_CLKS_IN_RESET,
595 .sdma_reqs = dra7xx_dss_sdma_reqs,
596 .main_clk = "dss_dss_clk", 590 .main_clk = "dss_dss_clk",
597 .prcm = { 591 .prcm = {
598 .omap4 = { 592 .omap4 = {
diff --git a/arch/arm/mach-omap2/omap_hwmod_common_data.h b/arch/arm/mach-omap2/omap_hwmod_common_data.h
index 625a458ac2eb..8ad97db611ba 100644
--- a/arch/arm/mach-omap2/omap_hwmod_common_data.h
+++ b/arch/arm/mach-omap2/omap_hwmod_common_data.h
@@ -89,20 +89,6 @@ extern struct omap_hwmod_ocp_if omap2xxx_l4_core__rng;
89extern struct omap_hwmod_ocp_if omap2xxx_l4_core__sham; 89extern struct omap_hwmod_ocp_if omap2xxx_l4_core__sham;
90extern struct omap_hwmod_ocp_if omap2xxx_l4_core__aes; 90extern struct omap_hwmod_ocp_if omap2xxx_l4_core__aes;
91 91
92/* Common IP block data */
93extern struct omap_hwmod_dma_info omap2_uart1_sdma_reqs[];
94extern struct omap_hwmod_dma_info omap2_uart2_sdma_reqs[];
95extern struct omap_hwmod_dma_info omap2_uart3_sdma_reqs[];
96extern struct omap_hwmod_dma_info omap2_i2c1_sdma_reqs[];
97extern struct omap_hwmod_dma_info omap2_i2c2_sdma_reqs[];
98extern struct omap_hwmod_dma_info omap2_mcspi1_sdma_reqs[];
99extern struct omap_hwmod_dma_info omap2_mcspi2_sdma_reqs[];
100extern struct omap_hwmod_dma_info omap2_mcbsp1_sdma_reqs[];
101extern struct omap_hwmod_dma_info omap2_mcbsp2_sdma_reqs[];
102
103/* Common IP block data on OMAP2430/OMAP3 */
104extern struct omap_hwmod_dma_info omap2_mcbsp3_sdma_reqs[];
105
106/* Common IP block data across OMAP2/3 */ 92/* Common IP block data across OMAP2/3 */
107extern struct omap_hwmod_addr_space omap2xxx_timer12_addrs[]; 93extern struct omap_hwmod_addr_space omap2xxx_timer12_addrs[];
108 94