* [PATCH 1/3] ARM: shmobile: timer: Fix preset_lpj leading to too short delays
[not found] ` <1452537674-20006-2-git-send-email-geert+renesas@glider.be>
@ 2016-01-18 1:42 ` Simon Horman
0 siblings, 0 replies; 3+ messages in thread
From: Simon Horman @ 2016-01-18 1:42 UTC (permalink / raw)
To: linux-arm-kernel
On Mon, Jan 11, 2016 at 07:41:12PM +0100, Geert Uytterhoeven wrote:
> On all shmobile ARM SoCs, loop-based delays may complete early, which
> can be after only 1/3 (Cortex A9) or 1/2 (Cortex A7 or A15) of the
> minimum required time.
>
> This is caused by calculating preset_lpj based on incorrect assumptions
> about the number of clock cycles per loop:
> - All of Cortex A7, A9, and A15 run __loop_delay() at 1 loop per
> CPU clock cycle,
> - As of commit 11d4bb1bd067f9d0 ("ARM: 7907/1: lib: delay-loop: Add
> align directive to fix BogoMIPS calculation"), Cortex A8 runs
> __loop_delay() at 1 loop per 2 instead of 3 CPU clock cycles.
>
> On SoCs with Cortex A7 and/or A15 CPU cores, this went unnoticed, as
> delays use the ARM arch timer if available. R-Car Gen2 doesn't work if
> the arch timer is disabled. However, APE6 can be used without the arch
> timer.
>
> Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
> ---
> Backporting note: older kernels need modifications in all calls to
> shmobile_setup_delay() or shmobile_setup_delay_hz().
Thanks, I have queued this up for v4.6.
^ permalink raw reply [flat|nested] 3+ messages in thread
* [PATCH 2/3] ARM: shmobile: timer: Drop support for Cortex A8
[not found] ` <1452537674-20006-3-git-send-email-geert+renesas@glider.be>
@ 2016-01-18 1:45 ` Simon Horman
0 siblings, 0 replies; 3+ messages in thread
From: Simon Horman @ 2016-01-18 1:45 UTC (permalink / raw)
To: linux-arm-kernel
On Mon, Jan 11, 2016 at 07:41:13PM +0100, Geert Uytterhoeven wrote:
> Commit edf4100906044225 ("ARM: shmobile: sh7372 dtsi: Remove Legacy
> file") removed the DTS for the last shmobile SoC with a Cortex A8 CPU
> core (sh7372 aka SH-Mobile AP4).
>
> Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Thanks, I have queued this up for v4.6.
^ permalink raw reply [flat|nested] 3+ messages in thread
* [PATCH 3/3] ARM: shmobile: defconfig: Do not enable CONFIG_CPU_BPREDICT_DISABLE
[not found] ` <1452537674-20006-4-git-send-email-geert+renesas@glider.be>
@ 2016-01-18 1:48 ` Simon Horman
0 siblings, 0 replies; 3+ messages in thread
From: Simon Horman @ 2016-01-18 1:48 UTC (permalink / raw)
To: linux-arm-kernel
On Mon, Jan 11, 2016 at 07:41:14PM +0100, Geert Uytterhoeven wrote:
> Do not disable branch prediction, as this has a big performance impact.
>
> After re-enabling branch prediction, __loop_delay() runs 16 (Cortex A15)
> or 11 (Cortex A9) times faster than before.
>
> Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
> ---
> This used to be enabled in:
>
> - ag5evm_defconfig (sh73a0)
> - ape6evm_defconfig (r8a73a4)
> - armadillo800eva_defconfig (r8a7740)
> - koelsch_defconfig (r8a7791)
> - kota2_defconfig (sh73a0)
>
> Was there ever a good reason for that?
If that was a concious decision then I believe it was made before my time.
I'm going ahead and queuing up this change for v4.6.
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2016-01-18 1:48 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <1452537674-20006-1-git-send-email-geert+renesas@glider.be>
[not found] ` <1452537674-20006-2-git-send-email-geert+renesas@glider.be>
2016-01-18 1:42 ` [PATCH 1/3] ARM: shmobile: timer: Fix preset_lpj leading to too short delays Simon Horman
[not found] ` <1452537674-20006-3-git-send-email-geert+renesas@glider.be>
2016-01-18 1:45 ` [PATCH 2/3] ARM: shmobile: timer: Drop support for Cortex A8 Simon Horman
[not found] ` <1452537674-20006-4-git-send-email-geert+renesas@glider.be>
2016-01-18 1:48 ` [PATCH 3/3] ARM: shmobile: defconfig: Do not enable CONFIG_CPU_BPREDICT_DISABLE Simon Horman
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).