Debian Bullseye Status

What is the status of the Debian Bullseye kernel? I’ve read that Robert Nelson has it in testing, but I’m wondering if there’s a rough estimate for when it might become mainstream. Is the March 2022 monthly sufficiently stable for someone with very little experience to start working with it?

Hi @dr_eck , i’m a little bias, the base os is in pretty good shape…

The default kernel v5.10.x-ti is still a little ruff, but if you find something that doesn’t work, let us know… Otherwise just install v4.19.x-ti or older and everything should work as it did on Buster…

Regards,

Thanks, Robert. Any idea when Bullseye will be added to the “latest images” page?
BeagleBoard.org - latest-images

when more of the regressions get fixed…

Otherwise, i’m updating this every month…

Regards,

AFAIK the uio_pruss driver doesn’t work since the device tree structure changed, uio support in kernel is disabled and the new ti-sysc way of handling stuff is not implemented properly or more precisely not present in official kernel.

That makes the kernel pointless. Find a patch at Arch Linux ARM • View topic - [BBB] PRU using uio on recent kernels - solution

Regards

Good morning Robert. We have a bunch of BBB still with debian Stretch and we are upgrading all of them to Buster, but security support for Buster is already expired.
I’d like to upgrade to Bullseye, I’ve seen you published already Bullseye images.
In my case I can’t go on every site where we installed the Beagleboards and replace them, nor flash them from from scratch, because they have a lot of tools, settings and history collected in years and because it’s too expensive and actually stupid having to drive through all Germany for all them. We are talking about hundreds.

So my only possibility is the upgrade them via ssh. Simply using apt upgrade from Stretch to Buster worked like a charm, but from Buster to Bullseye…
This is what I get:
debug: [console=ttyO0,115200n8 root=/dev/mmcblk1p1 ro rootfstype=ext4 rootwait coherent_pool=1M net.ifnames=0 quiet] …
debug: [bootz 0x82000000 0x88080000:17e6459 88000000] …
ERROR: Did not find a cmdline Flattened Device Tree
Could not find a valid device tree

I hope you can find the time to give me some hints.

Massimo

can i see more of your boot log? LIke what was before that…

Regards,

Here is all of it:

U-Boot SPL 2018.09-00002-g0b54a51eee (Sep 10 2018 - 19:41:39 -0500)
Trying to boot from MMC2
Loading Environment from EXT4… Card did not respond to voltage select!

U-Boot 2018.09-00002-g0b54a51eee (Sep 10 2018 - 19:41:39 -0500), Build: jenkins- github_Bootloader-Builder-65

