ChanServ 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
amarioguy has quit [Remote host closed the connection]
amarioguy has joined #asahi-dev
eiln has quit [Remote host closed the connection]
seeeath has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
seeeath has joined #asahi-dev
seeeath has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
nate8_ has joined #asahi-dev
seeeath has joined #asahi-dev
seeeath has quit []
nate8 has quit [Ping timeout: 480 seconds]
nate8_ has quit []
stipa has joined #asahi-dev
capta1nt0ad has joined #asahi-dev
nicolas17 has quit [Quit: Konversation terminated!]
hiramthehero has joined #asahi-dev
greguu has quit [Ping timeout: 480 seconds]
hiramthehero has quit []
hertz has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
greguu has joined #asahi-dev
zzywysm has quit [Ping timeout: 480 seconds]
zzywysm has joined #asahi-dev
zzywysm has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
capta1nt0ad has quit [Ping timeout: 480 seconds]
hertz has joined #asahi-dev
hertz has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
hertz has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
stipa is now known as Guest1698
stipa has joined #asahi-dev
Guest1698 has quit [Ping timeout: 480 seconds]
<chadmed>
j`ey: they need to segment the studio somehow
<chadmed>
the logic is sound - if youre buying a mini you probably arent after max tier performance
<chadmed>
im real happy that theyve shaved 20 bucks off the rrp of the minis in australia though, and my student discount still works so its actually about 250 bucks >:)
<chadmed>
povik: have you got an idea of how you want to expose V/ISENSE? it would be nice to hide them as valid inputs from pipewire et al but idk how we do that while still getting data out of them via alsa-lib
<jannau>
cooling might be an issue with the max assuming keeping it silent (compared to intel mac minis) is a goal
<chadmed>
that too. the studio has a a fairly beefy fin stack
dsharshakov has joined #asahi-dev
<dsharshakov>
chadmed: maybe just hide those visense pcm ins via ucm?
<chadmed>
oh you can do that?
<chadmed>
ive been purposefully avoiding ucm because it looks like a nightmare to use
<chadmed>
i already had to learn alsa-lib and the rust bindings for it :P
<dsharshakov>
They're by logic PCM, so no need to create a new bicycle. If kernel doesn't allow marking that as a "not an input", just block using UCM (or ACP profiles in PipeWire)
<chadmed>
right cool
<chadmed>
i didnt have any particular idea in mind which is why i asked so im happy with whatever
<chadmed>
as long as someone cant accidentally set it as their default microphone or whatever
<chadmed>
because if we have the pcm open in the safety daemon, pipewire trying to open it at the same time is gonna cause problems
<dsharshakov>
I can't. I don't have hardware lol. Dream of getting it
<dsharshakov>
However in PW channel you'll be welcomed and someone can definitely help you with profiles
<dsharshakov>
VIsense can be exposed as a new soundcard
<chadmed>
yeah thats the plan, we got that far last time we discussed it
<povik>
marcan: not really. this must be more than a quantization noise, it's above the level of quanta, but it's all in accord with the noise figures from datasheet -- i just drove a weak signal to the speaker when i captured the trace
<povik>
no, no new soundcard
<povik>
but a a separate PCM, yes
<chadmed>
yeah that ^
<chadmed>
but it just occurred to me today that we might want to stop people from trying to use it as a microphone
<povik>
as dsharshakov points out, if we don't describe it in UCM it won't show up as a microphone in user interfaces
dsharshakov has quit [Remote host closed the connection]
<chadmed>
cool
<povik>
there's of course still the issue of how the pipewire DSP layer falls into the scheme
<povik>
but i don't have to think about that right now O:-)
<chadmed>
the dsp should never have to touch the visense pcm
<povik>
yeah, i was thinking of not exposing the direct speaker sinks
<povik>
but that is pretty separate from the safety issue, you are right
<chadmed>
there might not be any real way around that, good thing is if we do safety right then users accidentally selecting it shouldnt ruin anything (except the quality heh)
<chadmed>
part of the feature proposal i put forward in pw was to have some flag somewhere either in pw or wp to "hide" a node
<povik>
or we can *not* describe the speakers in UCM, making that woofer baseline unavailable by default
<povik>
and if pipewire respects UCM, it shouldn't offer that sink to users
<chadmed>
it respects it, but it doesnt make a Node so the dsp graph cant connect to the speakers
<povik>
ah
<chadmed>
lazy solution: we call the device "DO NOT SELECT THIS" in the kernel
<chadmed>
/ s
dsharshakov has joined #asahi-dev
<dsharshakov>
povik: I'm working on hiding those via WirePlumber. Nodlt hiding though
<dsharshakov>
chadmed: you better not allow switching rates yet, lock at 48k.i
<dsharshakov>
I found and filed a Pw bug which causes crackling due to accidental rate mismatch
<chadmed>
oh thats what that is
<chadmed>
:P
<chadmed>
i havent pushed any updates to the main branch for a while
<dsharshakov>
It's hard to catch
<chadmed>
yeah i get it sometimes in the left channel
pg12_ has quit []
pg12 has joined #asahi-dev
<dsharshakov>
* dsharshakov should finish old branches instead of creating new projects...
<dsharshakov>
I need to finish at least wireplumber.hide prop as the first step
<dsharshakov>
Actually loading the filter by rules causes debates due to config structure
leitao has joined #asahi-dev
<dsharshakov>
Well, node hiding should be enough for our use cases. Not enough to store the config universally in repos yet
<dsharshakov>
We should not bikeshed about that config format, don't let it be another cpuidle. Rule matching should suffice, UCM2 does the same
<dsharshakov>
And anyway, you mustn't rely on WirePlumber to prevent users from accessing speakers. They should be able to safely push DC bias, square waves and whatever they want, kernel + speakersafetyd should prevent frying the machine. PipeWire is there to ease and enrich, not to protect
<dsharshakov>
UCM2 as well
<chadmed>
yeah the visense pcm wont be able to break anything, its more a UX thing
<chadmed>
and like i said the other day, people who are still clinging on to a no-pipewire alsa-only setup will just have to accept a lower qol/ux
<dsharshakov>
I answered to povik's "hide speakers to be safe"
<chadmed>
oh right
<dsharshakov>
You can also make PW DSP glitch by setting low quantum etc
<chadmed>
yeah once the safety daemon is up and running and that functionality is wired in then using the speakers as a raw device wont be able to break anything
<povik>
no, i was thinking of UX, not safety
<povik>
i think we are all in agreement here
<dsharshakov>
So expect userspace to be harsh, users are quite eager to make everything glitch
<dsharshakov>
UX: yeah, will get covered. As I said, I just need to get to it...
<chadmed>
no rush :P
<chadmed>
to quote cave johnson, we're not shipping anything until we're damn sure its good and ready
<dsharshakov>
Alright. Thanks guys for speaker protection studies: maybe we can enable those in some 2-3 months
<povik>
chadmed: i only remember certain quotes about lemons...
<chadmed>
the remaining work on the daemon can be done in a weekend once the kernel driver has the interfaces we need
<dsharshakov>
Yes. Nice to know markan adheres to such a philosophy to make users safe :)
<dsharshakov>
And basically everyone else here
<chadmed>
its to cover our own arses as well. if we start letting the magic smoke out of folks' machines and apple sees an uptick in returns theyre liable to take our toys away
<chadmed>
"do not under any circumstances poison the macos container" can be generalised to "dont make us look bad"
dsharshakov has quit [Remote host closed the connection]
dsharshakov has joined #asahi-dev
<dsharshakov>
btw, what's the proper way of naming a person without mentioning them on IRC?
<dsharshakov>
I've seen misspells and spaces being used
<chadmed>
like without pinging them? whatever gets the point across i guess
<dsharshakov>
Alright
<j`ey>
ch4dm3d
dsharshakov has quit [Remote host closed the connection]
<povik>
who's that?
<chadmed>
xX_j03y_kw1ksk0p3z_Xx
<j`ey>
lul
<chadmed>
would be nice if clients could agree on some informal standard for deciding what and what isnt supposed to be a bing
jluthra has quit [Remote host closed the connection]
jluthra has joined #asahi-dev
povik has joined #asahi-dev
adryzz has joined #asahi-dev
chadmed_ has joined #asahi-dev
<sven>
so apparently Apple considers setting PCI_EXP_SLTCAP_HPC for the thunderbolt pcie ports optional *sigh*
<sven>
which explains why there just wasn't enough bus space available once new devices appeared out of nowhere
leah2 has quit [Ping timeout: 480 seconds]
leah2 has joined #asahi-dev
<sven>
and I think I can make this work without an out-of-band tunnel state notification with this "tunnel error" interrupt
<sven>
looks like I could just disable the tunnel reset, trigger pcie link training and then just wait for the port up interrupt and then rescan the bus
<sven>
and then whenever I get a "tunnel error" just enable the tunnel reset, rescan the bus to remove all devices, disable tunnel reset and trigger link training again
<sven>
that may even be what macos does, that's a bit hard to confirm with just MMIO traces though
bluetail0 has joined #asahi-dev
MajorBiscuit has joined #asahi-dev
bluetail has quit [Ping timeout: 480 seconds]
bluetail0 is now known as bluetail
leitao has joined #asahi-dev
leitao has quit [Remote host closed the connection]
<jannau>
dcp on 13.2 beta looks not terrible but certainly annoying. there are not too many renumbered calls/callbacks. most of that can be probably fixed up from logs alone