]> git.kernelconcepts.de Git - karo-tx-linux.git/blob - drivers/target/target_core_file.h
staging: board: disable as it breaks the build
[karo-tx-linux.git] / drivers / target / target_core_file.h
1 #ifndef TARGET_CORE_FILE_H
2 #define TARGET_CORE_FILE_H
3
4 #define FD_VERSION              "4.0"
5
6 #define FD_MAX_DEV_NAME         256
7 #define FD_MAX_DEV_PROT_NAME    FD_MAX_DEV_NAME + 16
8 #define FD_DEVICE_QUEUE_DEPTH   32
9 #define FD_MAX_DEVICE_QUEUE_DEPTH 128
10 #define FD_BLOCKSIZE            512
11 /*
12  * Limited by the number of iovecs (2048) per vfs_[writev,readv] call
13  */
14 #define FD_MAX_BYTES            8388608
15
16 #define RRF_EMULATE_CDB         0x01
17 #define RRF_GOT_LBA             0x02
18
19 #define FBDF_HAS_PATH           0x01
20 #define FBDF_HAS_SIZE           0x02
21 #define FDBD_HAS_BUFFERED_IO_WCE 0x04
22 #define FDBD_FORMAT_UNIT_SIZE   2048
23
24 struct fd_prot {
25         unsigned char   *prot_buf;
26         struct scatterlist *prot_sg;
27         u32 prot_sg_nents;
28 };
29
30 struct fd_dev {
31         struct se_device dev;
32
33         u32             fbd_flags;
34         unsigned char   fd_dev_name[FD_MAX_DEV_NAME];
35         /* Unique Ramdisk Device ID in Ramdisk HBA */
36         u32             fd_dev_id;
37         /* Number of SG tables in sg_table_array */
38         u32             fd_table_count;
39         u32             fd_queue_depth;
40         u32             fd_block_size;
41         unsigned long long fd_dev_size;
42         struct file     *fd_file;
43         struct file     *fd_prot_file;
44         /* FILEIO HBA device is connected to */
45         struct fd_host *fd_host;
46 } ____cacheline_aligned;
47
48 struct fd_host {
49         u32             fd_host_dev_id_count;
50         /* Unique FILEIO Host ID */
51         u32             fd_host_id;
52 } ____cacheline_aligned;
53
54 #endif /* TARGET_CORE_FILE_H */