Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 7 Jan 2019 12:07:51 +0800
From:      AudioONE <audioone.official@gmail.com>
To:        freebsd-arm@freebsd.org
Subject:   Re: i.MX6 DualLite stuck at early boot
Message-ID:  <CAL5b%2BC2p8fzatgoPKEm8xvzeH79=sMgi-Y4O0xVJbYFyvhzatA@mail.gmail.com>
In-Reply-To: <CAL5b%2BC2wZUmsnGGD6Ni_uExNaJMrLe=N%2Bz78qzdA6y1hhh-kLQ@mail.gmail.com>
References:  <CAL5b%2BC1D0-V=kvQH3L7c0HJMJA7QU18bjJyYxpjPBkKG7LS%2BZQ@mail.gmail.com> <CAL5b%2BC2wZUmsnGGD6Ni_uExNaJMrLe=N%2Bz78qzdA6y1hhh-kLQ@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
well, finally, everything works as expected, it turns out wrong memory
setting in u-boot,the code of BSD-kernel is totoally fine, next step:
pico-iMX7d

Kernel entry at 0x0x12200100...
Kernel args: (null)
Copyright (c) 1992-2016 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 11.0-RELEASE-p1 #0 r309528M: Mon Jan  7 03:48:21 HKT 2019
    root@4160059805-freebsd-xeon:/mnt/dev/bsdbuild/arm.armv6/mnt/dev/11/sys/IBOOK
arm
FreeBSD clang version 3.8.0 (tags/RELEASE_380/final 262564) (based on LLVM
3.8.0)
Preloaded elf kernel "/boot/kernel/kernel" at 0xc4843000.
CPU: Cortex A9-r2 rev 10 (Cortex-A core)
 Supported features: ARM_ISA THUMB2 JAZELLE THUMBEE ARMv4 Security_Ext
 WB enabled LABT branch prediction disabled
LoUU:2 LoC:2 LoUIS:2
Cache level 1:
 32KB/32B 4-way data cache WB Read-Alloc Write-Alloc
 32KB/32B 4-way instruction cache Read-Alloc
real memory  = 1073676288 (1023 MB)
avail memory = 1006530560 (959 MB)
Physical memory chunk(s):
  0x10000000 - 0x4ffeffff,  1023 MB ( 262128 pages)
Excluded memory regions:
  0x12200000 - 0x14b73fff,    41 MB (  10612 pages) NoAlloc
Static device mappings:
  0x00a00000 - 0x00afffff mapped at VA 0xffe00000
  0x02000000 - 0x020fffff mapped at VA 0xffd00000
  0x02100000 - 0x021fffff mapped at VA 0xffc00000
FreeBSD/SMP: Multiprocessor System Detected: 2 CPUs
ULE: setup cpu 0
ULE: setup cpu 1
random: entropy device external interface
openfirm: <Open Firmware control device>
nfslock: pseudo-device
mem: <memory>
crypto: <crypto core>
null: <full device, null device, zero device>
random: harvesting attach, 8 bytes (4 bits) from nexus0
ofwbus0: <Open Firmware Device Tree>
simplebus0: <Flattened device tree simple bus> on ofwbus0
simplebus1: <Flattened device tree simple bus> mem 0x2000000-0x20fffff on
simplebus0
imx6_anatop0: <Freescale i.MX6 Analog PLLs and Power> mem
0x20c8000-0x20c8fff on simplebus1
random: harvesting attach, 8 bytes (4 bits) from imx6_anatop0
random: harvesting attach, 8 bytes (4 bits) from simplebus1
simplebus2: <Flattened device tree simple bus> mem 0x2100000-0x21fffff on
simplebus0
random: harvesting attach, 8 bytes (4 bits) from simplebus2
random: harvesting attach, 8 bytes (4 bits) from simplebus0
random: harvesting attach, 8 bytes (4 bits) from ofwbus0
ocotp0: <Freescale On-Chip One-Time-Programmable Memory> mem
0x21bc000-0x21bffff on simplebus2
random: harvesting attach, 8 bytes (4 bits) from ocotp0
ccm0: <Freescale i.MX6 Clock Control Module> mem 0x20c4000-0x20c7fff on
simplebus1
random: harvesting attach, 8 bytes (4 bits) from ccm0
l2cache0: <PL310 L2 cache controller> mem 0xa02000-0xa02fff on simplebus0
simplebus0: no default resources for rid = 0, type = 1
l2cache0: cannot allocate IRQ, not using interrupt
l2cache0: Part number: 0x3, release: 0x8
l2cache0: L2 Cache enabled: 512KB/32B 16 ways
l2cache0: Early BRESP response: disabled
l2cache0: Instruction prefetch: disabled
l2cache0: Data prefetch: disabled
l2cache0: Non-secure interrupt control: disabled
l2cache0: Non-secure lockdown: disabled
l2cache0: Share override: disabled
l2cache0: Double linefill: disabled
l2cache0: Instruction prefetch: disabled
l2cache0: Data prefetch: disabled
l2cache0: Double linefill on WRAP request: disabled
l2cache0: Prefetch drop: disabled
l2cache0: Incr double Linefill: disabled
l2cache0: Not same ID on exclusive sequence: disabled
l2cache0: Prefetch offset: 0
random: harvesting attach, 8 bytes (4 bits) from l2cache0
imx6_anatop0: CPU 792MHz @ 1150mV
imx_iomux0: <Freescale i.MX pin configuration> mem 0x20e0000-0x20e3fff on
simplebus1
Processing 1 pin-config node(s) in pinctrl-0 for ecspi@0200C000
            spi2: muxreg 0x004c muxval 0x02 inpreg 0x07f8 inpval 0x00
