cpufreq core
static struct cpufreq_driver *cpufreq_driver;
int cpufreq_register_driver(struct cpufreq_driver *driver_data)
{
/*
* The cpufreq core depends heavily on the availability of device
* structure, make sure they are available before proceeding further.
*/
if (!get_cpu_device(0)) (1)
return -EPROBE_DEFER;
if (!driver_data || !driver_data->verify || !driver_data->init || (2)
!(driver_data->setpolicy || driver_data->target_index ||
driver_data->target) || (3)
(driver_data->setpolicy && (driver_data->target_index ||
driver_data->target)) || (4)
(!driver_data->get_intermediate != !driver_data->target_intermediate) || (5)
(!driver_data->online != !driver_data->offline)) (6)
return -EINVAL;
}