Linux cpanel.rrshost.in 5.15.0-25-generic #25-Ubuntu SMP Wed Mar 30 15:54:22 UTC 2022 x86_64
Apache
: 109.123.238.221 | : 172.70.179.179
138 Domain
8.2.28
aev999
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
CREATE RDP
PHP Mailer
BACKCONNECT
HASH IDENTIFIER
README
+ Create Folder
+ Create File
/
usr /
include /
linux /
[ HOME SHELL ]
Name
Size
Permission
Action
android
[ DIR ]
drwxr-xr-x
byteorder
[ DIR ]
drwxr-xr-x
caif
[ DIR ]
drwxr-xr-x
can
[ DIR ]
drwxr-xr-x
cifs
[ DIR ]
drwxr-xr-x
dvb
[ DIR ]
drwxr-xr-x
genwqe
[ DIR ]
drwxr-xr-x
hdlc
[ DIR ]
drwxr-xr-x
hsi
[ DIR ]
drwxr-xr-x
iio
[ DIR ]
drwxr-xr-x
isdn
[ DIR ]
drwxr-xr-x
misc
[ DIR ]
drwxr-xr-x
mmc
[ DIR ]
drwxr-xr-x
netfilter
[ DIR ]
drwxr-xr-x
netfilter_arp
[ DIR ]
drwxr-xr-x
netfilter_bridge
[ DIR ]
drwxr-xr-x
netfilter_ipv4
[ DIR ]
drwxr-xr-x
netfilter_ipv6
[ DIR ]
drwxr-xr-x
nfsd
[ DIR ]
drwxr-xr-x
raid
[ DIR ]
drwxr-xr-x
sched
[ DIR ]
drwxr-xr-x
spi
[ DIR ]
drwxr-xr-x
sunrpc
[ DIR ]
drwxr-xr-x
surface_aggregator
[ DIR ]
drwxr-xr-x
tc_act
[ DIR ]
drwxr-xr-x
tc_ematch
[ DIR ]
drwxr-xr-x
usb
[ DIR ]
drwxr-xr-x
a.out.h
6.73
KB
-rw-r--r--
acct.h
3.74
KB
-rw-r--r--
acrn.h
16.3
KB
-rw-r--r--
adb.h
1.11
KB
-rw-r--r--
adfs_fs.h
993
B
-rw-r--r--
affs_hardblocks.h
1.54
KB
-rw-r--r--
agpgart.h
3.85
KB
-rw-r--r--
aio_abi.h
3.32
KB
-rw-r--r--
am437x-vpfe.h
3.59
KB
-rw-r--r--
apm_bios.h
3.6
KB
-rw-r--r--
arcfb.h
213
B
-rw-r--r--
arm_sdei.h
2.69
KB
-rw-r--r--
aspeed-lpc-ctrl.h
1.74
KB
-rw-r--r--
aspeed-p2a-ctrl.h
1.86
KB
-rw-r--r--
atalk.h
1023
B
-rw-r--r--
atm.h
7.7
KB
-rw-r--r--
atm_eni.h
648
B
-rw-r--r--
atm_he.h
406
B
-rw-r--r--
atm_idt77105.h
955
B
-rw-r--r--
atm_nicstar.h
1.25
KB
-rw-r--r--
atm_tcp.h
1.58
KB
-rw-r--r--
atm_zatm.h
1.5
KB
-rw-r--r--
atmapi.h
952
B
-rw-r--r--
atmarp.h
1.27
KB
-rw-r--r--
atmbr2684.h
3.19
KB
-rw-r--r--
atmclip.h
576
B
-rw-r--r--
atmdev.h
7.5
KB
-rw-r--r--
atmioc.h
1.61
KB
-rw-r--r--
atmlec.h
2.33
KB
-rw-r--r--
atmmpc.h
4.13
KB
-rw-r--r--
atmppp.h
639
B
-rw-r--r--
atmsap.h
4.85
KB
-rw-r--r--
atmsvc.h
1.81
KB
-rw-r--r--
audit.h
20.75
KB
-rw-r--r--
aufs_type.h
10.9
KB
-rw-r--r--
auto_dev-ioctl.h
4.87
KB
-rw-r--r--
auto_fs.h
6.28
KB
-rw-r--r--
auto_fs4.h
451
B
-rw-r--r--
auxvec.h
1.56
KB
-rw-r--r--
ax25.h
2.76
KB
-rw-r--r--
batadv_packet.h
19.87
KB
-rw-r--r--
batman_adv.h
16.49
KB
-rw-r--r--
baycom.h
883
B
-rw-r--r--
bcache.h
9.74
KB
-rw-r--r--
bcm933xx_hcs.h
419
B
-rw-r--r--
bfs_fs.h
1.86
KB
-rw-r--r--
binfmts.h
776
B
-rw-r--r--
blkpg.h
904
B
-rw-r--r--
blktrace_api.h
4.59
KB
-rw-r--r--
blkzoned.h
6.34
KB
-rw-r--r--
bpf.h
229.48
KB
-rw-r--r--
bpf_common.h
1.33
KB
-rw-r--r--
bpf_perf_event.h
529
B
-rw-r--r--
bpfilter.h
465
B
-rw-r--r--
bpqether.h
981
B
-rw-r--r--
bsg.h
2.44
KB
-rw-r--r--
bt-bmc.h
572
B
-rw-r--r--
btf.h
4.68
KB
-rw-r--r--
btrfs.h
30.13
KB
-rw-r--r--
btrfs_tree.h
26.72
KB
-rw-r--r--
can.h
9.04
KB
-rw-r--r--
capability.h
13.18
KB
-rw-r--r--
capi.h
3.05
KB
-rw-r--r--
cciss_defs.h
3.2
KB
-rw-r--r--
cciss_ioctl.h
2.7
KB
-rw-r--r--
ccs.h
767
B
-rw-r--r--
cdrom.h
28.22
KB
-rw-r--r--
cec-funcs.h
52.79
KB
-rw-r--r--
cec.h
40.44
KB
-rw-r--r--
cfm_bridge.h
1.42
KB
-rw-r--r--
cgroupstats.h
2.17
KB
-rw-r--r--
chio.h
5.16
KB
-rw-r--r--
close_range.h
377
B
-rw-r--r--
cm4000_cs.h
1.76
KB
-rw-r--r--
cn_proc.h
3.38
KB
-rw-r--r--
coda.h
17.79
KB
-rw-r--r--
coff.h
12.25
KB
-rw-r--r--
connector.h
2.2
KB
-rw-r--r--
const.h
991
B
-rw-r--r--
coresight-stm.h
747
B
-rw-r--r--
cramfs_fs.h
3.47
KB
-rw-r--r--
cryptouser.h
5.2
KB
-rw-r--r--
cuda.h
905
B
-rw-r--r--
cxl_mem.h
6.32
KB
-rw-r--r--
cyclades.h
969
B
-rw-r--r--
cycx_cfm.h
2.92
KB
-rw-r--r--
dcbnl.h
24.7
KB
-rw-r--r--
dccp.h
6.29
KB
-rw-r--r--
devlink.h
19.72
KB
-rw-r--r--
dlm.h
2.49
KB
-rw-r--r--
dlm_device.h
2.48
KB
-rw-r--r--
dlm_netlink.h
1.13
KB
-rw-r--r--
dlm_plock.h
894
B
-rw-r--r--
dlmconstants.h
4.96
KB
-rw-r--r--
dm-ioctl.h
11.33
KB
-rw-r--r--
dm-log-userspace.h
14.83
KB
-rw-r--r--
dma-buf.h
3.69
KB
-rw-r--r--
dma-heap.h
1.36
KB
-rw-r--r--
dns_resolver.h
3.86
KB
-rw-r--r--
dqblk_xfs.h
9.17
KB
-rw-r--r--
edd.h
5.47
KB
-rw-r--r--
efs_fs_sb.h
2.17
KB
-rw-r--r--
elf-em.h
2.53
KB
-rw-r--r--
elf-fdpic.h
1.1
KB
-rw-r--r--
elf.h
13.83
KB
-rw-r--r--
errno.h
23
B
-rw-r--r--
errqueue.h
1.94
KB
-rw-r--r--
erspan.h
1.03
KB
-rw-r--r--
ethtool.h
80.6
KB
-rw-r--r--
ethtool_netlink.h
22.53
KB
-rw-r--r--
eventpoll.h
2.84
KB
-rw-r--r--
f2fs.h
3.22
KB
-rw-r--r--
fadvise.h
842
B
-rw-r--r--
falloc.h
3.5
KB
-rw-r--r--
fanotify.h
7.3
KB
-rw-r--r--
fb.h
16.09
KB
-rw-r--r--
fcntl.h
4.15
KB
-rw-r--r--
fd.h
11.83
KB
-rw-r--r--
fdreg.h
5.24
KB
-rw-r--r--
fib_rules.h
1.99
KB
-rw-r--r--
fiemap.h
2.71
KB
-rw-r--r--
filter.h
2.16
KB
-rw-r--r--
firewire-cdev.h
43.2
KB
-rw-r--r--
firewire-constants.h
3.16
KB
-rw-r--r--
fou.h
894
B
-rw-r--r--
fpga-dfl.h
8.52
KB
-rw-r--r--
fs.h
12.01
KB
-rw-r--r--
fscrypt.h
6.42
KB
-rw-r--r--
fsi.h
2.2
KB
-rw-r--r--
fsl_hypervisor.h
7.13
KB
-rw-r--r--
fsl_mc.h
734
B
-rw-r--r--
fsmap.h
4.29
KB
-rw-r--r--
fsverity.h
3.11
KB
-rw-r--r--
fuse.h
22.45
KB
-rw-r--r--
futex.h
4.97
KB
-rw-r--r--
gameport.h
897
B
-rw-r--r--
gen_stats.h
1.49
KB
-rw-r--r--
genetlink.h
2.12
KB
-rw-r--r--
gfs2_ondisk.h
14.43
KB
-rw-r--r--
gpio.h
19.3
KB
-rw-r--r--
gsmmux.h
1.12
KB
-rw-r--r--
gtp.h
716
B
-rw-r--r--
hash_info.h
971
B
-rw-r--r--
hdlc.h
637
B
-rw-r--r--
hdlcdrv.h
2.84
KB
-rw-r--r--
hdreg.h
22.17
KB
-rw-r--r--
hid.h
1.86
KB
-rw-r--r--
hiddev.h
6.2
KB
-rw-r--r--
hidraw.h
1.95
KB
-rw-r--r--
hpet.h
743
B
-rw-r--r--
hsr_netlink.h
1.08
KB
-rw-r--r--
hw_breakpoint.h
742
B
-rw-r--r--
hyperv.h
10.32
KB
-rw-r--r--
i2c-dev.h
1.83
KB
-rw-r--r--
i2c.h
6.73
KB
-rw-r--r--
i2o-dev.h
11.28
KB
-rw-r--r--
i8k.h
1.49
KB
-rw-r--r--
icmp.h
4.67
KB
-rw-r--r--
icmpv6.h
4.17
KB
-rw-r--r--
idxd.h
7.4
KB
-rw-r--r--
if.h
10.67
KB
-rw-r--r--
if_addr.h
1.84
KB
-rw-r--r--
if_addrlabel.h
721
B
-rw-r--r--
if_alg.h
1.53
KB
-rw-r--r--
if_arcnet.h
3.63
KB
-rw-r--r--
if_arp.h
6.43
KB
-rw-r--r--
if_bonding.h
5.02
KB
-rw-r--r--
if_bridge.h
18.66
KB
-rw-r--r--
if_cablemodem.h
986
B
-rw-r--r--
if_eql.h
1.32
KB
-rw-r--r--
if_ether.h
8.24
KB
-rw-r--r--
if_fc.h
1.7
KB
-rw-r--r--
if_fddi.h
4.27
KB
-rw-r--r--
if_hippi.h
4.14
KB
-rw-r--r--
if_infiniband.h
1.22
KB
-rw-r--r--
if_link.h
30.98
KB
-rw-r--r--
if_ltalk.h
210
B
-rw-r--r--
if_macsec.h
6.32
KB
-rw-r--r--
if_packet.h
7.96
KB
-rw-r--r--
if_phonet.h
424
B
-rw-r--r--
if_plip.h
660
B
-rw-r--r--
if_ppp.h
29
B
-rw-r--r--
if_pppol2tp.h
3.23
KB
-rw-r--r--
if_pppox.h
4.76
KB
-rw-r--r--
if_slip.h
872
B
-rw-r--r--
if_team.h
2.54
KB
-rw-r--r--
if_tun.h
4
KB
-rw-r--r--
if_tunnel.h
4.72
KB
-rw-r--r--
if_vlan.h
1.79
KB
-rw-r--r--
if_x25.h
881
B
-rw-r--r--
if_xdp.h
2.94
KB
-rw-r--r--
ife.h
351
B
-rw-r--r--
igmp.h
2.99
KB
-rw-r--r--
ila.h
1.22
KB
-rw-r--r--
in.h
10.63
KB
-rw-r--r--
in6.h
7.4
KB
-rw-r--r--
in_route.h
936
B
-rw-r--r--
inet_diag.h
4.9
KB
-rw-r--r--
inotify.h
3.21
KB
-rw-r--r--
input-event-codes.h
28.21
KB
-rw-r--r--
input.h
15.61
KB
-rw-r--r--
io_uring.h
9.57
KB
-rw-r--r--
ioam6.h
2.33
KB
-rw-r--r--
ioam6_genl.h
945
B
-rw-r--r--
ioam6_iptunnel.h
436
B
-rw-r--r--
ioctl.h
163
B
-rw-r--r--
iommu.h
11.73
KB
-rw-r--r--
ioprio.h
1.42
KB
-rw-r--r--
ip.h
4.7
KB
-rw-r--r--
ip6_tunnel.h
1.91
KB
-rw-r--r--
ip_vs.h
13.8
KB
-rw-r--r--
ipc.h
2.05
KB
-rw-r--r--
ipmi.h
14.7
KB
-rw-r--r--
ipmi_bmc.h
488
B
-rw-r--r--
ipmi_msgdefs.h
3.35
KB
-rw-r--r--
ipsec.h
947
B
-rw-r--r--
ipu-isys.h
481
B
-rw-r--r--
ipu-psys.h
3.48
KB
-rw-r--r--
ipv6.h
4.22
KB
-rw-r--r--
ipv6_route.h
1.86
KB
-rw-r--r--
irqnr.h
104
B
-rw-r--r--
iso_fs.h
6.33
KB
-rw-r--r--
isst_if.h
5.28
KB
-rw-r--r--
ivtv.h
2.95
KB
-rw-r--r--
ivtvfb.h
1.18
KB
-rw-r--r--
jffs2.h
6.66
KB
-rw-r--r--
joystick.h
3.35
KB
-rw-r--r--
kcm.h
822
B
-rw-r--r--
kcmp.h
522
B
-rw-r--r--
kcov.h
1.92
KB
-rw-r--r--
kd.h
6.1
KB
-rw-r--r--
kdev_t.h
383
B
-rw-r--r--
kernel-page-flags.h
900
B
-rw-r--r--
kernel.h
194
B
-rw-r--r--
kernelcapi.h
1019
B
-rw-r--r--
kexec.h
1.87
KB
-rw-r--r--
keyboard.h
13.14
KB
-rw-r--r--
keyctl.h
5.86
KB
-rw-r--r--
kfd_ioctl.h
23.55
KB
-rw-r--r--
kvm.h
59.33
KB
-rw-r--r--
kvm_para.h
1001
B
-rw-r--r--
l2tp.h
5.64
KB
-rw-r--r--
landlock.h
4.67
KB
-rw-r--r--
libc-compat.h
8.09
KB
-rw-r--r--
limits.h
937
B
-rw-r--r--
lirc.h
7.95
KB
-rw-r--r--
llc.h
3.09
KB
-rw-r--r--
loop.h
3.42
KB
-rw-r--r--
lp.h
4.09
KB
-rw-r--r--
lwtunnel.h
2.17
KB
-rw-r--r--
magic.h
3.71
KB
-rw-r--r--
major.h
4.55
KB
-rw-r--r--
map_to_7segment.h
6.45
KB
-rw-r--r--
matroxfb.h
1.43
KB
-rw-r--r--
max2175.h
1.01
KB
-rw-r--r--
mctp.h
736
B
-rw-r--r--
mdio.h
16.87
KB
-rw-r--r--
media-bus-format.h
6.75
KB
-rw-r--r--
media.h
12.41
KB
-rw-r--r--
mei.h
3.39
KB
-rw-r--r--
membarrier.h
9.14
KB
-rw-r--r--
memfd.h
1.29
KB
-rw-r--r--
mempolicy.h
2.51
KB
-rw-r--r--
meye.h
2.47
KB
-rw-r--r--
mii.h
9.27
KB
-rw-r--r--
minix_fs.h
2.07
KB
-rw-r--r--
mman.h
1.55
KB
-rw-r--r--
mmtimer.h
2.07
KB
-rw-r--r--
module.h
255
B
-rw-r--r--
mount.h
4.97
KB
-rw-r--r--
mpls.h
2.25
KB
-rw-r--r--
mpls_iptunnel.h
761
B
-rw-r--r--
mptcp.h
5.55
KB
-rw-r--r--
mqueue.h
2.15
KB
-rw-r--r--
mroute.h
5.78
KB
-rw-r--r--
mroute6.h
4.81
KB
-rw-r--r--
mrp_bridge.h
1.67
KB
-rw-r--r--
msdos_fs.h
6.57
KB
-rw-r--r--
msg.h
3.31
KB
-rw-r--r--
mtio.h
7.98
KB
-rw-r--r--
nbd-netlink.h
2.35
KB
-rw-r--r--
nbd.h
2.95
KB
-rw-r--r--
ncsi.h
4.71
KB
-rw-r--r--
ndctl.h
6.8
KB
-rw-r--r--
neighbour.h
5
KB
-rw-r--r--
net.h
2.04
KB
-rw-r--r--
net_dropmon.h
2.82
KB
-rw-r--r--
net_namespace.h
715
B
-rw-r--r--
net_tstamp.h
5.44
KB
-rw-r--r--
netconf.h
614
B
-rw-r--r--
netdevice.h
2.2
KB
-rw-r--r--
netfilter.h
1.67
KB
-rw-r--r--
netfilter_arp.h
445
B
-rw-r--r--
netfilter_bridge.h
1.14
KB
-rw-r--r--
netfilter_ipv4.h
1.45
KB
-rw-r--r--
netfilter_ipv6.h
1.35
KB
-rw-r--r--
netlink.h
11.32
KB
-rw-r--r--
netlink_diag.h
1.49
KB
-rw-r--r--
netrom.h
807
B
-rw-r--r--
nexthop.h
2.76
KB
-rw-r--r--
nfc.h
10.97
KB
-rw-r--r--
nfs.h
4.39
KB
-rw-r--r--
nfs2.h
1.43
KB
-rw-r--r--
nfs3.h
2.4
KB
-rw-r--r--
nfs4.h
6.34
KB
-rw-r--r--
nfs4_mount.h
1.89
KB
-rw-r--r--
nfs_fs.h
1.6
KB
-rw-r--r--
nfs_idmap.h
2.19
KB
-rw-r--r--
nfs_mount.h
2.09
KB
-rw-r--r--
nfsacl.h
718
B
-rw-r--r--
nilfs2_api.h
7.41
KB
-rw-r--r--
nilfs2_ondisk.h
17.66
KB
-rw-r--r--
nitro_enclaves.h
12.84
KB
-rw-r--r--
nl80211-vnd-intel.h
2.87
KB
-rw-r--r--
nl80211.h
306.65
KB
-rw-r--r--
nsfs.h
639
B
-rw-r--r--
nubus.h
8
KB
-rw-r--r--
nvme_ioctl.h
1.62
KB
-rw-r--r--
nvram.h
532
B
-rw-r--r--
omap3isp.h
20.45
KB
-rw-r--r--
omapfb.h
5.78
KB
-rw-r--r--
oom.h
511
B
-rw-r--r--
openat2.h
1.42
KB
-rw-r--r--
openvswitch.h
38.68
KB
-rw-r--r--
packet_diag.h
1.63
KB
-rw-r--r--
param.h
141
B
-rw-r--r--
parport.h
3.56
KB
-rw-r--r--
patchkey.h
892
B
-rw-r--r--
pci.h
1.35
KB
-rw-r--r--
pci_regs.h
57.28
KB
-rw-r--r--
pcitest.h
878
B
-rw-r--r--
perf_event.h
38.83
KB
-rw-r--r--
personality.h
2.05
KB
-rw-r--r--
pfkeyv2.h
10.32
KB
-rw-r--r--
pg.h
2.34
KB
-rw-r--r--
phantom.h
1.62
KB
-rw-r--r--
phonet.h
4.57
KB
-rw-r--r--
pidfd.h
256
B
-rw-r--r--
pkt_cls.h
17.75
KB
-rw-r--r--
pkt_sched.h
29.4
KB
-rw-r--r--
pktcdvd.h
2.62
KB
-rw-r--r--
pmu.h
5.32
KB
-rw-r--r--
poll.h
22
B
-rw-r--r--
posix_acl.h
1.22
KB
-rw-r--r--
posix_acl_xattr.h
1.09
KB
-rw-r--r--
posix_types.h
1.07
KB
-rw-r--r--
ppdev.h
3.21
KB
-rw-r--r--
ppp-comp.h
2.47
KB
-rw-r--r--
ppp-ioctl.h
5.59
KB
-rw-r--r--
ppp_defs.h
5.43
KB
-rw-r--r--
pps.h
4.62
KB
-rw-r--r--
pr.h
1.05
KB
-rw-r--r--
prctl.h
9.17
KB
-rw-r--r--
psample.h
2.22
KB
-rw-r--r--
psci.h
4.23
KB
-rw-r--r--
psp-sev.h
4.06
KB
-rw-r--r--
ptp_clock.h
7.28
KB
-rw-r--r--
ptrace.h
4.31
KB
-rw-r--r--
qemu_fw_cfg.h
2.41
KB
-rw-r--r--
qnx4_fs.h
2.27
KB
-rw-r--r--
qnxtypes.h
624
B
-rw-r--r--
qrtr.h
893
B
-rw-r--r--
quota.h
6.14
KB
-rw-r--r--
radeonfb.h
360
B
-rw-r--r--
random.h
1.38
KB
-rw-r--r--
rds.h
10.91
KB
-rw-r--r--
reboot.h
1.31
KB
-rw-r--r--
reiserfs_fs.h
775
B
-rw-r--r--
reiserfs_xattr.h
533
B
-rw-r--r--
remoteproc_cdev.h
1.08
KB
-rw-r--r--
resource.h
2.32
KB
-rw-r--r--
rfkill.h
5.96
KB
-rw-r--r--
rio_cm_cdev.h
3.17
KB
-rw-r--r--
rio_mport_cdev.h
9.11
KB
-rw-r--r--
rkisp1-config.h
30.63
KB
-rw-r--r--
romfs_fs.h
1.21
KB
-rw-r--r--
rose.h
2.18
KB
-rw-r--r--
route.h
2.28
KB
-rw-r--r--
rpl.h
814
B
-rw-r--r--
rpl_iptunnel.h
424
B
-rw-r--r--
rpmsg.h
803
B
-rw-r--r--
rpmsg_types.h
288
B
-rw-r--r--
rseq.h
4.6
KB
-rw-r--r--
rtc.h
4.49
KB
-rw-r--r--
rtnetlink.h
20.26
KB
-rw-r--r--
rxrpc.h
4.81
KB
-rw-r--r--
scc.h
4.52
KB
-rw-r--r--
sched.h
6.12
KB
-rw-r--r--
scif_ioctl.h
6.23
KB
-rw-r--r--
screen_info.h
2.42
KB
-rw-r--r--
sctp.h
35.15
KB
-rw-r--r--
seccomp.h
5.6
KB
-rw-r--r--
securebits.h
2.64
KB
-rw-r--r--
sed-opal.h
3.67
KB
-rw-r--r--
seg6.h
1.14
KB
-rw-r--r--
seg6_genl.h
589
B
-rw-r--r--
seg6_hmac.h
423
B
-rw-r--r--
seg6_iptunnel.h
984
B
-rw-r--r--
seg6_local.h
3.25
KB
-rw-r--r--
selinux_netlink.h
1.17
KB
-rw-r--r--
sem.h
2.98
KB
-rw-r--r--
serial.h
3.72
KB
-rw-r--r--
serial_core.h
5.97
KB
-rw-r--r--
serial_reg.h
15.19
KB
-rw-r--r--
serio.h
2.05
KB
-rw-r--r--
shm.h
3.71
KB
-rw-r--r--
signal.h
388
B
-rw-r--r--
signalfd.h
1.2
KB
-rw-r--r--
smc.h
7.82
KB
-rw-r--r--
smc_diag.h
2.77
KB
-rw-r--r--
smiapp.h
1.03
KB
-rw-r--r--
snmp.h
13.62
KB
-rw-r--r--
sock_diag.h
1.27
KB
-rw-r--r--
socket.h
940
B
-rw-r--r--
sockios.h
6.69
KB
-rw-r--r--
sonet.h
2.24
KB
-rw-r--r--
sonypi.h
5.18
KB
-rw-r--r--
sound.h
1.21
KB
-rw-r--r--
soundcard.h
44.96
KB
-rw-r--r--
stat.h
6.57
KB
-rw-r--r--
stddef.h
1.5
KB
-rw-r--r--
stm.h
1.25
KB
-rw-r--r--
string.h
238
B
-rw-r--r--
suspend_ioctls.h
1.4
KB
-rw-r--r--
swab.h
6.78
KB
-rw-r--r--
switchtec_ioctl.h
5.14
KB
-rw-r--r--
sync_file.h
2.82
KB
-rw-r--r--
synclink.h
8.77
KB
-rw-r--r--
sysctl.h
25.31
KB
-rw-r--r--
sysinfo.h
1.02
KB
-rw-r--r--
target_core_user.h
4.52
KB
-rw-r--r--
taskstats.h
7.12
KB
-rw-r--r--
tcp.h
11.65
KB
-rw-r--r--
tcp_metrics.h
1.51
KB
-rw-r--r--
tee.h
13.27
KB
-rw-r--r--
termios.h
172
B
-rw-r--r--
thermal.h
3
KB
-rw-r--r--
time.h
1.71
KB
-rw-r--r--
time_types.h
1.24
KB
-rw-r--r--
timerfd.h
936
B
-rw-r--r--
times.h
278
B
-rw-r--r--
timex.h
7.63
KB
-rw-r--r--
tiocl.h
1.69
KB
-rw-r--r--
tipc.h
8.62
KB
-rw-r--r--
tipc_config.h
14.52
KB
-rw-r--r--
tipc_netlink.h
9.17
KB
-rw-r--r--
tipc_sockets_diag.h
468
B
-rw-r--r--
tls.h
4.79
KB
-rw-r--r--
toshiba.h
1.88
KB
-rw-r--r--
tty.h
1.55
KB
-rw-r--r--
tty_flags.h
4.4
KB
-rw-r--r--
types.h
1.44
KB
-rw-r--r--
udf_fs_i.h
697
B
-rw-r--r--
udmabuf.h
643
B
-rw-r--r--
udp.h
1.65
KB
-rw-r--r--
uhid.h
4.54
KB
-rw-r--r--
uinput.h
9.04
KB
-rw-r--r--
uio.h
732
B
-rw-r--r--
uleds.h
798
B
-rw-r--r--
ultrasound.h
4.46
KB
-rw-r--r--
um_timetravel.h
3.87
KB
-rw-r--r--
un.h
384
B
-rw-r--r--
unistd.h
220
B
-rw-r--r--
unix_diag.h
1.3
KB
-rw-r--r--
usbdevice_fs.h
8.12
KB
-rw-r--r--
usbip.h
640
B
-rw-r--r--
userfaultfd.h
8.89
KB
-rw-r--r--
userio.h
1.48
KB
-rw-r--r--
utime.h
223
B
-rw-r--r--
utsname.h
669
B
-rw-r--r--
uuid.h
1.32
KB
-rw-r--r--
uvcvideo.h
2.52
KB
-rw-r--r--
v4l2-common.h
4.08
KB
-rw-r--r--
v4l2-controls.h
84.38
KB
-rw-r--r--
v4l2-dv-timings.h
30.82
KB
-rw-r--r--
v4l2-mediabus.h
5.29
KB
-rw-r--r--
v4l2-subdev.h
7.6
KB
-rw-r--r--
vbox_err.h
7.09
KB
-rw-r--r--
vbox_vmmdev_types.h
11.38
KB
-rw-r--r--
vboxguest.h
9.15
KB
-rw-r--r--
vdpa.h
966
B
-rw-r--r--
vduse.h
8.1
KB
-rw-r--r--
version.h
218
B
-rw-r--r--
veth.h
224
B
-rw-r--r--
vfio.h
52.53
KB
-rw-r--r--
vfio_ccw.h
1.29
KB
-rw-r--r--
vfio_zdev.h
2.48
KB
-rw-r--r--
vhost.h
6.27
KB
-rw-r--r--
vhost_types.h
3.9
KB
-rw-r--r--
videodev2.h
92.9
KB
-rw-r--r--
virtio_9p.h
2
KB
-rw-r--r--
virtio_balloon.h
5.16
KB
-rw-r--r--
virtio_blk.h
6.7
KB
-rw-r--r--
virtio_bt.h
772
B
-rw-r--r--
virtio_config.h
3.91
KB
-rw-r--r--
virtio_console.h
3.08
KB
-rw-r--r--
virtio_crypto.h
13.56
KB
-rw-r--r--
virtio_fs.h
573
B
-rw-r--r--
virtio_gpio.h
1.03
KB
-rw-r--r--
virtio_gpu.h
10.79
KB
-rw-r--r--
virtio_i2c.h
989
B
-rw-r--r--
virtio_ids.h
4.2
KB
-rw-r--r--
virtio_input.h
2.46
KB
-rw-r--r--
virtio_iommu.h
3.69
KB
-rw-r--r--
virtio_mem.h
6.79
KB
-rw-r--r--
virtio_mmio.h
4.85
KB
-rw-r--r--
virtio_net.h
13.49
KB
-rw-r--r--
virtio_pci.h
7.23
KB
-rw-r--r--
virtio_pcidev.h
2.39
KB
-rw-r--r--
virtio_pmem.h
641
B
-rw-r--r--
virtio_ring.h
8.38
KB
-rw-r--r--
virtio_rng.h
265
B
-rw-r--r--
virtio_scmi.h
637
B
-rw-r--r--
virtio_scsi.h
5.94
KB
-rw-r--r--
virtio_snd.h
9.09
KB
-rw-r--r--
virtio_types.h
2.1
KB
-rw-r--r--
virtio_vsock.h
3.27
KB
-rw-r--r--
vm_sockets.h
6.34
KB
-rw-r--r--
vm_sockets_diag.h
963
B
-rw-r--r--
vmcore.h
455
B
-rw-r--r--
vsockmon.h
1.84
KB
-rw-r--r--
vt.h
2.99
KB
-rw-r--r--
vtpm_proxy.h
1.68
KB
-rw-r--r--
wait.h
682
B
-rw-r--r--
watch_queue.h
3.41
KB
-rw-r--r--
watchdog.h
2.28
KB
-rw-r--r--
wireguard.h
7.57
KB
-rw-r--r--
wireless.h
41.7
KB
-rw-r--r--
wmi.h
1.72
KB
-rw-r--r--
wwan.h
295
B
-rw-r--r--
x25.h
3.48
KB
-rw-r--r--
xattr.h
2.95
KB
-rw-r--r--
xdp_diag.h
1.43
KB
-rw-r--r--
xfrm.h
12.12
KB
-rw-r--r--
xilinx-v4l2-controls.h
2.91
KB
-rw-r--r--
zorro.h
3.22
KB
-rw-r--r--
zorro_ids.h
29.36
KB
-rw-r--r--
Delete
Unzip
Zip
${this.title}
Close
Code Editor : gpio.h
/* SPDX-License-Identifier: GPL-2.0-only WITH Linux-syscall-note */ /* * <linux/gpio.h> - userspace ABI for the GPIO character devices * * Copyright (C) 2016 Linus Walleij * * This program is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License version 2 as published by * the Free Software Foundation. */ #ifndef _GPIO_H_ #define _GPIO_H_ #include <linux/const.h> #include <linux/ioctl.h> #include <linux/types.h> /* * The maximum size of name and label arrays. * * Must be a multiple of 8 to ensure 32/64-bit alignment of structs. */ #define GPIO_MAX_NAME_SIZE 32 /** * struct gpiochip_info - Information about a certain GPIO chip * @name: the Linux kernel name of this GPIO chip * @label: a functional name for this GPIO chip, such as a product * number, may be empty (i.e. label[0] == '\0') * @lines: number of GPIO lines on this chip */ struct gpiochip_info { char name[GPIO_MAX_NAME_SIZE]; char label[GPIO_MAX_NAME_SIZE]; __u32 lines; }; /* * Maximum number of requested lines. * * Must be no greater than 64, as bitmaps are restricted here to 64-bits * for simplicity, and a multiple of 2 to ensure 32/64-bit alignment of * structs. */ #define GPIO_V2_LINES_MAX 64 /* * The maximum number of configuration attributes associated with a line * request. */ #define GPIO_V2_LINE_NUM_ATTRS_MAX 10 /** * enum gpio_v2_line_flag - &struct gpio_v2_line_attribute.flags values * @GPIO_V2_LINE_FLAG_USED: line is not available for request * @GPIO_V2_LINE_FLAG_ACTIVE_LOW: line active state is physical low * @GPIO_V2_LINE_FLAG_INPUT: line is an input * @GPIO_V2_LINE_FLAG_OUTPUT: line is an output * @GPIO_V2_LINE_FLAG_EDGE_RISING: line detects rising (inactive to active) * edges * @GPIO_V2_LINE_FLAG_EDGE_FALLING: line detects falling (active to * inactive) edges * @GPIO_V2_LINE_FLAG_OPEN_DRAIN: line is an open drain output * @GPIO_V2_LINE_FLAG_OPEN_SOURCE: line is an open source output * @GPIO_V2_LINE_FLAG_BIAS_PULL_UP: line has pull-up bias enabled * @GPIO_V2_LINE_FLAG_BIAS_PULL_DOWN: line has pull-down bias enabled * @GPIO_V2_LINE_FLAG_BIAS_DISABLED: line has bias disabled * @GPIO_V2_LINE_FLAG_EVENT_CLOCK_REALTIME: line events contain REALTIME timestamps */ enum gpio_v2_line_flag { GPIO_V2_LINE_FLAG_USED = _BITULL(0), GPIO_V2_LINE_FLAG_ACTIVE_LOW = _BITULL(1), GPIO_V2_LINE_FLAG_INPUT = _BITULL(2), GPIO_V2_LINE_FLAG_OUTPUT = _BITULL(3), GPIO_V2_LINE_FLAG_EDGE_RISING = _BITULL(4), GPIO_V2_LINE_FLAG_EDGE_FALLING = _BITULL(5), GPIO_V2_LINE_FLAG_OPEN_DRAIN = _BITULL(6), GPIO_V2_LINE_FLAG_OPEN_SOURCE = _BITULL(7), GPIO_V2_LINE_FLAG_BIAS_PULL_UP = _BITULL(8), GPIO_V2_LINE_FLAG_BIAS_PULL_DOWN = _BITULL(9), GPIO_V2_LINE_FLAG_BIAS_DISABLED = _BITULL(10), GPIO_V2_LINE_FLAG_EVENT_CLOCK_REALTIME = _BITULL(11), }; /** * struct gpio_v2_line_values - Values of GPIO lines * @bits: a bitmap containing the value of the lines, set to 1 for active * and 0 for inactive. * @mask: a bitmap identifying the lines to get or set, with each bit * number corresponding to the index into &struct * gpio_v2_line_request.offsets. */ struct gpio_v2_line_values { __aligned_u64 bits; __aligned_u64 mask; }; /** * enum gpio_v2_line_attr_id - &struct gpio_v2_line_attribute.id values * identifying which field of the attribute union is in use. * @GPIO_V2_LINE_ATTR_ID_FLAGS: flags field is in use * @GPIO_V2_LINE_ATTR_ID_OUTPUT_VALUES: values field is in use * @GPIO_V2_LINE_ATTR_ID_DEBOUNCE: debounce_period_us field is in use */ enum gpio_v2_line_attr_id { GPIO_V2_LINE_ATTR_ID_FLAGS = 1, GPIO_V2_LINE_ATTR_ID_OUTPUT_VALUES = 2, GPIO_V2_LINE_ATTR_ID_DEBOUNCE = 3, }; /** * struct gpio_v2_line_attribute - a configurable attribute of a line * @id: attribute identifier with value from &enum gpio_v2_line_attr_id * @padding: reserved for future use and must be zero filled * @flags: if id is %GPIO_V2_LINE_ATTR_ID_FLAGS, the flags for the GPIO * line, with values from &enum gpio_v2_line_flag, such as * %GPIO_V2_LINE_FLAG_ACTIVE_LOW, %GPIO_V2_LINE_FLAG_OUTPUT etc, added * together. This overrides the default flags contained in the &struct * gpio_v2_line_config for the associated line. * @values: if id is %GPIO_V2_LINE_ATTR_ID_OUTPUT_VALUES, a bitmap * containing the values to which the lines will be set, with each bit * number corresponding to the index into &struct * gpio_v2_line_request.offsets. * @debounce_period_us: if id is %GPIO_V2_LINE_ATTR_ID_DEBOUNCE, the * desired debounce period, in microseconds */ struct gpio_v2_line_attribute { __u32 id; __u32 padding; union { __aligned_u64 flags; __aligned_u64 values; __u32 debounce_period_us; }; }; /** * struct gpio_v2_line_config_attribute - a configuration attribute * associated with one or more of the requested lines. * @attr: the configurable attribute * @mask: a bitmap identifying the lines to which the attribute applies, * with each bit number corresponding to the index into &struct * gpio_v2_line_request.offsets. */ struct gpio_v2_line_config_attribute { struct gpio_v2_line_attribute attr; __aligned_u64 mask; }; /** * struct gpio_v2_line_config - Configuration for GPIO lines * @flags: flags for the GPIO lines, with values from &enum * gpio_v2_line_flag, such as %GPIO_V2_LINE_FLAG_ACTIVE_LOW, * %GPIO_V2_LINE_FLAG_OUTPUT etc, added together. This is the default for * all requested lines but may be overridden for particular lines using * @attrs. * @num_attrs: the number of attributes in @attrs * @padding: reserved for future use and must be zero filled * @attrs: the configuration attributes associated with the requested * lines. Any attribute should only be associated with a particular line * once. If an attribute is associated with a line multiple times then the * first occurrence (i.e. lowest index) has precedence. */ struct gpio_v2_line_config { __aligned_u64 flags; __u32 num_attrs; /* Pad to fill implicit padding and reserve space for future use. */ __u32 padding[5]; struct gpio_v2_line_config_attribute attrs[GPIO_V2_LINE_NUM_ATTRS_MAX]; }; /** * struct gpio_v2_line_request - Information about a request for GPIO lines * @offsets: an array of desired lines, specified by offset index for the * associated GPIO chip * @consumer: a desired consumer label for the selected GPIO lines such as * "my-bitbanged-relay" * @config: requested configuration for the lines. * @num_lines: number of lines requested in this request, i.e. the number * of valid fields in the %GPIO_V2_LINES_MAX sized arrays, set to 1 to * request a single line * @event_buffer_size: a suggested minimum number of line events that the * kernel should buffer. This is only relevant if edge detection is * enabled in the configuration. Note that this is only a suggested value * and the kernel may allocate a larger buffer or cap the size of the * buffer. If this field is zero then the buffer size defaults to a minimum * of @num_lines * 16. * @padding: reserved for future use and must be zero filled * @fd: if successful this field will contain a valid anonymous file handle * after a %GPIO_GET_LINE_IOCTL operation, zero or negative value means * error */ struct gpio_v2_line_request { __u32 offsets[GPIO_V2_LINES_MAX]; char consumer[GPIO_MAX_NAME_SIZE]; struct gpio_v2_line_config config; __u32 num_lines; __u32 event_buffer_size; /* Pad to fill implicit padding and reserve space for future use. */ __u32 padding[5]; __s32 fd; }; /** * struct gpio_v2_line_info - Information about a certain GPIO line * @name: the name of this GPIO line, such as the output pin of the line on * the chip, a rail or a pin header name on a board, as specified by the * GPIO chip, may be empty (i.e. name[0] == '\0') * @consumer: a functional name for the consumer of this GPIO line as set * by whatever is using it, will be empty if there is no current user but * may also be empty if the consumer doesn't set this up * @offset: the local offset on this GPIO chip, fill this in when * requesting the line information from the kernel * @num_attrs: the number of attributes in @attrs * @flags: flags for this GPIO line, with values from &enum * gpio_v2_line_flag, such as %GPIO_V2_LINE_FLAG_ACTIVE_LOW, * %GPIO_V2_LINE_FLAG_OUTPUT etc, added together. * @attrs: the configuration attributes associated with the line * @padding: reserved for future use */ struct gpio_v2_line_info { char name[GPIO_MAX_NAME_SIZE]; char consumer[GPIO_MAX_NAME_SIZE]; __u32 offset; __u32 num_attrs; __aligned_u64 flags; struct gpio_v2_line_attribute attrs[GPIO_V2_LINE_NUM_ATTRS_MAX]; /* Space reserved for future use. */ __u32 padding[4]; }; /** * enum gpio_v2_line_changed_type - &struct gpio_v2_line_changed.event_type * values * @GPIO_V2_LINE_CHANGED_REQUESTED: line has been requested * @GPIO_V2_LINE_CHANGED_RELEASED: line has been released * @GPIO_V2_LINE_CHANGED_CONFIG: line has been reconfigured */ enum gpio_v2_line_changed_type { GPIO_V2_LINE_CHANGED_REQUESTED = 1, GPIO_V2_LINE_CHANGED_RELEASED = 2, GPIO_V2_LINE_CHANGED_CONFIG = 3, }; /** * struct gpio_v2_line_info_changed - Information about a change in status * of a GPIO line * @info: updated line information * @timestamp_ns: estimate of time of status change occurrence, in nanoseconds * @event_type: the type of change with a value from &enum * gpio_v2_line_changed_type * @padding: reserved for future use */ struct gpio_v2_line_info_changed { struct gpio_v2_line_info info; __aligned_u64 timestamp_ns; __u32 event_type; /* Pad struct to 64-bit boundary and reserve space for future use. */ __u32 padding[5]; }; /** * enum gpio_v2_line_event_id - &struct gpio_v2_line_event.id values * @GPIO_V2_LINE_EVENT_RISING_EDGE: event triggered by a rising edge * @GPIO_V2_LINE_EVENT_FALLING_EDGE: event triggered by a falling edge */ enum gpio_v2_line_event_id { GPIO_V2_LINE_EVENT_RISING_EDGE = 1, GPIO_V2_LINE_EVENT_FALLING_EDGE = 2, }; /** * struct gpio_v2_line_event - The actual event being pushed to userspace * @timestamp_ns: best estimate of time of event occurrence, in nanoseconds. * @id: event identifier with value from &enum gpio_v2_line_event_id * @offset: the offset of the line that triggered the event * @seqno: the sequence number for this event in the sequence of events for * all the lines in this line request * @line_seqno: the sequence number for this event in the sequence of * events on this particular line * @padding: reserved for future use * * By default the @timestamp_ns is read from %CLOCK_MONOTONIC and is * intended to allow the accurate measurement of the time between events. * It does not provide the wall-clock time. * * If the %GPIO_V2_LINE_FLAG_EVENT_CLOCK_REALTIME flag is set then the * @timestamp_ns is read from %CLOCK_REALTIME. */ struct gpio_v2_line_event { __aligned_u64 timestamp_ns; __u32 id; __u32 offset; __u32 seqno; __u32 line_seqno; /* Space reserved for future use. */ __u32 padding[6]; }; /* * ABI v1 * * This version of the ABI is deprecated. * Use the latest version of the ABI, defined above, instead. */ /* Informational flags */ #define GPIOLINE_FLAG_KERNEL (1UL << 0) /* Line used by the kernel */ #define GPIOLINE_FLAG_IS_OUT (1UL << 1) #define GPIOLINE_FLAG_ACTIVE_LOW (1UL << 2) #define GPIOLINE_FLAG_OPEN_DRAIN (1UL << 3) #define GPIOLINE_FLAG_OPEN_SOURCE (1UL << 4) #define GPIOLINE_FLAG_BIAS_PULL_UP (1UL << 5) #define GPIOLINE_FLAG_BIAS_PULL_DOWN (1UL << 6) #define GPIOLINE_FLAG_BIAS_DISABLE (1UL << 7) /** * struct gpioline_info - Information about a certain GPIO line * @line_offset: the local offset on this GPIO device, fill this in when * requesting the line information from the kernel * @flags: various flags for this line * @name: the name of this GPIO line, such as the output pin of the line on the * chip, a rail or a pin header name on a board, as specified by the gpio * chip, may be empty (i.e. name[0] == '\0') * @consumer: a functional name for the consumer of this GPIO line as set by * whatever is using it, will be empty if there is no current user but may * also be empty if the consumer doesn't set this up * * Note: This struct is part of ABI v1 and is deprecated. * Use &struct gpio_v2_line_info instead. */ struct gpioline_info { __u32 line_offset; __u32 flags; char name[GPIO_MAX_NAME_SIZE]; char consumer[GPIO_MAX_NAME_SIZE]; }; /* Maximum number of requested handles */ #define GPIOHANDLES_MAX 64 /* Possible line status change events */ enum { GPIOLINE_CHANGED_REQUESTED = 1, GPIOLINE_CHANGED_RELEASED, GPIOLINE_CHANGED_CONFIG, }; /** * struct gpioline_info_changed - Information about a change in status * of a GPIO line * @info: updated line information * @timestamp: estimate of time of status change occurrence, in nanoseconds * @event_type: one of %GPIOLINE_CHANGED_REQUESTED, * %GPIOLINE_CHANGED_RELEASED and %GPIOLINE_CHANGED_CONFIG * @padding: reserved for future use * * The &struct gpioline_info embedded here has 32-bit alignment on its own, * but it works fine with 64-bit alignment too. With its 72 byte size, we can * guarantee there are no implicit holes between it and subsequent members. * The 20-byte padding at the end makes sure we don't add any implicit padding * at the end of the structure on 64-bit architectures. * * Note: This struct is part of ABI v1 and is deprecated. * Use &struct gpio_v2_line_info_changed instead. */ struct gpioline_info_changed { struct gpioline_info info; __u64 timestamp; __u32 event_type; __u32 padding[5]; /* for future use */ }; /* Linerequest flags */ #define GPIOHANDLE_REQUEST_INPUT (1UL << 0) #define GPIOHANDLE_REQUEST_OUTPUT (1UL << 1) #define GPIOHANDLE_REQUEST_ACTIVE_LOW (1UL << 2) #define GPIOHANDLE_REQUEST_OPEN_DRAIN (1UL << 3) #define GPIOHANDLE_REQUEST_OPEN_SOURCE (1UL << 4) #define GPIOHANDLE_REQUEST_BIAS_PULL_UP (1UL << 5) #define GPIOHANDLE_REQUEST_BIAS_PULL_DOWN (1UL << 6) #define GPIOHANDLE_REQUEST_BIAS_DISABLE (1UL << 7) /** * struct gpiohandle_request - Information about a GPIO handle request * @lineoffsets: an array of desired lines, specified by offset index for the * associated GPIO device * @flags: desired flags for the desired GPIO lines, such as * %GPIOHANDLE_REQUEST_OUTPUT, %GPIOHANDLE_REQUEST_ACTIVE_LOW etc, added * together. Note that even if multiple lines are requested, the same flags * must be applicable to all of them, if you want lines with individual * flags set, request them one by one. It is possible to select * a batch of input or output lines, but they must all have the same * characteristics, i.e. all inputs or all outputs, all active low etc * @default_values: if the %GPIOHANDLE_REQUEST_OUTPUT is set for a requested * line, this specifies the default output value, should be 0 (low) or * 1 (high), anything else than 0 or 1 will be interpreted as 1 (high) * @consumer_label: a desired consumer label for the selected GPIO line(s) * such as "my-bitbanged-relay" * @lines: number of lines requested in this request, i.e. the number of * valid fields in the above arrays, set to 1 to request a single line * @fd: if successful this field will contain a valid anonymous file handle * after a %GPIO_GET_LINEHANDLE_IOCTL operation, zero or negative value * means error * * Note: This struct is part of ABI v1 and is deprecated. * Use &struct gpio_v2_line_request instead. */ struct gpiohandle_request { __u32 lineoffsets[GPIOHANDLES_MAX]; __u32 flags; __u8 default_values[GPIOHANDLES_MAX]; char consumer_label[GPIO_MAX_NAME_SIZE]; __u32 lines; int fd; }; /** * struct gpiohandle_config - Configuration for a GPIO handle request * @flags: updated flags for the requested GPIO lines, such as * %GPIOHANDLE_REQUEST_OUTPUT, %GPIOHANDLE_REQUEST_ACTIVE_LOW etc, added * together * @default_values: if the %GPIOHANDLE_REQUEST_OUTPUT is set in flags, * this specifies the default output value, should be 0 (low) or * 1 (high), anything else than 0 or 1 will be interpreted as 1 (high) * @padding: reserved for future use and should be zero filled * * Note: This struct is part of ABI v1 and is deprecated. * Use &struct gpio_v2_line_config instead. */ struct gpiohandle_config { __u32 flags; __u8 default_values[GPIOHANDLES_MAX]; __u32 padding[4]; /* padding for future use */ }; /** * struct gpiohandle_data - Information of values on a GPIO handle * @values: when getting the state of lines this contains the current * state of a line, when setting the state of lines these should contain * the desired target state * * Note: This struct is part of ABI v1 and is deprecated. * Use &struct gpio_v2_line_values instead. */ struct gpiohandle_data { __u8 values[GPIOHANDLES_MAX]; }; /* Eventrequest flags */ #define GPIOEVENT_REQUEST_RISING_EDGE (1UL << 0) #define GPIOEVENT_REQUEST_FALLING_EDGE (1UL << 1) #define GPIOEVENT_REQUEST_BOTH_EDGES ((1UL << 0) | (1UL << 1)) /** * struct gpioevent_request - Information about a GPIO event request * @lineoffset: the desired line to subscribe to events from, specified by * offset index for the associated GPIO device * @handleflags: desired handle flags for the desired GPIO line, such as * %GPIOHANDLE_REQUEST_ACTIVE_LOW or %GPIOHANDLE_REQUEST_OPEN_DRAIN * @eventflags: desired flags for the desired GPIO event line, such as * %GPIOEVENT_REQUEST_RISING_EDGE or %GPIOEVENT_REQUEST_FALLING_EDGE * @consumer_label: a desired consumer label for the selected GPIO line(s) * such as "my-listener" * @fd: if successful this field will contain a valid anonymous file handle * after a %GPIO_GET_LINEEVENT_IOCTL operation, zero or negative value * means error * * Note: This struct is part of ABI v1 and is deprecated. * Use &struct gpio_v2_line_request instead. */ struct gpioevent_request { __u32 lineoffset; __u32 handleflags; __u32 eventflags; char consumer_label[GPIO_MAX_NAME_SIZE]; int fd; }; /* * GPIO event types */ #define GPIOEVENT_EVENT_RISING_EDGE 0x01 #define GPIOEVENT_EVENT_FALLING_EDGE 0x02 /** * struct gpioevent_data - The actual event being pushed to userspace * @timestamp: best estimate of time of event occurrence, in nanoseconds * @id: event identifier * * Note: This struct is part of ABI v1 and is deprecated. * Use &struct gpio_v2_line_event instead. */ struct gpioevent_data { __u64 timestamp; __u32 id; }; /* * v1 and v2 ioctl()s */ #define GPIO_GET_CHIPINFO_IOCTL _IOR(0xB4, 0x01, struct gpiochip_info) #define GPIO_GET_LINEINFO_UNWATCH_IOCTL _IOWR(0xB4, 0x0C, __u32) /* * v2 ioctl()s */ #define GPIO_V2_GET_LINEINFO_IOCTL _IOWR(0xB4, 0x05, struct gpio_v2_line_info) #define GPIO_V2_GET_LINEINFO_WATCH_IOCTL _IOWR(0xB4, 0x06, struct gpio_v2_line_info) #define GPIO_V2_GET_LINE_IOCTL _IOWR(0xB4, 0x07, struct gpio_v2_line_request) #define GPIO_V2_LINE_SET_CONFIG_IOCTL _IOWR(0xB4, 0x0D, struct gpio_v2_line_config) #define GPIO_V2_LINE_GET_VALUES_IOCTL _IOWR(0xB4, 0x0E, struct gpio_v2_line_values) #define GPIO_V2_LINE_SET_VALUES_IOCTL _IOWR(0xB4, 0x0F, struct gpio_v2_line_values) /* * v1 ioctl()s * * These ioctl()s are deprecated. Use the v2 equivalent instead. */ #define GPIO_GET_LINEINFO_IOCTL _IOWR(0xB4, 0x02, struct gpioline_info) #define GPIO_GET_LINEHANDLE_IOCTL _IOWR(0xB4, 0x03, struct gpiohandle_request) #define GPIO_GET_LINEEVENT_IOCTL _IOWR(0xB4, 0x04, struct gpioevent_request) #define GPIOHANDLE_GET_LINE_VALUES_IOCTL _IOWR(0xB4, 0x08, struct gpiohandle_data) #define GPIOHANDLE_SET_LINE_VALUES_IOCTL _IOWR(0xB4, 0x09, struct gpiohandle_data) #define GPIOHANDLE_SET_CONFIG_IOCTL _IOWR(0xB4, 0x0A, struct gpiohandle_config) #define GPIO_GET_LINEINFO_WATCH_IOCTL _IOWR(0xB4, 0x0B, struct gpioline_info) #endif /* _GPIO_H_ */
Close