padreg 0x0360 padval 0x000130b0
            spi2: muxreg 0x0050 muxval 0x02 inpreg 0x0800 inpval 0x00
padreg 0x0364 padval 0x000130b0
            spi2: muxreg 0x0084 muxval 0x02 inpreg 0x07f4 inpval 0x00
padreg 0x0398 padval 0x000130b0
            spi2: muxreg 0x0088 muxval 0x02 inpreg 0x07fc inpval 0x00
padreg 0x039c padval 0x000130b0
random: harvesting attach, 8 bytes (4 bits) from imx_iomux0
gic0: <ARM Generic Interrupt Controller> mem
0xa01000-0xa01fff,0xa00100-0xa001ff on simplebus0
simplebus0: no default resources for rid = 0, type = 1
gic0: pn 0x390, arch 0x1, rev 0x2, implementer 0x43b irqs 160
random: harvesting attach, 8 bytes (4 bits) from gic0
imx_gpt0: <Freescale i.MX GPT timer> mem 0x2098000-0x209bfff on simplebus1
imx_gpt0: Running on 66000KHz clock, base freq 66000000Hz CR=0x0000027d,
PR=0x00000000
Event timer "iMXGPT" frequency 66000000 Hz quality 800
Timecounter "iMXGPT" frequency 66000000 Hz quality 1000
random: harvesting attach, 8 bytes (4 bits) from imx_gpt0
mp_tmr0: <ARM MPCore Timers> mem 0xa00200-0xa002ff,0xa00600-0xa006ff on
simplebus0
mp_tmr0: not using variable-frequency device as timecounterEvent timer
"MPCore" frequency 396000000 Hz quality 1000
random: harvesting attach, 8 bytes (4 bits) from mp_tmr0
cpulist0: <Open Firmware CPU Group> on ofwbus0
cpu0: <Open Firmware CPU> on cpulist0
random: harvesting attach, 8 bytes (4 bits) from cpu0
random: harvesting attach, 8 bytes (4 bits) from cpulist0
simplebus0: <pcie@01000000> mem 0x1ffc000-0x1ffffff,0x1f00000-0x1f7ffff
type pci compat imx,pcie (no driver attached)
src0: <Freescale i.MX6 System Reset Controller> mem 0x20d8000-0x20d80ff on
simplebus1
random: harvesting attach, 8 bytes (4 bits) from src0
simplebus1: <sdma@020ec000> mem 0x20ec000-0x20effff disabled compat
fsl,imx6q-sdma (no driver attached)
simplebus1: <gpio@0209c000> mem 0x209c000-0x209ffff disabled compat
fsl,imx6q-gpio (no driver attached)
simplebus1: <gpio@020a0000> mem 0x20a0000-0x20a3fff disabled compat
fsl,imx6q-gpio (no driver attached)
simplebus1: <gpio@020a4000> mem 0x20a4000-0x20a7fff disabled compat
fsl,imx6q-gpio (no driver attached)
simplebus1: <gpio@020a8000> mem 0x20a8000-0x20abfff disabled compat
fsl,imx6q-gpio (no driver attached)
simplebus1: <gpio@020ac000> mem 0x20ac000-0x20affff disabled compat
fsl,imx6q-gpio (no driver attached)
simplebus1: <gpio@020b0000> mem 0x20b0000-0x20b3fff disabled compat
fsl,imx6q-gpio (no driver attached)
simplebus1: <gpio@020b4000> mem 0x20b4000-0x20b7fff disabled compat
fsl,imx6q-gpio (no driver attached)
imx_wdog0: <Freescale i.MX Watchdog> mem 0x20bc000-0x20bffff on simplebus1
random: harvesting attach, 8 bytes (4 bits) from imx_wdog0
simplebus1: <serial@02020000> mem 0x2020000-0x2023fff disabled compat
fsl,imx6q-uart (no driver attached)
simplebus1: <usbphy@020c9000> mem 0x20c9000-0x20c9fff disabled compat
fsl,imx6q-usbphy (no driver attached)
simplebus1: <usbphy@020ca000> mem 0x20ca000-0x20cafff disabled compat
fsl,imx6q-usbphy (no driver attached)
simplebus1: <ecspi@02008000> mem 0x2008000-0x200bfff disabled compat
fsl,imx6q-ecspi (no driver attached)
simplebus1: <ecspi@0200C000> mem 0x200c000-0x200ffff compat fsl,imx6q-ecspi
(no driver attached)
simplebus1: <ecspi@02010000> mem 0x2010000-0x2013fff disabled compat
fsl,imx6q-ecspi (no driver attached)
simplebus1: <ecspi@02014000> mem 0x2014000-0x2017fff disabled compat
fsl,imx6q-ecspi (no driver attached)
simplebus1: <ecspi@02018000> mem 0x2018000-0x201bfff disabled compat
fsl,imx6q-ecspi (no driver attached)
simplebus1: <ssi@02028000> mem 0x2028000-0x202bfff disabled compat
fsl,imx6q-ssi (no driver attached)
simplebus1: <ssi@0202C000> mem 0x202c000-0x202ffff disabled compat
fsl,imx6q-ssi (no driver attached)
simplebus1: <ssi@02030000> mem 0x2030000-0x2033fff disabled compat
fsl,imx6q-ssi (no driver attached)
simplebus2: <i2c@021a0000> mem 0x21a0000-0x21a3fff disabled compat
fsl,imx6q-i2c (no driver attached)
simplebus2: <i2c@021a4000> mem 0x21a4000-0x21a7fff disabled compat
fsl,imx6q-i2c (no driver attached)
simplebus2: <i2c@021ac000> mem 0x21a8000-0x21abfff disabled compat
fsl,imx6q-i2c (no driver attached)
ffec0: <Freescale Gigabit Ethernet Controller> mem 0x2188000-0x218bfff on
simplebus2
ffec0: MAC address 00:01:90:00:b2:4f:
ffec0: PHY preamble disabled
miibus0: <MII bus> on ffec0
atphy0: <Atheros F1 10/100/1000 PHY> PHY 1 on miibus0
atphy0: OUI 0x00c82e, model 0x0007, rev. 4
atphy0:  none, 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX,
1000baseSX-FDX, 1000baseT-FDX, 1000baseT-FDX-master, auto
random: harvesting attach, 8 bytes (4 bits) from atphy0
random: harvesting attach, 8 bytes (4 bits) from miibus0
ffec0: bpf attached
ffec0: Ethernet address: 00:01:90:00:b2:4f
random: harvesting attach, 8 bytes (4 bits) from ffec0
simplebus2: <usb@02184000> mem 0x2184000-0x21841ff disabled compat
fsl,imx6q-usb (no driver attached)
simplebus2: <usb@02184200> mem 0x2184200-0x21843ff disabled compat
fsl,imx6q-usb (no driver attached)
simplebus2: <usb@02184400> mem 0x2184400-0x21845ff disabled compat
fsl,imx6q-usb (no driver attached)
simplebus2: <usb@02184600> mem 0x2184600-0x21847ff disabled compat
fsl,imx6q-usb (no driver attached)
simplebus2: <usbmisc@02184800> mem 0x2184800-0x21849ff compat
fsl,imx6q-usbmisc (no driver attached)
simplebus2: <usdhc@02190000> mem 0x2190000-0x2193fff disabled compat
fsl,imx6q-usdhc (no driver attached)
sdhci_imx0: <Freescale uSDHC controller> mem 0x2194000-0x2197fff on
simplebus2
sdhci_imx0-slot0: 200MHz HS 1bit 3.3V 3.0V PIO
sdhci_imx0-slot0: ============== REGISTER DUMP ==============
sdhci_imx0-slot0: Sys addr: 0x00000000 | Version:  0x00000002
sdhci_imx0-slot0: Blk size: 0x00000200 | Blk cnt:  0x00000001
sdhci_imx0-slot0: Argument: 0x00000000 | Trn mode: 0x00000000
sdhci_imx0-slot0: Present:  0x00f90000 | Host ctl: 0x00000002
sdhci_imx0-slot0: Power:    0x0000000d | Blk gap:  0x00000080
sdhci_imx0-slot0: Wake-up:  0x00000000 | Clock:    0x00000007
sdhci_imx0-slot0: Timeout:  0x0000008c | Int stat: 0x00000000
sdhci_imx0-slot0: Int enab: 0x017f00fb | Sig enab: 0x017f00fb
sdhci_imx0-slot0: AC12 err: 0x00000000 | Slot int: 0x00000000
sdhci_imx0-slot0: Caps:     0x03770000 | Max curr: 0x80000000
sdhci_imx0-slot0: ===========================================
random: harvesting attach, 8 bytes (4 bits) from sdhci_imx0
simplebus2: <usdhc@02198000> mem 0x2198000-0x219bfff disabled compat
fsl,imx6q-usdhc (no driver attached)
simplebus2: <usdhc@0219c000> mem 0x219c000-0x219ffff disabled compat
fsl,imx6q-usdhc (no driver attached)
simplebus2: <audmux@021d8000> mem 0x21d8000-0x21dbfff disabled compat
fsl,imx6q-audmux (no driver attached)
simplebus2: <serial@021e8000> mem 0x21e8000-0x21ebfff disabled compat
fsl,imx6q-uart (no driver attached)
uart0: <Freescale i.MX UART> mem 0x21ec000-0x21effff on simplebus2
uart0: console (115200,n,8,1)
uart0: fast interrupt
uart0: PPS capture mode: DCDinvalid
random: harvesting attach, 8 bytes (4 bits) from uart0
simplebus2: <serial@021f0000> mem 0x21f0000-0x21f3fff disabled compat
fsl,imx6q-uart (no driver attached)
simplebus2: <serial@021f4000> mem 0x21f4000-0x21f7fff disabled compat
fsl,imx6q-uart (no driver attached)
cryptosoft0: <software crypto>
crypto: assign cryptosoft0 driver id 0, flags 100663296
random: harvesting attach, 8 bytes (4 bits) from cryptosoft0
Timecounters tick every 2.000 msec
lo0: bpf attached
crypto: <crypto device>
IPsec: Initialized Security Association Processing.
tcp_init: net.inet.tcp.tcbhashsize auto tuned to 8192
md0: Embedded image 35856384 bytes at 0xc2459476
(noperiph:sdhci_imx0:0:-1:ffffffff):  Set up the mmcprobe device...
sdhci_imx0-slot0: VDD => 21
sdhci_imx0-slot0: Divider 250 for freq 400000 (base 200000000)
Release APs
mmc_probedone: remaining freezecnt 1
Trying to mount root from ufs:md0 []...
mmc_probedone: remaining freezecnt 0
mmc_probedone: remaining freezecnt 0
warning: no time-of-day clock registered, system time will not be set
accurately
mmc_probedone: remaining freezecnt 0
start_init: trying /sbin/init
mmc_probedone: remaining freezecnt 0
mmc_probedone: remaining freezecnt 0
mmc_probedone: remaining freezecnt 0
mmc_probedone: remaining freezecnt 0
mmc_probedone: remaining freezecnt 0
mmc_probedone: remaining freezecnt 0
mmc_probedone: remaining freezecnt 0
mmc_probedone: remaining freezecnt 0
mmc_probedone: remaining freezecnt 0
mmc_probedone: remaining freezecnt 1
Got AC_FOUND_DEVICE -- whatever...
pass0 at sdhci_imx0 bus 0 scbus0 target 0 lun 0
pass0: Relative addr: 00000001
Card features: <Memory High-Capacity SD2.0-Conditions >
Card memory OCR: 40ff8000
XPT info: CLK 001D, ...
sdda0 at sdhci_imx0 bus 0 scbus0 target 0 lun 0
GEOM: new disk sdda0
sdda0: Relative addr: 00000001
Card features: <Memory High-Capacity SD2.0-Conditions >
Card memory OCR: 40ff8000
sdda0: Serial Number 000003E
XPT info: CLK 001D, ...
sdda0: SDHC SD16G 2.0 SN 000003E7 MFG 09/2018 by 65 42
Acquired periph Ok
mmc_probedone: remaining freezecnt 0
Bus width set to 4 bit
mmc_probedone: remaining freezecnt 0
Starting file system checks:
/dev/md0: FILE SYSTEM CLEAN; SKIPPING CHECKS
/dev/md0: clean, 2085 free (29 frags, 257 blocks, f% fragmentation)
usage: sleep seconds
/etc/rc: WARNING: $nandinit_enable is not set properly - see rc.conf(5).
/etc/rc: WARNING: hostid: unable to figure out a UUID from DMI data,
generating a new one
usage: sleep seconds
Setting hostuuid:
Setting hostid:
Mounting local filesystems:.
ELF ldconfig path: /lib /usr/lib
random: unblocking device.
Soft Float compatibility ldconfig path:
Setting hostname: ibook.
Additional TCP/IP options: ipv4-mapped-ipv6=YES.
Setting up harvesting:
[UMA],[FS_ATIME],SWI,INTERRUPT,NET_NG,NET_ETHER,NET_TUN,MOUSE,KEYBOARD,ATTACH,CACHED
Feeding entropy: .
ifconfig: can't set link-level netmask or broadcast
ifconfig: can't set link-level netmask or broadcast
ifconfig: can't set link-level netmask or broadcast
ifconfig: ioctl (SIOCAIFADDR): Invalid argument
ffec0: link state changed to DOWN
usage: sleep seconds
usage: sleep seconds
Starting Network: lo0 ffec0.
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> metric 0 mtu 16384
        options=600003<RXCSUM,TXCSUM,RXCSUM_IPV6,TXCSUM_IPV6>
        groups: lo
ffec0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
        options=80008<VLAN_MTU,LINKSTATE>
        ether 00:01:90:00:b2:4f
        media: Ethernet autoselect (none)
        status: no carrier
Starting devd.
add host 127.0.0.1: gateway lo0
add host ::1: gateway lo0 fib 0: route already in table
add net fe80::: gateway ::1
add net ff02::: gateway ::1
add net ::ffff:0.0.0.0: gateway ::1
add net ::0.0.0.0: gateway ::1
Generating host.conf.
Warning: unrecognized source [mdns]
Waiting 30s for the default route interface: usage: sleep seconds
.usage: sleep seconds
.usage: sleep seconds
.usage: sleep seconds
.usage: sleep seconds
Starting rpcbind.
Jan  6 19:47:39 rpcbind: cannot bind * on udp: Can't assign requested
address
Jan  6 19:47:39 rpcbind: cannot bind * on tcp: Can't assign requested
address
Clearing /tmp (X related).
Starting mountd.
Starting nfsuserd.
nfsuserd: svc_tli_create: could not bind to anonymous port
nfsuserd: Can't set up socket: Can't assign requested address
/etc/rc: WARNING: Unable to force nfsuserd. It may already be running.
/etc/rc: ERROR: Cannot run nfsuserd
Mounting late filesystems:.
Performing sanity check on sshd configuration.
Starting sshd.
Starting cron.
Starting background file system checks in 60 seconds.

