diff options
-rw-r--r-- | target/linux/generic/pending-4.14/101-clocksource-mips-gic-timer-fix-clocksource-counter-w.patch | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/target/linux/generic/pending-4.14/101-clocksource-mips-gic-timer-fix-clocksource-counter-w.patch b/target/linux/generic/pending-4.14/101-clocksource-mips-gic-timer-fix-clocksource-counter-w.patch new file mode 100644 index 0000000000..a554aa1125 --- /dev/null +++ b/target/linux/generic/pending-4.14/101-clocksource-mips-gic-timer-fix-clocksource-counter-w.patch @@ -0,0 +1,23 @@ +From: Felix Fietkau <nbd@nbd.name> +Date: Wed, 21 Feb 2018 13:40:12 +0100 +Subject: [PATCH] clocksource: mips-gic-timer: fix clocksource counter width + +This code needs to use ffs instead of fls on the mask to determine the +shift for reading the GIC_CONFIG_COUNTBITS field. + +Fixes: e07127a077c7 ("clocksource: mips-gic-timer: Use new GIC accessor functions") +Cc: Paul Burton <paul.burton@imgtec.com> +Signed-off-by: Felix Fietkau <nbd@nbd.name> +--- + +--- a/drivers/clocksource/mips-gic-timer.c ++++ b/drivers/clocksource/mips-gic-timer.c +@@ -164,7 +164,7 @@ static int __init __gic_clocksource_init + + /* Set clocksource mask. */ + count_width = read_gic_config() & GIC_CONFIG_COUNTBITS; +- count_width >>= __fls(GIC_CONFIG_COUNTBITS); ++ count_width >>= __ffs(GIC_CONFIG_COUNTBITS); + count_width *= 4; + count_width += 32; + gic_clocksource.mask = CLOCKSOURCE_MASK(count_width); |