blob: 999d1b7db19fbc17f36303e19253a155986e9571 [file] [log] [blame]
Ben Cheng655a7c02013-10-16 16:09:24 -07001/****************************************************************************
2 ****************************************************************************
3 ***
4 *** This header was automatically generated from a Linux kernel header
5 *** of the same name, to make information necessary for userspace to
6 *** call into the kernel available to libc. It contains only constants,
7 *** structures, and macros generated from the original header, and thus,
8 *** contains no copyrightable information.
9 ***
10 *** To edit the content of this header, modify the corresponding
11 *** source file (e.g. under external/kernel-headers/original/) then
12 *** run bionic/libc/kernel/tools/update_all.py
13 ***
14 *** Any manual change here will be lost the next time this script will
15 *** be run. You've been warned!
16 ***
17 ****************************************************************************
18 ****************************************************************************/
19#ifndef _LINUX_CAIF_SOCKET_H
20#define _LINUX_CAIF_SOCKET_H
21#include <linux/types.h>
22#include <linux/socket.h>
Ben Cheng655a7c02013-10-16 16:09:24 -070023enum caif_link_selector {
Tao Baod7db5942015-01-28 10:07:51 -080024 CAIF_LINK_HIGH_BANDW,
25 CAIF_LINK_LOW_LATENCY
Ben Cheng655a7c02013-10-16 16:09:24 -070026};
Ben Cheng655a7c02013-10-16 16:09:24 -070027enum caif_channel_priority {
Tao Baod7db5942015-01-28 10:07:51 -080028 CAIF_PRIO_MIN = 0x01,
29 CAIF_PRIO_LOW = 0x04,
30 CAIF_PRIO_NORMAL = 0x0f,
Tao Baod7db5942015-01-28 10:07:51 -080031 CAIF_PRIO_HIGH = 0x14,
32 CAIF_PRIO_MAX = 0x1F
Ben Cheng655a7c02013-10-16 16:09:24 -070033};
34enum caif_protocol_type {
Tao Baod7db5942015-01-28 10:07:51 -080035 CAIFPROTO_AT,
36 CAIFPROTO_DATAGRAM,
37 CAIFPROTO_DATAGRAM_LOOP,
38 CAIFPROTO_UTIL,
Tao Baod7db5942015-01-28 10:07:51 -080039 CAIFPROTO_RFM,
40 CAIFPROTO_DEBUG,
41 _CAIFPROTO_MAX
Ben Cheng655a7c02013-10-16 16:09:24 -070042};
Ben Cheng655a7c02013-10-16 16:09:24 -070043#define CAIFPROTO_MAX _CAIFPROTO_MAX
44enum caif_at_type {
Tao Baod7db5942015-01-28 10:07:51 -080045 CAIF_ATTYPE_PLAIN = 2
Ben Cheng655a7c02013-10-16 16:09:24 -070046};
Ben Cheng655a7c02013-10-16 16:09:24 -070047enum caif_debug_type {
Tao Baod7db5942015-01-28 10:07:51 -080048 CAIF_DEBUG_TRACE_INTERACTIVE = 0,
49 CAIF_DEBUG_TRACE,
50 CAIF_DEBUG_INTERACTIVE,
Ben Cheng655a7c02013-10-16 16:09:24 -070051};
52enum caif_debug_service {
Tao Baod7db5942015-01-28 10:07:51 -080053 CAIF_RADIO_DEBUG_SERVICE = 1,
54 CAIF_APP_DEBUG_SERVICE
Ben Cheng655a7c02013-10-16 16:09:24 -070055};
56struct sockaddr_caif {
Tao Baod7db5942015-01-28 10:07:51 -080057 __kernel_sa_family_t family;
58 union {
Tao Baod7db5942015-01-28 10:07:51 -080059 struct {
60 __u8 type;
61 } at;
62 struct {
Tao Baod7db5942015-01-28 10:07:51 -080063 char service[16];
64 } util;
65 union {
66 __u32 connection_id;
Tao Baod7db5942015-01-28 10:07:51 -080067 __u8 nsapi;
68 } dgm;
69 struct {
70 __u32 connection_id;
Tao Baod7db5942015-01-28 10:07:51 -080071 char volume[16];
72 } rfm;
73 struct {
74 __u8 type;
Tao Baod7db5942015-01-28 10:07:51 -080075 __u8 service;
76 } dbg;
77 } u;
Ben Cheng655a7c02013-10-16 16:09:24 -070078};
Ben Cheng655a7c02013-10-16 16:09:24 -070079enum caif_socket_opts {
Tao Baod7db5942015-01-28 10:07:51 -080080 CAIFSO_LINK_SELECT = 127,
81 CAIFSO_REQ_PARAM = 128,
82 CAIFSO_RSP_PARAM = 129,
Ben Cheng655a7c02013-10-16 16:09:24 -070083};
84#endif