Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 10 May 2017 13:32:33 +0300
From:      Aleksandr Rybalko <ray@ddteam.net>
To:        Mike Wolman <mike@wolman.co.uk>
Cc:        Stanislav Galabov <sgalabov@gmail.com>,  "freebsd-mips@freebsd.org" <freebsd-mips@freebsd.org>
Subject:   Re: onion omega2+
Message-ID:  <CAJ1Oi8Eo3jWAy1nRO1auT03zcXBzdxtnqv=9JytyP6GU8yXWGg@mail.gmail.com>
In-Reply-To: <a8b9fd4e-6eef-740a-166a-a611b0f133e5@wolman.co.uk>
References:  <694efc3a-e183-35a1-a0bf-9a9c0d708826@wolman.co.uk> <128807.28836.qm@web101715.mail.ssk.yahoo.co.jp> <2d555385-8258-fd75-e4a3-a1e59bf86314@wolman.co.uk> <651873.78746.qm@web101702.mail.ssk.yahoo.co.jp> <CAJ1Oi8Hemuug5JRP9btUgs-MmCFgb-_qS0qrEW7h=BhPAYXpFQ@mail.gmail.com> <2c5cd01a-a8d4-3ffa-4e9c-2aad170574c1@wolman.co.uk> <39222.11970.qm@web101719.mail.ssk.yahoo.co.jp> <6f1b2d35-5d17-765a-6138-0ab85455fc09@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> <AE3AB870-6C1F-4BCC-B8A6-B3FA49E8FE10@gmail.com> <a8b9fd4e-6eef-740a-166a-a611b0f133e5@wolman.co.uk>

next in thread | previous in thread | raw e-mail | index | archive | help
Looks like you have wrongly assigned memsize somewhere.

if you have, for example 64mb of mem, but you set 128mb, then you will see
same mem twice. At 0x80000000 and at 0x84000000. So kernel when allocate
memory will get block at 0x84000000 and find it as already marked as given
for anybody else.
So recheck memsize everywhere :)

2017-05-10 12:52 GMT+03:00 Mike Wolman <mike@wolman.co.uk>:

>
> Yay - we have got somewhere - thanks so much for every ones input.
>
> I have given the binary kernel a go:
>
> [mike@f64-current ~/omega2/tftpboot]$ objcopy -O binary kernel.MT7628_FDT
> kernel.MT7628_FDT.bin
> [mike@f64-current ~/omega2/tftpboot]$ readelf -h kernel.MT7628_FDT.bin
> readelf: Not an ELF file.
>
>
> On the omega:
>
> Omega2 # fatload usb 0:1 0x80001100 kernel.MT7628_FDT.bin
> *
> *
> Reading file "kernel.MT7628_FDT.bin"
> *
> **
> ******
> ************************************************************
> *************************************************************
> ******
> ************************************************************
> ************************************************************
> *********************************************
> ****
> *
> FAT: 4491492 Bytes read
> Omega2 # bootm 0x80001100
> ## Booting image at 80001100 ...
> Bad Magic Number,00688040
> Omega2 # go 0x80001100
> ## Starting application at 0x80001100 ...
> FDT DTB  at: 0x804113c0
> CPU   clock:  580MHz
> Timer clock:  290MHz
> UART  clock:   40MHz
>
> U-Boot args (from 0 args):
>         None
> Environment:
> entry: mips_init()
> RAM size: 128MB (from FDT)
> Cache info:
>   picache_stride    =3D 4096
>   picache_loopcount =3D 16
>   pdcache_stride    =3D 4096
>   pdcache_loopcount =3D 8
>   max line size     =3D 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=3D0xbee3519e<PerfCount,WatchRegs,MIPS16,EJTAG>
>   Config2=3D0x80000000
>   Config3=3D0x2420<ULRI>
>   Config7=3D0x80010400<WII,AR>
> Physical memory chunk(s):
> 0x4d4000 - 0x7ffffff, 129155072 bytes (31532 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 10:09:03 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]
> WARNING: WITNESS option enabled, expect reduced performance.
> MEMGUARD DEBUGGING ALLOCATOR INITIALIZED:
>         MEMGUARD map base: 0xc0800000
>         MEMGUARD map size: 104860 KBytes
> panic: Memory modified after free 0x87fcf948(88) val=3D9a05 @ 0x87fcf980
>
> time =3D 1
> KDB: enter: panic
> [ thread pid 0 tid 0 ]
> Stopped at      0x4
> db>
>
>
>
> Again not sure of my next step but things are looking very positive.
>
>
>
> On 10/05/2017 10:38, Stanislav Galabov wrote:
>
>> Hi Mike,
>>
>> Alexandr is right, what I described should work for binary kernels and
>> not for ELF ones. I somehow was of the impression that you were using
>> binary. Please try the same with binary kernel per Alexandr's suggestion=
 in
