You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The current deduplication algorithm is too greedy, at least with respect to fieldsets. The equivalence check currently ignores field names and descriptions, leading to arguably incorrect results.
E.g. looking at the imxrt1061 CCM (which is its own module) many fieldsets are taken from the imxrt1015 definition. The result is that multiple existing clock gates are documented as "Reserved".
The concrete case I stumbled over was that on imxrt106x FLEXIO2_CLK_PRED and FLEXIO2_CLK_PODF don't exist. Instead these fields are called FLEXIO1_CLK_PRED/FLEXIO1_CLK_PODF. I.e. these fields names exist twice on two different registers. This is incorrect on imxrt106x, even though it is correct in the SVD.
The text was updated successfully, but these errors were encountered:
Good find. Correcting the greedy combination of fieldsets seems to be straightforward; see #33. Greedy enum variant combinations are a larger problem, as it results in both incorrect Rust symbols and incorrect documentation. I'm pondering fixes for both in the other linked PRs.
The current deduplication algorithm is too greedy, at least with respect to fieldsets. The equivalence check currently ignores field names and descriptions, leading to arguably incorrect results.
E.g. looking at the imxrt1061 CCM (which is its own module) many fieldsets are taken from the imxrt1015 definition. The result is that multiple existing clock gates are documented as "Reserved".
The concrete case I stumbled over was that on imxrt106x
FLEXIO2_CLK_PRED
andFLEXIO2_CLK_PODF
don't exist. Instead these fields are calledFLEXIO1_CLK_PRED
/FLEXIO1_CLK_PODF
. I.e. these fields names exist twice on two different registers. This is incorrect on imxrt106x, even though it is correct in the SVD.The text was updated successfully, but these errors were encountered: