diff options
author | Vladimir Oltean <vladimir.oltean@nxp.com> | 2021-12-10 01:34:42 +0200 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2021-12-12 12:51:33 +0000 |
commit | bfcf1425222008e7390c0784b0f3bb7b497fccaa (patch) | |
tree | 9d7f646fbc6fd8ffe49912222ab0094ee003eba8 /drivers/net/dsa/sja1105/sja1105_ptp.c | |
parent | net: dsa: sja1105: remove hwts_tx_en from tagger data (diff) | |
download | linux-dev-bfcf1425222008e7390c0784b0f3bb7b497fccaa.tar.xz linux-dev-bfcf1425222008e7390c0784b0f3bb7b497fccaa.zip |
net: dsa: sja1105: make dp->priv point directly to sja1105_tagger_data
The design of the sja1105 tagger dp->priv is that each port has a
separate struct sja1105_port, and the sp->data pointer points to a
common struct sja1105_tagger_data.
We have removed all per-port members accessible by the tagger, and now
only struct sja1105_tagger_data remains. Make dp->priv point directly to
this.
Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/dsa/sja1105/sja1105_ptp.c')
-rw-r--r-- | drivers/net/dsa/sja1105/sja1105_ptp.c | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/drivers/net/dsa/sja1105/sja1105_ptp.c b/drivers/net/dsa/sja1105/sja1105_ptp.c index b97bd4d948f5..9077067328c2 100644 --- a/drivers/net/dsa/sja1105/sja1105_ptp.c +++ b/drivers/net/dsa/sja1105/sja1105_ptp.c @@ -461,22 +461,24 @@ void sja1110_txtstamp(struct dsa_switch *ds, int port, struct sk_buff *skb) { struct sk_buff *clone = SJA1105_SKB_CB(skb)->clone; struct sja1105_private *priv = ds->priv; - struct sja1105_port *sp = &priv->ports[port]; + struct sja1105_tagger_data *tagger_data; u8 ts_id; + tagger_data = &priv->tagger_data; + skb_shinfo(skb)->tx_flags |= SKBTX_IN_PROGRESS; - spin_lock(&sp->data->meta_lock); + spin_lock(&tagger_data->meta_lock); - ts_id = sp->data->ts_id; + ts_id = tagger_data->ts_id; /* Deal automatically with 8-bit wraparound */ - sp->data->ts_id++; + tagger_data->ts_id++; SJA1105_SKB_CB(clone)->ts_id = ts_id; - spin_unlock(&sp->data->meta_lock); + spin_unlock(&tagger_data->meta_lock); - skb_queue_tail(&sp->data->skb_txtstamp_queue, clone); + skb_queue_tail(&tagger_data->skb_txtstamp_queue, clone); } /* Called from dsa_skb_tx_timestamp. This callback is just to clone |