>> an earlier post...
>>
>> Best wishes
>> Stanislav
>>
>> On May 10, 2017, at 12:31, Mike Wolman <mike@wolman.co.uk> wrote:
>>>
>>> Hi Stanislav,
>>>
>>> Just rebuild kernel with the original dtsi and made a new uImage with:
>>>
>>>
>>> [mike@f64-current ~/omega2/tftpboot]$ mkimage -A mips -C none -O linux
>>> -T kernel -a 0x80001100 -e 0x80001100 -n "FreeBSD" -d kernel.MT7628_FDT
>>> kernel.MT7628_FDT.uImage
>>> Image Name:   FreeBSD
>>> Created:      Wed May 10 10:10:37 2017
>>> Image Type:   MIPS Linux Kernel Image (uncompressed)
>>> Data Size:    5654760 Bytes =3D 5522.23 kB =3D 5.39 MB
>>> Load Address: 80001100
>>> Entry Point:  80001100
>>>
>>>
>>> On the Omega:
>>>
>>>
>>> Omega2 # fatload usb 0:1 0x80800000 kernel.MT7628_FDT.uImage
>>> *
>>> *
>>> Reading file "kernel.MT7628_FDT.uImage"
>>> *
>>> **
>>> ******
>>> ...
>>> ****
>>> *
>>> FAT: 5654824 Bytes read
>>> Omega2 # bootm 0x80800000
>>> ## Booting image at 80800000 ...
>>>    Image Name:   FreeBSD
>>>    Image Type:   MIPS Linux Kernel Image (uncompressed)
>>>    Data Size:    5654760 Bytes =3D  5.4 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 ...
>>>
>>>
>>> And again nothing more, I also tried one with a Load Address 80000000
>>> but that hasnt worked either.
>>>
>>>
>>> In case this is of any use - when linux boots this is what the console
>>> looks like:
>>>
>>>
>>> Boot Linux from Flash NO RESET PRESSED.
>>> ## Booting image at bc050000 ...
>>>    Image Name:   MIPS LEDE Linux-4.4.32
>>>    Image Type:   MIPS Linux Kernel Image (lzma compressed)
>>>    Data Size:    1345538 Bytes =3D  1.3 MB
>>>    Load Address: 80000000
>>>    Entry Point:  80000000
>>>    Verifying Checksum ... OK
>>>    Uncompressing Kernel Image ... OK
>>> No initrd
>>> ## Transferring control to Linux (at address 80000000) ...
>>> ## Giving linux memsize in MB, 128
>>>
>>> Starting kernel ...
>>>
>>> [    0.000000] Linux version 4.4.32 (root@2272a3272872) (gcc version
>>> 5.4.0 (LEDE GCC 5.4.0 r2292+1) ) #0 Wed Nov 23 00:21:47 2016
>>> [    0.000000] Board has DDR2
>>> [    0.000000] Analog PMU set to hw control
>>> [    0.000000] Digital PMU set to hw control
>>> [    0.000000] SoC Type: MediaTek MT7688 ver:1 eco:2
>>> [    0.000000] bootconsole [early0] enabled
>>> [    0.000000] CPU0 revision is: 00019655 (MIPS 24KEc)
>>> [    0.000000] MIPS: machine is Onion Omega2+
>>> [    0.000000] Determined physical RAM map:
>>> [    0.000000]  memory: 08000000 @ 00000000 (usable)
>>> [    0.000000] Initrd not found or empty - disabling initrd
>>> [    0.000000] Zone ranges:
>>> [    0.000000]   Normal   [mem 0x0000000000000000-0x0000000007ffffff]
>>> [    0.000000] Movable zone start for each node
>>> [    0.000000] Early memory node ranges
>>> [    0.000000]   node   0: [mem 0x0000000000000000-0x0000000007ffffff]
>>> [    0.000000] Initmem setup node 0 [mem 0x0000000000000000-0x000000000
>>> 7ffffff]
>>> [    0.000000] Primary instruction cache 64kB, VIPT, 4-way, linesize 32
>>> bytes.
>>> [    0.000000] Primary data cache 32kB, 4-way, PIPT, no aliases,
>>> linesize 32 bytes
>>> [    0.000000] Built 1 zonelists in Zone order, mobility grouping on.
>>> Total pages: 32512
>>> [    0.000000] Kernel command line: console=3DttyS0,115200
>>> rootfstype=3Dsquashfs,jffs2
>>> [    0.000000] PID hash table entries: 512 (order: -1, 2048 bytes)
>>> [    0.000000] Dentry cache hash table entries: 16384 (order: 4, 65536
>>> bytes)
>>> [    0.000000] Inode-cache hash table entries: 8192 (order: 3, 32768
>>> bytes)
>>> [    0.000000] Writing ErrCtl register=3D00022002
>>> [    0.000000] Readback ErrCtl register=3D00022002
>>> [    0.000000] Memory: 125488K/131072K available (3103K kernel code,
>>> 141K rwdata, 752K rodata, 156K init, 196K bss, 5584K reserved, 0K
>>> cma-reserved)
>>> [    0.000000] SLUB: HWalign=3D32, Order=3D0-3, MinObjects=3D0, CPUs=3D=
1, Nodes=3D1
>>> [    0.000000] NR_IRQS:256
>>> [    0.000000] intc: using register map from devicetree
>>> [    0.000000] CPU Clock: 580MHz
>>> [    0.000000] clocksource_probe: no matching clocksources found
>>> [    0.000000] clocksource: MIPS: mask: 0xffffffff max_cycles:
>>> 0xffffffff, max_idle_ns: 6590553264 ns
>>> [    0.000012] sched_clock: 32 bits at 290MHz, resolution 3ns, wraps
>>> every 74051 15902ns
>>> [    0.007522] Calibrating delay loop... 385.84 BogoMIPS (lpj=3D1929216=
)
>>> [    0.070037] pid_max: default: 32768 minimum: 301
>>> [    0.074638] Mount-cache hash table entries: 1024 (order: 0, 4096
>>> bytes)
>>> [    0.080979] Mountpoint-cache hash table entries: 1024 (order: 0, 409=
6
>>> bytes)
>>> [    0.094407] clocksource: jiffies: mask: 0xffffffff max_cycles:
>>> 0xffffffff, max_idle_ns: 19112604462750000 ns
>>> [    0.104062] pinctrl core: initialized pinctrl subsystem
>>> [    0.109786] NET: Registered protocol family 16
>>> [    0.135691] mt7621_gpio 10000600.gpio: registering 32 gpios
>>> [    0.141166] mt7621_gpio 10000600.gpio: registering 32 gpios
>>> [    0.146653] mt7621_gpio 10000600.gpio: registering 32 gpios
>>> [    0.153211] i2c-mt7621 10000900.i2c: clock 100KHz, re-start not
>>> support
>>> [    0.161026] clocksource: Switched to clocksource MIPS
>>> [    0.167442] NET: Registered protocol family 2
>>> [    0.172577] TCP established hash table entries: 1024 (order: 0, 4096
>>> bytes)
>>> [    0.179269] TCP bind hash table entries: 1024 (order: 0, 4096 bytes)
>>> [    0.185449] TCP: Hash tables configured (established 1024 bind 1024)
>>> [    0.191652] UDP hash table entries: 256 (order: 0, 4096 bytes)
>>> [    0.197255] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
>>> [    0.203624] NET: Registered protocol family 1
>>> [    0.214036] futex hash table entries: 256 (order: -1, 3072 bytes)
>>> [    0.219960] Crashlog allocated RAM at address 0x3f00000
>>> [    0.240245] squashfs: version 4.0 (2009/01/31) Phillip Lougher
>>> [    0.245900] jffs2: version 2.2 (NAND) (SUMMARY) (LZMA) (RTIME)
>>> (CMODE_PRIORITY) (c) 2001-2006 Red Hat, Inc.
>>> [    0.258137] io scheduler noop registered
>>> [    0.261942] io scheduler deadline registered (default)
>>> [    0.268315] Serial: 8250/16550 driver, 4 ports, IRQ sharing disabled
>>> [    0.276011] console [ttyS0] disabled
>>> [    0.279438] 10000c00.uartlite: ttyS0 at MMIO 0x10000c00 (irq =3D 28,
>>> base_baud =3D 2500000) is a 16550A
>>> [    0.288217] console [ttyS0] enabled
>>> [    0.288217] console [ttyS0] enabled
>>> [    0.295211] bootconsole [early0] disabled
>>> [    0.295211] bootconsole [early0] disabled
>>> [    0.303969] 10000d00.uart1: ttyS1 at MMIO 0x10000d00 (irq =3D 29,
>>> base_baud =3D 2500000) is a 16550A
>>> [    0.313561] 10000e00.uart2: ttyS2 at MMIO 0x10000e00 (irq =3D 30,
>>> base_baud =3D 2500000) is a 16550A
>>> [    0.324283] spi-mt7621 10000b00.spi: sys_freq: 193333333
>>> [    0.334382] m25p80 spi32766.0: using chunked io (size=3D31)
>>> [    0.339882] m25p80 spi32766.0: mx25l25635e (32768 Kbytes)
>>> [    0.345451] 4 ofpart partitions found on MTD device spi32766.0
>>> [    0.351378] Creating 4 MTD partitions on "spi32766.0":
>>> [    0.356594] 0x000000000000-0x000000030000 : "u-boot"
>>> [    0.363407] 0x000000030000-0x000000040000 : "u-boot-env"
>>> [    0.370634] 0x000000040000-0x000000050000 : "factory"
>>> [    0.377673] 0x000000050000-0x000002000000 : "firmware"
>>> [    0.425492] 2 uimage-fw partitions found on MTD device firmware
>>> [    0.431550] 0x000000050000-0x000000198842 : "kernel"
>>> [    0.438242] 0x000000198842-0x000002000000 : "rootfs"
>>> [    0.445146] mtd: device 5 (rootfs) set to be root filesystem
>>> [    0.450960] 1 squashfs-split partitions found on MTD device rootfs
>>> [    0.457297] 0x0000006b0000-0x000002000000 : "rootfs_data"
>>> [    0.474397] rt3050-esw 10110000.esw: link changed 0x00
>>> [    0.482079] mtk_soc_eth 10100000.ethernet eth0: mediatek frame engin=
e
>>> at 0xb0100000, irq 5
>>> [    0.490683] i2c /dev entries driver
>>> [    0.494876] mt7621_wdt 10000120.watchdog: Initialized
>>> [    0.500240] MTK MSDC device init.
>>> [    0.541172] mtk-sd: MediaTek MT6575 MSDC Driver
>>> [    0.547206] NET: Registered protocol family 10
>>> [    0.555832] NET: Registered protocol family 17
>>> [    0.560430] bridge: automatic filtering via arp/ip/ip6tables has bee=
n
>>> deprecated. Update your scripts to load br_netfilter if you need this.
>>> [    0.573286] 8021q: 802.1Q VLAN Support v1.8
>>> [    0.579808] mtk-linkit bootstrap: Version  :
>>> [    0.584309] mtk-linkit bootstrap: Revision :
>>> [    0.593456] VFS: Mounted root (squashfs filesystem) readonly on
>>> device 31:5.
>>> [    0.601535] Freeing unused kernel memory: 156K (803e9000 - 80410000)
>>> [    1.630140] init: Console is alive
>>> ...
>>> more linux kernel messages.
>>>
>>>
>>> On 10/05/2017 08:16, Stanislav Galabov wrote:
>>>> Hi Mike,
>>>>
>>>> Please try setting both the Load Address and the Entry Point to the
>>>> same value as you see as Entry point address by using 'readelf -h=E2=
=80=99 and try
>>>> booting again.
>>>> In your case this would seem to be 0x80001100.
>>>>
>>>> Please leave all dts/dtsi files unchanged (as they originally were) fo=
r
>>>> now.
>>>>
>>>> Best wishes,
>>>> Stanislav
>>>>
>>>> On May 10, 2017, at 04:33, Mike Wolman <mike@wolman.co.uk> wrote:
>>>>>
>>>>>
>>>>> I have just tried with clock-frequency change in the 3 places it
>>>>> appears in mt7628an.dtsi
>>>>>
>>>>> But again some thing:
>>>>>
>>>>> Omega2 # bootm 0x80800000
>>>>> ## Booting image at 80800000 ...
>>>>>    Image Name:   FreeBSD
>>>>>    Image Type:   MIPS Linux Kernel Image (uncompressed)
>>>>>    Data Size:    5654760 Bytes =3D  5.4 MB
>>>>>    Load Address: 80001000
>>>>>    Entry Point:  80001100
>>>>>    Verifying Checksum ... OK
>>>>> OK
>>>>> No initrd
>>>>> ## Transferring control to Linux (at address 80001100) ...
>>>>> ## Giving linux memsize in MB, 128
>>>>>
>>>>> Starting kernel ...
>>>>>
>>>>>
>>>>> Note: When building kernel i see:
>>>>>
>>>>> --------------------------------------------------------------
>>>>>
>>>>>> stage 3.1: building everything
>>>>>>>>
>>>>>>> --------------------------------------------------------------
>>>>> converting OMEGA2P.dts -> /usr/home/mike/omega2/obj/mips
>>>>> el_ap/mips.mipsel/usr/home/mike/omega2/src/sys/MT7628_FDT/OMEGA2P.dtb
>>>>> /usr/home/mike/omega2/obj/mipsel_ap/mips.mipsel/usr/home/
>>>>> mike/omega2/src/sys/MT7628_FDT/OMEGA2P.dtb: Warning
>>>>> (unit_address_vs_reg): Node /cpus/cpu@0 has a unit name, but no reg
>>>>> property
>>>>> /usr/home/mike/omega2/obj/mipsel_ap/mips.mipsel/usr/home/
>>>>> mike/omega2/src/sys/MT7628_FDT/OMEGA2P.dtb: Warning
>>>>> (unit_address_vs_reg): Node /cpuintc@0 has a unit name, but no reg
>>>>> property
>>>>> /usr/home/mike/omega2/obj/mipsel_ap/mips.mipsel/usr/home/
>>>>> mike/omega2/src/sys/MT7628_FDT/OMEGA2P.dtb: Warning
>>>>> (unit_address_vs_reg): Node /pcie@10140000/pcie-bridge has a reg or
>>>>> ranges property, but no unit name
>>>>>
>>>>> Are these just warnings which can be ignored or could they be part of
>>>>> the problem?
>>>>>
>>>>>
>>>>>
>>>>> On 10/05/2017 01:50, Mori Hiroki wrote:
>>>>>> Hi mike
>>>>>>
>>>>>> I last idea is uartlite clock-frequency miss.
>>>>>>
>>>>>>                          clock-frequency =3D <50000000>;
>>>>>>
>>>>>> But I don't know correct value.
>>>>>>
>>>>>>
>>>>>>
>>>>>> ----- Original Message -----
>>>>>>
>>>>>>> From: Mike Wolman <mike@wolman.co.uk>
>>>>>>> To: Mori Hiroki <yamori813@yahoo.co.jp>; Aleksandr Rybalko <
>>>>>>> ray@ddteam.net>
>>>>>>> Cc: "freebsd-mips@freebsd.org" <freebsd-mips@freebsd.org>
>>>>>>> Date: 2017/5/10, Wed 09:01
>>>>>>> Subject: Re: onion omega2+
>>>>>>>
>>>>>>>
>>>>>>> The new kernel with
>>>>>>>
>>>>>>> device          uart_ns8250
>>>>>>>
>>>>>>> didnt work
>>>>>>>
>>>>>>> On 10/05/2017 00:05, Mori Hiroki wrote:
>>>>>>>>   Hi Mike.
>>>>>>>>
>>>>>>>>   I seem load address is good.
>>>>>>>>
>>>>>>>>   I check mt7628an.dtsi file.
>>>>>>>>
>>>>>>>>   This file uart entry is
>>>>>>>>
>>>>>>>>                    uartlite: uartlite@c00 {
>>>>>>>>                            compatible =3D "ns16550a";
>>>>>>>>   In this case you must add uart_ns8250 device to kernel
>>>>>>>> configuration.
>>>>>>>>
>>>>>>> _______________________________________________
>>>>> freebsd-mips@freebsd.org mailing list
>>>>> https://lists.freebsd.org/mailman/listinfo/freebsd-mips
>>>>> To unsubscribe, send any mail to "freebsd-mips-unsubscribe@freebsd.or=
g
>>>>> "
>>>>>
>>>>
> _______________________________________________
> 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"
>



--=20
WBW
-------
Rybalko Aleksandr <ray@ddteam.net>



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAJ1Oi8Eo3jWAy1nRO1auT03zcXBzdxtnqv=9JytyP6GU8yXWGg>