pico-sdk icon indicating copy to clipboard operation
pico-sdk copied to clipboard

Access tags are missing on register level in the SVD file

Open atanasuzunov opened this issue 4 years ago • 5 comments

According CMSIS SVD specification, the <access> tag is mandatory on register level:

"If the elements <size>, <access>, <resetValue>, and <resetMask> have not been specified on a higher level, then these elements are mandatory on register level."

That causes side effects with some IDEs. If a register contains mixed read-write and read-only fields, a proper implementation could be: defining the register as read-write, and then overriding the access type with a read-only <access> tag on the field level.

atanasuzunov avatar Apr 21 '21 12:04 atanasuzunov

I was initially confused by this report of "access tags being missing", so I checked and they are present on the field-level, just not at any higher-levels.

@atanasuzunov I guess as a temporary workaround (until we fix this) you could edit your SVD file to define a default read-write access tag at the device level?

@kilograham Assign this to me please.

Hmmm, looks like we're missing resetMask tags too, perhaps that was added to the SVD spec after I wrote the SVD-creation tool? Or maybe I just never noticed the sentence saying "these elements are mandatory"? :shrug: BTW I'm fairly sure the SVD file did pass the SVDConv checks when I wrote the SVD-creation tool.

lurch avatar Apr 21 '21 13:04 lurch

bump

kilograham avatar Oct 04 '21 21:10 kilograham

is this fixed?

kilograham avatar May 26 '23 13:05 kilograham

Nope, I don't think so. And it should probably be reassigned to @andygpz11 as I believe he's looking after the SVD-generation code now?

lurch avatar Jun 01 '23 23:06 lurch

Reassigning to @matiasilva as I think he might have been looking at the SVD stuff most recently?

lurch avatar Jun 24 '24 23:06 lurch

SVDs were improved on SDK2.0.0 please re-test

kilograham avatar Aug 09 '24 02:08 kilograham