1c66ac9dbSNicholas Bellinger #ifndef TARGET_CORE_FILE_H 2c66ac9dbSNicholas Bellinger #define TARGET_CORE_FILE_H 3c66ac9dbSNicholas Bellinger 4c66ac9dbSNicholas Bellinger #define FD_VERSION "4.0" 5c66ac9dbSNicholas Bellinger 6c66ac9dbSNicholas Bellinger #define FD_MAX_DEV_NAME 256 7c66ac9dbSNicholas Bellinger #define FD_DEVICE_QUEUE_DEPTH 32 8c66ac9dbSNicholas Bellinger #define FD_MAX_DEVICE_QUEUE_DEPTH 128 9c66ac9dbSNicholas Bellinger #define FD_BLOCKSIZE 512 10c66ac9dbSNicholas Bellinger #define FD_MAX_SECTORS 1024 11c66ac9dbSNicholas Bellinger 12c66ac9dbSNicholas Bellinger #define RRF_EMULATE_CDB 0x01 13c66ac9dbSNicholas Bellinger #define RRF_GOT_LBA 0x02 14c66ac9dbSNicholas Bellinger 15c66ac9dbSNicholas Bellinger #define FBDF_HAS_PATH 0x01 16c66ac9dbSNicholas Bellinger #define FBDF_HAS_SIZE 0x02 17b32f4c7eSNicholas Bellinger #define FDBD_HAS_BUFFERED_IO_WCE 0x04 18c66ac9dbSNicholas Bellinger 19c66ac9dbSNicholas Bellinger struct fd_dev { 20c66ac9dbSNicholas Bellinger u32 fbd_flags; 21c66ac9dbSNicholas Bellinger unsigned char fd_dev_name[FD_MAX_DEV_NAME]; 22c66ac9dbSNicholas Bellinger /* Unique Ramdisk Device ID in Ramdisk HBA */ 23c66ac9dbSNicholas Bellinger u32 fd_dev_id; 24c66ac9dbSNicholas Bellinger /* Number of SG tables in sg_table_array */ 25c66ac9dbSNicholas Bellinger u32 fd_table_count; 26c66ac9dbSNicholas Bellinger u32 fd_queue_depth; 27c66ac9dbSNicholas Bellinger u32 fd_block_size; 28c66ac9dbSNicholas Bellinger unsigned long long fd_dev_size; 29c66ac9dbSNicholas Bellinger struct file *fd_file; 30c66ac9dbSNicholas Bellinger /* FILEIO HBA device is connected to */ 31c66ac9dbSNicholas Bellinger struct fd_host *fd_host; 32c66ac9dbSNicholas Bellinger } ____cacheline_aligned; 33c66ac9dbSNicholas Bellinger 34c66ac9dbSNicholas Bellinger struct fd_host { 35c66ac9dbSNicholas Bellinger u32 fd_host_dev_id_count; 36c66ac9dbSNicholas Bellinger /* Unique FILEIO Host ID */ 37c66ac9dbSNicholas Bellinger u32 fd_host_id; 38c66ac9dbSNicholas Bellinger } ____cacheline_aligned; 39c66ac9dbSNicholas Bellinger 40c66ac9dbSNicholas Bellinger #endif /* TARGET_CORE_FILE_H */ 41