onion omega2+
Mike Wolman
mike at wolman.co.uk
Tue May 9 00:25:13 UTC 2017
Hi Mori,
I grabbed the dts files from:
https://github.com/WereCatf/source/tree/image/target/linux/ramips/dts
https://github.com/WereCatf/source/blob/image/target/linux/ramips/dts/OMEGA2P.dts
https://github.com/WereCatf/source/blob/image/target/linux/ramips/dts/OMEGA2.dtsi
If this is of any use from the default linux install on the flash:
root at Omega-12BF:/proc# cat /proc/mtd
dev: size erasesize name
mtd0: 00030000 00010000 "u-boot"
mtd1: 00010000 00010000 "u-boot-env"
mtd2: 00010000 00010000 "factory"
mtd3: 01fb0000 00010000 "firmware"
mtd4: 00148842 00010000 "kernel"
mtd5: 01e677be 00010000 "rootfs"
mtd6: 01950000 00010000 "rootfs_data"
btw after posting i spotted and error in what i did with:
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
I have redone this using the correct compressed kernel ie:
mkimage -A mips -O linux -T kernel -C lzma \
-a 0x80001000 -e 0x80001100 \
-n "FreeBSD" -d kernel.MT7628_FDT.ulzma
kernel.MT7628_FDT.ulzma.uImage
But this didnt work.
On 09/05/2017 01:17, Mori Hiroki wrote:
> Hi.
>
> I think if U-Boot work memory make broken then
> Uncompressing Kernel Image is NG.
>
> Some ARM U-Boot is use top address in work memory.
> If this case your kernel start address to move to
> after work memory. But I never see in MIPS.
>
> And What is set FDT_DTS_FILE in your kernel configuration ?
>
> ----- Original Message -----
>
>> From: Mike Wolman <mike at wolman.co.uk>
>> To: freebsd-mips at freebsd.org
>> Cc:
>> Date: 2017/5/9, Tue 07:48
>> Subject: Re: onion omega2+
>>
>>
>> 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 at wolman.co.uk
>>> <mailto:mike at 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 at 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 at freebsd.org <mailto:freebsd-mips at 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 at freebsd.org
>>> <mailto:freebsd-mips-unsubscribe at freebsd.org>"
>>>
>>>
>>>
>>>
>>> --
>>> WBW
>>> -------
>>> Rybalko Aleksandr <ray at ddteam.net <mailto:ray at ddteam.net>>
>>>
>> _______________________________________________
>> freebsd-mips at freebsd.org mailing list
>> https://lists.freebsd.org/mailman/listinfo/freebsd-mips
>> To unsubscribe, send any mail to
>> "freebsd-mips-unsubscribe at freebsd.org"
>>
More information about the freebsd-mips
mailing list