Welcome! Log In Create A New Profile

Advanced

Linux Kernel 5.15.158 Oxnas (OX820) Pogo V3 package and Debian rootfs

Posted by bodhi 
Linux Kernel 5.15.158 Oxnas (OX820) Pogo V3 package and Debian rootfs
May 09, 2014 09:08PM
Linux Kernel 5.15.xx Oxnas package and rootfs for Pogoplug Pro V3 (with PCI) and Classic V3 (no PCI). Also the Medion Life P89626, Akitio Mycloud mini, and the possibly other OXNAS boxes such as Silverstone DC01, Iconbit I-STOR IS608 (under development). If you install this kernel on other OX820 boxes, please post your finding so it can be added to the supported list.

Latest released kernel: linux-5.15.158-oxnas-tld-2.bodhi.tar.bz2 (14 May 2024)
Latest released rootfs: Debian-5.15.158-oxnas-tld-2-rootfs-bodhi.tar.bz2 (16 May 2024)


Note: If this is your first time installation, then you only need rootfs Debian-5.15.158-oxnas-tld-2-rootfs-bodhi.tar.bz2 (this has kernel linux-5.15.158-oxnas-tld-2 already installed). Scroll down to 17 May 2020 section.

With this kernel we can run the Pogo V3 boxes with the latest U-Boot (e.g. 2013.10 and later). To run with stock U-Boot, use kernel 3.18.5 or earlier.

Summary decription:

The released tarball linux-x.xx.x-oxnas-tld-x-bodhi.tar.bz2 includes everything you need to build your own kernel from mainline kernel source tree (patches and config file are all that needed). The kernel image is included in it for users who just want to install kernel.

The released tarball Debian-x.xx.x-oxnas-tld-xx-rootfs-bodhi.tar.bz2 is a basic armel rootfs (a completed Debian system with kernel already installed) for Oxnas OX820 boxes ready to be used. It is a basic system where you can build upon by installing packages. This rootfs was created by Debian debootstrap and then a few packages were installed for user’s convenience. This rootfs is dedicated for the purpose of upgrading and release distribution.

Historical Background:

These 2 threads are included here for information and credits only, Dropbox download links and installation procedure are after the break below.
  • Booting Debian on Pogoplug Pro. This is the oldest thread, where we started with Arch Linux ARM kernel, and Debian squeeze rootfs. In the first post, you can find links for Varkey's squeeze rootfs, shv's wheezy rootfs, ingmar_k's Emdebian installation, and navym (kref)'s Arch thread about kernel 3.12+ and u-boot.
  • New uboot and kernel for Pogoplug v3/Pro. This thread is more recent, shv started this thread to bring attention about the new 3.12+ kernel activity at Arch site.

Credits:

Neil Armstrong (OXNAS maintainer) and Daniel Golle (OpenWRT). OpenWrt patches were adapted to this kernel for Debian (starting from kernel 4.4.x).

==============================================================
Updated 16 May 2024:

Rootfs Debian-5.15.158-oxnas-tld-2-rootfs-bodhi.tar.bz2 was uploaded.

Basic Debian bookworm Oxnas rootfs for Popo Pro/Classic V3 and other OX820 NAS.

- tarball size: 208M
- install size: 583M
- The init system used in this rootfs is sysvinit . To boot with systemd, see Notes below.
- Installed packages: nano, avahi, ntp, busybox-syslogd (log to RAM), htop, isc-dhcp-client, dialog, bzip2, nfs server/client, iperf, ethtool, sysvinit-core, sysvinit, sysvinit-utils, u-boot-tools, libubootenv-tool, mtd-utils, and orphan-sysvinit-scripts.
- see LED controls examples in /etc/rc.local, and /etc/init.d/halt
- see some useful aliases in /root/.profile
- root password: root

Download at Dropbox:

Debian-5.15.158-oxnas-tld-2-rootfs-bodhi.tar.bz2
md5: 
3c2324954e77237bf11e1512d7a0773a
sha256: 
da7a41dc4845b53cbddf1410cdff4c46e9828c66c503ccc22fd822a933857abc
And remember to check the hash of what you download, as always.

INSTALLATION:

Installation can be done on any Linux box, with a fresh USB drive (HDD would work fine too). It is assuming the USB drive is mounted at /media/sdb1.

Note: all steps below must be done while logging in as root user (not sudo). If you are not the root user then don't continue, because the rootfs will not work.

1. Format a new USB drive with a single Ext3 partition, and label it rootfs. If you are running the latest released uboot for OXNAS then you can use Ext4.

2. Mount the drive on a Linux box. cd to top level directory and extract it. It is assuming the USB drive is mounted at /media/sdb1
cd /media/sdb1 
tar xjf Debian-5.15.158-oxnas-tld-2-rootfs-bodhi.tar.bz2
sync

3. Adjust fstab (optional).

Edit /media/sdb1/etc/fstab entry for root device to match the rootfstype of your rootfstype if you use Ext4 or Ext2. However, you can keep it as Ext3 without problem in booting since the kernel will figure out which file system the rootfs was formatted.

LABEL=rootfs    /               ext3    noatime,errors=remount-ro 0 1


4. Create uImage with embedded DTB for booting with stock u-boot. Skip this step if you have installed the latest released uboot for OXNAS, or are installing this u-boot at the same time.

- If you have the Pogo V3 Classic (without Wifi), then the DTB name below should be ox820-pogoplug-classic.dtb (see below for the list of OX820 DTBs).

cd /media/sdb1/boot
cp -a uImage uImage.orig
cp -a zImage-5.15.158-oxnas-tld-2 zImage.fdt
cat dts/ox820-pogoplug-pro.dtb >> zImage.fdt
mkimage  -A arm -O linux -C none -T kernel -a 0x60008000 -e 0x60008000 -n 'Linux-5.15.158-oxnas-tld-2' -d zImage.fdt  uImage
sync

Note: The DTBs below are available for supported OXNAS boxes in /boot/dts/ folder:
ox820-pogoplug-pro.dtb
ox820-kd20.dtb
ox820-akitio.dtb
ox820-pogoplug-classic.dtb
ox820-stg212.dtb

- If your Linux box does not have mkimage, then install it

apt-get install u-boot-tools
or if you are creating this rootfs on an ARM box, then use the mkimage in this rootfs:

/media/sdb1/usr/bin/mkimage

5. Done installation. Take this USB rootfs to your plug and cold start.

After booted into Debian, see Notes below.


Note 1 (Strongly Recommended):

To keep the rootfs extremely basic and small, there is no swap space set up for it. The first thing you should do after the 1st boot is to set up a swap file to make the system run better. In fact, system upgrades oftently fail to run without swap. Please see here for instruction how to do that.


Note 2 (Optional):

The rootfs will automatically generate new SSH keys at 1st boot (see /etc/rc.local). However, if you would like to generate the keys again then do:

rm /etc/ssh/ssh_host*
ssh-keygen -A

Note 3 (Optional):

Update your rootfs to get the latest Debian package security updates (if the installation is done at a much later date than the time of this release).

Check the system clock to make sure it is the current time (boxes without RTC is using NTP so quite slow to update the clock).

date
And upgrade
apt-get update
apt-get upgrade

Warning: Watch the apt-get upgrade progress. If the apt-get upgrade results in a new initramfs, the log would shows this message:
update-initramfs: Generating /boot/initrd.img-5.15.158-oxnas-tld-2

Then you need to regenerate the uInitrd boot file:
cd /boot
cp -a uInitrd.bak
mkimage -A arm -O linux -T ramdisk -C gzip -a 0x60000000 -e 0x60000000 -n initramfs-5.15.158-oxnas-tld-2 -d initrd.img-5.15.158-oxnas-tld-2 uInitrd


For boxes without RTC , also consider install fake-hwclock to ensure the clock is relatively close to real time after a reboot or cold start.
apt-get install fake-hwclock

Note 4 (Optional):

Some network environment is not very robust in propagating the host name advertised by avahi. If you cannot find the host name (debian.local) of this rootfs in your network, you might need to install libnss-mdns.

apt-get install libnss-mdns

Note 5 (Optional):

Note 5.1. To boot with systemd

After loged into Debian, run:

apt-get install systemd
And then add parameter init=/usr/bin/systemd to your u-boot env bootargs.

- For example,
fw_setenv set_bootargs 'setenv bootargs console=ttyS0,115200 root=LABEL=rootfs rootdelay=10 $mtdparts init=/usr/bin/systemd'
- Or, if you are booting with my latest u-boot images you can also use the uEnv.txt capability to do this. In the default envs, custom_params is a variable that allows you to add extra bootargs. So add the following line to uEnv.txt:
custom_params=earlyprintk=serial init=/usr/bin/systemd

Note 5.2. To boot back to sysvinit

Reverse the env setting (there is no need to remove systemd, you can switch back and forth from/to sysvinit and systemd):
fw_setenv set_bootargs 'setenv bootargs console=ttyS0,115200 root=LABEL=rootfs rootdelay=10 $mtdparts'
Or if you've used uEnv.txt then just remove that from the custom_params env
custom_params=earlyprintk=serial

Note 6 (Optional):

For setting up wireless on the Pogo Pro, please see: http://forum.doozan.com/read.php?2,16044,20964#msg-20964

==============================================================
Updated 14 May 2024:

Kernel linux-5.15.158-oxnas-tld-2 package was uploaded.

New/Updated features:

- Start tracking Linux 5.15.x LTS kernel with this version.
- Added supports for running docker (SECCOMP, SECCOMP_FILTER, CGROUP_BPF, BPFILTER).
- Add CONFIG_USER_NS and CONFIG_MEMCG.
- Add CONFIG_LEDS_TRIGGER_CPU.
- Add Zydas Wifi module.
- Reconfigure ORANGEFS_FS to loadable module.
- Also see previous kernel (linux-5.4.268-oxnas-tld-1) release notes.

Latest Linux kernel 5.x general release information can be found at:
LinuxChanges log

Download at Dropbox

linux-5.15.158-oxnas-tld-2.bodhi.tar.bz2
md5:
c6ec48098bb8532c117defa55d53b58b
sha256:
19f5d245ef78ea2af28001038d46580bb4df90ae2ac31d27e46334269ea0bc1d

As always, please check the hash of what you download!

This tarball contains 6 files:

Quote

linux-image-5.15.158-oxnas-tld-2_2_armel.deb
linux-headers-5.15.158-oxnas-tld-2_2_armel.deb
config-5.15.158-oxnas-tld-2
zImage-5.15.158-oxnas-tld-2
linux-dtb-5.15.158-oxnas-tld-2.tar
linux-5.15.158-oxnas-tld-2.patch

Installation:

A. Installation to run with new U-Boot in NAND (see new U-Boot thread here)

1. Backup your current uImage and uInitrd and other kernel files. In the /boot directory, these are files for your current kernel (xx.xx.xx is the version number):

Quote

uInitrd
uImage
initrd.img-xx.xx.xx-xxx
System.map-xx.xx.xx-xxx
vmlinuz-xx.xx.xx-xxx
config-xx.xx.xx-xxx
dts/

2. Extract the kernel in the archive:
cd /boot
tar -xjf linux-5.15.158-oxnas-tld-2.bodhi.tar.bz2

3. Extract the tarball for the dtb files
cd /boot
tar -xf linux-dtb-5.15.158-oxnas-tld-2.tar

4. And install it with dpkg. Remove flash-kernel first to avoid potential problem.
cd /boot
apt-get remove flash-kernel 
dpkg -i linux-image-5.15.158-oxnas-tld-2_2_armel.deb

5. Create uImage and uInitrd manually (kernel files vmlinuz-5.15.158-oxnas-tld-2 and initrd.img-5.15.158-oxnas-tld-2 were generated by the dpkg command in step 4) :
cd /boot
mv uImage uImage.bak
mv uInitrd uInitrd.bak
mkimage -A arm -O linux -T kernel -C none -a 0x60008000 -e 0x60008000 -n Linux-5.15.158-oxnas-tld-2 -d vmlinuz-5.15.158-oxnas-tld-2 uImage
mkimage -A arm -O linux -T ramdisk -C gzip -a 0x60000000 -e 0x60000000 -n initramfs-5.15.158-oxnas-tld-2  -d initrd.img-5.15.158-oxnas-tld-2 uInitrd

6. Set up U-Boot envs (Skip this step 6 if already done in previous kernel installtion).

6.a Set the env for DTB to the box name

Note: You must have the latest U-Boot (e.g. 2013.10 and later) installed to do this step.

If you have the Pogo V3 Pro (with PCI) then there is no need to adjust the DTB variable. If you have other boxes such as the Pogo V3 Classic (no Wifi), then make sure you have the right DTB name in dtb_file env. Other envs in the default can be adjusted later after booted into Debian.

For example, check the DTB (this is when you have the Pogo V3 Classic):
fw_printenv dtb_file
output:
dtb_file=/boot/dts/ox820-pogoplug-classic.dtb

Set the env if necessary
fw_setenv dtb_file '/boot/dts/ox820-pogoplug-classic.dtb'

Note: The DTBs are available for supported OXNAS boxes in /boot/dts/ folder:
ox820-pogoplug-pro.dtb
ox820-kd20.dtb
ox820-akitio.dtb
ox820-pogoplug-classic.dtb
ox820-stg212.dtb

6.b. In recent kernels, in order to see and set u-boot envs correctly in Debian, this env needs to be updated:

fw_setenv mtdparts 'mtdparts=41000000.nand-controller:14m(boot),-(data)'


7. Sync. And reboot
sync
sync 
sync
shutdown -r now

B. Installation to run with stock U-Boot in NAND

Deprecated.

DONE.

==============================================================
Updated 12 Feb 2024:

Kernel linux-5.4.268-oxnas-tld-1 package was uploaded.

New/Updated features:

- General kernel upgrade.
- Added support for JFFS2 file system.
- Disabled CONFIG_CPU_SW_DOMAIN_PAN (to support running pihole).
- Also see previous kernel (linux-5.4.224-oxnas-tld-1) release notes if you're skipping version.

Latest Linux kernel 5.x general release information can be found at:
LinuxChanges log

Download at Dropbox

linux-5.4.268-oxnas-tld-1.bodhi.tar.bz2

md5:
6f94fa2af31b1bcbf4cda452ae9333ef
sha256:
bbb1ee7568c630d85ff84d2a09f679e7c806b6dc86ffce4c9e919b34eddbd31a

As always, please check the hash of what you download!

This tarball contains 6 files:

Quote

linux-image-5.4.268-oxnas-tld-1_1_armel.deb
linux-headers-5.4.268-oxnas-tld-1_1_armel.deb
config-5.4.268-oxnas-tld-1
zImage-5.4.268-oxnas-tld-1
linux-dtb-5.4.268-oxnas-tld-1.tar
linux-5.4.268-oxnas-tld-1.patch


Installation:

A. Installation to run with new U-Boot in NAND (see new U-Boot thread here)

1. Backup your current uImage and uInitrd and other kernel files. In the /boot directory, these are files for your current kernel (xx.xx.xx is the version number):

Quote

uInitrd
uImage
initrd.img-xx.xx.xx-xxx
System.map-xx.xx.xx-xxx
vmlinuz-xx.xx.xx-xxx
config-xx.xx.xx-xxx
dts/

2. Extract the kernel in the archive:
cd /boot
tar -xjf linux-5.4.268-oxnas-tld-1.bodhi.tar.bz2

3. Extract the tarball for the dtb files
cd /boot
tar -xf linux-dtb-5.4.268-oxnas-tld-1.tar

4. And install it with dpkg. Remove flash-kernel first to avoid potential problem.
cd /boot
apt-get remove flash-kernel 
dpkg -i linux-image-5.4.268-oxnas-tld-1_1_armel.deb

5. Create uImage and uInitrd manually (kernel files vmlinuz-5.4.268-oxnas-tld-1 and initrd.img-5.4.268-oxnas-tld-1 were generated by the dpkg command in step 4) :
cd /boot
mv uImage uImage.bak
mv uInitrd uInitrd.bak
mkimage -A arm -O linux -T kernel -C none -a 0x60008000 -e 0x60008000 -n Linux-5.4.268-oxnas-tld-1 -d vmlinuz-5.4.268-oxnas-tld-1 uImage
mkimage -A arm -O linux -T ramdisk -C gzip -a 0x60000000 -e 0x60000000 -n initramfs-5.4.268-oxnas-tld-1  -d initrd.img-5.4.268-oxnas-tld-1 uInitrd

6. Set up U-Boot envs (Skip this step 6 if already done in previous kernel installtion).

6.a Set the env for DTB to the box name

Note: You must have the latest U-Boot (e.g. 2013.10 and later) installed to do this step.

If you have the Pogo V3 Pro (with PCI) then there is no need to adjust the DTB variable. If you have other boxes such as the Pogo V3 Classic (no Wifi), then make sure you have the right DTB name in dtb_file env. Other envs in the default can be adjusted later after booted into Debian.

For example, check the DTB (this is when you have the Pogo V3 Classic):
fw_printenv dtb_file
output:
dtb_file=/boot/dts/ox820-pogoplug-classic.dtb

Set the env if necessary
fw_setenv dtb_file '/boot/dts/ox820-pogoplug-classic.dtb'

Note: The DTBs are available for supported OXNAS boxes in /boot/dts/ folder:
ox820-pogoplug-pro.dtb
ox820-kd20.dtb
ox820-akitio.dtb
ox820-pogoplug-classic.dtb
ox820-stg212.dtb

6.b. In recent kernels, in order to see and set u-boot envs correctly in Debian, this env needs to be updated:

fw_setenv mtdparts 'mtdparts=41000000.nand-controller:14m(boot),-(data)'


7. Sync. And reboot
sync
sync 
sync
shutdown -r now

