Welcome! Log In Create A New Profile

Advanced

Is it possible to have a Debian 11 Bullseye build for Pogo Armel?

Posted by BobM 
Is it possible to have a Debian 11 Bullseye build for Pogo Armel?
November 07, 2021 09:15AM
I have just been experimenting with Gerbera 1.9.2 and now it's passed my testing, I want to tick it on the live system. Arrgh, The dependencies that I had to download from the testing repo have moved on from the original ones used on the test box and while they work on V1.82 on V1.92 they seem to cause the app to crash when scanning files. Manually loading the same versions means tracking through all the dependencies which has been painful. There were also something like 200 updates I could have done with a guaranteed chance of breaking my server. Excuse the waffle.

Anyway, it did get me wondering whether there were any plans to move from Buster to Bullseye or even if it was possible?

Cheers - Bob
Re: Is it possible to have a Debian 11 Bullseye build for Pogo Armel?
November 07, 2021 02:19PM
Bob,

Unless you meant the Pogo V3. See the Kirkwood rootfs in the release thread:

Quote

=======================================================================
Updated 26 Sept 2021:

Basic Debian bullseye Kirkwood rootfs for most Kirwood plugs:

=======

On a side note, you could run the Kirkwood rootfs on the Pogo V3 too. But you will need to install the OXNAS kernel using chroot first before booting it.

-bodhi
===========================
Forum Wiki
bodhi's corner (buy bodhi a beer)



Edited 1 time(s). Last edit at 11/07/2021 02:24PM by bodhi.
Re: Is it possible to have a Debian 11 Bullseye build for Pogo Armel?
November 07, 2021 04:33PM
Thanks for that. Sorry I didn't read that far when I did the kernel update and it didn't appear when I searched. I have another Pogo EO2 box to hack so look forward to trying a Bullseye build.

Once again - thanks for the support and help - Bob
Re: Is it possible to have a Debian 11 Bullseye build for Pogo Armel?
December 03, 2021 05:37PM
Hi Bodhi,

I was inspired by your work of PogoPlug / Debian, started to build fresh Debian Bullseye via debootstrap and linux-image-marvell.

It works with USB/top slot but does not work with SATA; however with your version of Debian, it works for both USB & SATA,

Any specific treatment you do for the SATA?

Also, the light still yellow not green; but your version is Green.

Thanks for your hard work!

John
Re: Is it possible to have a Debian 11 Bullseye build for Pogo Armel?
December 03, 2021 08:56PM
John,

> I was inspired by your work of PogoPlug / Debian,
> started to build fresh Debian Bullseye via
> debootstrap and linux-image-marvell.
>
> It works with USB/top slot but does not work with
> SATA; however with your version of Debian, it
> works for both USB & SATA,
>
> Any specific treatment you do for the SATA?
>
> Also, the light still yellow not green; but your
> version is Green.

Which Pogoplug do you have?

If you did "build fresh Debian Bullseye via debootstrap and linux-image-marvell", then the rootfs and kernel are OK. But you also need to choose the correct DTB for your box. The DTB is used in 2 different ways.

- If you run my latest u-boot then your rootfs should have /boot/dts folder and the correct DTB for the box in this folder. This can be found in the release thread.
- If you run stock u-boot then you need to append the box DTB to uImage.

-bodhi
===========================
Forum Wiki
bodhi's corner (buy bodhi a beer)
Re: Is it possible to have a Debian 11 Bullseye build for Pogo Armel?
December 04, 2021 10:54AM
Hi Bodhi,

After switching to your dts file, everything works, SATA and Leds light, originally use the pogoplug dts file
http://ftp.debian.org/debian/dists/stable/main/installer-armel/current/images/kirkwood/device-tree/

It's Pogoplug V4 & E02, yes, use your latest u-boot.

Would you please share your github url of your patch of dts and your u-boot? Would like to learn from you.

Thanks,

John
Re: Is it possible to have a Debian 11 Bullseye build for Pogo Armel?
December 04, 2021 01:32PM
John,

Everything is in the release threads.

Linux patch (DTS files are in the patch).

https://forum.doozan.com/read.php?2,12096

Quote

