| T42 | <nc1x72> I take it back, the droid-system package is not incomplete. LineageOS 21 vendor image simply doesn’t have audio.primary.lahaina.so in lib64/hw. Only in lib/hw (32 bit). Which is weird. However, fp5 lineageos 21 vendor has it in both lib|lib64/hw. On stock vendor for spacewar, lib64/hw also has lib64/hw/audio.primary.lahaina.so | 06:25 |
|---|---|---|
| T42 | <nc1x72> strace logs : https://hasteb.in/4qSKBt2Ub3X5EgZ | 09:10 |
| T42 | <elros34> err according to hadk-hot: "Take a look at /usr/lib/systemd/user/pulseaudio.service and /etc/sysconfig/pulseaudio and make sure you run it as user." Also do not remove command prompt because right know nobody knows how do you start it: as user or root. If your intention was to check whether hidl is used then use 'strace -f -e file' | 10:22 |
| *** amccarthy is now known as Guest6049 | 11:31 | |
| *** amccarthy_ is now known as amccarthy | 11:31 | |
| *** xmn_ is now known as xmn | 15:23 | |
| T42 | <nc1x72> I didn't pay attention to the command prompt when copying the output. Running pulseaudion with -vvv command shows it tries to load the libs from /vendor/lib/hw. | 20:20 |
| T42 | <nc1x72> | 20:20 |
| T42 | <nc1x72> By the way, what's the use of this "sink_format=s24le" in https://github.com/mlehtima/droid-config-fp5/blob/master/sparse/etc/pulse/arm_droid_card_custom.pa ? | 20:20 |
| T42 | <nc1x72> | 20:20 |
| T42 | <nc1x72> Is it relevant anyhow? | 20:20 |
| mal | did you have proper env var when starting pulseaudio from terminal? | 20:21 |
| mal | HYBRIS_USE_VENDOR_NAMESPACE=yes | 20:22 |
| T42 | <nc1x72> Yes | 20:22 |
| mal | you can find out the correct format audio policy configuration xml in /vendor/etc/ | 20:22 |
| T42 | <nc1x72> I have HYBRIS_USE_VENDOR_NAMESPACE=yes set in /etc/sysconfig/pulseaudio file | 20:27 |
| T42 | <nc1x72> | 20:27 |
| T42 | <nc1x72> Checking the xml for the correct format now | 20:27 |
| mal | I mean how do you start pulseaudio from terminal? show the whole command you use | 20:27 |
| T42 | <nc1x72> https://paste.opensuse.org/pastes/762abca2cd14 | 20:34 |
| T42 | <nc1x72> Command + full log | 20:34 |
| T42 | <adampigg> probably the XML uses an unsuppored separator in values, in the past ive had to bind-mount over an edit that changes space to , or vice-versa.... need to check... | 20:42 |
| T42 | <adampigg> though, i think there is a pa-modules-droid that supports the new format | 20:42 |
| mal | @nc1x72 for testing check /vendor/etc/audio_policy_configuration.xml and if it has line with bluetooth_qti_hearing_aid_audio_policy_configuration.xml then comment out the line | 20:45 |
| mal | commenting out a line in xml is done with <!-- something --> | 20:45 |
| mal | also did you actually export the env var somehow? | 20:46 |
| mal | I would suggest you prepend the pulseaudio command with HYBRIS_USE_VENDOR_NAMESPACE=yes when you run it from terminal | 20:46 |
| T42 | <adampigg> can you paste that file? | 20:47 |
| mal | @adampigg the error in quite clear in the log, it fails to find that file | 20:47 |
| T42 | <adampigg> ah, was looking at all the other warnings | 20:49 |
| T42 | <nc1x72> Ok I commented out that line and run it with HYBRIS_USE_VENDOR_NAMESPACE=yes | 20:55 |
| T42 | <nc1x72> | 20:55 |
| T42 | <nc1x72> Getting new type of error about namespace I believe | 20:55 |
| T42 | <nc1x72> | 20:55 |
| T42 | <nc1x72> https://paste.opensuse.org/pastes/6b7be0589bb3 | 20:55 |
| mal | can you show the audio_policy_configuration.xml | 20:58 |
| T42 | <nc1x72> https://paste.opensuse.org/pastes/5a9285c4ff77 | 21:00 |
| mal | what do you have in arm_droid_card_custom.pa now? | 21:00 |
| T42 | <nc1x72> [defaultuser@phone1 ~]$ cat /etc/pulse/arm_droid_card_custom.pa | 21:01 |
| T42 | <nc1x72> load-module module-droid-card rate=48000 unload_call_exit=true | 21:01 |
| T42 | <nc1x72> load-module module-udev-detect | 21:01 |
| T42 | <nc1x72> [defaultuser@phone1 ~]$ | 21:01 |
| mal | ok | 21:02 |
| mal | does it fail if you try without HYBRIS_USE_VENDOR_NAMESPACE=yes | 21:06 |
| T42 | <nc1x72> No, but this line "library "/usr/libexec/droid-hybris/system/lib64/hw/audio.primary.lahaina.so" needed or dlopened by "/usr/libexec/droid-hybris/system/lib64/libvndksupport.so" is not accessible for the namespace "(default)"" doesn't show in the output | 21:07 |
| mal | hmm | 21:08 |
| T42 | <nc1x72> Sorry | 21:08 |
| mal | show the file ned by "/usr/libexec/droid-hybris/system/lib64/libvndksupport.so" is not accessible for the namespace "(default)" | 21:08 |
| T42 | <nc1x72> It's here | 21:08 |
| mal | library "/usr/libexec/droid-hybris/system/lib64/hw/audio.primary.lahaina.so" ("/usr/libexec/droid-hybris/system/lib64/hw/audio.hidl_compat.default.so") needed or dlopened by "/usr/libexec/droid-hybris/system/lib64/libvndksupport.so" is not accessible for the namespace: [name="(default)", ld_library_paths="/usr/libexec/droid-hybris/system/lib64:/system/lib64:/vendor/lib64", | 21:08 |
| T42 | <nc1x72> Just different | 21:08 |
| mal | default_library_paths="/vendor/lib64:/vendor/lib64/hw:/vendor/lib64/egl", permitted_paths="/odm:/vendor:/system/vendor"] | 21:08 |
| mal | oops | 21:08 |
| mal | /vendor/etc/audio/audio_policy_configuration.xml | 21:08 |
| T42 | <nc1x72> Running it without, I get this : "library "/usr/libexec/droid-hybris/system/lib64/hw/audio.primary.lahaina.so" needed or dlopened by "/usr/libexec/droid-hybris/system/lib64/libvndksupport.so" is not accessible for the namespace "sphal"" | 21:09 |
| mal | show that /vendor/etc/audio/audio_policy_configuration.xml | 21:12 |
| mal | I'm a bit confused, I checked that droid-system repo you have in your github project and it doesn't match what showed me now | 21:12 |
| mal | that one https://github.com/SailfishOSSpacewar/droid-system-Spacewar/tree/main | 21:12 |
| T42 | <nc1x72> Yes I tried using the policy configuration that worked on UT when I had audio issue. I will reflash if that was a bad move. | 21:15 |
| mal | just copy back the original from that repo | 21:16 |
| mal | I assume you copied it to /vendor/etc/audio_policy_configuration.xml ? | 21:16 |
| mal | or also to /vendor/etc/audio/audio_policy_configuration.xml | 21:16 |
| Mister_Magister | mal: you doing good? | 21:17 |
| mal | anyway just copy the files from your repo and remove the wrong one, your repo only has /vendor/etc/audio/audio_policy_configuration.xml | 21:17 |
| mal | Mister_Magister: ? | 21:17 |
| Mister_Magister | Just asking about a wellbeing of an aquintance :) | 21:18 |
| Mister_Magister | we've been talking on this channel for over a decade now so maybe even fren <3 | 21:18 |
| T42 | <nc1x72> Yes, in /vendor/etc/audio too. Along with other xml files. I also copied audio.primary.lahaina.so from stock firmware over to /vendor/lib64/hw/ because LineageOS vendor image doesn't have it (only in /vendor/lib/hw). | 21:19 |
| mal | @nc1x72 you should not need to copy audio hal | 21:20 |
| T42 | <nc1x72> Ok then. I just found it a bit strange | 21:21 |
| T42 | <nc1x72> Reflashing rootfs now | 21:21 |
| mal | since we use the hidl_compat which doesn't care if device uses 32-bit or 64-bit hal | 21:21 |
| mal | Mister_Magister: ok-ish, too many things to do | 21:22 |
| Mister_Magister | ahh that's the classic :D | 21:22 |
| T42 | <nc1x72> OK. Reflashed now. Everything is as it's on git repos. | 21:34 |
| mal | check the /etc/pulse/arm_droid_card_custom.pa first, then make sure the symlink is in /usr/libexec/droid-hybris/system/lib64/hw/audio.primary.lahaina.so | 21:35 |
| T42 | <nc1x72> ``` | 21:40 |
| T42 | <nc1x72> [defaultuser@phone1 ~]$ cat /etc/pulse/arm_droid_card_custom.pa | 21:40 |
| T42 | <nc1x72> load-module module-droid-card sink_format=s24le rate=48000 unload_call_exit=true | 21:40 |
| T42 | <nc1x72> load-module module-udev-detect | 21:40 |
| T42 | <nc1x72> [defaultuser@phone1 ~]$ ls -l /usr/libexec/droid-hybris/system/lib64/hw/audio.primary.lahaina.so | 21:40 |
| T42 | <nc1x72> lrwxrwxrwx 1 root root 28 Mar 21 05:35 /usr/libexec/droid-hybris/system/lib64/hw/audio.primary.lahaina.so -> audio.hidl_compat.default.so | 21:40 |
| T42 | <nc1x72> [defaultuser@phone1 ~]$ ls -l /usr/libexec/droid-hybris/system/lib64/hw/ | 21:40 |
| T42 | <nc1x72> total 28 | 21:40 |
| T42 | <nc1x72> -rw-r--r-- 1 root root 24600 Mar 20 01:19 audio.hidl_compat.default.so | 21:40 |
| T42 | <nc1x72> lrwxrwxrwx 1 root root 28 Mar 21 05:35 audio.primary.lahaina.so -> audio.hidl_compat.default.so | 21:40 |
| T42 | <nc1x72> [defaultuser@phone1 ~]$``` | 21:40 |
| T42 | <nc1x72> The symlink is OK | 21:40 |
| mal | remove that sink_format=s24le | 21:42 |
| mal | then try running pulseaudio from terminal like before | 21:46 |
| T42 | <nc1x72> https://paste.opensuse.org/pastes/3a368a456a0a | 21:48 |
| T42 | <nc1x72> | 21:48 |
| T42 | <nc1x72> Now it crashes | 21:48 |
| mal | show content of /sys/class/sound/card0/id and /lib/udev/rules.d/99-pulseaudio-ignore-builtin-card.rules | 21:50 |
| mal | also it seems that it still failed to load that droid module | 21:50 |
| mal | also you again didn't add HYBRIS_USE_VENDOR_NAMESPACE=yes | 21:51 |
| T42 | <nc1x72> I did, it just crashed the same way | 21:52 |
| T42 | <nc1x72> [defaultuser@phone1 ~]$ cat /sys/class/sound/card0/id | 21:52 |
| T42 | <nc1x72> lahainayupikqrd | 21:52 |
| T42 | <nc1x72> | 21:52 |
| T42 | <nc1x72> [defaultuser@phone1 ~]$ cat /lib/udev/rules.d/99-pulseaudio-ignore-builtin-card.rules | 21:52 |
| T42 | <nc1x72> KERNEL=="card0", SUBSYSTEM=="sound", ATTR{id}=="lahainayupikidp", ENV{PULSE_IGNORE}="1" | 21:52 |
| T42 | <nc1x72> [defaultuser@phone1 ~]$ | 21:52 |
| mal | you need to fix that 99-pulseaudio-ignore-builtin-card.rules, the id part needs to be that one from /sys/class/sound/card0/id | 21:53 |
| mal | ok, it seems some change is missing from adaptation side, I had hacked in different way | 21:57 |
| T42 | <nc1x72> Done. Still crashes with the same error (droid module not loaded). What if I pass /etc/pulse/arm_droid_card_custom.pa to the command directly? | 21:59 |
| mal | needs some changes, a moment | 21:59 |
| mal | in hybris-hal part | 21:59 |
| T42 | <nc1x72> Ok | 21:59 |
| mal | in couple of places | 22:00 |
| mal | first go to hybris-patches folder in ANDROID_ROOT in your build environment | 22:07 |
| mal | then run "repo sync hybris-patches" | 22:08 |
| T42 | <nc1x72> Ok. So, need to rebuild everything afterward? | 22:08 |
| mal | then build hybris-hal | 22:10 |
| mal | but you need more changes before packaging droid-hal rpm again | 22:10 |
| mal | wait | 22:10 |
| mal | before you build hybris-hal you need to apply some patches | 22:11 |
| mal | go to system/linkerconfig and there run "git am ../../hybris-patches/system/linkerconfig/*" | 22:11 |
| mal | then back to ANDROID_ROOT and the to system/core folder and there run "git am ../../hybris-patches/system/core/0043*.patch" | 22:12 |
| mal | then build hybris-hal | 22:16 |
| T42 | <nc1x72> Alright. I'll do that and let you know. Thank you for all your help, mal. Much appreciated | 22:22 |
| mal | before packaging droid-hal go to folder rpm/dhd and there run "git fetch origin" and then "git checkout linkerconfig" | 22:23 |
| mal | and before building new image fix the needed things in droid-config repo, the udev rule at least | 22:24 |
| mal | and of course rebuild droid-config packages after fixing that | 22:24 |
| mal | and also before doing that fix arm_droid_card_custom.pa | 22:25 |
| T42 | <nc1x72> Made the changes regarding udev rule and arm_droid_card_custom.pa for now | 22:39 |
| T42 | <nc1x72> Rebuilding | 22:39 |
Generated by irclog2html.py 2.17.1 by Marius Gedminas - find it at https://mg.pov.lt/irclog2html/!