I'm looking for the source code of a specific u-boot version.

Tony Dinh mibodhi at gmail.com
Thu Dec 28 22:54:43 CET 2023


On Thu, Dec 28, 2023 at 11:48 AM Simon Glass <sjg at chromium.org> wrote:
>
> Hi Mario,
>
> On Thu, Dec 28, 2023 at 3:48 PM Mario Marietto <marietto2008 at gmail.com> wrote:
> >
> > I tried to compile it,but If failed :
> >
> > /mnt/zroot2/zroot2/OS/Chromebook/freebsd-xen/domU-freebsd/bootloaders/u-boot-2017.05#
> > ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- make snow_defconfig
> >
> >   HOSTCC  scripts/basic/fixdep
> >   HOSTCC  scripts/kconfig/conf.o
> >   HOSTCC  scripts/kconfig/zconf.tab.o
> > In file included from scripts/kconfig/zconf.tab.c:2470:
> > In function ‘dep_stack_insert’,
> >     inlined from ‘sym_check_print_recursive’ at scripts/kconfig/symbol.c:1123:3,
> >     inlined from ‘sym_check_deps’ at scripts/kconfig/symbol.c:1300:3:
> > scripts/kconfig/symbol.c:1099:19: warning: storing the address of
> > local variable ‘cv_stack’ in ‘check_top’ [-Wdangling-pointer=]
> >  1099 |         check_top = stack;
> >       |         ~~~~~~~~~~^~~~~~~
> > scripts/kconfig/symbol.c: In function ‘sym_check_deps’:
> > scripts/kconfig/symbol.c:1120:26: note: ‘cv_stack’ declared here
> >  1120 |         struct dep_stack cv_stack;
> >       |                          ^~~~~~~~
> > scripts/kconfig/symbol.c:1090:4: note: ‘check_top’ declared here
> >  1090 | } *check_top;
> >       |    ^~~~~~~~~
> >   HOSTLD  scripts/kconfig/conf
> > #
> > # configuration written to .config
> > #
> >
> > /mnt/zroot2/zroot2/OS/Chromebook/freebsd-xen/domU-freebsd/bootloaders/u-boot-2017.05#
> > ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- make
> >
> > scripts/kconfig/conf  --silentoldconfig Kconfig
> >   CHK     include/config.h
> >   CFG     u-boot.cfg
> >   GEN     include/autoconf.mk
> >   GEN     include/autoconf.mk.dep
> >   CFG     spl/u-boot.cfg
> >   GEN     spl/include/autoconf.mk
> >   CHK     include/config/uboot.release
> >   CHK     include/generated/version_autogenerated.h
> >   CHK     include/generated/timestamp_autogenerated.h
> >   UPD     include/generated/timestamp_autogenerated.h
> >   CC      lib/asm-offsets.s
> > arm-linux-gnueabihf-gcc: error: unrecognized -march target: armv5
> > arm-linux-gnueabihf-gcc: note: valid arguments are: armv4 armv4t
> > armv5t armv5te armv5tej armv6 armv6j armv6k armv6z armv6kz armv6zk
> > armv6t2 armv6-m armv6s-m armv7 armv7-a armv7ve armv7-r armv7-m
> > armv7e-m armv8-a armv8.1-a armv8.2-a armv8.3-a armv8.4-a armv8.5-a
> > armv8.6-a armv8-m.base armv8-m.main armv8-r armv8.1-m.main armv9-a
> > iwmmxt iwmmxt2; did you mean ‘armv4’?
> > arm-linux-gnueabihf-gcc: error: missing argument to ‘-march=’
> > make[1]: *** [Kbuild:44: lib/asm-offsets.s] Error 1
> > make: *** [Makefile:1287: prepare0] Error 2
>
> You might need to compile with an old toolchain, e.g. gcc 4?

I think Simon is right. I could not rebuild that 2017.05 u-boot with
gcc 12 now. So I looked at the old log, and it was built with gcc 6.3.

  gcc -Wp,-MD,disk/.part_efi.o.d  -nostdinc -isystem
/usr/lib/gcc/arm-linux-gnueabi/6/include -Iinclude
-I./arch/arm/include -include ./include/linux/kconfig.h -D__KERNEL__
-D__UBOOT__ -Wall -Wstrict-prototypes -Wno-format-security
-fno-builtin -ffreestanding -Os -fno-stack-protector
-fno-delete-null-pointer-checks -g -fstack-usage
-Wno-format-nonliteral -Werror=date-time -D__ARM__ -marm
-mno-thumb-interwork -mabi=aapcs-linux -mword-relocations -fno-pic
-ffunction-sections -fdata-sections -fno-common -ffixed-r9
-msoft-float -pipe -march=armv5te -D__LINUX_ARM_ARCH__=5
-I./arch/arm/mach-kirkwood/include    -D"KBUILD_STR(s)=#s"
-D"KBUILD_BASENAME=KBUILD_STR(part_efi)"
-D"KBUILD_MODNAME=KBUILD_STR(part_efi)" -c -o disk/part_efi.o
disk/part_efi.c

# ll /usr/lib/gcc/arm-linux-gnueabi/6* -d
drwxr-xr-x 5 root root 4096 Apr 14  2019 /usr/lib/gcc/arm-linux-gnueabi/6
lrwxrwxrwx 1 root root    1 May 16  2017
/usr/lib/gcc/arm-linux-gnueabi/6.3.0 -> 6

Hope this helps.

All the best,
Tony

