nes-proj/arch/cpu/arm/common/usb/msc/rbc_struct.h

59 lines
1.1 KiB
C

#ifndef RBC_STRUCT_H_10L0HKARRV__
#define RBC_STRUCT_H_10L0HKARRV__
#include <spc2_struct.h>
struct rbc_read_capacity_cmd
{
uint8_t op_code;
uint8_t reserved1;
uint8_t reserved2;
uint8_t reserved3;
uint8_t reserved4;
uint8_t reserved5;
uint8_t reserved6;
uint8_t reserved7;
uint8_t reserved8;
uint8_t control;
} CC_BYTE_ALIGNED;
struct rbc_read_capacity_data
{
uint32_bytes last_logical_block;
uint32_bytes block_length;
} CC_BYTE_ALIGNED;
struct rbc_device_parameters_page
{
struct spc2_mode_page head;
uint8_t flags1;
uint16_bytes logical_block_size;
uint40_bytes num_logical_blocks;
uint8_t power_performance;
uint8_t flags2;
uint8_t reserved;
} CC_BYTE_ALIGNED;
struct rbc_read_cmd
{
uint8_t op_code;
uint8_t reserved1;
uint32_bytes logical_block_address;
uint8_t reserved2;
uint16_bytes transfer_length;
uint8_t control;
} CC_BYTE_ALIGNED;
struct rbc_write_cmd
{
uint8_t op_code;
uint8_t flags;
uint32_bytes logical_block_address;
uint8_t reserved;
uint16_bytes transfer_length;
uint8_t control;
} CC_BYTE_ALIGNED;
#endif /* RBC_STRUCT_H_10L0HKARRV__ */