B. Installation to run with stock U-Boot in NAND

Deprecated.

DONE.

==============================================================
Updated 16 Nov 2022:

Kernel linux-5.4.224-oxnas-tld-1 package was uploaded.

New/Update features:

- General kernel upgrade.
- Fixed Shuttle OmniNAS KD20 DTB.
- See Step 6b for important update in u-boot envs
- Note: I would recommend removing netconsole support from the rootfs for the OXNAS box, if you have set it up with this tutorial: "Use netconsole to troubleshoot Debian kernel booting". It has been quite unreliable using netconsole in OXNAS kernel, and you could get stuck at the network bring up. OTOH, netconsole setup during u-boot booting is OK, working as intended.


Latest Linux kernel 5.x general release information can be found at:
LinuxChanges log

Download at Dropbox

linux-5.4.224-oxnas-tld-1.bodhi.tar.bz2

md5:
6d0fe76b78ff88042d198f5c846e5a54
sha256:
8fd5077751afeff859aef79923f68718659f184a915b61607a00996671b4d4bf

As always, please check the hash of what you download!

This tarball contains 6 files:

Quote

linux-image-5.4.224-oxnas-tld-1_1.0_armel.deb
linux-headers-5.4.224-oxnas-tld-1_1.0_armel.deb
config-5.4.224-oxnas-tld-1
zImage-5.4.224-oxnas-tld-1
linux-dtb-5.4.224-oxnas-tld-1.tar
linux-5.4.224-oxnas-tld-1.patch


Installation:

A. Installation to run with new U-Boot in NAND (see new U-Boot thread here)

1. Backup your current uImage and uInitrd and other kernel files. In the /boot directory, these are files for your current kernel (xx.xx.xx is the version number):

Quote

uInitrd
uImage
initrd.img-xx.xx.xx-xxx
System.map-xx.xx.xx-xxx
vmlinuz-xx.xx.xx-xxx
config-xx.xx.xx-xxx
dts/

2. Extract the kernel in the archive:
cd /boot
tar -xjf linux-5.4.224-oxnas-tld-1.bodhi.tar.bz2

3. Extract the tarball for the dtb files
cd /boot
tar -xf linux-dtb-5.4.224-oxnas-tld-1.tar

4. And install it with dpkg. Remove flash-kernel first to avoid potential problem.
cd /boot
apt-get remove flash-kernel 
dpkg -i linux-image-5.4.224-oxnas-tld-1_1.0_armel.deb

5. Create uImage and uInitrd manually (kernel files vmlinuz-5.4.224-oxnas-tld-1 and initrd.img-5.4.224-oxnas-tld-1 were generated by the dpkg command in step 4) :
cd /boot
mv uImage uImage.bak
mv uInitrd uInitrd.bak
mkimage -A arm -O linux -T kernel -C none -a 0x60008000 -e 0x60008000 -n Linux-5.4.224-oxnas-tld-1 -d vmlinuz-5.4.224-oxnas-tld-1 uImage
mkimage -A arm -O linux -T ramdisk -C gzip -a 0x60000000 -e 0x60000000 -n initramfs-5.4.224-oxnas-tld-1  -d initrd.img-5.4.224-oxnas-tld-1 uInitrd

6. Setup U-Boot envs:

6.a Set the env for DTB to the box name

Note: You must have the latest U-Boot (e.g. 2013.10 and later) installed to do this step.

If you have the Pogo V3 Pro (with PCI) then there is no need to adjust the DTB variable. If you have other boxes such as the Pogo V3 Classic (no Wifi), then make sure you have the right DTB name in dtb_file env. Other envs in the default can be adjusted later after booted into Debian.

For example, check the DTB (this is when you have the Pogo V3 Classic):
fw_printenv dtb_file
output:
dtb_file=/boot/dts/ox820-pogoplug-classic.dtb

Set the env if necessary
fw_setenv dtb_file '/boot/dts/ox820-pogoplug-classic.dtb'

Note: The DTBs are available for supported OXNAS boxes in /boot/dts/ folder:
ox820-pogoplug-pro.dtb
ox820-kd20.dtb
ox820-akitio.dtb
ox820-pogoplug-classic.dtb
ox820-stg212.dtb

6.b. In recent kernels, in order to see and set u-boot envs correctly in Debian, this env needs to be updated:

fw_setenv mtdparts 'mtdparts=41000000.nand-controller:14m(boot),-(data)'


7. Sync. And reboot
sync
sync 
sync
shutdown -r now

B. Installation to run with stock U-Boot in NAND

Deprecated.

DONE.

==============================================================
Updated 26 Aug 2022:

Kernel linux-5.4.210-oxnas-tld-1 package was uploaded.

New/Update features:

- General kernel upgrade.
- Move MTD_BLOCK devices to loadable module (so the kernel will not scan MTD partitions too early and spit out error messages).
- Note for the Shuttle OmniNAS KD20: I'm working on some problem with the DTB.
- See Step 6b for important update in u-boot envs


Latest Linux kernel 5.x general release information can be found at:
LinuxChanges log

Download at Dropbox

linux-5.4.210-oxnas-tld-1.bodhi.tar.bz2 (please let me know if this link is not working for you at your location)

md5:
add714158e554e998c1cd218b0fbc362 linux-5.4.210-oxnas-tld-1.bodhi.tar.bz2
sha256:
d6e79689357a021318fb33511544edeb2ae3248c1da5e6110c1f9831b42fd2dc linux-5.4.210-oxnas-tld-1.bodhi.tar.bz2

As always, please check the hash of what you download!

This tarball contains 6 files:

Quote

linux-image-5.4.210-oxnas-tld-1_1.0_armel.deb
linux-headers-5.4.210-oxnas-tld-1_1.0_armel.deb
config-5.4.210-oxnas-tld-1
zImage-5.4.210-oxnas-tld-1
linux-dtb-5.4.210-oxnas-tld-1.tar
linux-5.4.210-oxnas-tld-1.patch


Installation:

A. Installation to run with new U-Boot in NAND (see new U-Boot thread here)

1. Backup your current uImage and uInitrd and other kernel files. In the /boot directory, these are files for your current kernel (xx.xx.xx is the version number):

Quote

uInitrd
uImage
initrd.img-xx.xx.xx-xxx
System.map-xx.xx.xx-xxx
vmlinuz-xx.xx.xx-xxx
config-xx.xx.xx-xxx
dts/

2. Extract the kernel in the archive:
cd /boot
tar -xjf linux-5.4.210-oxnas-tld-1.bodhi.tar.bz2

3. Extract the tarball for the dtb files
cd /boot
tar -xf linux-dtb-5.4.210-oxnas-tld-1.tar

4. And install it with dpkg. Remove flash-kernel first to avoid potential problem.
cd /boot
apt-get remove flash-kernel 
dpkg -i linux-image-5.4.210-oxnas-tld-1_1.0_armel.deb

5. Create uImage and uInitrd manually (kernel files vmlinuz-5.4.210-oxnas-tld-1 and initrd.img-5.4.210-oxnas-tld-1 were generated by the dpkg command in step 4) :
cd /boot
mv uImage uImage.bak
mv uInitrd uInitrd.bak
mkimage -A arm -O linux -T kernel -C none -a 0x60008000 -e 0x60008000 -n Linux-5.4.210-oxnas-tld-1 -d vmlinuz-5.4.210-oxnas-tld-1 uImage
mkimage -A arm -O linux -T ramdisk -C gzip -a 0x60000000 -e 0x60000000 -n initramfs-5.4.210-oxnas-tld-1  -d initrd.img-5.4.210-oxnas-tld-1 uInitrd

6. Setup U-Boot envs:

6.a Set the env for DTB to the box name

Note: You must have the latest U-Boot (e.g. 2013.10 and later) installed to do this step.

If you have the Pogo V3 Pro (with PCI) then there is no need to adjust the DTB variable. If you have other boxes such as the Pogo V3 Classic (no Wifi), then make sure you have the right DTB name in dtb_file env. Other envs in the default can be adjusted later after booted into Debian.

For example, check the DTB (this is when you have the Pogo V3 Classic):
fw_printenv dtb_file
output:
dtb_file=/boot/dts/ox820-pogoplug-classic.dtb

Set the env if necessary
fw_setenv dtb_file '/boot/dts/ox820-pogoplug-classic.dtb'

Note: The DTBs are available for supported OXNAS boxes in /boot/dts/ folder:
ox820-pogoplug-pro.dtb
ox820-kd20.dtb
ox820-akitio.dtb
ox820-pogoplug-classic.dtb
ox820-stg212.dtb

6.b. In recent kernels, in order to see and set u-boot envs correctly in Debian, this env needs to be updated:

fw_setenv mtdparts 'mtdparts=41000000.nand-controller:14m(boot),-(data)'


7. Sync. And reboot
sync
sync 
sync
shutdown -r now

B. Installation to run with stock U-Boot in NAND

Deprecated.

DONE.

==============================================================
Updated 22 Feb 2022:

Kernel linux-5.4.179-oxnas-tld-1 package was uploaded.

New/Update features:

- General kernel upgrade.
- Note for the Shuttle OmniNAS KD20: I'm working on some problem with the DTB.
Please use the kernel 5.4.101-oxnas-tld-1 DTB for this box.

Latest Linux kernel 5.x general release information can be found at:
LinuxChanges log

Download at Dropbox

linux-5.4.179-oxnas-tld-1.bodhi.tar.bz2

md5:
febd44bcc7cda549d702c5aa42f4665a
sha256:
c8ec3d1320d5e9a2d5ce22dd726299e8549cf116332c021e4bdd19510c496ac7

As always, please check the hash of what you download!

This tarball contains 6 files:

Quote

linux-image-5.4.179-oxnas-tld-1_1.0_armel.deb
linux-headers-5.4.179-oxnas-tld-1_1.0_armel.deb
config-5.4.179-oxnas-tld-1
zImage-5.4.179-oxnas-tld-1
linux-dtb-5.4.179-oxnas-tld-1.tar
linux-5.4.179-oxnas-tld-1.patch

Installation:

A. Installation to run with new U-Boot in NAND (see new U-Boot thread here)

1. Backup your current uImage and uInitrd and other kernel files. In the /boot directory, these are files for your current kernel (xx.xx.xx is the version number):

Quote

uInitrd
uImage
initrd.img-xx.xx.xx-xxx
System.map-xx.xx.xx-xxx
vmlinuz-xx.xx.xx-xxx
config-xx.xx.xx-xxx
dts/

2. Extract the kernel in the archive:
cd /boot
tar -xjf linux-5.4.179-oxnas-tld-1.bodhi.tar.bz2

3. Extract the tarball for the dtb files
cd /boot
tar -xf linux-dtb-5.4.179-oxnas-tld-1.tar

4. And install it with dpkg. Remove flash-kernel first to avoid potential problem.
cd /boot
apt-get remove flash-kernel 
dpkg -i linux-image-5.4.179-oxnas-tld-1_1.0_armel.deb

5. Create uImage and uInitrd manually (kernel files vmlinuz-5.4.179-oxnas-tld-1 and initrd.img-5.4.179-oxnas-tld-1 were generated by the dpkg command in step 4) :
cd /boot
mv uImage uImage.bak
mv uInitrd uInitrd.bak
mkimage -A arm -O linux -T kernel -C none -a 0x60008000 -e 0x60008000 -n Linux-5.4.179-oxnas-tld-1 -d vmlinuz-5.4.179-oxnas-tld-1 uImage
mkimage -A arm -O linux -T ramdisk -C gzip -a 0x60000000 -e 0x60000000 -n initramfs-5.4.179-oxnas-tld-1  -d initrd.img-5.4.179-oxnas-tld-1 uInitrd

6. Setup U-Boot envs:

Note: You must have the latest U-Boot (e.g. 2013.10 and later) installed to do this step.

If you have the Pogo V3 Pro (with PCI) then there is no need to adjust the DTB variable. If you have other boxes such as the Pogo V3 Classic (no Wifi), then make sure you have the right DTB name in dtb_file env. Other envs in the default can be adjusted later after booted into Debian.

For example, check the DTB (this is when you have the Pogo V3 Classic):
fw_printenv dtb_file
output:
dtb_file=/boot/dts/ox820-pogoplug-classic.dtb

Set the env if necessary
fw_setenv dtb_file '/boot/dts/ox820-pogoplug-classic.dtb'

Note: The DTBs are available for supported OXNAS boxes in /boot/dts/ folder:
ox820-pogoplug-pro.dtb
ox820-kd20.dtb
ox820-akitio.dtb
ox820-pogoplug-classic.dtb
ox820-stg212.dtb


7. Sync. And reboot
sync
sync 
sync
shutdown -r now

B. Installation to run with stock U-Boot in NAND

Deprecated.

DONE.

==============================================================
Updated 28 Feb 20121:

Kernel linux-5.4.101-oxnas-tld-1 package was uploaded.

New/Update features:

- Rebased to track mainline 5.4.101

Latest Linux kernel 5.x general release information can be found at:
LinuxChanges log

Download at Dropbox

linux-5.4.101-oxnas-tld-1.bodhi.tar.bz2

md5:
e089bd4132236d0ee96b272248a32a63
sha256:
acc66835605b2923c0128eb4c901e3784e642dd2e0e37caf7cb0eab6143446fd

As always, please check the hash of what you download!

This tarball contains 6 files:

Quote

linux-image-5.4.101-oxnas-tld-1_1.0_armel.deb
linux-headers-5.4.101-oxnas-tld-1_1.0_armel.deb
config-5.4.101-oxnas-tld-1
zImage-5.4.101-oxnas-tld-1
linux-dtb-5.4.101-oxnas-tld-1.tar
linux-5.4.101-oxnas-tld-1.patch

Installation:

A. Installation to run with new U-Boot in NAND (see new U-Boot thread here)

1. Backup your current uImage and uInitrd and other kernel files. In the /boot directory, these are files for your current kernel (xx.xx.xx is the version number):

Quote

uInitrd
uImage
initrd.img-xx.xx.xx-xxx
System.map-xx.xx.xx-xxx
vmlinuz-xx.xx.xx-xxx
config-xx.xx.xx-xxx
dts/

2. Extract the kernel in the archive:
cd /boot
tar -xjf linux-5.4.101-oxnas-tld-1.bodhi.tar.bz2

3. Extract the tarball for the dtb files
cd /boot
tar -xf linux-dtb-5.4.101-oxnas-tld-1.tar

4. And install it with dpkg. Remove flash-kernel first to avoid potential problem.
cd /boot
apt-get remove flash-kernel 
dpkg -i linux-image-5.4.101-oxnas-tld-1_1.0_armel.deb

5. Create uImage and uInitrd manually (kernel files vmlinuz-5.4.101-oxnas-tld-1 and initrd.img-5.4.101-oxnas-tld-1 were generated by the dpkg command in step 4) :
cd /boot
mv uImage uImage.bak
mv uInitrd uInitrd.bak
mkimage -A arm -O linux -T kernel -C none -a 0x60008000 -e 0x60008000 -n Linux-5.4.101-oxnas-tld-1 -d vmlinuz-5.4.101-oxnas-tld-1 uImage
mkimage -A arm -O linux -T ramdisk -C gzip -a 0x60000000 -e 0x60000000 -n initramfs-5.4.101-oxnas-tld-1  -d initrd.img-5.4.101-oxnas-tld-1 uInitrd

6. Setup U-Boot envs:

Note: You must have the latest U-Boot (e.g. 2013.10 and later) installed to do this step.

If you have the Pogo V3 Pro (with PCI) then there is no need to adjust the DTB variable. If you have other boxes such as the Pogo V3 Classic (no Wifi), then make sure you have the right DTB name in dtb_file env. Other envs in the default can be adjusted later after booted into Debian.

For example, check the DTB (this is when you have the Pogo V3 Classic):
fw_printenv dtb_file
output:
dtb_file=/boot/dts/ox820-pogoplug-classic.dtb

Set the env if necessary
fw_setenv dtb_file '/boot/dts/ox820-pogoplug-classic.dtb'

Note: The DTBs are available for supported OXNAS boxes in /boot/dts/ folder:
ox820-pogoplug-pro.dtb
ox820-kd20.dtb
ox820-akitio.dtb
ox820-pogoplug-classic.dtb
ox820-stg212.dtb


7. Sync. And reboot
sync
sync 
sync
shutdown -r now

B. Installation to run with stock U-Boot in NAND

Deprecated.

DONE.


==============================================================
Updated 02 Oct 2020:

Kernel linux-4.14.198-oxnas-tld-1 package was uploaded.

New/Update features:

- Added broadcom b43 (CONFIG_B43) as loadable module
- Added REALTEK PHY (CONFIG_REALTEK_PHY)

Latest Linux kernel 4.x general release information can be found at:
LinuxChanges log

Download at Dropbox

linux-4.14.198-oxnas-tld-1.bodhi.tar.bz2

md5:
195b22e4ebd307cd0950326cd8c52620
sha256:
f298c5b133953640ca53612bd4c7a359c59dc0c0e02c7de66d0feb3aefc66513

As always, please check the hash of what you download!

This tarball contains 6 files:

Quote

linux-image-4.14.198-oxnas-tld-1_1.0_armel.deb
linux-headers-4.14.198-oxnas-tld-1_1.0_armel.deb
config-4.14.198-oxnas-tld-1
zImage-4.14.198-oxnas-tld-1
linux-dtb-4.14.198-oxnas-tld-1.tar
linux-4.14.198-oxnas-tld-1.patch


Installation:

A. Installation to run with new U-Boot in NAND (see new U-Boot thread here)

1. Backup your current uImage and uInitrd and other kernel files. In the /boot directory, these are files for your current kernel (xx.xx.xx is the version number):

