<rqou_>
anyone got an aarch64 opcode map reference guide?
<rqou_>
apparently i need to fix "HV: store not emulated: 0xad008901"
<rqou_>
... or not, apparently simd regs aren't even available in exc_info
<rqou_>
hey marcan how hard would it be for you to fix this?
nicolas17 has quit [Quit: Konversation terminated!]
user982492 has joined #asahi-re
<phire>
rqou_ Lina was actually working on this problem on yesterday's stream.
<rqou_>
lol ok
<rqou_>
i missed that
<rqou_>
has the code been pushed yet?
<phire>
Implemented the 256bit reads/writes, then ran into a pathological problem with reads split across pages. So not pushed
<rqou_>
rip ok
<rqou_>
i added a hack for just the opcodes i need for now, which seems to not crash in my case
<phire>
should work if the thing you are tracing is page aligned. It only runs into issues if a read/store starts on a previous non-traced page, and overflows into the page you are tracing
Graypup_ has quit [Quit: meow]
Graypup_ has joined #asahi-re
<rqou_>
afaict it's not guaranteed to be page aligned, but happens to be for now
<rqou_>
yolo
<marcan>
rqou_: you should read the broadcom wifi driver
<marcan>
everything you're describing about the window stuff sounds exactly like what it does
<rqou_>
i have been reading it, but it doesn't look the same?
<marcan>
I mean the idea of remapping the BAR window via config space
<rqou_>
many parts are similar though
<marcan>
and I doubt they have a different PCIe core for bluetooth so it should have the same registers for that?
<marcan>
also there are several BAR windows, linux only uses one AFAIR
<marcan>
at least two configurable ones
<marcan>
and then other hardcoded ones
<rqou_>
yes, macos definitely uses more
<rqou_>
for bluetooth
<marcan>
yes, it uses two for wifi too
<rqou_>
macos seems to use 5 for bluetooth
<rqou_>
i did find that one of the config space registers matches the wifi side
<rqou_>
everything else seems different though, even the layout of message rings
<rqou_>
or the firmware boot process
<marcan>
that's not surprising
<marcan>
I would expect the PCIe core to be ~the same, but not a lot of the rest since the bluetooth stuff has a very different lineage
<rqou_>
tbh poking the lower-level bar window stuff is a pain because the instant you do a "bad" read the whole system locks up
<rqou_>
something about error recovery might be broken
<rqou_>
in the pcie core
<marcan>
I know
<marcan>
it's unclear if there is a way to recover
<rqou_>
but yeah, the pcie looks similar, and there's definitely a chipcommon
<marcan>
since a stuck MMIO isn't exactly recoverable except by another CPU
<marcan>
which is not sane
<marcan>
is there really no linux driver for this at all? like no other bluetooth driver that fits? some broadcom sdhc stuff? some android source drop?
<rqou_>
it can't be turned into a bus error?
<marcan>
I find it hard to believe nothing else uses this
<rqou_>
hrm, i'm not aware of anything
<marcan>
I dunno, maybe? I mean it sounds like a TLP that never completes
<rqou_>
there's broadcom uart bluetooth
<marcan>
maybe there's some way to configure a timeout
<rqou_>
which afaict is also different
<rqou_>
i haven't done a thorough check of android vendor kernels though