int avg_load;
};
+/*
+ * struct pass_table - Represent the PASS's level
+ *
+ * @limit_max_freq: the limited maximum frequency
+ * this property is used for the following resoures:
+ * - PASS_RESOURCE_CPU_ID
+ * - PASS_RESOURCE_BUS_ID
+ * - PASS_RESOURCE_GPU_ID
+ * @limit_min_freq: the limited minimum frequency
+ * this property is used for the following resoures:
+ * - PASS_RESOURCE_CPU_ID
+ * - PASS_RESOURCE_BUS_ID
+ * - PASS_RESOURCE_GPU_ID
+ * @limit_min_cpu: the minimum number of online CPUs
+ * this property is used for the following resoures:
+ * - PASS_RESOURCE_CPU_ID
+ * - PASS_RESOURCE_BUS_ID
+ * - PASS_RESOURCE_GPU_ID
+ *
+ * @gov_timeout: the period of timer for each PASS's level
+ * this property is used for the following resoures:
+ * - PASS_RESOURCE_CPU_ID
+ *
+ * @{up|down|left|right}_cond: the conditions to move next PASS's level
+ * these properties are used for the following resoures and
+ * they are valid when governor type is either GOV_RADIATION or GOV_STEP.
+ * - PASS_RESOURCE_CPU_ID
+ * @num_{up|down|left|right}: the number of conditions
+ * these properties are used for the following resoures and
+ * they are valid when governor type is either GOV_RADIATION or GOV_STEP.
+ * - PASS_RESOURCE_CPU_ID
+ */
struct pass_table {
- /* Constraints condition for powersaving */
+ /* Properties for the h/w resources */
int limit_max_freq;
int limit_min_freq;
int limit_min_cpu;
- /* Governor timer's timeout for each pass level */
+ /* Properties for the timer */
double gov_timeout;
- /* Condition to determine up/down of pass level */
- struct pass_level_condition comm_cond;
+ /* Properties for the GOV_RADIATION or GOV_STEP governor */
struct pass_level_condition up_cond[PASS_LEVEL_COND_MAX];
struct pass_level_condition down_cond[PASS_LEVEL_COND_MAX];
struct pass_level_condition left_cond[PASS_LEVEL_COND_MAX];