diff --git a/data/registers/uid_v1.yaml b/data/registers/uid_v1.yaml new file mode 100644 index 0000000..436be58 --- /dev/null +++ b/data/registers/uid_v1.yaml @@ -0,0 +1,13 @@ +--- +block/UID: + description: Device Factory programmed 96-bit unique device identifier + items: + - name: UID + description: Factory programmed 96-bit unique device identifier word 0 + array: + len: 3 + stride: 4 + byte_offset: 0 + access: Read + + diff --git a/stm32-data-gen/src/chips.rs b/stm32-data-gen/src/chips.rs index ddb291c..f038294 100644 --- a/stm32-data-gen/src/chips.rs +++ b/stm32-data-gen/src/chips.rs @@ -384,6 +384,7 @@ impl PeriMatcher { (".*:LCD:lcdc1_v1.0.*", ("lcd", "v1", "LCD")), (".*:LCD:lcdc1_v1.2.*", ("lcd", "v2", "LCD")), (".*:LCD:lcdc1_v1.3.*", ("lcd", "v2", "LCD")), + (".*:UID:.*", ("uid", "v1", "UID")), ]; Self { @@ -746,6 +747,7 @@ fn process_core( .collect(); interrupts.sort_unstable_by_key(|x| x.number); let mut peri_kinds = HashMap::new(); + peri_kinds.insert("UID".to_string(), "UID".to_string()); for ip in group.ips.values() { let pname = ip.instance_name.clone(); let pkind = format!("{}:{}", ip.name, ip.version);