Quote

uInitrd
uImage
initrd.img-xx.xx.xx-xxx
System.map-xx.xx.xx-xxx
vmlinuz-xx.xx.xx-xxx
config-xx.xx.xx-xxx
dts/

2. Extract the kernel in the archive:
cd /boot
tar -xjf linux-4.14.198-oxnas-tld-1.bodhi.tar.bz2

3. Extract the tarball for the dtb files
cd /boot
tar -xf linux-dtb-4.14.198-oxnas-tld-1.tar

4. And install it with dpkg. Remove flash-kernel first to avoid potential problem.
cd /boot
apt-get remove flash-kernel 
dpkg -i linux-image-4.14.198-oxnas-tld-1_1.0_armel.deb

5. Create uImage and uInitrd manually (kernel files vmlinuz-4.14.198-oxnas-tld-1 and initrd.img-4.14.198-oxnas-tld-1 were generated by the dpkg command in step 4) :
cd /boot
mv uImage uImage.bak
mv uInitrd uInitrd.bak
mkimage -A arm -O linux -T kernel -C none -a 0x60008000 -e 0x60008000 -n Linux-4.14.198-oxnas-tld-1 -d vmlinuz-4.14.198-oxnas-tld-1 uImage
mkimage -A arm -O linux -T ramdisk -C gzip -a 0x60000000 -e 0x60000000 -n initramfs-4.14.198-oxnas-tld-1  -d initrd.img-4.14.198-oxnas-tld-1 uInitrd

6. Setup U-Boot envs:

Note: Again, you must have the latest U-Boot (e.g. 2013.10 and later) installed to do this step.

If you have the Pogo Pro (with PCI) then there is no need to adjust the DTB variable. If you have other boxes such as the Pogo Classic (no PCI), then adjust the DTB name. Other envs in the default can be adjusted later after booted into Debian.

fw_setenv dtb_file '/boot/dts/ox820-pogoplug-classic.dtb'

Note: The DTBs are available for supported OXNAS boxes in /boot/dts/ folder:
ox820-pogoplug-pro.dtb
ox820-kd20.dtb
ox820-akitio.dtb
ox820-pogoplug-classic.dtb
ox820-stg212.dtb


7. Sync. Double check your u-boot envs, make sure there is no error. And reboot
sync
fw_printenv
reboot

B. Installation to run with stock U-Boot in NAND

Deprecated.

DONE.

==============================================================
Updated 17 May 2020:

Rootfs Debian-4.14.180-oxnas-tld-1-rootfs-bodhi.tar.bz2 was uploaded.

Basic Debian buster Oxnas rootfs for Popo Pro/Classic V3 and other OX820 NAS.

- tarball size: 187M
- install size: 497M
- Installed packages: nano, avahi, ntp, busybox-syslogd (log to RAM), htop, dialog, bz2, iperf, ethtool, sysvinit-core, sysvinit, sysvinit-utils, mtd-utils, u-boot-tools.
- see LED controls in /etc/rc.local, and /etc/rc0.d/K08halt
- see some useful aliases in /root/.profile
- root password: root

Download at Dropbox:

Debian-4.14.180-oxnas-tld-1-rootfs-bodhi.tar.bz2

md5:
a1204e4bd6d3b129d525bf18421cd3bb

sha256:
ea58957c269826f3b487606929148ddfd11fc512ae20de4088a9196b06238212

And remember to check the hash of what you download, as always.


INSTALLATION:

Installation can be done on any Linux box, with a fresh USB drive (HDD would work fine too). It is assuming the USB drive is mounted at /media/sdb1.

Note: all steps below must be done while logging in as root user (not sudo). If you are not the root user then don't continue, because the rootfs will not work.

1. Format a new USB drive with a single Ext3 partition, and label it rootfs. If you are running the latest released uboot for OXNAS then you can use Ext4.

2. Mount the drive on a Linux box. cd to top level directory and extract it. It is assuming the USB drive is mounted at /media/sdb1
cd /media/sdb1 
tar -xjf Debian-4.14.180-oxnas-tld-1-rootfs-bodhi.tar.bz2

3. Adjust fstab (optional).

Edit /media/sdb1/etc/fstab entry for root device to match the rootfstype of your rootfstype if you use Ext4 or Ext2. However, you can keep it as Ext3 without problem in booting since the kernel will figure out which file system the rootfs was formatted.

LABEL=rootfs    /               ext3    noatime,errors=remount-ro 0 1


4. Create uImage with embedded DTB for booting with stock u-boot. Skip this step if you have installed the latest released uboot for OXNAS, or are installing this u-boot at the same time.

- If you have the Pogo V3 Classic (without Wifi), then the DTB name below should be ox820-pogoplug-classic.dtb (see below for the list of OX820 DTBs).

cd /media/sdb1/boot
cp -a uImage uImage.orig
cp -a zImage-4.14.180-oxnas-tld-1 zImage.fdt
cat dts/ox820-pogoplug-pro.dtb >> zImage.fdt
mkimage  -A arm -O linux -C none -T kernel -a 0x60008000 -e 0x60008000 -n 'Linux-4.14.180-oxnas-tld-1' -d zImage.fdt  uImage
sync

Note: The DTBs are available for supported OXNAS boxes in /boot/dts/ folder:
ox820-pogoplug-pro.dtb
ox820-kd20.dtb
ox820-akitio.dtb
ox820-pogoplug-classic.dtb
ox820-stg212.dtb


- If your Linux box does not have mkimage, then install it

apt-get install u-boot-tools
or if you are creating this rootfs on an ARM box, then use the mkimage in this rootfs:

/media/sdb1/usr/bin/mkimage

5. Done installation. Take this USB rootfs to your plug and cold start.

After booted into Debian, see Note1, 2, and 3 below. It is very important that you do Note1 steps to secure your box.

=====

Note1:

After logging in this rootf the first time, remember to generate new SSH key to make it your own unique rootfs. And also update your rootfs to get the latest Debian package security updates:

rm /etc/ssh/ssh_host*
ssh-keygen -A

apt-get update
apt-get upgrade


Warning: Watch the apt-get upgrade progress. If the apt-get upgrade results in a new initramfs, the log would shows this message:

Quote

update-initramfs: Generating /boot/initrd.img-4.14.180-oxnas-tld-1

Then you need to regenerate the uInitrd boot file:

cd /boot
cp -a uInitrd.bak
mkimage -A arm -O linux -T ramdisk -C gzip -a 0x60000000 -e 0x60000000 -n initramfs-4.14.180-oxnas-tld-1 -d initrd.img-4.14.180-oxnas-tld-1 uInitrd

Note2:

To boot with systemd, add this parameter to your u-boot env bootargs. If you are booting with my latest released uboot for OXNAS then use the uEnv.txt capability to do this. See the instruction about uEnvt.txt in that thread.

init=/bin/systemd

For example, the bootarg for systemd was added to the end of this usb_set_bootargs env to set bootargs (on your box it might be different env):

fw_setenv usb_set_bootargs 'setenv bootargs console=$console root=$usb_root rootdelay=$usb_rootdelay rootfstype=$usb_rootfstype $mtdparts init=/bin/systemd'

If that's still not possible to run systemd, you might want to install it again:
apt-get install systemd
Also, check systemd location at /lib/systemd/systemd (/bin/systemd is a symlink to this binary).

Note3:

For setting up wireless on the Pogo Pro, please see: http://forum.doozan.com/read.php?2,16044,20964#msg-20964


==============================================================
Updated 14 May 2020:

Kernel linux-4.14.180-oxnas-tld-1 package was uploaded.

New/Update features:

- Pick up Security patch from mainline.
- Fix the SATA problem with Pogo V3 Pro.
- Enable the kernel to use the persistent MAC address passed by u-boot to bring up network.
- Add staging Wifi driver r8188eu.

Latest Linux kernel 4.x general release information can be found at:
LinuxChanges log

Download at Dropbox

linux-4.14.180-oxnas-tld-1.bodhi.tar.bz2

md5:
c5bf3cc531b3286f65eee4eae548a627
sha256:
000024921f29eea0b683d7170b12159c3ee7b4f940642116e7cbb4ed5dace996

As always, please check the hash of what you download!


This tarball contains 6 files:

Quote

linux-image-4.14.180-oxnas-tld-1_1.0_armel.deb
linux-headers-4.14.180-oxnas-tld-1_1.0_armel.deb
config-4.14.180-oxnas-tld-1
zImage-4.14.180-oxnas-tld-1
linux-dtb-4.14.180-oxnas-tld-1.tar
linux-4.14.180-oxnas-tld-1.patch


Installation:

A. Installation to run with new U-Boot in NAND (see new U-Boot thread here)

1. Backup your current uImage and uInitrd and other kernel files. In the /boot directory, these are files for your current kernel (xx.xx.xx is the version number):

Quote

uInitrd
uImage
initrd.img-xx.xx.xx-xxx
System.map-xx.xx.xx-xxx
vmlinuz-xx.xx.xx-xxx
config-xx.xx.xx-xxx
dts/

2. Extract the kernel in the archive:
cd /boot
tar -xjf linux-4.14.180-oxnas-tld-1.bodhi.tar.bz2

3. Extract the tarball for the dtb files
cd /boot
tar -xf linux-dtb-4.14.180-oxnas-tld-1.tar

4. And install it with dpkg. Remove flash-kernel first to avoid potential problem.
cd /boot
apt-get remove flash-kernel 
dpkg -i linux-image-4.14.180-oxnas-tld-1_1.0_armel.deb

5. Create uImage and uInitrd manually (kernel files vmlinuz-4.14.180-oxnas-tld-1 and initrd.img-4.14.180-oxnas-tld-1 were generated by the dpkg command in step 4) :
cd /boot
mv uImage uImage.bak
mv uInitrd uInitrd.bak
mkimage -A arm -O linux -T kernel -C none -a 0x60008000 -e 0x60008000 -n Linux-4.14.180-oxnas-tld-1 -d vmlinuz-4.14.180-oxnas-tld-1 uImage
mkimage -A arm -O linux -T ramdisk -C gzip -a 0x60000000 -e 0x60000000 -n initramfs-4.14.180-oxnas-tld-1  -d initrd.img-4.14.180-oxnas-tld-1 uInitrd

6. Setup U-Boot envs:

Note: Again, you must have the latest U-Boot (e.g. 2013.10 and later) installed to do this step.

If you have the Pogo Pro (with PCI) then there is no need to adjust the DTB variable. If you have other boxes such as the Pogo Classic (no PCI), then adjust the DTB name. Other envs in the default can be adjusted later after booted into Debian.

fw_setenv dtb_file '/boot/dts/ox820-pogoplug-classic.dtb'

Note: The DTBs are available for supported OXNAS boxes in /boot/dts/ folder:
ox820-pogoplug-pro.dtb
ox820-kd20.dtb
ox820-akitio.dtb
ox820-pogoplug-classic.dtb
ox820-stg212.dtb


7. Sync. Double check your u-boot envs, make sure there is no error. And reboot
sync
fw_printenv
reboot

B. Installation to run with stock U-Boot in NAND

Deprecated.

DONE.


==============================================================
Updated 26 Apr 2020:

Kernel linux-4.14.176-oxnas-tld-1 package was uploaded.

New/Update features:

NOTE: Please see this post for the new DTB tarball linux-dtb-4.14.176-oxnas-tld-2.tar (all OXNAS boxes). The new DTBs fix the SATA problem with Pogo Pro, and also enable the kernel to use the MAC address passed by u-boot to bring up network (fixed the problem with the MAC address generated randomly by the kernel)

- Add Button (event input) capability.
- Since this kernel release is a significant upgrade from previous 4.4.201 version (lots of changes internally since then), make sure to back up your rootfs before installation.

Latest Linux kernel 4.x general release information can be found at:
LinuxChanges log

Download at Dropbox

linux-4.14.176-oxnas-tld-1.bodhi.tar.bz2

md5:
db7361e9204ea33365a63dc687a72bf0
sha256:
f7923343fa1a41c8ab00d27dc6e401fc23a64ca7a02230ea21cb314a634d8cef

As always, please check the hash of what you download!

This tarball contains 6 files:

Quote

linux-image-4.14.176-oxnas-tld-1_1.0_armel.deb
linux-headers-4.14.176-oxnas-tld-1_1.0_armel.deb
config-4.14.176-oxnas-tld-1
zImage-4.14.176-oxnas-tld-1
linux-dtb-4.14.176-oxnas-tld-1.tar
linux-4.14.176-oxnas-tld-1.patch


Installation:

A. Installation to run with new U-Boot in NAND (see new U-Boot thread here)

1. Backup your current uImage and uInitrd and other kernel files. In the /boot directory, these are files for your current kernel (xx.xx.xx is the version number):

Quote

uInitrd
uImage
initrd.img-xx.xx.xx-xxx
System.map-xx.xx.xx-xxx
vmlinuz-xx.xx.xx-xxx
config-xx.xx.xx-xxx
dts/

2. Extract the kernel in the archive:
cd /boot
tar -xjf linux-4.14.176-oxnas-tld-1.bodhi.tar.bz2

3. Extract the tarball for the dtb files (Update: please use the DTB tarball linux-dtb-4.14.176-oxnas-tld-2.tar mentioned above).
cd /boot
tar -xf linux-dtb-4.14.176-oxnas-tld-2.tar

4. And install it with dpkg. Remove flash-kernel first to avoid potential problem.
cd /boot
apt-get remove flash-kernel 
dpkg -i linux-image-4.14.176-oxnas-tld-1_1.0_armel.deb

5. Create uImage and uInitrd manually (kernel files vmlinuz-4.14.176-oxnas-tld-1 and initrd.img-4.14.176-oxnas-tld-1 were generated by the dpkg command in step 4) :
cd /boot
mv uImage uImage.bak
mv uInitrd uInitrd.bak
mkimage -A arm -O linux -T kernel -C none -a 0x60008000 -e 0x60008000 -n Linux-4.14.176-oxnas-tld-1 -d vmlinuz-4.14.176-oxnas-tld-1 uImage
mkimage -A arm -O linux -T ramdisk -C gzip -a 0x60000000 -e 0x60000000 -n initramfs-4.14.176-oxnas-tld-1  -d initrd.img-4.14.176-oxnas-tld-1 uInitrd

6. Setup U-Boot envs:

Note: Again, you must have the latest U-Boot (e.g. 2013.10 and later) installed to do this step.

If you have the Pogo Pro (with PCI) then there is no need to adjust the DTB variable. If you have other boxes such as the Pogo Classic (no PCI), then adjust the DTB name. Other envs in the default can be adjusted later after booted into Debian.

fw_setenv dtb_file '/boot/dts/ox820-pogoplug-classic.dtb'

Note: The DTBs are available for supported OXNAS boxes in /boot/dts/ folder:
ox820-pogoplug-pro.dtb
ox820-kd20.dtb
ox820-akitio.dtb
ox820-pogoplug-classic.dtb
ox820-stg212.dtb


7. Sync. Double check your u-boot envs, make sure there is no error. And reboot
sync
fw_printenv
reboot

B. Installation to run with stock U-Boot in NAND

Deprecated.

DONE.


==============================================================
Updated 16 Nov 2019:

Kernel linux-4.4.201-oxnas-tld-1 package was uploaded.

New/Update features:

- Pickup security patches from mainline.
- This kernel header now can be installed and used to build modules, without any special tweaks (this issue was described here).

Latest Linux kernel 4.x general release information can be found at:
LinuxChanges log

Download at Dropbox

linux-4.4.201-oxnas-tld-1.bodhi.tar.bz2

md5:
3caf856c4167ebd90feafce4e441c25e
sha256:
e720a4092a4b5db5641097dabfe8f0c454776dc622c6c491495bca6e3ea49389

As always, please check the hash of what you download!


This tarball contains 6 files:

linux-image-4.4.201-oxnas-tld-1_1.0_armel.deb
linux-headers-4.4.201-oxnas-tld-1_1.0_armel.deb
config-4.4.201-oxnas-tld-1
zImage-4.4.201-oxnas-tld-1
linux-dtb-4.4.201-oxnas-tld-1.tar
linux-4.4.201-oxnas-tld-1.patch


Installation:

A. Installation to run with new U-Boot in NAND (see new U-Boot thread here)

1. Backup your current uImage and uInitrd and other kernel files. In the /boot directory, these are files for your current kernel (xx.xx.xx is the version number):

Quote

uInitrd
uImage
initrd.img-xx.xx.xx-xxx
System.map-xx.xx.xx-xxx
vmlinuz-xx.xx.xx-xxx
config-xx.xx.xx-xxx
dts/

2. Extract the kernel in the archive:
cd /boot
tar -xjf linux-4.4.201-oxnas-tld-1.bodhi.tar.bz2

3. Extract the tarball for the dtb files
cd /boot
tar -xf linux-dtb-4.4.201-oxnas-tld-1.tar

4. And install it with dpkg. Remove flash-kernel first to avoid potential problem.
cd /boot
apt-get remove flash-kernel 
dpkg -i linux-image-4.4.201-oxnas-tld-1_1.0_armel.deb

5. Create uImage and uInitrd manually (kernel files vmlinuz-4.4.201-oxnas-tld-1 and initrd.img-4.4.201-oxnas-tld-1 were generated by the dpkg command in step 4) :
cd /boot
mv uImage uImage.bak
mv uInitrd uInitrd.bak
mkimage -A arm -O linux -T kernel -C none -a 0x60008000 -e 0x60008000 -n Linux-4.4.201-oxnas-tld-1 -d vmlinuz-4.4.201-oxnas-tld-1 uImage
mkimage -A arm -O linux -T ramdisk -C gzip -a 0x60000000 -e 0x60000000 -n initramfs-4.4.201-oxnas-tld-1  -d initrd.img-4.4.201-oxnas-tld-1 uInitrd

