cpp-d1064d
[cross.git] / i686-linux-gnu-4.7 / usr / include / linux / qrtr.h
diff --git a/i686-linux-gnu-4.7/usr/include/linux/qrtr.h b/i686-linux-gnu-4.7/usr/include/linux/qrtr.h
new file mode 100644 (file)
index 0000000..4bbada4
--- /dev/null
@@ -0,0 +1,49 @@
+/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
+#ifndef _LINUX_QRTR_H
+#define _LINUX_QRTR_H
+
+#include <linux/socket.h>
+#include <linux/types.h>
+
+#define QRTR_NODE_BCAST        0xffffffffu
+#define QRTR_PORT_CTRL 0xfffffffeu
+
+struct sockaddr_qrtr {
+       __kernel_sa_family_t sq_family;
+       __u32 sq_node;
+       __u32 sq_port;
+};
+
+enum qrtr_pkt_type {
+       QRTR_TYPE_DATA          = 1,
+       QRTR_TYPE_HELLO         = 2,
+       QRTR_TYPE_BYE           = 3,
+       QRTR_TYPE_NEW_SERVER    = 4,
+       QRTR_TYPE_DEL_SERVER    = 5,
+       QRTR_TYPE_DEL_CLIENT    = 6,
+       QRTR_TYPE_RESUME_TX     = 7,
+       QRTR_TYPE_EXIT          = 8,
+       QRTR_TYPE_PING          = 9,
+       QRTR_TYPE_NEW_LOOKUP    = 10,
+       QRTR_TYPE_DEL_LOOKUP    = 11,
+};
+
+struct qrtr_ctrl_pkt {
+       __le32 cmd;
+
+       union {
+               struct {
+                       __le32 service;
+                       __le32 instance;
+                       __le32 node;
+                       __le32 port;
+               } server;
+
+               struct {
+                       __le32 node;
+                       __le32 port;
+               } client;
+       };
+} __attribute__((packed));
+
+#endif /* _LINUX_QRTR_H */