On Fri, May 23, 2014 at 07:16:33PM +0100, Morten Rasmussen wrote:
> +static struct capacity_state cap_states_cluster_a7[] = {
> +     /* Cluster only power */
> +      { .cap =  358, .power = 2967, }, /*  350 MHz */
> +      { .cap =  410, .power = 2792, }, /*  400 MHz */
> +      { .cap =  512, .power = 2810, }, /*  500 MHz */
> +      { .cap =  614, .power = 2815, }, /*  600 MHz */
> +      { .cap =  717, .power = 2919, }, /*  700 MHz */
> +      { .cap =  819, .power = 2847, }, /*  800 MHz */
> +      { .cap =  922, .power = 3917, }, /*  900 MHz */
> +      { .cap = 1024, .power = 4905, }, /* 1000 MHz */
> +     };

> +static struct capacity_state cap_states_core_a7[] = {
> +     /* Power per cpu */
> +      { .cap =  358, .power =  187, }, /*  350 MHz */
> +      { .cap =  410, .power =  275, }, /*  400 MHz */
> +      { .cap =  512, .power =  334, }, /*  500 MHz */
> +      { .cap =  614, .power =  407, }, /*  600 MHz */
> +      { .cap =  717, .power =  447, }, /*  700 MHz */
> +      { .cap =  819, .power =  549, }, /*  800 MHz */
> +      { .cap =  922, .power =  761, }, /*  900 MHz */
> +      { .cap = 1024, .power = 1024, }, /* 1000 MHz */
> +     };

Talk to me about this core vs cluster thing.

Why would an architecture have multiple energy domains like this?

That is, if a cpu can set P states per core, why does it need a cluster
wide thing.

Also, in general, why would we need to walk the domain tree all the way
up, typically I would expect to stop walking once we've covered the two
cpu's we're interested in, because above that nothing changes.

Attachment: pgplHKzymqLVE.pgp
Description: PGP signature

Reply via email to