Commit d71151a3 authored by Yangbo Lu's avatar Yangbo Lu Committed by David S. Miller

ptp_qoriq: drop the code of alarm

The alarm function hadn't been supported by PTP clock driver.
The recommended solution PHC + phc2sys + nanosleep provides
best performance. So drop the code of alarm in ptp_qoriq driver.
Signed-off-by: default avatarYangbo Lu <yangbo.lu@nxp.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 2019fc96
...@@ -131,8 +131,7 @@ irqreturn_t ptp_qoriq_isr(int irq, void *priv) ...@@ -131,8 +131,7 @@ irqreturn_t ptp_qoriq_isr(int irq, void *priv)
struct ptp_qoriq *ptp_qoriq = priv; struct ptp_qoriq *ptp_qoriq = priv;
struct ptp_qoriq_registers *regs = &ptp_qoriq->regs; struct ptp_qoriq_registers *regs = &ptp_qoriq->regs;
struct ptp_clock_event event; struct ptp_clock_event event;
u64 ns; u32 ack = 0, mask, val, irqs;
u32 ack = 0, lo, hi, mask, val, irqs;
spin_lock(&ptp_qoriq->lock); spin_lock(&ptp_qoriq->lock);
...@@ -153,32 +152,6 @@ irqreturn_t ptp_qoriq_isr(int irq, void *priv) ...@@ -153,32 +152,6 @@ irqreturn_t ptp_qoriq_isr(int irq, void *priv)
extts_clean_up(ptp_qoriq, 1, true); extts_clean_up(ptp_qoriq, 1, true);
} }
if (irqs & ALM2) {
ack |= ALM2;
if (ptp_qoriq->alarm_value) {
event.type = PTP_CLOCK_ALARM;
event.index = 0;
event.timestamp = ptp_qoriq->alarm_value;
ptp_clock_event(ptp_qoriq->clock, &event);
}
if (ptp_qoriq->alarm_interval) {
ns = ptp_qoriq->alarm_value + ptp_qoriq->alarm_interval;
hi = ns >> 32;
lo = ns & 0xffffffff;
ptp_qoriq->write(&regs->alarm_regs->tmr_alarm2_l, lo);
ptp_qoriq->write(&regs->alarm_regs->tmr_alarm2_h, hi);
ptp_qoriq->alarm_value = ns;
} else {
spin_lock(&ptp_qoriq->lock);
mask = ptp_qoriq->read(&regs->ctrl_regs->tmr_temask);
mask &= ~ALM2EN;
ptp_qoriq->write(&regs->ctrl_regs->tmr_temask, mask);
spin_unlock(&ptp_qoriq->lock);
ptp_qoriq->alarm_value = 0;
ptp_qoriq->alarm_interval = 0;
}
}
if (irqs & PP1) { if (irqs & PP1) {
ack |= PP1; ack |= PP1;
event.type = PTP_CLOCK_PPS; event.type = PTP_CLOCK_PPS;
......
...@@ -149,8 +149,6 @@ struct ptp_qoriq { ...@@ -149,8 +149,6 @@ struct ptp_qoriq {
bool extts_fifo_support; bool extts_fifo_support;
int irq; int irq;
int phc_index; int phc_index;
u64 alarm_interval; /* for periodic alarm */
u64 alarm_value;
u32 tclk_period; /* nanoseconds */ u32 tclk_period; /* nanoseconds */
u32 tmr_prsc; u32 tmr_prsc;
u32 tmr_add; u32 tmr_add;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment