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
99
100
101
102
103
104
105
106
107
108
109
use crate::svd::{
create_bit_range, create_cluster, create_field, create_register, create_register_properties,
};
use crate::Result;
/// Creates the Synopsys DesignWare Gigabit Ethernet MAC Energy Efficient Ethernet (EEE) LPI register definitions.
pub fn create() -> Result<svd::RegisterCluster> {
Ok(svd::RegisterCluster::Cluster(create_cluster(
"lpi",
"Energy Efficient Ethernet (EEE) LPI registers",
0x30,
&[
svd::RegisterCluster::Register(create_register(
"ctrl_status",
"LPI Control Status",
0x0,
create_register_properties(32, 0)?,
Some(&[
create_field(
"tlpien",
"Transmit LPI Entry",
create_bit_range("[0:0]")?,
svd::Access::ReadWrite,
None,
)?,
create_field(
"tlpiex",
"Transmit LPI Exit",
create_bit_range("[1:1]")?,
svd::Access::ReadWrite,
None,
)?,
create_field(
"rlpien",
"Receive LPI Entry",
create_bit_range("[2:2]")?,
svd::Access::ReadWrite,
None,
)?,
create_field(
"rlpiex",
"Receive LPI Exit",
create_bit_range("[3:3]")?,
svd::Access::ReadWrite,
None,
)?,
create_field(
"tlpist",
"Transmit LPI State",
create_bit_range("[8:8]")?,
svd::Access::ReadWrite,
None,
)?,
create_field(
"rlpist",
"Receive LPI State",
create_bit_range("[9:9]")?,
svd::Access::ReadWrite,
None,
)?,
create_field(
"lpien",
"LPI Enable",
create_bit_range("[16:16]")?,
svd::Access::ReadWrite,
None,
)?,
create_field(
"pls",
"PHY Link Status",
create_bit_range("[17:17]")?,
svd::Access::ReadWrite,
None,
)?,
create_field(
"plsen",
"Enable PHY Link Status",
create_bit_range("[18:18]")?,
svd::Access::ReadWrite,
None,
)?,
create_field(
"lpitxa",
"Enable LPI TX Automate",
create_bit_range("[19:19]")?,
svd::Access::ReadWrite,
None,
)?,
]),
None,
)?),
svd::RegisterCluster::Register(create_register(
"timer_ctrl",
"LPI Timer and Control",
0x4,
create_register_properties(32, 0)?,
Some(&[create_field(
"timer_ctrl",
"LPI Timer and Control",
create_bit_range("[31:0]")?,
svd::Access::ReadWrite,
None,
)?]),
None,
)?),
],
None,
)?))
}