This tarball contains 6 files:
linux-image-5.15.5-kirkwood-tld-1_1.0_armel.deb
linux-headers-5.15.5-kirkwood-tld-1_1.0_armel.deb
config-5.15.5-kirkwood-tld-1
zImage-5.15.5-kirkwood-tld-1
linux-dtb-5.15.5-kirkwood-tld-1.tar
linux-5.15.5-kirkwood-tld-1.patch

U-Boot GitHub:

https://forum.doozan.com/read.php?3,12381

Quote

References:

1. U-Boot source code at GitHub (latest branch 2017.07-kirkwood-tld-1 and tag v2017.07-kirkwood-tld-1)

-bodhi
===========================
Forum Wiki
bodhi's corner (buy bodhi a beer)
Re: Is it possible to have a Debian 11 Bullseye build for Pogo Armel?
December 04, 2021 04:12PM
Thanks Bodhi!
Re: Is it possible to have a Debian 11 Bullseye build for Pogo Armel?
December 28, 2021 08:18AM
Just a Quick note to say that I have just built a BullsEye rootfs for oxnas (Pogo B03) using chroot as suggested. That was a challenge but easier than expected. The only thing to be aware of is that the initrd.img file name is different because it's a kirkwood rootfs we have started with. Other than that all running well. Happy New Year everyone!
Re: Is it possible to have a Debian 11 Bullseye build for Pogo Armel?
December 28, 2021 03:46PM
Cool! I have been neglecting this box, because there were not much activity in the forum about it.

Eventually I'll update the kernel again, and provide Bullseye rootfs. But not sure when.

-bodhi
===========================
Forum Wiki
bodhi's corner (buy bodhi a beer)
Hope this is the right thread for another Bullseye question.

Pulled the pogo e02 out during the holidays and installed your latest uboot 2017.07-kirkwood-tld-1 ... fabulous and thank you!

Forgive me if I'm missing something obvious in the Debian Bullseye install. I'm relying on netconsole and ssh (no serial access).

Tried "Updated 26 Sept 2021: Basic Debian bullseye Kirkwood rootfs for most Kirwood plugs:", formatted the flashdrive as instructed, ext3 partition, extracted the filesystem as directed, then transferred to the pogoplug e02. Appears normal but no response after kernel boot. Green light, but I'm not seeing the IP in my router and nmap isn't finding port 22 on the subnet.

netconsole gives me the following:
U-Boot 2017.07-tld-1 (Sep 05 2017 - 00:13:18 -0700)
Pogo E02
gcc (Debian 6.3.0-18) 6.3.0 20170516
GNU ld (GNU Binutils for Debian) 2.28
Hit any key to stop autoboot:  0
starting USB...
USB0:   USB EHCI 1.00
scanning bus 0 for devices... 3 USB Device(s) found
       scanning usb for storage devices...
Use USB retry period from the environment: 15 second(s)
1 Storage Device(s) found
5435888 bytes read in 1095 ms (4.7 MiB/s)
9671091 bytes read in 1089 ms (8.5 MiB/s)
## Booting kernel from Legacy Image at 00800000 ...
   Image Name:   Linux-5.13.6-kirkwood-tld-1
   Created:      2021-09-24   0:22:58 UTC
   Image Type:   ARM Linux Kernel Image (uncompressed)
   Data Size:    5435824 Bytes = 5.2 MiB
   Load Address: 00008000
   Entry Point:  00008000
   Verifying Checksum ... OK
## Loading init Ramdisk from Legacy Image at 01100000 ...
   Image Name:   initramfs-5.13.6-kirkwood-tld-1
   Created:      2021-09-24   1:06:32 UTC
   Image Type:   ARM Linux RAMDisk Image (gzip compressed)
   Data Size:    9671027 Bytes = 9.2 MiB
   Load Address: 00000000
   Entry Point:  00000000
   Verifying Checksum ... OK
 

Starting kernel ...

I built an alternate boot usb flashdrive with Arch ALARM on it and it boots fine, comes up accessible via ssh on my network at the uboot setenv IP.

Tried the debian file system on different flash media, but got the same result. Perhaps I've screwed up some parameters in the setenv? I tried to use the defaults posted in this forum. Or maybe I need to do some work in /etc on the Debian filesystem?

Thanks in advance for your insight, and for continuing to update these cool little devices!

