mirror of
https://github.com/torvalds/linux.git
synced 2024-11-25 21:51:40 +00:00
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: Yangbo Lu <yangbo.lu@nxp.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
2019fc96af
commit
d71151a39c
@ -131,8 +131,7 @@ irqreturn_t ptp_qoriq_isr(int irq, void *priv)
|
||||
struct ptp_qoriq *ptp_qoriq = priv;
|
||||
struct ptp_qoriq_registers *regs = &ptp_qoriq->regs;
|
||||
struct ptp_clock_event event;
|
||||
u64 ns;
|
||||
u32 ack = 0, lo, hi, mask, val, irqs;
|
||||
u32 ack = 0, mask, val, irqs;
|
||||
|
||||
spin_lock(&ptp_qoriq->lock);
|
||||
|
||||
@ -153,32 +152,6 @@ irqreturn_t ptp_qoriq_isr(int irq, void *priv)
|
||||
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(®s->alarm_regs->tmr_alarm2_l, lo);
|
||||
ptp_qoriq->write(®s->alarm_regs->tmr_alarm2_h, hi);
|
||||
ptp_qoriq->alarm_value = ns;
|
||||
} else {
|
||||
spin_lock(&ptp_qoriq->lock);
|
||||
mask = ptp_qoriq->read(®s->ctrl_regs->tmr_temask);
|
||||
mask &= ~ALM2EN;
|
||||
ptp_qoriq->write(®s->ctrl_regs->tmr_temask, mask);
|
||||
spin_unlock(&ptp_qoriq->lock);
|
||||
ptp_qoriq->alarm_value = 0;
|
||||
ptp_qoriq->alarm_interval = 0;
|
||||
}
|
||||
}
|
||||
|
||||
if (irqs & PP1) {
|
||||
ack |= PP1;
|
||||
event.type = PTP_CLOCK_PPS;
|
||||
|
@ -149,8 +149,6 @@ struct ptp_qoriq {
|
||||
bool extts_fifo_support;
|
||||
int irq;
|
||||
int phc_index;
|
||||
u64 alarm_interval; /* for periodic alarm */
|
||||
u64 alarm_value;
|
||||
u32 tclk_period; /* nanoseconds */
|
||||
u32 tmr_prsc;
|
||||
u32 tmr_add;
|
||||
|
Loading…
Reference in New Issue
Block a user