netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 1/2] ether: Add ETH_P_OPCUA macro
@ 2019-12-18 22:44 Andre Guedes
  2019-12-18 22:44 ` [PATCH 2/2] ether: Add ETH_P_AVTP macro Andre Guedes
  2019-12-18 23:12 ` [PATCH 1/2] ether: Add ETH_P_OPCUA macro David Miller
  0 siblings, 2 replies; 5+ messages in thread
From: Andre Guedes @ 2019-12-18 22:44 UTC (permalink / raw)
  To: netdev; +Cc: Andre Guedes

This patch adds the ETH_P_OPCUA macro which defines the 'OPC UA over
TSN' ethertype assigned to 0xB62C, according to:

http://standards-oui.ieee.org/ethertype/eth.txt

Signed-off-by: Andre Guedes <andre.guedes@intel.com>
---
 include/uapi/linux/if_ether.h | 1 +
 1 file changed, 1 insertion(+)

diff --git a/include/uapi/linux/if_ether.h b/include/uapi/linux/if_ether.h
index f6ceb2e63d1e..0752281ee05a 100644
--- a/include/uapi/linux/if_ether.h
+++ b/include/uapi/linux/if_ether.h
@@ -109,6 +109,7 @@
 #define ETH_P_QINQ1	0x9100		/* deprecated QinQ VLAN [ NOT AN OFFICIALLY REGISTERED ID ] */
 #define ETH_P_QINQ2	0x9200		/* deprecated QinQ VLAN [ NOT AN OFFICIALLY REGISTERED ID ] */
 #define ETH_P_QINQ3	0x9300		/* deprecated QinQ VLAN [ NOT AN OFFICIALLY REGISTERED ID ] */
+#define ETH_P_OPCUA	0xB62C		/* OPC UA over TSN */
 #define ETH_P_EDSA	0xDADA		/* Ethertype DSA [ NOT AN OFFICIALLY REGISTERED ID ] */
 #define ETH_P_DSA_8021Q	0xDADB		/* Fake VLAN Header for DSA [ NOT AN OFFICIALLY REGISTERED ID ] */
 #define ETH_P_IFE	0xED3E		/* ForCES inter-FE LFB type */
-- 
2.24.1


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [PATCH 2/2] ether: Add ETH_P_AVTP macro
  2019-12-18 22:44 [PATCH 1/2] ether: Add ETH_P_OPCUA macro Andre Guedes
@ 2019-12-18 22:44 ` Andre Guedes
  2019-12-18 23:12   ` David Miller
  2019-12-18 23:12 ` [PATCH 1/2] ether: Add ETH_P_OPCUA macro David Miller
  1 sibling, 1 reply; 5+ messages in thread
From: Andre Guedes @ 2019-12-18 22:44 UTC (permalink / raw)
  To: netdev; +Cc: Andre Guedes

This patch adds the ETH_P_AVTP macro which defines the Audio/Video
Transport Protocol (AVTP) ethertype assigned to 0x22F0, according to:

http://standards-oui.ieee.org/ethertype/eth.txt

AVTP is the transport protocol utilized in Audio/Video Bridging (AVB),
and it is defined by IEEE 1722 standard.

Note that we have ETH_P_TSN macro defined with the number assigned to
AVTP. However, there is no "TSN" ethertype. TSN is not a protocol, but a
set of features to deliver networking determinism, so ETH_P_TSN can be a
bit misleading. For compatibility reasons we should keep it around.
This patch re-defines it using the ETH_P_AVTP macro to make it explicit.

Signed-off-by: Andre Guedes <andre.guedes@intel.com>
---
 include/uapi/linux/if_ether.h | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/include/uapi/linux/if_ether.h b/include/uapi/linux/if_ether.h
index 0752281ee05a..c75cb646ba08 100644
--- a/include/uapi/linux/if_ether.h
+++ b/include/uapi/linux/if_ether.h
@@ -47,7 +47,8 @@
 #define ETH_P_LOOP	0x0060		/* Ethernet Loopback packet	*/
 #define ETH_P_PUP	0x0200		/* Xerox PUP packet		*/
 #define ETH_P_PUPAT	0x0201		/* Xerox PUP Addr Trans packet	*/
-#define ETH_P_TSN	0x22F0		/* TSN (IEEE 1722) packet	*/
+#define ETH_P_AVTP	0x22F0		/* AVTP (IEEE 1722)		*/
+#define ETH_P_TSN	ETH_P_AVTP	/* There is no TSN ethertype, we define it for compatibility reasons */
 #define ETH_P_ERSPAN2	0x22EB		/* ERSPAN version 2 (type III)	*/
 #define ETH_P_IP	0x0800		/* Internet Protocol packet	*/
 #define ETH_P_X25	0x0805		/* CCITT X.25			*/
-- 
2.24.1


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* Re: [PATCH 1/2] ether: Add ETH_P_OPCUA macro
  2019-12-18 22:44 [PATCH 1/2] ether: Add ETH_P_OPCUA macro Andre Guedes
  2019-12-18 22:44 ` [PATCH 2/2] ether: Add ETH_P_AVTP macro Andre Guedes
