blob: 6d435f373412e809411eefc292aef9df7d90deda [file] [log] [blame]
Elliott Hughes180edef2023-11-02 00:08:05 +00001/*
2 * This file is auto-generated. Modifications will be lost.
3 *
4 * See https://android.googlesource.com/platform/bionic/+/master/libc/kernel/
5 * for more information.
6 */
Ben Cheng655a7c02013-10-16 16:09:24 -07007#ifndef _UAPI__RFKILL_H
8#define _UAPI__RFKILL_H
9#include <linux/types.h>
10#define RFKILL_STATE_SOFT_BLOCKED 0
Ben Cheng655a7c02013-10-16 16:09:24 -070011#define RFKILL_STATE_UNBLOCKED 1
12#define RFKILL_STATE_HARD_BLOCKED 2
13enum rfkill_type {
Tao Baod7db5942015-01-28 10:07:51 -080014 RFKILL_TYPE_ALL = 0,
Tao Baod7db5942015-01-28 10:07:51 -080015 RFKILL_TYPE_WLAN,
16 RFKILL_TYPE_BLUETOOTH,
17 RFKILL_TYPE_UWB,
18 RFKILL_TYPE_WIMAX,
Tao Baod7db5942015-01-28 10:07:51 -080019 RFKILL_TYPE_WWAN,
20 RFKILL_TYPE_GPS,
21 RFKILL_TYPE_FM,
22 RFKILL_TYPE_NFC,
Tao Baod7db5942015-01-28 10:07:51 -080023 NUM_RFKILL_TYPES,
Ben Cheng655a7c02013-10-16 16:09:24 -070024};
25enum rfkill_operation {
Tao Baod7db5942015-01-28 10:07:51 -080026 RFKILL_OP_ADD = 0,
Tao Baod7db5942015-01-28 10:07:51 -080027 RFKILL_OP_DEL,
28 RFKILL_OP_CHANGE,
29 RFKILL_OP_CHANGE_ALL,
Ben Cheng655a7c02013-10-16 16:09:24 -070030};
Christopher Ferris05667cd2021-02-16 16:01:34 -080031enum rfkill_hard_block_reasons {
32 RFKILL_HARD_BLOCK_SIGNAL = 1 << 0,
33 RFKILL_HARD_BLOCK_NOT_OWNER = 1 << 1,
34};
Ben Cheng655a7c02013-10-16 16:09:24 -070035struct rfkill_event {
Tao Baod7db5942015-01-28 10:07:51 -080036 __u32 idx;
37 __u8 type;
38 __u8 op;
Christopher Ferris05667cd2021-02-16 16:01:34 -080039 __u8 soft;
40 __u8 hard;
Christopher Ferrisa9750ed2021-05-03 14:02:49 -070041} __attribute__((packed));
42struct rfkill_event_ext {
43 __u32 idx;
44 __u8 type;
45 __u8 op;
46 __u8 soft;
47 __u8 hard;
Christopher Ferris05667cd2021-02-16 16:01:34 -080048 __u8 hard_block_reasons;
Ben Cheng655a7c02013-10-16 16:09:24 -070049} __attribute__((packed));
Christopher Ferrisa9750ed2021-05-03 14:02:49 -070050#define RFKILL_EVENT_SIZE_V1 sizeof(struct rfkill_event)
Ben Cheng655a7c02013-10-16 16:09:24 -070051#define RFKILL_IOC_MAGIC 'R'
Ben Cheng655a7c02013-10-16 16:09:24 -070052#define RFKILL_IOC_NOINPUT 1
53#define RFKILL_IOCTL_NOINPUT _IO(RFKILL_IOC_MAGIC, RFKILL_IOC_NOINPUT)
Christopher Ferris10a76e62022-06-08 13:31:52 -070054#define RFKILL_IOC_MAX_SIZE 2
55#define RFKILL_IOCTL_MAX_SIZE _IOW(RFKILL_IOC_MAGIC, RFKILL_IOC_MAX_SIZE, __u32)
Nick Kralevicha67e4de2013-01-14 11:28:26 -080056#endif