Best,
Pins
Re: Is it possible to have a Debian 11 Bullseye build for Pogo Armel?
January 22, 2022 04:44PM
Pins,

> U-Boot 2017.07-tld-1 (Sep 05 2017 - 00:13:18
> -0700)
> Pogo E02
> gcc (Debian 6.3.0-18) 6.3.0 20170516
> GNU ld (GNU Binutils for Debian) 2.28
> Hit any key to stop autoboot:  0
> starting USB...
> USB0:   USB EHCI 1.00
> scanning bus 0 for devices... 3 USB Device(s)
> found
>        scanning usb for storage devices...
> Use USB retry period from the environment: 15
> second(s)
> 1 Storage Device(s) found
> 5435888 bytes read in 1095 ms (4.7 MiB/s)
> 9671091 bytes read in 1089 ms (8.5 MiB/s)
> ## Booting kernel from Legacy Image at 00800000
> ...
>    Image Name:   Linux-5.13.6-kirkwood-tld-1
>    Created:      2021-09-24   0:22:58 UTC
>    Image Type:   ARM Linux Kernel Image
> (uncompressed)
>    Data Size:    5435824 Bytes = 5.2 MiB
>    Load Address: 00008000
>    Entry Point:  00008000
>    Verifying Checksum ... OK
> ## Loading init Ramdisk from Legacy Image at
> 01100000 ...
>    Image Name:   initramfs-5.13.6-kirkwood-tld-1
>    Created:      2021-09-24   1:06:32 UTC
>    Image Type:   ARM Linux RAMDisk Image (gzip
> compressed)
>    Data Size:    9671027 Bytes = 9.2 MiB
>    Load Address: 00000000
>    Entry Point:  00000000
>    Verifying Checksum ... OK
>  
> 
> Starting kernel ...

Your boot log above told me that the envs are wrong. With this new u-boot, the DTB is supposed to be loaded.


> I built an alternate boot usb flashdrive with Arch
> ALARM on it and it boots fine, comes up accessible
> via ssh on my network at the uboot setenv IP.

The current envs does not load the DTB file, so it will boot with an ALARM rootfs that has the DTB embedded inside uImage.

So I suspect your envs were modified incorrectly after you've installed U-Boot 2017.07-tld-1. Or you did not flash the default env image in Step 8

Quote

8. Flashing default u-boot envs image (if you are upgrading from 2016.05-tld-1 u-boot, you can skip this step 8).

The first step to fix them is to list the envs

Boot up, interrupt netconsole countdown and then,
printenv
Or also in ALARM
fw_printenv

The listing will allow me to see where the problem is.

=======

Alternatively, you can restore the correct set of envs while u-boot booting using uEnv.txt. This file will repopulate the envs (in memroy only) when u-boot starts. Example:

https://forum.doozan.com/read.php?3,118374,118394#msg-118394

You DTB is Pogo E02, so the dtb_file variable should be:
dtb_file=/boot/dts/kirkwood-pogo_e02.dtb

Since the default envs alrready have kirkwood-pogo_e02.dtb. You could boot without changing anything in the uEnv.txt. Just copy it

cp -a uboot.2016.05-tld-1.environment uEnv.txt

-bodhi
===========================
Forum Wiki
bodhi's corner (buy bodhi a beer)
Thanks very much for the quick reply @bodhi! You are spot on, I have messed up my env.

I tried the alternative you mentioned so as not to bother you again, but without success:
PogoE02> boot
boot
starting USB...
USB0:   USB EHCI 1.00
scanning bus 0 for devices... 3 USB Device(s) found
       scanning usb for storage devices...
Use USB retry period from the environment: 15 second(s)
1 Storage Device(s) found
Unknown command 'ide' - try 'help'
Unknown command 'mmc' - try 'help'

Partition Map for USB device 0  --   Partition Type: DOS

Part    Start Sector    Num Sectors     UUID            Type
  1     2048            6291456         00000000-01     83

## Unknown partition table type 0

## Unknown partition table type 0

## Unknown partition table type 0

## Unknown partition table type 0

## Unknown partition table type 0