@ 2019-12-18 23:12 ` David Miller
  1 sibling, 0 replies; 5+ messages in thread
From: David Miller @ 2019-12-18 23:12 UTC (permalink / raw)
  To: andre.guedes; +Cc: netdev

From: Andre Guedes <andre.guedes@intel.com>
Date: Wed, 18 Dec 2019 14:44:47 -0800

> This patch adds the ETH_P_OPCUA macro which defines the 'OPC UA over
> TSN' ethertype assigned to 0xB62C, according to:
> 
> http://standards-oui.ieee.org/ethertype/eth.txt
> 
> Signed-off-by: Andre Guedes <andre.guedes@intel.com>

Add then when there is also an in-kernel user as well.

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH 2/2] ether: Add ETH_P_AVTP macro
  2019-12-18 22:44 ` [PATCH 2/2] ether: Add ETH_P_AVTP macro Andre Guedes
@ 2019-12-18 23:12   ` David Miller
  2019-12-19  0:10     ` Andre Guedes
  0 siblings, 1 reply; 5+ messages in thread
From: David Miller @ 2019-12-18 23:12 UTC (permalink / raw)
  To: andre.guedes; +Cc: netdev

From: Andre Guedes <andre.guedes@intel.com>
Date: Wed, 18 Dec 2019 14:44:48 -0800

> This patch adds the ETH_P_AVTP macro which defines the Audio/Video
> Transport Protocol (AVTP) ethertype assigned to 0x22F0, according to:
> 
> http://standards-oui.ieee.org/ethertype/eth.txt
> 
> AVTP is the transport protocol utilized in Audio/Video Bridging (AVB),
> and it is defined by IEEE 1722 standard.
> 
> Note that we have ETH_P_TSN macro defined with the number assigned to
> AVTP. However, there is no "TSN" ethertype. TSN is not a protocol, but a
> set of features to deliver networking determinism, so ETH_P_TSN can be a
> bit misleading. For compatibility reasons we should keep it around.
> This patch re-defines it using the ETH_P_AVTP macro to make it explicit.
> 
> Signed-off-by: Andre Guedes <andre.guedes@intel.com>

Likewise, let's see an in-kernel user first.

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH 2/2] ether: Add ETH_P_AVTP macro
  2019-12-18 23:12   ` David Miller
@ 2019-12-19  0:10     ` Andre Guedes
  0 siblings, 0 replies; 5+ messages in thread
From: Andre Guedes @ 2019-12-19  0:10 UTC (permalink / raw)
  To: David Miller, andre.guedes; +Cc: netdev

Hi David,

Quoting David Miller (2019-12-18 15:12:21)
> From: Andre Guedes <andre.guedes@intel.com>
> Date: Wed, 18 Dec 2019 14:44:48 -0800
> 
> > This patch adds the ETH_P_AVTP macro which defines the Audio/Video
> > Transport Protocol (AVTP) ethertype assigned to 0x22F0, according to:
> > 
> > http://standards-oui.ieee.org/ethertype/eth.txt
> > 
> > AVTP is the transport protocol utilized in Audio/Video Bridging (AVB),
> > and it is defined by IEEE 1722 standard.
> > 
> > Note that we have ETH_P_TSN macro defined with the number assigned to
> > AVTP. However, there is no "TSN" ethertype. TSN is not a protocol, but a
> > set of features to deliver networking determinism, so ETH_P_TSN can be a
> > bit misleading. For compatibility reasons we should keep it around.
> > This patch re-defines it using the ETH_P_AVTP macro to make it explicit.
> > 
> > Signed-off-by: Andre Guedes <andre.guedes@intel.com>
> 
> Likewise, let's see an in-kernel user first.

I don't think we are going to see an in-kernel user for these ethertypes since
these protocols are implemented in user-space. For instance, we have AVTP
plugins in upstream ALSA [1] and GStreamer [2] that implement AVB. The plugins
are currently using ETH_P_TSN for convenience to send/receive AVTP packets.

Regards,

Andre

[1] https://github.com/alsa-project/alsa-plugins/blob/master/aaf/pcm_aaf.c#L283

[2] https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/blob/master/ext/avtp/gstavtpsink.c#L245

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2019-12-19  0:10 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-12-18 22:44 [PATCH 1/2] ether: Add ETH_P_OPCUA macro Andre Guedes
2019-12-18 22:44 ` [PATCH 2/2] ether: Add ETH_P_AVTP macro Andre Guedes
2019-12-18 23:12   ` David Miller
2019-12-19  0:10     ` Andre Guedes
2019-12-18 23:12 ` [PATCH 1/2] ether: Add ETH_P_OPCUA macro David Miller

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).