|
@@ -33,15 +33,22 @@
|
|
|
* The HPT is free running from SB1250_HPT_VALUE down to 0 then starts over
|
|
|
* again.
|
|
|
*/
|
|
|
-static cycle_t sb1250_hpt_read(struct clocksource *cs)
|
|
|
+static inline cycle_t sb1250_hpt_get_cycles(void)
|
|
|
{
|
|
|
unsigned int count;
|
|
|
+ void __iomem *addr;
|
|
|
|
|
|
- count = G_SCD_TIMER_CNT(__raw_readq(IOADDR(A_SCD_TIMER_REGISTER(SB1250_HPT_NUM, R_SCD_TIMER_CNT))));
|
|
|
+ addr = IOADDR(A_SCD_TIMER_REGISTER(SB1250_HPT_NUM, R_SCD_TIMER_CNT));
|
|
|
+ count = G_SCD_TIMER_CNT(__raw_readq(addr));
|
|
|
|
|
|
return SB1250_HPT_VALUE - count;
|
|
|
}
|
|
|
|
|
|
+static cycle_t sb1250_hpt_read(struct clocksource *cs)
|
|
|
+{
|
|
|
+ return sb1250_hpt_get_cycles();
|
|
|
+}
|
|
|
+
|
|
|
struct clocksource bcm1250_clocksource = {
|
|
|
.name = "bcm1250-counter-3",
|
|
|
.rating = 200,
|