<kscz>
why would just linking libliteeth cause infinite ISR handling?
<kscz>
I am befuddled
<geertu>
kscz: Are there any constructors in the library?
<kscz>
not that I can spot?
<kscz>
and the crt0.S doesn't even call global initializers so I would expect I need to make it somewhere in the code for there to be a failure due to a constructor
<kscz>
I mean, this feels like something someone else using libLiteEth would have spotted already... I guess I am mostly befuddled because I don't feel like I'm pushing very hard on the frameworks and I'm running into a lot of issues
<kscz>
which normally indicates I'm doing something very wrong
<kscz>
but I can't for the life of me figure out what
<kscz>
are other people not seeing this issue? Is it just me?
<kscz>
are other people not seeing this issue?
<kscz>
ack, sorry, meant to edit but forgot this is IRC for a moment
CarlFK1 has joined #litex
<kscz>
Maybe there is something in .bss or .data which is causing an issue when crt0.S tries to initialize it?
<kscz>
looking at the map file though, that seems unlikely
<geertu>
Binary too large? Overlap with the isr? Is that address of the isr pinned in an assembler file?
<flygoat>
kscz: Have you checked what exception is it in ISR? Sometimes exceptions like illegal memory access is also going into ISR.
CarlFK1 has quit [Quit: Leaving.]
d_olex has joined #litex
cr1901 has quit [Read error: Connection reset by peer]
cr1901 has joined #litex
CarlFK1 has joined #litex
CarlFK1 has quit [Client Quit]
<kscz>
@geertu - I don't think the binary is too large as I tend to get compiler errors when I spill over the ram or rom size. Not sure what you mean by "overlap with the ISR"? The ISR is pinned in the linker file - https://github.com/kscz/wyrm/blob/debug_bridge/software/linker.ld#L8-L22
<kscz>
@flygoat I will try but the debugger is *very* slow and spits out a lot of errors while running. I need to go find a good reference on checking exceptions in riscv
<geertu>
kscz: And the actual isr_vector and text.isr are still at the expected locations in the final binary?
<kscz>
yes it appears so based on the map file
<kscz>
do you know how to check the CSR registers from gdb?
<kscz>
ahhha - okay, it's just "info register foo"
<kscz>
alright, so about what I would expect - it says it's performing a misaligned load in .data initialization
<kscz>
yep - no bueno:
<kscz>
66460: 0x000027c2 PROVIDE (_fdata_rom = LOADADDR (.data))
<kscz>
does anyone know how to force the load address to be aligned???