| /**************************************************************************** | |
| **************************************************************************** | |
| *** | |
| *** This header was automatically generated from a Linux kernel header | |
| *** of the same name, to make information necessary for userspace to | |
| *** call into the kernel available to libc. It contains only constants, | |
| *** structures, and macros generated from the original header, and thus, | |
| *** contains no copyrightable information. | |
| *** | |
| *** To edit the content of this header, modify the corresponding | |
| *** source file (e.g. under external/kernel-headers/original/) then | |
| *** run bionic/libc/kernel/tools/update_all.py | |
| *** | |
| *** Any manual change here will be lost the next time this script will | |
| *** be run. You've been warned! | |
| *** | |
| **************************************************************************** | |
| ****************************************************************************/ | |
| #ifndef _LINUX_VIRTIO_BLK_H | |
| #define _LINUX_VIRTIO_BLK_H | |
| #include <linux/types.h> | |
| #include <linux/virtio_ids.h> | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ | |
| #include <linux/virtio_config.h> | |
| #include <linux/virtio_types.h> | |
| #define VIRTIO_BLK_F_SIZE_MAX 1 | |
| #define VIRTIO_BLK_F_SEG_MAX 2 | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ | |
| #define VIRTIO_BLK_F_GEOMETRY 4 | |
| #define VIRTIO_BLK_F_RO 5 | |
| #define VIRTIO_BLK_F_BLK_SIZE 6 | |
| #define VIRTIO_BLK_F_TOPOLOGY 10 | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ | |
| #define VIRTIO_BLK_F_MQ 12 | |
| #ifndef VIRTIO_BLK_NO_LEGACY | |
| #define VIRTIO_BLK_F_BARRIER 0 | |
| #define VIRTIO_BLK_F_SCSI 7 | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ | |
| #define VIRTIO_BLK_F_WCE 9 | |
| #define VIRTIO_BLK_F_CONFIG_WCE 11 | |
| #define VIRTIO_BLK_F_FLUSH VIRTIO_BLK_F_WCE | |
| #endif | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ | |
| #define VIRTIO_BLK_ID_BYTES 20 | |
| struct virtio_blk_config { | |
| __u64 capacity; | |
| __u32 size_max; | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ | |
| __u32 seg_max; | |
| struct virtio_blk_geometry { | |
| __u16 cylinders; | |
| __u8 heads; | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ | |
| __u8 sectors; | |
| } geometry; | |
| __u32 blk_size; | |
| __u8 physical_block_exp; | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ | |
| __u8 alignment_offset; | |
| __u16 min_io_size; | |
| __u32 opt_io_size; | |
| __u8 wce; | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ | |
| __u8 unused; | |
| __u16 num_queues; | |
| } __attribute__((packed)); | |
| #define VIRTIO_BLK_T_IN 0 | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ | |
| #define VIRTIO_BLK_T_OUT 1 | |
| #ifndef VIRTIO_BLK_NO_LEGACY | |
| #define VIRTIO_BLK_T_SCSI_CMD 2 | |
| #endif | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ | |
| #define VIRTIO_BLK_T_FLUSH 4 | |
| #define VIRTIO_BLK_T_GET_ID 8 | |
| #ifndef VIRTIO_BLK_NO_LEGACY | |
| #define VIRTIO_BLK_T_BARRIER 0x80000000 | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ | |
| #endif | |
| struct virtio_blk_outhdr { | |
| __virtio32 type; | |
| __virtio32 ioprio; | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ | |
| __virtio64 sector; | |
| }; | |
| #ifndef VIRTIO_BLK_NO_LEGACY | |
| struct virtio_scsi_inhdr { | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ | |
| __virtio32 errors; | |
| __virtio32 data_len; | |
| __virtio32 sense_len; | |
| __virtio32 residual; | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ | |
| }; | |
| #endif | |
| #define VIRTIO_BLK_S_OK 0 | |
| #define VIRTIO_BLK_S_IOERR 1 | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ | |
| #define VIRTIO_BLK_S_UNSUPP 2 | |
| #endif |