policy->min = policy->cpuinfo.min_freq = min_freq;
policy->max = max_freq; /* * If the driver has set its own cpuinfo.max_freq above max_freq, leave * it as is.
*/ if (policy->cpuinfo.max_freq < max_freq)
policy->max = policy->cpuinfo.max_freq = max_freq;
if (policy->min == ~0) return -EINVAL; else return 0;
}
int cpufreq_frequency_table_verify(struct cpufreq_policy_data *policy, struct cpufreq_frequency_table *table)
{ struct cpufreq_frequency_table *pos; unsignedint freq, prev_smaller = 0; bool found = false;
pr_debug("request for verification of policy (%u - %u kHz) for cpu %u\n",
policy->min, policy->max, policy->cpu);
/* * Generic routine to verify policy & frequency table, requires driver to set * policy->freq_table prior to it.
*/ int cpufreq_generic_frequency_table_verify(struct cpufreq_policy_data *policy)
{ if (!policy->freq_table) return -ENODEV;
/* * scaling_available_frequencies_show - show available normal frequencies for * the specified CPU
*/ static ssize_t scaling_available_frequencies_show(struct cpufreq_policy *policy, char *buf)
{ return show_available_freqs(policy, buf, false);
}
cpufreq_attr_available_freq(scaling_available);
/* * scaling_boost_frequencies_show - show available boost frequencies for * the specified CPU
*/ static ssize_t scaling_boost_frequencies_show(struct cpufreq_policy *policy, char *buf)
{ return show_available_freqs(policy, buf, true);
}
cpufreq_attr_available_freq(scaling_boost);
/* Frequency increased from prev to pos */ if (pos->frequency > prev->frequency) { /* But frequency was decreasing earlier */ if (ascending < 0) {
pr_debug("Freq table is unsorted\n"); return 0;
}
ascending++;
} else { /* Frequency decreased from prev to pos */
/* But frequency was increasing earlier */ if (ascending > 0) {
pr_debug("Freq table is unsorted\n"); return 0;
}
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.