## Unknown partition table type 0
loading envs from usb 0 ...
2773 bytes read in 831 ms (2.9 KiB/s)
Unknown command 'ide' - try 'help'
Unknown command 'mmc' - try 'help'
importing envs ...
And there it stops with an orange light. Looked for 192.168.0.231 on the router just in case, but nothing there.

Here's the current printenv (rescue with OpenWRT is working):
PogoE02> printenv
printenv 
baudrate=115200
bootcmd=run bootcmd_uenv; run scan_disk; run set_bootargs; run bootcmd_usb; run 
bootcmd_exec; run bootcmd_lede
bootcmd_exec=run load_uimage; if run load_initrd; then if run load_dtb; then boo
tm $load_uimage_addr $load_initrd_addr $load_dtb_addr; else bootm $load_uimage_a
ddr $load_initrd_addr; fi; else if run load_dtb; then bootm $load_uimage_addr - 
$load_dtb_addr; else bootm $load_uimage_addr; fi; fi
bootcmd_lede=run set_bootargs_lede; ubi part ubi; ubi read 0x800000 kernel; boot
m 0x800000
bootcmd_mmc=run mmc_init; run set_bootargs_mmc; run mmc_boot
bootcmd_sata=run sata_init; run set_bootargs_sata; run sata_boot;
bootcmd_uenv=run uenv_load; if test $uenv_loaded -eq 1; then run uenv_import; fi
bootcmd_usb=run usb_init; run set_bootargs_usb; run usb_boot;
bootdelay=10
bootdev=usb
console=ttyS0,115200
device=0:1
devices=usb ide mmc
disks=0 1 2 3
dtb_file=/boot/dts/kirkwood-pogo_e02.dtb
ethact=egiga0
ethaddr=00:25:31:00:82:6C
if_netconsole=ping $serverip
ipaddr=192.168.0.46
led_error=orange blinking
led_exit=green off
led_init=green blinking
load_dtb=echo loading DTB $dtb_file ...; load $bootdev $device $load_dtb_addr $dtb_file  
load_dtb_addr=0x1c00000
load_initrd=echo loading uInitrd ...; load $bootdev $device $load_initrd_addr /boot/uInitrd
load_initrd_addr=0x1100000
load_uimage=echo loading uImage ...; load $bootdev $device $load_uimage_addr /boot/uImage
load_uimage_addr=0x800000
machid=0x831
mainlineLinux=yes
mmc_boot=mw 0x800000 0 1; run mmc_load_uimage; if run mmc_load_uinitrd; then bootm 0x800000 0x1100000; else bootm 0x800000; fi
mmc_init=mmc rescan
mmc_load_uimage=ext2load mmc $device 0x800000 /boot/uImage
mmc_load_uinitrd=ext2load mmc $device 0x1100000 /boot/uInitrd
mmc_root=/dev/mmcblk0p1
mtddevname=rootfs
mtddevnum=2
mtdids=nand0=orion_nand
mtdparts=mtdparts=orion_nand:0x100000@0x0(u-boot),-@0x100000(ubi)
nc_ready=1
ncip=192.168.0.4
partition=nand0,0
preboot=run preboot_nc
preboot_nc=setenv nc_ready 0; for pingstat in 1 2 3 4 5; do; sleep 1; if run if_netconsole; then setenv nc_ready 1; fi; done; if test $nc_ready -eq 1; then run start_netconsole; fi
rootdelay=10
rootfstype=ext3
sata_boot=mw 0x800000 0 1; run sata_load_uimage; if run sata_load_uinitrd; then bootm 0x800000 0x1100000; else bootm 0x800000; fi
sata_init=ide reset
sata_load_uimage=ext2load ide $device 0x800000 /boot/uImage
sata_load_uinitrd=ext2load ide $device 0x1100000 /boot/uInitrd
sata_root=/dev/sda1
scan_disk=echo running scan_disk ...; scan_done=0; setenv scan_usb "usb start";  setenv scan_ide "ide reset";  setenv scan_mmc "mmc rescan"; for dev in $devices; do if test $scan_done -eq 0; then echo Scan device $dev; run scan_$dev; for disknum in $disks; do if test $scan_done -eq 0; then echo device $dev $disknum:1; if load $dev $disknum:1 $load_uimage_addr /boot/uImage 1; then scan_done=1; echo Found bootable drive on $dev $disknum; setenv device $disknum:1; setenv bootdev $dev; fi; fi; done; fi; done
serverip=192.168.0.4
set_bootargs=setenv bootargs console=ttyS0,115200 root=LABEL=rootfs rootdelay=10 $mtdparts $custom_params
set_bootargs_lede=setenv bootargs console=ttyS0,115200 $mtdparts
set_bootargs_mmc=setenv bootargs console=$console root=$mmc_root rootdelay=$rootdelay rootfstype=$rootfstype $mtdparts
set_bootargs_sata=setenv bootargs console=$console root=$sata_root rootdelay=$rootdelay rootfstype=$rootfstype $mtdparts
set_bootargs_usb=setenv bootargs console=$console root=$usb_root rootdelay=$rootdelay rootfstype=$rootfstype $mtdparts
start_netconsole=setenv ncip $serverip; setenv bootdelay 10; setenv stdin nc; setenv stdout nc; setenv stderr nc; version;
stderr=nc
stdin=nc 
stdout=nc
uenv_addr=0x810000
uenv_import=echo importing envs ...; env import -t $uenv_addr $filesize
uenv_init_devices=setenv init_usb "usb start";  setenv init_ide "ide reset";  setenv init_mmc "mmc rescan"; for devtype in $devices; do run init_$devtype; done;
uenv_load=run uenv_init_devices; setenv uenv_loaded 0; for devtype in $devices;  do for disknum in 0; do run uenv_read_disk; done; done;
uenv_read=echo loading envs from $devtype $disknum ...; if load $devtype $disknum:1 $uenv_addr /boot/uEnv.txt; then setenv uenv_loaded 1; fi
uenv_read_disk=if test $devtype -eq mmc; then if $devtype part; then run uenv_read;  fi; else if $devtype part $disknum; then run uenv_read; fi;  fi
usb_boot=mw 0x800000 0 1; run usb_load_uimage; if run usb_load_uinitrd; then bootm 0x800000 0x1100000; else bootm 0x800000; fi
usb_init=usb start
usb_load_uimage=ext2load usb $device 0x800000 /boot/uImage
usb_load_uinitrd=ext2load usb $device 0x1100000 /boot/uInitrd
usb_ready_retry=15
usb_root=/dev/sda1

