Modify rmobile_read_domain_from_dt() so that it can read device
latency information from the device tree along with the PM
domain name and make it use rmobile_add_device_to_domain_td()
for adding the device to the PM domain along with the device latency
data.

Signed-off-by: Rafael J. Wysocki <[email protected]>
---
 arch/arm/mach-shmobile/pm-rmobile.c |   24 ++++++++++++++++++++++--
 1 file changed, 22 insertions(+), 2 deletions(-)

Index: linux/arch/arm/mach-shmobile/pm-rmobile.c
===================================================================
--- linux.orig/arch/arm/mach-shmobile/pm-rmobile.c
+++ linux/arch/arm/mach-shmobile/pm-rmobile.c
@@ -170,14 +170,34 @@ void rmobile_add_device_to_domain_td(con
 
 static void rmobile_read_domain_from_dt(struct device *dev)
 {
+       struct gpd_timing_data latencies = { 0 };
        const char *domain_name;
+       u64 val;
        int ret;
 
        ret = of_property_read_string(dev->of_node, "renesas,pmdomain",
                                      &domain_name);
+       if (ret)
+               return;
+
+       ret = of_property_read_u64(dev->of_node, "pm-stop-latency", &val);
+       if (!ret)
+               latencies.stop_latency_ns = val;
+
+       ret = of_property_read_u64(dev->of_node, "pm-start-latency", &val);
+       if (!ret)
+               latencies.start_latency_ns = val;
+
+       ret = of_property_read_u64(dev->of_node, "pm-save-latency", &val);
+       if (!ret)
+               latencies.save_state_latency_ns = val;
+
+       ret = of_property_read_u64(dev->of_node, "pm-restore-latency", &val);
        if (!ret)
-               rmobile_add_device_to_domain(domain_name,
-                                            to_platform_device(dev));
+               latencies.restore_state_latency_ns = val;
+
+       rmobile_add_device_to_domain_td(domain_name, to_platform_device(dev),
+                                       &latencies);
 }
 
 static void rmobile_remove_from_domain(struct device *dev)

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to