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 joined #asahi-dev
jlco has quit [Quit: https://quassel-irc.org - Chat comfortably. Anywhere.]
Dcow has joined #asahi-dev
riker77_ has joined #asahi-dev
riker77 has quit [Ping timeout: 480 seconds]
riker77_ is now known as riker77
tanty has quit [Remote host closed the connection]
tanty has joined #asahi-dev
capta1nt0ad has quit [Quit: Konversation terminated!]
user982492 has joined #asahi-dev
psykose_ has quit [Remote host closed the connection]
psykose has joined #asahi-dev
lamlam has joined #asahi-dev
<lamlam> i believe i had a brainfart yesterday
<lamlam> anyways
<lamlam> WHO LIKES CONVOLUTIONS
<lamlam> AND MATMULS
<lamlam> THE ANE WORKS
<lamlam> IT WORKS
<lamlam> TESTS ARE NCHW 2D CONV
<lamlam> all it really is a multiply-add circuit, so it can be configured to do matmuls/elemwise too :)
<lamlam> from apple themselves:
<lamlam> "Neural processor circuit is a *configurable circuit* that performs neural network operations on the input data based at least on kernel data"
<lamlam> kernel (image kernel) just being input2
<lamlam> tldr, does MADDs with input1 with input2, with LOTS of config options
<lamlam> ill send the poc soon
<lamlam> caveats, the *entire* 0x4000 - 0x20000 range is configs so lots of work to do
<tpw_rules> sounds pretty convoluted
<lamlam> hehe
<lamlam> but ive got the hardware queue/ push / trigger interface down
<marcan> I think I'm going to push the new installer (just the installer) ahead of the actual image updates. I'm tired of people running into the same old diskutil failures and posting everything except the actual useful info on github :p
capta1nt0ad has joined #asahi-dev
<marcan> pushed installer v0.5 to prod
<tpw_rules> i guess it would be hard until this current dev push is finished, but next time you update the main asahi non-dev repo please tag the PKGBUILD repo or set up a separate branch or whatever
lamlam has quit [Quit: Page closed]
kevans91 has joined #asahi-dev
jnrubyrubyruby has joined #asahi-dev
jnrubyrubyruby has quit [Quit: Page closed]
psykose has quit [Ping timeout: 480 seconds]
<marcan> tpw_rules: that's the plan
<marcan> I'll make a separate branch that tracks the commit at which asahi-dev gets synced to asahi
capta1nt0ad has quit [Remote host closed the connection]
user982492 has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
weitcis has joined #asahi-dev
SSJ_GZ has joined #asahi-dev
capta1nt0ad has joined #asahi-dev
capta1nt0ad has quit [Remote host closed the connection]
<chadmed> can we just port coreaudio to linux seriously...
<povik> :|
<povik> what now?
<chadmed> i just want AudioUnits :P
capta1nt0ad has joined #asahi-dev
<chadmed> theyre using an AU to split off bass to a virtual channel to apply independent dynamics filtering so that the cones dont hit the chassis on big bass hits
<chadmed> theres no sane way to copy this with IRs and LADSPA plugins inside pipewire, so the choices are nonexistent bass at low volumes or popping noises at high volumes
<chadmed> same goes for equal loudness, you cant link a sink's volume control to a ladspa plugin port so the equal loudness plugin doesnt actually do anything when inserted into the chain
<chadmed> the actual sound is good now though, i figured out how to deal with those horrible honking mids
weitcis has quit [Remote host closed the connection]
<chadmed> and most _good_ sources sound fine at low volume because theyve been mastered properly, but web content is going to be a bit of a wild west
<kode54> um
<kode54> the AU in question would be using a crossover strategy
<kode54> then you apply your dynamics filtering to the output of the crossover
<chadmed> yeah i know how it works, apples dsp graph is just stored on disk in plain text so we can see what they do
<kode54> oh
<kode54> but there's no useful crossover filters for Linux?
<kode54> I know someone made some unfortunately closed source speaker crossover plugin for foobar2000, of all things
<chadmed> there are, but the way pipewire loads that stuff in means we cant actually control them after theyre loaded, so equal loudness is never going to work
<kode54> oh
<chadmed> and in terms of doing the dynamics on bass and sub bass, a filter chain can only link a port exactly once
<kode54> I thought it was down to placing a dynamics compressor on the output
<chadmed> so we cant, for example, split off the bass to do DRC on it, then link that back into the convolver with the non-compressed signal, then sum those and send off to the correct cone
<chadmed> honestly its not the end of the world if we have to live with less bass than macos
<chadmed> macos has too much
<kode54> you can't do convolver per speaker?
<kode54> crossover splitter on the correct ranges, DRC on the outputs, convolve, send to speakers
<chadmed> thats what im doing now, but pipewire wont let you then sum two inputs into the convolver (i.e. the bass and everything else)
<kode54> oh
<kode54> you need merged signal for the convolver
<chadmed> yeah theres no "subwoofer" per se, the woofer drivers are dual opposed
<kode54> I didn't think there was a subwoofer
<kode54> I thought there was a six-way crossover going on
<chadmed> so theyre both full range and need 20-1200, but we only want to apply dynamics to 20-400ish
<kode54> well, three way per channel
<chadmed> we cant do that
<kode54> have you looked into a multi-band compressor then?
<kode54> or does Creative own the patent on that with their Crystalizer bs
<chadmed> nah lsp has a multiband compressor
<kode54> then it needs to be a compressor that only applies to specific band that's configurable
<chadmed> i might play around with that, the challenge there being configuring it via pipewire's text files
<kode54> ah yeah
<kode54> maybe figure out a setting in some LADSPA config app, and then see if you can recreate the settings as a pipewire settings file
<kode54> former to see if it will work first
<chadmed> yeah im using carla, from which i can export each plugins config
<kode54> good
<chadmed> its just figuring out what pipewire calls the plugins controls etc
<kode54> ah, that's a pain
<kode54> meanwhile
<kode54> I'm thinking, with the way dev is progressing
<kode54> it's on the right track to replace my macOS setup by the time Apple decides if they ever want to drop support for the M1 series
<kode54> no idea how many years that will take
<kode54> maybe I might jump ship sooner if it turns out the Linux hardware acceleration works much better for games than macOS native games
<kode54> that's offtopic though
<kode54> I wish you luck with your speaker configuration woes
<kode54> ideally a multi-band compressor will let you pick a band to apply the dynamics compression to, and merge that with the unprocessed signal ranges
<kode54> all without having to use complex graph setup
<kode54> I'm hoping for that that the plugin will just have controls to create N bands and set their frequency ranges, possibly rolloff behavior
<kode54> and possibly dynamics behavior to apply
<kode54> I'd have to look at the filter in carla to know for sure
<chadmed> the lsp one has 8 bands hard coded but theyre all bypass-by-default so i can just configure one from pipewire
<chadmed> the only thing now is that we introduce a dependency on lsp-plugins
<chadmed> and ive been trying to avoid that
<kode54> ah, yeah
<kode54> maybe instead you can use some coding wizardry to generate ideal filters for the crossover
<kode54> and bundle the ideal filter with a dynamics compressor that recombines the output
<kode54> ie. make an ideal crossover and package it separately
<chadmed> i am the last person in the universe who should be allowed near dsp code :P
<kode54> but then it's single purpose
<chadmed> thats also kinda hacky and part of the motivation for this is to demonstrate A Better Way(tm) to handle these sorts of devices on bog-standard linux
<kode54> gotcha
<kode54> so I guess you may be forced to make systems depend on that lsp-plugins package
<chadmed> yeah, which is fine tbh if it means people can use their speakers without crushing the cones against the chassis
thepigguy has joined #asahi-dev
<chadmed> ok if someones game to test ive pushed to asahi-audio
<chadmed> it works quite well actually
<chadmed> downside is the cpu use...
bluetail has quit [Ping timeout: 480 seconds]
bluetail has joined #asahi-dev
chadmed has quit [Ping timeout: 480 seconds]
thepigguy has quit [Quit: thepigguy]
Dcow has quit []
jlco has joined #asahi-dev
___nick___ has joined #asahi-dev
___nick___ has quit []
___nick___ has joined #asahi-dev
Dcow has joined #asahi-dev
Dcow has quit [Quit: Konversation terminated!]
Dcow has joined #asahi-dev
<Dcow> is there a special way to prepare initramfs on arch asahi linux? apparently mkinitcpio don't like me (stuck on booting)
Dcow has quit [Remote host closed the connection]
kettenis_ is now known as kettenis
gladiac has joined #asahi-dev
ah- has joined #asahi-dev
gladiac has quit []
gladiac has joined #asahi-dev
<alyssa> is ASan supposed to work with 16K pages...?
<j`ey> not yet
<j`ey> some patches on lkml, lemme get the link
<alyssa> ugh okay
<alyssa> that explains that then
<alyssa> j`ey: userspace libasan I mean, not KASAN
<j`ey> ohhh
<j`ey> sorry, I dont know then
<alyssa> nw
<alyssa> thanks
bisko has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
bisko has joined #asahi-dev
bisko has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
bisko has joined #asahi-dev
Dcow has joined #asahi-dev
<Dcow> is it possible to boot installed m1n1 (in efi partition) and get logs from kernel boot with proxymode?
bisko has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
bisko has joined #asahi-dev
simon_ has joined #asahi-dev
<Tramtrist> 🐘
Dcow has quit [Remote host closed the connection]
simon_ is now known as NewNickname
NewNickname is now known as siontx
Dcow has joined #asahi-dev
<kettenis> so that was fun; apparently the SMC throws a fit if you send a command to the SPI keyboard/touchpad and don't consume the reply quickly enough
gladiac is now known as Guest2033
gladiac has joined #asahi-dev
Guest2033 has quit [Ping timeout: 480 seconds]
Dcow has quit [Remote host closed the connection]
Dcow has joined #asahi-dev
Dcow has quit [Remote host closed the connection]
siontx has quit [Remote host closed the connection]
siontx has joined #asahi-dev
siontx has quit [Ping timeout: 480 seconds]
<jannau> kettenis: weird
<jannau> dcp works on M2!
<jannau> 3 changed lines in drivers/gpu/drm/apple and all three changes will make sven happy
<sven> \o/
<sven> why will they make me happy? :D
<jannau> dma_set_mask_and_coherent(&pdev->dev, DMA_BIT_MASK(36));
<jannau> so the dma_set_mask_and_coherent() calls are not the default anymore
<sven> ah, i remember "complaining" about that ;)
<jannau> only dart, devicetree and m1n1 changes
<jannau> any idea how the aperture start and end could be expressed in the devicetree?
<jannau> I have currently "apple,vm-start" and "apple,vm-size" copied from the ADT
<jannau> since I had to change dart anyway I've switched to a shadow L1 table for the locked darts
<sven> hrm, so you actually need to enforce vm-start and vm-size?
<jannau> not sure, in practice probably not
siontx has joined #asahi-dev
<sven> I don't think there's any documented property for that. iirc there is one iommu that has a custom property ("xxxx,dma-window" maybe)
<sven> but if it's not required i'd just skip it
<sven> quite a few darts have those vm-start/vm-size properties and so far we just ignore all of them
<jannau> but I would expect problems if dcp gets gets addresses below vm-start
<sven> can't you mark that region as reserved if it actually causes problems?
<jannau> I think none of them has a non-zero vm-start
<jannau> I still need something to set a 36-bit aperture
<sven> didn't the pcie ones have that as well?
<sven> do all DARTs on the M2 support 36 bit? or is there a register where you can get the aperture from?
<sven> if so i'd just set the domain aperture to that for the M2 darts
<jannau> we have DART_T8110_PARAMS3_VA_WIDTH
<jannau> so, yes we can just use that
<sven> luckily the iova allocator starts handing out allocations at the very end of its aperture so it'll be very obvious if this breaks anything else :D
<Tramtrist> M2 work progressing 👀 🎉
siontx has quit [Ping timeout: 480 seconds]
<jannau> dcp and usb still work
<sven> nice!
<jannau> shouldn't a larger aperture cause only problems for devices that set a larger dma mask
<sven> yes
<sven> but dwc3 will do that
<sven> but essentially only devices that support >32 bit dma should do that and those should all work fine if the iommu also supports that I think
bisko has quit [Read error: Connection reset by peer]
bisko has joined #asahi-dev
gladiac has quit [Quit: k thx bye]
siontx has joined #asahi-dev
<jannau> now with all firmware in place everything still seems to work without vm-base/vm-size
tanty has quit []
<jannau> and using 36-bit VA width
tanty has joined #asahi-dev
lkron has joined #asahi-dev
<sven> nice!
lkron has quit [Quit: Lost terminal]
jlco has quit [Ping timeout: 480 seconds]
jlco has joined #asahi-dev
<jannau> sigh, https://github.com/AsahiLinux/linux/issues/69 "... we can do ..." filling feature requests is not material participation in development
<sven> looks like I can close it :D
<kettenis> btw, after the upgrade to macOS 12.6.1, nvme advertises an rtkit endpoint numbered 10
<kettenis> has that one seen before? and to we have a clue what it is?
<sven> I remember seeing that somewhere else as well
<sven> but I don’t remember what it was
<jannau> it was added in the ventura (beta) firmware as well
jluthra has quit [Remote host closed the connection]
jluthra has joined #asahi-dev
ashi has joined #asahi-dev
erik3424 has quit [Quit: erik3424]
ashi has quit []
<kettenis> wouldn't surprise me if 13.0.1 and 12.6.1 use the same nvme firmware
___nick___ has quit [Ping timeout: 480 seconds]
<alyssa> jannau: nice
<alyssa> :-D
amarioguy2 has joined #asahi-dev
amarioguy2 has quit [Remote host closed the connection]
bisko has quit [Read error: Connection reset by peer]
bisko has joined #asahi-dev
user982492 has joined #asahi-dev
siontx has quit []
Dcow has joined #asahi-dev
<Dcow> any hint how to fix: m1n1.proxy.UartTimeout: Expected 1 bytes, got 0 bytes
<alyssa> try again
<Dcow> tried like 10 times, zero succes
<alyssa> try unplugging all usb devices from the proxyclient machine, except for the cable to the m1
<alyssa> try switching which usb port on the proxyclient machine is used
<alyssa> (I get that issue unless I use the right port ....)
<alyssa> (and have nothing plugged to the left port ...)
<Dcow> what is right port for j316?
<Dcow> connection to the proxy is detected, is it mean that port is right one?
<alyssa> dunno
alyssa has left #asahi-dev [#asahi-dev]
<Dcow> type-c to type-c cable is ok to use?
<sven> please move this to #asahi
<Dcow> sure, sorry
user982492 has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
tanty has quit []
tanty has joined #asahi-dev
Dcow__ has joined #asahi-dev
Dcow has quit [Quit: dcow]
SSJ_GZ has quit [Ping timeout: 480 seconds]
elvishjerricco has quit [Read error: No route to host]
elvishjerricco has joined #asahi-dev
yrlf has quit [Quit: The Lounge - https://thelounge.chat]
lamlam has joined #asahi-dev
<lamlam> was about to commit ane patch rn and github soft-banned me?? "Your account has been flagged. Because of that, your profile is hidden from the public"
lamlam has quit [Quit: Page closed]
<povik> so you get private repos for free now? :p
<povik> they used to charge for that not so long ago!
<povik> on a more serious note, i am curious what will turn out to be the grounds for it
<povik> i assume you haven't done anything outright illegal there
weitcis has joined #asahi-dev
weitcis_ has joined #asahi-dev
weitcis has quit [Read error: Connection reset by peer]
chadmed has joined #asahi-dev
weitcis_ has quit [Ping timeout: 480 seconds]