Sun Jan  6 19:47:53 UTC 2019


>
> no luck to set sp_enabled = 0, any ideas?
>
> https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=208381
>
>
>> okay....... after days and days mind storm(mind fuck), finally, I can
>> enter DDB, here is what I did in [reinit_mmu], maybe can help someone.
>>
>>
>> ==============================
>>
>> ASENTRY_NP(reinit_mmu)
>>         push    {r4-r11, lr}
>>         mov     r4, r0
>>         mov     r5, r1
>>         mov     r6, r2
>>
>> + /*  Only for Cortex-A9 Errdata Fix */
>> +        mrc     p15, 0, r0, c15, c0, 1  @ read diagnostic register
>> +         orr     r0, r0, #1 << 4         @ set bit #4
>> +         orr     r0, r0, #1 << 6         @ set bit #6
>> +      orr     r0, r0, #1 << 11        @ set bit #11
>> +      orr     r0, r0, #1 << 21        @ set bit #21
>> +        mcr     p15, 0, r0, c15, c0, 1  @ write diagnostic register
>> +         DSB
>>  +        ISB
>>
>> .
>> .
>> .
>> .
>> #else
>>         bl      dcache_inv_pou_all
>> #endif
>>         mcr     CP15_ICIALLU
>>  +       mcr     CP15_TLBIALL           /*  Flush TLB  */
>>  +       mcr     CP15_BPIALL             /* Flush Branch predictor */
>>         DSB
>>         ISB
>>
>>
>>         /* Set auxiliary register */
>>         mrc     CP15_ACTLR(r7)
>> .
>> .
>> .
>>
>> END(reinit_mmu)
>> ==============================
>>
>> my new problem is OS panic at same address "FAR=0000ec10"(after reset the
>> eval-board many times), what does it mean? something wrong with FDT? I use
>> wandboard-dual dts file(1 GB memory)
>>
>>
>> U-Boot 2016.05 (Dec 31 2018 - 22:57:28 +0800)
>>
>> CPU:   Freescale i.MX6DL rev1.2 at 792 MHz
>> Reset cause: POR
>> Board: MX6DL-Armadillo2
>> DRAM:  1 GiB
>> WARNING: Caches not enabled
>> MMC:   FSL_SDHC: 0
>> *** Warning - bad CRC, using default environment
>>
>> In:    serial
>> Out:   serial
>> Err:   serial
>> Net:   FEC
>> Error: FEC address not set.
>>
>> Hit any key to stop autoboot:  0
>> reading tarker
>> ** Unable to read file tarker **
>> reading tmpker
>> ** Unable to read file tmpker **
>> Booting BSD loader
>> reading ubldr.bin
>> 185536 bytes read in 40 ms (4.4 MiB/s)
>> ## Starting application at 0x12000000 ...
>> Consoles: U-Boot console
>> Compatible U-Boot API signature found @0x4fd703e0
>>
>> FreeBSD/armv6 U-Boot loader, Revision 1.2
>> (root@freebsd-x250, Sat Dec 15 17:17:42 HKT 2018)
>>
>> DRAM: 1024MB
>> Number of U-Boot devices: 2
>> U-Boot env: loaderdev not set, will probe all devices.
>> Found U-Boot device: disk
>>   Probing all disk devices...
>>   Checking unit=0 slice=<auto> partition=<auto>... good.
>> Booting from disk0s2:
>> /
>> /boot/kernel/kernel data=0x580b24+0xb74dc -
>> Hit [Enter] to boot immediately, or any other key for command prompt.
>> Booting [/boot/kernel/kernel]...
>> Kernel entry at 0x0x12200100...
>> Kernel args: (null)
>> initarm: console initialized
>>  arg1 kmdp = 0xc2639000
>>  boothowto = 0x00000000
>>  dtbp = 0xc254af08
>>  lastaddr1: 0x1283a000
>> loader passed (static) kenv:
>>  loader_envp = 0xc2638000
>>  c2638000 LINES=24
>>  c2638009 console=uboot
>>  c2638017 currdev=disk0s2:
>>  c2638028 kerflag=
>>  c2638031 kernelname=/boot/kernel/kernel
>>  c2638050 loaddev=disk0s2:
>>  c2638061 prompt=loader>
>>  c2638070 twiddle_divisor=1
>> imx_wdog_init_last_reset
>> ARM Debug Architecture v7
>> 4 watchpoints and 6 breakpoints supported
>> KDB: debugger backends: ddb
>> KDB: current backend: ddb
>> Copyright (c) 1992-2016 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 11.0-RELEASE-p1 #180 r309528M: Thu Jan  3 10:42:45 HKT 2019
>>     root@4160059805-freebsd-xeon:/mnt/dev/bsdbuild/arm.armv6/mnt/dev/11/sys/IMX6
>> arm
>> FreeBSD clang version 3.8.0 (tags/RELEASE_380/final 262564) (based on
>> LLVM 3.8.0)
>> WARNING: WITNESS option enabled, expect reduced performance.
>> WARNING: DIAGNOSTIC option enabled, expect reduced performance.
>> subsystem 1000000
>>    0xc23e0b88(0)... Fatal kernel mode data abort: 'Translation Fault
>> (L1)' on read
>> trapframe: 0xc2713d18
>> FSR=00000005, FAR=0000ec10, spsr=600000d3
>> r0 =12998000, r1 =c2ffc010, r2 =00000001, r3 =c261c07c
>> r4 =00000006, r5 =c261c074, r6 =00000000, r7 =2a600000
>> r8 =c2ffc059, r9 =00000000, r10=c260ba28, r11=c2713dd8
>> r12=c2ffc014, ssp=c2713da8, slr=0000ec10, pc =c23fa450
>>
>> [ thread pid 0 tid 0 ]
>> Stopped at      0xc23fa450
>> db> bt
>> Tracing pid 0 tid 0 td 0xc2617190
>> KDB: reentering
>> KDB: stack backtrace:
>> KDB: reentering
>> KDB: stack backtrace:
>> blahblahblah.....
>> blahblahblah.....
>> blahblahblah.....
>> blahblahblah.....
>> KDB: reentering
>> KDB: stack backtrace:
>> KDB: reentering
>> KDB: stack backtrace:
>> panic: pmap_fault: pm_pt1 abort
>> cpuid = 0
>> Uptime: 1s
>>
>>
>>
>> >  hi guys
>> >
>> >
>> I've got a small brand eval-board which built with MCIMX6U6AVM08AC and
>> running FreeBSD 11.0.1(I have tried HEAD version, 12.0-BETA3, it didn't
>> work  too), ubldr stage is fine but it stucked at "reinit_mmu"
>> function(FreeBSD might be have assembly printf for debug environment,
>> because aseeembly code just like a blackbox when you without JTAG debugger
>> in hand )
>> >
>> >  ======================================
>> >  Booting from disk0s2:
>> >  /
>> >  /boot/kernel/kernel data=0x57b564+0x58a9c
>> syms=[0x4+0x6e9d0+0x4+0x77ada]
>> >  Hit [Enter] to boot immediately, or any other key for command prompt.
>> >  Booting [/boot/kernel/kernel]...
>> >  Kernel entry at 0x0x12200100...
>> >  Kernel args: (null)
>> >  EARL_DEBUG: pmap_kern_ttb 0x1290004a, actlr_mask 0xc1, actlr_set 0x41
>> >  (nothing)
>> >  ======================================
>> >
>> >
>> >
>> >  when I trace the code to "reinit_mmu" function, commented code like
>> this, kernel panic and reported "Asynchronous External Abort". Am I the
>> only one who meet this WEIRD case? I got AM3352/AM3354/Zynq7 platforms,
>> they works fine with kernel 11.0.1. Is it something different between i.MX6
>> Dual(Wandboard) and i.MX6 DualLite?
>> >
>> >          /* Enable caches. */
>> >          mrc     CP15_SCTLR(r7)
>> >  // it will be stucked if don't commented this code
>> >  /*      orr     r7, #CPU_CONTROL_DC_ENABLE      //DEBUG
>> >          orr     r7, #CPU_CONTROL_IC_ENABLE          //DEBUG
>> >          orr     r7, #CPU_CONTROL_BPRD_ENABLE   //DEBUG  */
>> >          mcr     CP15_SCTLR(r7)
>> >          DSB
>> >
>> >          mcr     CP15_TTBR0(r4)          /* Set new TTB */
>> >          DSB
>> >          ISB
>> >
>> >  // it will be stucked if don't commented this code
>> >  /*      mcr     CP15_TLBIALL            /// Flush TLB    //DEBUG   */
>> >          mcr     CP15_BPIALL             /* Flush Branch predictor */
>> >          DSB
>> >          ISB
>> >
>> >
>> >
>> >
>> >  U-Boot 2016.05 (Dec 16 2018 - 13:09:25 +0800)
>> >
>> >  CPU:   Freescale i.MX6DL rev1.2 at 792 MHz
>> >  Reset cause: POR
>> >  Board: MX6DL-Armadillo2
>> >  DRAM:  1 GiB
>> >  WARNING: Caches not enabled
>> >  MMC:   FSL_SDHC: 0
>> >  *** Warning - bad CRC, using default environment
>> >
>> >  In:    serial
>> >  Out:   serial
>> >  Err:   serial
>> >  Net:   FEC
>> >  Error: FEC address not set.
>> >
>> >  Hit any key to stop autoboot:  0
>> >  reading ubldr.bin
>> >  185536 bytes read in 40 ms (4.4 MiB/s)
>> >  ## Starting application at 0x12000000 ...
>> >  Consoles: U-Boot console
>> >  Compatible U-Boot API signature found @0x4fd703e0
>> >
>> >  FreeBSD/armv6 U-Boot loader, Revision 1.2
>> >  (root@freebsd-x250, Sat Dec 15 17:17:42 HKT 2018)
>> >
>> >  DRAM: 1024MB
>> >  Number of U-Boot devices: 2
>> >  U-Boot env: loaderdev not set, will probe all devices.
>> >  Found U-Boot device: disk
>> >    Probing all disk devices...
>> >    Checking unit=0 slice=<auto> partition=<auto>... good.
>> >  Booting from disk0s2:
>> >  /
>> >  /boot/kernel/kernel data=0x57b564+0x58a9c
>> syms=[0x4+0x6e9d0+0x4+0x77ada]
>> >  Hit [Enter] to boot immediately, or any other key for command prompt.
>> >  Booting [/boot/kernel/kernel]...
>> >  Kernel entry at 0x0x12200100...
>> >  Kernel args: (null)
>> >  EARL_DEBUG: pmap_kern_ttb 0x1290004a, actlr_mask 0xc1, actlr_set 0x41
>> >  EARL_DEBUG: cpu_setup pass
>> >  EARL_DEBUG: init_param1 pass
>> >  initarm: console initialized
>> >   arg1 kmdp = 0xc26bc000
>> >   boothowto = 0x00000000
>> >   dtbp = 0xc2547eb8
>> >   lastaddr1: 0x128bd000
>> >  loader passed (static) kenv:
>> >   loader_envp = 0xc26bb000
>> >   c26bb000 LINES=24
>> >   c26bb009 console=uboot
>> >   c26bb017 currdev=disk0s2:
>> >   c26bb028 kerflag=
>> >   c26bb031 kernelname=/boot/kernel/kernel
>> >   c26bb050 loaddev=disk0s2:
>> >   c26bb061 prompt=loader>
>> >   c26bb070 twiddle_divisor=1
>> >  EARL_DEBUG: platform_late_init pass
>> >  Fatal kernel mode data abort: 'Asynchronous External Abort' on write
>> >  trapframe: 0xc257c688
>> >  FSR=00001c06, FAR=Invalid,  spsr=600000d3
>> >  r0 =00000100, r1 =600001d3, r2 =600000d3, r3 =30c52079
>> >  r4 =00000000, r5 =c257c7e4, r6 =c25b3280, r7 =c25b3280
>> >  r8 =c2578058, r9 =00000000, r10=c25ce154, r11=c257c7d8
>> >  r12=c2577c24, ssp=c257c718, slr=c244b3c0, pc =c244b3d4
>> >
>> >  panic: Fatal abort
>> >  cpuid = 0
>> >  Uptime: 1s
>>
>



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAL5b%2BC2p8fzatgoPKEm8xvzeH79=sMgi-Y4O0xVJbYFyvhzatA>