gpdma: fix channel count for h5.
This commit is contained in:
parent
2715747076
commit
3602377251
@ -294,17 +294,18 @@ impl DmaChannels {
|
|||||||
|
|
||||||
// GPDMA
|
// GPDMA
|
||||||
|
|
||||||
for (file, gpdmax, instance) in [
|
for (file, gpdmax, instance, count, count_2d) in [
|
||||||
("data/dmamux/H5_GPDMA.yaml", "GPDMA1", "STM32H5_dma3_Cube"),
|
("H5_GPDMA.yaml", "GPDMA1", "STM32H5_dma3_Cube", 8, 2),
|
||||||
("data/dmamux/H5_GPDMA.yaml", "GPDMA2", "Instance2_STM32H5_dma3_Cube"),
|
("H5_GPDMA.yaml", "GPDMA2", "Instance2_STM32H5_dma3_Cube", 8, 2),
|
||||||
("data/dmamux/U5_GPDMA1.yaml", "GPDMA1", "STM32U5_dma3_Cube"),
|
("U5_GPDMA1.yaml", "GPDMA1", "STM32U5_dma3_Cube", 16, 4),
|
||||||
] {
|
] {
|
||||||
let mut chip_dma = ChipDma {
|
let mut chip_dma = ChipDma {
|
||||||
peripherals: HashMap::new(),
|
peripherals: HashMap::new(),
|
||||||
channels: Vec::new(),
|
channels: Vec::new(),
|
||||||
};
|
};
|
||||||
|
|
||||||
let parsed: HashMap<String, u8> = serde_yaml::from_str(&std::fs::read_to_string(file)?)?;
|
let parsed: HashMap<String, u8> =
|
||||||
|
serde_yaml::from_str(&std::fs::read_to_string(format!("data/dmamux/{file}"))?)?;
|
||||||
|
|
||||||
for (request_name, request_num) in parsed {
|
for (request_name, request_num) in parsed {
|
||||||
let parts: Vec<_> = request_name.split('_').collect();
|
let parts: Vec<_> = request_name.split('_').collect();
|
||||||
@ -329,14 +330,14 @@ impl DmaChannels {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
for i in 0..16 {
|
for i in 0..count {
|
||||||
chip_dma.channels.push(stm32_data_serde::chip::core::DmaChannels {
|
chip_dma.channels.push(stm32_data_serde::chip::core::DmaChannels {
|
||||||
name: format!("{gpdmax}_CH{i}"),
|
name: format!("{gpdmax}_CH{i}"),
|
||||||
dma: gpdmax.to_string(),
|
dma: gpdmax.to_string(),
|
||||||
channel: i,
|
channel: i,
|
||||||
dmamux: None,
|
dmamux: None,
|
||||||
dmamux_channel: None,
|
dmamux_channel: None,
|
||||||
supports_2d: Some(i >= 12),
|
supports_2d: Some(i >= count - count_2d),
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user