Hi Vladimir,
On 2020-01-20 11:46, Vladimir Murzin wrote:
+ Marc
+ kvmarm@xxxxxxxxxxxxxxxxxxxxx
On 1/15/20 2:16 PM, Vladimir Murzin wrote:
Updates to the Generic Timer architecture allow ID_PFR1.GenTimer to
have values other than 0 or 1. At the moment, Linux is quite strict in
the way it handles this field at early boot and will not configure
arch timer if it doesn't find the value 1.
Since here use ubfx for arch timer version extraction (hyb-stub build
with -march=armv7-a, so it is safe)
To help backports (even though the code was correct at the time of
writing)
Fixes: 8ec58be9f3ff ("ARM: virt: arch_timers: enable access to
physical timers")
Signed-off-by: Vladimir Murzin <vladimir.murzin@xxxxxxx>
I'm not opposed to such a change, but it'd be good to document what
other values
are expected here, as the current (Rev E_a) ARM ARM only mentions values
0 and 1.
Thanks,
M.
---
arch/arm/kernel/hyp-stub.S | 7 +++----
1 file changed, 3 insertions(+), 4 deletions(-)
diff --git a/arch/arm/kernel/hyp-stub.S b/arch/arm/kernel/hyp-stub.S
index ae50203..6607fa8 100644
--- a/arch/arm/kernel/hyp-stub.S
+++ b/arch/arm/kernel/hyp-stub.S
@@ -146,10 +146,9 @@ ARM_BE8(orr r7, r7, #(1 << 25)) @ HSCTLR.EE
#if !defined(ZIMAGE) && defined(CONFIG_ARM_ARCH_TIMER)
@ make CNTP_* and CNTPCT accessible from PL1
mrc p15, 0, r7, c0, c1, 1 @ ID_PFR1
- lsr r7, #16
- and r7, #0xf
- cmp r7, #1
- bne 1f
+ ubfx r7, r7, #16, #4
+ teq r7, #0
+ beq 1f
mrc p15, 4, r7, c14, c1, 0 @ CNTHCTL
orr r7, r7, #3 @ PL1PCEN | PL1PCTEN
mcr p15, 4, r7, c14, c1, 0 @ CNTHCTL
--
Jazz is not dead. It just smells funny...
_______________________________________________
kvmarm mailing list
kvmarm@xxxxxxxxxxxxxxxxxxxxx
https://lists.cs.columbia.edu/mailman/listinfo/kvmarm