6. Setup U-Boot envs:

Note: Again, you must have the latest U-Boot (e.g. 2013.10 and later) installed to do this step.

If you have the Pogo Pro (with PCI) then there is no need to adjust the DTB variable. If you have other boxes such as the Pogo Classic (no PCI), then adjust the DTB name. Other envs in the default can be adjusted later after booted into Debian.

fw_setenv dtb_file '/boot/dts/ox820-pogoplug-classic.dtb'

Note: The DTBs are available for supported OXNAS boxes in /boot/dts/ folder:
ox820-pogoplug-pro.dtb
ox820-kd20.dtb
ox820-akitio.dtb
ox820-pogoplug-classic.dtb
ox820-stg212.dtb


7. Sync. Double check your u-boot envs, make sure there is no error. And reboot
sync
fw_printenv
reboot

B. Installation to run with stock U-Boot in NAND

Deprecated.


DONE.


==============================================================
Updated 21 Aug 2019:

Kernel linux-4.4.189-oxnas-tld-1 package was uploaded.

New/Update features:

- Pickup security patches from mainline.

Latest Linux kernel 4.x general release information can be found at:
LinuxChanges log

Download at Dropbox

linux-4.4.189-oxnas-tld-1.bodhi.tar.bz2

md5:
dc8e78a421f862922e40f68bac4ddc97
sha256:
d910a9e70259cc436c2f5674e59232d16a489830f99d5eb18b82f40ef67b1f87

As always, please check the hash of what you download!


This tarball contains 6 files:

linux-image-4.4.189-oxnas-tld-1_1.0_armel.deb
linux-headers-4.4.189-oxnas-tld-1_1.0_armel.deb
config-4.4.189-oxnas-tld-1
zImage-4.4.189-oxnas-tld-1
linux-dtb-4.4.189-oxnas-tld-1.tar
linux-4.4.189-oxnas-tld-1.patch


Installation:

A. Installation to run with new U-Boot in NAND (see new U-Boot thread here)

1. Backup your current uImage and uInitrd and other kernel files. In the /boot directory, these are files for your current kernel (xx.xx.xx is the version number):

uInitrd
uImage
initrd.img-xx.xx.xx-xxx
System.map-xx.xx.xx-xxx
vmlinuz-xx.xx.xx-xxx
config-xx.xx.xx-xxx

2. Extract the kernel in the archive:
cd /boot
tar -xjf linux-4.4.189-oxnas-tld-1.bodhi.tar.bz2

3. Extract the tarball for the dtb files
cd /boot
tar -xf linux-dtb-4.4.189-oxnas-tld-1.tar

4. And install it with dpkg. If you encounter error with flash-kernel when running dpkg, then remove flash-kernel first to avoid potential problem.
cd /boot
apt-get remove flash-kernel 
dpkg -i linux-image-4.4.189-oxnas-tld-1_1.0_armel.deb

5. Create uImage and uInitrd manually (kernel files vmlinuz-4.4.189-oxnas-tld-1 and initrd.img-4.4.189-oxnas-tld-1 were generated by the dpkg command in step 4) :
cd /boot
mv uImage uImage.bak
mv uInitrd uInitrd.bak
mkimage -A arm -O linux -T kernel -C none -a 0x60008000 -e 0x60008000 -n Linux-4.4.189-oxnas-tld-1 -d vmlinuz-4.4.189-oxnas-tld-1 uImage
mkimage -A arm -O linux -T ramdisk -C gzip -a 0x60000000 -e 0x60000000 -n initramfs-4.4.189-oxnas-tld-1  -d initrd.img-4.4.189-oxnas-tld-1 uInitrd

6. Setup U-Boot envs:

Note: Again, you must have the latest U-Boot (e.g. 2013.10 and later) installed to do this step.

If you have the Pogo Pro (with PCI) then there is no need to adjust the DTB variable. If you have other boxes such as the Pogo Classic (no PCI), then adjust the DTB name. Other envs in the default can be adjusted later after booted into Debian.

fw_setenv dtb_file '/boot/dts/ox820-pogoplug-classic.dtb'

Note: DTBs for supported and potentially supported OXNAS boxes in /boot/dts/ folder:
ox820-pogoplug-pro.dtb
ox820-kd20.dtb
ox820-akitio.dtb
ox820-pogoplug-classic.dtb
ox820-stg212.dtb


7. Sync. Double check your u-boot envs, make sure there is no error. And reboot
sync
fw_printenv
reboot

B. Installation to run with stock U-Boot in NAND

Deprecated.


DONE.

==============================================================
Updated 03 Mar 2019:

Kernel linux-4.4.176-oxnas-tld-1 package was uploaded.

New/Update features:

- Fix the reboot problem with kernel inux-4.4.174-oxnas-tld-1.

Credits:

Thanks kralan for reporting the reboot problem, and identitied the fix for it.


Latest Linux kernel 4.x general release information can be found at:
LinuxChanges log

Download at Dropbox

linux-4.4.176-oxnas-tld-1.bodhi.tar.bz2

md5sum:
e8c5b7be4f043e677460e09360760e98
sha256sum:
93519d5b480dfe0847e46f674034e5de867665b74c72a7ef5861ed2db4fee1a5

As always, please check the hash of what you download!


This tarball contains 6 files:

linux-image-4.4.176-oxnas-tld-1_1.0_armel.deb
linux-headers-4.4.176-oxnas-tld-1_1.0_armel.deb
config-4.4.176-oxnas-tld-1
zImage-4.4.176-oxnas-tld-1
linux-dtb-4.4.176-oxnas-tld-1.tar
linux-4.4.176-oxnas-tld-1.patch


Installation:

A. Installation to run with new U-Boot in NAND (see new U-Boot thread here)

1. Backup your current uImage and uInitrd and other kernel files. In the /boot directory, these are files for your current kernel (xx.xx.xx is the version number):

uInitrd
uImage
initrd.img-xx.xx.xx-xxx
System.map-xx.xx.xx-xxx
vmlinuz-xx.xx.xx-xxx
config-xx.xx.xx-xxx

2. Extract the kernel in the archive:
cd /boot
tar -xjf linux-4.4.176-oxnas-tld-1.bodhi.tar.bz2

3. Extract the tarball for the dtb files
cd /boot
tar -xf linux-dtb-4.4.176-oxnas-tld-1.tar

4. And install it with dpkg. If you encounter error with flash-kernel when running dpkg, then remove flash-kernel first to avoid potential problem.
cd /boot
apt-get remove flash-kernel 
dpkg -i linux-image-4.4.176-oxnas-tld-1_1.0_armel.deb

5. Create uImage and uInitrd manually (kernel files vmlinuz-4.4.176-oxnas-tld-1 and initrd.img-4.4.176-oxnas-tld-1 were generated by the dpkg command in step 4) :
cd /boot
mv uImage uImage.bak
mv uInitrd uInitrd.bak
mkimage -A arm -O linux -T kernel -C none -a 0x60008000 -e 0x60008000 -n Linux-4.4.176-oxnas-tld-1 -d vmlinuz-4.4.176-oxnas-tld-1 uImage
mkimage -A arm -O linux -T ramdisk -C gzip -a 0x60000000 -e 0x60000000 -n initramfs-4.4.176-oxnas-tld-1  -d initrd.img-4.4.176-oxnas-tld-1 uInitrd

6. Setup U-Boot envs:

Note: Again, you must have the latest U-Boot (e.g. 2013.10 and later) installed to do this step.

If you have the Pogo Pro (with PCI) then there is no need to adjust the DTB variable. If you have other boxes such as the Pogo Classic (no PCI), then adjust the DTB name. Other envs in the default can be adjusted later after booted into Debian.

fw_setenv dtb_file '/boot/dts/ox820-pogoplug-classic.dtb'

Note: DTBs for supported and potentially supported OXNAS boxes in /boot/dts/ folder:
ox820-pogoplug-pro.dtb
ox820-kd20.dtb
ox820-akitio.dtb
ox820-pogoplug-classic.dtb
ox820-stg212.dtb


7. Sync. Double check your u-boot envs, make sure there is no error. And reboot
sync
fw_printenv
reboot

B. Installation to run with stock U-Boot in NAND

Deprecated.


DONE.

=============================================================

Please see next post for older released rootfs and kernels.

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



Edited 114 time(s). Last edit at 05/17/2024 12:29AM by bodhi.
Re: Linux Kernel 3.12.13 Pogo V3 (Oxnas OX820) package and rootfs (Flattened Device Tree)
May 12, 2014 01:09AM
Older rootfs and kernel releases

==============================================================
Updated 10 Feb 2019:

Kernel linux-4.4.174-oxnas-tld-1 package was uploaded.

New/Update features:

- Pick up upstream security patches.

Warning: we are seeing a reboot problem with this kernel version. The reboot is causing a shutdown. So use the previous kernel, if you need this reboot capability.

Latest Linux kernel 4.x general release information can be found at:
LinuxChanges log

Download at Dropbox

linux-4.4.174-oxnas-tld-1.bodhi.tar.bz2

md5sum:
e66d173d041ce2286bf5f7c08c207728
sha256sum:
21e5108b25e0a360f00c5311e0c93309160763a8fd4da6a005653d6ca3d5dadc

As always, please check the hash of what you download!

This tarball contains 6 files:

linux-image-4.4.174-oxnas-tld-1_1.0_armel.deb
linux-headers-4.4.174-oxnas-tld-1_1.0_armel.deb
config-4.4.174-oxnas-tld-1
zImage-4.4.174-oxnas-tld-1
linux-dtb-4.4.174-oxnas-tld-1.tar
linux-4.4.174-oxnas-tld-1.patch


Installation:

A. Installation to run with new U-Boot in NAND (see new U-Boot thread here)

1. Backup your current uImage and uInitrd and other kernel files. In the /boot directory, these are files for your current kernel (xx.xx.xx is the version number):

uInitrd
uImage
initrd.img-xx.xx.xx-xxx
System.map-xx.xx.xx-xxx
vmlinuz-xx.xx.xx-xxx
config-xx.xx.xx-xxx

2. Extract the kernel in the archive:
cd /boot
tar -xjf linux-4.4.174-oxnas-tld-1.bodhi.tar.bz2

3. Extract the tarball for the dtb files
cd /boot
tar -xf linux-dtb-4.4.174-oxnas-tld-1.tar

4. And install it with dpkg. If you encounter error with flash-kernel when running dpkg, then remove flash-kernel first to avoid potential problem.
cd /boot
apt-get remove flash-kernel 
dpkg -i linux-image-4.4.174-oxnas-tld-1_1.0_armel.deb

5. Create uImage and uInitrd manually (kernel files vmlinuz-4.4.174-oxnas-tld-1 and initrd.img-4.4.174-oxnas-tld-1 were generated by the dpkg command in step 4) :
cd /boot
mv uImage uImage.bak
mv uInitrd uInitrd.bak
mkimage -A arm -O linux -T kernel -C none -a 0x60008000 -e 0x60008000 -n Linux-4.4.174-oxnas-tld-1 -d vmlinuz-4.4.174-oxnas-tld-1 uImage
mkimage -A arm -O linux -T ramdisk -C gzip -a 0x60000000 -e 0x60000000 -n initramfs-4.4.174-oxnas-tld-1  -d initrd.img-4.4.174-oxnas-tld-1 uInitrd

6. Setup U-Boot envs:

Note: Again, you must have the latest U-Boot (e.g. 2013.10 and later) installed to do this step.

If you have the Pogo Pro (with PCI) then there is no need to adjust the DTB variable. If you have other boxes such as the Pogo Classic (no PCI), then adjust the DTB name. Other envs in the default can be adjusted later after booted into Debian.

fw_setenv dtb_file '/boot/dts/ox820-pogoplug-classic.dtb'

Note: DTBs for supported and potentially supported OXNAS boxes in /boot/dts/ folder:
ox820-pogoplug-pro.dtb
ox820-kd20.dtb
ox820-akitio.dtb
ox820-pogoplug-classic.dtb
ox820-stg212.dtb


7. Sync. Double check your u-boot envs, make sure there is no error. And reboot
sync
fw_printenv
reboot

B. Installation to run with stock U-Boot in NAND

Deprecated.


DONE.


==============================================================
Updated 28 May 2018:

Kernel linux-4.4.133-oxnas-tld-1 package was uploaded.

New/Update features:

- Pick up upstream security patches.

Latest Linux kernel 4.x general release information can be found at:
LinuxChanges log

Download at Dropbox

linux-4.4.133-oxnas-tld-1.bodhi.tar.bz2

md5sum:
a78f967409bbfff6d992a0c0e082ef7b linux-4.4.133-oxnas-tld-1.bodhi.tar.bz2

sha256sum:
3a3e7b34a117f0702e1aaabcd88b4300eafe91a6f7802b4d0295759028a1d921

As always, please check the hash of what you download!

This tarball contains 6 files:

linux-image-4.4.133-oxnas-tld-1_1.0_armel.deb
linux-headers-4.4.133-oxnas-tld-1_1.0_armel.deb
config-4.4.133-oxnas-tld-1
zImage-4.4.133-oxnas-tld-1
linux-dtb-4.4.133-oxnas-tld-1.tar
linux-4.4.133-oxnas-tld-1.patch


Installation:

A. Installation to run with new U-Boot in NAND (see new U-Boot thread here)

1. Backup your current uImage and uInitrd and other kernel files. In the /boot directory, these are files for your current kernel (xx.xx.xx is the version number):

uInitrd
uImage
initrd.img-xx.xx.xx-xxx
System.map-xx.xx.xx-xxx
vmlinuz-xx.xx.xx-xxx
config-xx.xx.xx-xxx

2. Extract the kernel in the archive:
cd /boot
tar -xjf linux-4.4.133-oxnas-tld-1.bodhi.tar.bz2

3. Extract the tarball for the dtb files
cd /boot
tar -xf linux-dtb-4.4.133-oxnas-tld-1.tar

4. And install it with dpkg. If you encounter error with flash-kernel when running dpkg, then remove flash-kernel first to avoid potential problem (It is much better to generate uImage and uInitrd manually anyway):
cd /boot
apt-get remove flash-kernel 
dpkg -i linux-image-4.4.133-oxnas-tld-1_1.0_armel.deb

5. Create uImage and uInitrd manually (kernel files vmlinuz-4.4.133-oxnas-tld-1 and initrd.img-4.4.133-oxnas-tld-1 were generated by the dpkg command in step 4) :
cd /boot
mv uImage uImage.bak
mv uInitrd uInitrd.bak
mkimage -A arm -O linux -T kernel -C none -a 0x60008000 -e 0x60008000 -n Linux-4.4.133-oxnas-tld-1 -d vmlinuz-4.4.133-oxnas-tld-1 uImage
mkimage -A arm -O linux -T ramdisk -C gzip -a 0x60000000 -e 0x60000000 -n initramfs-4.4.133-oxnas-tld-1  -d initrd.img-4.4.133-oxnas-tld-1 uInitrd

6. Setup U-Boot envs:

Note: Again, you must have the latest U-Boot (e.g. 2013.10 and later) installed to do this step.

If you have the Pogo Pro (with PCI) then there is no need to adjust the DTB variable. If you have other boxes such as the Pogo Classic (no PCI), then adjust the DTB name. Other envs in the default can be adjusted later after booted into Debian.

fw_setenv dtb_file '/boot/dts/ox820-pogoplug-classic.dtb'

Note: DTBs for supported and potentially supported OXNAS boxes in /boot/dts/ folder:
ox820-pogoplug-pro.dtb
ox820-kd20.dtb
ox820-akitio.dtb
ox820-pogoplug-classic.dtb
ox820-stg212.dtb


7. Sync. Double check your u-boot envs, make sure there is no error. And reboot
sync
fw_printenv
reboot

B. Installation to run with stock U-Boot in NAND

Deprecated.


DONE.

==============================================================

Updated 30 Mar 2018:

Kernel linux-4.4.124-oxnas-tld-1 package was uploaded.

New/Update features:

- Added CONFIG_USB_NET_CDC_EEM module (to support CDC Ethernet support for smart devices such as cable modems)

Latest Linux kernel 4.x general release information can be found at:
LinuxChanges log

Download at Dropbox

linux-4.4.124-oxnas-tld-1.bodhi.tar.bz2

md5:
42dc39933b2c8c08c5de8ce064a559e7

sha256:
136724a3fd2b50eae7a068a616dcf7826cfebfc6addae1eb05d3b3d09f55d2de

As always, please check the hash of what you download!

This tarball contains 6 files:

linux-image-4.4.124-oxnas-tld-1_1.0_armel.deb
linux-headers-4.4.124-oxnas-tld-1_1.0_armel.deb
config-4.4.124-oxnas-tld-1
zImage-4.4.124-oxnas-tld-1
linux-dtb-4.4.124-oxnas-tld-1.tar
linux-4.4.124-oxnas-tld-1.patch


Installation:

A. Installation to run with new U-Boot in NAND (see new U-Boot thread here)

1. Backup your current uImage and uInitrd and other kernel files. In the /boot directory, these are files for your current kernel (xx.xx.xx is the version number):

uInitrd
uImage
initrd.img-xx.xx.xx-xxx
System.map-xx.xx.xx-xxx
vmlinuz-xx.xx.xx-xxx
config-xx.xx.xx-xxx

2. Extract the kernel in the archive:
cd /boot
tar -xjf linux-4.4.124-oxnas-tld-1.bodhi.tar.bz2

3. Extract the tarball for the dtb files
cd /boot
tar -xf linux-dtb-4.4.124-oxnas-tld-1.tar

