[U-Boot] [PATCH] uboot and ZFS

Jorgen Lundman lundman at lundman.net
Thu May 10 07:43:47 CEST 2012


>
> Technically, U-Boot is GPLv2+ so GPLv2 only code _may_ not be accepted That
> is for Wolfgang to decide, but you have been warned :)
>

Naturally, he is king after all. There will be a thousand reasons to reject 
it, but hopefully not due to license.



I based my GITHUB after the CuBox fork of u-boot. I will leave it up to 
those guys to submit their patches separately.


My fork of u-boot is here:

** https://github.com/lundman/u-boot


To see only the change set for adding ZFS:

** https://github.com/lundman/u-boot/compare/zfs


Since I merged in EXT4 patches to get a feel for u-boot, they are here:

** https://github.com/lundman/u-boot/compare/ext4

Only minor strings changes of "ext2" -> "ext4", otherwise the Samsung patch 
V4 posted in here.



Lund



Useless sample output:


CuBox>> zfsls usb 0:2 /ROOT/@/
zfs reading label 0 at sector 0 (byte 0)
ZFS Pool GUID: 8349310002080761692 (73deb535d9a3c75c) Label: GUID: 
1229383784885
2426185 (aa9c7c635319edc9), txg: 1348, SPA v28, ashift: 9

ZPOOL label 'rpool'

zfs fsname = '/ROOT/' snapname='<NULL>' filename = '/'
<DIR>  lib
<DIR>  sbin
<DIR>  var
<DIR>  bin
<DIR>  dev
<DIR>  selinux
<DIR>  usr
<DIR>  root
<DIR>  home
<DIR>  srv
<DIR>  ttt
<DIR>  proc
<DIR>  tmp
<DIR>  mnt
<DIR>  etc
<DIR>  media
<DIR>  boot
<DIR>  opt
<DIR>  sys
<DIR>  .old-root
<DIR>  src
        rootfile.txt
<DIR>  rpool



CuBox>> zfsload usb 0:2 0x00200000 /ROOT/@/boot/uImage
Loading file "/ROOT/@/boot/uImage" from usb device 0:2 usbda2
zfs reading label 0 at sector 0 (byte 0)
...........
ZFS Pool GUID: 8349310002080761692 (73deb535d9a3c75c) Label: GUID: 
12293837848852426185 (aa9c7c635319edc9), txg: 1348, SPA v28, ashift: 9
zfs endian set to little
zfs fsname = '/ROOT/' snapname='<NULL>' filename = '/boot/uImage'
3623192 bytes read

CuBox>> bootm
## Booting kernel from Legacy Image at 00200000 ...
    Image Name:   Linux-2.6.32.9-dove-5.4.2
    Created:      2012-01-07  10:23:53 UTC
    Image Type:   ARM Linux Kernel Image (uncompressed)
    Data Size:    3623128 Bytes =  3.5 MB
    Load Address: 00008000
    Entry Point:  00008000
    Verifying Checksum ... OK
    Loading Kernel Image ... OK
OK

Starting kernel ...

[    0.000000] Linux version 2.6.32.9-dove-5.4.2 (rabeeh at kossay-desktop) 
(gcc version 4.3.2 (sdk3.2rc1-ct-ng-1.4.1) ) #46 PREEMPT Sat Jan 7 12:23:38 
IST 2012


More information about the U-Boot mailing list