2022-08-14 19:41
ChanServ changed the topic of #aarch64-laptops to: Linux support for AArch64 Laptops (Asus NovaGo TP370QL - HP Envy x2 - Lenovo Mixx 630 - Lenovo Yoga C630)
00:00
<
szclsya[m] >
ugh just realized rc4 is the latest upstream version, I need some sleep...
00:01
Penguinpee_ is now known as Penguinpee
00:30
<
clover[m] >
steev: can you possibly tag rc4?
00:31
<
steev >
Let me go back over it tonight and make sure it’s all kosher
00:37
<
steev >
After the game, anyway
00:48
<
szclsya[m] >
just built it by specifying the branch, it boots
00:49
<
szclsya[m] >
audio still doesn't work though
00:50
<
HdkR >
What's the current branch to use on x13s?
00:52
<
steev >
oh, thanks for reminding, i should defconfig again to update options
00:57
<
steev >
szclsya[m]: that is expected, i believe i've mentioned a few times, we only have the machine driver, we do not have the dts bits
01:04
<
steev >
i believe, but don't quote me, once the machine driver is accepted, the dts bits will get posted
01:06
e1eph4nt has quit [Ping timeout: 480 seconds]
01:13
<
clover[m] >
too late i already tweeted it
01:16
<
clover[m] >
audio i one of those things you want fully tested before shipping. dont want to blow up your speakers
01:16
<
clover[m] >
s/i/is/
01:21
<
steev >
Someone remembers the daisy_snow snafu
01:24
<
szclsya[m] >
<clover[m]> "audio i one of those things..." <-
*cough* Apple
01:41
minecrell8 has joined #aarch64-laptops
01:45
Erisa has joined #aarch64-laptops
01:57
juergh has joined #aarch64-laptops
02:06
e1eph4nt has joined #aarch64-laptops
03:11
e1eph4nt has quit [Ping timeout: 480 seconds]
03:20
e1eph4nt has joined #aarch64-laptops
03:28
<
HdkR >
Now the question is, was I compiling the kernel on-device or off device
03:28
e1eph4nt has quit [Ping timeout: 480 seconds]
03:38
hexdump01 has joined #aarch64-laptops
03:39
hexdump0815 has quit [Ping timeout: 480 seconds]
03:46
<
steev >
why not both
03:47
<
HdkR >
Looks like it was on-device compiling with off-device NFS storage of the source
03:49
e1eph4nt has joined #aarch64-laptops
04:44
e1eph4nt has quit [Remote host closed the connection]
04:44
<
szclsya[m] >
I did it on device because it's the best arm device I have
04:47
e1eph4nt has joined #aarch64-laptops
04:56
e1eph4nt has quit [Ping timeout: 480 seconds]
05:09
e1eph4nt has joined #aarch64-laptops
06:17
e1eph4nt has quit [Ping timeout: 480 seconds]
06:22
<
HdkR >
Not a happy laptop when it goes for a reboot and doesn't come back
06:24
<
clover[m] >
rc4 booting fine here, didn't help my displaylink sadly
06:27
e1eph4nt has joined #aarch64-laptops
06:35
rpirea has joined #aarch64-laptops
06:36
rpirea has quit [Remote host closed the connection]
06:36
rpirea has joined #aarch64-laptops
06:36
<
HdkR >
ah there we go, just needed to build ext4 into the kernel instead of a module
06:39
e1eph4nt has quit [Ping timeout: 480 seconds]
06:47
rpirea_ has joined #aarch64-laptops
06:49
rpirea has quit [Read error: Connection reset by peer]
06:55
frytaped has joined #aarch64-laptops
06:58
flowriser has quit [Remote host closed the connection]
07:04
e1eph4nt has joined #aarch64-laptops
07:08
flowriser has joined #aarch64-laptops
07:08
flowriser has quit [Remote host closed the connection]
07:11
xroumegue has joined #aarch64-laptops
07:33
frytaped has quit [Quit: WeeChat 3.5]
08:12
e1eph4nt has quit [Ping timeout: 480 seconds]
08:23
e1eph4nt has joined #aarch64-laptops
08:30
frytaped has joined #aarch64-laptops
08:31
e1eph4nt has quit [Ping timeout: 480 seconds]
08:56
e1eph4nt has joined #aarch64-laptops
08:57
frytaped has quit [Remote host closed the connection]
08:58
frytaped has joined #aarch64-laptops
09:02
rpirea_ has quit [Read error: Connection reset by peer]
09:05
e1eph4nt has quit [Ping timeout: 480 seconds]
09:15
e1eph4nt has joined #aarch64-laptops
10:10
rpirea has joined #aarch64-laptops
10:21
e1eph4nt has quit [Ping timeout: 480 seconds]
10:30
e1eph4nt has joined #aarch64-laptops
10:32
Penguinpee has quit [Remote host closed the connection]
10:32
Penguinpee has joined #aarch64-laptops
10:38
e1eph4nt has quit [Ping timeout: 480 seconds]
10:47
e1eph4nt has joined #aarch64-laptops
10:48
Penguinpee has quit [Ping timeout: 480 seconds]
10:55
e1eph4nt has quit [Ping timeout: 480 seconds]
11:05
e1eph4nt has joined #aarch64-laptops
11:07
Penguinpee has joined #aarch64-laptops
12:12
e1eph4nt has quit [Ping timeout: 480 seconds]
12:36
e1eph4nt has joined #aarch64-laptops
12:44
e1eph4nt has quit [Ping timeout: 480 seconds]
12:52
e1eph4nt has joined #aarch64-laptops
13:59
e1eph4nt has quit [Ping timeout: 480 seconds]
14:10
flowriser has joined #aarch64-laptops
14:25
e1eph4nt has joined #aarch64-laptops
14:34
e1eph4nt has quit [Ping timeout: 480 seconds]
14:42
e1eph4nt has joined #aarch64-laptops
14:50
e1eph4nt has quit [Ping timeout: 480 seconds]
14:58
e1eph4nt has joined #aarch64-laptops
16:06
e1eph4nt has quit [Ping timeout: 480 seconds]
16:17
<
clover[m] >
rebooting into linux from windows seems to work now steev
16:30
<
steev >
si, that's the 3 patches from dmitry, there's still more that is busted, but overall good
16:31
e1eph4nt has joined #aarch64-laptops
16:47
e1eph4nt has quit [Ping timeout: 480 seconds]
16:48
<
HdkR >
Alright, lets see if I can move the needle on GPU at all
16:48
<
HdkR >
*Press F to doubt*
16:56
<
HdkR >
steev: How do I update the dtb with this dtbloader thing?
16:57
<
steev >
HdkR: sudo python3 /usr/local/bin/install-dtbs.py /usr/lib/linux-image-$kver /boot/efi/dtb
16:57
<
HdkR >
Or can I override with grub?
16:57
<
steev >
you can override with grub, yeah
16:57
<
steev >
just add a line at the bottom of "devicetree /path/to/your/sc8280xp-lenovo-thinkpad-x13s.dtb"
16:58
<
HdkR >
Alright, that's a better choice since I don't want to break EFI
16:58
<
steev >
i do the latter when testing dtb changes so that i have working dtb in efi, and can test changes
16:58
<
HdkR >
that's exactly my thinking
17:13
e1eph4nt has joined #aarch64-laptops
17:16
<
HdkR >
Alright, custom DT loading sanely. I see DPU is coming up with a bunch of information
17:46
falk689 has quit [Ping timeout: 480 seconds]
17:47
<
HdkR >
First step, throw a bunch of 8150 garbage in the dt and hope for the best
17:47
falk689 has joined #aarch64-laptops
17:47
Lucanis0 has quit [Ping timeout: 480 seconds]
17:50
falk689 has quit [Remote host closed the connection]
17:50
falk689 has joined #aarch64-laptops
17:56
<
clover[m] >
Fingers crossed
18:21
e1eph4nt has quit [Ping timeout: 480 seconds]
18:22
<
HdkR >
Interesting, putting a gpucc in the DT alone is enough to cause it to reboot
18:26
<
HdkR >
Oh, wrong gpucc
18:28
falk689 has quit [Remote host closed the connection]
18:31
<
steev >
or, look through those 9 for inspiration for what is needed
18:31
<
steev >
the problem i see here is that the iommu doesn't come up
18:31
<
steev >
01:43:28 <steev> steev@x13s:~$ sudo cat /sys/kernel/debug/devices_deferred
18:31
<
steev >
01:43:28 <steev> [sudo] password for steev:
18:31
<
steev >
01:43:28 <steev> 3d00000.gpu platform: supplier 3da0000.iommu not ready
18:32
<
steev >
i haven't had time to circle back and look at it
18:33
falk689 has joined #aarch64-laptops
18:35
<
HdkR >
I'm poking at the smmu now, looks like probe is failing with -110
18:35
<
steev >
Pretty sure there’s a hack in place that smmu should just come up
18:40
<
HdkR >
Nabbing your adreno_ssmu definition and seeing if it changes anything
18:41
<
HdkR >
Still probe failure with -110. Interesting
18:41
e1eph4nt has joined #aarch64-laptops
18:42
<
steev >
you will want more than just that
18:43
<
HdkR >
Does it have some indirect dependency that isn't explicitly defined in the DT? Is this why it is timing out?
18:44
<
HdkR >
Might be waiting on gpucc since I missed the power domain difference there
18:45
<
steev >
i couldn't tell you off the top of my head
18:45
<
steev >
and at the moment, i have to get more work done :(
18:48
falk689 has quit [Remote host closed the connection]
18:52
falk689 has joined #aarch64-laptops
19:18
<
HdkR >
Alright, so it is waiting for gpucc to come up which is why the smmu is timing out on my end
19:18
<
HdkR >
Removed the dependency and it tried getting brought up
19:20
<
HdkR >
Tries enabling clocks but GMU isn't up yet
19:43
flowriser_ has joined #aarch64-laptops
19:43
Lucanis has joined #aarch64-laptops
19:45
<
HdkR >
Oh, would be useful to compile in the sc8280 CC driver
19:46
e1eph4nt has quit [Ping timeout: 480 seconds]
19:47
flowriser has quit [Ping timeout: 480 seconds]
19:50
<
HdkR >
That's the adreno_smmu coming up
19:50
<
HdkR >
adreno gets added to an iommu group
19:51
<
HdkR >
msm_cpu then complains about failing to bind the gpu "adev bind failed: -6"
19:51
<
HdkR >
"dp_display_probe [msm]]
*ERROR* component add failed, rc=-6"
19:52
<
HdkR >
"Unknown GPU revision 6.9.0.0"
19:53
<
HdkR >
Recompile msm copy and pasting that id in the array
19:54
<
HdkR >
Display is back alive again
19:55
<
HdkR >
msm_dpu now managed to bind the gpu
19:56
<
HdkR >
Complaining about failing to load a640_gmu.bin
19:56
<
clover[m] >
missing firmware?
19:57
<
HdkR >
Not sure what firmware it is actually wanting here
19:58
<
HdkR >
Looks like I have a630_{gmu,sqe}
19:59
falk689 has quit [Remote host closed the connection]
19:59
falk689 has joined #aarch64-laptops
20:00
<
HdkR >
Looks like renaming the a630_gmu firmware made it angry
20:01
<
HdkR >
No idea what these files are for or what even the correct one would be
20:03
<
steev >
the a690 is 660 derived, yeah
20:03
<
HdkR >
alright, lemme nab the a660 firmwares from there
20:04
<
clover[m] >
i see a690 in there, have you tried plugging that in?
20:05
<
HdkR >
Oh, woops, I was looking at upstream linux-firmware repo. Let me get those ones from that repo
20:06
<
qzed >
those are extracted from qcdxkm8280.sys so I'd guess they should work (the a680 one at least works on the pro X)
20:07
<
qzed >
fwiw a640 also works on 8180/pro x, so I guess the a660 should also work on 8280
20:07
<
clover[m] >
good work qzed :)
20:09
<
HdkR >
oop, deadlock
20:11
e1eph4nt has joined #aarch64-laptops
20:12
<
HdkR >
Looks like some debian processes tried coming up before that though, maybe something was logged
20:13
<
HdkR >
GMU firmware dies
20:14
<
HdkR >
Not sure what to make of that
20:19
e1eph4nt has quit [Ping timeout: 480 seconds]
20:20
<
clover[m] >
is the firmware size incorrect?
20:21
<
clover[m] >
maybe it expects a640 size but you are giving a690
20:23
<
HdkR >
dunno. I thought it just loads it, doesn't care about size
20:26
<
qzed >
GMU firmware is AFAICT based on blocks that it loads at specified addresses
20:26
<
qzed >
in the log it complains about not finding matches for a few of the blocks in the firmware
20:26
<
qzed >
for example `failed to match fw block (addr=00004000 size=54460 data[0]=bd1fb51f)`
20:27
<
qzed >
so the firmware contains some data block of size 54460 that should be written to address 0x4000
20:28
e1eph4nt has joined #aarch64-laptops
20:29
<
HdkR >
What describes address 0x4000?
20:30
<
HdkR >
Does that need to be in some reserved location?
20:31
<
HdkR >
Looks like a650 offsets that to address 0x10004000
20:31
<
HdkR >
Potentially needed for a690 as well?
20:32
<
HdkR >
Doesn't seem to be described in DT
20:33
<
qzed >
no, I think that's something hard-coded... the a690 should probably allocate that in the a650/a660 branch that I've linked to
20:34
<
qzed >
fwiw this^ is some block layout in the windows driver
20:36
<
HdkR >
Interesting, has both the 0x4000 and 0x10004000
20:36
<
qzed >
yeah, so I assume those are different things
20:36
e1eph4nt has quit [Ping timeout: 480 seconds]
20:37
<
qzed >
I think that should include a `|| gpu->revn == 690`
20:38
jelly has quit [Ping timeout: 480 seconds]
20:38
<
qzed >
ah, steev's sc8280xp-next-20220808-nonworking-gpu should include that
20:39
<
HdkR >
Definitely did not though
20:39
<
HdkR >
Since I'm basing off the 6.0-rc4 branch
20:40
<
qzed >
seems like it has some things that might help
20:44
e1eph4nt has joined #aarch64-laptops
20:51
jelly-hme has joined #aarch64-laptops
20:51
<
HdkR >
rebuilding that branch and hoping for the best
21:00
<
steev >
no, don't rebuild the branch, give me a sec
21:03
<
steev >
on my 6.0.0-rc4
21:13
<
HdkR >
and had to make sure to enable gpucc for sc8280xp, since that is why I was getting timeouts or w/e
21:13
<
HdkR >
The other CC drivers were being compiled but not that one
21:14
falk689 has quit [Remote host closed the connection]
21:15
falk689 has joined #aarch64-laptops
21:21
<
steev >
oh, right, the gpucc isn't built, that would definitely cause issues
21:24
<
HdkR >
Hopefully that can help you push it over the finish line. I'm toast :P
21:24
<
steev >
i'll have to compare since you applied them all and then made a commit :P
21:26
<
steev >
but i can't do that til i get some spare time
21:27
<
HdkR >
Well, only 1 commit on top of your 6.0 rc4 branch
21:27
<
steev >
right, but that one commit is 8 patches here
21:30
<
HdkR >
this is without those patches you said could be applied with git am
21:31
<
HdkR >
I've never used git am so I have no idea how to even use it
21:31
<
steev >
git am patch
21:31
<
steev >
or git am *.patch
21:31
<
steev >
or git am *
21:31
<
steev >
it's just like patch
21:31
<
HdkR >
I see, I usually just use patch
21:32
<
steev >
and that drops the attribution :)
21:32
<
steev >
git am does require a git formatted patch
21:32
<
steev >
and that's all bamse's work on the gpu, aside from the rpmhpd hack
21:33
<
steev >
so i gotta see what the difference is between yours and his
21:33
<
steev >
though i do notice, you use sm8280 not sc8280
21:34
<
HdkR >
oh yea, that was copy and pasting then s/8150/8280/ or something
21:34
<
steev >
fwiw, i did just boot the stuff here and.... it just reboots
21:35
<
HdkR >
yea, it manages to spam that GMU stuff and then locks or reboots
21:39
<
steev >
make sure you don't have amd,imageon in your dts/dtsi
21:39
<
steev >
i don't see that removed in your patch
21:40
<
HdkR >
I definitely didn't remove that
21:42
<
steev >
that's the black magic that lets us use !GPU
21:43
<
HdkR >
Not sure if it even got to that point with the GMU crashing
21:45
falk689 has quit [Remote host closed the connection]
21:45
falk689 has joined #aarch64-laptops
21:52
e1eph4nt has quit [Ping timeout: 480 seconds]
21:59
<
clover[m] >
this stuff sounds like a pain
22:05
<
steev >
it's only a pain because there's no easy way to get the development feedback you would normally get
22:07
mcbridematt has joined #aarch64-laptops
22:16
<
HdkR >
Can't really start up gdb and see why hardware isn't coming up
22:18
e1eph4nt has joined #aarch64-laptops
22:27
e1eph4nt has quit [Ping timeout: 480 seconds]
22:37
e1eph4nt has joined #aarch64-laptops
23:23
<
steev >
well, even being able to see the messages would be nice
23:29
<
HdkR >
It appeared in the kernel log for me
23:30
<
steev >
my kernel log appeared as ^@^@^@^@^@^@^@^@...
23:36
<
HdkR >
Maybe I had disabled the gpucc clocks from adreno_smmu to get those messages