|
@@ -280,20 +280,20 @@ static inline u32 __omap_dm_timer_read(struct omap_dm_timer *timer, u32 reg,
|
|
int posted)
|
|
int posted)
|
|
{
|
|
{
|
|
if (posted)
|
|
if (posted)
|
|
- while (__raw_readl(timer->pend) & (reg >> WPSHIFT))
|
|
|
|
|
|
+ while (readl_relaxed(timer->pend) & (reg >> WPSHIFT))
|
|
cpu_relax();
|
|
cpu_relax();
|
|
|
|
|
|
- return __raw_readl(timer->func_base + (reg & 0xff));
|
|
|
|
|
|
+ return readl_relaxed(timer->func_base + (reg & 0xff));
|
|
}
|
|
}
|
|
|
|
|
|
static inline void __omap_dm_timer_write(struct omap_dm_timer *timer,
|
|
static inline void __omap_dm_timer_write(struct omap_dm_timer *timer,
|
|
u32 reg, u32 val, int posted)
|
|
u32 reg, u32 val, int posted)
|
|
{
|
|
{
|
|
if (posted)
|
|
if (posted)
|
|
- while (__raw_readl(timer->pend) & (reg >> WPSHIFT))
|
|
|
|
|
|
+ while (readl_relaxed(timer->pend) & (reg >> WPSHIFT))
|
|
cpu_relax();
|
|
cpu_relax();
|
|
|
|
|
|
- __raw_writel(val, timer->func_base + (reg & 0xff));
|
|
|
|
|
|
+ writel_relaxed(val, timer->func_base + (reg & 0xff));
|
|
}
|
|
}
|
|
|
|
|
|
static inline void __omap_dm_timer_init_regs(struct omap_dm_timer *timer)
|
|
static inline void __omap_dm_timer_init_regs(struct omap_dm_timer *timer)
|
|
@@ -301,7 +301,7 @@ static inline void __omap_dm_timer_init_regs(struct omap_dm_timer *timer)
|
|
u32 tidr;
|
|
u32 tidr;
|
|
|
|
|
|
/* Assume v1 ip if bits [31:16] are zero */
|
|
/* Assume v1 ip if bits [31:16] are zero */
|
|
- tidr = __raw_readl(timer->io_base);
|
|
|
|
|
|
+ tidr = readl_relaxed(timer->io_base);
|
|
if (!(tidr >> 16)) {
|
|
if (!(tidr >> 16)) {
|
|
timer->revision = 1;
|
|
timer->revision = 1;
|
|
timer->irq_stat = timer->io_base + OMAP_TIMER_V1_STAT_OFFSET;
|
|
timer->irq_stat = timer->io_base + OMAP_TIMER_V1_STAT_OFFSET;
|
|
@@ -385,7 +385,7 @@ static inline void __omap_dm_timer_stop(struct omap_dm_timer *timer,
|
|
}
|
|
}
|
|
|
|
|
|
/* Ack possibly pending interrupt */
|
|
/* Ack possibly pending interrupt */
|
|
- __raw_writel(OMAP_TIMER_INT_OVERFLOW, timer->irq_stat);
|
|
|
|
|
|
+ writel_relaxed(OMAP_TIMER_INT_OVERFLOW, timer->irq_stat);
|
|
}
|
|
}
|
|
|
|
|
|
static inline void __omap_dm_timer_load_start(struct omap_dm_timer *timer,
|
|
static inline void __omap_dm_timer_load_start(struct omap_dm_timer *timer,
|
|
@@ -399,7 +399,7 @@ static inline void __omap_dm_timer_load_start(struct omap_dm_timer *timer,
|
|
static inline void __omap_dm_timer_int_enable(struct omap_dm_timer *timer,
|
|
static inline void __omap_dm_timer_int_enable(struct omap_dm_timer *timer,
|
|
unsigned int value)
|
|
unsigned int value)
|
|
{
|
|
{
|
|
- __raw_writel(value, timer->irq_ena);
|
|
|
|
|
|
+ writel_relaxed(value, timer->irq_ena);
|
|
__omap_dm_timer_write(timer, OMAP_TIMER_WAKEUP_EN_REG, value, 0);
|
|
__omap_dm_timer_write(timer, OMAP_TIMER_WAKEUP_EN_REG, value, 0);
|
|
}
|
|
}
|
|
|
|
|
|
@@ -412,7 +412,7 @@ __omap_dm_timer_read_counter(struct omap_dm_timer *timer, int posted)
|
|
static inline void __omap_dm_timer_write_status(struct omap_dm_timer *timer,
|
|
static inline void __omap_dm_timer_write_status(struct omap_dm_timer *timer,
|
|
unsigned int value)
|
|
unsigned int value)
|
|
{
|
|
{
|
|
- __raw_writel(value, timer->irq_stat);
|
|
|
|
|
|
+ writel_relaxed(value, timer->irq_stat);
|
|
}
|
|
}
|
|
|
|
|
|
#endif /* __ASM_ARCH_DMTIMER_H */
|
|
#endif /* __ASM_ARCH_DMTIMER_H */
|