marcan changed the topic of #asahi-dev to: Asahi Linux: porting Linux to Apple Silicon macs | Non-development talk: #asahi | General development | GitHub: https://alx.sh/g | Wiki: https://alx.sh/w | Logs: https://alx.sh/l/asahi-dev
capta1nt0ad has quit [Quit: Konversation terminated!]
capta1nt0ad has joined #asahi-dev
capta1nt0ad has quit [Remote host closed the connection]
capta1nt0ad has joined #asahi-dev
capta1nt0ad has quit []
capta1nt0ad has joined #asahi-dev
capta1nt0ad has quit [Remote host closed the connection]
gff_ has quit [Read error: Connection reset by peer]
gff_ has joined #asahi-dev
theKH has joined #asahi-dev
theKH has quit [Ping timeout: 480 seconds]
weitcis has joined #asahi-dev
weitcis has quit [Ping timeout: 480 seconds]
theKH has joined #asahi-dev
theKH has quit [Remote host closed the connection]
theKH has joined #asahi-dev
theKH has quit [Ping timeout: 480 seconds]
theKH has joined #asahi-dev
theKH has quit [Remote host closed the connection]
theKH has joined #asahi-dev
theKH has quit [Ping timeout: 480 seconds]
gff_ has quit [Read error: Connection reset by peer]
gff_ has joined #asahi-dev
cynthia has quit [Server closed connection]
cynthia has joined #asahi-dev
fmstrat has quit [Server closed connection]
fmstrat has joined #asahi-dev
_whitelogger has joined #asahi-dev
nirya has quit [Server closed connection]
nirya has joined #asahi-dev
TheLink has quit [Server closed connection]
TheLink has joined #asahi-dev
cy8aer has quit [Server closed connection]
cy8aer has joined #asahi-dev
foxtrot has quit [Server closed connection]
Method_ has quit [Server closed connection]
foxtrot has joined #asahi-dev
Method has joined #asahi-dev
ChaosPrincess has quit [Server closed connection]
ChaosPrincess has joined #asahi-dev
Gaelan has quit [Server closed connection]
Gaelan has joined #asahi-dev
lewurm_ has quit [Server closed connection]
jix__ has quit [Server closed connection]
lewurm_ has joined #asahi-dev
jix__ has joined #asahi-dev
nico_32_ has quit [Server closed connection]
nico_32 has joined #asahi-dev
phire has quit [Server closed connection]
phire has joined #asahi-dev
null has quit [Server closed connection]
chadmed has quit [Server closed connection]
chadmed has joined #asahi-dev
null has joined #asahi-dev
esden has quit [Server closed connection]
esden has joined #asahi-dev
null is now known as Guest29
robher has quit [Server closed connection]
robher has joined #asahi-dev
Tramtrist has quit [Server closed connection]
Tramtrist has joined #asahi-dev
rmk has quit [Server closed connection]
rmk has joined #asahi-dev
flying_sausages_ has quit [Server closed connection]
flying_sausages has joined #asahi-dev
balrog has quit [Server closed connection]
mattgirv has quit [Server closed connection]
mattgirv has joined #asahi-dev
balrog has joined #asahi-dev
winter has quit [Server closed connection]
winter has joined #asahi-dev
khilman has quit [Server closed connection]
khilman has joined #asahi-dev
johey has quit [Server closed connection]
johey has joined #asahi-dev
cylm has joined #asahi-dev
kit_ty_kate has quit [Server closed connection]
jonmasters_ has quit [Server closed connection]
jonmasters_ has joined #asahi-dev
kit_ty_kate has joined #asahi-dev
_alice has quit [Server closed connection]
_alice has joined #asahi-dev
cylm_ has joined #asahi-dev
liszt has quit [Server closed connection]
liszt has joined #asahi-dev
arekm has quit [Server closed connection]
arekm has joined #asahi-dev
jbowen has quit [Server closed connection]
jbowen has joined #asahi-dev
qyousef has quit [Server closed connection]
qyousef has joined #asahi-dev
Puto has quit [Server closed connection]
Puto has joined #asahi-dev
cylm has quit [Ping timeout: 480 seconds]
austriancoder has quit [Server closed connection]
austriancoder has joined #asahi-dev
msteffen has quit [Server closed connection]
msteffen has joined #asahi-dev
XeR has quit [Server closed connection]
XeR has joined #asahi-dev
daniels has quit [Server closed connection]
daniels has joined #asahi-dev
Avaflow has quit [Server closed connection]
Avaflow has joined #asahi-dev
psanford has quit [Server closed connection]
psanford has joined #asahi-dev
n1c has quit [Server closed connection]
n1c has joined #asahi-dev
kevans91 has quit [Server closed connection]
kevans91 has joined #asahi-dev
tired has quit [Server closed connection]
tired has joined #asahi-dev
VinDuv has quit [Server closed connection]
VinDuv has joined #asahi-dev
Swiftloke has quit [Server closed connection]
Swiftloke has joined #asahi-dev
refi64 has quit [Server closed connection]
refi64 has joined #asahi-dev
JTL has quit [Server closed connection]
JTL has joined #asahi-dev
yuyichao has quit [Server closed connection]
yuyichao has joined #asahi-dev
gtk2 has quit [Server closed connection]
gtk2 has joined #asahi-dev
princesszoey has quit [Server closed connection]
steffen[m] has quit [Server closed connection]
steffen[m] has joined #asahi-dev
princesszoey has joined #asahi-dev
nuup has quit [Server closed connection]
nuup has joined #asahi-dev
akemin_dayo has quit [Server closed connection]
akemin_dayo has joined #asahi-dev
vivithecanine has quit [Server closed connection]
vivithecanine has joined #asahi-dev
tumblingweed has quit [Server closed connection]
tumblingweed has joined #asahi-dev
arnd has quit [Server closed connection]
arnd has joined #asahi-dev
gladiac has quit [Quit: k thx bye]
turo has quit [Server closed connection]
turo has joined #asahi-dev
Graypup_ has quit [Server closed connection]
Graypup_ has joined #asahi-dev
Retr0id has quit [Server closed connection]
Retr0id has joined #asahi-dev
leitao has joined #asahi-dev
SSJ_GZ has joined #asahi-dev
djorz has quit [Server closed connection]
jluthra has quit [Server closed connection]
maximbaz has quit [Server closed connection]
maximbaz has joined #asahi-dev
jluthra has joined #asahi-dev
leitao has quit [Ping timeout: 480 seconds]
_jannau_ has quit [Server closed connection]
_jannau_ has joined #asahi-dev
ah- has quit [Server closed connection]
ah- has joined #asahi-dev
tanty has quit [Server closed connection]
tanty has joined #asahi-dev
<chadmed> s2idle is borked on tas2764. the same four codecs every single time fail on regcache_sync()
<chadmed> only the left tweeter and left woofer 1 make it through, the rest fail consistently
<jannau> sigh, backlight brightness nits to dac mapping looks logarithmic but my fitted logarithm has an oscillating error in both directions
chadmed_ has joined #asahi-dev
leitao has joined #asahi-dev
leitao has quit [Ping timeout: 480 seconds]
gladiac has joined #asahi-dev
chadmed_ has quit [Read error: No route to host]
chadmed_ has joined #asahi-dev
<chadmed_> it looks like the chips just disappear off the bus. the regcache sync fails with -ENXIO, and tas2764->sdz_gpio doesnt exist upon resume...
<chadmed_> resetting them before trying to restore the registers doesnt help
cylm_ has quit [Quit: WeeChat 3.6]
leitao has joined #asahi-dev
<jannau> povik: have you done any fixups for "m1n1.adt: Parse 'segment-ranges' of coprocessor nodes"? it seems to break HV boot due to what appears an adt parse problem for pmgr
leitao has quit [Ping timeout: 480 seconds]
<povik> jannau: yes. the sio PR should have a newer version
<povik> chadmed_: that's a known issue due to not properly handling the reset gpio line being shared between codecs
<povik> so the first codec in probe wins in obtaining the gpio reference, others on the same line fail (but that's ok, since the gpio is optional)
<povik> that works out during boot, since the first codec to probe pulls down the reset line for all
<povik> but it breaks down during the suspend/resume cycle
<chadmed_> so i take it that means pulling SDZ low will never work on suspend for us?
<povik> there either needs to be a bit of logic that pulls SDZ low after all codecs agree on it (like is done elsewhere in kernel in dealing with shared resets)
<povik> or we shouldn't pull it down at all
<povik> the second option could be short term workaround
<kettenis> or the resume process should be done in two stages
<kettenis> first stage restores power; second stage restores the registers
<povik> right. will kernel let us easily do it though?
<povik> meaning general kernel PM code
<povik> ah it's ASoC calling tas2764_codec_resume
<chadmed_> aiui asoc spawns a tas2764 driver for each codec, so option 1 (the good option) would be quite hard
<chadmed_> but sw shutdown quiescent current is 10x hw shutdown on two voltage rails so we really should get it working properly
<povik> of course every codec is a separate device in kernel model
<povik> the issue is doing it nicely. reset subsystem does this for shared resets
<povik> but this is a gpio without the reset subsystem involved
<povik> there's been proposals on the list to create a reset controller representation out of such gpios
<povik> that would be one solution
<povik> kettenis: i don't see how to convince ASoC of the two stages unfortunately
<chadmed_> we have the benefit of not officially supporting speakers yet (and probably for a while given we havent even started working on userspace safety) so theres time to work it out
axt_ has joined #asahi-dev
<chadmed_> do we know if macos puts them into hw shutdown?
<povik> no idea
<povik> shouldn't matter :p
<chadmed_> another 1UP over macos perhaps :D
<povik> we could split it into resume of codec as kernel device and codec as sound card component
<povik> that could be the two stages to go with in the kettenis' approach
axt_ has quit []
<povik> the issue is that SDZ is currently raised in probe of codec as a sound card component, but probably no issue in changing it for consistence
<chadmed_> so have like a tas2764_hw_{suspend,resume} that deals with the chip and then use the asoc suspend/resume just to save and restore the regs?
<povik> yes. it's ugly but it will work
lawrence has joined #asahi-dev
chadmed_ has quit [Remote host closed the connection]
chadmed_ has joined #asahi-dev
<chadmed_> povik: works a treat
chadmed_ has quit [Remote host closed the connection]
chadmed_ has joined #asahi-dev
roxfan has quit [Ping timeout: 480 seconds]
chadmed_ has quit [Remote host closed the connection]
compassion has quit [Quit: lounge quit]
compassion has joined #asahi-dev
joske has joined #asahi-dev
___nick___ has joined #asahi-dev
___nick___ has quit []
kujeger has quit [Quit: ZNC 1.8.2 - https://znc.in]
___nick___ has joined #asahi-dev
joske has quit [Quit: Leaving]
leitao has joined #asahi-dev
joske has joined #asahi-dev
compassion has quit [Quit: lounge quit]
compassion has joined #asahi-dev
compassion has quit []
compassion has joined #asahi-dev
leitao has quit [Ping timeout: 480 seconds]
<joske> chadmed: povik: looking forward to that fix :-)
<joske> right now not using s2idle because then I lose the right channel ;-)
<joske> so rebooting every time
joske has quit [Remote host closed the connection]
joske has joined #asahi-dev
joske has quit [Remote host closed the connection]
joske has joined #asahi-dev
zalyx has quit [Quit: later alligator]
zalyx has joined #asahi-dev
joske has quit [Quit: Leaving]
eiln has joined #asahi-dev
<eiln> realistically what processes could leverage the ane
<eiln> don't know what i should be focusing on rn
<eiln> low precision (fp16) basic number crunching
<eiln> best for chaining i.e. doing the last calculation with a different input again
<povik> you can write a convolver so that we delegate all speaker DSP to it :p
<povik> though at fp16 some audiophiles may complain about the quantization noise
roxfan has joined #asahi-dev
<eiln> that's really fitting. looking into it rn
hir0pro has joined #asahi-dev
eiln has quit [Remote host closed the connection]
leitao has joined #asahi-dev
hir0pro has quit [Quit: hir0pro]
leitao has quit [Ping timeout: 480 seconds]
<povik> i wasn't being exactly serious
<povik> but if you feel like it's a good demonstration, go ahead!
eiln has joined #asahi-dev
eiln has quit []
<sven> you can also coerce/train most ML models with 16bit precision and still get decent performance fwiw
hir0pro has joined #asahi-dev
<sven> duh, I think I just realized how to fix that dwc3 race: just create a local copy of dr_desired_role inside the spinlock at the beginning of __dwc3_set_mode
<sven> ofc I’m nowhere near my M1s to test that :D
leitao has joined #asahi-dev
leitao has quit [Read error: No route to host]
hir0pro has quit [Quit: hir0pro]
cylm has joined #asahi-dev
<povik> not sure if this should be fixed but i seem to 've hit an infinite loop in apple_dart_setup_resv_locked reserving a region (in DT) which is not a multiple of iommu granule in size
yamii has quit [Quit: WeeChat 3.6]
<jannau> don't do that, dart can only handle whole pages for now. how does macos deal with that? does it map with sub-page protection?
yamii has joined #asahi-dev
<jannau> it of course shouldn't hit an infinite loop but it certainly wasn't designed for this
<povik> this is some auxiliary firmware data which can be freely placed (in iova space too)
<povik> macos allocated a full page for each piece of it
<povik> which i do too (with some optimization) but i left the unaligned sizes in DT
<jannau> how are those annotated in the ADT? is that aop segment __ETEXT?
<povik> no, the data is embedded in sio properties such as map-range=, dmashim=, and device-type=
<povik> rather than trying to figure out an fdt schema for these to some degree opaque pieces of data i figured we could have m1n1 prepare the final structures sio wants a pointer to
<povik> and reserving those and considering it auxiliary firmware :p
leitao has joined #asahi-dev
leitao has quit [Ping timeout: 480 seconds]
___nick___ has quit [Ping timeout: 480 seconds]
<ChaosPrincess> im trying to boot up the touchbar via m1n1, and the firmware upload seems to be working, but once it is done, trying to read reports does not work, and it seems to still speak the firmware upload protocol. Anyone have ideas as to what part of the initialization i might be missing? the spi data stream is the same as from macos.
<ChaosPrincess> the init code: https://pst.klgrth.io/paste/jgxye
<povik> what device is that?
<ChaosPrincess> touchbar
<ChaosPrincess> well, the digitizer part, it is connected to spi0
<povik> i mean what machine
<povik> spi.CTRL.val = 0xd
<povik> that asserts chip select among other things, right?
<ChaosPrincess> m1 mbp, j293
<ChaosPrincess> that spi naturally comes out of reset with cs auto-enable on
<ChaosPrincess> and it does send and receive correct data during firmware upload phase
<povik> yes, but the device might be sensitive on chip select transitions
<povik> you might need to do them right
<ChaosPrincess> oh
<povik> they can delimit a transaction and so
<povik> just an idea...
<povik> you should really do the hex<->binary conversion before and after-the-fact
<povik> not interspersed with I/O code, that makes it hard to read
<ChaosPrincess> gp.PIN[0x8b].val = 0x76a03 # - this line is enabling something that looks like an and gate on chip select, macos pulls it on an off with every packet
<ChaosPrincess> you think that might be important?
<povik> definitely might
<ChaosPrincess> ty, ill try handling that one 'correctly' and seeing what will happen
<ChaosPrincess> povik: did you know that you are amazing? cause if you didnt - you should know that you are.
<povik> haha
<povik> did it work?
<ChaosPrincess> aye
<povik> nice
<ChaosPrincess> now to parse yet-another-apple's-hid-wrapper
<jannau> sven: copying dwc->dr_desired_role under dwc->lock and using the stack copy inside __dwc3_set_mode prevents the race. feel free to add my Tested-by:
<sven> I haven’t even written that patch yet :D
<sven> feel free to submit your solution instead ;)
<sven> ill otherwise do it tomorrow once I’m back home
fossdd has quit [Server closed connection]
<jannau> not really my solution I'll just did a little bit of typing like a monkey
fossdd has joined #asahi-dev
<jannau> but I can reply to your mail
yrlf has quit [Quit: The Lounge - https://thelounge.chat]
SSJ_GZ has quit [Ping timeout: 480 seconds]
lewurm has quit [Server closed connection]
lewurm has joined #asahi-dev
dabaum|2er0 has quit [Server closed connection]
mps has quit [Server closed connection]
mps has joined #asahi-dev
Emantor has quit [Server closed connection]
Emantor_ has joined #asahi-dev