4. And install it with dpkg. If you encounter error with flash-kernel when running dpkg, then remove flash-kernel first to avoid potential problem (It is much better to generate uImage and uInitrd manually anyway):
cd /boot
apt-get remove flash-kernel 
dpkg -i linux-image-4.4.124-oxnas-tld-1_1.0_armel.deb

5. Create uImage and uInitrd manually (kernel files vmlinuz-4.4.124-oxnas-tld-1 and initrd.img-4.4.124-oxnas-tld-1 were generated by the dpkg command in step 4) :
cd /boot
mv uImage uImage.bak
mv uInitrd uInitrd.bak
mkimage -A arm -O linux -T kernel -C none -a 0x60008000 -e 0x60008000 -n Linux-4.4.124-oxnas-tld-1 -d vmlinuz-4.4.124-oxnas-tld-1 uImage
mkimage -A arm -O linux -T ramdisk -C gzip -a 0x60000000 -e 0x60000000 -n initramfs-4.4.124-oxnas-tld-1  -d initrd.img-4.4.124-oxnas-tld-1 uInitrd

6. Setup U-Boot envs:

Note: Again, you must have the latest U-Boot (e.g. 2013.10 and later) installed to do this step.

If you have the Pogo Pro (with PCI) then there is no need to adjust the DTB variable. If you have other boxes such as the Pogo Classic (no PCI), then adjust the DTB name. Other envs in the default can be adjusted later after booted into Debian.

fw_setenv dtb_file '/boot/dts/ox820-pogoplug-classic.dtb'

Note: DTBs for supported and potentially supported OXNAS boxes in /boot/dts/ folder:
ox820-pogoplug-pro.dtb
ox820-kd20.dtb
ox820-akitio.dtb
ox820-pogoplug-classic.dtb
ox820-stg212.dtb


7. Sync. Double check your u-boot envs, make sure there is no error. And reboot
sync
fw_printenv
reboot

B. Installation to run with stock U-Boot in NAND

Deprecated.


DONE.


==============================================================
Updated 23 Mar 2018:

Kernel linux-4.4.123-oxnas-tld-1 package was uploaded.

New/Update features:

- Added CONFIG_USB_CDCETHER and CONFIG_USB_ACM modules (CDC Ethernet support for smart devices such as cable modems)

Latest Linux kernel 4.x general release information can be found at:
LinuxChanges log

Download at Dropbox

linux-4.4.123-oxnas-tld-1.bodhi.tar.bz2

md5:
3f6b6acfe8f0b2a7c4dd7e2e3c480106
sha256:
28fc38303a03fe132623f91301729c99e52a96bf5f7b9b0593a0f797085e6957

As always, please check the hash of what you download!

This tarball contains 6 files:

linux-image-4.4.123-oxnas-tld-1_1.0_armel.deb
linux-headers-4.4.123-oxnas-tld-1_1.0_armel.deb
config-4.4.123-oxnas-tld-1
zImage-4.4.123-oxnas-tld-1
linux-dtb-4.4.123-oxnas-tld-1.tar
linux-4.4.123-oxnas-tld-1.patch

And remember to check the hash of what you download, as always.

Installation:

A. Installation to run with new U-Boot in NAND (see new U-Boot thread here)

1. Backup your current uImage and uInitrd and other kernel files. In the /boot directory, these are files for your current kernel (xx.xx.xx is the version number):

uInitrd
uImage
initrd.img-xx.xx.xx-xxx
System.map-xx.xx.xx-xxx
vmlinuz-xx.xx.xx-xxx
config-xx.xx.xx-xxx

2. Extract the kernel in the archive:
cd /boot
tar -xjf linux-4.4.123-oxnas-tld-1.bodhi.tar.bz2

3. Extract the tarball for the dtb files
cd /boot
tar -xf linux-dtb-4.4.123-oxnas-tld-1.tar

4. And install it with dpkg. If you encounter error with flash-kernel when running dpkg, then remove flash-kernel first to avoid potential problem (It is much better to generate uImage and uInitrd manually anyway):
cd /boot
apt-get remove flash-kernel 
dpkg -i linux-image-4.4.123-oxnas-tld-1_1.0_armel.deb

5. Create uImage and uInitrd manually (kernel files vmlinuz-4.4.123-oxnas-tld-1 and initrd.img-4.4.123-oxnas-tld-1 were generated by the dpkg command in step 4) :
cd /boot
mv uImage uImage.bak
mv uInitrd uInitrd.bak
mkimage -A arm -O linux -T kernel -C none -a 0x60008000 -e 0x60008000 -n Linux-4.4.123-oxnas-tld-1 -d vmlinuz-4.4.123-oxnas-tld-1 uImage
mkimage -A arm -O linux -T ramdisk -C gzip -a 0x60000000 -e 0x60000000 -n initramfs-4.4.123-oxnas-tld-1  -d initrd.img-4.4.123-oxnas-tld-1 uInitrd

6. Setup U-Boot envs:

Note: Again, you must have the latest U-Boot (e.g. 2013.10 and later) installed to do this step.

If you have the Pogo Pro (with PCI) then there is no need to adjust the DTB variable. If you have other boxes such as the Pogo Classic (no PCI), then adjust the DTB name. Other envs in the default can be adjusted later after booted into Debian.

fw_setenv dtb_file '/boot/dts/ox820-pogoplug-classic.dtb'

Note: DTBs for supported and potentially supported OXNAS boxes in /boot/dts/ folder:
ox820-pogoplug-pro.dtb
ox820-kd20.dtb
ox820-akitio.dtb
ox820-pogoplug-classic.dtb
ox820-stg212.dtb


7. Sync. Double check your u-boot envs, make sure there is no error. And reboot
sync
fw_printenv
reboot

B. Installation to run with stock U-Boot in NAND

Deprecated.


DONE.

==============================================================
Updated 02 Aug 2017:

Rootfs Debian-4.4.54-oxnas-tld-1-rootfs-bodhi.tar.bz2 was uploaded.

Basic Debian stretch Oxnas rootfs for Popo Pro/Classic V3 plug:

- tarball size: 180M
- install size: 477M
- Installed packages: nano, avahi, ntp, busybox-syslogd (log to RAM), htop, dialog, bz2, iperf, ethtool, sysvinit-core, sysvinit, sysvinit-utils, mtd-utils.
- see LED controls in /etc/rc.local, and /etc/rc0.d/K08halt
- see some useful aliases in /root/.profile
- root password: root

Download at Dropbox:

Debian-4.4.54-oxnas-tld-1-rootfs-bodhi.tar.bz2

md5sum
48f68566cb9dbb1a95ca5457bee8f13d

sha256sum
00d9cea83acc4696afed1ad267e86d64d99557c26a17770116dd5443e322cf83


And remember to check the hash of what you download, as always.

INSTALLATION:

Installation can be done on any Linux box, with a fresh USB drive (HDD would work fine too). It is assuming the USB drive is mounted at /media/sdb1.

Note: all steps below must be done while logging in as root user (not sudo). If you are not the root user then don't continue, because the rootfs will not work.

1. Format a new USB drive with a single Ext3 partition, and label it rootfs. If you are running the latest released uboot for OXNAS then you can use Ext4.

2. Mount the drive on a Linux box. cd to top level directory and extract it. It is assuming the USB drive is mounted at /media/sdb1
cd /media/sdb1 
tar -xjf Debian-4.4.54-oxnas-tld-1-rootfs-bodhi.tar.bz2

3. Adjust fstab (optional).

Edit /media/sdb1/etc/fstab entry for root device to match the rootfstype of your rootfstype if you use Ext4 or Ext2. However, you can keep it as is without problem in booting since the kernel will figure out which file system the rootfs was formatted.

LABEL=rootfs    /               ext3    noatime,errors=remount-ro 0 1


4. Create uImage with embedded DTB for booting with stock u-boot. Skip this step if you have installed the latest released uboot for OXNAS, or are installing this u-boot at the same time.

- If you have the Pogo V3 Classic (without Wifi), then the DTB name below should be ox820-pogoplug-classic.dtb.

cd /media/sdb1/boot
cp -a uImage uImage.orig
cp -a zImage-4.4.54-oxnas-tld-1 zImage.fdt
cat dts/ox820-pogoplug-pro.dtb >> zImage.fdt
mkimage  -A arm -O linux -C none -T kernel -a 0x60008000 -e 0x60008000 -n 'Linux-4.4.54-oxnas-tld-1' -d zImage.fdt  uImage
sync

- If your Linux box does not have mkimage, then install it

apt-get install u-boot-tools

5. Done installation. Take this USB rootfs to your plug and cold start.

After booted into Debian, see Note1, 2, and 3 below. It is very important that you do Note1 steps to secure your box.

=====

Note1:

After logging in this rootf the first time, remember to generate new SSH key to make it your own unique rootfs. And also update your rootfs to get the latest Debian package security updates:

rm /etc/ssh/ssh_host*
ssh-keygen -A

apt-get update
apt-get upgrade


Warning: Watch the apt-get upgrade progress. If the apt-get upgrade results in a new initramfs, the log would shows this message:

Quote

update-initramfs: Generating /boot/initrd.img-4.4.54-oxnas-tld-1

Then you need to regenerate the uInitrd boot file:

cd /boot
cp -a uInitrd.bak
mkimage -A arm -O linux -T ramdisk -C gzip -a 0x60000000 -e 0x60000000 -n initramfs-4.4.54-oxnas-tld-1 -d initrd.img-4.4.54-oxnas-tld-1 uInitrd

Note2:

To boot with systemd, add this parameter to your u-boot env bootargs. If you are booting with my latest released uboot for OXNAS then use the uEnv.txt capability to do this. See the instruction about uEnvt.txt in that thread.

init=/bin/systemd

For example, the bootarg for systemd was added to the end of this usb_set_bootargs env to set bootargs (on your box it might be different env):

fw_setenv usb_set_bootargs 'setenv bootargs console=$console root=$usb_root rootdelay=$usb_rootdelay rootfstype=$usb_rootfstype $mtdparts init=/bin/systemd'


If that's still not possible to run systemd, you might want to install it again:
apt-get install systemd


Note3:

For setting up wireless on the Pogo Pro, please see: http://forum.doozan.com/read.php?2,16044,20964#msg-20964

==============================================================
Updated 28 Mar 2017:

Fix to improve Ethernet perfornance

The network performance is degraded on the Pogo V3 OXNAS because the OXNAS ethernet driver turn on flow control by default. We need to turn it off in the driver, and that will be incorprated in the next kernel release. At the moment, the workaround is to do turn it off with ethtool.

Boot into Debian and:
ethtool -A eth0 rx off tx off

==============================================================

Updated 19 Mar 2017:

Kernel linux-4.4.54-oxnas-tld-1 package was uploaded.

Warning: This kernel has grown too big, so it will not work for stock u-boot or its Arch u-boot variant. Stock u-boot has a limitation of 4M uImage, so it will not boot. Please stay with kernel 3.18.5 if you're still booting with stock u-boot. The new u-boot works without limitation.

New/Update features:

- Incorporated kernel 4.4.54 mainline to fix security bugs.
- Added USB printer support (as a module).

Latest Linux kernel 4.x general release information can be found at:
LinuxChanges log

Download at Dropbox

linux-4.4.54-oxnas-tld-1.bodhi.tar.bz2

md5:
2003e95e6149ffc649e5e567375342d7
sha256:
ef6c4df9061aced43a2c75519e69d00cc84c1c8c388799d0af728cf7b8d031eb

INSTALLATION:

Please use the same installation instruction in linux-4.4.48-oxnas-tld-5 (updated 01 Mar 2017) right below. Simply replace 4.4.48-oxnas-tld-5 with 4.4.54-oxnas-tld-1 in the instruction.

==============================================================

Updated 01 Mar 2017:

Kernel linux-4.4.48-oxnas-tld-1 package was uploaded.

Warning: This kernel has grown too big, so it will not work for stock u-boot or its Arch u-boot variant. Stock u-boot has a limitation of 4M uImage, so it will not boot. Please stay with kernel 3.18.5 if you're still booting with stock u-boot. The new u-boot works without limitation.

- [Expiremental] Added USB 3.0 support in the kernel. This is to support potential mPCIe USB 3.0 interface cards.
- All DTS were updated to removed write restriction to ethaddr (MAC address).

Latest Linux kernel 4.x general release information can be found at:
LinuxChanges log

Download at Dropbox

linux-4.4.48-oxnas-tld-1.bodhi.tar.bz2

md5:
eb7ccf5ed563e7fde20dee92e07edc61
sha256:
a6111f0f27ac60a9b270bac3b6d466feb73326eb2f665f0a55d6ab431a6c6478

INSTALLATION:

Please use the same installation instruction in linux-4.4.38-oxnas-tld-5 (updated 12 Dec 2016) right below. Simply replace 4.4.38-oxnas-tld-5 with 4.4.48-oxnas-tld-1 in the instruction.

=================================
Updated 12 Dec 2016:

Kernel linux-4.4.38-oxnas-tld-5 package was uploaded.

Warning: This kernel has grown too big, so it will not work for stock u-boot or its Arch u-boot variant. Stock u-boot has a limitation of 4M uImage, so it will not boot. Please stay with kernel 3.18.5 if you're still booting with stock u-boot. The new u-boot works without limitation.

Credits: Thanks Daniel Golle (LEDE) for the updated patches, and Neil Armstrong for upstreaming activities. I've incorporated the code and ideas from both of these sources to build this kernel.

Latest Linux kernel 4.x general release information can be found at:
LinuxChanges log

Download at Dropbox

linux-4.4.38-oxnas-tld-5.bodhi.tar.bz2
md5:
663df6cee6f8124d829051d0e75c5592
sha256:
300810b969a8282c1b6df9e08a3434a8b826c6fa4796bc8917f42f8bfc9fea44


This tarball contains 6 files:

linux-image-4.4.38-oxnas-tld-5_5_armel.deb
linux-headers-4.4.38-oxnas-tld-5_5_armel.deb
config-4.4.38-oxnas-tld-5
zImage-4.4.38-oxnas-tld-5
linux-dtb-4.4.38-oxnas-tld-5.tar
linux-4.4.38-oxnas-tld-5.patch


INSTALLATION:

A. Installation to run with new U-Boot in NAND (see new U-Boot thread here)

1. Backup your current uImage and uInitrd and other kernel files. In the /boot directory, these are files for your current kernel (xx.xx.xx is the version number):

uInitrd
uImage
initrd.img-xx.xx.xx-xxx
System.map-xx.xx.xx-xxx
vmlinuz-xx.xx.xx-xxx
config-xx.xx.xx-xxx

2. Extract the kernel in the archive:
cd /boot
tar -xjf linux-4.4.38-oxnas-tld-5.bodhi.tar.bz2

3. Extract the dts tarball for the dtb files
cd /boot
tar -xf linux-dtb-4.4.38-oxnas-tld-5.tar

4. And install it with dpkg. If you encounter error with flash-kernel when running dpkg, then remove flash-kernel first to avoid potential problem (It is much better to generate uImage and uInitrd manually anyway):
cd /boot
apt-get remove flash-kernel 
dpkg -i linux-image-4.4.38-oxnas-tld-5_5_armel.deb

5. Create uImage and uInitrd manually:
cd /boot
mv uImage uImage.bak
mv uInitrd uInitrd.bak
mkimage -A arm -O linux -T kernel -C none -a 0x60008000 -e 0x60008000 -n Linux-4.4.38-oxnas-tld-5 -d vmlinuz-4.4.38-oxnas-tld-5 uImage
mkimage -A arm -O linux -T ramdisk -C gzip -a 0x60000000 -e 0x60000000 -n initramfs-4.4.38-oxnas-tld-5  -d initrd.img-4.4.38-oxnas-tld-5 uInitrd

6. Setup U-Boot envs:

Note: you must have the latest U-Boot (e.g. 2013.10 and later) installed to do this step.

If you have the Pogo Pro (with PCI) then there is no need to adjust the DTB variable. If you have other boxes such as the Pogo Classic (no PCI), then adjust the DTB name. Other envs in the default can be adjusted later after booted into Debian.

fw_setenv dtb_file '/boot/dts/ox820-pogoplug-classic.dtb'

Note: DTBs for supported and potentially support boxes:
ox820-pogoplug-pro.dtb
ox820-kd20.dtb
ox820-akitio.dtb
ox820-pogoplug-classic.dtb
ox820-stg212.dtb


7. Sync. Double check your u-boot envs, make sure there is no error. And reboot
sync
fw_printenv
reboot

B. Installation to run with stock U-Boot in NAND

This method is deprecated due to the kernel 4.0 Oxnas size and stock u-boot limitation. Please see kernel linux-3.18.5-oxnas-tld-1for instruction to install that kernel version if you are still running stock u-boot.

DONE.


==============================================================

Updated 03 July 2015:

Kernel linux-4.1.0-oxnas-tld-1 package was uploaded. The following features are new in this version:

- CONFIG_USB_HIDDEV

Latest Linux kernel 4.0 general release information can be found at:
LinuxChanges log

Please use the same installation instruction in linux-4.0.0-oxnas-tld-1 (updated 16 April 2015) below. Simply replace 4.0.0-oxnas-tld-1 with 4.1.0-oxnas-tld-1 in the instruction.

Download at Dropbox
linux-4.1.0-oxnas-tld-1.bodhi.tar.bz2
4fa1cd9aeb081f168a2e859b44e47d96

==============================================================

Updated 16 April 2015:

Kernel linux-4.0.0-oxnas-tld-1 package was uploaded. The following features are new in this version:

- Added keyboard supports
- Added bluetooth supports, including ath3k
- Added nls-utf-8 supports.
- Add various kernel configs that are new in 4.0 (e.g. device tree overlay).

