Twodisbetter | minute: incase you want the specifics of the kernel this is the output for uname -a | 00:24 |
---|---|---|
Twodisbetter | Linux pocket001 6.10.3-mnt-reform-arm64 #1 SMP Debian 6.10.3-1+reform20240807T214815Z (2024-08-07) aarch64 GNU/Linux | 00:24 |
minute | Twodisbetter: thanks! | 01:21 |
+ ZylonMaster (~hjcs@ool-ad02e01f.dyn.optonline.net) | 01:56 | |
- cobra (QUIT: Ping timeout: 276 seconds) (~cobra@user/Cobra) | 02:08 | |
+ cobra (~cobra@user/Cobra) | 02:13 | |
- cobra (QUIT: Quit: ZNC 1.8.2 - https://znc.in) (~cobra@user/Cobra) | 02:35 | |
+ hjcfd (~hjcs@ool-ad02e01f.dyn.optonline.net) | 02:39 | |
+ cobra (~cobra@user/Cobra) | 02:39 | |
- ZylonMaster (QUIT: Ping timeout: 272 seconds) (~hjcs@ool-ad02e01f.dyn.optonline.net) | 02:42 | |
* hjcfd -> ZylonMAster | 02:43 | |
- colinsane (QUIT: Ping timeout: 252 seconds) (~colinunin@97-113-70-61.tukw.qwest.net) | 02:46 | |
- ZylonMAster (QUIT: Read error: Connection reset by peer) (~hjcs@ool-ad02e01f.dyn.optonline.net) | 02:50 | |
+ ZylonMAster (~hjcs@ool-ad02e01f.dyn.optonline.net) | 02:50 | |
- ZylonMAster (QUIT: Read error: Connection reset by peer) (~hjcs@ool-ad02e01f.dyn.optonline.net) | 02:54 | |
^alex | fun times in "initial clocking" land: the syscon is happy with a downclocked PLL but the same clock init routine janks up the PIO engine on the keyboard such that the LEDs go hilariously wrong | 03:14 |
^alex | we are also whacking a lot of fun bits into the sleep_hw | 03:14 |
- op_4 (QUIT: Remote host closed the connection) (~tslil@user/op-4/x-9116473) | 04:05 | |
+ op_4 (~tslil@user/op-4/x-9116473) | 04:05 | |
* robin -> lispwitch | 07:02 | |
* lispwitch -> robin | 07:02 | |
+ midfavila (midfavila@sdf.org) | 07:33 | |
midfavila | mannnnn modos needs to hurry up and push their display tech out alreaddddyyyyyyy | 07:33 |
- laumann_ (QUIT: Changing host) (~quassel@2a0a-e5c0-2-2-0-c8ff-fe68-bef1.loves.ipv6.at.ungleich.ch) | 08:37 | |
+ laumann_ (~quassel@user/laumann) | 08:37 | |
* laumann_ -> laumann | 08:37 | |
+ colinsane (~colinunin@97-113-70-61.tukw.qwest.net) | 10:06 | |
- jacobk_ (QUIT: Quit: No Ping reply in 180 seconds.) (~quassel@47-186-105-237.dlls.tx.frontiernet.net) | 10:57 | |
+ jacobk (~quassel@47-186-105-237.dlls.tx.frontiernet.net) | 10:59 | |
- jacobk (QUIT: Ping timeout: 248 seconds) (~quassel@47-186-105-237.dlls.tx.frontiernet.net) | 11:04 | |
+ jacobk (~quassel@47-186-105-237.dlls.tx.frontiernet.net) | 11:04 | |
amospalla | It is not posible to choose which kernel to boot with on a Pocket, is it? | 11:24 |
josch | amospalla: the "kernel choosing" functionality is provided if you have a u-boot that is able to drive the display | 11:26 |
josch | amospalla: so theoretically you could install stuff which presents you a boot menu but it's pointless if you do not see it :) | 11:26 |
amospalla | Thank you josch , I thought it was not posible but was not sure. | 11:27 |
ch | https://youtu.be/jGMc3SD_LFM?t=52 required reference | 11:28 |
grimmware | josch: does it just try each installed kernel until it finds one that boots? | 11:29 |
josch | grimmware: no, what u-boot tries to find is a boot.scr or extlinux.conf until it finds one | 11:51 |
josch | and then it is the task of the boot.scr or extlinux.conf that it found to pick the right kernel | 11:52 |
josch | grimmware: the boot.scr or extlinux.conf are search for in the first partition of usb-stick, sd-card or emmc (usually in that order) | 11:52 |
josch | grimmware: boot.scr only knows how to boot a single kernel version as it was set up by flash-kernel | 11:55 |
josch | grimmware: extlinux.conf is able to present you with a boot-menu allowing you to pick amongs all installed kernels (this is set up by the u-boot-menu package) | 11:56 |
grimmware | Gotcha | 11:56 |
josch | i'd love to switch from boot.scr to extlinux.conf but alas we have the imx8mq to support still :) | 11:58 |
Manis | josch: you can setenv however to boot another version. | 12:04 |
Manis | Not user friendly but better than nothing for recovery. | 12:04 |
josch | Manis: yes, but to do that you need either working display and usb or a uart adapter and a second machine attached | 12:04 |
josch | Manis: and the only platform that has the former is the imx8mq | 12:04 |
Manis | josch: Correct, but for extlinux, too, or not? | 12:05 |
josch | Manis: can you rephrase? I'm not sure what you mean | 12:05 |
Manis | josch: you also need a console (either display or serial) to select something from the extboot menu. | 12:06 |
josch | yes, correct | 12:07 |
josch | which is why having an extlinux.conf isn't really useful unless you have the imx8mq | 12:07 |
Manis | So what is the big advantage of extlinux over flash-kernel? | 12:07 |
Manis | Ah, sorry, I guess we were having a violent agreement :-) | 12:08 |
josch | Manis: flash-kernel is very unmaintained, the people who maintain it really dislike it and u-boot developers talk about throwing out boot.scr support in a future release | 12:08 |
Manis | josch: Yes, I have to agree that flash-kernel is a bit meh. | 12:09 |
Zaba | one advantage is that extlinux.conf is just a normal configuration file, which boot.scr isn’t | 12:09 |
josch | i don't think anybody is argueing in favour of boot.scr, no? :) | 12:10 |
Manis | However removing boot.scr support from u-boot sounds like a bad idea. | 12:10 |
Zaba | why? | 12:10 |
josch | for legacy reasons i'd say | 12:10 |
josch | to not break existing setups | 12:10 |
Manis | Zaba: yes and no. extlinux needs to be updated on every kernel update while, theoretically, boot.scr could generate a menu dynamically. | 12:11 |
Zaba | most existing setups will just never update u-boot | 12:11 |
Manis | I also use extlinux when I'm not using Debian but I really think the manual updates which are usually necessary are a disadvantage. | 12:11 |
Zaba | the u-boot-menu package in Debian can handle generating the extlinux.conf | 12:12 |
josch | the Debian kernel image maintains the symlinks /initrd.img and /vmlinuz, so theoretically you can also have a static extlinux.conf if your u-boot sets ${fdtfile} correctly | 12:12 |
Zaba | the same way it works for every other bootloader | 12:12 |
Zaba | doing any kind of complex scripting in u-boot’s command language sounds inane to be honest | 12:13 |
josch | yes, one reason i'd prefer extlinux.conf over boot.scr is, that the former is declarative and the latter is turing complete | 12:13 |
Zaba | but anyway, you can also customize bootstd inside u-boot if you have specialized use cases, parsing extlinux.conf files is just what happens to be implemented already | 12:15 |
Zaba | you’ll be writing C instead of u-boot commands which seems to me like a better programming environment for anything complex | 12:16 |
josch | grimmware: if you want to get a better understanding about how the boot process works, i wrote up this for the imx8mq: https://source.mnt.re/reform/reform-handbook/-/issues/2 | 12:17 |
josch | grimmware: the boot process on the imx8mq is a bit more interesting because it has a DIP switch which allows you to select where to load u-boot from | 12:17 |
josch | grimmware: and because it has some magic in userspace which allows switching the dtb between single and dual display mode | 12:18 |
- amk (QUIT: Ping timeout: 255 seconds) (~amk@user/amk) | 13:39 | |
+ amk (~amk@user/amk) | 13:39 | |
Twodisbetter | for all those concerned my Pocket has been on for 3 days and hasn't dropped connectivity once. It has in the past but this time it hasn't. | 13:50 |
ch | do you know what changed? | 13:51 |
Twodisbetter | stock system just running a 6.10.3 kernel | 13:51 |
Twodisbetter | I don't think heat is the issue though for the disconnects | 13:52 |
- amk (QUIT: Ping timeout: 258 seconds) (~amk@user/amk) | 14:42 | |
+ amk (~amk@user/amk) | 14:49 | |
- amk (QUIT: Ping timeout: 252 seconds) (~amk@user/amk) | 15:02 | |
+ amk (~amk@user/amk) | 15:11 | |
- amk (QUIT: Ping timeout: 272 seconds) (~amk@user/amk) | 16:17 | |
+ amk (~amk@user/amk) | 16:27 | |
ch | josch: maybe you want to look at https://community.mnt.re/t/debugging-boot-failures/2375/7 | 16:42 |
josch | hahahaha oh no XD | 16:45 |
josch | yes, i was just thinking about something similar yesterday | 16:45 |
ch | sorry! | 16:45 |
josch | oh no worries | 16:46 |
josch | i'm happy that you found the thing that was bugging me | 16:46 |
ch | (: | 16:46 |
josch | because we do it correctly for a311d | 16:46 |
josch | but i botched it for imx8mplus apparently :D | 16:46 |
ch | dunno if there can be a sanity check | 16:47 |
josch | this also reminds me that we want this: https://source.mnt.re/reform/reform-system-image/-/merge_requests/99 | 16:47 |
josch | ch: that is the sanity check ^ | 16:47 |
ch | like maybe qemu the image | 16:47 |
ch | ah yes | 16:47 |
josch | it does exactly that | 16:47 |
josch | and we should do this with all system images | 16:47 |
ch | yup | 16:47 |
josch | there is actually another bug as well | 16:47 |
- amk (QUIT: Ping timeout: 258 seconds) (~amk@user/amk) | 16:48 | |
josch | because the pocket imx8mplus has SD_BOOT=false in its machines.conf | 16:48 |
ch | (reminds me i promised to look at the ci failures for grml-debootstrap, which no longer can build bullseye images on trixie for some reason) | 16:48 |
josch | so the system image script should not write u-boot to sd-card in the first place | 16:48 |
josch | so there are now two bugs! | 16:48 |
ch | it cant boot off the sd at all? | 16:48 |
ch | it cant boot uboot off the sd at all? | 16:48 |
josch | ch: u-boot will not get loaded from sd-card | 16:48 |
josch | yes | 16:49 |
ch | ok, but the emmc system image still needs uboot ... how will you reconcile that? | 16:49 |
ch | if relevant? | 16:49 |
josch | ch: the emmc is assumed to have a working u-boot on it | 16:49 |
josch | if that breaks, there is a semi-complicated way to unbrick it | 16:50 |
ch | does the uboot on the sdcard image hurt tho? | 16:50 |
josch | it does not | 16:50 |
josch | it's just useless bytes | 16:50 |
josch | unless those bytes overwrite the first 512 bytes :) | 16:51 |
ch | i guess you dont want to omit uboot if you ever want to consider merging the various images | 16:51 |
josch | ch: way ahead of you: https://source.mnt.re/reform/reform-system-image/-/merge_requests/104 | 16:51 |
ch | producing 5gb (uncompressed) times 3*5 (or whatever the numbers are) is probably not great | 16:51 |
josch | ch: this is documented here: https://source.mnt.re/reform/reform-system-image/-/issues/28 | 16:52 |
ch | i know too little about uboot, but cant it also support many platforms with one image? | 16:52 |
josch | no | 16:52 |
josch | this is why we do not default to this | 16:52 |
josch | we cannot have one u-boot that works everywhere | 16:52 |
ch | (i remember debian has a uboot binary, that hopefully supports more than one board?) | 16:53 |
ch | ok i see debian has a lot of uboot bins | 16:53 |
ch | but not one for each specific board | 16:53 |
josch | to build u-boot for your platform you bake-in support for that platform into the binary | 16:53 |
josch | ch: vagrantc hangs out in this channel daily, so you can ask them | 16:54 |
ch | so if you had one uboot per cpu module instead of one per cpumodule+motherboard, that'd be a start i guess | 16:54 |
josch | oh that apparently already works for rk3588 | 16:54 |
josch | the u-boot binaries for the pocket, the big reform and reform-next are identical with rk3588 | 16:55 |
+ amk (~amk@user/amk) | 16:58 | |
ch | dunno if you want to add "have shared u-boot at least per som" to the possible solution list | 16:58 |
josch | i do, let me add that, thank you | 16:59 |
ch | if you want to build an image without uboot, might be worth considering leaving the first XX KB in it as zeroes, so installing it can be dd if=system.img of=sdcard && dd if=uboot.img of=sdcard without any offsets | 17:00 |
ch | (where 'XX KB' is enough to fit -any- u-boot) | 17:00 |
josch | the first 8 MB must be free | 17:00 |
josch | but a simple dd will again overwrite the MS DOS partition table | 17:00 |
josch | so you still need an oskip=512 and iskip=512 | 17:00 |
josch | errr... oseek and iseek | 17:01 |
ch | hm right | 17:01 |
ch | then its pointless indeed | 17:01 |
josch | i think it's different levels of pointless depending on what semi-solution you look at | 17:02 |
ch | somewhat annoying that every platform vendor has their own idea of where u-boot needs to exist | 17:02 |
josch | and i did not yet come to like any | 17:02 |
josch | this will be a longer write-up :) | 17:09 |
- amk (QUIT: Ping timeout: 252 seconds) (~amk@user/amk) | 17:35 | |
+ amk (~amk@user/amk) | 17:40 | |
^alex | i think we managed to squeeze a _tiny_ bit of power savings out of our changes! | 19:26 |
^alex | making a few more (turning off the XIP clocks in sleep mode, turning off the unused SPI/UART/I2C periphs where we can) | 19:26 |
^alex | also, sent in MR !7 so CI only fires on `reform` project (we keep getting "pipeline failed" emails) | 21:18 |
sevan | ran the system (reform2) until there was 2% battery left after which it shut itself down (sleep?) gracefully, plugged the charger in & tried to wake from the menu but nothing. checked battery status from menu & it says 100% :) | 22:10 |
sevan | that was very quick to charge :D | 22:10 |
^alex | chewin' on the pocket sysctl firmware a bit and thinking of ways to make it more interrupt driven | 23:37 |
^alex | the fusb interrupt is physically wired but not attended to in code | 23:39 |
^alex | looks like | 23:40 |
^alex | if we can switch away from polling the fusb302 when the system is off, that would cut down on the time the syscon is running | 23:41 |
Generated by irclog2html.py 2.17.3 by Marius Gedminas - find it at https://mg.pov.lt/irclog2html/!