OSDN Git Service

can: extend sockaddr_can to include j1939 members
authorKurt Van Dijck <dev.kurt@vandijck-laurijssen.be>
Mon, 8 Oct 2018 09:48:35 +0000 (11:48 +0200)
committerMarc Kleine-Budde <mkl@pengutronix.de>
Wed, 4 Sep 2019 11:29:15 +0000 (13:29 +0200)
This patch prepares struct sockaddr_can for SAE J1939.

Signed-off-by: Kurt Van Dijck <dev.kurt@vandijck-laurijssen.be>
Signed-off-by: Oleksij Rempel <o.rempel@pengutronix.de>
Acked-by: Oliver Hartkopp <socketcan@hartkopp.net>
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
include/uapi/linux/can.h

index 06d92d6..1e988fd 100644 (file)
@@ -175,6 +175,23 @@ struct sockaddr_can {
                /* transport protocol class address information (e.g. ISOTP) */
                struct { canid_t rx_id, tx_id; } tp;
 
+               /* J1939 address information */
+               struct {
+                       /* 8 byte name when using dynamic addressing */
+                       __u64 name;
+
+                       /* pgn:
+                        * 8 bit: PS in PDU2 case, else 0
+                        * 8 bit: PF
+                        * 1 bit: DP
+                        * 1 bit: reserved
+                        */
+                       __u32 pgn;
+
+                       /* 1 byte address */
+                       __u8 addr;
+               } j1939;
+
                /* reserved for future CAN protocols address information */
        } can_addr;
 };