>
> Regards,
> Simon
>
>
> >
> > On Thu, Dec 28, 2023 at 3:47 PM Mario Marietto <marietto2008 at gmail.com> wrote:
> > >
> > > Hello.
> > >
> > > Can someone provide the right link to download u-boot-2017.0.5 , please ?
> > >
> > > I've found it here,but I'm not sure that it's the correct version :
> > >
> > > https://src.fedoraproject.org/repo/pkgs/uboot-tools/u-boot-2017.05.tar.bz2/sha512/be270f9242a72b05463092a022bbabd54996762de1ff23bf7575124ac02e62f49572a4e2f6f571a5019047d40027e56e35593b5cc373c4a5a39b100c3377ba93/
> > >
> > > Can you confirm it ? thanks.
> > >
> > > On Thu, Dec 28, 2023 at 1:14 AM Tony Dinh <mibodhi at gmail.com> wrote:
> > > >
> > > > Hi Mario and Heinrich,
> > > >
> > > > On Wed, Dec 27, 2023 at 12:23 PM Mario Marietto <marietto2008 at gmail.com> wrote:
> > > > >
> > > > > Hello.
> > > > >
> > > > > I'm trying to boot FreeBSD for arm32 bit as DomU on my ARM Chromebook
> > > > > SNOW with xen. Basically there are two ways to accomplish this task :
> > > > >
> > > > >
> > > > > 1) to write a patch that allows the FreeBSD kernel to boot as a zImage
> > > > > file. This could be accomplished applying this patch to a specific
> > > > > file that's on the source code of FreeBSD :
> > > > >
> > > > >
> > > > > https://xenbits.xen.org/gitweb/?p=p...8;hb=0782e25d98cc1391472717035f986c979edef0c9
> > > > >
> > > > >
> > > > >
> > > > > This patch was written by Julien Grall a lot of time ago and now it
> > > > > does not work anymore. This is the reason explain by the xen
> > > > > developers :
> > > > >
> > > > >
> > > > >
> > > > > It appears FreeBSD-CURRENT removed the last step converting the kernel
> > > > > file to kernel.bin.The patch can be readily rebased, but without
> > > > > kernel.bin that doesn't do too much.
> > > > >
> > > > >
> > > > >
> > > > > So,without a rebase of that patch the first option is not applicable.
> > > > > And I'm not able to fix it.
> > > > >
> > > > >
> > > > > 2) booting FreeBSD using U-Boot,as explained to me by a xen developer :
> > > > >
> > > > >
> > > > > I was trying to explain why and how Julien's patch works so that you
> > > > > could be the one to re-do something similar or fix the patch on the
> > > > > FreeBSD kernel that you are working with. I am happy to help review
> > > > > and write patches but I don't work with the FreeBSD kernel so I
> > > > > wouldn't be able to help you quickly. However, I might have a
> > > > > suggestion. Do you know if FreeBSD can be booted by U-Boot ?
> > > > > Because
> > > > > U-Boot definitely boots as Xen on ARM guest firmware/bootloader. You
> > > > > should be able to build U-Boot and use the U-Boot binary as Xen guest
> > > > > kernel, then U-Boot could load FreeBSD from disk or network and start
> > > > > it. For instance as domU config file:
> > > > >
> > > > > kernel="/home/petalinux/u-boot.bin"
> > > > > disk = [ '/home/petalinux/test.img,raw,xvda' ]
> > > > >
> > > > >
> > > > > Actually I'm working on the idea n. 2. Basically I need to find the
> > > > > proper u-boot file that's able to boot the image of FreeBSD that I
> > > > > have installed (13.2 for arm32 bit). Maybe I found it here :
> > > > >
> > > > >
> > > > > http://commondatastorage.googleapis.com/chromeos-localmirror/distfiles/nv_uboot-snow-simplefb.kpart.bz2
> > > > >
> > > > >
> > > > > I found that link inside this tutorial :
> > > > >
> > > > >
> > > > > https://wiki.freebsd.org/arm/Chromebook
> > > > >
> > > > >
> > > > > the version of u-boot that has been embedded in that file is the following one :
> > > > >
> > > > >
> > > > > # strings nv_uboot-snow-simplefb.kpart | grep U-Boot
> > > > > U-Boot 2011.12-gc1f6280 (May 27 2013 - 15:06:59) for SMDK5250
> > > > >
> > > > >
> > > > > So the question is easy : I need to find the source code of that old
> > > > > version of u-boot,because once compiled,it will give me the proper
> > > > > u-boot.bin kernel / bootloader file that maybe will be able to boot
> > > > > FreeBSD.
> > > >
> > > > Yes, it can boot a 32-bit ARM board. I'm not a FreeBSD person, but
> > > > I've helped a FreeBSD user booting a 32-bit ARM box with u-boot
> > > > (GoFlexHome Marvell Kirkwood 6281). The u-boot version was 2017.05. I
> > > > used an out-of-tree u-boot build. This u-boot executed the ubldr to
> > > > boot FreeBSD.
> > > >
> > > > Please see here:
> > > > https://forum.doozan.com/read.php?3,49039,82059#msg-82059
> > > >
> > > > It's been so long, I don't remember the details. Just to confirm what
> > > > Heinrich said that u-boot can indeed boot 32-bit FreeBSD, since many
> > > > years ago.
> > > >
> > > > All the best,
> > > > Tony
> > > >
> > > > >
> > > > >
> > > > > --
> > > > > Mario.
> > >
> > >
> > >
> > > --
> > > Mario.
> >
> >
> >
> > --
> > Mario.


More information about the U-Boot mailing list