qrtr.h revision 934ec9495505d234b2c2fa284470c2f44aae9de9
1d195e5ab401432ddac659791640a2927fc668699Elliott Hughes/****************************************************************************
2d195e5ab401432ddac659791640a2927fc668699Elliott Hughes ****************************************************************************
3d195e5ab401432ddac659791640a2927fc668699Elliott Hughes ***
4d195e5ab401432ddac659791640a2927fc668699Elliott Hughes ***   This header was automatically generated from a Linux kernel header
5d195e5ab401432ddac659791640a2927fc668699Elliott Hughes ***   of the same name, to make information necessary for userspace to
6d195e5ab401432ddac659791640a2927fc668699Elliott Hughes ***   call into the kernel available to libc.  It contains only constants,
7d195e5ab401432ddac659791640a2927fc668699Elliott Hughes ***   structures, and macros generated from the original header, and thus,
8d195e5ab401432ddac659791640a2927fc668699Elliott Hughes ***   contains no copyrightable information.
9d195e5ab401432ddac659791640a2927fc668699Elliott Hughes ***
10d195e5ab401432ddac659791640a2927fc668699Elliott Hughes ***   To edit the content of this header, modify the corresponding
11d195e5ab401432ddac659791640a2927fc668699Elliott Hughes ***   source file (e.g. under external/kernel-headers/original/) then
12d195e5ab401432ddac659791640a2927fc668699Elliott Hughes ***   run bionic/libc/kernel/tools/update_all.py
13d195e5ab401432ddac659791640a2927fc668699Elliott Hughes ***
14d195e5ab401432ddac659791640a2927fc668699Elliott Hughes ***   Any manual change here will be lost the next time this script will
15d195e5ab401432ddac659791640a2927fc668699Elliott Hughes ***   be run. You've been warned!
169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ***
179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ****************************************************************************
189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ****************************************************************************/
199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#ifndef _LINUX_QRTR_H
209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#define _LINUX_QRTR_H
210795272aa226f4e965968a03daddc53ce30b7cdaMathias Agopian#include <linux/socket.h>
220bd5243b751c9cad317758158f79b3347e7948afBrad Fitzpatrick#include <linux/types.h>
230795272aa226f4e965968a03daddc53ce30b7cdaMathias Agopian#define QRTR_NODE_BCAST 0xffffffffu
249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#define QRTR_PORT_CTRL 0xfffffffeu
259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstruct sockaddr_qrtr {
260795272aa226f4e965968a03daddc53ce30b7cdaMathias Agopian  __kernel_sa_family_t sq_family;
279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project  __u32 sq_node;
289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project  __u32 sq_port;
299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project};
309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectenum qrtr_pkt_type {
319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project  QRTR_TYPE_DATA = 1,
32fc8db53eee11568b286e8d9c17e211bd6781fab6Mike Reed  QRTR_TYPE_HELLO = 2,
339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project  QRTR_TYPE_BYE = 3,
349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project  QRTR_TYPE_NEW_SERVER = 4,
359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project  QRTR_TYPE_DEL_SERVER = 5,
369f8203a159d46124a0907a0d9500e599533beed3Brian Carlstrom  QRTR_TYPE_DEL_CLIENT = 6,
379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project  QRTR_TYPE_RESUME_TX = 7,
389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project  QRTR_TYPE_EXIT = 8,
399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project  QRTR_TYPE_PING = 9,
409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project  QRTR_TYPE_NEW_LOOKUP = 10,
419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project  QRTR_TYPE_DEL_LOOKUP = 11,
429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project};
439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstruct qrtr_ctrl_pkt {
449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project  __le32 cmd;
459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project  union {
469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    struct {
479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project      __le32 service;
489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project      __le32 instance;
499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project      __le32 node;
509066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project      __le32 port;
519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    } server;
529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    struct {
539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project      __le32 node;
546b849e2123be98eb2a1a25b8abf0b13a279ce952Wei-Ta Chen      __le32 port;
559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    } client;
56d0d7eaf129b48ea04c06902a11c2a4f74056d76cLeon Scroggins III  };
579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} __packed;
589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif
599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project