Marc Zyngier
c6f97add0f
arm64: Use arch_timer_get_rate when trapping CNTFRQ_EL0
...
In an ideal world, CNTFRQ_EL0 always contains the timer frequency
for the kernel to use. Sadly, we get quite a few broken systems
where the firmware authors cannot be bothered to program that
register on all CPUs, and rely on DT to provide that frequency.
So when trapping CNTFRQ_EL0, make sure to return the actual rate
(as known by the kernel), and not CNTFRQ_EL0.
Acked-by: Mark Rutland <mark.rutland@arm.com>
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
2017-08-01 12:14:06 +01:00
..
2017-05-30 11:07:41 +01:00
2017-06-20 10:41:51 +02:00
2012-09-17 13:42:21 +01:00
2016-09-09 14:59:08 +01:00
2017-06-29 11:33:15 +01:00
2017-04-05 12:27:25 +02:00
2017-06-29 16:32:43 +01:00
2017-03-28 18:23:24 -04:00
2017-05-09 17:47:05 +01:00
2017-02-03 18:46:33 +00:00
2017-03-20 16:16:54 +00:00
2017-06-15 09:45:04 +01:00
2017-07-20 10:28:41 +01:00
2017-01-12 15:05:39 +00:00
2016-06-27 16:31:25 +01:00
2017-06-22 15:58:20 +01:00
2017-03-10 18:06:24 +00:00
2017-06-30 13:34:11 +01:00
2017-04-05 18:31:38 +01:00
2017-06-29 11:02:41 +01:00
2017-01-17 17:41:14 +00:00
2017-04-04 17:50:59 +01:00
2017-06-05 17:50:44 +02:00
2015-07-10 16:47:13 +01:00
2014-07-31 11:42:42 +01:00
2017-02-15 11:34:25 +00:00
2017-05-09 17:26:59 +01:00
2017-03-02 08:42:29 +01:00
2017-06-07 11:52:02 +01:00
2017-06-23 18:21:13 +01:00
2017-04-04 18:08:47 +01:00
2016-09-09 15:03:29 +01:00
2017-04-05 18:28:50 +01:00
2017-05-09 17:26:40 +01:00
2017-04-09 07:49:35 -07:00
2016-05-16 17:17:24 -07:00
2017-07-05 17:09:27 -07:00
2014-11-06 17:25:27 +00:00
2015-12-21 17:26:01 +00:00
2015-08-03 11:34:12 +02:00
2017-06-29 16:32:43 +01:00
2017-03-02 08:42:36 +01:00
2014-07-10 11:02:40 +01:00
2017-04-05 18:29:47 +01:00
2017-06-07 11:52:02 +01:00
2017-04-26 12:31:00 +01:00
2017-06-29 11:09:39 +01:00
2017-04-26 12:31:00 +01:00
2015-12-21 14:40:54 +00:00
2017-07-08 15:51:57 -07:00
2016-05-16 23:11:51 -03:00
2017-05-30 12:15:14 +01:00
2017-03-02 08:42:36 +01:00
2017-06-22 15:58:20 +01:00
2017-01-12 15:05:39 +00:00
2017-06-29 17:44:08 +01:00
2017-04-04 17:03:32 +01:00
2017-04-04 17:03:32 +01:00
2016-09-09 15:03:29 +01:00
2016-11-11 18:25:43 +00:00
2017-05-30 11:07:42 +01:00
2016-12-24 11:46:01 -08:00
2017-06-23 18:20:18 +01:00
2016-11-11 18:25:44 +00:00
2017-02-03 18:46:33 +00:00
2017-01-12 15:05:39 +00:00
2017-07-20 10:28:41 +01:00
2017-06-15 11:52:35 +01:00
2016-11-11 18:25:44 +00:00
2015-03-19 10:43:51 +00:00
2017-03-02 08:42:37 +01:00
2016-04-20 12:22:42 +01:00
2017-06-14 11:59:16 +02:00
2017-07-20 10:28:41 +01:00
2014-11-20 16:35:02 +00:00
2017-08-01 12:14:06 +01:00
2017-07-05 17:09:27 -07:00
2017-04-04 17:50:59 +01:00