CPU : AM335X-GP rev 2.1
I2C: ready
DRAM: 512 MiB
No match for driver ‘omap_hsmmc’
No match for driver ‘omap_hsmmc’
Some drivers were not found
Reset Source: Power-on reset has occurred.
RTC 32KCLK Source: External.
MMC: OMAP SD/MMC: 0, OMAP SD/MMC: 1
Loading Environment from EXT4… Card did not respond to voltage select!
Board: BeagleBone Black
not set. Validating first E-fuse MAC
BeagleBone Black:
Model: Element14 BeagleBone Black Industrial:
BeagleBone: cape eeprom: i2c_probe: 0x54:
BeagleBone: cape eeprom: i2c_probe: 0x55:
BeagleBone: cape eeprom: i2c_probe: 0x56:
BeagleBone: cape eeprom: i2c_probe: 0x57:
Net: eth0: MII MODE
cpsw, usb_ether
Press SPACE to abort autoboot in 2 seconds
board_name=[A335BNLT] …
board_rev=[EIA0] …
Card did not respond to voltage select!
Card did not respond to voltage select!
Card did not respond to voltage select!
gpio: pin 56 (gpio 56) value is 0
gpio: pin 55 (gpio 55) value is 0
gpio: pin 54 (gpio 54) value is 0
gpio: pin 53 (gpio 53) value is 1
Card did not respond to voltage select!
Card did not respond to voltage select!
switch to partitions #0, OK
mmc1(part 0) is current device
Scanning mmc 1:1…
gpio: pin 56 (gpio 56) value is 0
gpio: pin 55 (gpio 55) value is 0
gpio: pin 54 (gpio 54) value is 0
gpio: pin 53 (gpio 53) value is 1
switch to partitions #0, OK
mmc1(part 0) is current device
gpio: pin 54 (gpio 54) value is 1
Checking for: /uEnv.txt …
Checking for: /boot.scr …
Checking for: /boot/boot.scr …
Checking for: /boot/uEnv.txt …
gpio: pin 55 (gpio 55) value is 1
2547 bytes read in 8 ms (310.5 KiB/s)
Loaded environment from /boot/uEnv.txt
Checking if uname_r is set in /boot/uEnv.txt…
gpio: pin 56 (gpio 56) value is 1
Running uname_boot …
loading /boot/vmlinuz-5.10.0-16-rt-armmp …
5018112 bytes read in 327 ms (14.6 MiB/s)
debug: [enable_uboot_overlays=1] …
debug: [enable_uboot_cape_universal=1] …
debug: [uboot_base_dtb_univ=am335x-boneblack-uboot-univ.dtb] …
uboot_overlays: [uboot_base_dtb=am335x-boneblack-uboot-univ.dtb] …
debug: unable to find [am335x-boneblack-uboot-univ.dtb] using [am335x-boneblack-uboot.dtb] instead …
debug: [uboot_base_dtb_univ=am335x-boneblack-uboot.dtb] …
uboot_overlays: [uboot_base_dtb=am335x-boneblack-uboot.dtb] …
loading /usr/lib/linux-image-5.10.0-16-rt-armmp/am335x-boneblack.dtb …
62852 bytes read in 144 ms (425.8 KiB/s)
uboot_overlays: [fdt_buffer=0x60000] …
uboot_overlays: loading /lib/firmware/BB-BONE-eMMC1-01-00A0.dtbo …
1614 bytes read in 171 ms (8.8 KiB/s)
failed on fdt_overlay_apply(): FDT_ERR_NOTFOUND
base fdt does did not have a /symbols node
make sure you’ve compiled with -@
uboot_overlays: loading /lib/firmware/BB-HDMI-TDA998x-00A0.dtbo …
5330 bytes read in 54 ms (95.7 KiB/s)
libfdt fdt_check_header(): FDT_ERR_BADMAGIC
failed on fdt_overlay_apply(): FDT_ERR_BADMAGIC
base fdt does did not have a /symbols node
make sure you’ve compiled with -@
uboot_overlays: loading /lib/firmware/BB-ADC-00A0.dtbo …
654 bytes read in 180 ms (2.9 KiB/s)
libfdt fdt_check_header(): FDT_ERR_BADMAGIC
failed on fdt_overlay_apply(): FDT_ERR_BADMAGIC
base fdt does did not have a /symbols node
make sure you’ve compiled with -@
uboot_overlays: loading /lib/firmware/AM335X-PRU-RPROC-4-14-TI-00A0.dtbo …
3497 bytes read in 149 ms (22.5 KiB/s)
libfdt fdt_check_header(): FDT_ERR_BADMAGIC
failed on fdt_overlay_apply(): FDT_ERR_BADMAGIC
base fdt does did not have a /symbols node
make sure you’ve compiled with -@
uboot_overlays: unable to find [mmc 1:1 /lib/firmware/univ-bbb-EVA-00A0.dtbo]…
loading /boot/initrd.img-5.10.0-16-rt-armmp …
25060441 bytes read in 4329 ms (5.5 MiB/s)
debug: [console=ttyO0,115200n8 root=/dev/mmcblk1p1 ro rootfstype=ext4 rootwait coherent_pool=1M net.ifnames=0 quiet] …
debug: [bootz 0x82000000 0x88080000:17e6459 88000000] …
ERROR: Did not find a cmdline Flattened Device Tree
Could not find a valid device tree
** Invalid partition 2 **
** Invalid partition 3 **
** Invalid partition 4 **
** Invalid partition 5 **
** Invalid partition 6 **
** Invalid partition 7 **
starting USB…
USB0: Port not available.
cpsw Waiting for PHY auto negotiation to complete… TIMEOUT !
using musb-hdrc, OUT ep1out IN ep1in STATUS ep2in
MAC 30:45:11:e1:7d:0c
HOST MAC de:ad:be:af:00:00
RNDIS ready
The remote end did not respond in time.missing environment variable: pxeuuid
Retrieving file: pxelinux.cfg/01-30-45-11-e1-7d-0c
cpsw Waiting for PHY auto negotiation to complete…L

Open up /boot/uEnv.txt and reset uname_r variable to the kernel version you want to boot…

Regards,

How can I do it if it doesn’t boot?
And that’s what I would like to boot after I did apt upgrade…
The big question here is if upgrading from buster to bullseye with standard way apt upgrade is somehow feasible…

Oh your on eMMC…

So what happened, one of the updates pulled in the debian kernel 5.10.0-16-rt-armmp and my script properly put it in the boot area… BUT you have overlays enabled, debian’s actual kernel does not support overlays…

So you need to boot with a microSD, mount the eMMC, and then change /boot/uEnv.txt to either boot with debian or one of beagleboard.org’s kernel’s…

Regards,

It took me a while to collect everything and do it. Thank you for the hint!

For now I just disabled the overlays. I have to be honest, I don’t know exactly what they are used for, so I don’t even know if I need them or not.
I’ll make some test, but a brief explanation from you would appreciated.
Thank you

Sorry Robert, is possible that upgrading to bullseye we lose the usb0 network interface?

Hi @max is this your previously mentioned Debian Stretch Image, upgraded to Buster, and now upgraded to Bullseye image… Which is running Debian’s 5.10.0-16-rt-armmp kernel?

Our Debian Stretch and Buster images used connman and a few random scripts to configure usb0.

Our Debian Bullseye images use systemd-network to configure usb0.

These rely on a specific sets of usb gadget kernel configuration options.

I have no idea, or even tested Debian’s 5.10.0-16-rt-armmp to validate this setup. While Debian’s kernel should boot, I’ve not personally validated it’s functionality…

Regards,

Hi Robert, yes it is.
Understood.
I assume nothing calls “am335x_evm.sh”. Do you think it’s enough to run it? Where would you suggest to run it it from?
I have connman and systemd-networkd disabled and rely on the old settings in /etc/network/interfaces.

Hi @max so in Debian Bullseye, “systemd” grew a usb-gadget.target, we use this to directly run what would have been “am335x_evm.sh” in the past…

This loads libcomposite and starts /usr/bin/bb-start-usb-gadgets

Which is just a shell script that loads either a specific gadget or the beagle default:

The Beagle default is just usb0/usb1 ethernet, usb cdc and usb flash…

Next for setting up the usb0 ip and dhcp , we utilize systemd-networkd

Regards,

That’s so cool !!
The bb-usb-gadgets and systemd-networkd services where just disabled.
Thank you very much Robert.