1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
use crate::svd::{create_bit_range, create_field, create_register, create_register_properties};
use crate::Result;
/// Creates Synopsys DesignWare MMC Control register definition.
pub fn create() -> Result<svd::RegisterCluster> {
Ok(svd::RegisterCluster::Register(create_register(
"ctrl",
"MMC Control",
0x0,
create_register_properties(32, 0)?,
Some(&[
create_field(
"reset",
"MMC Control Reset",
create_bit_range("[0:0]")?,
svd::Access::ReadWrite,
Some(
svd::DimElement::builder()
.dim(3)
.dim_increment(1)
.dim_index(Some(
[
String::from("_mmc"),
String::from("_fifo"),
String::from("_dma"),
]
.into(),
))
.build(svd::ValidateLevel::Strict)?,
),
)?,
create_field(
"enable",
"MMC Control Enable",
create_bit_range("[4:4]")?,
svd::Access::ReadWrite,
Some(
svd::DimElement::builder()
.dim(2)
.dim_increment(1)
.dim_index(Some([String::from("_int"), String::from("_dma")].into()))
.build(svd::ValidateLevel::Strict)?,
),
)?,
create_field(
"read_wait",
"MMC Control Read Wait",
create_bit_range("[6:6]")?,
svd::Access::ReadWrite,
None,
)?,
create_field(
"send_irq_resp",
"MMC Control Send IRQ Response",
create_bit_range("[7:7]")?,
svd::Access::ReadWrite,
None,
)?,
create_field(
"abrt_read_data",
"MMC Control Abort Read Data",
create_bit_range("[8:8]")?,
svd::Access::ReadWrite,
None,
)?,
create_field(
"send",
"MMC Control Send",
create_bit_range("[9:9]")?,
svd::Access::ReadWrite,
Some(
svd::DimElement::builder()
.dim(2)
.dim_increment(1)
.dim_index(Some(
[String::from("_ccsd"), String::from("_as_ccsd")].into(),
))
.build(svd::ValidateLevel::Strict)?,
),
)?,
create_field(
"ceata_int_en",
"MMC Control CEATA Interrupt Enable",
create_bit_range("[11:11]")?,
svd::Access::ReadWrite,
None,
)?,
create_field(
"use_idmac",
"MMC Control Use IDMAC",
create_bit_range("[25:25]")?,
svd::Access::ReadWrite,
None,
)?,
]),
None,
)?))
}