Re: [PATCH v5 5/8] drivers: cpuidle: CPU idle ARM64 driver

Geoff Levand
2014-06-25T20:34:27Z

Hi Lorenzo,

On Wed, 2014-06-25 at 15:10 +0100, Lorenzo Pieralisi wrote:
> This patch implements a generic CPU idle driver for ARM64 machines.

...

> +typedef int (*suspend_init_fn)(struct cpuidle_driver *,
> + struct device_node *[]);
> +
> +struct cpu_suspend_ops {
> + const char *id;
> + suspend_init_fn init_fn;
> +};
> +
> +static const struct cpu_suspend_ops suspend_operations[] __initconst = {
> + {"arm,psci", psci_dt_register_idle_states},
> + {}

With this we'll have two completely independent mechanisms for
interacting with the cpu ops, this struct cpu_suspend_ops, and the
struct cpu_operations. This doesn't seem good.

I feel we need to fix the cpu ops to include some way to operate on the
operation method to do initialization, shutdown, etc. At present,
cpu_operations only has a mechanism to operate on the individual cpus.

-Geoff