aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-omap2/omap_device.c
diff options
context:
space:
mode:
authorTony Lindgren <tony@atomide.com>2018-02-22 17:05:31 -0500
committerTony Lindgren <tony@atomide.com>2018-02-28 23:03:21 -0500
commit695eea3d2c7f3e70e852226c338d464a6251c70b (patch)
tree4050762131c69bb02472e40eac65c6932c66ccfb /arch/arm/mach-omap2/omap_device.c
parent2ad1ec0d2fddcb9cf17632dacf4d70c81a0c49e7 (diff)
ARM: OMAP2+: Enable ti-sysc to use device tree data for smartreflex
Let's enable ti-sysc probing of child devices. So far we have only used ti-sysc to probe interconnect target modules to idle them for cases where the SoC does not have any child devices configured for the module, such as smartreflex on dra7. As we have smartreflex driver configured in the device tree for some SoCs, we need to flip things on with a single patch to prevent both omap_device and ti-sysc to probe smartreflex. So let's stop probing smartreflex with omap_device and probe it with ti-sysc by enabling passing the auxdata. Signed-off-by: Tony Lindgren <tony@atomide.com>
Diffstat (limited to 'arch/arm/mach-omap2/omap_device.c')
-rw-r--r--arch/arm/mach-omap2/omap_device.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/arch/arm/mach-omap2/omap_device.c b/arch/arm/mach-omap2/omap_device.c
index f0388058b7da..3b829a50d1db 100644
--- a/arch/arm/mach-omap2/omap_device.c
+++ b/arch/arm/mach-omap2/omap_device.c
@@ -140,6 +140,7 @@ static int omap_device_build_from_dt(struct platform_device *pdev)
140 struct omap_device *od; 140 struct omap_device *od;
141 struct omap_hwmod *oh; 141 struct omap_hwmod *oh;
142 struct device_node *node = pdev->dev.of_node; 142 struct device_node *node = pdev->dev.of_node;
143 struct resource res;
143 const char *oh_name; 144 const char *oh_name;
144 int oh_cnt, i, ret = 0; 145 int oh_cnt, i, ret = 0;
145 bool device_active = false; 146 bool device_active = false;
@@ -150,6 +151,10 @@ static int omap_device_build_from_dt(struct platform_device *pdev)
150 return -ENODEV; 151 return -ENODEV;
151 } 152 }
152 153
154 /* Use ti-sysc driver instead of omap_device? */
155 if (!omap_hwmod_parse_module_range(NULL, node, &res))
156 return -ENODEV;
157
153 hwmods = kzalloc(sizeof(struct omap_hwmod *) * oh_cnt, GFP_KERNEL); 158 hwmods = kzalloc(sizeof(struct omap_hwmod *) * oh_cnt, GFP_KERNEL);
154 if (!hwmods) { 159 if (!hwmods) {
155 ret = -ENOMEM; 160 ret = -ENOMEM;