Closed taunusflieger closed 5 months ago
Hey @Dirbaio would appreciate your input here
We already have GHOST_PERIS for handling peripherals that are missing in cubedb, can you add HSEM there instead of adding custom code?
Also, there's no way there's 8 versions. from looking at the RMs, there's:
H7 multicore and WB are the same, so this is 5 versions in total.
Can you rearrange versions to match that? the preivous PR #215 was quite close.
also, please make sure to cleanup the yamls (convert stuff to arrays, remove dupe enums, remove useless single-bot enums...), and minimize the diff between versions for easy review.
The following list shows the different hsem yaml versions and the corresponding chips. wba is on purpose not included at is complex and very different from the others which will also make the HSEM implementation in the HAL more complex. I leave this out for another PR.
v1:
v2:
v3:
v4:
@taunusflieger please check the diff the CI is posting, it's not appearing for H7 chips.
Add support for the hardware semaphore
The main issue with implementing HSEM is that the Cube XML is missing HSEM information except for the wle5. Without the Cube XML information the data generation process will not generate the data for HSEM. Therefore a preliminary patch has been implemented in chips.rs (see also https://github.com/embassy-rs/stm32-data/issues/444). I'm unsure about the implemented patch - would appriciate feedback.
chips with HSEM h745 h747 h755 h757 h735 h7b3 h753v h753 h743 h743v mp157 mp153 wb55 wba52 wl5x_cm0p wl5x_cm4 wle5
The current draft PR contains the HSEM implementation for:
h745 h747 h755 h757 wle5