Saravana Kannan <skannan@xxxxxxxxxxxxxx> writes: > Some drivers/devices might need some minimum system bus performance to > provide acceptable service. Provide a PM QoS parameter to send these requests > to. > > The new parameter is named "system bus performance" since it is generic enough > for the unit of the request to be frequency, bandwidth or something else that > might be appropriate. It's up to each implementation of the QoS provider to > define what the unit of the request would be. > > Signed-off-by: Saravana Kannan <skannan@xxxxxxxxxxxxxx> With this current design, only one system-wide bus would be managed. What if a platform has more than one independently scalable bus? I think the only scalable way to handle this kind of thing is to have per-device QoS constraints that can then be combined/aggregated by parent devices/busses. At LPC this year, I've proposed per-device QoS constraints[1] as a topic for the PM mini-conf. I hope some folks from the MSM camp can be there for these discussions. Kevin [1] http://www.linuxplumbersconf.org/2010/ocw/proposals/819 > --- > kernel/pm_qos_params.c | 9 +++++++++ > 1 files changed, 9 insertions(+), 0 deletions(-) > > diff --git a/kernel/pm_qos_params.c b/kernel/pm_qos_params.c > index 996a4de..1a44a67 100644 > --- a/kernel/pm_qos_params.c > +++ b/kernel/pm_qos_params.c > @@ -93,12 +93,21 @@ static struct pm_qos_object network_throughput_pm_qos = { > .type = PM_QOS_MAX, > }; > > +static BLOCKING_NOTIFIER_HEAD(system_bus_performance_notifier); > +static struct pm_qos_object system_bus_performance_pm_qos = { > + .requests = PLIST_HEAD_INIT(system_bus_performance_pm_qos.requests, pm_qos_lock), > + .notifiers = &system_bus_performance_notifier, > + .name = "system_bus_performance", > + .default_value = 0, > + .type = PM_QOS_MAX, > +}; > > static struct pm_qos_object *pm_qos_array[] = { > &null_pm_qos, > &cpu_dma_pm_qos, > &network_lat_pm_qos, > &network_throughput_pm_qos > + &system_bus_performance_pm_qos > }; > > static ssize_t pm_qos_power_write(struct file *filp, const char __user *buf, -- To unsubscribe from this list: send the line "unsubscribe linux-arm-msm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html