leveldown-security / SVD-Loader-Ghidra

GNU General Public License v3.0
480 stars 98 forks source link

Check for an existing data listing before attempting to add one #5

Open eShuttleworth opened 4 years ago

eShuttleworth commented 4 years ago

When attempting to apply an SVD to a Nordic nRF52, the loader fails due to conflicting data at some of the peripheral addresses. Turns out that Nordic lists multiple peripherals as having the same base address and (I think) allows one to switch between them based on context or something. In any case, checking for an existing data listing before adding one fixes this.

Resulting listing view:

Result

eShuttleworth commented 4 years ago

I think this resolves #1?

IrshadJS commented 4 years ago

This does fix the issue with the nrf52 SVD file. Thank you @eShuttleworth

brainstorm commented 3 years ago

So? Merge? :)

rpavlik commented 3 years ago

Ah, so that's why. Could it be listed as an "overlay" region? Interestingly, with the nrf51 SVD, I still needed to put an exception handler around this, even with the check.

nezza commented 3 years ago

Thanks a lot, will try this PR and merge if successful