From owner-freebsd-mips@freebsd.org Thu May 11 17:19:54 2017 Return-Path: Delivered-To: freebsd-mips@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id D381BD68552 for ; Thu, 11 May 2017 17:19:54 +0000 (UTC) (envelope-from mike@wolman.co.uk) Received: from avasout08.plus.net (avasout08.plus.net [212.159.14.20]) (using TLSv1 with cipher DHE-RSA-AES128-SHA (128/128 bits)) (Client CN "Bizanga Labs SMTP Client Certificate", Issuer "Bizanga Labs CA" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id EAFC41789 for ; Thu, 11 May 2017 17:19:53 +0000 (UTC) (envelope-from mike@wolman.co.uk) Received: from [192.168.3.50] ([80.229.66.11]) by avasout08 with smtp id K5Kp1v0030EahWw015KqpC; Thu, 11 May 2017 18:19:51 +0100 X-CM-Score: 0.00 X-CNFS-Analysis: v=2.2 cv=JPdLi4Cb c=1 sm=1 tr=0 a=sNOkzuqjfbpz3c/qSHODpA==:117 a=sNOkzuqjfbpz3c/qSHODpA==:17 a=r77TgQKjGQsHNAKrUKIA:9 a=NEAV23lmAAAA:8 a=UmSUZ3ptAAAA:8 a=4I05h4SrAAAA:8 a=l4KoLRpVckND58WieDEA:9 a=FionAtAFUV0A8qPy:21 a=LXsLWB7_BhdK32y9:21 a=QEXdDO2ut3YA:10 a=pGLkceISAAAA:8 a=vYmQ6wlUfUkEe5TkdcwA:9 a=RkqUVOrZdOtx93Fw:21 a=NtxN9s60dfK-LuFb:21 a=XQ37r22w2BZyJCNK:21 a=_W_S_7VecoQA:10 a=FyGKTEvU35uc88vWBdgE:22 a=SXYKVUms7l59yVxtnTo9:22 a=6kGIvZw6iX1k4Y-7sg4_:22 Subject: Re: onion omega2+ To: Aleksandr Rybalko References: <694efc3a-e183-35a1-a0bf-9a9c0d708826@wolman.co.uk> <5866.49154.qm@web101718.mail.ssk.yahoo.co.jp> <102de390-63ca-a156-2208-bea3d5eea0f9@wolman.co.uk> <541011.41820.qm@web101719.mail.ssk.yahoo.co.jp> <672be258-8fed-6317-1325-f9fccf2646c3@wolman.co.uk> <369335.16286.qm@web101716.mail.ssk.yahoo.co.jp> <711a889d-9701-2441-5c9c-98e0ac607ffb@wolman.co.uk> <456721.9572.qm@web101705.mail.ssk.yahoo.co.jp> <8b21a15c-3af8-bdba-cc70-6bd0e3a65f39@wolman.co.uk> <05065E4E-1D0F-49DE-B14D-D45ECCEA251F@gmail.com> <2b8211f6-9f42-0f11-678f-a2ed830b2430@wolman.co.uk> Cc: Adrian Chadd , "freebsd-mips@freebsd.org" From: Mike Wolman Message-ID: <8b7d4ebb-0048-11d7-9743-7eb6b38e9335@wolman.co.uk> Date: Thu, 11 May 2017 18:19:46 +0100 User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:45.0) Gecko/20100101 Thunderbird/45.8.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit X-Content-Filtered-By: Mailman/MimeDel 2.1.23 X-BeenThere: freebsd-mips@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Porting FreeBSD to MIPS List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 11 May 2017 17:19:54 -0000 Quick update on where I am with this - basically still trying to join the kernel and root fs so the kernel can find a root filesystem when boots. I have tried various ways to combine the kernel and fs image file but am not getting much further. I saw in https://github.com/freebsd/freebsd-wifi-build/blob/master/build/bin/build_ubnt uses mkfwimage so also tried that by editing ../freebsd-wifi-build/programs/ubnt-mkfwimage/mkfwimage.c: { .name = "OMEGA2P", .kern_start = 0x80001100, .kern_entry = 0x80001100, .firmware_max_length= 0x00B00000, }, This seems to make the image ok: [mike@f64-current ~/omega2/tftpboot]$ ../freebsd-wifi-build/programs/ubnt-mkfwimage/mkfwimage -B OMEGA2P -v "2" -k kernel.MT7628_FDT.lzma.uImage -r /home/mike/omega2/tftpboot/mfsroot-ralink.img.lzma -C 65536 -c ../cfgfs-ralink.img -o MT7628_FDT.initial.img board = OMEGA2P kernel: 1144975 bytes (base 0x80001100) rootfs: 10834 bytes cfgfs: 65536 bytes total: (1221345 bytes) root: 10323825 0x8011898f cfg: 65536 0x80af1100 Firmware version: '2' Output file: 'MT7628_FDT.initial.img' Part count: 3 kernel: 1144975 bytes (free: 0) rootfs: 10834 bytes (free: 10312991) cfg: 65536 bytes (free: 0) [mike@f64-current ~/omega2/tftpboot]$ But this doesnt boot: Omega2 # fatload usb 0:1 0x80800000 MT7628_FDT.initial.img * * Reading file "MT7628_FDT.initial.img" * ** ** ****** *************************************************************************************************************************** ** * FAT: 1221817 Bytes read Omega2 # bootm 0x80800000 ## Booting image at 80800000 ... Bad Magic Number,4F50454E Omega2 # I have followed section 8 in https://github.com/freebsd/freebsd-wifi-build/blob/master/build/README.user-build with various changes but none seem to get past the kernel booting and stopping when it cannot find the root. One thing in this document I was unsure of is: "assuming that 2MByte is allocated to the kernel" I see nowhere which then indicates to the kernel that the uzip filesystem resides past that point in memory so am still confused as to how the kernel knows where to find the uzip image file for geom to deal with and then finally mount. On 11/05/2017 12:32, Aleksandr Rybalko wrote: > BTW, Mike, join us on IRC in EFNet network, channel #bsdmips. There is > a lot of guys who able to help. > > 2017-05-11 3:24 GMT+03:00 Mike Wolman >: > > > I have re-read this thread (a few times) and redone a kernel now > have managed to get u-boot stuff going, calling it a night but I > think other than the compression bits I think the rest build stuff > should be straight forward and just a matter of sorting out the > root filesystem stuff. > > One thing I dont get is why it seems to be ok booting up without > debugging stuff enabled but when turned on it panics but will have > another look as maybe it was where I was loading the image file > into memory from? > > Not sure about the flashing of the on board memory and may get a > second one as a backup before i attempt that. I wouldnt mind some > input on that side of things once I have a image file ready to go > as Im not too keen on bricking the device. > > Thanks again for everyones input, I will do some testing once > logged in as a user and see how it goes as a wifi extender and > simpler router before having a go with the gpio/spi/iic stuff. > > Mike. > > > Testing BULK mode...Identifying a storage device...* > USB_STORAGE: 1 Storage Device(s) found > Omega2 # fatload usb 0:1 0x80800000 kernel.MT7628_FDT.uImage > * > * > Reading file "kernel.MT7628_FDT.uImage" > * > ** > ****** > ****** > ******************************************************************************************************************************************************************************************* > **** > * > FAT: 4491512 Bytes read > Omega2 # bootm 0x80800000 > ## Booting image at 80800000 ... > Image Name: FreeBSD > Image Type: MIPS Linux Kernel Image (uncompressed) > Data Size: 4491448 Bytes = 4.3 MB > Load Address: 80001100 > Entry Point: 80001100 > Verifying Checksum ... OK > OK > No initrd > ## Transferring control to Linux (at address 80001100) ... > ## Giving linux memsize in MB, 128 > > Starting kernel ... > > FDT DTB at: 0x804133c0 > CPU clock: 580MHz > Timer clock: 290MHz > UART clock: 40MHz > > U-Boot args (from 0 args): > None > Environment: > memsize=128 > initrd_start=0x00000000 > initrd_size=0x0 > flash_start=0x00000000 > flash_size=0x2000000 > entry: mips_init() > RAM size: 128MB (from FDT) > Cache info: > picache_stride = 4096 > picache_loopcount = 16 > pdcache_stride = 4096 > pdcache_loopcount = 8 > max line size = 32 > cpu0: MIPS Technologies processor v85.150 > MMU: Standard TLB, 32 entries (4K 16K 64K 256K 1M 16M 64M 256M > pg sizes) > L1 i-cache: 4 ways of 512 sets, 32 bytes per line > L1 d-cache: 4 ways of 256 sets, 32 bytes per line > L2 cache: disabled > Config1=0xbee3519e > Config2=0x80000000 > Config3=0x2420 > Config7=0x80010400 > Physical memory chunk(s): > 0x47b000 - 0x7ffffff, 129519616 bytes (31621 pages) > Maxmem is 0x8000000 > KDB: debugger backends: ddb > KDB: current backend: ddb > Copyright (c) 1992-2017 The FreeBSD Project. > Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, > 1993, 1994 > The Regents of the University of California. All rights > reserved. > FreeBSD is a registered trademark of The FreeBSD Foundation. > FreeBSD 12.0-CURRENT #0 r317887M: Wed May 10 20:49:10 UTC 2017 > mike@f64-current.mw.office:/usr/home/mike/omega2/obj/mipsel_ap/mips.mipsel/usr/home/mike/omega2/src/sys/MT7628_FDT > mips > gcc version 4.2.1 20070831 patched [FreeBSD] > Preloaded elf kernel "kernel" at 0x8046e160. > real memory = 134217728 (131072K bytes) > Physical memory chunk(s): > 0x0050f000 - 0x07d9ffff, 126423040 bytes (30865 pages) > avail memory = 125616128 (119MB) > arc4random: no preloaded entropy cache > ULE: setup cpu 0 > random: entropy device external interface > mem: > null: > openfirm: > nexus0: > random: harvesting attach, 8 bytes (4 bits) from nexus0 > ofwbus0: on nexus0 > palmbus0: mem 0x10000000-0x101fffff on ofwbus0 > simplebus0: mem 0x600-0x6ff irq > 10 on palmbus0 > random: harvesting attach, 8 bytes (4 bits) from simplebus0 > random: harvesting attach, 8 bytes (4 bits) from palmbus0 > random: harvesting attach, 8 bytes (4 bits) from ofwbus0 > cpupic0: on ofwbus0 > random: harvesting attach, 8 bytes (4 bits) from cpupic0 > sysc0: mem 0-0xff on palmbus0 > random: harvesting attach, 8 bytes (4 bits) from sysc0 > pinctrl0: on ofwbus0 > pinctrl0: GPIO mode start: 0x54054404 > Processing 1 pin-config node(s) in pinctrl-0 for i2c@900 > Processing 2 pin-config node(s) in pinctrl-0 for spi@b00 > Processing 1 pin-config node(s) in pinctrl-0 for uartlite@c00 > Processing 1 pin-config node(s) in pinctrl-0 for uart1@d00 > Processing 1 pin-config node(s) in pinctrl-0 for uart2@e00 > Processing 2 pin-config node(s) in pinctrl-0 for pwm@5000 > Processing 1 pin-config node(s) in pinctrl-0 for pinctrl > Processing 1 pin-config node(s) in pinctrl-0 for sdhci@10130000 > pinctrl0: GPIO mode end : 0x50054044 > random: harvesting attach, 8 bytes (4 bits) from pinctrl0 > rstctrl0: on ofwbus0 > random: harvesting attach, 8 bytes (4 bits) from rstctrl0 > clkctrl0: on ofwbus0 > random: harvesting attach, 8 bytes (4 bits) from clkctrl0 > intc0: mem 0x200-0x2ff irq 8 on > palmbus0 > random: harvesting attach, 8 bytes (4 bits) from intc0 > gpio0: mem 0-0xff irq 17 on simplebus0 > gpiobus0: on gpio0 > random: harvesting attach, 8 bytes (4 bits) from gpiobus0 > random: harvesting attach, 8 bytes (4 bits) from gpio0 > gpio1: mem 0-0xff irq 18 on simplebus0 > gpiobus1: on gpio1 > random: harvesting attach, 8 bytes (4 bits) from gpiobus1 > random: harvesting attach, 8 bytes (4 bits) from gpio1 > gpio2: mem 0-0xff irq 19 on simplebus0 > gpiobus2: on gpio2 > random: harvesting attach, 8 bytes (4 bits) from gpiobus2 > random: harvesting attach, 8 bytes (4 bits) from gpio2 > cpulist0: on ofwbus0 > random: harvesting attach, 8 bytes (4 bits) from cpulist0 > palmbus0: mem 0x120-0x12f irq 7 compat > ralink,mt7628an-wdt (no driver attached) > palmbus0: mem 0x300-0x3ff irq 9 compat > ralink,mt7620a-memc (no driver attached) > gpioc0: on gpio0 > random: harvesting attach, 8 bytes (4 bits) from gpioc0 > gpioc1: on gpio1 > random: harvesting attach, 8 bytes (4 bits) from gpioc1 > gpioc2: on gpio2 > random: harvesting attach, 8 bytes (4 bits) from gpioc2 > palmbus0: mem 0x900-0x9ff compat mediatek,mt7628-i2c (no > driver attached) > palmbus0: mem 0xa00-0xaff irq 11 disabled compat > ralink,mt7620a-i2s (no driver attached) > spi0: mem 0xb00-0xbff on palmbus0 > spibus0: on spi0 > mx25l0: at cs 0 mode 0 on spibus0 > mx25l0: mx25ll256, sector 65536 bytes, 512 sectors > random: harvesting attach, 8 bytes (4 bits) from mx25l0 > spibus0: at cs 1 mode 0 > random: harvesting attach, 8 bytes (4 bits) from spibus0 > random: harvesting attach, 8 bytes (4 bits) from spi0 > uart0: mem 0xc00-0xcff > irq 12 on palmbus0 > uart0: console (119047,n,8,1) > uart0: fast interrupt > uart0: PPS capture mode: DCD > random: harvesting attach, 8 bytes (4 bits) from uart0 > uart1: mem 0xd00-0xdff > irq 13 on palmbus0 > uart1: fast interrupt > uart1: PPS capture mode: DCD > random: harvesting attach, 8 bytes (4 bits) from uart1 > uart2: mem 0xe00-0xeff > irq 14 on palmbus0 > uart2: fast interrupt > uart2: PPS capture mode: DCD > random: harvesting attach, 8 bytes (4 bits) from uart2 > palmbus0: mem 0x5000-0x5fff compat mediatek,mt7628-pwm > (no driver attached) > palmbus0: mem 0x2000-0x27ff irq 15 disabled compat > ralink,mt7620a-pcm (no driver attached) > palmbus0: mem 0x2800-0x2fff irq 16 compat > ralink,mt7620a-gdma (no driver attached) > usbphy0: mem 0x10120000-0x10123fff on ofwbus0 > random: harvesting attach, 8 bytes (4 bits) from usbphy0 > ofwbus0: mem 0x10130000-0x10133fff irq 0 compat > ralink,mt7620-sdhci (no driver attached) > ehci0: mem 0x101c0000-0x101c0fff irq 1 on > ofwbus0 > usbus0: EHCI version 1.0 > usbus0 on ehci0 > ehci0: usbpf: Attached > random: harvesting attach, 8 bytes (4 bits) from usbus0 > random: harvesting attach, 8 bytes (4 bits) from ehci0 > ohci0: mem 0x101c1000-0x101c1fff irq 2 on ofwbus0 > usbus1 on ohci0 > ohci0: usbpf: Attached > random: harvesting attach, 8 bytes (4 bits) from usbus1 > random: harvesting attach, 8 bytes (4 bits) from ohci0 > rt0: mem > 0x10100000-0x1010ffff irq 3 on ofwbus0 > rt0: RT5350 Ethernet MAC (rev 0x00000000) > rt0: use hardcoded 00:18:e7:d5:83:90 macaddr > rt0: bpf attached > rt0: Ethernet address: 00:18:e7:d5:83:90 > random: harvesting attach, 8 bytes (4 bits) from rt0 > mtkswitch0: mem 0x10110000-0x10117fff irq 4 on > ofwbus0 > miibus0: on mtkswitch0 > ukphy0: PHY 0 on miibus0 > ukphy0: OUI 0x0017a5, model 0x0001, rev. 0 > ukphy0: none, 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto > random: harvesting attach, 8 bytes (4 bits) from ukphy0 > random: harvesting attach, 8 bytes (4 bits) from miibus0 > miibus1: on mtkswitch0 > ukphy1: PHY 1 on miibus1 > ukphy1: OUI 0x0017a5, model 0x0001, rev. 0 > ukphy1: none, 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto > random: harvesting attach, 8 bytes (4 bits) from ukphy1 > random: harvesting attach, 8 bytes (4 bits) from miibus1 > miibus2: on mtkswitch0 > ukphy2: PHY 2 on miibus2 > ukphy2: OUI 0x0017a5, model 0x0001, rev. 0 > ukphy2: none, 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto > random: harvesting attach, 8 bytes (4 bits) from ukphy2 > random: harvesting attach, 8 bytes (4 bits) from miibus2 > miibus3: on mtkswitch0 > ukphy3: PHY 3 on miibus3 > ukphy3: OUI 0x0017a5, model 0x0001, rev. 0 > ukphy3: none, 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto > random: harvesting attach, 8 bytes (4 bits) from ukphy3 > random: harvesting attach, 8 bytes (4 bits) from miibus3 > miibus4: on mtkswitch0 > ukphy4: PHY 4 on miibus4 > ukphy4: OUI 0x0017a5, model 0x0001, rev. 0 > ukphy4: none, 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto > random: harvesting attach, 8 bytes (4 bits) from ukphy4 > random: harvesting attach, 8 bytes (4 bits) from miibus4 > etherswitch0: on mtkswitch0 > random: harvesting attach, 8 bytes (4 bits) from etherswitch0 > mdio0: on mtkswitch0 > random: harvesting attach, 8 bytes (4 bits) from mdio0 > random: harvesting attach, 8 bytes (4 bits) from mtkswitch0 > ofwbus0: mem 0x10140000-0x1014ffff irq 5 disabled > type pci compat mediatek,mt7628-pci (no driver attached) > ofwbus0: mem 0x10300000-0x103fffff irq 6 compat > mediatek,mt7628-wmac (no driver attached) > gpioled0: on ofwbus0 > random: harvesting attach, 8 bytes (4 bits) from gpioled0 > ofwbus0: compat gpio-keys-polled (no driver > attached) > clock0: on nexus0 > Timecounter "MIPS32" frequency 290000000 Hz quality 800 > Event timer "MIPS32" frequency 290000000 Hz quality 800 > random: harvesting attach, 8 bytes (4 bits) from clock0 > Device configuration finished. > Timecounters tick every 10.000 msec > lo0: bpf attached > tcp_init: net.inet.tcp.tcbhashsize auto tuned to 2048 > mtkswitch0port0: link state changed to DOWN > mtkswitch0port1: link state changed to DOWN > mtkswitch0port2: link state changed to DOWN > mtkswitch0port3: link state changed to DOWN > mtkswitch0port4: link state changed to DOWN > GEOM: new disk flash/spi0 > usbus0: 480Mbps High Speed USB v2.0 > usbus1: 12Mbps Full Speed USB v1.0 > flash/spi0: slice 00000000-0002ffff: u-boot (191KB) > flash/spi0: slice 00030000-0003ffff: u-boot-env (63KB) > flash/spi0: slice 00040000-0004ffff: factory (63KB) > flash/spi0: slice 00050000-01ffffff: firmware (32447KB) > ugen1.1: at usbus1 > uhub0: > on usbus1 > ugen0.1: at usbus0 > uhub1: > on usbus0 > Trying to mount root from ufs:md0.uzip []... > Root mount waiting for: usbus1 usbus0 > uhub0: 1 port with 1 removable, self powered > random: harvesting attach, 8 bytes (4 bits) from uhub0 > uhub1: 1 port with 1 removable, self powered > random: harvesting attach, 8 bytes (4 bits) from uhub1 > ugen1.2: at usbus1 > umass0 on uhub0 > umass0: addr 2> on usbus1 > umass0:0:0: Attached to scbus0 > random: harvesting attach, 8 bytes (4 bits) from umass0 > mountroot: waiting for device md0.uzip... > (probe0:umass-sim0:0:0:0): Down reving Protocol Version from 2 to 0? > pass0 at umass-sim0 bus 0 scbus0 target 0 lun 0 > pass0: Removable Direct Access SCSI device > pass0: Serial Number 070B00012340350 > pass0: 1.000MB/s transfers > GEOM: new disk da0 > da0 at umass-sim0 bus 0 scbus0 target 0 lun 0 > da0: Removable Direct Access SCSI device > da0: Serial Number 070B00012340350 > da0: 1.000MB/s transfers > da0: 495MB (1015805 512 byte sectors) > da0: quirks=0x2 > da0: Delete methods: > (da0:umass-sim0:0:0:0): PREVENT ALLOW MEDIUM REMOVAL not supported. > Mounting from ufs:md0.uzip failed with error 19. > > Loader variables: > > Manual root filesystem specification: > : [options] > Mount using filesystem > and with the specified (optional) option list. > > eg. ufs:/dev/da0s1a > zfs:tank > cd9660:/dev/cd0 ro > (which is equivalent to: mount -t cd9660 -o ro /dev/cd0 /) > > ? List valid disk boot devices > . Yield 1 second (for background tasks) > Abort manual input > > mountroot> > > > > > -- > WBW > ------- > Rybalko Aleksandr > >