aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/plat-omap/omap_device.c
diff options
context:
space:
mode:
authorKevin Hilman <khilman@deeprootsystems.com>2010-07-26 18:34:30 -0400
committerPaul Walmsley <paul@pwsan.com>2010-07-26 18:34:30 -0400
commit0656358159d7e26205bb9360840759c7c3c0725f (patch)
tree7ce6f98ba6d2a87fd6890f4960c17feedb8f2a5b /arch/arm/plat-omap/omap_device.c
parent681fddc6d087359c1e3f86529973f5bf62afe4c0 (diff)
OMAP: omap_device: ensure hwmod tracks attached omap_device pointer
The omap_hwmod struct has a field to track the omap_device that is attached to it, but it was not being assigned. Fix by assigning omap_device pointer when omap_device is built. Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com> [paul@pwsan.com: use an array index rather than pointer arithmetic] Signed-off-by: Paul Walmsley <paul@pwsan.com>
Diffstat (limited to 'arch/arm/plat-omap/omap_device.c')
-rw-r--r--arch/arm/plat-omap/omap_device.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/arch/arm/plat-omap/omap_device.c b/arch/arm/plat-omap/omap_device.c
index f899603051ac..f9dec0d32fa4 100644
--- a/arch/arm/plat-omap/omap_device.c
+++ b/arch/arm/plat-omap/omap_device.c
@@ -359,7 +359,7 @@ struct omap_device *omap_device_build_ss(const char *pdev_name, int pdev_id,
359 struct omap_device *od; 359 struct omap_device *od;
360 char *pdev_name2; 360 char *pdev_name2;
361 struct resource *res = NULL; 361 struct resource *res = NULL;
362 int res_count; 362 int i, res_count;
363 struct omap_hwmod **hwmods; 363 struct omap_hwmod **hwmods;
364 364
365 if (!ohs || oh_cnt == 0 || !pdev_name) 365 if (!ohs || oh_cnt == 0 || !pdev_name)
@@ -416,6 +416,9 @@ struct omap_device *omap_device_build_ss(const char *pdev_name, int pdev_id,
416 else 416 else
417 ret = omap_device_register(od); 417 ret = omap_device_register(od);
418 418
419 for (i = 0; i < oh_cnt; i++)
420 hwmods[i]->od = od;
421
419 if (ret) 422 if (ret)
420 goto odbs_exit4; 423 goto odbs_exit4;
421 424