onion omega2+
Mori Hiroki
yamori813 at yahoo.co.jp
Tue May 9 12:55:56 UTC 2017
Hi.
This is my sample operation get image from network and boot.
RT3052 # tftpboot 0x80800000 Planex_MZK-WNH_kernel.kbin.oldlzma.uboot
RT3052 # bootm
I don't use USB support U-Boot. But I think fatload command argument is
temporary memory address not kernel address.
How about this.
Omega2 # fatload usb 0:1 0x80800000 kernel.MT7628_FDT.uImage
Omega2 # bootm
----- Original Message -----
>From: Mike Wolman <mike at wolman.co.uk>
>To: Aleksandr Rybalko <ray at ddteam.net>; Mori Hiroki <yamori813 at yahoo.co.jp>
>Cc: "freebsd-mips at freebsd.org" <freebsd-mips at freebsd.org>
>Date: 2017/5/9, Tue 20:48
>Subject: Re: onion omega2+
>
>
>
>
>Is it possible to exclude the compression of the kernel/image for
now eg:
>
>mkimage -A mips -C none -O linux -T kernel -a 0x80001000 -e
0x80001100 -n "FreeBSD" -d kernel.MT7628_FDT
kernel.MT7628_FDT.uImage
>
>
>I have just tried the above but when booting I get a Bad Magic
Number.
>
>
>Omega2 # fatload usb 0:1 0x80001000 kernel.MT7628_FDT.uImage
>*
>*
>Reading file "kernel.MT7628_FDT.uImage"
>*
>**
>**
>**
>**
>**
>**
>**
>**
>**
>**
>******
>******
>******************************************************************************************************************************************************************************************************************
>****
>*
>FAT: 5654824 Bytes read
>Omega2 # bootm 0x80001100
>## Booting image at 80001100 ...
>Bad Magic Number,1C994480
>Omega2 #
>
>
>I have seen other examples starting a program directly with going to
the address but this didnt work either:
>
>Omega2 # go 0x80001100
>## Starting application at 0x80001100 ...
>
>omega freezes here.
>
>
>
>
>On 09/05/2017 10:12, Aleksandr Rybalko wrote:
>
>Fix things in order :)
>>
Currently you have problem with LZMA, serial port later.
>>
>>
So, find version of lzma used to build linux firmware, MIPS routers world use about 5 incompatible versions. One of them, you can find here:
>>http://project.zrouter.org/hg/zrouter/file/9ac53695a44d/tools/oldlzma
>>
>>
>>
>>
>>2017-05-09 7:03 GMT+03:00 Mori Hiroki <yamori813 at yahoo.co.jp>:
>>
>>Hi Mike
>>>
>>>Could you show u-boot printenv command result.
>>>
>>>Thanks
>>>
>>>
>>>----- Original Message -----
>>>> From: Mike Wolman <mike at wolman.co.uk>
>>>> To: Mori Hiroki <yamori813 at yahoo.co.jp>; "freebsd-mips at freebsd.org" <freebsd-mips at freebsd.org>
>>>> Cc:
>>>
>>>> Date: 2017/5/9, Tue 10:30
>>>> Subject: Re: onion omega2+
>>>>
>>>> Hi Mori,
>>>>
>>>> When I compiled the world/kernel etc I used:
>>>>
>>>> X_DTS_FILE=OMEGA2P.dts KERNCONF=MT7628_FDT
>>>> ../freebsd-wifi-build/build/ bin/build ralink
buildkernel
>>>>
>>>> I checked the serial stuff was the same as the
other configs in:
>>>> https://github.com/freebsd/ freebsd-wifi-build/
>>>> and they looked the same.
>>>>
>>>> The OMEGA2.dtsi file has:
>>>>
>>>> chosen {
>>>> bootargs = "console=ttyS0,115200";
>>>> };
>>>>
>>>>
>>>> And mt7628an.dtsi has: serial0 = &uartlite;
>>>>
>>>> I dont think im getting as far as worrying about
the serial console at
>>>> the moment and need to get the kernel to uncompress
first.
>>>>
>>>> Mike.
>>>>
>>>>
>>>> On 09/05/2017 02:20, Mori Hiroki wrote:
>>>>> Hi Mike
>>>>>
>>>>> In FreeBSD is use serial0 dts item to console.
>>>>>
>>>>> I think good to use this at start.
>>>>>
>>>>> freebsd/sys/gnu/dts/mips/ MT7628.dts
>>>>>
>>>>> ----- Original Message -----
>>>>>> From: Mike Wolman <mike at wolman.co.uk>
>>>>>> To: Mori Hiroki <yamori813 at yahoo.co.jp>;
>>>> "freebsd-mips at freebsd.org" <freebsd-mips at freebsd.org>
>>>>>> Cc:
>>>>>> Date: 2017/5/9, Tue 09:25
>>>>>> Subject: Re: onion omega2+
>>>>>>
>>>>>> 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@ 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@ freebsd.org"
>>>>>>>>
>>>>
>>>______________________________ _________________
>>>freebsd-mips at freebsd.org mailing list
>>>https://lists.freebsd.org/ mailman/listinfo/freebsd-mips
>>>To unsubscribe, send any mail to "freebsd-mips-unsubscribe@ freebsd.org"
>>>
>>
>>
>>--
>>
>>WBW
>>-------
>>Rybalko Aleksandr <ray at ddteam.net>
>>
>>
>
>
>
More information about the freebsd-mips
mailing list