<geist>
hmm, question: is there a plan for some sort of standardized support for MSIs on PLIC based interrupt controlelrs?
khem has joined #riscv
llamp[m] has joined #riscv
TianruiWei[m] has joined #riscv
<geist>
I dont see any reference to it in the plic spec, nor do I see any particular mechanism in the qemu virt machine for riscv
<geist>
the pending register in the plic *almost* gets what you want but it's not writable
<sorear>
on the current platforms MSI doorbells are provided as part of the PCIe root complex, not the PLIC
<sorear>
unsure if that changes with the advanced interrupt controller work
<geist>
ah. was just thinking that. linux doesnt seem to have any support for it at the moment so unclear if it's present in any real hardware
<sorear>
if you mean AIC I have no idea if it's a real/credible thing
<geist>
i dunno! I was just expecting there to be a doorbell int he plic and was surprised to not see it
<sorear>
given that the doorbell seems to be a standard feature of the cadence pcie block that may have been deliberate at the time
<geist>
yah. and since qemu virt machine is not emulating a particular pcie controller it seems (there are no pci controller registers) there's no fallback solution
<sorear>
hmm, i thought virt did have pcie interrupts
jmdaemon has joined #riscv
panzeroceania has joined #riscv
<geist>
not as far as i can tell. or at least the llinux 5.8 kernel i have running in one doesn't do MSI
<geist>
it has the standard swizzled 4 legacy irqs though, of course
_inky has joined #riscv
freakazoid12345 has quit [Ping timeout: 250 seconds]
riff-IRC has quit [Remote host closed the connection]
riff-IRC has joined #riscv
BOKALDO has joined #riscv
winterflaw has joined #riscv
<geist>
Finde: ah thanks. that's kinda the meta info i was really looking for: what the direction standard interrupt controllers are going in on riscv (if any)
shoragan has quit [Excess Flood]
shoragan has joined #riscv
_inky has quit [Ping timeout: 256 seconds]
_inky has joined #riscv
edef has quit [Ping timeout: 268 seconds]
jacklsw has quit [Ping timeout: 250 seconds]
MichaelZhu has joined #riscv
MichaelZhu has quit [Client Quit]
edef has joined #riscv
edef has quit [Ping timeout: 240 seconds]
edef has joined #riscv
seninha has joined #riscv
Teufelchen has joined #riscv
EchelonX has quit [Quit: Leaving]
edef has quit [Remote host closed the connection]
edef has joined #riscv
edef has quit [Remote host closed the connection]
prabhakarlad has quit [Quit: Client closed]
edef has joined #riscv
prabhakarlad has joined #riscv
_inky has quit [Ping timeout: 256 seconds]
raym has quit [Ping timeout: 256 seconds]
raym has joined #riscv
BOKALDO has quit [Quit: Leaving]
_inky has joined #riscv
prabhakarlad has quit [Quit: Client closed]
prabhakarlad has joined #riscv
jacklsw has joined #riscv
aerkiaga has joined #riscv
BOKALDO has joined #riscv
mahmutov has joined #riscv
balrog has quit [Ping timeout: 256 seconds]
Sofia has quit [Ping timeout: 276 seconds]
Sofia has joined #riscv
Andre_H has joined #riscv
riff-IRC has quit [Ping timeout: 240 seconds]
jacklsw has quit [Quit: Back to the real life]
<[exa]>
hi everyone! Are there some good learning&teaching tools/guidelines for risc-v low-level programming? I'd love say a small platform that can run code in qemu and communicate on a serial port, ideally controlled relatively easily with assembly
<la_mettrie>
i've been trying such stuff with longan nano but haven't got far yet. they're so cheap that it's pretty safe to try. there's probably no good assembly guides available for risc-v at the moment. with previous assembly experience it's easy to get started with whatever you find from the web though
<muurkha>
what did you think of the risc-v assembly programmer's manual
<la_mettrie>
those official ISA manuals are pretty good source of information. pdf by indian Shakti company is usable for the user level stuff (though it mostly copies official manuals, it also gives some practical examples).
___nick___ has joined #riscv
<\dev\ice>
la_mettrie: i'm playing with longan nano now :-)