Date: Mon, 8 May 2017 23:48:35 +0100 From: Mike Wolman <mike@wolman.co.uk> To: freebsd-mips@freebsd.org Subject: Re: onion omega2+ Message-ID: <e92bc818-485f-d9fc-da2b-776bae2b0916@wolman.co.uk> In-Reply-To: <CAJ1Oi8G%2BvTMBX4Ey=H=2WruXDjXjcyte5_n8T3VDdL=h8m7%2BVw@mail.gmail.com> References: <694efc3a-e183-35a1-a0bf-9a9c0d708826@wolman.co.uk> <CAJ1Oi8G%2BvTMBX4Ey=H=2WruXDjXjcyte5_n8T3VDdL=h8m7%2BVw@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
More info in case anyone can point me in the right direction. I have found: https://forum.openwrt.org/viewtopic.php?id=53865 I have tried changing how lzma compresses the kernel by adding -d20 to the build scripts eg: /usr/local/bin/lzma e /home/mike/omega2/src/../root/mipsel_ap/boot/kernel.MT7628_FDT/kernel \ /home/mike/omega2/src/../tftpboot/kernel.MT7628_FDT.lzma -d20 This did not work. Looking at the onion omega conf I see that it uses mkuzip and not lzma with the following settings: X_FSIMAGE_CMD="mkuzip" X_FSIMAGE_ARGS="-L -d -s 65536 -v" X_FSIMAGE_SUFFIX=".ulzma" So tried the following: mkuzip -L -d -s 65536 -v -o kernel.MT7628_FDT.ulzma kernel.MT7628_FDT mkimage -A mips -O linux -T kernel -C lzma \ -a 0x80001000 -e 0x80001100 \ -n "FreeBSD" -d kernel.MT7628_FDT.lzma kernel.MT7628_FDT.ulzma.uImage But this did not work either. On 08/05/2017 19:41, Aleksandr Rybalko wrote: > Hi Mike! > > I see you have no "OK" after "Uncompressing Kernel Image ...", so > first point uboot decompressor fail. > Why fail? Because you have wrong base address in image: > Load Address: fffffff2 > Entry Point: fffffff2 > MIPS32 machines have RAM mapped to 0x80000000 address, so adding its > size, you will get max address (if 16MB, it will be 0x81000000), but > you uboot image was created with 0xfffffff2. > > Even more, unpacked kernel expects it will be called at 0x80001100. so > if you have ELF kernel (file with ELF header, like every executable) > that file have to be loaded at (0x80001100 - ELF_HEADER_SIZE). > In most cases it will be 0x80001100 - 0x100 = 0x80001000. But sometime > (I did not found why) it can be 0x20, you can find it by looking at > .text section in readelf -S. > > So if you have kernel with entry point 0x80001100 and .text segment > offset 0x100, you have to create uboot image with load address > 0x80001000 and entry point 0x80001100. > > If that step successful you will get: > /Uncompressing Kernel Image/ ... OK > Starting kernel ... > > Last line mean, uboot did jump into kernel code. > > Good luck. > > 2017-05-07 18:20 GMT+03:00 Mike Wolman <mike@wolman.co.uk > <mailto:mike@wolman.co.uk>>: > > Hi, > > I am trying to get FreeBSD working on this board - I think I am > almost there in getting it working but need some help please. > > I have followed instructions from the freebsd-wifi-build and > *think* I have got everything correct - I am trying to do this on > a CURRENT setup: > > FreeBSD f64-current.mw.office 12.0-CURRENT FreeBSD 12.0-CURRENT #0 > r317887: Sun May 7 03:20:34 UTC 2017 > mike@f64-current.mw.office:/usr/obj/usr/src/sys/GENERIC-NODEBUG amd64 > > > $ cat ~/.freebsd-wifi-build-settings.cfg > X_SKIP_MORE_STUFF=YES > X_EXTRA_SRC_CONF=~/omega2/src.conf > > $ cat ~/omega2/src.conf > WITHOUT_CLANG=YES > WITHOUT_CLANG_FULL=YES > > get dts files from thread > http://community.onion.io/topic/1099/openwrt-on-the-omega-2/8 > <http://community.onion.io/topic/1099/openwrt-on-the-omega-2/8> > > > cd ~/omega2/src/sys/gnu/dts/mips > fetch > https://raw.githubusercontent.com/WereCatf/source/image/target/linux/ramips/dts/OMEGA2.dtsi > <https://raw.githubusercontent.com/WereCatf/source/image/target/linux/ramips/dts/OMEGA2.dtsi> > fetch > https://raw.githubusercontent.com/WereCatf/source/image/target/linux/ramips/dts/OMEGA2.dts > <https://raw.githubusercontent.com/WereCatf/source/image/target/linux/ramips/dts/OMEGA2.dts> > fetch > https://raw.githubusercontent.com/WereCatf/source/image/target/linux/ramips/dts/OMEGA2P.dts > <https://raw.githubusercontent.com/WereCatf/source/image/target/linux/ramips/dts/OMEGA2P.dts> > > X_DTS_FILE=OMEGA2P.dts KERNCONF=MT7628_FDT > ../freebsd-wifi-build/build/bin/build ralink buildworld > X_DTS_FILE=OMEGA2P.dts KERNCONF=MT7628_FDT > ../freebsd-wifi-build/build/bin/build ralink buildkernel > X_DTS_FILE=OMEGA2P.dts KERNCONF=MT7628_FDT > ../freebsd-wifi-build/build/bin/build ralink installworld > X_DTS_FILE=OMEGA2P.dts KERNCONF=MT7628_FDT > ../freebsd-wifi-build/build/bin/build ralink installkernel > X_DTS_FILE=OMEGA2P.dts KERNCONF=MT7628_FDT > ../freebsd-wifi-build/build/bin/build ralink distribution > > > X_DTS_FILE=OMEGA2P.dts KERNCONF=MT7628_FDT > ../freebsd-wifi-build/build/bin/build ralink mfsroot > X_DTS_FILE=OMEGA2P.dts KERNCONF=MT7628_FDT > ../freebsd-wifi-build/build/bin/build ralink fsimage > X_DTS_FILE=OMEGA2P.dts KERNCONF=MT7628_FDT > ../freebsd-wifi-build/build/bin/build ralink uboot > > > Create flash: > > X_FLASH=kernel.MT7628_FDT.lzma.flash > dd if=/dev/zero bs=$(( 0x200000 )) count=1 of=${X_FLASH} > dd if=kernel.MT7628_FDT.lzma.uImage of=${X_FLASH} conv=notrunc > dd if= mfsroot-ralink.img.lzma >> ${X_FLASH} > > > $ readelf -h kernel.MT7628_FDT | grep Entry > Entry point address: 0x80001100 > > > > > Now on the omega over serial - I didnt get the network expansion > doc thing so am doing stuff with usb rather than tftp > > I am not 100% sure about the 0x80001100 and the fatload and have > tried this > > Omega2 # fatload usb 0:1 0x80001100 /kernel.MT7628_FDT.lzma.flash > * > * > Reading file "/kernel.MT7628_FDT.lzma.flash" > * > ** > ** > ** > ****** > ********************************************************************************************************************************************* > ****** > * > FAT: 2108463 Bytes read > Omega2 # bootm 0x80001100 > ## Booting image at 80001100 ... > Image Name: FreeBSD > Image Type: MIPS Linux Kernel Image (lzma compressed) > Data Size: 1365122 Bytes = 1.3 MB > Load Address: fffffff2 > Entry Point: fffffff2 > Verifying Checksum ... OK > Uncompressing Kernel Image ... > > > At this point nothing happens and console hangs - note in > OMEGA2.dtsithe console is set to ttyS0: > > bootargs = "console=ttyS0,115200"; > > > > > I have also tried with just kernel.MT7628_FDT and > kernel.MT7628_FDT.lzma but both fail: > > Omega2 # fatload usb 0:1 0x80001100 /kernel.MT7628_FDT.lzma.uImage > * > * > Reading file "/kernel.MT7628_FDT.lzma.uImage" > * > ** > ** > ****** > ****************************************************************************************************************************** > ********** > * > FAT: 1365186 Bytes read > Omega2 # bootm 0x80001100 > ## Booting image at 80001100 ... > Image Name: FreeBSD > Image Type: MIPS Linux Kernel Image (lzma compressed) > Data Size: 1365122 Bytes = 1.3 MB > Load Address: fffffff2 > Entry Point: fffffff2 > Verifying Checksum ... OK > Uncompressing Kernel Image ... > > > A few comments on the hardware for anyone who wants to get one: > > Get the expansion dock with serial port access - the power dock > does not provide serial access - i think it is possible to use an > ftdi ttl serial chip/cable but have not tried. > > Stupidly I forgot this only has wifi access so you are not able to > tftp boot this without getting the ethernet network expansion but > loading stuff up from a usb memory stick is seem fine from u-boot. > > I do not think that it is possible to boot from the SD card on the > Omega2+ - which is a shame. > > Thanks for reading, > > Mike. > > > > _______________________________________________ > freebsd-mips@freebsd.org <mailto:freebsd-mips@freebsd.org>mailing list > https://lists.freebsd.org/mailman/listinfo/freebsd-mips > <https://lists.freebsd.org/mailman/listinfo/freebsd-mips> > To unsubscribe, send any mail to > "freebsd-mips-unsubscribe@freebsd.org > <mailto:freebsd-mips-unsubscribe@freebsd.org>" > > > > > -- > WBW > ------- > Rybalko Aleksandr <ray@ddteam.net <mailto:ray@ddteam.net>> >
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?e92bc818-485f-d9fc-da2b-776bae2b0916>