PM_QOS_CPU_DMA_LATENCY,
PM_QOS_NETWORK_LATENCY,
PM_QOS_DEVICE_THROUGHPUT,
+ PM_QOS_BUS_THROUGHPUT,
PM_QOS_NETWORK_THROUGHPUT,
PM_QOS_MEMORY_BANDWIDTH,
#define PM_QOS_CPU_DMA_LAT_DEFAULT_VALUE (2000 * USEC_PER_SEC)
#define PM_QOS_NETWORK_LAT_DEFAULT_VALUE (2000 * USEC_PER_SEC)
#define PM_QOS_DEVICE_THROUGHPUT_DEFAULT_VALUE 0
+#define PM_QOS_BUS_THROUGHPUT_DEFAULT_VALUE 0
#define PM_QOS_NETWORK_THROUGHPUT_DEFAULT_VALUE 0
#define PM_QOS_MEMORY_BANDWIDTH_DEFAULT_VALUE 0
#define PM_QOS_RESUME_LATENCY_DEFAULT_VALUE 0
.name = "device_throughput",
};
+static BLOCKING_NOTIFIER_HEAD(bus_throughput_notifier);
+static struct pm_qos_constraints bus_tput_constraints = {
+ .list = PLIST_HEAD_INIT(bus_tput_constraints.list),
+ .target_value = PM_QOS_BUS_THROUGHPUT_DEFAULT_VALUE,
+ .default_value = PM_QOS_BUS_THROUGHPUT_DEFAULT_VALUE,
+ .type = PM_QOS_MAX,
+ .notifiers = &bus_throughput_notifier,
+};
+static struct pm_qos_object bus_throughput_pm_qos = {
+ .constraints = &bus_tput_constraints,
+ .name = "bus_throughput",
+};
+
static BLOCKING_NOTIFIER_HEAD(network_throughput_notifier);
static struct pm_qos_constraints network_tput_constraints = {
.list = PLIST_HEAD_INIT(network_tput_constraints.list),
&cpu_dma_pm_qos,
&network_lat_pm_qos,
&device_throughput_pm_qos,
+ &bus_throughput_pm_qos,
&network_throughput_pm_qos,
&memory_bandwidth_pm_qos,
};