aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/include/linux/fsl
diff options
context:
space:
mode:
authorYangbo Lu <yangbo.lu@nxp.com>2019-01-21 18:41:39 +0800
committerDavid S. Miller <davem@davemloft.net>2019-01-22 20:21:57 -0800
commit6815d8b09282c1df8e016bd2fabf25ada6d4462b (patch)
tree658b93ac82b2f6d853e60a85694e903c2f778e16 /include/linux/fsl
parentptp_qoriq: fix interrupt enabling and handling (diff)
downloadwireguard-linux-6815d8b09282c1df8e016bd2fabf25ada6d4462b.tar.xz
wireguard-linux-6815d8b09282c1df8e016bd2fabf25ada6d4462b.zip
ptp_qoriq: support external trigger stamp FIFO
The external trigger stamp FIFO was introduced as a new feature for QorIQ 1588 timer IP block. This patch is to support it by adding a new dts property "fsl,extts-fifo". Any QorIQ 1588 timer supporting this feature is required to add this property in its dts node. In addition, the FIFO should be cleaned up before enabling external trigger interrupts. Otherwise, there will be interrupts immediately just after enabling external trigger interrupts. Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com> Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/linux/fsl')
-rw-r--r--include/linux/fsl/ptp_qoriq.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/include/linux/fsl/ptp_qoriq.h b/include/linux/fsl/ptp_qoriq.h
index c1f003aadcce..43b4b442f6a4 100644
--- a/include/linux/fsl/ptp_qoriq.h
+++ b/include/linux/fsl/ptp_qoriq.h
@@ -120,6 +120,8 @@ struct qoriq_ptp_registers {
/* Bit definitions for the TMR_STAT register */
#define STAT_VEC_SHIFT (0) /* Timer general purpose status vector */
#define STAT_VEC_MASK (0x3f)
+#define ETS1_VLD (1<<24)
+#define ETS2_VLD (1<<25)
/* Bit definitions for the TMR_PRSC register */
#define PRSC_OCK_SHIFT (0) /* Output clock division/prescale factor. */
@@ -141,6 +143,7 @@ struct qoriq_ptp {
struct ptp_clock *clock;
struct ptp_clock_info caps;
struct resource *rsrc;
+ bool extts_fifo_support;
int irq;
int phc_index;
u64 alarm_interval; /* for periodic alarm */