Warning: This kernel has grown too big, so it will not work for stock u-boot or its Arch u-boot variant. Stock u-boot has a limitation of 4M uImage, so it will not boot. Please stay with kernel 3.18.5 if you're still booting with stock u-boot. The new u-boot works without limitation. In the future, if requested, I could try to move some module to initramfs to shrink it. However, I'm not sure about the timeline, and whether it is worthwhile to spend time to do.

Credits: thanks to various forum members (LeggoMyEggo, Gravelrash, Robert, denexo, and many others) to report and request the missing features above.

Latest Linux kernel 4.0 general release information can be found at:
LinuxChanges log

Download at Dropbox
linux-4.0.0-oxnas-tld-1-bodhi.tar.bz2
md5:
65b4f2404378c6fd4ac3e1339b0d264d

This tarball contains 7 files:

linux-image-4.0.0-oxnas-tld-1_1.0_armel.deb
linux-headers-4.0.0-oxnas-tld-1_1.0_armel.deb
config-4.0.0-oxnas-tld-1
zImage-4.0.0-oxnas-tld-1
ox820-pogoplug-pro.dtb
ox820-pogoplug-classic.dtb
linux-4.0.0-oxnas-tld-1.patch

INSTALLATION:

A. Installation to run with new U-Boot in NAND (see new U-Boot thread here)

1. Backup your current uImage and uInitrd and other kernel files. In the /boot directory, these are files for your current kernel (xx.xx.xx is the version number):

uInitrd
uImage
initrd.img-xx.xx.xx-xxx
System.map-xx.xx.xx-xxx
vmlinuz-xx.xx.xx-xxx
config-xx.xx.xx-xxx

2. Extract the kernel in the archive:
cd /boot
tar -xjf linux-4.0.0-oxnas-tld-1-bodhi.tar.bz2

3. Create a dts directory for the dtb files
cd /boot
mkdir dts
mv ox820-pogoplug-pro.dtb dts/
mv ox820-pogoplug-classic.dtb dts/

4. And install it with dpkg. If you encounter error with flash-kernel when running dpkg, then remove flash-kernel first to avoid potential problem (It is much better to generate uImage and uInitrd manually anyway):
cd /boot
apt-get remove flash-kernel 
dpkg -i linux-image-4.0.0-oxnas-tld-1_1.0_armel.deb

5. Create uImage and uInitrd manually:
cd /boot
mkimage -A arm -O linux -T kernel -C none -a 0x60008000 -e 0x60008000 -n Linux-4.0.0-oxnas-tld-1 -d vmlinuz-4.0.0-oxnas-tld-1 uImage
mkimage -A arm -O linux -T ramdisk -C gzip -a 0x60000000 -e 0x60000000 -n initramfs-4.0.0-oxnas-tld-1  -d initrd.img-4.0.0-oxnas-tld-1 uInitrd

6. Setup U-Boot envs:

The u-boot envs below are for 1st time upgrading, you don't need to do this step if you've installed the latest U-Boot for Oxnas. Just make sure the DTB file is the correct one for your box, replace ox820-pogoplug-pro.dtb below with the correct DTB name for your box (if you have other OXNAS box).

Pogo Pro vs. Pogo Classic: If you're installing this on a Pogo V3 Classic (no PCI), replace the ox820-pogoplug-pro.dtb below with ox820-pogoplug-classic.dtb.

Set up booting envs:
fw_setenv uinitrd_addr '0x60e00000'
fw_setenv uimage_addr '0x60500000'
fw_setenv dtb_addr '0x62c00000'
fw_setenv usb_set_bootargs 'setenv bootargs console=ttyS0,115200 root=/dev/sda1 rootdelay=10'
fw_setenv dt_bootm 'bootm $uimage_addr $uinitrd_addr $dtb_addr'
fw_setenv dt_load_dtb 'ext2load usb 0:1 $dtb_addr /boot/dts/ox820-pogoplug-pro.dtb'
fw_setenv dt_load_initrd 'ext2load usb 0:1 $uinitrd_addr /boot/uInitrd'
fw_setenv dt_load_uimage 'ext2load usb 0:1 $uimage_addr /boot/uImage'
fw_setenv dt_usb_boot 'run dt_load_uimage; run dt_load_initrd; run dt_load_dtb; run dt_bootm'
fw_setenv dt_usb_bootcmd 'run usb_set_bootargs; run dt_usb_boot'
fw_setenv dt_bootcmd_usb 'usb start; run dt_usb_bootcmd; usb stop'
fw_setenv bootcmd 'run dt_bootcmd_usb;  reset'

7. Sync. Double check your u-boot envs, make sure there is no error. And reboot
sync
fw_printenv
reboot

B. Installation to run with stock U-Boot in NAND

This method is deprecated due to the kernel 4.0 Oxnas size and stock u-boot limitation. Please see kernel linux-3.18.5-oxnas-tld-1for instruction to install that kernel version if you are still running stock u-boot.

DONE.

==================================================
Updated 12 Feb 2015:

Kernel linux-3.18.5-oxnas-tld-1 package was uploaded. The following features are new in this version:

- Added various kernel configuration that are newly available in 3.18, and also various kernel configuration per forum users requests: loop device, stock wifi supports, encrypted fs.

Note: beginning this version, we can dist-upgrade to jessie (not possible with previous kernel version 3.17.0-oxnas-tld-1 or earlier).


Latest Linux kernel 3.18 general release information can be found at:
LinuxChanges log

Download at Dropbox
linux-3.18.5-oxnas-tld-1-bodhi.tar.bz2
md5:
df386f09cf7323472d40432d3da382d5

This tarball contains 7 files:

linux-image-3.18.5-oxnas-tld-1_1_armel.deb
linux-headers-3.18.5-oxnas-tld-1_1_armel.deb
config-3.18.5-oxnas-tld-1
zImage-3.18.5-oxnas-tld-1
ox820-pogoplug-pro.dtb
ox820-pogoplug-classic.dtb
linux-3.18.5-oxnas-tld-1.patch

INSTALLATION:

A. Installation to run with new U-Boot in NAND (see new U-Boot thread here)

1. Backup your current uImage and uInitrd and other kernel files. In the /boot directory, these are files for your current kernel (xx.xx.xx is the version number):

uInitrd
uImage
initrd.img-xx.xx.xx-xxx
System.map-xx.xx.xx-xxx
vmlinuz-xx.xx.xx-xxx
config-xx.xx.xx-xxx

2. Extract the kernel in the archive:
cd /boot
tar -xjf linux-3.18.5-oxnas-tld-1-bodhi.tar.bz2

3. Create a dts directory for the dtb files
cd /boot
mkdir dts
mv ox820-pogoplug-pro.dtb dts/
mv ox820-pogoplug-classic.dtb dts/

4. And install it with dpkg. If you encounter error with flash-kernel when running dpkg, then remove flash-kernel first to avoid potential problem (It is much better to generate uImage and uInitrd manually anyway):
apt-get remove flash-kernel 
dpkg -i linux-image-3.18.5-oxnas-tld-1_1_armel.deb

5. Create uImage and uInitrd manually:
mkimage -A arm -O linux -T kernel -C none -a 0x60008000 -e 0x60008000 -n Linux-3.18.5-oxnas-tld-1 -d /boot/vmlinuz-3.18.5-oxnas-tld-1 /boot/uImage
mkimage -A arm -O linux -T ramdisk -C gzip -a 0x60000000 -e 0x60000000 -n initramfs-3.18.5-oxnas-tld-1  -d /boot/initrd.img-3.18.5-oxnas-tld-1 /boot/uInitrd

6. Setup U-Boot envs:

Disclaimer: The following U-Boot envs settings are recommendation only. If you don't have serial console connected, please do not attempt. Be aware that changing U-Boot env settings to the wrong values will lock you out of the box until you can connect a serial console.

Pogo Pro vs. Pogo Classic: If you're installing this on a Pogo V3 Classic (no PCI), replace the ox820-pogoplug-pro.dtb below with ox820-pogoplug-classic.dtb.

Set up booting envs:
fw_setenv uinitrd_addr '0x60e00000'
fw_setenv uimage_addr '0x60500000'
fw_setenv dtb_addr '0x62c00000'
fw_setenv usb_set_bootargs 'setenv bootargs console=ttyS0,115200 root=/dev/sda1 rootdelay=10'
fw_setenv dt_bootm 'bootm $uimage_addr $uinitrd_addr $dtb_addr'
fw_setenv dt_load_dtb 'ext2load usb 0:1 $dtb_addr /boot/dts/ox820-pogoplug-pro.dtb'
fw_setenv dt_load_initrd 'ext2load usb 0:1 $uinitrd_addr /boot/uInitrd'
fw_setenv dt_load_uimage 'ext2load usb 0:1 $uimage_addr /boot/uImage'
fw_setenv dt_usb_boot 'run dt_load_uimage; run dt_load_initrd; run dt_load_dtb; run dt_bootm'
fw_setenv dt_usb_bootcmd 'run usb_set_bootargs; run dt_usb_boot'
fw_setenv dt_bootcmd_usb 'usb start; run dt_usb_bootcmd; usb stop; reset'
fw_setenv bootcmd 'run dt_bootcmd_usb'

7. Sync. Double check your u-boot envs, make sure there is no error. And reboot
sync
fw_printenv
reboot

B. Installation to run with stock U-Boot in NAND

If you're running the Pogoplug V3 with stock U-Boot (or the ALAM variant by installing Arch Linux before), the easy way to boot your rootfs with the new kernel is to boot with stock U-Boot tftp. The instruction is the same for section 1 (Installation to run with new U-Boot in NAND), but the uImage needs to be created with the DTB file embedded inside it, and the u-boot environment varialbes need to be setup differently. Assuming you've already set up tftp server on another Linux box.

1. Create uImage and uInitrd manually:

Pogo Pro vs. Pogo Classic: If you're installing this on a Pogo V3 Classic (no PCI), replace the ox820-pogoplug-pro.dtb below with ox820-pogoplug-classic.dtb.

cp -a zImage-3.18.5-oxnas-tld-1 zImage-3.18.5-oxnas-tld-1.fdt
cat dts/ox820-pogoplug-pro.dtb >> zImage-3.18.5-oxnas-tld-1.fdt
mkimage  -A arm -O linux -C none -T kernel -a 0x60008000 -e 0x60008000 -n Linux-3.18.5-oxnas-tld-1 -d zImage-3.18.5-oxnas-tld-1.fdt  uImage
mkimage -A arm -O linux -T ramdisk -C gzip -a 0x60000000 -e 0x60000000 -n initramfs-3.18.5-oxnas-tld-1  -d /boot/initrd.img-3.18.5-oxnas-tld-1 /boot/uInitrd

Copy both uImage and uInitrd to your tftproot server directory

2. Setup U-Boot envs:

Disclaimer: The following U-Boot envs settings are recommendation only. If you don't have serial console connected, please do not attempt. Be aware that changing U-Boot env settings to the wrong values will lock you out of the box until you can connect a serial console.

Set up booting envs. Please adjust the ipaddr (the Pogo V3 IP address) and serverip (the tftp server IP address) to your specific local network settings.
fw_setenv usb_set_bootargs 'setenv bootargs console=ttyS0,115200 root=/dev/sda1 rootdelay=10'
fw_setenv ipaddr '192.168.0.222'
fw_setenv serverip '192.168.0.224'
fw_setenv uinitrd_addr '0x60e00000'
fw_setenv uimage_addr '0x60500000'
fw_setenv tftp_bootcmd 'run bootcmd_tftp'
fw_setenv tftp_boot 'bootm $uimage_addr $uinitrd_addr'
fw_setenv tftp_load_uinitrd 'tftpboot $uinitrd_addr uInitrd'
fw_setenv tftp_load_uimage 'tftpboot $uimage_addr uImage'
fw_setenv bootcmd_tftp 'run usb_set_bootargs; run tftp_load_uimage; run tftp_load_uinitrd; run tftp_boot'

3. Test the tftp booting in serial console:
> run bootcmd_tftp

4. After verifying it works, set bootcmd permanently in Debian:
fw_setenv bootcmd  'run bootcmd_tftp'

==============================================================

Updated 02 Nov 2014:

Rootfs Debian-3.17.0-oxnas-tld-1-rootfs-bodhi.tar.bz2 was uploaded. This rootfs is to keep in sync with kernel Linux-3.17.0-oxnas-tld-1.

Basic minimal Debian Oxnas rootfs for Popo Pro/Classic V3 plug:

- tarball size: 83M
- install size: 251M
- a basic wheezy rootfs
- Installed packages: nano, avahi, ntp, busybox-syslogd (log to RAM), htop, dialog, bz2.
- see LED controls in /etc/rc.local, and /etc/rc0.d/K08halt
- see some useful aliases in /root/.profile
- root password: root

Download at Dropbox:

Debian-3.17.0-oxnas-tld-1-rootfs-bodhi.tar.bz2 (re-uploaded Apr 28, 2020).

md5:
c8e9df471f331c56befc4051a754bfea

And remember to check the hash of what you download, as always.


INSTALLATION:

Installation can be done on any Linux box, with a fresh USB drive (SD card or HDD would work fine too). It is assuming the USB drive is mounted at /media/sdb1.

1. Format a new Ext3 USB drive, and label it rootfs. Note: if your existing uBoot env for rootfs type is ext2, then you might want to keep it consistent and use Ext2 USB drive. It will work with Ext3 drive without problem, though.

For example:
set_bootargs_usb=setenv bootargs console=$console root=$usb_root rootdelay=$rootdelay rootfstype=$rootfstype $mtdparts
rootfstype=ext2

2. Mount the drive on a Linux box. As root user, cd to top level directory and extract it.
cd /media/sdb1 
tar -xjf Debian-3.17.0-oxnas-tld-1-rootfs-bodhi.tar.bz2

3. edit /media/sdb1/etc/fstab entry for /dev/root to match the rootfstype of your usb_rootfstype (however, you can keep it as Ext2 without problem in booting an Ext3 partition).
/dev/root      /               ext2    noatime,errors=remount-ro 0 1

4. Create uImage with embbeded DTB to run with older u-boot. Please see Note 2 below if you are running this kernel witht the new U-Boot.

Pogo Pro vs. Pogo Classic: If you're installing this on a Pogo V3 Classic (no PCI), replace the ox820-pogoplug-pro.dtb below with ox820-pogoplug-classic.dtb.

cd /media/sdb1/boot
cp -a zImage-3.17.0-oxnas-tld-1 zImage-3.17.0-oxnas-tld-1.fdt
cat dts/ox820-pogoplug-pro.dtb >> zImage-3.17.0-oxnas-tld-1.fdt
mkimage  -A arm -O linux -C none -T kernel -a 0x60008000 -e 0x60008000 -n 'Linux-3.3.17.0-oxnas-tld-1' -d zImage-3.17.0-oxnas-tld-1.fdt  uImage
sync

5. Done. Take this USB rootfs to your plug and cold start.

Note1: After logging in this rootf the first time, remember to generate new SSH key to make it your own unique rootfs. And also update your rootfs to get the latest Debian package updates:
rm /etc/ssh/ssh_host*
ssh-keygen -A

apt-get update
apt-get upgrade

Note2: To simplify the first time installation process, the uImage is recreated with the DTB embedded in step 4. If you are familiar with FDT kernel booting, and want to boot with separate DTB, see the Kernel 3.17 installation section A.6 in this thread for instruction about setting up u-boot envs. Or if you are going run this kernel with the new u-boot as mentioned, then do set up booting as described in section A.6.


Note3: if the Linux box that you are using to create rootfs does not already have mkimage installed then install u-boot-tools package to make it available:
apt-get install u-boot-tools

Note4: For setting up wireless on the Pogo Pro, please see: http://forum.doozan.com/read.php?2,16044,20964#msg-20964


=======================================================================


Updated 29 Oct 2014:

Kernel linux-3.17.0-oxnas-tld-1 package was uploaded. The following features are new in this version:

- Supports for CIFS

Latest Linux kernel 3.17 general release information can be found at:
LinuxChanges log

Download at Dropbox
linux-3.17.0-oxnas-tld-1-bodhi.tar.bz2
md5:
4aaff07a9e6e988d81f19c0c517b8f5c

This tarball contains 7 files:

linux-image-3.17.0-oxnas-tld-1_1_armel.deb
linux-headers-3.17.0-oxnas-tld-1_1_armel.deb
config-3.17.0-oxnas-tld-1
zImage-3.17.0-oxnas-tld-1
ox820-pogoplug-pro.dtb
ox820-pogoplug-classic.dtb
linux-3.17.0-oxnas-tld-1.patch

INSTALLATION:

A. Installation to run with new U-Boot in NAND (see new U-Boot thread here)

1. Backup your current uImage and uInitrd and other kernel files. In the /boot directory, these are files for your current kernel (xx.xx.xx is the version number):

uInitrd
uImage
initrd.img-xx.xx.xx-xxx
System.map-xx.xx.xx-xxx
vmlinuz-xx.xx.xx-xxx
config-xx.xx.xx-xxx

2. Extract the kernel in the archive:
cd /boot
tar -xjf linux-3.17.0-oxnas-tld-1-bodhi.tar.bz2

3. Create a dts directory for the dtb files
cd /boot
mkdir dts
mv ox820-pogoplug-pro.dtb dts/
mv ox820-pogoplug-classic.dtb dts/

4. And install it with dpkg. If you encounter error with flash-kernel when running dpkg, then remove flash-kernel first to avoid potential problem (It is much better to generate uImage and uInitrd manually anyway):
apt-get remove flash-kernel 
dpkg -i linux-image-3.17.0-oxnas-tld-1_1_armel.deb

