Contiki-NG
rbc_struct.h
1#ifndef RBC_STRUCT_H_10L0HKARRV__
2#define RBC_STRUCT_H_10L0HKARRV__
3
4#include <spc2_struct.h>
5
6struct rbc_read_capacity_cmd
7{
8 uint8_t op_code;
9 uint8_t reserved1;
10 uint8_t reserved2;
11 uint8_t reserved3;
12 uint8_t reserved4;
13 uint8_t reserved5;
14 uint8_t reserved6;
15 uint8_t reserved7;
16 uint8_t reserved8;
17 uint8_t control;
18} CC_BYTE_ALIGNED;
19
20struct rbc_read_capacity_data
21{
22 uint32_bytes last_logical_block;
23 uint32_bytes block_length;
24} CC_BYTE_ALIGNED;
25
26struct rbc_device_parameters_page
27{
28 struct spc2_mode_page head;
29 uint8_t flags1;
30 uint16_bytes logical_block_size;
31 uint40_bytes num_logical_blocks;
32 uint8_t power_performance;
33 uint8_t flags2;
34 uint8_t reserved;
35} CC_BYTE_ALIGNED;
36
37struct rbc_read_cmd
38{
39 uint8_t op_code;
40 uint8_t reserved1;
41 uint32_bytes logical_block_address;
42 uint8_t reserved2;
43 uint16_bytes transfer_length;
44 uint8_t control;
45} CC_BYTE_ALIGNED;
46
47struct rbc_write_cmd
48{
49 uint8_t op_code;
50 uint8_t flags;
51 uint32_bytes logical_block_address;
52 uint8_t reserved;
53 uint16_bytes transfer_length;
54 uint8_t control;
55} CC_BYTE_ALIGNED;
56
57
58#endif /* RBC_STRUCT_H_10L0HKARRV__ */