I have noticed the following error messages on some of our Tegra devices ...
ERR KERN faux psci-cpuidle: probe did not succeed, tearing down the device
ERR KERN CPUidle PSCI: Failed to create psci-cpuidle device
I had a quick look at this and this occurs because of the following code in
the probe cpuidle-psci driver ...
/*
* If no DT idle states are detected (ret == 0) let the driver
* initialization fail accordingly since there is no reason to
* initialize the idle driver if only wfi is supported, the
* default archictectural back-end already executes wfi
* on idle entry.
*/
ret = dt_init_idle_driver(drv, psci_idle_state_match, 1);
if (ret <= 0)
return ret ? : -ENODEV;
So although it could be argued that the error message is valid, I am not
sure if there is anything that mandates that we need to have the idle-states
present.
We are always checking for new kernel errors and so if something new occurs,
I am trying to figure out what is the correct way to fix. For this case I am
not sure what is best.
This is another case where probe was failing before too just that faux
device probe throws the error. I will take a look and see what can be done.
But yes, we shouldn't throw error if no idle-states are present in the DT.