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)
lun[m] has joined #aarch64-laptops
agl7 has quit [Quit: bis denne]
Guest2915 is now known as go4godvin
agl7-Galaxy has quit [Quit: Leaving]
Leandro[m] has joined #aarch64-laptops
mahmoudajawad[m] has joined #aarch64-laptops
juergh has joined #aarch64-laptops
juergh is now known as Guest2937
Prawn[m] has joined #aarch64-laptops
hexdump01 has joined #aarch64-laptops
hexdump0815 has quit [Ping timeout: 480 seconds]
Nao[m] has joined #aarch64-laptops
<cenunix[m]> I have the same issue with sound not working on NixOS, I have the firmware and alsa-ucm, not really sure where to go from here
<cenunix[m]> sound card doesn't show up in alsamixer or anything
iivanov has joined #aarch64-laptops
harvestz[m] has joined #aarch64-laptops
owc[m] has joined #aarch64-laptops
<steev> clover[m]: that *should* work
<steev> assuming alsa-ucm is (i think it was or higher) - 1.2.9 for sure
<steev> oh, the debian package i made it 1.2.8-2 with the patches on top, may 4th they released 1.2.9 (but i believe debian is/was in freeze mode)
shoragan has joined #aarch64-laptops
krzk_ has quit [Quit: leaving]
krzk has joined #aarch64-laptops
neobrain has quit [Ping timeout: 480 seconds]
janrinze has quit [Quit: Leaving.]
neobrain has joined #aarch64-laptops
chesterlintw has joined #aarch64-laptops
iivanov has quit [Quit: - Chat comfortably. Anywhere.]
<stirl_> clover[m] -- what did it take to get fedora running?
<clover[m]> heres a write up on how to get a rootfs that you can then extract into a root partition on your disk.
<clover[m]> so that might also be why my sound isnt working
<clover[m]> it's reusing my initramfs / kernel from arch by using the same ESP. just mounting a different root partition
stirl_ has quit [Read error: Connection reset by peer]
stirl has joined #aarch64-laptops
iivanov has joined #aarch64-laptops
Guest2937 is now known as juergh
chesterlintw has quit [Ping timeout: 480 seconds]
<clover[m]> [alex@fedora ~]$ alsaucm reload... (full message at <>)
<clover[m]> any ideas folks?
<clover[m]> maybe cardid is somehow not being set in fedora like it is in arch. e.g., PlaybackMixer "default:${CardId}"
<clover[m]> ajhalaney: can i get an ls of your `/usr/share/alsa/ucm2/Qualcomm/sc8280xp` when you get a chance?
<ajhalaney[m]> clover: silly question, but did you put your kernel modules in your new root partition?
<clover[m]> not silly. this is one of the things i checked. here is my lsmo | grep snd:
<clover[m]> snd_soc_sc8280xp should be the module but its not in /proc/asound/modules
<ajhalaney[m]> here's that directory: HiFi.conf LENOVO-X13s.conf sc8280xp.conf
<ajhalaney[m]> and that's all provided by alsa-ucm-1.2.9-1.fc37.noarch as steev alluded to earlier
<clover[m]> interesting
<clover[m]> looks different than mine
<clover[m]> what is in your /usr/lib/firmware/qcom/sc8280xp
<ajhalaney[m]> file /usr/lib/firmware/qcom/sc8280xp/SC8280XP-LENOVO-X13S-tplg.bin is not owned by any package
<ajhalaney[m]> guess I put that in there manually a while back... like I said, this is a frankenstein system :P
<ajhalaney[m]> I unfortunately know less about audio than I do graphics (or media) :/
<echanude> ajhalaney[m]: iirc, it might be Srini's topology file from his Linaro git?
<clover[m]> hmm so i didnt have alsa-topology package installed on fedora. went ahead and installed that. still no dice, but that's probably needed
iivanov has quit [Quit: - Chat comfortably. Anywhere.]
<ajhalaney[m]> echanude I believe that's right!
<steev> correct, the tplg is the topology firmware (and is not packaged anywhere upstream yet)
saekau[m] has joined #aarch64-laptops
stirl_ has joined #aarch64-laptops
stirl has quit [Read error: Connection reset by peer]
Programming__ has joined #aarch64-laptops
stirl_ has quit [Ping timeout: 480 seconds]
<steev> clover[m]: also, fwiw, i *think* fedora uses dracut for their initramfs generations
<clover[m]> Yeah. I tried to do that and it did generate one. But when I went to use it in my bootloader it didn't work.
<clover[m]> Using the one arch makes does "work." Since I am using the same kernel and modules as arch. Only thing is that sound doesn't work and it might be because of sharing kernel / initrd between two distros idk.
<steev> sound things shouldn't come into play until post initramfs
<steev> unless you're actually loading the modules in the initramfs
<clover[m]> modprobe: ERROR: could not insert 'snd_soc_sc8280xp': Module already in kernel
<clover[m]> that means the sound module is def loaded right?
<bamse> clover[m]: lsmod |grep snd_soc_sc8280xp
<clover[m]> snd_soc_sc8280xp 16384 0... (full message at <>)
<clover[m]> so module is there it just doesnt detect my card correctly because:
<clover[m]> --- no soundcards ---
<clover[m]> [alex@fedora asound]$ cat /proc/asound/cards
<clover[m]> so is it a ucm config issue?
<bamse> no, the ucm applies to thing in /proc/asound/cards...
<clover[m]> i see
<bamse> so sounds like a kernel or firmware issue
<clover[m]> anything i should look for in dmesg?
<bamse> steev is your guy...
<bamse> but to answer the specific question...the sound node in devicetree has compatible "qcom,sc8280xp-sndcard"...when the kernel tries to find a driver for that, it will match the modinfo of the snd_soc_sc8280xp.ko and that will be loaded
<krzk> clover[m]: are you sure you have the topology files in the /lib/firmware directory?
<steev> it should be in /lib/firmware/qcom/sc8280xp
<steev> er
<steev> no in /lib/firmware/qcom
<steev> sound/soc/qcom/qdsp6/topology.c: tplg_fw_name = kasprintf(GFP_KERNEL, "qcom/%s/%s-tplg.bin", card->driver_name, card->name);
<clover[m]> yeah /usr/lib/firmware/qcom/sc8280xp/SC8280XP-LENOVO-X13S-tplg.bin: data
<steev> er, yes, in there
<bamse> wouldn't there be something in the log indicating if that was the problem?
<krzk> clover[m]: and conf file next to it
<steev> iirc... no
<bamse> how sneaky
<steev> krzk: don't have that here (the conf file(s))
<steev> my understanding is that the conf file is what is used to build the bin, not needed to use it
<krzk> uh, so maybe it is not needed
<krzk> clover[m]: then, did your remoteproc start? what's their status?
<steev> maybe we should be using devm_kasprintf and not just kasprintf?
<clover[m]> not sure, how would i check on that?
<krzk> grep . /sys/class/remoteproc/remoteproc*/state
<steev> sound/soc/intel/avs/board_selection.c: mach.tplg_filename = devm_kasprintf(adev->dev, GFP_KERNEL, "hda-%08x-tplg.bin",
<krzk> but I don't know which one is ADSP
<clover[m]> /sys/class/remoteproc/remoteproc1/state:running
<clover[m]> /sys/class/remoteproc/remoteproc0/state:running
<krzk> I guess one of them is ADSP.
<clover[m]> is it possible for different distros to need the topology file in different locations or with different names?
<steev> no
<steev> the kernel decides it, not the distro
<steev> alsaucm listcards is empty?
<krzk> Then maybe you miss qrtr running? ps aux | grep qrtr
<krzk> you should have qrtr-ns
<bamse> better to run qrtr-lookup, because you don't actually need qrtr-ns these days (it's in the kernel)
<krzk> or pd-mapper
<clover[m]> yeah steev
<krzk> ah, ok, then qrtr-lookup
<clover[m]> iirc pd-mapp/qrtr is for battery status, not sound
<steev> pd maps all the protection domains afaik
<krzk> on all my boards ADSP was not brought without them :)
<krzk> But I don't have the laptop
<steev> 69 1 1 7 1 ATH10k WLAN firmware service
<steev> that one seems wrong
<steev> maybe it should just be atheros wlan firmware service?
<steev> clover[m]: does your /usr/share/alsa/ucm2/conf.d/sc8280xp directory have a sc8280xp.conf symlinked to ../../Qualcomm/sc8280xp/sc8280xp.conf ?
<clover[m]> fixed my issue, needed ajhalaney's pd-mapper
<ajhalaney[m]> clover: if you're lacking pd-mapper (be sure to check the logs, cuz the firmware needs to be unxz'ed):
<clover[m]> :D
<ajhalaney[m]> nice! didn't even think of that but makes sense given that's for all the DSP stuff essentially
<ajhalaney[m]> I too associate it with battery and external display lol
<steev> i just assume people have it :(
<ajhalaney[m]> I don't understand the song and dance of discovery with pd-mapper. It feels like it should live in kernel and dynamically start things up... but good chance I'm not following what that actually does for us.
<ajhalaney[m]> I have adding a README to the project as a todo list item for like 4 months now but I haven't gotten around to it.. surprise surprise..
<bamse> ajhalaney[m]: it provides system configuration information to the dsp, and then it's the basis for the kernel knowing when the audio firmware is booted/stopped
<bamse> ajhalaney[m]: and it would indeed be nice to bundle that information with the dtb instead
<ajhalaney[m]> bamse: I'm dumb, you'd have to walk me thru step by step with a hair more detail for me to fully understand the flow on the system right now tbh
<bamse> ajhalaney[m]: we boot the remoteproc, the firmware finds the pd-mapper and ask for the data from the .jsn files...and based on that it makes decisions to start or not some parts of the firmware
<bamse> ajhalaney[m]: the first encounter we had with this was sdm845, where the modem may or may not run the wifi firmware
<bamse> ajhalaney[m]: pd-mapper allow you to just change the .jsn files if your product has a pcie wifi chip instead of that solution
<bamse> you don't have to recompile the firmware
<ajhalaney[m]> oooohhh it lets APPS start services remotely... I thought it was discovering the services and somehow that helped kernel discover "devices" provided by the DSPs.
<ajhalaney[m]> that explanation helps, thanks!
<bamse> the same identifiers are then used in signalling when such services are up/down/restarting
<bamse> so the reason why clover[m]'s audio didn't work is that the linux driver was sitting there waiting for the audio service to be reported to be up and running
<bamse> it made total sense to had pd-mapper in userspace when we had 5-6 other such services, but on x13s this isn't true anymore...
<ajhalaney[m]> :D
<cenunix[m]> Okay trying to follow this because my audio doesn’t work due to my extremely hacky workarounds on nixos. Is there more firmware pd-mapper needs to find ? I know about battmgr, but is there anything else?
<bamse> cenunix[m]: yeah, for audio to work you need some other .jsn (perhaps 2?)
hexdump0815 has joined #aarch64-laptops
hexdump01 has quit [Read error: Connection reset by peer]