Linux localhost 5.4.0-198-generic #218-Ubuntu SMP Fri Sep 27 20:18:53 UTC 2024 x86_64
Apache/2.4.41 (Ubuntu)
: 23.92.16.63 | : 172.71.203.60
Cant Read [ /etc/named.conf ]
8.1.5
www-data
www.github.com/MadExploits
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
CREATE RDP
PHP Mailer
BACKCONNECT
UNLOCK SHELL
HASH IDENTIFIER
CPANEL RESET
CREATE WP USER
README
+ Create Folder
+ Create File
/
usr /
src /
linux-headers-5.4.0-198 /
include /
linux /
[ HOME SHELL ]
Name
Size
Permission
Action
amba
[ DIR ]
drwxr-xr-x
avf
[ DIR ]
drwxr-xr-x
bcma
[ DIR ]
drwxr-xr-x
byteorder
[ DIR ]
drwxr-xr-x
can
[ DIR ]
drwxr-xr-x
ceph
[ DIR ]
drwxr-xr-x
clk
[ DIR ]
drwxr-xr-x
crush
[ DIR ]
drwxr-xr-x
decompress
[ DIR ]
drwxr-xr-x
dma
[ DIR ]
drwxr-xr-x
dsa
[ DIR ]
drwxr-xr-x
extcon
[ DIR ]
drwxr-xr-x
firmware
[ DIR ]
drwxr-xr-x
fpga
[ DIR ]
drwxr-xr-x
fsl
[ DIR ]
drwxr-xr-x
gpio
[ DIR ]
drwxr-xr-x
greybus
[ DIR ]
drwxr-xr-x
hsi
[ DIR ]
drwxr-xr-x
i3c
[ DIR ]
drwxr-xr-x
iio
[ DIR ]
drwxr-xr-x
input
[ DIR ]
drwxr-xr-x
irqchip
[ DIR ]
drwxr-xr-x
isdn
[ DIR ]
drwxr-xr-x
lockd
[ DIR ]
drwxr-xr-x
mailbox
[ DIR ]
drwxr-xr-x
mdio
[ DIR ]
drwxr-xr-x
mfd
[ DIR ]
drwxr-xr-x
mlx4
[ DIR ]
drwxr-xr-x
mlx5
[ DIR ]
drwxr-xr-x
mmc
[ DIR ]
drwxr-xr-x
mtd
[ DIR ]
drwxr-xr-x
mux
[ 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
perf
[ DIR ]
drwxr-xr-x
phy
[ DIR ]
drwxr-xr-x
pinctrl
[ DIR ]
drwxr-xr-x
platform_data
[ DIR ]
drwxr-xr-x
power
[ DIR ]
drwxr-xr-x
qed
[ DIR ]
drwxr-xr-x
raid
[ DIR ]
drwxr-xr-x
regulator
[ DIR ]
drwxr-xr-x
remoteproc
[ DIR ]
drwxr-xr-x
reset
[ DIR ]
drwxr-xr-x
rpmsg
[ DIR ]
drwxr-xr-x
rtc
[ DIR ]
drwxr-xr-x
sched
[ DIR ]
drwxr-xr-x
soc
[ DIR ]
drwxr-xr-x
soundwire
[ DIR ]
drwxr-xr-x
spi
[ DIR ]
drwxr-xr-x
ssb
[ DIR ]
drwxr-xr-x
sunrpc
[ DIR ]
drwxr-xr-x
ulpi
[ DIR ]
drwxr-xr-x
unaligned
[ DIR ]
drwxr-xr-x
usb
[ DIR ]
drwxr-xr-x
wimax
[ DIR ]
drwxr-xr-x
8250_pci.h
1.01
KB
-rw-r--r--
a.out.h
354
B
-rw-r--r--
acct.h
2.49
KB
-rw-r--r--
acpi.h
37.08
KB
-rw-r--r--
acpi_dma.h
3.08
KB
-rw-r--r--
acpi_iort.h
2.22
KB
-rw-r--r--
acpi_pmtmr.h
674
B
-rw-r--r--
adb.h
1.79
KB
-rw-r--r--
adfs_fs.h
574
B
-rw-r--r--
adxl.h
310
B
-rw-r--r--
aer.h
1.73
KB
-rw-r--r--
agp_backend.h
3.45
KB
-rw-r--r--
agpgart.h
3.82
KB
-rw-r--r--
ahci-remap.h
607
B
-rw-r--r--
ahci_platform.h
1.54
KB
-rw-r--r--
aio.h
651
B
-rw-r--r--
alarmtimer.h
1.83
KB
-rw-r--r--
alcor_pci.h
8.8
KB
-rw-r--r--
altera_jtaguart.h
379
B
-rw-r--r--
altera_uart.h
397
B
-rw-r--r--
amd-iommu.h
6.45
KB
-rw-r--r--
anon_inodes.h
494
B
-rw-r--r--
apm-emulation.h
1.56
KB
-rw-r--r--
apm_bios.h
2.25
KB
-rw-r--r--
apple-gmux.h
918
B
-rw-r--r--
apple_bl.h
498
B
-rw-r--r--
arch_topology.h
1.64
KB
-rw-r--r--
arm-cci.h
1.36
KB
-rw-r--r--
arm-smccc.h
12.39
KB
-rw-r--r--
arm_sdei.h
2.59
KB
-rw-r--r--
armada-37xx-rwtm-mailbox.h
432
B
-rw-r--r--
ascii85.h
532
B
-rw-r--r--
asn1.h
1.79
KB
-rw-r--r--
asn1_ber_bytecode.h
2.52
KB
-rw-r--r--
asn1_decoder.h
468
B
-rw-r--r--
assoc_array.h
2.88
KB
-rw-r--r--
assoc_array_priv.h
5.3
KB
-rw-r--r--
async.h
4.32
KB
-rw-r--r--
async_tx.h
6.21
KB
-rw-r--r--
ata.h
32.95
KB
-rw-r--r--
ata_platform.h
749
B
-rw-r--r--
atalk.h
4.48
KB
-rw-r--r--
ath9k_platform.h
1.44
KB
-rw-r--r--
atm.h
287
B
-rw-r--r--
atm_suni.h
253
B
-rw-r--r--
atm_tcp.h
511
B
-rw-r--r--
atmdev.h
10.21
KB
-rw-r--r--
atmel-mci.h
1.4
KB
-rw-r--r--
atmel-ssc.h
9.74
KB
-rw-r--r--
atmel_pdc.h
1.26
KB
-rw-r--r--
atomic-fallback.h
52.3
KB
-rw-r--r--
atomic.h
2.2
KB
-rw-r--r--
attribute_container.h
2.47
KB
-rw-r--r--
audit.h
18.23
KB
-rw-r--r--
auto_dev-ioctl.h
296
B
-rw-r--r--
auto_fs.h
278
B
-rw-r--r--
auxvec.h
304
B
-rw-r--r--
average.h
2.42
KB
-rw-r--r--
b1pcmcia.h
666
B
-rw-r--r--
backing-dev-defs.h
9.33
KB
-rw-r--r--
backing-dev.h
13.92
KB
-rw-r--r--
backlight.h
6.37
KB
-rw-r--r--
badblocks.h
2.14
KB
-rw-r--r--
balloon_compaction.h
6.59
KB
-rw-r--r--
bcd.h
559
B
-rw-r--r--
bch.h
2
KB
-rw-r--r--
bcm47xx_nvram.h
1.01
KB
-rw-r--r--
bcm47xx_sprom.h
386
B
-rw-r--r--
bcm47xx_wdt.h
555
B
-rw-r--r--
bcm963xx_nvram.h
2.96
KB
-rw-r--r--
bcm963xx_tag.h
3.6
KB
-rw-r--r--
binfmts.h
5.15
KB
-rw-r--r--
bio.h
20.71
KB
-rw-r--r--
bit_spinlock.h
2.3
KB
-rw-r--r--
bitfield.h
4.89
KB
-rw-r--r--
bitmap.h
18.41
KB
-rw-r--r--
bitops.h
6.99
KB
-rw-r--r--
bitrev.h
2.53
KB
-rw-r--r--
bits.h
883
B
-rw-r--r--
blk-cgroup.h
25.69
KB
-rw-r--r--
blk-mq-pci.h
269
B
-rw-r--r--
blk-mq-rdma.h
273
B
-rw-r--r--
blk-mq-virtio.h
293
B
-rw-r--r--
blk-mq.h
11.4
KB
-rw-r--r--
blk-pm.h
717
B
-rw-r--r--
blk_types.h
13.13
KB
-rw-r--r--
blkdev.h
52.41
KB
-rw-r--r--
blkpg.h
436
B
-rw-r--r--
blktrace_api.h
3.87
KB
-rw-r--r--
blockgroup_lock.h
810
B
-rw-r--r--
bma150.h
1.26
KB
-rw-r--r--
bottom_half.h
803
B
-rw-r--r--
bpf-cgroup.h
13.81
KB
-rw-r--r--
bpf.h
36.68
KB
-rw-r--r--
bpf_lirc.h
698
B
-rw-r--r--
bpf_trace.h
166
B
-rw-r--r--
bpf_types.h
3.15
KB
-rw-r--r--
bpf_verifier.h
15.18
KB
-rw-r--r--
bpfilter.h
728
B
-rw-r--r--
brcmphy.h
10.8
KB
-rw-r--r--
bsearch.h
275
B
-rw-r--r--
bsg-lib.h
1.7
KB
-rw-r--r--
bsg.h
1012
B
-rw-r--r--
btf.h
2.32
KB
-rw-r--r--
btree-128.h
2.67
KB
-rw-r--r--
btree-type.h
3.9
KB
-rw-r--r--
btree.h
6.83
KB
-rw-r--r--
btrfs.h
145
B
-rw-r--r--
buffer_head.h
14.4
KB
-rw-r--r--
bug.h
1.92
KB
-rw-r--r--
build-salt.h
375
B
-rw-r--r--
build_bug.h
2.86
KB
-rw-r--r--
bvec.h
4.72
KB
-rw-r--r--
c2port.h
1.35
KB
-rw-r--r--
cache.h
2.13
KB
-rw-r--r--
cacheinfo.h
3.32
KB
-rw-r--r--
capability.h
7.79
KB
-rw-r--r--
cb710.h
5.36
KB
-rw-r--r--
cciss_ioctl.h
1.03
KB
-rw-r--r--
ccp.h
18.12
KB
-rw-r--r--
cdev.h
845
B
-rw-r--r--
cdrom.h
8.78
KB
-rw-r--r--
cfag12864b.h
1.46
KB
-rw-r--r--
cgroup-defs.h
26.87
KB
-rw-r--r--
cgroup.h
28.89
KB
-rw-r--r--
cgroup_rdma.h
1.18
KB
-rw-r--r--
cgroup_subsys.h
1.17
KB
-rw-r--r--
circ_buf.h
1.09
KB
-rw-r--r--
cleancache.h
3.89
KB
-rw-r--r--
clk-provider.h
40.26
KB
-rw-r--r--
clk.h
31.76
KB
-rw-r--r--
clkdev.h
1.52
KB
-rw-r--r--
clock_cooling.h
1.65
KB
-rw-r--r--
clockchips.h
7.27
KB
-rw-r--r--
clocksource.h
8.56
KB
-rw-r--r--
cm4000_cs.h
199
B
-rw-r--r--
cma.h
1.18
KB
-rw-r--r--
cmdline-parser.h
1.21
KB
-rw-r--r--
cn_proc.h
1.85
KB
-rw-r--r--
cnt32_to_63.h
3.46
KB
-rw-r--r--
coda.h
2.16
KB
-rw-r--r--
compaction.h
7.33
KB
-rw-r--r--
compat.h
31.51
KB
-rw-r--r--
compiler-clang.h
1.35
KB
-rw-r--r--
compiler-gcc.h
4.9
KB
-rw-r--r--
compiler-intel.h
949
B
-rw-r--r--
compiler.h
13.4
KB
-rw-r--r--
compiler_attributes.h
11.49
KB
-rw-r--r--
compiler_types.h
7.44
KB
-rw-r--r--
completion.h
4.05
KB
-rw-r--r--
component.h
4.07
KB
-rw-r--r--
configfs.h
8.56
KB
-rw-r--r--
connector.h
3.8
KB
-rw-r--r--
console.h
7.45
KB
-rw-r--r--
console_struct.h
6.79
KB
-rw-r--r--
consolemap.h
1.04
KB
-rw-r--r--
const.h
157
B
-rw-r--r--
container.h
610
B
-rw-r--r--
context_tracking.h
4.43
KB
-rw-r--r--
context_tracking_state.h
1.39
KB
-rw-r--r--
cordic.h
2.08
KB
-rw-r--r--
coredump.h
797
B
-rw-r--r--
coresight-pmu.h
989
B
-rw-r--r--
coresight-stm.h
152
B
-rw-r--r--
coresight.h
10.2
KB
-rw-r--r--
count_zeros.h
1.42
KB
-rw-r--r--
counter.h
16.86
KB
-rw-r--r--
counter_enum.h
1.43
KB
-rw-r--r--
cper.h
15.64
KB
-rw-r--r--
cpu.h
7.63
KB
-rw-r--r--
cpu_cooling.h
1.72
KB
-rw-r--r--
cpu_pm.h
2.38
KB
-rw-r--r--
cpu_rmap.h
1.68
KB
-rw-r--r--
cpufeature.h
1.71
KB
-rw-r--r--
cpufreq.h
30.02
KB
-rw-r--r--
cpuhotplug.h
12.32
KB
-rw-r--r--
cpuidle.h
9.81
KB
-rw-r--r--
cpuidle_haltpoll.h
312
B
-rw-r--r--
cpumask.h
26.36
KB
-rw-r--r--
cpuset.h
7.29
KB
-rw-r--r--
crash_core.h
3.06
KB
-rw-r--r--
crash_dump.h
4.02
KB
-rw-r--r--
crc-ccitt.h
609
B
-rw-r--r--
crc-itu-t.h
531
B
-rw-r--r--
crc-t10dif.h
453
B
-rw-r--r--
crc16.h
540
B
-rw-r--r--
crc32.h
2.83
KB
-rw-r--r--
crc32c.h
331
B
-rw-r--r--
crc32poly.h
610
B
-rw-r--r--
crc4.h
192
B
-rw-r--r--
crc64.h
280
B
-rw-r--r--
crc7.h
316
B
-rw-r--r--
crc8.h
3.65
KB
-rw-r--r--
cred.h
12.34
KB
-rw-r--r--
crypto.h
63.01
KB
-rw-r--r--
cryptohash.h
319
B
-rw-r--r--
cs5535.h
6.13
KB
-rw-r--r--
ctype.h
1.75
KB
-rw-r--r--
cuda.h
613
B
-rw-r--r--
cyclades.h
10.36
KB
-rw-r--r--
davinci_emac.h
1.05
KB
-rw-r--r--
dax.h
7.21
KB
-rw-r--r--
dca.h
1.88
KB
-rw-r--r--
dcache.h
18.32
KB
-rw-r--r--
dccp.h
10.73
KB
-rw-r--r--
dcookies.h
1.3
KB
-rw-r--r--
debug_locks.h
1.54
KB
-rw-r--r--
debugfs.h
11.28
KB
-rw-r--r--
debugobjects.h
3.89
KB
-rw-r--r--
delay.h
1.88
KB
-rw-r--r--
delayacct.h
5.26
KB
-rw-r--r--
delayed_call.h
709
B
-rw-r--r--
devcoredump.h
2.21
KB
-rw-r--r--
devfreq-event.h
5.82
KB
-rw-r--r--
devfreq.h
13.06
KB
-rw-r--r--
devfreq_cooling.h
3.54
KB
-rw-r--r--
device-mapper.h
17.4
KB
-rw-r--r--
device.h
67.82
KB
-rw-r--r--
device_cgroup.h
1.86
KB
-rw-r--r--
devpts_fs.h
1.13
KB
-rw-r--r--
digsig.h
1.19
KB
-rw-r--r--
dim.h
8.81
KB
-rw-r--r--
dio.h
10.97
KB
-rw-r--r--
dirent.h
216
B
-rw-r--r--
dlm.h
5.86
KB
-rw-r--r--
dlm_plock.h
532
B
-rw-r--r--
dm-bufio.h
4.51
KB
-rw-r--r--
dm-dirty-log.h
3.94
KB
-rw-r--r--
dm-io.h
1.93
KB
-rw-r--r--
dm-kcopyd.h
2.89
KB
-rw-r--r--
dm-region-hash.h
3.11
KB
-rw-r--r--
dm9000.h
987
B
-rw-r--r--
dma-buf.h
14.57
KB
-rw-r--r--
dma-contiguous.h
4.73
KB
-rw-r--r--
dma-debug.h
4.18
KB
-rw-r--r--
dma-direct.h
2.69
KB
-rw-r--r--
dma-direction.h
220
B
-rw-r--r--
dma-fence-array.h
2.14
KB
-rw-r--r--
dma-fence-chain.h
2.04
KB
-rw-r--r--
dma-fence.h
19.71
KB
-rw-r--r--
dma-iommu.h
1.94
KB
-rw-r--r--
dma-mapping.h
29.05
KB
-rw-r--r--
dma-noncoherent.h
3.36
KB
-rw-r--r--
dma-resv.h
9.16
KB
-rw-r--r--
dmaengine.h
45.86
KB
-rw-r--r--
dmapool.h
1.79
KB
-rw-r--r--
dmar.h
7.5
KB
-rw-r--r--
dmi.h
4.07
KB
-rw-r--r--
dnotify.h
1.02
KB
-rw-r--r--
dns_resolver.h
1.36
KB
-rw-r--r--
dqblk_qtree.h
2.19
KB
-rw-r--r--
dqblk_v1.h
327
B
-rw-r--r--
dqblk_v2.h
406
B
-rw-r--r--
drbd.h
10.07
KB
-rw-r--r--
drbd_genl.h
21.49
KB
-rw-r--r--
drbd_genl_api.h
1.77
KB
-rw-r--r--
drbd_limits.h
7.82
KB
-rw-r--r--
ds2782_battery.h
158
B
-rw-r--r--
dtlk.h
3.5
KB
-rw-r--r--
dw_apb_timer.h
1.56
KB
-rw-r--r--
dynamic_debug.h
6.06
KB
-rw-r--r--
dynamic_queue_limits.h
3.7
KB
-rw-r--r--
earlycpio.h
359
B
-rw-r--r--
ecryptfs.h
3.82
KB
-rw-r--r--
edac.h
20.33
KB
-rw-r--r--
edd.h
1.05
KB
-rw-r--r--
eeprom_93cx6.h
2.31
KB
-rw-r--r--
eeprom_93xx46.h
879
B
-rw-r--r--
efi-bgrt.h
644
B
-rw-r--r--
efi.h
53.96
KB
-rw-r--r--
efs_vh.h
1.55
KB
-rw-r--r--
eisa.h
2.96
KB
-rw-r--r--
elevator.h
5.37
KB
-rw-r--r--
elf-fdpic.h
1.98
KB
-rw-r--r--
elf-randomize.h
583
B
-rw-r--r--
elf.h
1.53
KB
-rw-r--r--
elfcore-compat.h
1.23
KB
-rw-r--r--
elfcore.h
2.52
KB
-rw-r--r--
elfnote.h
3.54
KB
-rw-r--r--
enclosure.h
4.02
KB
-rw-r--r--
energy_model.h
6.47
KB
-rw-r--r--
err.h
1.55
KB
-rw-r--r--
errno.h
1.39
KB
-rw-r--r--
error-injection.h
607
B
-rw-r--r--
errqueue.h
524
B
-rw-r--r--
errseq.h
382
B
-rw-r--r--
etherdevice.h
16.97
KB
-rw-r--r--
ethtool.h
17.89
KB
-rw-r--r--
eventfd.h
2.12
KB
-rw-r--r--
eventpoll.h
1.95
KB
-rw-r--r--
evm.h
2.65
KB
-rw-r--r--
export.h
6.16
KB
-rw-r--r--
exportfs.h
7.46
KB
-rw-r--r--
ext2_fs.h
967
B
-rw-r--r--
extable.h
1.06
KB
-rw-r--r--
extcon-provider.h
3.92
KB
-rw-r--r--
extcon.h
10.18
KB
-rw-r--r--
f2fs_fs.h
18.66
KB
-rw-r--r--
f75375s.h
541
B
-rw-r--r--
falloc.h
792
B
-rw-r--r--
fanotify.h
2.66
KB
-rw-r--r--
fault-inject.h
1.93
KB
-rw-r--r--
fb.h
27.82
KB
-rw-r--r--
fbcon.h
2.09
KB
-rw-r--r--
fcdevice.h
774
B
-rw-r--r--
fcntl.h
1.29
KB
-rw-r--r--
fd.h
490
B
-rw-r--r--
fddidevice.h
833
B
-rw-r--r--
fdtable.h
3.34
KB
-rw-r--r--
fec.h
463
B
-rw-r--r--
file.h
2.24
KB
-rw-r--r--
filter.h
33.79
KB
-rw-r--r--
fips.h
303
B
-rw-r--r--
firewire.h
13.4
KB
-rw-r--r--
firmware-map.h
959
B
-rw-r--r--
firmware.h
2.66
KB
-rw-r--r--
fixp-arith.h
3.76
KB
-rw-r--r--
flat.h
2.57
KB
-rw-r--r--
flex_proportions.h
2.81
KB
-rw-r--r--
font.h
1.6
KB
-rw-r--r--
frame.h
1.12
KB
-rw-r--r--
freezer.h
8.67
KB
-rw-r--r--
frontswap.h
3.05
KB
-rw-r--r--
fs.h
118.32
KB
-rw-r--r--
fs_context.h
7.8
KB
-rw-r--r--
fs_enet_pd.h
3.38
KB
-rw-r--r--
fs_parser.h
4.6
KB
-rw-r--r--
fs_pin.h
539
B
-rw-r--r--
fs_stack.h
811
B
-rw-r--r--
fs_struct.h
1.03
KB
-rw-r--r--
fs_types.h
2.02
KB
-rw-r--r--
fs_uart_pd.h
1.49
KB
-rw-r--r--
fscache-cache.h
18.6
KB
-rw-r--r--
fscache.h
28.68
KB
-rw-r--r--
fscrypt.h
25.72
KB
-rw-r--r--
fsi-occ.h
681
B
-rw-r--r--
fsi-sbefifo.h
629
B
-rw-r--r--
fsi.h
2.26
KB
-rw-r--r--
fsl-diu-fb.h
3.87
KB
-rw-r--r--
fsl_devices.h
4.16
KB
-rw-r--r--
fsl_hypervisor.h
2.76
KB
-rw-r--r--
fsl_ifc.h
24.48
KB
-rw-r--r--
fsldma.h
202
B
-rw-r--r--
fsnotify.h
9.45
KB
-rw-r--r--
fsnotify_backend.h
20.3
KB
-rw-r--r--
fsverity.h
5.97
KB
-rw-r--r--
ftrace.h
30.13
KB
-rw-r--r--
ftrace_irq.h
823
B
-rw-r--r--
futex.h
2.44
KB
-rw-r--r--
fwnode.h
4.42
KB
-rw-r--r--
gameport.h
5.42
KB
-rw-r--r--
gcd.h
193
B
-rw-r--r--
genalloc.h
7.67
KB
-rw-r--r--
generic-radix-tree.h
6.36
KB
-rw-r--r--
genetlink.h
1.35
KB
-rw-r--r--
genhd.h
24.04
KB
-rw-r--r--
genl_magic_func.h
11.59
KB
-rw-r--r--
genl_magic_struct.h
7.66
KB
-rw-r--r--
getcpu.h
641
B
-rw-r--r--
gfp.h
23.94
KB
-rw-r--r--
glob.h
256
B
-rw-r--r--
gnss.h
1.56
KB
-rw-r--r--
goldfish.h
738
B
-rw-r--r--
gpio-pxa.h
571
B
-rw-r--r--
gpio.h
5.35
KB
-rw-r--r--
gpio_keys.h
1.74
KB
-rw-r--r--
greybus.h
4.14
KB
-rw-r--r--
hardirq.h
1.95
KB
-rw-r--r--
hash.h
3
KB
-rw-r--r--
hashtable.h
6.63
KB
-rw-r--r--
hdlc.h
3.19
KB
-rw-r--r--
hdlcdrv.h
6.32
KB
-rw-r--r--
hdmi.h
12.26
KB
-rw-r--r--
hid-debug.h
1.42
KB
-rw-r--r--
hid-roccat.h
484
B
-rw-r--r--
hid-sensor-hub.h
8.64
KB
-rw-r--r--
hid-sensor-ids.h
6.67
KB
-rw-r--r--
hid.h
36.89
KB
-rw-r--r--
hiddev.h
1.42
KB
-rw-r--r--
hidraw.h
1.12
KB
-rw-r--r--
highmem.h
6.77
KB
-rw-r--r--
highuid.h
3.12
KB
-rw-r--r--
hil.h
18.42
KB
-rw-r--r--
hil_mlc.h
5.13
KB
-rw-r--r--
hippidevice.h
1.03
KB
-rw-r--r--
hmm.h
14.21
KB
-rw-r--r--
host1x.h
8.22
KB
-rw-r--r--
hp_sdc.h
14.02
KB
-rw-r--r--
hpet.h
2.55
KB
-rw-r--r--
hrtimer.h
15.93
KB
-rw-r--r--
hrtimer_defs.h
660
B
-rw-r--r--
htcpld.h
617
B
-rw-r--r--
huge_mm.h
12.06
KB
-rw-r--r--
hugetlb.h
19.64
KB
-rw-r--r--
hugetlb_cgroup.h
2.93
KB
-rw-r--r--
hugetlb_inline.h
374
B
-rw-r--r--
hw_breakpoint.h
4.1
KB
-rw-r--r--
hw_random.h
2.12
KB
-rw-r--r--
hwmon-sysfs.h
2.77
KB
-rw-r--r--
hwmon-vid.h
862
B
-rw-r--r--
hwmon.h
13.31
KB
-rw-r--r--
hwspinlock.h
15.64
KB
-rw-r--r--
hyperv.h
42.44
KB
-rw-r--r--
hypervisor.h
608
B
-rw-r--r--
i2c-algo-bit.h
1.4
KB
-rw-r--r--
i2c-algo-pca.h
2.89
KB
-rw-r--r--
i2c-algo-pcf.h
1.21
KB
-rw-r--r--
i2c-dev.h
371
B
-rw-r--r--
i2c-mux.h
1.63
KB
-rw-r--r--
i2c-pxa.h
438
B
-rw-r--r--
i2c-smbus.h
1.29
KB
-rw-r--r--
i2c.h
36.51
KB
-rw-r--r--
i8042.h
1.99
KB
-rw-r--r--
i8253.h
809
B
-rw-r--r--
icmp.h
652
B
-rw-r--r--
icmpv6.h
2.5
KB
-rw-r--r--
ide.h
46.21
KB
-rw-r--r--
idle_inject.h
832
B
-rw-r--r--
idr.h
9.39
KB
-rw-r--r--
ieee80211.h
107.09
KB
-rw-r--r--
ieee802154.h
11.12
KB
-rw-r--r--
if_arp.h
1.81
KB
-rw-r--r--
if_bridge.h
3.72
KB
-rw-r--r--
if_eql.h
1.07
KB
-rw-r--r--
if_ether.h
1.26
KB
-rw-r--r--
if_fddi.h
3.24
KB
-rw-r--r--
if_frad.h
2.66
KB
-rw-r--r--
if_link.h
592
B
-rw-r--r--
if_ltalk.h
188
B
-rw-r--r--
if_macvlan.h
2.67
KB
-rw-r--r--
if_phonet.h
319
B
-rw-r--r--
if_pppol2tp.h
516
B
-rw-r--r--
if_pppox.h
2.84
KB
-rw-r--r--
if_rmnet.h
1.14
KB
-rw-r--r--
if_tap.h
2.21
KB
-rw-r--r--
if_team.h
7.94
KB
-rw-r--r--
if_tun.h
1.29
KB
-rw-r--r--
if_tunnel.h
409
B
-rw-r--r--
if_vlan.h
20.73
KB
-rw-r--r--
igmp.h
4.44
KB
-rw-r--r--
ihex.h
2.16
KB
-rw-r--r--
ima.h
3.51
KB
-rw-r--r--
imx-media.h
605
B
-rw-r--r--
in.h
2.29
KB
-rw-r--r--
in6.h
1.63
KB
-rw-r--r--
indirect_call_wrapper.h
1.53
KB
-rw-r--r--
inet.h
2.64
KB
-rw-r--r--
inet_diag.h
2.42
KB
-rw-r--r--
inetdevice.h
8.65
KB
-rw-r--r--
init.h
9.55
KB
-rw-r--r--
init_ohci1394_dma.h
196
B
-rw-r--r--
init_task.h
1.37
KB
-rw-r--r--
initrd.h
836
B
-rw-r--r--
inotify.h
713
B
-rw-r--r--
input-polldev.h
2.03
KB
-rw-r--r--
input.h
19.37
KB
-rw-r--r--
integrity.h
1.13
KB
-rw-r--r--
intel-iommu.h
22.91
KB
-rw-r--r--
intel-ish-client-if.h
3.73
KB
-rw-r--r--
intel-pti.h
1.18
KB
-rw-r--r--
intel-svm.h
4.57
KB
-rw-r--r--
intel_rapl.h
4.12
KB
-rw-r--r--
intel_th.h
2.44
KB
-rw-r--r--
interconnect-provider.h
4.09
KB
-rw-r--r--
interconnect.h
1.68
KB
-rw-r--r--
interrupt.h
22.65
KB
-rw-r--r--
interval_tree.h
831
B
-rw-r--r--
interval_tree_generic.h
6.7
KB
-rw-r--r--
io-64-nonatomic-hi-lo.h
2.4
KB
-rw-r--r--
io-64-nonatomic-lo-hi.h
2.4
KB
-rw-r--r--
io-mapping.h
3.77
KB
-rw-r--r--
io-pgtable.h
7.85
KB
-rw-r--r--
io.h
5.3
KB
-rw-r--r--
ioc3.h
3.14
KB
-rw-r--r--
iocontext.h
4.76
KB
-rw-r--r--
iomap.h
7.18
KB
-rw-r--r--
iommu-helper.h
1.07
KB
-rw-r--r--
iommu.h
31.06
KB
-rw-r--r--
iopoll.h
5.32
KB
-rw-r--r--
ioport.h
11.41
KB
-rw-r--r--
ioprio.h
2.41
KB
-rw-r--r--
iova.h
7.09
KB
-rw-r--r--
ip.h
1
KB
-rw-r--r--
ipack.h
8.69
KB
-rw-r--r--
ipc.h
613
B
-rw-r--r--
ipc_namespace.h
4.96
KB
-rw-r--r--
ipmi-fru.h
3.61
KB
-rw-r--r--
ipmi.h
10.85
KB
-rw-r--r--
ipmi_smi.h
7.98
KB
-rw-r--r--
ipv6.h
9.11
KB
-rw-r--r--
ipv6_route.h
372
B
-rw-r--r--
irq.h
40.32
KB
-rw-r--r--
irq_cpustat.h
845
B
-rw-r--r--
irq_poll.h
575
B
-rw-r--r--
irq_sim.h
985
B
-rw-r--r--
irq_work.h
1.34
KB
-rw-r--r--
irqbypass.h
3.45
KB
-rw-r--r--
irqchip.h
1.54
KB
-rw-r--r--
irqdesc.h
8.21
KB
-rw-r--r--
irqdomain.h
19.84
KB
-rw-r--r--
irqflags.h
5.09
KB
-rw-r--r--
irqhandler.h
362
B
-rw-r--r--
irqnr.h
856
B
-rw-r--r--
irqreturn.h
503
B
-rw-r--r--
isa.h
2.12
KB
-rw-r--r--
isapnp.h
3.14
KB
-rw-r--r--
iscsi_boot_sysfs.h
3.71
KB
-rw-r--r--
iscsi_ibft.h
917
B
-rw-r--r--
isicom.h
1.49
KB
-rw-r--r--
iversion.h
12.12
KB
-rw-r--r--
jbd2.h
46.81
KB
-rw-r--r--
jhash.h
4.62
KB
-rw-r--r--
jiffies.h
15.67
KB
-rw-r--r--
journal-head.h
2.87
KB
-rw-r--r--
joystick.h
437
B
-rw-r--r--
jump_label.h
14.94
KB
-rw-r--r--
jump_label_ratelimit.h
2.77
KB
-rw-r--r--
jz4740-adc.h
1023
B
-rw-r--r--
jz4780-nemc.h
976
B
-rw-r--r--
kallsyms.h
4.27
KB
-rw-r--r--
kasan-checks.h
1.18
KB
-rw-r--r--
kasan.h
5.66
KB
-rw-r--r--
kbd_diacr.h
198
B
-rw-r--r--
kbd_kern.h
3.84
KB
-rw-r--r--
kbuild.h
380
B
-rw-r--r--
kconfig.h
2.42
KB
-rw-r--r--
kcore.h
941
B
-rw-r--r--
kcov.h
1.13
KB
-rw-r--r--
kdb.h
7.3
KB
-rw-r--r--
kdebug.h
487
B
-rw-r--r--
kdev_t.h
1.8
KB
-rw-r--r--
kern_levels.h
1.57
KB
-rw-r--r--
kernel-page-flags.h
505
B
-rw-r--r--
kernel.h
34.31
KB
-rw-r--r--
kernel_stat.h
2.5
KB
-rw-r--r--
kernelcapi.h
4.45
KB
-rw-r--r--
kernfs.h
17.47
KB
-rw-r--r--
kexec.h
11.65
KB
-rw-r--r--
key-type.h
6.45
KB
-rw-r--r--
key.h
15.4
KB
-rw-r--r--
keyboard.h
665
B
-rw-r--r--
keyctl.h
1.25
KB
-rw-r--r--
kfifo.h
24.19
KB
-rw-r--r--
kgdb.h
10.88
KB
-rw-r--r--
khugepaged.h
2.65
KB
-rw-r--r--
klist.h
1.88
KB
-rw-r--r--
kmemleak.h
3.27
KB
-rw-r--r--
kmod.h
1.02
KB
-rw-r--r--
kmsg_dump.h
2.85
KB
-rw-r--r--
kobj_map.h
545
B
-rw-r--r--
kobject.h
7.69
KB
-rw-r--r--
kobject_ns.h
1.89
KB
-rw-r--r--
kprobes.h
13.32
KB
-rw-r--r--
kref.h
3.08
KB
-rw-r--r--
ks0108.h
960
B
-rw-r--r--
ks8842.h
632
B
-rw-r--r--
ks8851_mll.h
472
B
-rw-r--r--
ksm.h
2.69
KB
-rw-r--r--
kthread.h
6.69
KB
-rw-r--r--
ktime.h
6.71
KB
-rw-r--r--
kvm_host.h
41.15
KB
-rw-r--r--
kvm_irqfd.h
1.99
KB
-rw-r--r--
kvm_para.h
402
B
-rw-r--r--
kvm_types.h
1.05
KB
-rw-r--r--
l2tp.h
261
B
-rw-r--r--
lantiq.h
365
B
-rw-r--r--
lapb.h
1.71
KB
-rw-r--r--
latencytop.h
1.18
KB
-rw-r--r--
lcd.h
3.78
KB
-rw-r--r--
lcm.h
275
B
-rw-r--r--
led-class-flash.h
5.61
KB
-rw-r--r--
led-lm3530.h
3.7
KB
-rw-r--r--
leds-bd2802.h
493
B
-rw-r--r--
leds-lp3944.h
950
B
-rw-r--r--
leds-lp3952.h
2.35
KB
-rw-r--r--
leds-pca9532.h
866
B
-rw-r--r--
leds-regulator.h
1.14
KB
-rw-r--r--
leds-tca6507.h
433
B
-rw-r--r--
leds-ti-lmu-common.h
1.12
KB
-rw-r--r--
leds.h
18.11
KB
-rw-r--r--
leds_pwm.h
407
B
-rw-r--r--
libata.h
65.1
KB
-rw-r--r--
libfdt.h
202
B
-rw-r--r--
libfdt_env.h
491
B
-rw-r--r--
libgcc.h
463
B
-rw-r--r--
libnvdimm.h
9.53
KB
-rw-r--r--
libps2.h
1.89
KB
-rw-r--r--
license.h
374
B
-rw-r--r--
lightnvm.h
14.88
KB
-rw-r--r--
limits.h
1.05
KB
-rw-r--r--
linkage.h
9.11
KB
-rw-r--r--
linkmode.h
1.95
KB
-rw-r--r--
linux_logo.h
1.91
KB
-rw-r--r--
lis3lv02d.h
5
KB
-rw-r--r--
list.h
26.9
KB
-rw-r--r--
list_bl.h
4.79
KB
-rw-r--r--
list_lru.h
7.29
KB
-rw-r--r--
list_nulls.h
3.47
KB
-rw-r--r--
list_sort.h
307
B
-rw-r--r--
livepatch.h
7.43
KB
-rw-r--r--
llc.h
749
B
-rw-r--r--
llist.h
8.56
KB
-rw-r--r--
lockdep.h
20.23
KB
-rw-r--r--
lockref.h
1.5
KB
-rw-r--r--
log2.h
6.19
KB
-rw-r--r--
logic_pio.h
3.24
KB
-rw-r--r--
lp.h
2.76
KB
-rw-r--r--
lru_cache.h
11.82
KB
-rw-r--r--
lsm_audit.h
2.73
KB
-rw-r--r--
lsm_hooks.h
93.79
KB
-rw-r--r--
lz4.h
26.44
KB
-rw-r--r--
lzo.h
1.55
KB
-rw-r--r--
mISDNdsp.h
1.19
KB
-rw-r--r--
mISDNhw.h
5.39
KB
-rw-r--r--
mISDNif.h
14.91
KB
-rw-r--r--
mailbox_client.h
1.71
KB
-rw-r--r--
mailbox_controller.h
5.7
KB
-rw-r--r--
maple.h
2.71
KB
-rw-r--r--
marvell_phy.h
1.41
KB
-rw-r--r--
math64.h
6.86
KB
-rw-r--r--
max17040_battery.h
328
B
-rw-r--r--
mbcache.h
2.16
KB
-rw-r--r--
mbus.h
3.09
KB
-rw-r--r--
mc146818rtc.h
4.57
KB
-rw-r--r--
mc6821.h
1.18
KB
-rw-r--r--
mcb.h
3.71
KB
-rw-r--r--
mdev.h
5.21
KB
-rw-r--r--
mdio-bitbang.h
1.12
KB
-rw-r--r--
mdio-gpio.h
177
B
-rw-r--r--
mdio-mux.h
1021
B
-rw-r--r--
mdio.h
10.86
KB
-rw-r--r--
mei_cl_bus.h
3.43
KB
-rw-r--r--
mem_encrypt.h
885
B
-rw-r--r--
memblock.h
18.46
KB
-rw-r--r--
memcontrol.h
36.66
KB
-rw-r--r--
memfd.h
365
B
-rw-r--r--
memory.h
4.74
KB
-rw-r--r--
memory_hotplug.h
10.96
KB
-rw-r--r--
mempolicy.h
7.44
KB
-rw-r--r--
mempool.h
3.35
KB
-rw-r--r--
memremap.h
5.36
KB
-rw-r--r--
memstick.h
9.6
KB
-rw-r--r--
mic_bus.h
2.7
KB
-rw-r--r--
micrel_phy.h
1.28
KB
-rw-r--r--
microchipphy.h
2.65
KB
-rw-r--r--
migrate.h
5.96
KB
-rw-r--r--
migrate_mode.h
758
B
-rw-r--r--
mii.h
14.04
KB
-rw-r--r--
miscdevice.h
2.81
KB
-rw-r--r--
mm-arch-hooks.h
533
B
-rw-r--r--
mm.h
92.34
KB
-rw-r--r--
mm_inline.h
3.37
KB
-rw-r--r--
mm_types.h
23.61
KB
-rw-r--r--
mm_types_task.h
2.5
KB
-rw-r--r--
mman.h
3.28
KB
-rw-r--r--
mmap_lock.h
1.06
KB
-rw-r--r--
mmdebug.h
2.32
KB
-rw-r--r--
mmiotrace.h
3.05
KB
-rw-r--r--
mmu_context.h
378
B
-rw-r--r--
mmu_notifier.h
19.84
KB
-rw-r--r--
mmzone.h
41.85
KB
-rw-r--r--
mnt_namespace.h
617
B
-rw-r--r--
mod_devicetable.h
21.91
KB
-rw-r--r--
module.h
24.34
KB
-rw-r--r--
module_signature.h
1.22
KB
-rw-r--r--
moduleloader.h
2.87
KB
-rw-r--r--
moduleparam.h
19.53
KB
-rw-r--r--
mount.h
3.64
KB
-rw-r--r--
moxtet.h
2.37
KB
-rw-r--r--
mpage.h
761
B
-rw-r--r--
mpi.h
2.51
KB
-rw-r--r--
mpls.h
394
B
-rw-r--r--
mpls_iptunnel.h
178
B
-rw-r--r--
mroute.h
1.95
KB
-rw-r--r--
mroute6.h
2.39
KB
-rw-r--r--
mroute_base.h
12.03
KB
-rw-r--r--
msdos_fs.h
273
B
-rw-r--r--
msg.h
395
B
-rw-r--r--
msi.h
12.84
KB
-rw-r--r--
mutex.h
6.55
KB
-rw-r--r--
mv643xx.h
51.27
KB
-rw-r--r--
mv643xx_eth.h
1.95
KB
-rw-r--r--
mv643xx_i2c.h
335
B
-rw-r--r--
mvebu-pmsu.h
520
B
-rw-r--r--
mxm-wmi.h
399
B
-rw-r--r--
n_r3964.h
4.06
KB
-rw-r--r--
namei.h
3.34
KB
-rw-r--r--
nd.h
5.52
KB
-rw-r--r--
ndctl.h
674
B
-rw-r--r--
net.h
11.75
KB
-rw-r--r--
netdev_features.h
9.7
KB
-rw-r--r--
netdevice.h
152.29
KB
-rw-r--r--
netfilter.h
13.36
KB
-rw-r--r--
netfilter_bridge.h
2.08
KB
-rw-r--r--
netfilter_defs.h
242
B
-rw-r--r--
netfilter_ingress.h
1.44
KB
-rw-r--r--
netfilter_ipv4.h
1.05
KB
-rw-r--r--
netfilter_ipv6.h
5.85
KB
-rw-r--r--
netlink.h
7.19
KB
-rw-r--r--
netpoll.h
2.69
KB
-rw-r--r--
nfs.h
1.31
KB
-rw-r--r--
nfs3.h
260
B
-rw-r--r--
nfs4.h
17.86
KB
-rw-r--r--
nfs_fs.h
17.2
KB
-rw-r--r--
nfs_fs_i.h
308
B
-rw-r--r--
nfs_fs_sb.h
9.54
KB
-rw-r--r--
nfs_iostat.h
4.18
KB
-rw-r--r--
nfs_page.h
6.38
KB
-rw-r--r--
nfs_xdr.h
40.17
KB
-rw-r--r--
nfsacl.h
1.15
KB
-rw-r--r--
nl802154.h
3.85
KB
-rw-r--r--
nls.h
3.09
KB
-rw-r--r--
nmi.h
6.86
KB
-rw-r--r--
node.h
4.69
KB
-rw-r--r--
nodemask.h
17.1
KB
-rw-r--r--
nospec.h
2.21
KB
-rw-r--r--
notifier.h
8.21
KB
-rw-r--r--
ns_common.h
235
B
-rw-r--r--
nsc_gpio.h
1.42
KB
-rw-r--r--
nsproxy.h
2.48
KB
-rw-r--r--
ntb.h
52.43
KB
-rw-r--r--
ntb_transport.h
3.8
KB
-rw-r--r--
nubus.h
5.54
KB
-rw-r--r--
numa.h
292
B
-rw-r--r--
nvme-fc-driver.h
37.18
KB
-rw-r--r--
nvme-fc.h
9.69
KB
-rw-r--r--
nvme-rdma.h
2.04
KB
-rw-r--r--
nvme-tcp.h
4.42
KB
-rw-r--r--
nvme.h
33.32
KB
-rw-r--r--
nvmem-consumer.h
5.8
KB
-rw-r--r--
nvmem-provider.h
3.88
KB
-rw-r--r--
nvram.h
3.47
KB
-rw-r--r--
objagg.h
1.99
KB
-rw-r--r--
of.h
42.38
KB
-rw-r--r--
of_address.h
4.47
KB
-rw-r--r--
of_clk.h
795
B
-rw-r--r--
of_device.h
2.99
KB
-rw-r--r--
of_dma.h
2.3
KB
-rw-r--r--
of_fdt.h
3.69
KB
-rw-r--r--
of_gpio.h
3.96
KB
-rw-r--r--
of_graph.h
3.41
KB
-rw-r--r--
of_iommu.h
821
B
-rw-r--r--
of_irq.h
3.62
KB
-rw-r--r--
of_mdio.h
2.98
KB
-rw-r--r--
of_net.h
720
B
-rw-r--r--
of_pci.h
935
B
-rw-r--r--
of_pdt.h
1.14
KB
-rw-r--r--
of_platform.h
3.88
KB
-rw-r--r--
of_reserved_mem.h
2.15
KB
-rw-r--r--
oid_registry.h
4.44
KB
-rw-r--r--
olpc-ec.h
1.95
KB
-rw-r--r--
omap-dma.h
10.47
KB
-rw-r--r--
omap-gpmc.h
2.73
KB
-rw-r--r--
omap-iommu.h
880
B
-rw-r--r--
omap-mailbox.h
689
B
-rw-r--r--
omapfb.h
576
B
-rw-r--r--
once.h
2.79
KB
-rw-r--r--
oom.h
3.26
KB
-rw-r--r--
openvswitch.h
403
B
-rw-r--r--
oprofile.h
6.1
KB
-rw-r--r--
osq_lock.h
1.04
KB
-rw-r--r--
overflow.h
9.58
KB
-rw-r--r--
packing.h
1.78
KB
-rw-r--r--
padata.h
6.35
KB
-rw-r--r--
page-flags-layout.h
3.28
KB
-rw-r--r--
page-flags.h
27.15
KB
-rw-r--r--
page-isolation.h
1.65
KB
-rw-r--r--
page_counter.h
1.94
KB
-rw-r--r--
page_ext.h
1.68
KB
-rw-r--r--
page_idle.h
2.62
KB
-rw-r--r--
page_owner.h
2.29
KB
-rw-r--r--
page_ref.h
4.99
KB
-rw-r--r--
pageblock-flags.h
2.72
KB
-rw-r--r--
pagemap.h
18.76
KB
-rw-r--r--
pagevec.h
2.34
KB
-rw-r--r--
pagewalk.h
2.39
KB
-rw-r--r--
parman.h
2.87
KB
-rw-r--r--
parport.h
17.84
KB
-rw-r--r--
parport_pc.h
6.56
KB
-rw-r--r--
parser.h
1.04
KB
-rw-r--r--
pata_arasan_cf_data.h
1.22
KB
-rw-r--r--
patchkey.h
757
B
-rw-r--r--
path.h
572
B
-rw-r--r--
pch_dma.h
408
B
-rw-r--r--
pci-acpi.h
3.48
KB
-rw-r--r--
pci-ats.h
1.52
KB
-rw-r--r--
pci-dma-compat.h
3.66
KB
-rw-r--r--
pci-ecam.h
2.19
KB
-rw-r--r--
pci-ep-cfs.h
951
B
-rw-r--r--
pci-epc.h
6.93
KB
-rw-r--r--
pci-epf.h
4.75
KB
-rw-r--r--
pci-p2pdma.h
3.95
KB
-rw-r--r--
pci.h
86.3
KB
-rw-r--r--
pci_hotplug.h
4.25
KB
-rw-r--r--
pci_ids.h
121.42
KB
-rw-r--r--
pda_power.h
1005
B
-rw-r--r--
pe.h
15.05
KB
-rw-r--r--
percpu-defs.h
18.12
KB
-rw-r--r--
percpu-refcount.h
10.46
KB
-rw-r--r--
percpu-rwsem.h
3.93
KB
-rw-r--r--
percpu.h
4.65
KB
-rw-r--r--
percpu_counter.h
4.27
KB
-rw-r--r--
perf_event.h
42.54
KB
-rw-r--r--
perf_regs.h
1.13
KB
-rw-r--r--
personality.h
393
B
-rw-r--r--
pfn.h
666
B
-rw-r--r--
pfn_t.h
3.21
KB
-rw-r--r--
phonet.h
537
B
-rw-r--r--
phy.h
40.59
KB
-rw-r--r--
phy_fixed.h
1.77
KB
-rw-r--r--
phy_led_triggers.h
1.01
KB
-rw-r--r--
phylink.h
10.47
KB
-rw-r--r--
pid.h
5.85
KB
-rw-r--r--
pid_namespace.h
2.33
KB
-rw-r--r--
pim.h
2.67
KB
-rw-r--r--
pipe_fs_i.h
6.17
KB
-rw-r--r--
pkeys.h
1016
B
-rw-r--r--
pktcdvd.h
5.87
KB
-rw-r--r--
pl320-ipc.h
209
B
-rw-r--r--
pl353-smc.h
739
B
-rw-r--r--
platform_device.h
13.05
KB
-rw-r--r--
plist.h
8.66
KB
-rw-r--r--
pm-trace.h
940
B
-rw-r--r--
pm.h
33.27
KB
-rw-r--r--
pm2301_charger.h
1.09
KB
-rw-r--r--
pm_clock.h
2.45
KB
-rw-r--r--
pm_domain.h
11.74
KB
-rw-r--r--
pm_opp.h
11.41
KB
-rw-r--r--
pm_qos.h
9.83
KB
-rw-r--r--
pm_runtime.h
9.56
KB
-rw-r--r--
pm_wakeirq.h
1.48
KB
-rw-r--r--
pm_wakeup.h
5.74
KB
-rw-r--r--
pmbus.h
970
B
-rw-r--r--
pmu.h
2.44
KB
-rw-r--r--
pnfs_osd_xdr.h
9.27
KB
-rw-r--r--
pnp.h
14.89
KB
-rw-r--r--
poison.h
2.56
KB
-rw-r--r--
poll.h
4.01
KB
-rw-r--r--
posix-clock.h
3.91
KB
-rw-r--r--
posix-timers.h
6.31
KB
-rw-r--r--
posix_acl.h
3.09
KB
-rw-r--r--
posix_acl_xattr.h
1.58
KB
-rw-r--r--
power_supply.h
16.06
KB
-rw-r--r--
powercap.h
12.04
KB
-rw-r--r--
ppp-comp.h
2.95
KB
-rw-r--r--
ppp_channel.h
2.87
KB
-rw-r--r--
ppp_defs.h
305
B
-rw-r--r--
pps-gpio.h
395
B
-rw-r--r--
pps_kernel.h
2.9
KB
-rw-r--r--
pr.h
566
B
-rw-r--r--
prandom.h
3.38
KB
-rw-r--r--
preempt.h
10
KB
-rw-r--r--
prefetch.h
1.7
KB
-rw-r--r--
prime_numbers.h
1.35
KB
-rw-r--r--
printk.h
15.92
KB
-rw-r--r--
proc_fs.h
6.58
KB
-rw-r--r--
proc_ns.h
2.6
KB
-rw-r--r--
processor.h
1.84
KB
-rw-r--r--
profile.h
2.68
KB
-rw-r--r--
projid.h
2.22
KB
-rw-r--r--
property.h
14.29
KB
-rw-r--r--
psci.h
1.48
KB
-rw-r--r--
pseudo_fs.h
355
B
-rw-r--r--
psi.h
1.53
KB
-rw-r--r--
psi_types.h
3.53
KB
-rw-r--r--
psp-sev.h
17.04
KB
-rw-r--r--
pstore.h
7.28
KB
-rw-r--r--
pstore_ram.h
3.81
KB
-rw-r--r--
pti.h
240
B
-rw-r--r--
ptp_classify.h
2.33
KB
-rw-r--r--
ptp_clock_kernel.h
9.01
KB
-rw-r--r--
ptr_ring.h
16.27
KB
-rw-r--r--
ptrace.h
14.65
KB
-rw-r--r--
purgatory.h
589
B
-rw-r--r--
pvclock_gtod.h
548
B
-rw-r--r--
pwm.h
16.08
KB
-rw-r--r--
pwm_backlight.h
802
B
-rw-r--r--
pxa168_eth.h
728
B
-rw-r--r--
pxa2xx_ssp.h
9.85
KB
-rw-r--r--
qcom-geni-se.h
12.21
KB
-rw-r--r--
qcom_scm.h
4.09
KB
-rw-r--r--
qnx6_fs.h
3.27
KB
-rw-r--r--
quota.h
18.7
KB
-rw-r--r--
quotaops.h
10.37
KB
-rw-r--r--
radix-tree.h
15.61
KB
-rw-r--r--
raid_class.h
2
KB
-rw-r--r--
ramfs.h
659
B
-rw-r--r--
random.h
3.98
KB
-rw-r--r--
range.h
651
B
-rw-r--r--
ras.h
1.18
KB
-rw-r--r--
ratelimit.h
2.81
KB
-rw-r--r--
rational.h
639
B
-rw-r--r--
rbtree.h
5.09
KB
-rw-r--r--
rbtree_augmented.h
9.6
KB
-rw-r--r--
rbtree_latch.h
6.64
KB
-rw-r--r--
rcu_node_tree.h
3.7
KB
-rw-r--r--
rcu_segcblist.h
2.77
KB
-rw-r--r--
rcu_sync.h
1.46
KB
-rw-r--r--
rculist.h
25.42
KB
-rw-r--r--
rculist_bl.h
4.36
KB
-rw-r--r--
rculist_nulls.h
6.17
KB
-rw-r--r--
rcupdate.h
34.54
KB
-rw-r--r--
rcupdate_wait.h
897
B
-rw-r--r--
rcutiny.h
2.58
KB
-rw-r--r--
rcutree.h
1.93
KB
-rw-r--r--
rcuwait.h
1.23
KB
-rw-r--r--
reboot-mode.h
600
B
-rw-r--r--
reboot.h
2.11
KB
-rw-r--r--
reciprocal_div.h
3.28
KB
-rw-r--r--
refcount.h
10.3
KB
-rw-r--r--
regmap.h
52.3
KB
-rw-r--r--
regset.h
14.92
KB
-rw-r--r--
relay.h
8.84
KB
-rw-r--r--
remoteproc.h
22.07
KB
-rw-r--r--
reset-controller.h
3.03
KB
-rw-r--r--
reset.h
15.74
KB
-rw-r--r--
resource.h
339
B
-rw-r--r--
resource_ext.h
1.83
KB
-rw-r--r--
restart_block.h
1.09
KB
-rw-r--r--
rfkill.h
9.86
KB
-rw-r--r--
rhashtable-types.h
3.45
KB
-rw-r--r--
rhashtable.h
37.82
KB
-rw-r--r--
ring_buffer.h
7.27
KB
-rw-r--r--
rio.h
19.02
KB
-rw-r--r--
rio_drv.h
14.5
KB
-rw-r--r--
rio_ids.h
1.08
KB
-rw-r--r--
rio_regs.h
19.07
KB
-rw-r--r--
rmap.h
9.08
KB
-rw-r--r--
rmi.h
12.02
KB
-rw-r--r--
rndis.h
16.86
KB
-rw-r--r--
rodata_test.h
394
B
-rw-r--r--
root_dev.h
619
B
-rw-r--r--
rpmsg.h
7.3
KB
-rw-r--r--
rslib.h
3.67
KB
-rw-r--r--
rtc.h
9
KB
-rw-r--r--
rtmutex.h
3.47
KB
-rw-r--r--
rtnetlink.h
4.46
KB
-rw-r--r--
rtsx_common.h
890
B
-rw-r--r--
rtsx_pci.h
39.6
KB
-rw-r--r--
rtsx_usb.h
15.38
KB
-rw-r--r--
rwlock.h
4.35
KB
-rw-r--r--
rwlock_api_smp.h
7.67
KB
-rw-r--r--
rwlock_types.h
1.12
KB
-rw-r--r--
rwsem.h
6.4
KB
-rw-r--r--
s3c_adc_battery.h
971
B
-rw-r--r--
sbitmap.h
16.52
KB
-rw-r--r--
scatterlist.h
16.16
KB
-rw-r--r--
scc.h
2.84
KB
-rw-r--r--
sched.h
55.47
KB
-rw-r--r--
sched_clock.h
520
B
-rw-r--r--
scif.h
58.87
KB
-rw-r--r--
scmi_protocol.h
10.44
KB
-rw-r--r--
scpi_protocol.h
2.04
KB
-rw-r--r--
screen_info.h
191
B
-rw-r--r--
sctp.h
21.99
KB
-rw-r--r--
scx200.h
1.82
KB
-rw-r--r--
scx200_gpio.h
2.38
KB
-rw-r--r--
sdb.h
4.17
KB
-rw-r--r--
sdla.h
6.69
KB
-rw-r--r--
seccomp.h
2.94
KB
-rw-r--r--
securebits.h
239
B
-rw-r--r--
security.h
51.54
KB
-rw-r--r--
sed-opal.h
1.62
KB
-rw-r--r--
seg6.h
121
B
-rw-r--r--
seg6_genl.h
136
B
-rw-r--r--
seg6_hmac.h
136
B
-rw-r--r--
seg6_iptunnel.h
148
B
-rw-r--r--
seg6_local.h
100
B
-rw-r--r--
selection.h
1.74
KB
-rw-r--r--
sem.h
599
B
-rw-r--r--
semaphore.h
1.35
KB
-rw-r--r--
seq_buf.h
3.15
KB
-rw-r--r--
seq_file.h
7.43
KB
-rw-r--r--
seq_file_net.h
730
B
-rw-r--r--
seqlock.h
16.46
KB
-rw-r--r--
seqno-fence.h
3.57
KB
-rw-r--r--
serdev.h
9.45
KB
-rw-r--r--
serial.h
630
B
-rw-r--r--
serial_8250.h
6
KB
-rw-r--r--
serial_bcm63xx.h
4.73
KB
-rw-r--r--
serial_core.h
19.48
KB
-rw-r--r--
serial_max3100.h
1.19
KB
-rw-r--r--
serial_pnx8xxx.h
1.96
KB
-rw-r--r--
serial_s3c.h
8.58
KB
-rw-r--r--
serial_sci.h
1.6
KB
-rw-r--r--
serio.h
4.28
KB
-rw-r--r--
set_memory.h
1.24
KB
-rw-r--r--
sfi.h
5.75
KB
-rw-r--r--
sfi_acpi.h
3.39
KB
-rw-r--r--
sfp.h
14.11
KB
-rw-r--r--
sh_clk.h
5.96
KB
-rw-r--r--
sh_dma.h
3.47
KB
-rw-r--r--
sh_eth.h
369
B
-rw-r--r--
sh_intc.h
3.59
KB
-rw-r--r--
sh_timer.h
172
B
-rw-r--r--
shdma-base.h
4.27
KB
-rw-r--r--
shm.h
968
B
-rw-r--r--
shmem_fs.h
5.15
KB
-rw-r--r--
shrinker.h
3.21
KB
-rw-r--r--
signal.h
12.94
KB
-rw-r--r--
signal_types.h
1.21
KB
-rw-r--r--
signalfd.h
817
B
-rw-r--r--
siox.h
2.26
KB
-rw-r--r--
siphash.h
5.59
KB
-rw-r--r--
sirfsoc_dma.h
162
B
-rw-r--r--
sizes.h
1.16
KB
-rw-r--r--
skb_array.h
5.18
KB
-rw-r--r--
skbuff.h
129.45
KB
-rw-r--r--
skmsg.h
11.45
KB
-rw-r--r--
slab.h
21.09
KB
-rw-r--r--
slab_def.h
2.88
KB
-rw-r--r--
slimbus.h
6.93
KB
-rw-r--r--
slub_def.h
5.56
KB
-rw-r--r--
sm501-regs.h
11.62
KB
-rw-r--r--
sm501.h
4.02
KB
-rw-r--r--
smc911x.h
294
B
-rw-r--r--
smc91x.h
1.57
KB
-rw-r--r--
smp.h
5.98
KB
-rw-r--r--
smpboot.h
1.68
KB
-rw-r--r--
smsc911x.h
1.63
KB
-rw-r--r--
smscphy.h
1.25
KB
-rw-r--r--
sock_diag.h
2.16
KB
-rw-r--r--
socket.h
13.61
KB
-rw-r--r--
sonet.h
469
B
-rw-r--r--
sony-laptop.h
1.41
KB
-rw-r--r--
sonypi.h
1.71
KB
-rw-r--r--
sort.h
420
B
-rw-r--r--
sound.h
685
B
-rw-r--r--
soundcard.h
1.59
KB
-rw-r--r--
spinlock.h
13.44
KB
-rw-r--r--
spinlock_api_smp.h
5.4
KB
-rw-r--r--
spinlock_api_up.h
3.31
KB
-rw-r--r--
spinlock_types.h
1.99
KB
-rw-r--r--
spinlock_types_up.h
726
B
-rw-r--r--
spinlock_up.h
2.16
KB
-rw-r--r--
splice.h
3.01
KB
-rw-r--r--
spmi.h
5.55
KB
-rw-r--r--
sram.h
844
B
-rw-r--r--
srcu.h
6.57
KB
-rw-r--r--
srcutiny.h
2.59
KB
-rw-r--r--
srcutree.h
4.87
KB
-rw-r--r--
ssbi.h
726
B
-rw-r--r--
stackdepot.h
539
B
-rw-r--r--
stackleak.h
909
B
-rw-r--r--
stackprotector.h
321
B
-rw-r--r--
stacktrace.h
3.42
KB
-rw-r--r--
start_kernel.h
415
B
-rw-r--r--
stat.h
1.18
KB
-rw-r--r--
statfs.h
1.4
KB
-rw-r--r--
static_key.h
30
B
-rw-r--r--
stddef.h
1.24
KB
-rw-r--r--
stm.h
4.35
KB
-rw-r--r--
stmmac.h
4.79
KB
-rw-r--r--
stmp3xxx_rtc_wdt.h
331
B
-rw-r--r--
stmp_device.h
412
B
-rw-r--r--
stop_machine.h
4.74
KB
-rw-r--r--
string.h
16.59
KB
-rw-r--r--
string_helpers.h
2.53
KB
-rw-r--r--
stringhash.h
2.65
KB
-rw-r--r--
stringify.h
341
B
-rw-r--r--
sungem_phy.h
3.94
KB
-rw-r--r--
sunserialcore.h
1.08
KB
-rw-r--r--
sunxi-rsb.h
2.89
KB
-rw-r--r--
superhyway.h
2.81
KB
-rw-r--r--
suspend.h
20.62
KB
-rw-r--r--
svga.h
3.75
KB
-rw-r--r--
sw842.h
328
B
-rw-r--r--
swab.h
569
B
-rw-r--r--
swait.h
10.04
KB
-rw-r--r--
swap.h
21.37
KB
-rw-r--r--
swap_cgroup.h
971
B
-rw-r--r--
swap_slots.h
840
B
-rw-r--r--
swapfile.h
556
B
-rw-r--r--
swapops.h
8.56
KB
-rw-r--r--
swiotlb.h
3
KB
-rw-r--r--
switchtec.h
8.33
KB
-rw-r--r--
sxgbe_platform.h
1.2
KB
-rw-r--r--
sync_core.h
581
B
-rw-r--r--
sync_file.h
1.57
KB
-rw-r--r--
synclink.h
989
B
-rw-r--r--
sys.h
960
B
-rw-r--r--
sys_soc.h
1.21
KB
-rw-r--r--
syscalls.h
55.6
KB
-rw-r--r--
syscore_ops.h
633
B
-rw-r--r--
sysctl.h
7.78
KB
-rw-r--r--
sysfs.h
17.13
KB
-rw-r--r--
syslog.h
1.24
KB
-rw-r--r--
sysrq.h
1.79
KB
-rw-r--r--
sysv_fs.h
9.03
KB
-rw-r--r--
t10-pi.h
1.5
KB
-rw-r--r--
task_io_accounting.h
1.13
KB
-rw-r--r--
task_io_accounting_ops.h
2.55
KB
-rw-r--r--
task_work.h
617
B
-rw-r--r--
taskstats_kern.h
957
B
-rw-r--r--
tboot.h
3.38
KB
-rw-r--r--
tc.h
3.45
KB
-rw-r--r--
tca6416_keypad.h
701
B
-rw-r--r--
tcp.h
16.11
KB
-rw-r--r--
tee_drv.h
18.2
KB
-rw-r--r--
textsearch.h
4.73
KB
-rw-r--r--
textsearch_fsm.h
1.19
KB
-rw-r--r--
tfrc.h
1.68
KB
-rw-r--r--
thermal.h
19.34
KB
-rw-r--r--
thread_info.h
4.44
KB
-rw-r--r--
threads.h
1.28
KB
-rw-r--r--
thunderbolt.h
19.24
KB
-rw-r--r--
ti-emif-sram.h
5.15
KB
-rw-r--r--
ti_wilink_st.h
13.46
KB
-rw-r--r--
tick.h
9.41
KB
-rw-r--r--
tifm.h
4.66
KB
-rw-r--r--
timb_dma.h
1.17
KB
-rw-r--r--
timb_gpio.h
717
B
-rw-r--r--
time.h
3.75
KB
-rw-r--r--
time32.h
5.76
KB
-rw-r--r--
time64.h
4.6
KB
-rw-r--r--
timecounter.h
4.14
KB
-rw-r--r--
timekeeper_internal.h
5.33
KB
-rw-r--r--
timekeeping.h
7.18
KB
-rw-r--r--
timekeeping32.h
920
B
-rw-r--r--
timer.h
7.54
KB
-rw-r--r--
timerfd.h
508
B
-rw-r--r--
timeriomem-rng.h
432
B
-rw-r--r--
timerqueue.h
1.4
KB
-rw-r--r--
timex.h
6.7
KB
-rw-r--r--
tnum.h
2.95
KB
-rw-r--r--
topology.h
5.55
KB
-rw-r--r--
torture.h
3.21
KB
-rw-r--r--
toshiba.h
460
B
-rw-r--r--
tpm.h
5.48
KB
-rw-r--r--
tpm_command.h
847
B
-rw-r--r--
tpm_eventlog.h
6.53
KB
-rw-r--r--
trace.h
964
B
-rw-r--r--
trace_clock.h
667
B
-rw-r--r--
trace_events.h
20.56
KB
-rw-r--r--
trace_seq.h
3.74
KB
-rw-r--r--
tracefs.h
1.05
KB
-rw-r--r--
tracehook.h
7.25
KB
-rw-r--r--
tracepoint-defs.h
1.03
KB
-rw-r--r--
tracepoint.h
17.97
KB
-rw-r--r--
transport_class.h
2.51
KB
-rw-r--r--
ts-nbus.h
532
B
-rw-r--r--
tsacct_kern.h
1.2
KB
-rw-r--r--
tty.h
28.04
KB
-rw-r--r--
tty_driver.h
15.61
KB
-rw-r--r--
tty_flip.h
1.62
KB
-rw-r--r--
tty_ldisc.h
7.96
KB
-rw-r--r--
typecheck.h
624
B
-rw-r--r--
types.h
5.41
KB
-rw-r--r--
u64_stats_sync.h
5.17
KB
-rw-r--r--
uaccess.h
13.08
KB
-rw-r--r--
ucb1400.h
4.12
KB
-rw-r--r--
ucs2_string.h
662
B
-rw-r--r--
udp.h
4.22
KB
-rw-r--r--
uidgid.h
4.07
KB
-rw-r--r--
uio.h
8.55
KB
-rw-r--r--
uio_driver.h
4.1
KB
-rw-r--r--
umh.h
2.26
KB
-rw-r--r--
unicode.h
946
B
-rw-r--r--
units.h
2.18
KB
-rw-r--r--
uprobes.h
6
KB
-rw-r--r--
usb.h
77.19
KB
-rw-r--r--
usb_usual.h
3.58
KB
-rw-r--r--
usbdevice_fs.h
2.18
KB
-rw-r--r--
user-return-notifier.h
1.18
KB
-rw-r--r--
user.h
22
B
-rw-r--r--
user_namespace.h
4.65
KB
-rw-r--r--
userfaultfd_k.h
3.69
KB
-rw-r--r--
util_macros.h
1.17
KB
-rw-r--r--
uts.h
388
B
-rw-r--r--
utsname.h
1.79
KB
-rw-r--r--
uuid.h
1.99
KB
-rw-r--r--
vbox_utils.h
1.69
KB
-rw-r--r--
verification.h
1.75
KB
-rw-r--r--
vermagic.h
1.13
KB
-rw-r--r--
vexpress.h
1.06
KB
-rw-r--r--
vfio.h
6.29
KB
-rw-r--r--
vfs.h
116
B
-rw-r--r--
vga_switcheroo.h
8.62
KB
-rw-r--r--
vgaarb.h
5.24
KB
-rw-r--r--
via-core.h
6.6
KB
-rw-r--r--
via-gpio.h
310
B
-rw-r--r--
via.h
932
B
-rw-r--r--
via_i2c.h
844
B
-rw-r--r--
videodev2.h
2.68
KB
-rw-r--r--
virtio.h
6.79
KB
-rw-r--r--
virtio_byteorder.h
1.46
KB
-rw-r--r--
virtio_caif.h
492
B
-rw-r--r--
virtio_config.h
13.39
KB
-rw-r--r--
virtio_console.h
1.93
KB
-rw-r--r--
virtio_net.h
5.49
KB
-rw-r--r--
virtio_ring.h
2.96
KB
-rw-r--r--
virtio_vsock.h
5.06
KB
-rw-r--r--
visorbus.h
12.23
KB
-rw-r--r--
vlynq.h
3.22
KB
-rw-r--r--
vm_event_item.h
2.96
KB
-rw-r--r--
vm_sockets.h
287
B
-rw-r--r--
vmacache.h
722
B
-rw-r--r--
vmalloc.h
7.21
KB
-rw-r--r--
vme.h
5.66
KB
-rw-r--r--
vmpressure.h
1.69
KB
-rw-r--r--
vmstat.h
10.51
KB
-rw-r--r--
vmw_vmci_api.h
2.78
KB
-rw-r--r--
vmw_vmci_defs.h
27.47
KB
-rw-r--r--
vringh.h
7.11
KB
-rw-r--r--
vt.h
611
B
-rw-r--r--
vt_buffer.h
1.49
KB
-rw-r--r--
vt_kern.h
6.04
KB
-rw-r--r--
vtime.h
3.57
KB
-rw-r--r--
w1-gpio.h
493
B
-rw-r--r--
w1.h
8.88
KB
-rw-r--r--
wait.h
41.35
KB
-rw-r--r--
wait_bit.h
11.2
KB
-rw-r--r--
watchdog.h
7.73
KB
-rw-r--r--
win_minmax.h
832
B
-rw-r--r--
wireless.h
1.4
KB
-rw-r--r--
wkup_m3_ipc.h
1.75
KB
-rw-r--r--
wl12xx.h
810
B
-rw-r--r--
wm97xx.h
10.61
KB
-rw-r--r--
wmi.h
1.56
KB
-rw-r--r--
workqueue.h
21.03
KB
-rw-r--r--
writeback.h
13.02
KB
-rw-r--r--
ww_mutex.h
12.78
KB
-rw-r--r--
xarray.h
54.24
KB
-rw-r--r--
xattr.h
3.49
KB
-rw-r--r--
xxhash.h
8.27
KB
-rw-r--r--
xz.h
11.16
KB
-rw-r--r--
yam.h
2.18
KB
-rw-r--r--
z2_battery.h
318
B
-rw-r--r--
zbud.h
740
B
-rw-r--r--
zconf.h
1.73
KB
-rw-r--r--
zlib.h
28.11
KB
-rw-r--r--
zorro.h
3.94
KB
-rw-r--r--
zpool.h
3.11
KB
-rw-r--r--
zsmalloc.h
1.63
KB
-rw-r--r--
zstd.h
48.64
KB
-rw-r--r--
zutil.h
2.73
KB
-rw-r--r--
Delete
Unzip
Zip
${this.title}
Close
Code Editor : ata.h
/* SPDX-License-Identifier: GPL-2.0-or-later */ /* * Copyright 2003-2004 Red Hat, Inc. All rights reserved. * Copyright 2003-2004 Jeff Garzik * * libata documentation is available via 'make {ps|pdf}docs', * as Documentation/driver-api/libata.rst * * Hardware documentation available from http://www.t13.org/ */ #ifndef __LINUX_ATA_H__ #define __LINUX_ATA_H__ #include <linux/kernel.h> #include <linux/string.h> #include <linux/types.h> #include <asm/byteorder.h> /* defines only for the constants which don't work well as enums */ #define ATA_DMA_BOUNDARY 0xffffUL #define ATA_DMA_MASK 0xffffffffULL enum { /* various global constants */ ATA_MAX_DEVICES = 2, /* per bus/port */ ATA_MAX_PRD = 256, /* we could make these 256/256 */ ATA_SECT_SIZE = 512, ATA_MAX_SECTORS_128 = 128, ATA_MAX_SECTORS = 256, ATA_MAX_SECTORS_1024 = 1024, ATA_MAX_SECTORS_LBA48 = 65535,/* avoid count to be 0000h */ ATA_MAX_SECTORS_TAPE = 65535, ATA_MAX_TRIM_RNUM = 64, /* 512-byte payload / (6-byte LBA + 2-byte range per entry) */ ATA_ID_WORDS = 256, ATA_ID_CONFIG = 0, ATA_ID_CYLS = 1, ATA_ID_HEADS = 3, ATA_ID_SECTORS = 6, ATA_ID_SERNO = 10, ATA_ID_BUF_SIZE = 21, ATA_ID_FW_REV = 23, ATA_ID_PROD = 27, ATA_ID_MAX_MULTSECT = 47, ATA_ID_DWORD_IO = 48, /* before ATA-8 */ ATA_ID_TRUSTED = 48, /* ATA-8 and later */ ATA_ID_CAPABILITY = 49, ATA_ID_OLD_PIO_MODES = 51, ATA_ID_OLD_DMA_MODES = 52, ATA_ID_FIELD_VALID = 53, ATA_ID_CUR_CYLS = 54, ATA_ID_CUR_HEADS = 55, ATA_ID_CUR_SECTORS = 56, ATA_ID_MULTSECT = 59, ATA_ID_LBA_CAPACITY = 60, ATA_ID_SWDMA_MODES = 62, ATA_ID_MWDMA_MODES = 63, ATA_ID_PIO_MODES = 64, ATA_ID_EIDE_DMA_MIN = 65, ATA_ID_EIDE_DMA_TIME = 66, ATA_ID_EIDE_PIO = 67, ATA_ID_EIDE_PIO_IORDY = 68, ATA_ID_ADDITIONAL_SUPP = 69, ATA_ID_QUEUE_DEPTH = 75, ATA_ID_SATA_CAPABILITY = 76, ATA_ID_SATA_CAPABILITY_2 = 77, ATA_ID_FEATURE_SUPP = 78, ATA_ID_MAJOR_VER = 80, ATA_ID_COMMAND_SET_1 = 82, ATA_ID_COMMAND_SET_2 = 83, ATA_ID_CFSSE = 84, ATA_ID_CFS_ENABLE_1 = 85, ATA_ID_CFS_ENABLE_2 = 86, ATA_ID_CSF_DEFAULT = 87, ATA_ID_UDMA_MODES = 88, ATA_ID_HW_CONFIG = 93, ATA_ID_SPG = 98, ATA_ID_LBA_CAPACITY_2 = 100, ATA_ID_SECTOR_SIZE = 106, ATA_ID_WWN = 108, ATA_ID_LOGICAL_SECTOR_SIZE = 117, /* and 118 */ ATA_ID_COMMAND_SET_3 = 119, ATA_ID_COMMAND_SET_4 = 120, ATA_ID_LAST_LUN = 126, ATA_ID_DLF = 128, ATA_ID_CSFO = 129, ATA_ID_CFA_POWER = 160, ATA_ID_CFA_KEY_MGMT = 162, ATA_ID_CFA_MODES = 163, ATA_ID_DATA_SET_MGMT = 169, ATA_ID_SCT_CMD_XPORT = 206, ATA_ID_ROT_SPEED = 217, ATA_ID_PIO4 = (1 << 1), ATA_ID_SERNO_LEN = 20, ATA_ID_FW_REV_LEN = 8, ATA_ID_PROD_LEN = 40, ATA_ID_WWN_LEN = 8, ATA_PCI_CTL_OFS = 2, ATA_PIO0 = (1 << 0), ATA_PIO1 = ATA_PIO0 | (1 << 1), ATA_PIO2 = ATA_PIO1 | (1 << 2), ATA_PIO3 = ATA_PIO2 | (1 << 3), ATA_PIO4 = ATA_PIO3 | (1 << 4), ATA_PIO5 = ATA_PIO4 | (1 << 5), ATA_PIO6 = ATA_PIO5 | (1 << 6), ATA_PIO4_ONLY = (1 << 4), ATA_SWDMA0 = (1 << 0), ATA_SWDMA1 = ATA_SWDMA0 | (1 << 1), ATA_SWDMA2 = ATA_SWDMA1 | (1 << 2), ATA_SWDMA2_ONLY = (1 << 2), ATA_MWDMA0 = (1 << 0), ATA_MWDMA1 = ATA_MWDMA0 | (1 << 1), ATA_MWDMA2 = ATA_MWDMA1 | (1 << 2), ATA_MWDMA3 = ATA_MWDMA2 | (1 << 3), ATA_MWDMA4 = ATA_MWDMA3 | (1 << 4), ATA_MWDMA12_ONLY = (1 << 1) | (1 << 2), ATA_MWDMA2_ONLY = (1 << 2), ATA_UDMA0 = (1 << 0), ATA_UDMA1 = ATA_UDMA0 | (1 << 1), ATA_UDMA2 = ATA_UDMA1 | (1 << 2), ATA_UDMA3 = ATA_UDMA2 | (1 << 3), ATA_UDMA4 = ATA_UDMA3 | (1 << 4), ATA_UDMA5 = ATA_UDMA4 | (1 << 5), ATA_UDMA6 = ATA_UDMA5 | (1 << 6), ATA_UDMA7 = ATA_UDMA6 | (1 << 7), /* ATA_UDMA7 is just for completeness... doesn't exist (yet?). */ ATA_UDMA24_ONLY = (1 << 2) | (1 << 4), ATA_UDMA_MASK_40C = ATA_UDMA2, /* udma0-2 */ /* DMA-related */ ATA_PRD_SZ = 8, ATA_PRD_TBL_SZ = (ATA_MAX_PRD * ATA_PRD_SZ), ATA_PRD_EOT = (1 << 31), /* end-of-table flag */ ATA_DMA_TABLE_OFS = 4, ATA_DMA_STATUS = 2, ATA_DMA_CMD = 0, ATA_DMA_WR = (1 << 3), ATA_DMA_START = (1 << 0), ATA_DMA_INTR = (1 << 2), ATA_DMA_ERR = (1 << 1), ATA_DMA_ACTIVE = (1 << 0), /* bits in ATA command block registers */ ATA_HOB = (1 << 7), /* LBA48 selector */ ATA_NIEN = (1 << 1), /* disable-irq flag */ ATA_LBA = (1 << 6), /* LBA28 selector */ ATA_DEV1 = (1 << 4), /* Select Device 1 (slave) */ ATA_DEVICE_OBS = (1 << 7) | (1 << 5), /* obs bits in dev reg */ ATA_DEVCTL_OBS = (1 << 3), /* obsolete bit in devctl reg */ ATA_BUSY = (1 << 7), /* BSY status bit */ ATA_DRDY = (1 << 6), /* device ready */ ATA_DF = (1 << 5), /* device fault */ ATA_DSC = (1 << 4), /* drive seek complete */ ATA_DRQ = (1 << 3), /* data request i/o */ ATA_CORR = (1 << 2), /* corrected data error */ ATA_SENSE = (1 << 1), /* sense code available */ ATA_ERR = (1 << 0), /* have an error */ ATA_SRST = (1 << 2), /* software reset */ ATA_ICRC = (1 << 7), /* interface CRC error */ ATA_BBK = ATA_ICRC, /* pre-EIDE: block marked bad */ ATA_UNC = (1 << 6), /* uncorrectable media error */ ATA_MC = (1 << 5), /* media changed */ ATA_IDNF = (1 << 4), /* ID not found */ ATA_MCR = (1 << 3), /* media change requested */ ATA_ABORTED = (1 << 2), /* command aborted */ ATA_TRK0NF = (1 << 1), /* track 0 not found */ ATA_AMNF = (1 << 0), /* address mark not found */ ATAPI_LFS = 0xF0, /* last failed sense */ ATAPI_EOM = ATA_TRK0NF, /* end of media */ ATAPI_ILI = ATA_AMNF, /* illegal length indication */ ATAPI_IO = (1 << 1), ATAPI_COD = (1 << 0), /* ATA command block registers */ ATA_REG_DATA = 0x00, ATA_REG_ERR = 0x01, ATA_REG_NSECT = 0x02, ATA_REG_LBAL = 0x03, ATA_REG_LBAM = 0x04, ATA_REG_LBAH = 0x05, ATA_REG_DEVICE = 0x06, ATA_REG_STATUS = 0x07, ATA_REG_FEATURE = ATA_REG_ERR, /* and their aliases */ ATA_REG_CMD = ATA_REG_STATUS, ATA_REG_BYTEL = ATA_REG_LBAM, ATA_REG_BYTEH = ATA_REG_LBAH, ATA_REG_DEVSEL = ATA_REG_DEVICE, ATA_REG_IRQ = ATA_REG_NSECT, /* ATA device commands */ ATA_CMD_DEV_RESET = 0x08, /* ATAPI device reset */ ATA_CMD_CHK_POWER = 0xE5, /* check power mode */ ATA_CMD_STANDBY = 0xE2, /* place in standby power mode */ ATA_CMD_IDLE = 0xE3, /* place in idle power mode */ ATA_CMD_EDD = 0x90, /* execute device diagnostic */ ATA_CMD_DOWNLOAD_MICRO = 0x92, ATA_CMD_DOWNLOAD_MICRO_DMA = 0x93, ATA_CMD_NOP = 0x00, ATA_CMD_FLUSH = 0xE7, ATA_CMD_FLUSH_EXT = 0xEA, ATA_CMD_ID_ATA = 0xEC, ATA_CMD_ID_ATAPI = 0xA1, ATA_CMD_SERVICE = 0xA2, ATA_CMD_READ = 0xC8, ATA_CMD_READ_EXT = 0x25, ATA_CMD_READ_QUEUED = 0x26, ATA_CMD_READ_STREAM_EXT = 0x2B, ATA_CMD_READ_STREAM_DMA_EXT = 0x2A, ATA_CMD_WRITE = 0xCA, ATA_CMD_WRITE_EXT = 0x35, ATA_CMD_WRITE_QUEUED = 0x36, ATA_CMD_WRITE_STREAM_EXT = 0x3B, ATA_CMD_WRITE_STREAM_DMA_EXT = 0x3A, ATA_CMD_WRITE_FUA_EXT = 0x3D, ATA_CMD_WRITE_QUEUED_FUA_EXT = 0x3E, ATA_CMD_FPDMA_READ = 0x60, ATA_CMD_FPDMA_WRITE = 0x61, ATA_CMD_NCQ_NON_DATA = 0x63, ATA_CMD_FPDMA_SEND = 0x64, ATA_CMD_FPDMA_RECV = 0x65, ATA_CMD_PIO_READ = 0x20, ATA_CMD_PIO_READ_EXT = 0x24, ATA_CMD_PIO_WRITE = 0x30, ATA_CMD_PIO_WRITE_EXT = 0x34, ATA_CMD_READ_MULTI = 0xC4, ATA_CMD_READ_MULTI_EXT = 0x29, ATA_CMD_WRITE_MULTI = 0xC5, ATA_CMD_WRITE_MULTI_EXT = 0x39, ATA_CMD_WRITE_MULTI_FUA_EXT = 0xCE, ATA_CMD_SET_FEATURES = 0xEF, ATA_CMD_SET_MULTI = 0xC6, ATA_CMD_PACKET = 0xA0, ATA_CMD_VERIFY = 0x40, ATA_CMD_VERIFY_EXT = 0x42, ATA_CMD_WRITE_UNCORR_EXT = 0x45, ATA_CMD_STANDBYNOW1 = 0xE0, ATA_CMD_IDLEIMMEDIATE = 0xE1, ATA_CMD_SLEEP = 0xE6, ATA_CMD_INIT_DEV_PARAMS = 0x91, ATA_CMD_READ_NATIVE_MAX = 0xF8, ATA_CMD_READ_NATIVE_MAX_EXT = 0x27, ATA_CMD_SET_MAX = 0xF9, ATA_CMD_SET_MAX_EXT = 0x37, ATA_CMD_READ_LOG_EXT = 0x2F, ATA_CMD_WRITE_LOG_EXT = 0x3F, ATA_CMD_READ_LOG_DMA_EXT = 0x47, ATA_CMD_WRITE_LOG_DMA_EXT = 0x57, ATA_CMD_TRUSTED_NONDATA = 0x5B, ATA_CMD_TRUSTED_RCV = 0x5C, ATA_CMD_TRUSTED_RCV_DMA = 0x5D, ATA_CMD_TRUSTED_SND = 0x5E, ATA_CMD_TRUSTED_SND_DMA = 0x5F, ATA_CMD_PMP_READ = 0xE4, ATA_CMD_PMP_READ_DMA = 0xE9, ATA_CMD_PMP_WRITE = 0xE8, ATA_CMD_PMP_WRITE_DMA = 0xEB, ATA_CMD_CONF_OVERLAY = 0xB1, ATA_CMD_SEC_SET_PASS = 0xF1, ATA_CMD_SEC_UNLOCK = 0xF2, ATA_CMD_SEC_ERASE_PREP = 0xF3, ATA_CMD_SEC_ERASE_UNIT = 0xF4, ATA_CMD_SEC_FREEZE_LOCK = 0xF5, ATA_CMD_SEC_DISABLE_PASS = 0xF6, ATA_CMD_CONFIG_STREAM = 0x51, ATA_CMD_SMART = 0xB0, ATA_CMD_MEDIA_LOCK = 0xDE, ATA_CMD_MEDIA_UNLOCK = 0xDF, ATA_CMD_DSM = 0x06, ATA_CMD_CHK_MED_CRD_TYP = 0xD1, ATA_CMD_CFA_REQ_EXT_ERR = 0x03, ATA_CMD_CFA_WRITE_NE = 0x38, ATA_CMD_CFA_TRANS_SECT = 0x87, ATA_CMD_CFA_ERASE = 0xC0, ATA_CMD_CFA_WRITE_MULT_NE = 0xCD, ATA_CMD_REQ_SENSE_DATA = 0x0B, ATA_CMD_SANITIZE_DEVICE = 0xB4, ATA_CMD_ZAC_MGMT_IN = 0x4A, ATA_CMD_ZAC_MGMT_OUT = 0x9F, /* marked obsolete in the ATA/ATAPI-7 spec */ ATA_CMD_RESTORE = 0x10, /* Subcmds for ATA_CMD_FPDMA_RECV */ ATA_SUBCMD_FPDMA_RECV_RD_LOG_DMA_EXT = 0x01, ATA_SUBCMD_FPDMA_RECV_ZAC_MGMT_IN = 0x02, /* Subcmds for ATA_CMD_FPDMA_SEND */ ATA_SUBCMD_FPDMA_SEND_DSM = 0x00, ATA_SUBCMD_FPDMA_SEND_WR_LOG_DMA_EXT = 0x02, /* Subcmds for ATA_CMD_NCQ_NON_DATA */ ATA_SUBCMD_NCQ_NON_DATA_ABORT_QUEUE = 0x00, ATA_SUBCMD_NCQ_NON_DATA_SET_FEATURES = 0x05, ATA_SUBCMD_NCQ_NON_DATA_ZERO_EXT = 0x06, ATA_SUBCMD_NCQ_NON_DATA_ZAC_MGMT_OUT = 0x07, /* Subcmds for ATA_CMD_ZAC_MGMT_IN */ ATA_SUBCMD_ZAC_MGMT_IN_REPORT_ZONES = 0x00, /* Subcmds for ATA_CMD_ZAC_MGMT_OUT */ ATA_SUBCMD_ZAC_MGMT_OUT_CLOSE_ZONE = 0x01, ATA_SUBCMD_ZAC_MGMT_OUT_FINISH_ZONE = 0x02, ATA_SUBCMD_ZAC_MGMT_OUT_OPEN_ZONE = 0x03, ATA_SUBCMD_ZAC_MGMT_OUT_RESET_WRITE_POINTER = 0x04, /* READ_LOG_EXT pages */ ATA_LOG_DIRECTORY = 0x0, ATA_LOG_SATA_NCQ = 0x10, ATA_LOG_NCQ_NON_DATA = 0x12, ATA_LOG_NCQ_SEND_RECV = 0x13, ATA_LOG_IDENTIFY_DEVICE = 0x30, /* Identify device log pages: */ ATA_LOG_SECURITY = 0x06, ATA_LOG_SATA_SETTINGS = 0x08, ATA_LOG_ZONED_INFORMATION = 0x09, /* Identify device SATA settings log:*/ ATA_LOG_DEVSLP_OFFSET = 0x30, ATA_LOG_DEVSLP_SIZE = 0x08, ATA_LOG_DEVSLP_MDAT = 0x00, ATA_LOG_DEVSLP_MDAT_MASK = 0x1F, ATA_LOG_DEVSLP_DETO = 0x01, ATA_LOG_DEVSLP_VALID = 0x07, ATA_LOG_DEVSLP_VALID_MASK = 0x80, ATA_LOG_NCQ_PRIO_OFFSET = 0x09, /* NCQ send and receive log */ ATA_LOG_NCQ_SEND_RECV_SUBCMDS_OFFSET = 0x00, ATA_LOG_NCQ_SEND_RECV_SUBCMDS_DSM = (1 << 0), ATA_LOG_NCQ_SEND_RECV_DSM_OFFSET = 0x04, ATA_LOG_NCQ_SEND_RECV_DSM_TRIM = (1 << 0), ATA_LOG_NCQ_SEND_RECV_RD_LOG_OFFSET = 0x08, ATA_LOG_NCQ_SEND_RECV_RD_LOG_SUPPORTED = (1 << 0), ATA_LOG_NCQ_SEND_RECV_WR_LOG_OFFSET = 0x0C, ATA_LOG_NCQ_SEND_RECV_WR_LOG_SUPPORTED = (1 << 0), ATA_LOG_NCQ_SEND_RECV_ZAC_MGMT_OFFSET = 0x10, ATA_LOG_NCQ_SEND_RECV_ZAC_MGMT_OUT_SUPPORTED = (1 << 0), ATA_LOG_NCQ_SEND_RECV_ZAC_MGMT_IN_SUPPORTED = (1 << 1), ATA_LOG_NCQ_SEND_RECV_SIZE = 0x14, /* NCQ Non-Data log */ ATA_LOG_NCQ_NON_DATA_SUBCMDS_OFFSET = 0x00, ATA_LOG_NCQ_NON_DATA_ABORT_OFFSET = 0x00, ATA_LOG_NCQ_NON_DATA_ABORT_NCQ = (1 << 0), ATA_LOG_NCQ_NON_DATA_ABORT_ALL = (1 << 1), ATA_LOG_NCQ_NON_DATA_ABORT_STREAMING = (1 << 2), ATA_LOG_NCQ_NON_DATA_ABORT_NON_STREAMING = (1 << 3), ATA_LOG_NCQ_NON_DATA_ABORT_SELECTED = (1 << 4), ATA_LOG_NCQ_NON_DATA_ZAC_MGMT_OFFSET = 0x1C, ATA_LOG_NCQ_NON_DATA_ZAC_MGMT_OUT = (1 << 0), ATA_LOG_NCQ_NON_DATA_SIZE = 0x40, /* READ/WRITE LONG (obsolete) */ ATA_CMD_READ_LONG = 0x22, ATA_CMD_READ_LONG_ONCE = 0x23, ATA_CMD_WRITE_LONG = 0x32, ATA_CMD_WRITE_LONG_ONCE = 0x33, /* SETFEATURES stuff */ SETFEATURES_XFER = 0x03, XFER_UDMA_7 = 0x47, XFER_UDMA_6 = 0x46, XFER_UDMA_5 = 0x45, XFER_UDMA_4 = 0x44, XFER_UDMA_3 = 0x43, XFER_UDMA_2 = 0x42, XFER_UDMA_1 = 0x41, XFER_UDMA_0 = 0x40, XFER_MW_DMA_4 = 0x24, /* CFA only */ XFER_MW_DMA_3 = 0x23, /* CFA only */ XFER_MW_DMA_2 = 0x22, XFER_MW_DMA_1 = 0x21, XFER_MW_DMA_0 = 0x20, XFER_SW_DMA_2 = 0x12, XFER_SW_DMA_1 = 0x11, XFER_SW_DMA_0 = 0x10, XFER_PIO_6 = 0x0E, /* CFA only */ XFER_PIO_5 = 0x0D, /* CFA only */ XFER_PIO_4 = 0x0C, XFER_PIO_3 = 0x0B, XFER_PIO_2 = 0x0A, XFER_PIO_1 = 0x09, XFER_PIO_0 = 0x08, XFER_PIO_SLOW = 0x00, SETFEATURES_WC_ON = 0x02, /* Enable write cache */ SETFEATURES_WC_OFF = 0x82, /* Disable write cache */ SETFEATURES_RA_ON = 0xaa, /* Enable read look-ahead */ SETFEATURES_RA_OFF = 0x55, /* Disable read look-ahead */ /* Enable/Disable Automatic Acoustic Management */ SETFEATURES_AAM_ON = 0x42, SETFEATURES_AAM_OFF = 0xC2, SETFEATURES_SPINUP = 0x07, /* Spin-up drive */ SETFEATURES_SPINUP_TIMEOUT = 30000, /* 30s timeout for drive spin-up from PUIS */ SETFEATURES_SATA_ENABLE = 0x10, /* Enable use of SATA feature */ SETFEATURES_SATA_DISABLE = 0x90, /* Disable use of SATA feature */ /* SETFEATURE Sector counts for SATA features */ SATA_FPDMA_OFFSET = 0x01, /* FPDMA non-zero buffer offsets */ SATA_FPDMA_AA = 0x02, /* FPDMA Setup FIS Auto-Activate */ SATA_DIPM = 0x03, /* Device Initiated Power Management */ SATA_FPDMA_IN_ORDER = 0x04, /* FPDMA in-order data delivery */ SATA_AN = 0x05, /* Asynchronous Notification */ SATA_SSP = 0x06, /* Software Settings Preservation */ SATA_DEVSLP = 0x09, /* Device Sleep */ SETFEATURE_SENSE_DATA = 0xC3, /* Sense Data Reporting feature */ /* feature values for SET_MAX */ ATA_SET_MAX_ADDR = 0x00, ATA_SET_MAX_PASSWD = 0x01, ATA_SET_MAX_LOCK = 0x02, ATA_SET_MAX_UNLOCK = 0x03, ATA_SET_MAX_FREEZE_LOCK = 0x04, ATA_SET_MAX_PASSWD_DMA = 0x05, ATA_SET_MAX_UNLOCK_DMA = 0x06, /* feature values for DEVICE CONFIGURATION OVERLAY */ ATA_DCO_RESTORE = 0xC0, ATA_DCO_FREEZE_LOCK = 0xC1, ATA_DCO_IDENTIFY = 0xC2, ATA_DCO_SET = 0xC3, /* feature values for SMART */ ATA_SMART_ENABLE = 0xD8, ATA_SMART_READ_VALUES = 0xD0, ATA_SMART_READ_THRESHOLDS = 0xD1, /* feature values for Data Set Management */ ATA_DSM_TRIM = 0x01, /* password used in LBA Mid / LBA High for executing SMART commands */ ATA_SMART_LBAM_PASS = 0x4F, ATA_SMART_LBAH_PASS = 0xC2, /* ATAPI stuff */ ATAPI_PKT_DMA = (1 << 0), ATAPI_DMADIR = (1 << 2), /* ATAPI data dir: 0=to device, 1=to host */ ATAPI_CDB_LEN = 16, /* PMP stuff */ SATA_PMP_MAX_PORTS = 15, SATA_PMP_CTRL_PORT = 15, SATA_PMP_GSCR_DWORDS = 128, SATA_PMP_GSCR_PROD_ID = 0, SATA_PMP_GSCR_REV = 1, SATA_PMP_GSCR_PORT_INFO = 2, SATA_PMP_GSCR_ERROR = 32, SATA_PMP_GSCR_ERROR_EN = 33, SATA_PMP_GSCR_FEAT = 64, SATA_PMP_GSCR_FEAT_EN = 96, SATA_PMP_PSCR_STATUS = 0, SATA_PMP_PSCR_ERROR = 1, SATA_PMP_PSCR_CONTROL = 2, SATA_PMP_FEAT_BIST = (1 << 0), SATA_PMP_FEAT_PMREQ = (1 << 1), SATA_PMP_FEAT_DYNSSC = (1 << 2), SATA_PMP_FEAT_NOTIFY = (1 << 3), /* cable types */ ATA_CBL_NONE = 0, ATA_CBL_PATA40 = 1, ATA_CBL_PATA80 = 2, ATA_CBL_PATA40_SHORT = 3, /* 40 wire cable to high UDMA spec */ ATA_CBL_PATA_UNK = 4, /* don't know, maybe 80c? */ ATA_CBL_PATA_IGN = 5, /* don't know, ignore cable handling */ ATA_CBL_SATA = 6, /* SATA Status and Control Registers */ SCR_STATUS = 0, SCR_ERROR = 1, SCR_CONTROL = 2, SCR_ACTIVE = 3, SCR_NOTIFICATION = 4, /* SError bits */ SERR_DATA_RECOVERED = (1 << 0), /* recovered data error */ SERR_COMM_RECOVERED = (1 << 1), /* recovered comm failure */ SERR_DATA = (1 << 8), /* unrecovered data error */ SERR_PERSISTENT = (1 << 9), /* persistent data/comm error */ SERR_PROTOCOL = (1 << 10), /* protocol violation */ SERR_INTERNAL = (1 << 11), /* host internal error */ SERR_PHYRDY_CHG = (1 << 16), /* PHY RDY changed */ SERR_PHY_INT_ERR = (1 << 17), /* PHY internal error */ SERR_COMM_WAKE = (1 << 18), /* Comm wake */ SERR_10B_8B_ERR = (1 << 19), /* 10b to 8b decode error */ SERR_DISPARITY = (1 << 20), /* Disparity */ SERR_CRC = (1 << 21), /* CRC error */ SERR_HANDSHAKE = (1 << 22), /* Handshake error */ SERR_LINK_SEQ_ERR = (1 << 23), /* Link sequence error */ SERR_TRANS_ST_ERROR = (1 << 24), /* Transport state trans. error */ SERR_UNRECOG_FIS = (1 << 25), /* Unrecognized FIS */ SERR_DEV_XCHG = (1 << 26), /* device exchanged */ }; enum ata_prot_flags { /* protocol flags */ ATA_PROT_FLAG_PIO = (1 << 0), /* is PIO */ ATA_PROT_FLAG_DMA = (1 << 1), /* is DMA */ ATA_PROT_FLAG_NCQ = (1 << 2), /* is NCQ */ ATA_PROT_FLAG_ATAPI = (1 << 3), /* is ATAPI */ /* taskfile protocols */ ATA_PROT_UNKNOWN = (u8)-1, ATA_PROT_NODATA = 0, ATA_PROT_PIO = ATA_PROT_FLAG_PIO, ATA_PROT_DMA = ATA_PROT_FLAG_DMA, ATA_PROT_NCQ_NODATA = ATA_PROT_FLAG_NCQ, ATA_PROT_NCQ = ATA_PROT_FLAG_DMA | ATA_PROT_FLAG_NCQ, ATAPI_PROT_NODATA = ATA_PROT_FLAG_ATAPI, ATAPI_PROT_PIO = ATA_PROT_FLAG_ATAPI | ATA_PROT_FLAG_PIO, ATAPI_PROT_DMA = ATA_PROT_FLAG_ATAPI | ATA_PROT_FLAG_DMA, }; enum ata_ioctls { ATA_IOC_GET_IO32 = 0x309, /* HDIO_GET_32BIT */ ATA_IOC_SET_IO32 = 0x324, /* HDIO_SET_32BIT */ }; /* core structures */ struct ata_bmdma_prd { __le32 addr; __le32 flags_len; }; /* * id tests */ #define ata_id_is_ata(id) (((id)[ATA_ID_CONFIG] & (1 << 15)) == 0) #define ata_id_has_lba(id) ((id)[ATA_ID_CAPABILITY] & (1 << 9)) #define ata_id_has_dma(id) ((id)[ATA_ID_CAPABILITY] & (1 << 8)) #define ata_id_has_ncq(id) ((id)[ATA_ID_SATA_CAPABILITY] & (1 << 8)) #define ata_id_queue_depth(id) (((id)[ATA_ID_QUEUE_DEPTH] & 0x1f) + 1) #define ata_id_removable(id) ((id)[ATA_ID_CONFIG] & (1 << 7)) #define ata_id_has_atapi_AN(id) \ ((((id)[ATA_ID_SATA_CAPABILITY] != 0x0000) && \ ((id)[ATA_ID_SATA_CAPABILITY] != 0xffff)) && \ ((id)[ATA_ID_FEATURE_SUPP] & (1 << 5))) #define ata_id_has_fpdma_aa(id) \ ((((id)[ATA_ID_SATA_CAPABILITY] != 0x0000) && \ ((id)[ATA_ID_SATA_CAPABILITY] != 0xffff)) && \ ((id)[ATA_ID_FEATURE_SUPP] & (1 << 2))) #define ata_id_has_devslp(id) \ ((((id)[ATA_ID_SATA_CAPABILITY] != 0x0000) && \ ((id)[ATA_ID_SATA_CAPABILITY] != 0xffff)) && \ ((id)[ATA_ID_FEATURE_SUPP] & (1 << 8))) #define ata_id_has_ncq_autosense(id) \ ((((id)[ATA_ID_SATA_CAPABILITY] != 0x0000) && \ ((id)[ATA_ID_SATA_CAPABILITY] != 0xffff)) && \ ((id)[ATA_ID_FEATURE_SUPP] & (1 << 7))) #define ata_id_has_dipm(id) \ ((((id)[ATA_ID_SATA_CAPABILITY] != 0x0000) && \ ((id)[ATA_ID_SATA_CAPABILITY] != 0xffff)) && \ ((id)[ATA_ID_FEATURE_SUPP] & (1 << 3))) #define ata_id_iordy_disable(id) ((id)[ATA_ID_CAPABILITY] & (1 << 10)) #define ata_id_has_iordy(id) ((id)[ATA_ID_CAPABILITY] & (1 << 11)) #define ata_id_u32(id,n) \ (((u32) (id)[(n) + 1] << 16) | ((u32) (id)[(n)])) #define ata_id_u64(id,n) \ ( ((u64) (id)[(n) + 3] << 48) | \ ((u64) (id)[(n) + 2] << 32) | \ ((u64) (id)[(n) + 1] << 16) | \ ((u64) (id)[(n) + 0]) ) #define ata_id_cdb_intr(id) (((id)[ATA_ID_CONFIG] & 0x60) == 0x20) #define ata_id_has_da(id) ((id)[ATA_ID_SATA_CAPABILITY_2] & (1 << 4)) static inline bool ata_id_has_hipm(const u16 *id) { u16 val = id[ATA_ID_SATA_CAPABILITY]; if (val == 0 || val == 0xffff) return false; return val & (1 << 9); } static inline bool ata_id_has_fua(const u16 *id) { if ((id[ATA_ID_CFSSE] & 0xC000) != 0x4000) return false; return id[ATA_ID_CFSSE] & (1 << 6); } static inline bool ata_id_has_flush(const u16 *id) { if ((id[ATA_ID_COMMAND_SET_2] & 0xC000) != 0x4000) return false; return id[ATA_ID_COMMAND_SET_2] & (1 << 12); } static inline bool ata_id_flush_enabled(const u16 *id) { if (ata_id_has_flush(id) == 0) return false; if ((id[ATA_ID_CSF_DEFAULT] & 0xC000) != 0x4000) return false; return id[ATA_ID_CFS_ENABLE_2] & (1 << 12); } static inline bool ata_id_has_flush_ext(const u16 *id) { if ((id[ATA_ID_COMMAND_SET_2] & 0xC000) != 0x4000) return false; return id[ATA_ID_COMMAND_SET_2] & (1 << 13); } static inline bool ata_id_flush_ext_enabled(const u16 *id) { if (ata_id_has_flush_ext(id) == 0) return false; if ((id[ATA_ID_CSF_DEFAULT] & 0xC000) != 0x4000) return false; /* * some Maxtor disks have bit 13 defined incorrectly * so check bit 10 too */ return (id[ATA_ID_CFS_ENABLE_2] & 0x2400) == 0x2400; } static inline u32 ata_id_logical_sector_size(const u16 *id) { /* T13/1699-D Revision 6a, Sep 6, 2008. Page 128. * IDENTIFY DEVICE data, word 117-118. * 0xd000 ignores bit 13 (logical:physical > 1) */ if ((id[ATA_ID_SECTOR_SIZE] & 0xd000) == 0x5000) return (((id[ATA_ID_LOGICAL_SECTOR_SIZE+1] << 16) + id[ATA_ID_LOGICAL_SECTOR_SIZE]) * sizeof(u16)) ; return ATA_SECT_SIZE; } static inline u8 ata_id_log2_per_physical_sector(const u16 *id) { /* T13/1699-D Revision 6a, Sep 6, 2008. Page 128. * IDENTIFY DEVICE data, word 106. * 0xe000 ignores bit 12 (logical sector > 512 bytes) */ if ((id[ATA_ID_SECTOR_SIZE] & 0xe000) == 0x6000) return (id[ATA_ID_SECTOR_SIZE] & 0xf); return 0; } /* Offset of logical sectors relative to physical sectors. * * If device has more than one logical sector per physical sector * (aka 512 byte emulation), vendors might offset the "sector 0" address * so sector 63 is "naturally aligned" - e.g. FAT partition table. * This avoids Read/Mod/Write penalties when using FAT partition table * and updating "well aligned" (FS perspective) physical sectors on every * transaction. */ static inline u16 ata_id_logical_sector_offset(const u16 *id, u8 log2_per_phys) { u16 word_209 = id[209]; if ((log2_per_phys > 1) && (word_209 & 0xc000) == 0x4000) { u16 first = word_209 & 0x3fff; if (first > 0) return (1 << log2_per_phys) - first; } return 0; } static inline bool ata_id_has_lba48(const u16 *id) { if ((id[ATA_ID_COMMAND_SET_2] & 0xC000) != 0x4000) return false; if (!ata_id_u64(id, ATA_ID_LBA_CAPACITY_2)) return false; return id[ATA_ID_COMMAND_SET_2] & (1 << 10); } static inline bool ata_id_lba48_enabled(const u16 *id) { if (ata_id_has_lba48(id) == 0) return false; if ((id[ATA_ID_CSF_DEFAULT] & 0xC000) != 0x4000) return false; return id[ATA_ID_CFS_ENABLE_2] & (1 << 10); } static inline bool ata_id_hpa_enabled(const u16 *id) { /* Yes children, word 83 valid bits cover word 82 data */ if ((id[ATA_ID_COMMAND_SET_2] & 0xC000) != 0x4000) return false; /* And 87 covers 85-87 */ if ((id[ATA_ID_CSF_DEFAULT] & 0xC000) != 0x4000) return false; /* Check command sets enabled as well as supported */ if ((id[ATA_ID_CFS_ENABLE_1] & (1 << 10)) == 0) return false; return id[ATA_ID_COMMAND_SET_1] & (1 << 10); } static inline bool ata_id_has_wcache(const u16 *id) { /* Yes children, word 83 valid bits cover word 82 data */ if ((id[ATA_ID_COMMAND_SET_2] & 0xC000) != 0x4000) return false; return id[ATA_ID_COMMAND_SET_1] & (1 << 5); } static inline bool ata_id_has_pm(const u16 *id) { if ((id[ATA_ID_COMMAND_SET_2] & 0xC000) != 0x4000) return false; return id[ATA_ID_COMMAND_SET_1] & (1 << 3); } static inline bool ata_id_rahead_enabled(const u16 *id) { if ((id[ATA_ID_CSF_DEFAULT] & 0xC000) != 0x4000) return false; return id[ATA_ID_CFS_ENABLE_1] & (1 << 6); } static inline bool ata_id_wcache_enabled(const u16 *id) { if ((id[ATA_ID_CSF_DEFAULT] & 0xC000) != 0x4000) return false; return id[ATA_ID_CFS_ENABLE_1] & (1 << 5); } static inline bool ata_id_has_read_log_dma_ext(const u16 *id) { /* Word 86 must have bit 15 set */ if (!(id[ATA_ID_CFS_ENABLE_2] & (1 << 15))) return false; /* READ LOG DMA EXT support can be signaled either from word 119 * or from word 120. The format is the same for both words: Bit * 15 must be cleared, bit 14 set and bit 3 set. */ if ((id[ATA_ID_COMMAND_SET_3] & 0xC008) == 0x4008 || (id[ATA_ID_COMMAND_SET_4] & 0xC008) == 0x4008) return true; return false; } static inline bool ata_id_has_sense_reporting(const u16 *id) { if (!(id[ATA_ID_CFS_ENABLE_2] & BIT(15))) return false; if ((id[ATA_ID_COMMAND_SET_3] & (BIT(15) | BIT(14))) != BIT(14)) return false; return id[ATA_ID_COMMAND_SET_3] & BIT(6); } static inline bool ata_id_sense_reporting_enabled(const u16 *id) { if (!ata_id_has_sense_reporting(id)) return false; /* ata_id_has_sense_reporting() == true, word 86 must have bit 15 set */ if ((id[ATA_ID_COMMAND_SET_4] & (BIT(15) | BIT(14))) != BIT(14)) return false; return id[ATA_ID_COMMAND_SET_4] & BIT(6); } /** * * Word: 206 - SCT Command Transport * 15:12 - Vendor Specific * 11:6 - Reserved * 5 - SCT Command Transport Data Tables supported * 4 - SCT Command Transport Features Control supported * 3 - SCT Command Transport Error Recovery Control supported * 2 - SCT Command Transport Write Same supported * 1 - SCT Command Transport Long Sector Access supported * 0 - SCT Command Transport supported */ static inline bool ata_id_sct_data_tables(const u16 *id) { return id[ATA_ID_SCT_CMD_XPORT] & (1 << 5) ? true : false; } static inline bool ata_id_sct_features_ctrl(const u16 *id) { return id[ATA_ID_SCT_CMD_XPORT] & (1 << 4) ? true : false; } static inline bool ata_id_sct_error_recovery_ctrl(const u16 *id) { return id[ATA_ID_SCT_CMD_XPORT] & (1 << 3) ? true : false; } static inline bool ata_id_sct_long_sector_access(const u16 *id) { return id[ATA_ID_SCT_CMD_XPORT] & (1 << 1) ? true : false; } static inline bool ata_id_sct_supported(const u16 *id) { return id[ATA_ID_SCT_CMD_XPORT] & (1 << 0) ? true : false; } /** * ata_id_major_version - get ATA level of drive * @id: Identify data * * Caveats: * ATA-1 considers identify optional * ATA-2 introduces mandatory identify * ATA-3 introduces word 80 and accurate reporting * * The practical impact of this is that ata_id_major_version cannot * reliably report on drives below ATA3. */ static inline unsigned int ata_id_major_version(const u16 *id) { unsigned int mver; if (id[ATA_ID_MAJOR_VER] == 0xFFFF) return 0; for (mver = 14; mver >= 1; mver--) if (id[ATA_ID_MAJOR_VER] & (1 << mver)) break; return mver; } static inline bool ata_id_is_sata(const u16 *id) { /* * See if word 93 is 0 AND drive is at least ATA-5 compatible * verifying that word 80 by casting it to a signed type -- * this trick allows us to filter out the reserved values of * 0x0000 and 0xffff along with the earlier ATA revisions... */ if (id[ATA_ID_HW_CONFIG] == 0 && (short)id[ATA_ID_MAJOR_VER] >= 0x0020) return true; return false; } static inline bool ata_id_has_tpm(const u16 *id) { /* The TPM bits are only valid on ATA8 */ if (ata_id_major_version(id) < 8) return false; if ((id[48] & 0xC000) != 0x4000) return false; return id[48] & (1 << 0); } static inline bool ata_id_has_dword_io(const u16 *id) { /* ATA 8 reuses this flag for "trusted" computing */ if (ata_id_major_version(id) > 7) return false; return id[ATA_ID_DWORD_IO] & (1 << 0); } static inline bool ata_id_has_trusted(const u16 *id) { if (ata_id_major_version(id) <= 7) return false; return id[ATA_ID_TRUSTED] & (1 << 0); } static inline bool ata_id_has_unload(const u16 *id) { if (ata_id_major_version(id) >= 7 && (id[ATA_ID_CFSSE] & 0xC000) == 0x4000 && id[ATA_ID_CFSSE] & (1 << 13)) return true; return false; } static inline bool ata_id_has_wwn(const u16 *id) { return (id[ATA_ID_CSF_DEFAULT] & 0xC100) == 0x4100; } static inline int ata_id_form_factor(const u16 *id) { u16 val = id[168]; if (ata_id_major_version(id) < 7 || val == 0 || val == 0xffff) return 0; val &= 0xf; if (val > 5) return 0; return val; } static inline int ata_id_rotation_rate(const u16 *id) { u16 val = id[217]; if (ata_id_major_version(id) < 7 || val == 0 || val == 0xffff) return 0; if (val > 1 && val < 0x401) return 0; return val; } static inline bool ata_id_has_ncq_send_and_recv(const u16 *id) { return id[ATA_ID_SATA_CAPABILITY_2] & BIT(6); } static inline bool ata_id_has_ncq_non_data(const u16 *id) { return id[ATA_ID_SATA_CAPABILITY_2] & BIT(5); } static inline bool ata_id_has_ncq_prio(const u16 *id) { return id[ATA_ID_SATA_CAPABILITY] & BIT(12); } static inline bool ata_id_has_trim(const u16 *id) { if (ata_id_major_version(id) >= 7 && (id[ATA_ID_DATA_SET_MGMT] & 1)) return true; return false; } static inline bool ata_id_has_zero_after_trim(const u16 *id) { /* DSM supported, deterministic read, and read zero after trim set */ if (ata_id_has_trim(id) && (id[ATA_ID_ADDITIONAL_SUPP] & 0x4020) == 0x4020) return true; return false; } static inline bool ata_id_current_chs_valid(const u16 *id) { /* For ATA-1 devices, if the INITIALIZE DEVICE PARAMETERS command has not been issued to the device then the values of id[ATA_ID_CUR_CYLS] to id[ATA_ID_CUR_SECTORS] are vendor specific. */ return (id[ATA_ID_FIELD_VALID] & 1) && /* Current translation valid */ id[ATA_ID_CUR_CYLS] && /* cylinders in current translation */ id[ATA_ID_CUR_HEADS] && /* heads in current translation */ id[ATA_ID_CUR_HEADS] <= 16 && id[ATA_ID_CUR_SECTORS]; /* sectors in current translation */ } static inline bool ata_id_is_cfa(const u16 *id) { if ((id[ATA_ID_CONFIG] == 0x848A) || /* Traditional CF */ (id[ATA_ID_CONFIG] == 0x844A)) /* Delkin Devices CF */ return true; /* * CF specs don't require specific value in the word 0 anymore and yet * they forbid to report the ATA version in the word 80 and require the * CFA feature set support to be indicated in the word 83 in this case. * Unfortunately, some cards only follow either of this requirements, * and while those that don't indicate CFA feature support need some * sort of quirk list, it seems impractical for the ones that do... */ return (id[ATA_ID_COMMAND_SET_2] & 0xC004) == 0x4004; } static inline bool ata_id_is_ssd(const u16 *id) { return id[ATA_ID_ROT_SPEED] == 0x01; } static inline u8 ata_id_zoned_cap(const u16 *id) { return (id[ATA_ID_ADDITIONAL_SUPP] & 0x3); } static inline bool ata_id_pio_need_iordy(const u16 *id, const u8 pio) { /* CF spec. r4.1 Table 22 says no IORDY on PIO5 and PIO6. */ if (pio > 4 && ata_id_is_cfa(id)) return false; /* For PIO3 and higher it is mandatory. */ if (pio > 2) return true; /* Turn it on when possible. */ return ata_id_has_iordy(id); } static inline bool ata_drive_40wire(const u16 *dev_id) { if (ata_id_is_sata(dev_id)) return false; /* SATA */ if ((dev_id[ATA_ID_HW_CONFIG] & 0xE000) == 0x6000) return false; /* 80 wire */ return true; } static inline bool ata_drive_40wire_relaxed(const u16 *dev_id) { if ((dev_id[ATA_ID_HW_CONFIG] & 0x2000) == 0x2000) return false; /* 80 wire */ return true; } static inline int atapi_cdb_len(const u16 *dev_id) { u16 tmp = dev_id[ATA_ID_CONFIG] & 0x3; switch (tmp) { case 0: return 12; case 1: return 16; default: return -1; } } static inline int atapi_command_packet_set(const u16 *dev_id) { return (dev_id[ATA_ID_CONFIG] >> 8) & 0x1f; } static inline bool atapi_id_dmadir(const u16 *dev_id) { return ata_id_major_version(dev_id) >= 7 && (dev_id[62] & 0x8000); } /* * ata_id_is_lba_capacity_ok() performs a sanity check on * the claimed LBA capacity value for the device. * * Returns 1 if LBA capacity looks sensible, 0 otherwise. * * It is called only once for each device. */ static inline bool ata_id_is_lba_capacity_ok(u16 *id) { unsigned long lba_sects, chs_sects, head, tail; /* No non-LBA info .. so valid! */ if (id[ATA_ID_CYLS] == 0) return true; lba_sects = ata_id_u32(id, ATA_ID_LBA_CAPACITY); /* * The ATA spec tells large drives to return * C/H/S = 16383/16/63 independent of their size. * Some drives can be jumpered to use 15 heads instead of 16. * Some drives can be jumpered to use 4092 cyls instead of 16383. */ if ((id[ATA_ID_CYLS] == 16383 || (id[ATA_ID_CYLS] == 4092 && id[ATA_ID_CUR_CYLS] == 16383)) && id[ATA_ID_SECTORS] == 63 && (id[ATA_ID_HEADS] == 15 || id[ATA_ID_HEADS] == 16) && (lba_sects >= 16383 * 63 * id[ATA_ID_HEADS])) return true; chs_sects = id[ATA_ID_CYLS] * id[ATA_ID_HEADS] * id[ATA_ID_SECTORS]; /* perform a rough sanity check on lba_sects: within 10% is OK */ if (lba_sects - chs_sects < chs_sects/10) return true; /* some drives have the word order reversed */ head = (lba_sects >> 16) & 0xffff; tail = lba_sects & 0xffff; lba_sects = head | (tail << 16); if (lba_sects - chs_sects < chs_sects/10) { *(__le32 *)&id[ATA_ID_LBA_CAPACITY] = __cpu_to_le32(lba_sects); return true; /* LBA capacity is (now) good */ } return false; /* LBA capacity value may be bad */ } static inline void ata_id_to_hd_driveid(u16 *id) { #ifdef __BIG_ENDIAN /* accessed in struct hd_driveid as 8-bit values */ id[ATA_ID_MAX_MULTSECT] = __cpu_to_le16(id[ATA_ID_MAX_MULTSECT]); id[ATA_ID_CAPABILITY] = __cpu_to_le16(id[ATA_ID_CAPABILITY]); id[ATA_ID_OLD_PIO_MODES] = __cpu_to_le16(id[ATA_ID_OLD_PIO_MODES]); id[ATA_ID_OLD_DMA_MODES] = __cpu_to_le16(id[ATA_ID_OLD_DMA_MODES]); id[ATA_ID_MULTSECT] = __cpu_to_le16(id[ATA_ID_MULTSECT]); /* as 32-bit values */ *(u32 *)&id[ATA_ID_LBA_CAPACITY] = ata_id_u32(id, ATA_ID_LBA_CAPACITY); *(u32 *)&id[ATA_ID_SPG] = ata_id_u32(id, ATA_ID_SPG); /* as 64-bit value */ *(u64 *)&id[ATA_ID_LBA_CAPACITY_2] = ata_id_u64(id, ATA_ID_LBA_CAPACITY_2); #endif } static inline bool ata_ok(u8 status) { return ((status & (ATA_BUSY | ATA_DRDY | ATA_DF | ATA_DRQ | ATA_ERR)) == ATA_DRDY); } static inline bool lba_28_ok(u64 block, u32 n_block) { /* check the ending block number: must be LESS THAN 0x0fffffff */ return ((block + n_block) < ((1 << 28) - 1)) && (n_block <= ATA_MAX_SECTORS); } static inline bool lba_48_ok(u64 block, u32 n_block) { /* check the ending block number */ return ((block + n_block - 1) < ((u64)1 << 48)) && (n_block <= ATA_MAX_SECTORS_LBA48); } #define sata_pmp_gscr_vendor(gscr) ((gscr)[SATA_PMP_GSCR_PROD_ID] & 0xffff) #define sata_pmp_gscr_devid(gscr) ((gscr)[SATA_PMP_GSCR_PROD_ID] >> 16) #define sata_pmp_gscr_rev(gscr) (((gscr)[SATA_PMP_GSCR_REV] >> 8) & 0xff) #define sata_pmp_gscr_ports(gscr) ((gscr)[SATA_PMP_GSCR_PORT_INFO] & 0xf) #endif /* __LINUX_ATA_H__ */
Close