<shorne>
shenki: FYI, I am working on adding MTTCG to openrisc, the issue you noticed about smp failing after 4 threads is kind of interesting
<shorne>
I am tracking it down, I traced it so far to the kernel getting blocked during bootup trying to run a migration i.e. 'multi_cpu_stop' to set the clocksource
<shorne>
one of the CPU's cannot stop because it gets stuck trying to handle an interrupt that QEMU just keeps asserted
<shorne>
I haven't tracked it down yet, but almost there
FabM has joined #litex
FabM has joined #litex
FabM has quit [Changing host]
<shorne>
I think I see the issue, we have the same IRQ lines attached to all CPU's, when an irq is lowered its only triggering that on the local CPU
<shorne>
ok, maybe I got it working, I don't think the level triggered interrupt driver is correct in the kernel
<shorne>
4 cores now boots stable
<acathla_>
_florent_, the last commit of soc/export.py generates lines like that : #define CSR_CTRL_BASE CSR_BASE + 0x0L, while it was generated like this : #define CSR_CTRL_BASE (CSR_BASE + 0x0L)
<acathla_>
It seems to be the same, unless you make some calculations in the prepocessor that does not work anymore, like : _Static_assert( CSR_IR_RX2_BASE - CSR_IR_RX1_BASE == IR_RX_BASE_DELTA, "IR2 base address not aligned" );
<acathla_>
I mean, #define IR_RX_BASE_DELTA (CSR_IR_RX1_BASE - CSR_IR_RX0_BASE) gives an empty IR_RX_BASE_DELTA
xenador77 has quit [Remote host closed the connection]
xenador77 has joined #litex
acathla_ is now known as acathla
<acathla>
Hum, it works if add the parenthesis later: #define IR_RX_BASE_DELTA (CSR_IR_RX1_BASE) - (CSR_IR_RX0_BASE)
<acathla>
Seems to be expanded at the very end
bentomo has quit [Quit: Connection closed for inactivity]
xenador77 has quit [Remote host closed the connection]
tpb has quit [Killed (NickServ (GHOST command used by tpb_))]