marcan changed the topic of #asahi to: Asahi Linux: porting Linux to Apple Silicon macs | General project discussion | GitHub: https://alx.sh/g | Wiki: https://alx.sh/w | Topics: #asahi-dev #asahi-re #asahi-gpu #asahi-offtopic | Keep things on topic | Logs: https://alx.sh/l/asahi
matt6 has quit [Quit: Ping timeout (120 seconds)]
matt6 has joined #asahi
odmir has quit [Remote host closed the connection]
<marcan> pipcet[m]: that's interesting, but if RVBAR required more alignment that'd cause m1n1 to have the same problem bringing up SMP itself
<marcan> and that obviously works
odmir has joined #asahi
odmir has quit [Ping timeout: 240 seconds]
<pipcet[m]> good point. I was thinking maybe apple did something like rvbar = our_address &~ 0xffff, but maybe it's something else entirely. difficult to work out as long as "-v" doesn't work.
odmir has joined #asahi
odmir has quit [Ping timeout: 240 seconds]
illya has quit [Ping timeout: 260 seconds]
odmir has joined #asahi
illya has joined #asahi
odmir has quit [Ping timeout: 268 seconds]
omoiti has joined #asahi
omoiti has quit [Client Quit]
jaXvi has quit [Ping timeout: 240 seconds]
illya has quit [Ping timeout: 260 seconds]
illya has joined #asahi
phiologe has joined #asahi
PhilippvK has quit [Ping timeout: 276 seconds]
macc24 has quit [Ping timeout: 250 seconds]
aquijoule__ has joined #asahi
aquijoule_ has quit [Ping timeout: 246 seconds]
vimal has quit [Ping timeout: 260 seconds]
doof has left #asahi [#asahi]
marvin24 has quit [Ping timeout: 245 seconds]
marvin24 has joined #asahi
zkrx has quit [Ping timeout: 240 seconds]
zkrx has joined #asahi
jeffmiw has joined #asahi
jeffmiw has quit [Ping timeout: 246 seconds]
macc24 has joined #asahi
VinDuv has joined #asahi
jaXvi has joined #asahi
jeffmiw has joined #asahi
VinDuv has quit [Quit: Leaving.]
jeffmiw has quit [Ping timeout: 240 seconds]
phire has quit [*.net *.split]
aquijoule__ has quit [Remote host closed the connection]
jeffmiw has joined #asahi
jeffmiw has quit [Ping timeout: 240 seconds]
jeffmiw has joined #asahi
jeffmiw has quit [Ping timeout: 252 seconds]
maknho____ has joined #asahi
maknho___ has quit [Ping timeout: 252 seconds]
maknho____ has quit [Quit: WeeChat 2.3]
maknho has joined #asahi
jeffmiw has joined #asahi
jeffmiw has quit [Ping timeout: 260 seconds]
<pipcet[m]> okay, I can steal a CPU core from MacOS
herbas has joined #asahi
herbas has quit [Client Quit]
<pipcet[m]> unfortunately, the boot framebuffer is no longer used at that point.
jeffmiw has joined #asahi
phire has joined #asahi
jeffmiw has quit [Ping timeout: 260 seconds]
<pipcet[m]> but m1n1 works.
jeffmiw has joined #asahi
jeffmiw has quit [Ping timeout: 260 seconds]
Bublik_ has joined #asahi
raster has joined #asahi
Bublik has quit [Ping timeout: 265 seconds]
arekm has joined #asahi
KindTwo has joined #asahi
KindOne has quit [Ping timeout: 260 seconds]
anarsoul|2 has joined #asahi
KindTwo is now known as KindOne
anarsoul has quit [Ping timeout: 260 seconds]
jeffmiw has joined #asahi
jeffmiw has quit [Ping timeout: 252 seconds]
choozy has joined #asahi
jeffmiw has joined #asahi
jeffmiw has quit [Ping timeout: 240 seconds]
jeffmiw has joined #asahi
<marshmallow> sven: but isn't the secure enclave used as sort of replacement for the secure world?
<marshmallow> (considered that it involves external security coprocessor stuff)
jeffmiw has quit [Ping timeout: 246 seconds]
<sven> marshmallow: kinda of. I'd rather compare it with a smart card though
<sven> secure world runs on the same processor as the non-secure world which introduces all kinds of attack vectors
<sven> that's why I wouldn't really call the Secure Enclave a replacement
<sven> it's a much better idea :-)
<marshmallow> right, so secure enclave is even better than EL3 since it runs in a completely separated processor
<sven> yes
<sven> and I'm very much looking forward to using that secure enclave from linux
<marshmallow> right :-)
jeffmiw has joined #asahi
jeffmiw has quit [Ping timeout: 265 seconds]
<pipcet[m]> sven: your USB driver works in m1n1 under macos, too! Thanks again, it's absolutely wonderful to be able to play with this hardware.
<pipcet[m]> well, "under". MacOS has an efficiency core, m1n1 has a performance core but less RAM.
<marcan> marshmallow: fwiw Apple have never used the secure world like that I think?
<marcan> I think they used to use EL3 for some kernel security stuff but stopped doing that
<marcan> on older chips
<marcan> but they've never done the android thing of a secure world for crypto/etc
modrobert has quit [Read error: Connection reset by peer]
modrobert has joined #asahi
jeffmiw has joined #asahi
jeffmiw has quit [Ping timeout: 246 seconds]
KindTwo has joined #asahi
KindOne has quit [Ping timeout: 260 seconds]
KindTwo is now known as KindOne
maknho has quit [Quit: WeeChat 2.3]
maknho has joined #asahi
maknho has quit [Client Quit]
ivanmedoedov[m] is now known as alexm[m]
maknho has joined #asahi
choozy has quit [Quit: https://quassel-irc.org - Chat comfortably. Anywhere.]
jeffmiw has joined #asahi
jeffmiw has quit [Ping timeout: 265 seconds]
modrobert has quit [Ping timeout: 252 seconds]
modrobert has joined #asahi
jeffmiw has joined #asahi
jeffmiw has quit [Ping timeout: 246 seconds]
Bublik_ has quit [Ping timeout: 240 seconds]
maknho has quit [Ping timeout: 252 seconds]
VinDuv has joined #asahi
maknho has joined #asahi
jeffmiw has joined #asahi
<jeffmiw> sven: thanks for the blog and wiki for the GFX ans SPRR, really cool
<jeffmiw> I did not realize M1 does not have EL3. How was this figure out ? thanks to the Aarch feature registers ?
<jeffmiw> pipcet[m]: I'm really interested to duplicate your booting macos under m1n1 with usb working to play with it and the hv from marcan :)
<pipcet[m]> thanks! I'll try to put up instructions
<pipcet[m]> (raw code is available for now, and I'm not home right now so can't test this very second, but I'd be delighted to get this working on another machine, or to see how it fails to)
<pipcet[m]> it's not really one "under" the other. the two run in separate RAM areas on separate cores and are oblivious to each other. It's a bit surprising this all works.
<pipcet[m]> (but m1n1 can access macos RAM; macos doesn't know about m1n1 RAM)
<pipcet[m]> ooh, and I just realized we don't even need to patch the macos kernel to disable the WDT, we can do it from the stolen core.
maknho_ has joined #asahi
maknho has quit [Ping timeout: 268 seconds]
jeffmiw_ has joined #asahi
<maz> sven: in your SPRR blog, you refer to HCR_EL2.THE. Did you mean TGE instead?
jeffmiw_ has quit [Ping timeout: 260 seconds]
<balrog> jeffmiw: yes, and there's also some info in the xnu source code on opensource.apple.com
<marcan> it's not surprising it works; not that much is shared between cores and the USB code deliberately has ~zero dependencies on other hardware, particularly interrupts
maknho_ has quit [Ping timeout: 268 seconds]
<marcan> it's not actually that much different from a hypervisor, except you're limited to passive RAM snooping, you can't take control of execution
<marcan> this was all designed to work like this *because* of the hypervisor
<marcan> the HV isn't much different in that it still lets OSX control all the hardware except USB and not much else
maknho_ has joined #asahi
Bublik_ has joined #asahi
<sven> maz: maybe
<sven> let me check again
<sven> yeah, pretty sure i meant TGE. let me fix that
<sven> jeffmiw: i don't actually know. all i know is that iboot gives us control in EL2. not sure if there's any bit somewhere that tells you if there's el3 as well
<opticron> sven, ID_AA64PFR0_EL1[15:0] tell you whether each of EL0/1/2/3 are supported
<opticron> 4 bits each
<sven> jeffmiw: ^-- :)
<opticron> 0b1 -> aarch64 support at that EL, 0b10 -> aarch64+aarch32 support
jeffmiw_ has joined #asahi
<opticron> jeffmiw_, ID_AA64PFR0_EL1[15:0] tell you whether each of EL0/1/2/3 are supported, 0b1 -> aarch64 support at that EL, 0b10 -> aarch64+aarch32 support
<marcan> pipcet[m]: did you get -v to work?
jeffmiw_ has quit [Ping timeout: 265 seconds]
odmir has joined #asahi
TomJepp has quit [Ping timeout: 250 seconds]
<pipcet[m]> marcan: yes, the hv is going to be much better. no -v yet, no idea what I'm doing wrong. There's an allowed-boot-args property but setting it doesn't make a difference.
luca020400 has quit [Ping timeout: 240 seconds]
jeffmiw_ has joined #asahi
jeffmiw_ has quit [Ping timeout: 246 seconds]
rann has quit [Ping timeout: 250 seconds]
arnd has quit [Ping timeout: 250 seconds]
austriancoder has quit [Ping timeout: 245 seconds]
WhyNotHugo has quit [Ping timeout: 276 seconds]
austriancoder has joined #asahi
arnd has joined #asahi
WhyNotHugo has joined #asahi
rann has joined #asahi
<marcan> pipcet[m]: how are you changing boot-args?
<pipcet[m]> tba.cmdline = "-v cpus=1"
<marcan> see, this is the second time now you've done something weird instead of following instructions, didn't tell anyone, and left us to scratch our heads because nobody has the same problem you do
<marcan> first time it was using some random kernel instead of the one I told you / in our docs
<marcan> now you're changing boot-args in code instead of using nvram like our wiki mentions, and like every article on how macs boot explains
<marcan> turns out: "-v" is parsed by iBoot. you want tba.video.display = 0 to get that effect.
<marcan> I just pushed that to chainload.py.
<marcan> so *please*, if you're going to write code or pick random files out of your filesystem or anything else that isn't something documented, tell us *what* you're doing so we can figure out what the problem is
<marcan> because everyone else has been using nvram as documented in every mac guide and therefore hasn't run into this
<marcan> there's no way for me to guess that you're editing BootArgs directly instead of changing the nvram variable
<pipcet[m]> "in addition to", in fact. The nvram variable doesn't do anything either.
<pipcet[m]> "every article on how macs boot" says verbose mode was removed recently.
<marcan> the nvram variable definitely works for me, I just confirmed changing it changes the value of tba.video.display depending on whether -v is present or not
TomJepp has joined #asahi
<marcan> when is "recently"?
luca020400 has joined #asahi
jeffmiw_ has joined #asahi
<pipcet[m]> https://eclecticlight.co/2020/11/28/startup-modes-for-m1-macs/ says 11.2, no idea what's true here
<marcan> 11.2 is when the useful kmutil was introduced, so that doesn't make a whole lot of sense, unless I'm still on a beta and they changed it for release.
jeffmiw_ has quit [Ping timeout: 265 seconds]
<roxfan> apparebntly it's a claim from one commenter
<roxfan> who knows it's not a PEBKAC
<marcan> (I'm still on a beta I think, fwiw)
<balrog> roxfan: my expectation is that it's due to those people not disabling bootarg filtering
<balrog> (-v is filtered)
<roxfan> how do you disable filtering?
<balrog> bputil I think
<balrog> yeag, -a, --disable-boot-args-restriction, see its manpage
<balrog> yeah*
<roxfan> thx
<pipcet[m]> just found the touchbar frame buffer, so this hack isn't totally worthless.
<marcan> (our wiki has `bputil -nkcas` in the guide too)
herbas has joined #asahi
jeffmiw_ has joined #asahi
<davidrysk[m]> pipcet: if you don't want to follow all the steps in the guide, it is imperative that you read all the manpages and documentation for all the steps and are familiar with what all those things do
<davidrysk[m]> additionally, it is fairly trivial to revert to factory -- just use bputil to re-enable full security :)
<marcan> just tested sudo nvram boot-args=-v on a fully up to date macos
<marcan> works perfectly fine
<marcan> (after bputil as documented)
<marcan> off to sleep
jeffmiw_ has quit [Ping timeout: 265 seconds]
VinDuv has quit [Quit: Leaving.]
maknho__ has joined #asahi
maknho_ has quit [Ping timeout: 252 seconds]
herbas has quit [Quit: herbas]
jeffmiw_ has joined #asahi
jeffmiw_ has quit [Ping timeout: 246 seconds]
odmir has quit [Remote host closed the connection]
odmir has joined #asahi
odmir has quit [Ping timeout: 260 seconds]
maknho___ has joined #asahi
maknho__ has quit [Ping timeout: 260 seconds]
jeffmiw has quit [Ping timeout: 240 seconds]
klaus has quit [Ping timeout: 252 seconds]
odmir has joined #asahi
klaus has joined #asahi
odmir has quit [Ping timeout: 240 seconds]
jeffmiw has joined #asahi
jeffmiw_ has joined #asahi
jeffmiw has quit [Read error: Connection reset by peer]
<pipcet[m]> I'm sorry, I'll try to be more careful
raster has quit [Quit: Gettin' stinky!]
odmir has joined #asahi
odmir has quit [Remote host closed the connection]
odmir has joined #asahi
modwizcode has quit [Ping timeout: 268 seconds]
modwizcode has joined #asahi
jeffmiw_ has quit [Remote host closed the connection]
maknho____ has joined #asahi
maknho___ has quit [Ping timeout: 240 seconds]
jeffmiw has joined #asahi
jeffmiw has quit [Ping timeout: 252 seconds]