On 13 May 2015 at 17:39, Jon Medhurst (Tixy) <tixy@linaro.org> wrote:
 
1. There is no arm64 implementation in mainline. (Is there a reason?)

Catalin doesn't like it because he was concerned about where the relative power numbers came from and making sure that they were bang on accurate (they are derived from ARM's published Dhrystone numbers as are the ones in the arm code). Will did indicate that he'd be OK with it from the point of view of being consistent with the 32 bit implementation (which is the main reason I was pushing it upstream) but he wanted some benchmark numbers which seems sensible but I didn't get round to doing yet.

2. The arm64 implementation in LSK closely resembles the arm mainline
version, except that mainline doesn't have the

        if (min_capacity == max_capacity)
                return;
        else

That looks like an accidental side effect of commit
816a8de0017f ("ARM: topology: remove hwid/MPIDR dependency from
cpu_capacity"). But it does meant that in mainline 'middle_capacity' is
now set by parse_dt_cpu_power (to a useful value?) rather than being
left as '1'.

Thanks for digging that out.

3. The arm version in LSK looks like the ARM64 version, in the sense
that 'middle_capacity' is not set, so is this something which needs
addressing on arm as well?

I'd have expected so. The code is a direct copy with updates being purely for review comments (plus drift due to updates to arch/arm that didn't get copied over).