5. Create uImage and uInitrd manually:
mkimage -A arm -O linux -T kernel -C none -a 0x60008000 -e 0x60008000 -n Linux-3.17.0-oxnas-tld-1 -d /boot/vmlinuz-3.17.0-oxnas-tld-1 /boot/uImage
mkimage -A arm -O linux -T ramdisk -C gzip -a 0x60000000 -e 0x60000000 -n initramfs-3.17.0-oxnas-tld-1  -d /boot/initrd.img-3.17.0-oxnas-tld-1 /boot/uInitrd

6. Setup U-Boot envs:

Disclaimer: The following U-Boot envs settings are recommendation only. If you don't have serial console connected, please do not attempt. Be aware that changing U-Boot env settings to the wrong values will lock you out of the box until you can connect a serial console.

Pogo Pro vs. Pogo Classic: If you're installing this on a Pogo V3 Classic (no PCI), replace the ox820-pogoplug-pro.dtb below with ox820-pogoplug-classic.dtb.

Set up booting envs:
fw_setenv uinitrd_addr '0x60e00000'
fw_setenv uimage_addr '0x60500000'
fw_setenv dtb_addr '0x62c00000'
fw_setenv usb_set_bootargs 'setenv bootargs console=ttyS0,115200 root=/dev/sda1 rootdelay=10'
fw_setenv dt_bootm 'bootm $uimage_addr $uinitrd_addr $dtb_addr'
fw_setenv dt_load_dtb 'ext2load usb 0:1 $dtb_addr /boot/dts/ox820-pogoplug-pro.dtb'
fw_setenv dt_load_initrd 'ext2load usb 0:1 $uinitrd_addr /boot/uInitrd'
fw_setenv dt_load_uimage 'ext2load usb 0:1 $uimage_addr /boot/uImage'
fw_setenv dt_usb_boot 'run dt_load_uimage; run dt_load_initrd; run dt_load_dtb; run dt_bootm'
fw_setenv dt_usb_bootcmd 'run usb_set_bootargs; run dt_usb_boot'
fw_setenv dt_bootcmd_usb 'usb start; run dt_usb_bootcmd; usb stop; reset'
fw_setenv bootcmd 'run dt_bootcmd_usb'

7. Sync. Double check your u-boot envs, make sure there is no error. And reboot
sync
fw_printenv
reboot

B. Installation to run with stock U-Boot in NAND

If you're running the Pogoplug V3 with stock U-Boot (or the ALAM variant by installing Arch Linux before), the easy way to boot your rootfs with the new kernel is to boot with stock U-Boot tftp. The instruction is the same for section 1 (Installation to run with new U-Boot in NAND), but the uImage needs to be created with the DTB file embedded inside it, and the u-boot environment varialbes need to be setup differently. Assuming you've already set up tftp server on another Linux box.

1. Create uImage and uInitrd manually:

Pogo Pro vs. Pogo Classic: If you're installing this on a Pogo V3 Classic (no PCI), replace the ox820-pogoplug-pro.dtb below with ox820-pogoplug-classic.dtb.

cp -a zImage-3.17.0-oxnas-tld-1 zImage-3.17.0-oxnas-tld-1.fdt
cat dts/ox820-pogoplug-pro.dtb >> zImage-3.17.0-oxnas-tld-1.fdt
mkimage  -A arm -O linux -C none -T kernel -a 0x60008000 -e 0x60008000 -n Linux-3.17.0-oxnas-tld-1 -d zImage-3.17.0-oxnas-tld-1.fdt  uImage
mkimage -A arm -O linux -T ramdisk -C gzip -a 0x60000000 -e 0x60000000 -n initramfs-3.17.0-oxnas-tld-1  -d /boot/initrd.img-3.17.0-oxnas-tld-1 /boot/uInitrd

Copy both uImage and uInitrd to your tftproot server directory

2. Setup U-Boot envs:

Disclaimer: The following U-Boot envs settings are recommendation only. If you don't have serial console connected, please do not attempt. Be aware that changing U-Boot env settings to the wrong values will lock you out of the box until you can connect a serial console.

Set up booting envs. Please adjust the ipaddr (the Pogo V3 IP address) and serverip (the tftp server IP address) to your specific local network settings.
fw_setenv usb_set_bootargs 'setenv bootargs console=ttyS0,115200 root=/dev/sda1 rootdelay=10'
fw_setenv ipaddr '192.168.0.222'
fw_setenv serverip '192.168.0.224'
fw_setenv uinitrd_addr '0x60e00000'
fw_setenv uimage_addr '0x60500000'
fw_setenv tftp_bootcmd 'run bootcmd_tftp'
fw_setenv tftp_boot 'bootm $uimage_addr $uinitrd_addr'
fw_setenv tftp_load_uinitrd 'tftpboot $uinitrd_addr uInitrd'
fw_setenv tftp_load_uimage 'tftpboot $uimage_addr uImage'
fw_setenv bootcmd_tftp 'run usb_set_bootargs; run tftp_load_uimage; run tftp_load_uinitrd; run tftp_boot'

3. Test the tftp booting in serial console:
> run bootcmd_tftp

4. After verifying it works, set bootcmd permanently in Debian:
fw_setenv bootcmd  'run bootcmd_tftp'

==============================================================
Updated 02 Oct 2014:

Kernel linux-3.16.0-oxnas-tld-4 package was uploaded. The following features are new in this version:

- Wireless (added several wifi driver modules)
- 3G
- i2c
- Webcam (most of multimedia modules are now included)
- problem with SAMBA files transfer (TCP segmentation offload) has been verified that this bug did not affect this kernel.

Download at Dropbox
linux-3.16.0-oxnas-tld-4-bodhi.tar.bz2
md5:
ecd6ce5eece557c85b6bcb694adf7b31

This tarball contains 7 files:

linux-image-3.16.0-oxnas-tld-4_4_armel.deb
linux-headers-3.16.0-oxnas-tld-4_4_armel.deb
zImage-3.16.0-oxnas-tld-4
config-3.16.0-oxnas-tld-4
ox820-pogoplug-pro.dtb
ox820-pogoplug-classic.dtb
linux-3.16.0-oxnas-tld-1.patch

Installation:

Please follow the same installation instruction for kernel linux-3.15.3-oxnas-tld-1 below (replace 3.15.3-oxnas-tld-1 with 3.16.0-oxnas-tld-4 in the instruction).

==============================================================
Updated 24 Aug 2014:

Kernel linux-3.16.0-oxnas-tld-1 package was uploaded. The following features are new in this version:

- CONFIG_USB_ACM
- Supports for CPU Frequency governor, with CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE=y
- Wireless supports.

Also see kernel 3.16 new features described here: LinuxChanges

Download at Dropbox:

linux-3.16.0-oxnas-tld-1-bodhi.tar.bz2
md5:
89b77478515c58d3149511275fbc2bfd

This tarball contains 7 files:

linux-image-3.16.0-oxnas-tld-1_1_armel.deb
linux-headers-3.16.0-oxnas-tld-1_1_armel.deb
zImage-3.16.0-oxnas-tld-1
config-3.16.0-oxnas-tld-1
ox820-pogoplug-pro.dtb
ox820-pogoplug-classic.dtb
linux-3.16.0-oxnas-tld-1.patch (for compiling kernel: this patch should be applied to the kernel source from mainline)

Installation:

Please follow the same installation instruction for kernel linux-3.15.3-oxnas-tld-1 below (replace 3.15.3-oxnas-tld-1 with 3.16.0-oxnas-tld-1 in the instruction).

==============================================================

Updated 05 July 2014:

Kernel linux-3.15.3-oxnas-tld-1 package was uploaded. See kernel 3.15 new features described here:
LinuxChanges

Download at Dropbox:

linux-3.15.3-oxnas-tld-1-bodhi.tar.bz2
md5:
e2dc126c44d59fdf251d55dcafcdbc9d

This tarball contains 7 files:

linux-image-3.15.3-oxnas-tld-1_1.0_armel.deb
linux-headers-3.15.3-oxnas-tld-1_1.0_armel.deb
zImage-3.15.3-oxnas-tld-1
config-3.15.3-oxnas-tld-1
ox820-pogoplug-pro.dtb
ox820-pogoplug-classic.dtb
linux-3.15.3-tld-1-oxnas.patch (for compiling kernel: this patch should be applied to the kernel source from mainline)

Pogo Pro vs. Pogo Classic:

If you're installing this on a Pogo V3 Classic (no PCI), replace the ox820-pogoplug-pro.dtb with ox820-pogoplug-classic.dtb.


INSTALLATION:

1. Installation to run with new U-Boot in NAND (see new U-Boot thread here)

- Backup your rootfs to another USB stick or HDD.

- Boot into your Pogo V3 and change directory to:
cd /boot

- Backup your current uImage and uInitrd (if there is any). In the /boot directory, these are files for your current kernel (xx.xx.xx is the version number):
uInitrd
uImage
initrd.img-xx.xx.xx-xxx
System.map-xx.xx.xx-xxx
vmlinuz-xx.xx.xx-xxx
config-xx.xx.xx-xxx

- Extract the kernel in the archive:
tar -xjf linux-3.15.3-oxnas-tld-1-bodhi.tar.bz2

- Create a dts directory for the dtb (just for organization purpose)
mkdir dts
mv ox820-pogoplug-pro.dtb dts/

- And install it with dpkg. If you encounter error with flash-kernel when running dpkg, then remove flash-kernel first to avoid potential problem (It is much better to generate uImage and uInitrd manually anyway):
apt-get remove flash-kernel 
dpkg -i linux-image-3.15.3-oxnas-tld-1_5_armel.deb

- Create uImage and uInitrd manually:
mkimage -A arm -O linux -T kernel -C none -a 0x60008000 -e 0x60008000 -n Linux-3.15.3-oxnas-tld-1 -d /boot/vmlinuz-3.15.3-oxnas-tld-1 /boot/uImage
mkimage -A arm -O linux -T ramdisk -C gzip -a 0x60000000 -e 0x60000000 -n initramfs-3.15.3-oxnas-tld-1  -d /boot/initrd.img-3.15.3-oxnas-tld-1 /boot/uInitrd

- Setup U-Boot envs:

Disclaimer: The following U-Boot envs settings are recommendation only. If you don't have serial console connected, please do not attempt. Be aware that changing U-Boot env settings to the wrong values will lock you out of the box until you can connect a serial console.

Your booting envs should look like below. These are only for demonstration for the correct load addresses (not to be cut/paste as is). However these are my current u-boot envs.
uinitrd_addr=0x60e00000
uimage_addr=0x60500000
dtb_addr=0x62c00000
usb_set_bootargs=setenv bootargs console=ttyS0,115200 root=/dev/sda1 rootdelay=10
dt_bootm=bootm $uimage_addr $uinitrd_addr $dtb_addr
dt_load_dtb=ext2load usb 0:1 $dtb_addr /boot/dts/ox820-pogoplug-pro.dtb
dt_load_initrd=ext2load usb 0:1 $uinitrd_addr /boot/uInitrd
dt_load_uimage=ext2load usb 0:1 $uimage_addr /boot/uImage
dt_usb_boot=run dt_load_uimage; run dt_load_initrd; run dt_load_dtb; run dt_bootm
dt_usb_bootcmd=run usb_set_bootargs; run dt_usb_boot
dt_bootcmd_usb=usb start; run dt_usb_bootcmd; usb stop; reset
bootcmd=run dt_bootcmd_usb

- Connect serial console/netconsole and monitor the boot log.

- Sync. Double check your u-boot envs, make sure there is no error. And reboot
sync
fw_printenv
reboot

2. Installation to run with stock U-Boot in NAND

If you're running the Pogoplug V3 with stock U-Boot (or the ALAM variant by installing Arch Linux before), the easy way to boot your rootfs with the new kernel is to boot with stock U-Boot tftp. The instruction is the same for section 1 (Installation to run with new U-Boot in NAND), but the uImage needs to be created with the DTB file embedded inside it, and the u-boot environment varialbes need to be setup differently. Assuming you've already set up tftp server on another Linux box.

- Create uImage and uInitrd manually:

cp -a zImage-3.15.3-oxnas-tld-1 zImage-3.15.3-oxnas-tld-1.fdt
cat dts/ox820-pogoplug-pro.dtb >> zImage-3.15.3-oxnas-tld-1.fdt
mkimage  -A arm -O linux -C none -T kernel -a 0x60008000 -e 0x60008000 -n 'Linux-3.15.3-oxnas-tld-1' -d zImage-3.15.3-oxnas-tld-1.fdt  uImage
mkimage -A arm -O linux -T ramdisk -C gzip -a 0x60000000 -e 0x60000000 -n initramfs-3.15.3-oxnas-tld-1  -d /boot/initrd.img-3.15.3-oxnas-tld-1 /boot/uInitrd

Copy both uImage and uInitrd to your tftproot server directory

- Setup U-Boot envs:

Disclaimer: The following U-Boot envs settings are recommendation only. If you don't have serial console connected, please do not attempt. Be aware that changing U-Boot env settings to the wrong values will lock you out of the box until you can connect a serial console.

Your booting envs should look like below. These are only for demonstration for the correct load addresses (not to be cut/paste as is). However these are my current u-boot envs. Please adjust the ipaddr (the Pogo V3 IP address) and serverip (the tftp server IP address) to your specific local network settings.
usb_set_bootargs=setenv bootargs console=ttyS0,115200 root=/dev/sda1 rootdelay=10
ipaddr=192.168.0.222
serverip=192.168.0.224
uinitrd_addr=0x60e00000
uimage_addr=0x60500000
tftp_bootcmd=run bootcmd_tftp
tftp_boot=bootm $uimage_addr $uinitrd_addr
tftp_load_uinitrd=tftpboot $uinitrd_addr uInitrd
tftp_load_uimage=tftpboot $uimage_addr uImage
bootcmd_tftp=run usb_set_bootargs; run tftp_load_uimage; run tftp_load_uinitrd; run tftp_boot

- Test the tftp booting in serial console:
> run bootcmd_tftp

After verifying it works, set bootcmd permanently in Debian:
fw_setenv bootcmd  'run bootcmd_tftp'

==========================================================
Updated 18 May 2014:

Kernel linux-3.14.0-oxnas-tld-5 package was uploaded. The kernel 3.14 has lot of new features which are described here:
LinuxChanges

Download at Dropbox:

linux-3.14.0-oxnas-tld-5-bodhi.tar.bz2
md5:
654ae31c0a0c7d4169719d51a85d6443

This tarball contains 5 files:

linux-image-3.14.0-oxnas-tld-5_5_armel.deb
zImage-3.14.0-oxnas-tld-5
config-3.14.0-oxnas-tld-5
linux-headers-3.14.0-oxnas-tld-5_5_armel.deb
ox820-pogoplug-pro.dtb

Also, the linux-oxnas-3.14-tld-5.patch is attached in this post.

Download ox820-pogoplug-classic.dtb:

If you're installing this on a Pogo V3 Classic (no PCI), also download the attached ox820-pogoplug-classic.dtb in this post. And replace the ox820-pogoplug-pro.dtb with this DTB.

Installation:

Please follow the same installation instruction as in previous version:
Kernel linux-3.12.13-oxnas-tld-5 package (Updated 12 May 2014)

==============================================================

Updated 13 May 2014:

Rootfs Debian-3.12.13-oxnas-tld-5-rootfs-bodhi.tar.bz2 was uploaded.

Basic minimal Debian Oxnas rootfs for Popo Pro V3 plug:

- tarball size: 76M
- install size: 229M
- a basic wheezy rootfs
- Installed packages: nano, avahi, ntp, busybox-syslogd (log to RAM), htop, dialog.
- see LED controls in /etc/rc.local, and /etc/rc0.d/K08halt
- see some useful aliases in /root/.profile
- root password: root

Download at Dropbox:

Debian-3.12.13-oxnas-tld-5-rootfs-bodhi.tar.bz2
md5:
62e700af606dc7a686d9aa4f2e702998

Download ox820-pogoplug-classic.dtb:

If you're installing this on a Pogo V3 Classic (no PCI), also download the attached ox820-pogoplug-classic.dtb in this post.

Installation:

- format a new ext3 USB drive, and label it rootfs. Note: your uBoot env for usb_rootfstype must match your USB file system, and it can be Ext2, Ext3 or Ext4. To be able to use this rootfs with stock u-boot, it should be formatted as Ext3. But if you're running new u-boot then it could be Ext4.

- As root user, cd to top level directory and extract it (assuming the USB drive is mounted at /media/sdb1)
cd /media/sdb1 
tar -xjf Debian-3.12.13-oxnas-tld-5-rootfs-bodhi.tar.bz2
- Edit /media/sdb1/etc/fstab entry for /dev/root to match the rootfstype of your usb_rootfstype.

- If you have the Pogoplug V3 Classic (with no PCI) then replace the DTB
mv boot/dts/ox820-pogoplug-pro.dtb boot/dts/ox820-pogoplug-pro.dtb.bak 
mv ox820-pogoplug-classic.dtb boot/dts/ox820-pogoplug-pro.dtb

- Sync to complete .
sync

- On your Pogo Pro, modify your u-boot envs as decribed in the kernel installtion section (updated 12 May 2014), if you have not done so. And please be sure that you read the Disclaimer in that paragraph!
- Connect serial console/netconsole and monitor the boot log
- Cold start your Pogo with this USB rootfs.

Note:

After logging in this rootf the first time, remember to do update your rootfs to get the latest Debian package updates:

apt-get update
apt-get upgrade


===================================
end of Older rootfs and kernel releases.

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



