Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 9 May 2017 01:25:06 +0100
From:      Mike Wolman <mike@wolman.co.uk>
To:        Mori Hiroki <yamori813@yahoo.co.jp>, "freebsd-mips@freebsd.org" <freebsd-mips@freebsd.org>
Subject:   Re: onion omega2+
Message-ID:  <fda8b792-f6c4-d0fb-5a99-d190cc3a4f39@wolman.co.uk>
In-Reply-To: <410144.69078.qm@web101716.mail.ssk.yahoo.co.jp>
References:  <694efc3a-e183-35a1-a0bf-9a9c0d708826@wolman.co.uk> <CAJ1Oi8G%2BvTMBX4Ey=H=2WruXDjXjcyte5_n8T3VDdL=h8m7%2BVw@mail.gmail.com> <e92bc818-485f-d9fc-da2b-776bae2b0916@wolman.co.uk> <410144.69078.qm@web101716.mail.ssk.yahoo.co.jp>

next in thread | previous in thread | raw e-mail | index | archive | help
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@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@wolman.co.uk>
>> To: freebsd-mips@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@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>>
>>>
>> _______________________________________________
>> freebsd-mips@freebsd.org mailing list
>> https://lists.freebsd.org/mailman/listinfo/freebsd-mips
>> To unsubscribe, send any mail to
>> "freebsd-mips-unsubscribe@freebsd.org"
>>




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?fda8b792-f6c4-d0fb-5a99-d190cc3a4f39>