**** BEGIN LOGGING AT Wed Apr 27 02:59:56 2022 Apr 27 07:01:04 Morning! Apr 27 08:05:54 morning Apr 27 08:09:12 Tofe: I rooted my webOS TV, so I can pull the rootfs from there and also do some luna-send stuff there to see how they do certain things on production devices ;) Apr 27 08:13:10 FYI: kirkstone officially released today https://lists.yoctoproject.org/g/yocto/message/56902 Apr 27 08:13:58 JaMa: Nice Apr 27 08:14:20 We're ironing out some of the remaining issues with SAM/LSM/WAM afterwards we should be in a good shape to start testing Kirkstone Apr 27 08:14:44 I sent a few PR's for review at night Apr 27 08:14:53 That should get us display and touch on Halium devices at least Apr 27 08:26:28 Tofe: We might want to rebase our luna-surfacemanager a bit to pick upstream fixes? https://github.com/webosose/luna-surfacemanager/commits/master Apr 27 08:28:09 Might solve some of the issues we're seeing with Maliit going by the code at least Apr 27 09:20:24 Morning! Apr 27 09:21:25 Herrie: yes, a rebase is a good idea Apr 27 09:23:58 Tofe: Happy to receive feedback on the PR's. I quickly tested the luna-surfacemanager on qemux86 and mido, seems to work OK in both cases Apr 27 09:28:39 LGTM, but I don't know why the patch was updated ? was it triggering a warning ? Apr 27 09:29:07 Tofe: Just to output the extra options in the logging Apr 27 09:29:19 They were passed but not mentioned in the logging Apr 27 09:30:06 ah, ok! good idea yes Apr 27 09:30:13 The updated patch could potentially be useful for LG & PR for the product.env could be useful for LG for the Jetson Nano as well Apr 27 09:30:28 Since they're now manually hacking the config according to the guide: https://www.webosose.org/docs/guides/setup/bring-up-guides/bringing-up-jetson-nano/#enabling-graphic-interfaces Apr 27 09:30:35 So I asked them about the PR Apr 27 09:30:39 If they're interested Apr 27 09:30:43 I've merged the PR Apr 27 09:31:45 I didn't test all the targets of the luna-surfacemanager-conf, but just took the values from luna-next Apr 27 09:31:57 So we have them at least, tweaking can be done later if needed Apr 27 09:33:12 This is the patch to luna-surfacemanager to have the "drm" display detection disabled for devices which don't have it: https://github.com/webOS-ports/luna-surfacemanager/pull/1/files Apr 27 09:33:21 This was tested on Mido & qemu as well Apr 27 09:38:45 ah, no, for that one I don't think it's the right way to go Apr 27 09:39:12 Tofe: OK, happy for suggestions... Apr 27 09:39:17 It works fine though ;) Apr 27 09:39:28 I agree eglfs shouldn't be force in that script, but we should use configd here Apr 27 09:40:34 our configd-data jsons are currently incorrect (or incomplete) Apr 27 09:40:48 Tofe: Well I pulled one from my TV to see what data is there Apr 27 09:40:53 No config there at all ;) Apr 27 09:41:26 In general not really sure what they do in case there is a config Apr 27 09:41:49 It seems they just check that it returns an array with values Apr 27 09:41:56 But nothing is done with it by the looks of it Apr 27 09:42:01 Or at least I couldn't find it Apr 27 09:42:35 basically, here https://github.com/webOS-ports/configd-data/blob/webOS-ports/webOS-OSE/configs/layers/base/mido/com.webos.surfacemanager.json#L2= we should add (or replace ?) a "displayConfig" key with the same content as for compositorGeometry Apr 27 09:43:40 that will be retrieved by the product.env script, and we'll avoid the whole "if" below Apr 27 09:44:11 Tofe: OK, I can try that Apr 27 09:44:20 But I have no idea what values are expected in displayConfig Apr 27 09:44:25 Seems anything that's an array would do Apr 27 09:44:29 At least going by the regexp Apr 27 09:44:48 I'll have a look too Apr 27 09:45:06 Tofe: https://github.com/webOS-ports/meta-webos-ports/pull/518 Apr 27 09:45:06 LOL Apr 27 09:46:38 Tofe: This is what I get on my webOS TV with webOS 5.4: https://bpa.st/QFOQ Apr 27 09:46:49 damn, I didn't even see the incorrect path ! :p Apr 27 09:46:50 For a call to luna-send -n 1 -a com.webos.surfacemanager luna://com.webos.service.config/getConfigs '{"configNames":["com.webos.surfacemanager.*"]}' Apr 27 09:47:19 I rooted my TV just to be able to test some stuff on a real LG device to see what's there ;) Apr 27 09:47:57 Because OSE's code and examples aren't very useful in most cases Apr 27 09:48:20 you can also call luna-send -n 1 -a com.webos.surfacemanager luna://com.webos.service.config/dumpConfig '{}' I think or something like that Apr 27 09:48:56 and, also, we can dump the result value of WEBOS_COMPOSITOR_DISPLAY_CONFIG on qemu Apr 27 09:49:37 I guess https://github.com/webOS-ports/configd/blob/webOS-ports/webOS-OSE/files/sysbus/com.webos.service.config.api.json#L11 Apr 27 09:49:39 https://github.com/webosose/configd/blob/master/src/configd/service/Configd.cpp#L42= Apr 27 09:49:49 yes, dump Apr 27 09:50:23 but if they don't ship any configd data on TVs, it won't help much :) Apr 27 09:51:31 https://pastebin.ubuntu.com/p/TZMcGCbsx3/ Apr 27 09:51:34 That's from my TV Apr 27 09:53:23 Well they ship data but nothing we need for surfacemanager it seems Apr 27 09:53:51 no displayConfig there, then; they probably rely on DRM for TVs Apr 27 09:54:38 No /sys/class/drm there either ;) Apr 27 09:54:49 eh ? they rely on magic, then ? :) Apr 27 09:55:09 only /sys/class/graphics/fb0-3 Apr 27 09:55:30 or on their hardcoded fallback value, which is 1920x1080 Apr 27 09:57:16 Well in general we don't know to what extend the OSE stuff is used on production devices Apr 27 09:58:03 true Apr 27 09:58:58 Seems they have a surface-manager-starfish there ;) Apr 27 10:00:12 ah, I've seen starfish here and there, no idea what it was for Apr 27 10:03:01 starfish is distro name of webos for TVs Apr 27 10:03:38 ok, I see. Well they've put some #ifdef STARFISH here and there ;) Apr 27 10:04:22 yes, it was supposed to be hidden from OSE and rest of the world, but as Herrie has root, it's not secret anymore :) Apr 27 10:04:49 JaMa: Well root is easy: rootmy.tv in browser and BAM ;) Apr 27 10:05:04 Got a homebrew channel (similar to Preware) and can SSH/SCP/SFTP into it ;) Apr 27 10:05:21 rooting should be easy, I'm glad they made it so Apr 27 10:05:42 Well they use an exploit, but well Apr 27 10:05:49 ahah :) Apr 27 10:06:13 https://github.com/RootMyTV/RootMyTV.github.io Apr 27 10:06:17 They explain how they do it Apr 27 10:06:25 Nothing shocking or unexpected really Apr 27 10:07:49 yes, easier than the official way :) Apr 27 10:13:30 ah ok, they use a data: origin to bypass the security check **** BEGIN LOGGING AT Wed Apr 27 10:38:17 2022 Apr 27 11:18:13 Tofe: OK I'm testing the change for the displayConfig now on Tenderloin. Apr 27 11:18:25 Seems that reloadConfig doesn't work for the JSON so reflashed Apr 27 11:19:45 reflashed ? wouldn't a reboot be enough ? Apr 27 11:19:55 ah it's already in the db Apr 27 11:20:05 anyway Apr 27 11:22:08 Tofe: Yeah.... I tried but didn't work Apr 27 11:22:15 So well Apr 27 11:22:25 Now flashing to see if it works Apr 27 11:22:43 Did a quick mockup test on qemux86-64 to test the format of the array Apr 27 11:22:49 That worked fine with the luna-send call Apr 27 11:22:55 So did similar for all Halium targets now Apr 27 11:22:59 Just need to test it on device Apr 27 11:23:15 Then the luna-surfacemanager PR can be reduced to just setting the eglfs later Apr 27 11:23:51 what was in the WEBOS_COMPOSITOR_DISPLAY_CONFIG variable, in qemu ? Apr 27 11:24:15 Tofe: How to get it? Apr 27 11:24:33 mh I guess you'll need to echo it from product.env Apr 27 11:24:52 which could be a good idea anyway Apr 27 11:26:51 Tofe: Well now it has my hardcoded value which I put for testing ;) Apr 27 11:28:32 :) Apr 27 11:35:02 Seems it should contain name and outputs: https://github.com/webosose/luna-surfacemanager/blob/168865d95dd6d3a30af2dac73e0d7236d6ac5030/modules/weboscompositor/weboscompositorconfig.cpp#L32 Apr 27 11:36:01 As keys Apr 27 11:36:10 But the regexp doesn't check for that Apr 27 11:36:24 And since we don't know the values for our targets we can suffice with any key ;) Apr 27 11:36:53 I now just put "machine" and the machinename and that seems to do the trick Apr 27 11:37:51 outputs seems quite important Apr 27 11:38:23 Nope ;) Apr 27 11:38:26 It works without Apr 27 11:38:31 oh ? ok Apr 27 11:38:40 For hwcomposer that is Apr 27 11:39:13 ah yes there are fallbacks in the cpp Apr 27 11:41:05 Which seem to work fine for Mido & Tenderloin Apr 27 11:41:11 So I would expect for other Halium targets too Apr 27 11:42:19 Tenderloin is the oldest target we still support, so if it works there we should be good Apr 27 11:52:13 Tofe: WEBOS_COMPOSITOR_DISPLAY_CONFIG: [{"device":"/dev/dri/card0","hwcursor":false,"outputs":[{"name":"Virtual1","geometry":"1920x1080+0+0r0s1"}]}] Apr 27 11:52:23 That's on qemux86-64 on my end Apr 27 11:54:25 Tofe: You're happier with this PR now? https://github.com/webOS-ports/luna-surfacemanager/pull/1/files In combination with https://github.com/webOS-ports/configd-data/pull/3 Apr 27 11:55:02 It's a bit nasty to put a machine value in there, but it's not used and passes the regexp and does what it needs to do Apr 27 12:07:57 Tofe: BTW on tenderloin I noticed that the touch coordinates are mirrored when the device is rotated Apr 27 12:09:02 Tofe: BTW there's also a surface-manager-screen-tester executable in /usr/bin Apr 27 12:55:35 Herrie: yes, looks better indeed Apr 27 12:55:53 I'll merge it Apr 27 14:22:00 Tofe: Great! Apr 27 14:36:54 Tofe: rebasing luna-surfacemanager doesn't seem that easy Apr 27 14:37:29 Seems it pulls in additional bits and it would require additional wayland time protocol patch which LG did for Qt6 here: https://github.com/webosose/meta-webosose/blob/55af72a930e2d48bfdbb2f12b7bd3baf505906ba/meta-webos/recipes-qt/qt6/qtwayland/0001-Support-presentation-time-protocol.patch Apr 27 14:37:36 The other bits I got ready by the looks of it Apr 27 14:37:56 If you want I can push my WIP bits Apr 27 15:00:30 Here it is: https://github.com/webOS-ports/meta-webos-ports/commit/e343e4b35cb832e5814d8ae188e4982f7925f606 Apr 27 15:05:44 Herrie: I'll look at it tonight, thanks Apr 27 15:30:45 Tofe: Great Apr 27 15:30:50 I'm doing this patch for Tenderloin Apr 27 15:32:30 Tofe: You meant like this I guess? https://github.com/webOS-ports/meta-webos-ports/commit/8090559ac09d10f936a9b46c954da307644b0638 Apr 27 15:33:43 we want to actually avoid Wants=systemd-udev-settle.service Apr 27 15:33:55 that's what causes the whole drama on touchpad Apr 27 15:35:09 Ah I deleted the wrong line LOL Apr 27 15:35:11 Let me fix it Apr 27 15:35:36 also, I don't understand how you intend to patch the service like this Apr 27 15:36:19 Tofe: Well the service file is provided in the openembedded-core layer. I just overwrite it Apr 27 15:36:23 With our own Apr 27 15:36:28 Or you suggest we patch it instead? Apr 27 15:37:21 ah, no, sorry, I thought in was in rng's repo Apr 27 15:37:34 but then we don't need to add it to SRC_URI, right? Apr 27 15:38:17 we just need to mark the package MACHINE_ARCH Apr 27 15:42:15 Tofe: No it's in openembedded-core as rngd.service file just Apr 27 15:42:22 So I took it from there and removed what we didn't want Apr 27 15:46:13 Tofe: OK like this is should be better then: https://github.com/webOS-ports/meta-webos-ports/commit/76d19dfabc297c233fcd3f3989d722610078551b Apr 27 15:46:51 Herrie: I do think we can remove the SRC_URI:append:tenderloin thing Apr 27 15:49:50 How would it pick up the rngd.service then? Apr 27 15:52:14 it's already in SRC_URI, isn't it? Apr 27 15:52:26 via the base recipe Apr 27 15:53:48 ah, and I see another issue: to make it tenderloin specific, the service file override has to be in the "tenderloin" subfolder Apr 27 15:54:08 like we do for our conf recipes Apr 27 16:47:42 Tofe: Ah now I see how you want to do it Apr 27 16:47:46 OK let me rework Apr 27 17:03:36 the qtwayland patch is a bit tricky to backport, qtwayland 5.15 didn't use CMake at the time Apr 27 17:29:26 Tofe: This should do the trick Apr 27 17:29:28 https://github.com/webOS-ports/meta-webos-ports/commit/15e238d2e6f5dd72e2fd3f6076f6bf34dab3fc32 Apr 27 17:29:49 I built for Tenderloin the line with Wants is not there in the IPK, when I build for Mido the line is there Apr 27 17:29:52 So i guess we're good there Apr 27 17:30:31 and "SRC_URI +=" is needed ? Apr 27 17:30:53 Tofe: Yes otherwise it cannot find the other files Apr 27 17:30:57 Like readme.MD Apr 27 17:31:01 I got errors without the + Apr 27 17:31:39 but I mean, the service file is already here : https://git.yoctoproject.org/poky/plain/meta/recipes-support/rng-tools/rng-tools_6.15.bb Apr 27 17:32:21 Yeah but it's in openembedded-core layer Apr 27 17:32:28 And bbappend in in our meta-webos-ports Apr 27 17:32:41 but doesn't it look in all layers anyway ? Apr 27 17:32:48 Seems not Apr 27 17:33:51 ah, ok; I thought it followed the FILESEXTRAPATHS content Apr 27 17:34:10 I can try again, just to be sure Apr 27 17:34:27 Seems needed Apr 27 17:35:07 weird, but ok then Apr 27 17:35:34 let's PR that Apr 27 17:36:27 Let me flash to TP to make sure it actually boots quicker Apr 27 17:36:38 ah, yes, the initial goal :) Apr 27 17:39:27 Do you know why this would be tenderloin specific, shouldn't we have the same issue on other 3.4 kernels? Apr 27 17:40:18 I guess udev has some issues with one of the drivers, and it takes time to settle Apr 27 17:53:03 Herrie: https://github.com/webOS-ports/meta-webos-ports/commit/577c529065874cc284579ca16b10faa15ebd3a74 Apr 27 17:53:41 I modified the patch files quite heavily Apr 27 17:53:59 so let's hope they won't change it every day Apr 27 17:58:38 Tofe: Is it build tested? Apr 27 17:59:10 yes Apr 27 17:59:51 However I didn't test anything else than qtwayland Apr 27 18:00:48 OK Apr 27 18:04:55 Let me test here Apr 27 18:09:52 Still slow as hell on TP: https://pastebin.ubuntu.com/p/GGy26CdkYg/ Apr 27 18:10:14 Let me try 2nd boot Apr 27 18:10:28 About 2 mins it seems Apr 27 18:12:50 About 1,5 minute on 2nd boot Apr 27 18:13:02 I didn't measure before, but I guess it's quicker Apr 27 18:15:07 Let me put back old service file and time again Apr 27 18:16:22 :( Apr 27 18:17:10 Well Tenderloin is not fast in general ;) Apr 27 18:17:25 We're spoiled with targets like Mido/Tissot/Rosy and even PP(P) Apr 27 18:18:28 I think I found the culprit on touchpad using systemd-analyse or something like that Apr 27 18:19:30 Well the fix helps, because now it boots in 3,5 minute ;) Apr 27 18:19:44 So it cuts it down by 2 minutes ;) Apr 27 18:23:15 let's stay positive, eh Apr 27 18:25:16 There we go: https://github.com/webOS-ports/meta-webos-ports/pull/519 Apr 27 18:38:10 FILESEXTRAPATHS should really be enough to achieve this Apr 27 18:39:31 Well it doesn't work for me somehow Apr 27 18:39:39 I tried all possible combinations but well Apr 27 18:39:40 if you check bitbake-getvar then it includes file://rngd.service twice right? Apr 27 18:42:30 SRC_URI="git://github.com/nhorman/rng-tools.git;branch=master;protocol=https file://init file://default file://rngd.service " Apr 27 18:42:43 ^ is without your patch, no need to add it to SRC_URI again Apr 27 19:12:17 JaMa: You're right, here can replicate indeed without the SRC_URI Apr 27 19:12:21 So we can drop that Apr 27 19:50:14 OK fixed it Apr 27 19:57:15 OK updated Apr 27 20:10:41 great :) Apr 27 20:21:48 Tofe: OK on to building the LSM rebase for Mido Apr 27 20:37:51 Tofe: Compilation fials: https://bpa.st/2GAA Apr 27 20:38:10 With: /home/herrie/LuneOS/honister/webos-ports/tmp-glibc/work/aarch64-halium-webos-linux/qtwayland-webos/2.0.0-70+gitAUTOINC+1deb6a5e44-r15/git/src/webos-platform-interface/webospresentationtime.cpp:68:29: error: 'class QtWaylandClient::QWaylandWindow' has no member named 'object'; did you mean 'QObject'? Apr 27 21:31:04 mmmh weird Apr 27 21:31:09 I'll have a look tomorrow Apr 27 21:31:36 It's "PresentationTime", the new wayland extension LG has introduced Apr 27 21:31:49 maybe it's just a Qt6 thing to adapt for us Apr 27 21:35:55 Tofe: Yeah not sure either Apr 27 22:03:39 codepoet_80: A little teaser: Not there yet still but it's starting to take shape! Apr 27 22:04:17 This is with LG webOS OSE compositor (luna-surfacemanager) and WAM (LG's WebAppManager) based on Chromium 91: https://herrie.org/LuneOS-qemux86-64-0-0-2022-04-27T20-58-01-325038600Z.webm Apr 27 22:06:57 codepoet_80: And a full log I'm getting so far: https://pastebin.ubuntu.com/p/46yGQ64Qfv/ **** ENDING LOGGING AT Thu Apr 28 02:59:56 2022