Edited 9 time(s). Last edit at 05/16/2024 05:03PM by bodhi.
Re: Linux Kernel 3.12.13 Pogo V3 (Oxnas OX820) package and rootfs (Flattened Device Tree)
May 12, 2014 11:40PM
Kernel linux-3.12.13-oxnas-tld-5 package was uploaded. Please see 1st post for download link.

-bodhi
===========================
Forum Wiki
bodhi's corner (buy bodhi a beer)
I recently acquired 3 PPV3 devices with the B01 revision. They all work perfectly. Along with my arudino projects and raspberrypi projects I've decided to add these low powered devices. I am a long time user of Debian on a lot of different hardware platforms and would like to install it on at least one of these devices. That said, I'm new to this forum and I'm having a hard time wading into the pool. The process of installing to this specific hardware has been frustrating me. Mostly the frustration I am having is trying to find the most current installation information that is viable and still down-load-able. I was able to install the Arch linux distro to a 4GB usb drive but after that I've had little success getting Squeeze or Wheezy to install.

For some reason I seem to get stuck in a loop while searching for the installation instructions. They point back around to the same point and I can't find any current or up to date info. Google is your friend and it almost all seems to point back to the doozan web site for this topic. If it doesn't diretly then the pages link back or give it as the source of their information so one way or another it links back here.

Any light you can shine on the topic at hand would be greatly appreciated.
Re: Linux Kernel 3.12.13 Pogo V3 (Oxnas OX820) package and rootfs (Flattened Device Tree)
May 13, 2014 06:57PM
Rootfs Debian-3.12.13-oxnas-tld-5 was uploaded. Please see 1st post for download link.

-bodhi
===========================
Forum Wiki
bodhi's corner (buy bodhi a beer)
Re: Linux Kernel 3.12.13 Pogo V3 (Oxnas OX820) package and rootfs (Flattened Device Tree)
May 13, 2014 07:09PM
thebladerunner,

The kernel/rootfs that I uploaded in this thread is the latest out there. Thanks to kref works.

The summary for the current status re Pogo V3:
- new U-Boot is available (but I have not uploaded it yet). See here.
- new Debian kernel and wheezy rootfs are available.
- installation must be done manually (no script)

You are running the B01, which does not have PCI, I assume. This kernel/rootfs could work with it using the Pogo V3 Classic Device Tree file. I have not tried it on my V3 Classic (it's somewhere still in the box since I bought it on a fire sale last year).

In the past, we run Debian rootfs with Arch kernel in NAND, because nobody has compiled Debian kernel for it. But now we do now, so it is full blown Debian.

Feel free to ask questions, I know it's a little bit confusing re this Pogoplug. I just never have time to write up more details description.

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



Edited 2 time(s). Last edit at 05/13/2014 07:13PM by bodhi.
@bodhi:
Did you have time to try the openwrt kernel patches for the 3.13 kernel sources?
I know that they are there and I actually compiled a 3.13 kernel once, but I never found the the time to test the uImage on one of my Pogoplugs..
Re: Linux Kernel 3.12.13 Pogo V3 (Oxnas OX820) package and rootfs (Flattened Device Tree)
May 13, 2014 08:08PM
@Ingmar,

No, I haven't. I did try to bring it to 3.14, but patching has some strange problem and I have not looked further. I thought the openwrt is a straight patch from kref sources. Perhaps you know there is more patch on top ?

-bodhi
===========================
Forum Wiki
bodhi's corner (buy bodhi a beer)
Re: Linux Kernel 3.12.13 Pogo V3 (Oxnas OX820) package and rootfs (Flattened Device Tree)
May 13, 2014 10:37PM
Here is post that has Pogo V3 Classic DTB attached (it's untested). It might work with the Pogo Pro kernel.
http://forum.doozan.com/read.php?3,15912,16053#msg-16053

And I've updated 1st post to add more info.

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



Edited 1 time(s). Last edit at 05/13/2014 10:38PM by bodhi.
The openwrt guys seem to have brought it to 3.14, already. Have a look here:
https://gitorious.org/openwrt-oxnas/openwrt-oxnas/commit/6f090b045b00f1739b292d14c1bbf5f84eaa345b
Re: Linux Kernel 3.12.13 Pogo V3 (Oxnas OX820) package and rootfs (Flattened Device Tree)
May 14, 2014 02:50PM
Thanks ingmar! hmm, wondering why my patch was not successful. I'll try again.

-bodhi
===========================
Forum Wiki
bodhi's corner (buy bodhi a beer)
Re: Linux Kernel 3.12.13 Pogo V3 (Oxnas OX820) package and rootfs (Flattened Device Tree)
May 14, 2014 06:38PM
I've also posted this problem at Arch site to get more feedback.

----------------------------------------------------------------
Netconsole problem in kernel 3.12.13 oxnas.

Did anybody set up netconsole in Arch successfully? I'm seeing this problem running Debian and I thought it is probaly in Arch, too. Apparently, the carrier detect happened so fast that it was deemed untrustworthy by netpoll. The end result: eth0 is not brought up properly later. I've tracked it down to this code, and it does not seem to a bug, just the way it was designed:
http://lxr.free-electrons.com/source/net/core/netpoll.c?v=3.12#L1137

Log:
[   12.476695] netpoll: netconsole: local IPv4 address 192.168.0.222
[   12.482792] netpoll: netconsole: interface 'eth0'
[   12.487470] netpoll: netconsole: remote port 6666
[   12.492177] netpoll: netconsole: remote IPv4 address 192.168.0.220
[   12.498327] netpoll: netconsole: remote ethernet address ff:ff:ff:ff:ff:ff
[   12.505198] netpoll: netconsole: device eth0 not up yet, forcing it
[   12.511472] eth0: device MAC address 00:25:31:xx:xx:xx
[   12.518630] netpoll: netconsole: carrier detect appears untrustworthy, waiting 4 seconds
[   14.510635] libphy: stmmac-0:00 - Link is Up - 1000/Full
[   16.533734] console [netcon0] enabled
[   16.537390] netconsole: network logging started
..
..
[....] Configuring network interfaces...SIOCSIFHWADDR: Device or resource busy - you may need to down the interface
Failed to bring up eth0.
done.

So is netpoll a little too strict in determining how trustworthy the carrier detect is?
TIA for any feedback,

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



Edited 1 time(s). Last edit at 05/14/2014 06:41PM by bodhi.
Re: Linux Kernel 3.12.13 Pogo V3 (Oxnas OX820) package and rootfs (Flattened Device Tree)
May 18, 2014 07:58PM
Kernel linux-3.14.0-oxnas-tld-5 package was uploaded. Please see 1st post for download link.

-bodhi
===========================
Forum Wiki
bodhi's corner (buy bodhi a beer)
VERY NICE work my friend!
Thank you for sharing.
I will be sure to test both your new U-Boot and kernel, once I find the time. Keep up the good work.. ;-)
Re: Linux Kernel 3.12.13 Pogo V3 (Oxnas OX820) package and rootfs (Flattened Device Tree)
May 19, 2014 01:44AM
My pleasure :) It took some minor retrofitting to rebase this Oxnas 3.12 kernel to 3.14 (common PCIe kernel interface changes). I did try to look at OpenWrt patch, but due to my unfamiliarity with it, I could not see exactly what changes they've made!

-bodhi
===========================
Forum Wiki
bodhi's corner (buy bodhi a beer)
WOW! A new kernel for the EOL Oxnas! EPIC!
I'll try it asap!

Edit:
Does it work with Pogoplug V3 non Pro too? (I only have the non-WIFI version)

I tried it now with Pogoplug V3 non Pro ("classic"), and it doesn't work for me. Don't know if I did anything wrong.
I screwed it up anyway: I first updated the UBoot, that worked without any problems. But after that I couldn't boot back into my Debian Squeeze rootfs; obviously in my rootfs there wasn't anything in /boot; I thought I had a backup of /boot but sadly I can't find it anymore.

So I tried using the new rootfs with the new kernel, but the Pogoplug V3 gets stuck at
Uncompressing Linux... done, booting the kernel.
Full output (read via serial console)

U-Boot SPL 2013.10 (Apr 27 2014 - 19:08:27)
  Boot device: NAND
Attempting to set PLLA to 800 MHz ...
  plla_ctrl0 : 0000030a
  plla_ctrl1 : 00400000
  plla_ctrl2 : 007f0068
  plla_ctrl3 : 00000193

PLLA Set


U-Boot 2013.10-tld-3 (May 15 2014 - 14:54:14) for OXNAS

DRAM:  128 MiB
NAND:  128 MiB
In:    serial
Out:   serial
Err:   serial
Net:
Led:    GREEN
mii0
Main Loop
Hit any key to stop autoboot:  0
(Re)start USB...
USB0:   USB EHCI 1.00
scanning bus 0 for devices... 3 USB Device(s) found
       scanning usb for storage devices... 1 Storage Device(s) found
3676848 bytes read in 335 ms (10.5 MiB/s)
1852456 bytes read in 213 ms (8.3 MiB/s)
7029 bytes read in 215 ms (31.3 KiB/s)
## Booting kernel from Legacy Image at 60500000 ...
   Image Name:   Linux-3.12.13-oxnas-tld-5
   Image Type:   ARM Linux Kernel Image (uncompressed)
   Data Size:    3676784 Bytes = 3.5 MiB
   Load Address: 60008000
   Entry Point:  60008000
   Verifying Checksum ... OK
## Loading init Ramdisk from Legacy Image at 60e00000 ...
   Image Name:   initramfs-3.12.13-oxnas-tld-5
   Image Type:   ARM Linux RAMDisk Image (gzip compressed)
   Data Size:    1852392 Bytes = 1.8 MiB
   Load Address: 60000000
   Entry Point:  60000000
   Verifying Checksum ... OK
## Flattened Device Tree blob at 62c00000
   Booting using the fdt blob at 0x62c00000
   Loading Kernel Image ... OK
   Loading Ramdisk to 67c66000, end 67e2a3e8 ... OK
   Loading Device Tree to 67c61000, end 67c65b74 ... OK

Led:    GREEN

Starting kernel ...

Uncompressing Linux... done, booting the kernel.


Is there any way how I can revive that device?



Edited 3 time(s). Last edit at 05/23/2014 02:43PM by theliquid.
Re: Linux Kernel 3.14.0 Pogo V3 (Oxnas OX820) package and rootfs (Flattened Device Tree)
May 23, 2014 03:38PM
theliquid,

This kernel is for the Pro with PCI.

You can try to use the ox820-pogoplug-classic.dtb file that I've attached in this post:
http://forum.doozan.com/read.php?3,15912,16053#msg-16053

Save your ox820-pogoplug-pro.dtb and replace this dtb to the same place, same name. And see if you can boot with it. The Classic does not have PCI controller, hopefully the DTB will tell it that there is no PCI and it will boot OK.

If this does not work, I'll compile the Classic version. I meant to do this eventually, but have not got time to do it :)

-bodhi
===========================
Forum Wiki
bodhi's corner (buy bodhi a beer)
bodhi Wrote:
-------------------------------------------------------
> theliquid,
>
> This kernel is for the Pro with PCI.
>
> You can try to use the ox820-pogoplug-classic.dtb
> file that I've attached in this post:
> http://forum.doozan.com/read.php?3,15912,16053#msg
> -16053
>
> Save your ox820-pogoplug-pro.dtb and replace this
> dtb to the same place, same name. And see if you
> can boot with it. The Classic does not have PCI
> controller, hopefully the DTB will tell it that
> there is no PCI and it will boot OK.
>
> If this does not work, I'll compile the Classic
> version. I meant to do this eventually, but have
> not got time to do it :)


Hi bodhi!

Thank you for your fast reply! It's working now!!!! :)
Thanks a lot for your help and your hard work in developing for the Pogoplug v3!



Edited 1 time(s). Last edit at 05/23/2014 04:14PM by theliquid.
Re: Linux Kernel 3.14.0 Pogo V3 (Oxnas OX820) package and rootfs (Flattened Device Tree)
May 23, 2014 04:17PM
Hi theliquid,

Cool! so the classic DTB works fine after you've replaced it? I would like to include that fact in the 1st post.

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



Edited 1 time(s). Last edit at 05/23/2014 04:18PM by bodhi.
Yes. I just renamed it to ox820-pogoplug-pro.dtb as you said. Now the PogoV3 is booting normally!
Re: Linux Kernel 3.14.0 Pogo V3 (Oxnas OX820) package and rootfs (Flattened Device Tree)
May 23, 2014 04:32PM
Excellent! Thanks for testing it.

-bodhi
===========================
Forum Wiki
bodhi's corner (buy bodhi a beer)
Addition: I successfully upgraded to kernel version 3.14.0. I just let the ox820-pogoplug-pro.dtb in place.

The best feature of your uboot/kernel is that I can finally boot up that Pogoplug with more than one usb drive attached. (With the older kernel/uboot it didn't start when I attached more than the rootfs-usb-device).
Re: Linux Kernel 3.14.0 Pogo V3 (Oxnas OX820) package and rootfs (Flattened Device Tree)
May 23, 2014 07:26PM
Awesome!

Note in booting multiple USB/SATA. If only one partition is labeled rootfs, then it will be found correctly. And it does not matter how many devices that contain Debian installation . But if more than one partition are labeled rootfs then you might run into the situation when the kernel uImage and uInitrd from one partition, but the actual rootfs is from another! In this situation, their labels should be different (e.g. rootfs1, rootfs2,….)

-bodhi
===========================
Forum Wiki
bodhi's corner (buy bodhi a beer)
Hi, I have a problem...

Quote

root@debian:/boot# mkimage -A arm -O linux -T kernel -C none -a 0x60008000 -e 0x60008000 -n linux-3.12.13-oxnas-tld-5 -d /boot/vmlinuz-3.12.13-oxnas-tld-5 /boot/uImage
Image Name: linux-3.12.13-oxnas-tld-5
Created: Sat May 24 01:29:05 2014
Image Type: ARM Linux Kernel Image (uncompressed)
Data Size: 3676784 Bytes = 3590.61 kB = 3.51 MB
Load Address: 60008000
Entry Point: 60008000
root@debian:/boot# mkimage -A arm -O linux -T ramdisk -C gzip -a 0x60000000 -n initramfs-3.12.13-oxnas-tld-5 -d /boot/initrd.img-3.12.13-oxnas-tld-5 /boot/uInitrd
Image Name: initramfs-3.12.13-oxnas-tld-5
Created: Sat May 24 01:31:50 2014
Image Type: ARM Linux RAMDisk Image (gzip compressed)
Data Size: 1852162 Bytes = 1808.75 kB = 1.77 MB
Load Address: 60000000
Entry Point: 60000000
root@debian:/boot# sync
root@debian:/boot# fw_printenv
Warning: Bad CRC, using default environment
bootcmd=bootp; setenv bootargs root=/dev/nfs nfsroot=${serverip}:${rootpath} ip=${ipaddr}:${serverip}:${gatewayip}:${netmask}:${hostname}::off; bootm
bootdelay=5
baudrate=115200
Any help?
Sorry.. I have Pogoplug Pro
Re: Linux Kernel 3.14.0 Pogo V3 (Oxnas OX820) package and rootfs (Flattened Device Tree)
May 24, 2014 03:33PM
effendi,

- Which U-Boot and kernel was you running on this Pogo before installing the new kernel?
- Did you follow the instruction to set up U-Boot envs? This section:
- Setup U-Boot envs: 

Disclaimer: The following U-Boot envs settings are recommendation only. If you don't have serial console connected, please do not attempt. Be aware that changing U-Boot env settings to the wrong values will lock you out of the box until you can connect a serial console. 

Your booting envs should look like below. These are only for demonstration for the correct load addresses (not to be cut/paste as is). However these are my current u-boot envs. 
uinitrd_addr=0x60e00000
uimage_addr=0x60500000
dtb_addr=0x62c00000
usb_set_bootargs=setenv bootargs console=ttyS0,115200 root=/dev/sda1 rootdelay=10
dt_bootm=bootm $uimage_addr $uinitrd_addr $dtb_addr
dt_load_dtb=ext2load usb 0:1 $dtb_addr /boot/dts/ox820-pogoplug-pro.dtb
dt_load_initrd=ext2load usb 0:1 $uinitrd_addr /boot/uInitrd
dt_load_uimage=ext2load usb 0:1 $uimage_addr /boot/uImage
dt_usb_boot=run dt_load_uimage; run dt_load_initrd; run dt_load_dtb; run dt_bootm
dt_usb_bootcmd=run usb_set_bootargs; run dt_usb_boot
dt_bootcmd_usb=usb start; run dt_usb_bootcmd; usb stop; reset
bootcmd=run dt_bootcmd_usb

- Does your /etc/fw_env.config look like this?
root@PogoPro:/localdisk/linux/uboot# cat /etc/fw_env.config 
# pogoplug pro
  /dev/mtd0               0x00100000      0x20000         0x20000

-bodhi
===========================
Forum Wiki
bodhi's corner (buy bodhi a beer)
After hacking around a bit with this kernel I realized that I'm missing compatibility for tun devices. It seems tun.ko is missing. Is there any way to support it?
Re: Linux Kernel 3.14.0 Pogo V3 (Oxnas OX820) package and rootfs (Flattened Device Tree)
May 28, 2014 03:37PM
theliquid,

TUN It is not included in the current config, and I could build a new version to include it. But I'm about to be on the road for a while, so probably about late next month is when I can test and release.

-bodhi
===========================
Forum Wiki
bodhi's corner (buy bodhi a beer)
Ok, thanks for the reply. No need to rush. I still have my Pogoplug V1 :)
gp
Re: Linux Kernel 3.14.0 Pogo V3 (Oxnas OX820) package and rootfs (Flattened Device Tree)
June 05, 2014 12:15AM
hello

does the wifi board work with this package?
Sorry, you can't reply to this topic. It has been closed.