Skip to content

Commit 711a379

Browse files
committed
Use register properties to determine bit_size
1 parent 02d6656 commit 711a379

File tree

3 files changed

+4
-3
lines changed

3 files changed

+4
-3
lines changed

Cargo.toml

+1-1
Original file line numberDiff line numberDiff line change
@@ -15,4 +15,4 @@ anyhow = "1.0.75"
1515
regex = "1.9.5"
1616
serde = { version = "1.0.188", features = [ "derive" ]}
1717
serde_yaml = "0.9.25"
18-
svd-parser = { version = "0.14.2", features = ["derive-from"] }
18+
svd-parser = { version = "0.14.2", features = ["derive-from", "expand"] }

src/main.rs

+2-1
Original file line numberDiff line numberDiff line change
@@ -146,7 +146,8 @@ fn load_svd(path: &str) -> Result<svd_parser::svd::Device> {
146146
.read_to_string(xml)
147147
.context("Cannot read the SVD file")?;
148148

149-
let device = svd_parser::parse(xml)?;
149+
let device =
150+
svd_parser::parse_with_config(xml, &svd_parser::Config::default().expand_properties(true))?;
150151
Ok(device)
151152
}
152153

src/svd2ir.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ pub fn convert_peripheral(ir: &mut IR, p: &svd::Peripheral) -> anyhow::Result<()
5353
fieldsets.push(ProtoFieldset {
5454
name: fieldset_name.clone(),
5555
description: r.description.clone(),
56-
bit_size: 32, // todo
56+
bit_size: r.properties.size.unwrap_or(32),
5757
fields: fields.clone(),
5858
});
5959

0 commit comments

Comments
 (0)