[PATCH 6/8] ARM: cpuidle: Enable the ARM64 driver for both ARM32/ARM64
Daniel Lezcano
daniel.lezcano at linaro.org
Wed Mar 25 15:02:00 PDT 2015
On 03/25/2015 09:54 PM, Paul Bolle wrote:
> A few nits are all I spotted.
>
> On Wed, 2015-03-25 at 10:07 +0100, Daniel Lezcano wrote:
>> --- a/drivers/cpuidle/Kconfig.arm
>> +++ b/drivers/cpuidle/Kconfig.arm
>
>> +config ARM_CPUIDLE
>> + bool "Generic ARM/ARM64 CPU idle Driver"
>> + select DT_IDLE_STATES
>> + help
>> + Select this to enable generic cpuidle driver for ARM.
>> + It provides a generic idle driver whose idle states are configured
>> + at run-time through DT nodes. The CPUidle suspend backend is
>> + initialized by calling the CPU operations init idle hook
>> + provided by architecture code.
>
> Start with a tab instead of 8 spaces, please.
Ok, I will send a fix for that on top of this patch.
>> --- /dev/null
>> +++ b/drivers/cpuidle/cpuidle-arm.c
>
>> +#include <linux/cpuidle.h>
>> +#include <linux/cpumask.h>
>> +#include <linux/cpu_pm.h>
>> +#include <linux/kernel.h>
>> +#include <linux/module.h>
>
> Is this include actually needed? I haven't tried building this without
> that include, but I spotted nothing obviously module related in this
> file.
>
>> +#include <linux/of.h>
>> +
>> +#include <asm/cpuidle.h>
>> +
>> +#include "dt_idle_states.h"
>
>> +static struct cpuidle_driver arm_idle_driver = {
>> + .name = "arm_idle",
>> + .owner = THIS_MODULE,
>
> Since this can only be built in, THIS_MODULE will (basically) be
> equivalent to NULL according to include/linux/export.h. So I suppose
> this line can be dropped.
Yeah, THIS_MODULE is present in all drivers. Very likely we can safely
remove it.
>> + /*
>> + * State at index 0 is standby wfi and considered standard
>> + * on all ARM platforms. If in some platforms simple wfi
>> + * can't be used as "state 0", DT bindings must be implemented
>> + * to work around this issue and allow installing a special
>> + * handler for idle state index 0.
>> + */
>> + .states[0] = {
>> + .enter = arm_enter_idle_state,
>> + .exit_latency = 1,
>> + .target_residency = 1,
>> + .power_usage = UINT_MAX,
>> + .name = "WFI",
>> + .desc = "ARM WFI",
>> + }
>> +};
>
> I did notice that these two nits are already present in
> drivers/cpuidle/cpuidle-arm64.c. But since this patch is not just moving
> that file's content around, you might as well look into those two nits.
We can address the module code removal in a separate patchset as this is
the case for all the drivers.
--
<http://www.linaro.org/> Linaro.org │ Open source software for ARM SoCs
Follow Linaro: <http://www.facebook.com/pages/Linaro> Facebook |
<http://twitter.com/#!/linaroorg> Twitter |
<http://www.linaro.org/linaro-blog/> Blog
More information about the linux-arm-kernel
mailing list