Environment size: 4779/131068 bytes
Thanks again for your insight and expertise!
Best,
Pins
Re: Is it possible to have a Debian 11 Bullseye build for Pogo Armel?
January 23, 2022 04:07PM
@pins,

> importing envs ...

It stuck here for whatever reason.

So let's try a different approach.

- Remove the uEnv.xt from the rootfs /boot so that it will not interfere with booting.

- With the Debian USB rootfs attached. Power up, interrupt netconsole and

setenv bootcmd 'run bootcmd_uenv; run scan_disk; run set_bootargs; run bootcmd_exec; run bootcmd_lede'
and then
boot

Once you 've booted into Debian, it will be easier to clean up the envs, or to reflash the default envs image.

-bodhi
===========================
Forum Wiki
bodhi's corner (buy bodhi a beer)
Bodhi -- you are a genius.

Linux debian 5.13.6-kirkwood-tld-1 #1.0 PREEMPT Sat Jul 31 22:10:39 PDT 2021 armv5tel

The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.

Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
Last login: Sat Sep 25 19:53:59 2021 from 192.168.0.100
debian
192.168.XX.XX 
CloudEngines Pogoplug E02
Linux version 5.13.6-kirkwood-tld-1 (root@tldDebian) (gcc (Debian 8.3.0-6) 8.3.0, GNU ld (GNU Binutils for Debian) 2.31.1) #1.0 PREEMPT Sat Jul 31 22:10:39 PDT 2021
Debian 11.0
Tue Jan 25 06:57:41 PST 2022 up 10 hours, 16 minutes
Thank you very much for all your help! I'll try to flash the default envs, then go back and make the updates for the rescue boot outlined in the wiki.

Again, really appreciate your work on this, it's a great asset to the community.

Best,
Pins
Author:

Subject:


Spam prevention:
Please, enter the code that you see below in the input field. This is for blocking bots that try to post this form automatically. If the code is hard to read, then just try to guess it right. If you enter the wrong code, a new image is created and you get another chance to enter it right.
Message: