About behavior when writing image to nand using mfgtool to original BSP board of i.mx6ull (MCIMX6Y1CVM05AB)

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

About behavior when writing image to nand using mfgtool to original BSP board of i.mx6ull (MCIMX6Y1CVM05AB)

Jump to solution
3,164 Views
f_takahashi
Contributor II

I am using i.mx6ull (MCIMX6Y1CVM05AB) on the board.

We are checking if we can write an image to a nand device using mfgtool.

I tried to see how writing is done with the mfgtool2-yocto-mx-evk-nand.vbs script.

The mfgtool dialog display at that time is as follows.
"Loading U-boot."-> "Loading Kernel."-> "Loading Initramfs."-> "Loading device tree."-> "Jumping to OS image."-> "Loading U-boot."

The display of “Jumping to OS image.” Lasts about 2 minutes.
Stopped at the last "Loading U-boot."

What is going on with this?

The mfgtool LOG is as follows.

DLL version: 2.7.0
Wednesday, September 04, 2019 20:02:06 Start new logging
ModuleID[2] LevelID[10]: CMyExceptionHandler thread is running
ModuleID[2] LevelID[1]: new MxHidDeviceClass
ModuleID[2] LevelID[10]: new MxHidDevice[001E4100]
ModuleID[2] LevelID[1]: new MxHidDeviceClass
ModuleID[2] LevelID[10]: new MxHidDevice[001E46D8]
ModuleID[2] LevelID[1]: new MxHidDeviceClass
ModuleID[2] LevelID[10]: new MxHidDevice[001E4DC0]
ModuleID[2] LevelID[1]: new MxHidDeviceClass
ModuleID[2] LevelID[10]: new MxHidDevice[05214600]
ModuleID[2] LevelID[1]: new MxHidDeviceClass
ModuleID[2] LevelID[10]: new MxHidDevice[052151F0]
ModuleID[2] LevelID[1]: new MxHidDeviceClass
ModuleID[2] LevelID[10]: new MxHidDevice[052751C8]
ModuleID[2] LevelID[1]: new MxHidDeviceClass
ModuleID[2] LevelID[10]: new MxHidDevice[052759B8]
ModuleID[2] LevelID[10]: Device Manager thread is running
ModuleID[2] LevelID[1]: Can't set m_hStopEvent before it initialized or it already stop

ModuleID[2] LevelID[10]: CmdOperation[0] device chagned and reset to state 0
ModuleID[2] LevelID[10]: CmdOperation[0], skip current command, so SetEvent(hDevCanDeleteEvent)
ModuleID[2] LevelID[10]: CmdOperation[0], skip current command, so SetEvent(hDevCanDeleteEvent)
ModuleID[2] LevelID[10]: CmdOperation[0], skip current command, so SetEvent(hDevCanDeleteEvent)
ModuleID[2] LevelID[10]: CmdOperation[0], skip current command, so SetEvent(hDevCanDeleteEvent)
ModuleID[2] LevelID[10]: CmdOperation[0], skip current command, so SetEvent(hDevCanDeleteEvent)
ModuleID[2] LevelID[10]: ExecuteCommand--Boot[WndIndex:0], File is C:\Users\ModuleID[2] LevelID[10]: CmdOperation[0], skip current command, so SetEvent(hDevCanDeleteEvent)
ModuleID[2] LevelID[10]: ExecuteCommand--Load[WndIndex:0], File is C:\Users\ModuleID[2] LevelID[10]: PortMgrDlg(0)--Command Load excute successfully, retry count: 0
ModuleID[2] LevelID[10]: CmdOperation[0], skip current command, so SetEvent(hDevCanDeleteEvent)
ModuleID[2] LevelID[10]: ExecuteCommand--Load[WndIndex:0], File is C:\Users\ModuleID[2] LevelID[10]: PortMgrDlg(0)--Command Load excute successfully, retry count: 0
ModuleID[2] LevelID[10]: CmdOperation[0], skip current command, so SetEvent(hDevCanDeleteEvent)
ModuleID[2] LevelID[10]: CmdOperation[0], skip current command, so SetEvent(hDevCanDeleteEvent)
ModuleID[2] LevelID[10]: CmdOperation[0], skip current command, so SetEvent(hDevCanDeleteEvent)
ModuleID[2] LevelID[10]: CmdOperation[0], skip current command, so SetEvent(hDevCanDeleteEvent)
ModuleID[2] LevelID[10]: CmdOperation[0], skip current command, so SetEvent(hDevCanDeleteEvent)
ModuleID[2] LevelID[10]: ExecuteCommand--Load[WndIndex:0], File is C:\Users\ModuleID[2] LevelID[10]: PortMgrDlg(0)--Command Load excute successfully, retry count: 0
ModuleID[2] LevelID[10]: ExecuteCommand--Jump[WndIndex:0]
ModuleID[2] LevelID[10]: *********MxHidDevice[052759B8] Jump to Ramkernel successfully!**********
ModuleID[2] LevelID[10]: CmdOperation[0], current state command has been finished and the last command is successful, so SetEvent(hDevCanDeleteEvent)
ModuleID[2] LevelID[10]: CmdOperation[0] device chagned and reset to state 0
ModuleID[2] LevelID[10]: CmdOperation[0], skip current command, so SetEvent(hDevCanDeleteEvent)
ModuleID[2] LevelID[10]: CmdOperation[0], skip current command, so SetEvent(hDevCanDeleteEvent)
ModuleID[2] LevelID[10]: CmdOperation[0], skip current command, so SetEvent(hDevCanDeleteEvent)
ModuleID[2] LevelID[10]: CmdOperation[0], skip current command, so SetEvent(hDevCanDeleteEvent)
ModuleID[2] LevelID[10]: CmdOperation[0], skip current command, so SetEvent(hDevCanDeleteEvent)
ModuleID[2] LevelID[10]: ExecuteCommand--Boot[WndIndex:0], File is C:\Users\ModuleID[2] LevelID[1]: MxHidDevice::Write() Error writing to device 0x1f.
ModuleID[2] LevelID[1]: Failed to initialize memory!
ModuleID[2] LevelID[1]: PortMgrDlg(0)--MxHidDevice--Command Boot excute failed
ModuleID[2] LevelID[10]: CmdOperation[0], current command executed failed, so SetEvent(hDevCanDeleteEvent)
ModuleID[2] LevelID[10]: CCmdOpreation[0] thread is Closed
ModuleID[2] LevelID[10]: CCmdOpreation[0] thread is Closed
ModuleID[2] LevelID[10]: DeviceManager::OnMsgDeviceEvent() - EVENT_KILL
ModuleID[2] LevelID[10]: CMyExceptionHandler::OnMsgExceptionEvent() - KillExceptionHandlerThread
ModuleID[2] LevelID[10]: Exception Handler thread is closed
ModuleID[2] LevelID[1]: delete MxHidDeviceClass
ModuleID[2] LevelID[10]: delete MxHidDevice[052759B8]
ModuleID[2] LevelID[10]: Device Manager thread is closed

Labels (2)
1 Solution
2,733 Views
f_takahashi
Contributor II

igor, thank you for your support

The advice here didn't help much, but I succeeded in writing an image with Mfgtool.
This was due to incomplete settings due to NAND boot of u-boot.
NXP wrote in the documentation how to configure NAND boot for Yocto, but this alone did not work for u-boot.
We want NXP to confirm and fix this issue as soon as possible. And I would like to use the source code where this issue was fixed and released by NXP.

My changes may not be correct and will not be published here.

We succeeded in writing images with Mfgtool, but have new problems after kernel boot.

This issue should not be discussed here, so I'll ask you a new thread.

Thank you

View solution in original post

0 Kudos
9 Replies
2,733 Views
igorpadykov
NXP Employee
NXP Employee

Hi Fumitaka

for new board (or processor) recommended to run ddr test and update Mfg Tool firmware
image with new ddr calibration coefficients found from test
i.MX6/7 DDR Stress Test Tool V3.00 
Update coefficients in uboot/../mx6ullevk/*.cfg file and
rebuild Mfg Tool firmware (files in  ../firmware folder, fsl-image-mfgtool-initramfs-imx_mfgtools.cpio.gz.u-boot).
For rebuilding use sect.6.2 Manufacturing Tool, MFGTool attached Yocto Guide.
use nxp linux repository:
linux-imx - i.MX Linux kernel 

Best regards
igor
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

2,733 Views
f_takahashi
Contributor II

Thank you very much. igor

I found a bug in the nand environment of "include/configs/mx6ullevk.h" that I referenced when bitbake Mfgtools firmware u-boot.

After fixing the bug, the kernel started working.

However, Kernel seems to have stopped halfway.

Kernel Log:

U-Boot 2018.03-imx_v2018.03_4.14.98_2.0.0_ga+g87a19df5e4 (Sep 07 2019 - 00:18:31 +0000)

CPU: Freescale i.MX6ULL rev1.1 528 MHz (running at 396 MHz)
CPU: Industrial temperature grade (-40C to 105C) at 39C
Reset cause: POR
Model: My Board
Board: MX6ULL 9x9 My Board
DRAM: 512 MiB
NAND: 1024 MiB
MMC: FSL_SDHC: 0
Loading Environment from NAND... *** Warning - bad CRC, using default environment

Failed (-5)
Display: TFT43AB (480x272)
Video: LCDIF@0x21c8000 is fused, disable it
In: serial
Out: serial
Err: serial
Net: No ethernet found.
Fastboot: Normal
Boot from USB for mfgtools
Use default environment for mfgtools
Run bootcmd_mfg: run mfgtool_args;if iminfo ${initrd_addr}; then if test ${tee} = yes; then bootm ${tee_addr} ${initrd_addr} ${fdt_addr}; else bootz ${loadaddr} ${initrd_addr} ${fdt_addr}; fi; else echo "Run fastboot ..."; fastboot 0; fi;
Hit any key to stop autoboot: 0

## Checking Image at 83800000 ...
Legacy image found
Image Name: fsl-image-mfgtool-initramfs-imx6
Image Type: ARM Linux RAMDisk Image (uncompressed)
Data Size: 20986265 Bytes = 20 MiB
Load Address: 00000000
Entry Point: 00000000
Verifying Checksum ... OK
Kernel image @ 0x80800000 [ 0x000000 - 0x71d508 ]
## Loading init Ramdisk from Legacy Image at 83800000 ...
Image Name: fsl-image-mfgtool-initramfs-imx6
Image Type: ARM Linux RAMDisk Image (uncompressed)
Data Size: 20986265 Bytes = 20 MiB
Load Address: 00000000
Entry Point: 00000000
Verifying Checksum ... OK
## Flattened Device Tree blob at 83000000
Booting using the fdt blob at 0x83000000
Using Device Tree in place at 83000000, end 830096a9
Modify /soc/aips-bus@02000000/tsc@02040000:status disabled
Modify /soc/aips-bus@02200000/epdc@0228c000:status disabled
Modify /soc/aips-bus@02000000/can@02094000:status disabled
Modify /soc/aips-bus@02100000/lcdif@021c8000:status disabled
Modify /soc/aips-bus@02100000/pxp@021cc000:status disabled
Modify /soc/aips-bus@02100000/csi@021c4000:status disabled
Modify /soc/aips-bus@02000000/ethernet@020b4000:status disabled
ft_system_setup for mx6
No PMIC found!

Starting kernel ...

Booting Linux on physical CPU 0x0
Linux version 4.14.98-imx_4.14.98_2.0.0_ga+g5d6cbeafb80c (oe-user@oe-host) (gcc version 7.3.0 (GCC)) #1 SMP PREEMPT Thu Sep 5 10:17:26 UTC 2019
CPU: ARMv7 Processor [410fc075] revision 5 (ARMv7), cr=10c53c7d
CPU: div instructions available: patching division code
CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
OF: fdt: Machine model: My Board
Memory policy: Data cache writealloc
percpu: Embedded 16 pages/cpu @9fbd5000 s35532 r8192 d21812 u65536
Built 1 zonelists, mobility grouping on. Total pages: 130048
Kernel command line: console=ttymxc0,115200 rdinit=/linuxrc clk_ignore_unused
PID hash table entries: 2048 (order: 1, 8192 bytes)
Dentry cache hash table entries: 65536 (order: 6, 262144 bytes)
Inode-cache hash table entries: 32768 (order: 5, 131072 bytes)
Memory: 483644K/524288K available (9216K kernel code, 661K rwdata, 3316K rodata, 1024K init, 442K bss, 40644K reserved, 0K cma-reserved, 0K highmem)
Virtual kernel memory layout:
vector : 0xffff0000 - 0xffff1000 ( 4 kB)
fixmap : 0xffc00000 - 0xfff00000 (3072 kB)
vmalloc : 0xa0800000 - 0xff800000 (1520 MB)
lowmem : 0x80000000 - 0xa0000000 ( 512 MB)
pkmap : 0x7fe00000 - 0x80000000 ( 2 MB)
modules : 0x7f000000 - 0x7fe00000 ( 14 MB)
.text : 0x80008000 - 0x80a00000 (10208 kB)
.init : 0x80e00000 - 0x80f00000 (1024 kB)
.data : 0x80f00000 - 0x80fa5780 ( 662 kB)
.bss : 0x80fa7000 - 0x81015ba0 ( 443 kB)
SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
Preemptible hierarchical RCU implementation.
RCU restricting CPUs from NR_CPUS=4 to nr_cpu_ids=1.
Tasks RCU enabled.
RCU: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=1
NR_IRQS: 16, nr_irqs: 16, preallocated irqs: 16
Switching to timer-based delay loop, resolution 333ns
sched_clock: 32 bits at 3000kHz, resolution 333ns, wraps every 715827882841ns
clocksource: mxc_timer1: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 637086815595 ns
Console: colour dummy device 80x30
Calibrating delay loop (skipped), value calculated using timer frequency.. 6.00 BogoMIPS (lpj=30000)
pid_max: default: 32768 minimum: 301
Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
CPU: Testing write buffer coherency: ok
/cpus/cpu@0 missing clock-frequency property
CPU0: thread -1, cpu 0, socket 0, mpidr 80000000
Setting up static identity map for 0x80100000 - 0x80100060
Hierarchical SRCU implementation.
smp: Bringing up secondary CPUs ...
smp: Brought up 1 node, 1 CPU
SMP: Total of 1 processors activated (6.00 BogoMIPS).
CPU: All CPU(s) started in SVC mode.
devtmpfs: initialized
random: get_random_u32 called from bucket_table_alloc+0x114/0x23c with crng_init=0
VFP support v0.3: implementor 41 architecture 2 part 30 variant 7 rev 5
clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
futex hash table entries: 256 (order: 2, 16384 bytes)
pinctrl core: initialized pinctrl subsystem
NET: Registered protocol family 16
DMA: preallocated 256 KiB pool for atomic coherent allocations
cpuidle: using governor menu
vdd3p0: supplied by regulator-dummy
cpu: supplied by regulator-dummy
vddsoc: supplied by regulator-dummy
hw-breakpoint: found 5 (+1 reserved) breakpoint and 4 watchpoint registers.
hw-breakpoint: maximum watchpoint size is 8 bytes.
imx6ul-pinctrl 20e0000.iomuxc: initialized IMX pinctrl driver
imx6ul-pinctrl 2290000.iomuxc-snvs: no fsl,pins and pins property in node /soc/aips-bus@02200000/iomuxc-snvs@02290000/imx6ull-evk
imx6ul-pinctrl 2290000.iomuxc-snvs: initialized IMX pinctrl driver
imx rpmsg driver is registered.
SCSI subsystem initialized
usbcore: registered new interface driver usbfs
usbcore: registered new interface driver hub
usbcore: registered new device driver usb
Linux video capture interface: v2.00
pps_core: LinuxPPS API ver. 1 registered
pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
PTP clock support registered
MIPI CSI2 driver module loaded
Advanced Linux Sound Architecture Driver Initialized.
Bluetooth: Core ver 2.22
NET: Registered protocol family 31
Bluetooth: HCI device and connection manager initialized
Bluetooth: HCI socket layer initialized
Bluetooth: L2CAP socket layer initialized
Bluetooth: SCO socket layer initialized
clocksource: Switched to clocksource mxc_timer1
VFS: Disk quotas dquot_6.6.0
VFS: Dquot-cache hash table entries: 1024 (order 0, 4096 bytes)
NET: Registered protocol family 2
TCP established hash table entries: 4096 (order: 2, 16384 bytes)
TCP bind hash table entries: 4096 (order: 3, 32768 bytes)
TCP: Hash tables configured (established 4096 bind 4096)
UDP hash table entries: 256 (order: 1, 8192 bytes)
UDP-Lite hash table entries: 256 (order: 1, 8192 bytes)
NET: Registered protocol family 1
RPC: Registered named UNIX socket transport module.
RPC: Registered udp transport module.
RPC: Registered tcp transport module.
RPC: Registered tcp NFSv4.1 backchannel transport module.
Trying to unpack rootfs image as initramfs...
random: fast init done
Freeing initrd memory: 20496K
Bus freq driver module loaded
workingset: timestamp_bits=30 max_order=17 bucket_order=0
NFS: Registering the id_resolver key type
Key type id_resolver registered
Key type id_legacy registered
jffs2: version 2.2. (NAND) ツゥ 2001-2006 Red Hat, Inc.
fuse init (API version 7.26)
io scheduler noop registered
io scheduler deadline registered
io scheduler cfq registered (default)
io scheduler mq-deadline registered
io scheduler kyber registered
imx-weim 21b8000.weim: Driver registered.
imx-sdma 20ec000.sdma: Falling back to user helper
mxs-dma 1804000.dma-apbh: initialized
2020000.serial: ttymxc0 at MMIO 0x2020000 (irq = 19, base_baud = 5000000) is a IMX
console [ttymxc0] enabled
imx-rng 2284000.rngb: iMX RNG Registered.
imx sema4 driver is registered.
[drm] Initialized vivante 1.0.0 20120216 for platform:Vivante GCCore on minor 0
[drm] Initialized vivante 1.0.0 20120216 on minor 0
brd: module loaded
loop: module loaded
nand: device found, Manufacturer ID: 0xc2, Chip ID: 0xd3
nand: Macronix MX60LF8G18AC
nand: 1024 MiB, SLC, erase size: 128 KiB, page size: 2048, OOB size: 64
gpmi-nand 1806000.gpmi-nand: mode:5 ,failed in set feature.
Bad block table found at page 524224, version 0x01
Bad block table found at page 524160, version 0x01
nand_read_bbt: bad block at 0x000004800000
nand_read_bbt: bad block at 0x000014c20000
nand_read_bbt: bad block at 0x0000177a0000
nand_read_bbt: bad block at 0x000023820000
nand_read_bbt: bad block at 0x0000398c0000
nand_read_bbt: bad block at 0x00003e420000
nand_read_bbt: bad block at 0x00003ea60000
nand_read_bbt: bad block at 0x00003eb20000
gpmi-nand 1806000.gpmi-nand: driver registered.
libphy: Fixed MDIO Bus: probed
CAN device driver interface
usbcore: registered new interface driver kaweth
pegasus: v0.9.3 (2013/04/25), Pegasus/Pegasus II USB Ethernet driver
usbcore: registered new interface driver pegasus
usbcore: registered new interface driver rtl8150
usbcore: registered new interface driver r8152
usbcore: registered new interface driver asix
usbcore: registered new interface driver ax88179_178a
usbcore: registered new interface driver cdc_ether
usbcore: registered new interface driver net1080
usbcore: registered new interface driver cdc_subset
usbcore: registered new interface driver zaurus
usbcore: registered new interface driver cdc_ncm
ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
ehci-mxc: Freescale On-Chip EHCI Host driver
usbcore: registered new interface driver usb-storage
usbcore: registered new interface driver usb_ehset_test
usbmisc_imx 2184800.usbmisc: 2184800.usbmisc supply vbus-wakeup not found, using dummy regulator
imx_usb 2184000.usb: 2184000.usb supply vbus not found, using dummy regulator
imx_usb 2184200.usb: 2184200.usb supply vbus not found, using dummy regulator
ci_hdrc ci_hdrc.1: EHCI Host Controller
ci_hdrc ci_hdrc.1: new USB bus registered, assigned bus number 1
ci_hdrc ci_hdrc.1: USB 2.0 started, EHCI 1.00
hub 1-0:1.0: USB hub found
hub 1-0:1.0: 1 port detected
input: 20cc000.snvs:snvs-powerkey as /devices/soc0/soc/2000000.aips-bus/20cc000.snvs/20cc000.snvs:snvs-powerkey/input/input0
snvs_rtc 20cc000.snvs:snvs-rtc-lp: rtc core: registered 20cc000.snvs:snvs-rtc-lp as rtc0
i2c /dev entries driver
IR NEC protocol handler initialized
IR RC5(x/sz) protocol handler initialized
IR RC6 protocol handler initialized
IR JVC protocol handler initialized
IR Sony protocol handler initialized
IR SANYO protocol handler initialized
IR Sharp protocol handler initialized
IR MCE Keyboard/mouse protocol handler initialized
IR XMP protocol handler initialized
imx2-wdt 20bc000.wdog: timeout 60 sec (nowayout=0)
Bluetooth: HCI UART driver ver 2.3
Bluetooth: HCI UART protocol H4 registered
Bluetooth: HCI UART protocol BCSP registered
Bluetooth: HCI UART protocol ATH3K registered
usbcore: registered new interface driver bcm203x
usbcore: registered new interface driver btusb
usbcore: registered new interface driver ath3k
sdhci: Secure Digital Host Controller Interface driver
sdhci: Copyright(c) Pierre Ossman
sdhci-pltfm: SDHCI platform and OF driver helper
sdhci-esdhc-imx 2190000.usdhc: Got CD GPIO
mmc0: SDHCI controller on 2190000.usdhc [2190000.usdhc] using ADMA
usbcore: registered new interface driver usbhid
usbhid: USB HID core driver
NET: Registered protocol family 26
NET: Registered protocol family 10
Segment Routing with IPv6
sit: IPv6, IPv4 and MPLS over IPv4 tunneling driver
NET: Registered protocol family 17
can: controller area network core (rev 20170425 abi 9)
NET: Registered protocol family 29
can: raw protocol (rev 20170425)
can: broadcast manager protocol (rev 20170425 t)
can: netlink gateway (rev 20170425) max_hops=1
Bluetooth: RFCOMM TTY layer initialized
Bluetooth: RFCOMM socket layer initialized
Bluetooth: RFCOMM ver 1.11
Bluetooth: BNEP (Ethernet Emulation) ver 1.3
Bluetooth: BNEP filters: protocol multicast
Bluetooth: BNEP socket layer initialized
Bluetooth: HIDP (Human Interface Emulation) ver 1.2
Bluetooth: HIDP socket layer initialized
8021q: 802.1Q VLAN Support v1.8
lib80211: common routines for IEEE802.11 drivers
Key type dns_resolver registered
Failed to disable 792MHz OPP
Failed to disable 900MHz OPP
(NULL device *): hwmon_device_register() is deprecated. Please convert the driver to use hwmon_device_register_with_info().
imx_thermal 2000000.aips-bus:tempmon: Industrial CPU temperature grade - max:105C critical:100C passive:95C
snvs_rtc 20cc000.snvs:snvs-rtc-lp: setting system clock to 1970-01-01 00:00:00 UTC (0)
clk: Not disabling unused clocks
ALSA device list:
No soundcards found.
Freeing unused kernel memory: 1024K
Found New UDC: ci_hdrc.0
ci_hdrc.0 0
ffs.utp0
file system registered
Mass Storage Function, version: 2009/09/11
LUN: removable file: (no medium)
run utp at /dev/usb-utp0/ep0
.
uuu fastboot client 1.0.0 [built read descriptors
Sep 6 2019 02:45:38]
Start initread strings
usb
write string
Start handle command
uuc /dev/utp
uuc 0.5 [built Sep 6 2019 02:45:38]
UTP: Waiting for /dev/utp to appear
configfs-gadget gadget: high-speed config #1: c
imx-sdma 20ec000.sdma: external firmware not found, using ROM firmware
random: crng init done

mfgtools LOG:

DLL version: 2.7.0
Saturday, September 07, 2019 09:19:38 Start new logging
ModuleID[2] LevelID[10]: CMyExceptionHandler thread is running
ModuleID[2] LevelID[1]: new MxHidDeviceClass
ModuleID[2] LevelID[10]: new MxHidDevice[00E44FE0]
ModuleID[2] LevelID[10]: Device Manager thread is running
ModuleID[2] LevelID[1]: Can't set m_hStopEvent before it initialized or it already stop

ModuleID[2] LevelID[10]: CmdOperation[0] device chagned and reset to state 0
ModuleID[2] LevelID[10]: ExecuteCommand--Boot[WndIndex:0], File is C:\Users\ModuleID[2] LevelID[10]: ExecuteCommand--Load[WndIndex:0], File is C:\Users\ModuleID[2] LevelID[10]: PortMgrDlg(0)--Command Load excute successfully, retry count: 0
ModuleID[2] LevelID[10]: ExecuteCommand--Load[WndIndex:0], File is C:\Users\ModuleID[2] LevelID[10]: PortMgrDlg(0)--Command Load excute successfully, retry count: 0
ModuleID[2] LevelID[10]: ExecuteCommand--Load[WndIndex:0], File is C:\Users\ModuleID[2] LevelID[10]: PortMgrDlg(0)--Command Load excute successfully, retry count: 0
ModuleID[2] LevelID[10]: ExecuteCommand--Jump[WndIndex:0]
ModuleID[2] LevelID[10]: *********MxHidDevice[00E44FE0] Jump to Ramkernel successfully!**********
ModuleID[2] LevelID[10]: CmdOperation[0], current state command has been finished and the last command is successful, so SetEvent(hDevCanDeleteEvent)
ModuleID[2] LevelID[10]: DeviceManager::DevChangeWnd::OnDeviceChange() - DEVICE_REMOVAL_EVT(\\?\USB#VID_15A2&PID_0080#5&38e97a59&0&12#{a5dcbf10-6530-11d2-901f-00c04fb951ed})
ModuleID[2] LevelID[10]: DeviceManager::DevChangeWnd::OnDeviceChange() - end
ModuleID[2] LevelID[10]: DeviceManager::OnMsgDeviceEvent() - DEVICE_REMOVAL_EVT(\\?\USB#VID_15A2&PID_0080#5&38e97a59&0&12#{a5dcbf10-6530-11d2-901f-00c04fb951ed})
ModuleID[2] LevelID[10]: DeviceClass::FindDeviceByUsbPath--DeviceListType_Current, _devices.size: 1
ModuleID[2] LevelID[10]: DeviceClass::FindDeviceByUsbPath--DeviceListType_Current, devInstPathToFind: USB\VID_15A2&PID_0080\5&38E97A59&0&12, _deviceInstanceID: USB\VID_15A2&PID_0080\5&38E97A59&0&12
ModuleID[2] LevelID[10]: DeviceClass::FindDeviceByUsbPath--DeviceListType_Current, Find the device
ModuleID[2] LevelID[10]: DeviceManager::OnMsgDeviceEvent() - DEVICE_REMOVAL_EVT,[MxHidDeviceClass] vid_15a2&pid_0080, Hub:1-Port:12
ModuleID[2] LevelID[10]: DeviceManager::OnMsgDeviceEvent() - DEVICE_REMOVAL_EVT, Notify
ModuleID[2] LevelID[10]: CmdOpreation[0]--OnDeviceChangeNotify, Volume Arrive/Remove or Device Arrive/Remove
ModuleID[2] LevelID[10]: CmdOpreation[0]--OnDeviceChangeNotify, m_p_usb_port is not NULL, so only refresh
ModuleID[2] LevelID[10]: CmdOpreation[0]--OnDeviceChangeNotify, Volume/Device Remove
ModuleID[2] LevelID[1]: CmdOpreation[0]--set m_hDeviceRemoveEvent.
ModuleID[2] LevelID[10]: CmdOpreation[0]--WaitforEvents device remove1
ModuleID[2] LevelID[10]: DeviceManager::OnMsgDeviceEvent()-DEVICE_REMOVAL_EVT, hDevCanDeleteEvent has been set
ModuleID[2] LevelID[10]: delete MxHidDevice[00E44FE0]
ModuleID[2] LevelID[10]: DeviceManager::DevChangeWnd::OnDeviceChange() - DEVICE_ARRIVAL_EVT(\\?\USB#Vid_0E0F&Pid_0001#0000000000000000#{a5dcbf10-6530-11d2-901f-00c04fb951ed})
ModuleID[2] LevelID[10]: DeviceManager::DevChangeWnd::OnDeviceChange() - end
ModuleID[2] LevelID[10]: DeviceManager::OnMsgDeviceEvent() - DEVICE_ARRIVAL_EVT(\\?\USB#Vid_0E0F&Pid_0001#0000000000000000#{a5dcbf10-6530-11d2-901f-00c04fb951ed})
ModuleID[2] LevelID[10]: DeviceManager::DevChangeWnd::OnDeviceChange() - DEVICE_REMOVAL_EVT(\\?\USB#Vid_0E0F&Pid_0001#0000000000000000#{a5dcbf10-6530-11d2-901f-00c04fb951ed})
ModuleID[2] LevelID[10]: DeviceManager::DevChangeWnd::OnDeviceChange() - end
ModuleID[2] LevelID[10]: DeviceManager::OnMsgDeviceEvent() - DEVICE_REMOVAL_EVT(\\?\USB#Vid_0E0F&Pid_0001#0000000000000000#{a5dcbf10-6530-11d2-901f-00c04fb951ed})
ModuleID[2] LevelID[10]: DeviceManager::DevChangeWnd::OnDeviceChange() - DEVICE_ARRIVAL_EVT(\\?\USB#VID_066F&PID_9BFF#0000000000000000#{a5dcbf10-6530-11d2-901f-00c04fb951ed})
ModuleID[2] LevelID[10]: DeviceManager::DevChangeWnd::OnDeviceChange() - end
ModuleID[2] LevelID[10]: DeviceManager::OnMsgDeviceEvent() - DEVICE_ARRIVAL_EVT(\\?\USB#VID_066F&PID_9BFF#0000000000000000#{a5dcbf10-6530-11d2-901f-00c04fb951ed})
ModuleID[2] LevelID[10]: DeviceManager::DevChangeWnd::OnDeviceChange() - VOLUME_ARRIVAL_EVT(F)
ModuleID[2] LevelID[10]: DeviceManager::DevChangeWnd::OnDeviceChange() - end
ModuleID[2] LevelID[10]: DeviceManager::OnMsgDeviceEvent() - VOLUME_ARRIVAL_EVT(F)
ModuleID[2] LevelID[10]: VolumeDeviceClass::AddUsbDevice() F
ModuleID[2] LevelID[10]: DeviceTypeDisk--_devices size: 1
ModuleID[2] LevelID[10]: Volume--StorageDisk, Disk->_driveNumber:2, Volume->_diskNumber:2
ModuleID[2] LevelID[10]: DeviceTypeDisk--find Disk device: 00E44FE0
ModuleID[2] LevelID[10]: DeviceTypeDisk--_devices size: 1
ModuleID[2] LevelID[10]: Volume--StorageDisk, Disk->_driveNumber:2, Volume->_diskNumber:2
ModuleID[2] LevelID[10]: DeviceTypeDisk--find Disk device: 00E44FE0
ModuleID[2] LevelID[10]: DeviceTypeDisk--_devices size: 1
ModuleID[2] LevelID[10]: Volume--StorageDisk, Disk->_driveNumber:2, Volume->_diskNumber:2
ModuleID[2] LevelID[10]: DeviceTypeDisk--find Disk device: 00E44FE0
ModuleID[2] LevelID[10]: DeviceTypeDisk--_devices size: 1
ModuleID[2] LevelID[10]: Volume--StorageDisk, Disk->_driveNumber:2, Volume->_diskNumber:2
ModuleID[2] LevelID[10]: DeviceTypeDisk--find Disk device: 00E44FE0
ModuleID[2] LevelID[10]: DeviceTypeDisk--_devices size: 1
ModuleID[2] LevelID[10]: Volume--StorageDisk, Disk->_driveNumber:2, Volume->_diskNumber:2
ModuleID[2] LevelID[10]: DeviceTypeDisk--find Disk device: 00E44FE0
ModuleID[2] LevelID[10]: DeviceTypeDisk--_devices size: 1
ModuleID[2] LevelID[10]: Volume--StorageDisk, Disk->_driveNumber:2, Volume->_diskNumber:2
ModuleID[2] LevelID[10]: DeviceTypeDisk--find Disk device: 00E44FE0
ModuleID[2] LevelID[10]: DeviceTypeDisk--_devices size: 1
ModuleID[2] LevelID[10]: Volume--StorageDisk, Disk->_driveNumber:2, Volume->_diskNumber:2
ModuleID[2] LevelID[10]: DeviceTypeDisk--find Disk device: 00E44FE0
ModuleID[2] LevelID[10]: DeviceTypeDisk--_devices size: 1
ModuleID[2] LevelID[10]: Volume--StorageDisk, Disk->_driveNumber:2, Volume->_diskNumber:2
ModuleID[2] LevelID[10]: DeviceTypeDisk--find Disk device: 00E44FE0
ModuleID[2] LevelID[10]: DeviceTypeDisk--_devices size: 1
ModuleID[2] LevelID[10]: Volume--StorageDisk, Disk->_driveNumber:2, Volume->_diskNumber:2
ModuleID[2] LevelID[10]: DeviceTypeDisk--find Disk device: 00E44FE0
ModuleID[2] LevelID[10]: DeviceTypeDisk--_devices size: 1
ModuleID[2] LevelID[10]: Volume--StorageDisk, Disk->_driveNumber:2, Volume->_diskNumber:2
ModuleID[2] LevelID[10]: DeviceTypeDisk--find Disk device: 00E44FE0
ModuleID[2] LevelID[10]: DeviceTypeDisk--_devices size: 1
ModuleID[2] LevelID[10]: Volume--StorageDisk, Disk->_driveNumber:2, Volume->_diskNumber:2
ModuleID[2] LevelID[10]: DeviceTypeDisk--find Disk device: 00E44FE0
ModuleID[2] LevelID[10]: DeviceTypeDisk--_devices size: 1
ModuleID[2] LevelID[10]: Volume--StorageDisk, Disk->_driveNumber:2, Volume->_diskNumber:2
ModuleID[2] LevelID[10]: DeviceTypeDisk--find Disk device: 00E44FE0
ModuleID[2] LevelID[10]: DeviceTypeDisk--_devices size: 1
ModuleID[2] LevelID[10]: Volume--StorageDisk, Disk->_driveNumber:2, Volume->_diskNumber:2
ModuleID[2] LevelID[10]: DeviceTypeDisk--find Disk device: 00E44FE0
ModuleID[2] LevelID[10]: DeviceTypeDisk--_devices size: 1
ModuleID[2] LevelID[10]: Volume--StorageDisk, Disk->_driveNumber:2, Volume->_diskNumber:2
ModuleID[2] LevelID[10]: DeviceTypeDisk--find Disk device: 00E44FE0
ModuleID[2] LevelID[10]: DeviceTypeDisk--_devices size: 1
ModuleID[2] LevelID[10]: Volume--StorageDisk, Disk->_driveNumber:2, Volume->_diskNumber:2
ModuleID[2] LevelID[10]: DeviceTypeDisk--find Disk device: 00E44FE0
ModuleID[2] LevelID[10]: DeviceTypeDisk--_devices size: 1
ModuleID[2] LevelID[10]: Volume--StorageDisk, Disk->_driveNumber:2, Volume->_diskNumber:2
ModuleID[2] LevelID[10]: DeviceTypeDisk--find Disk device: 00E44FE0
ModuleID[2] LevelID[10]: DeviceTypeDisk--_devices size: 1
ModuleID[2] LevelID[10]: Volume--StorageDisk, Disk->_driveNumber:2, Volume->_diskNumber:2
ModuleID[2] LevelID[10]: DeviceTypeDisk--find Disk device: 00E44FE0
ModuleID[2] LevelID[10]: DeviceTypeDisk--_devices size: 1
ModuleID[2] LevelID[10]: Volume--StorageDisk, Disk->_driveNumber:2, Volume->_diskNumber:2
ModuleID[2] LevelID[10]: DeviceTypeDisk--find Disk device: 00E44FE0
ModuleID[2] LevelID[10]: DeviceTypeDisk--_devices size: 1
ModuleID[2] LevelID[10]: Volume--StorageDisk, Disk->_driveNumber:2, Volume->_diskNumber:2
ModuleID[2] LevelID[10]: DeviceTypeDisk--find Disk device: 00E44FE0
ModuleID[2] LevelID[10]: DeviceTypeDisk--_devices size: 1
ModuleID[2] LevelID[10]: Volume--StorageDisk, Disk->_driveNumber:2, Volume->_diskNumber:2
ModuleID[2] LevelID[10]: DeviceTypeDisk--find Disk device: 00E44FE0
ModuleID[2] LevelID[10]: VolumeDeviceClass::AddUsbDevice() failed F
ModuleID[2] LevelID[10]: DeviceManager::OnMsgDeviceEvent() - VOLUME_ARRIVAL_EVT-Disk(F), Hub:0-Port:0
ModuleID[2] LevelID[10]: CCmdOpreation[0] thread is Closed
ModuleID[2] LevelID[10]: CCmdOpreation[0] thread is Closed
ModuleID[2] LevelID[10]: DeviceManager::OnMsgDeviceEvent() - EVENT_KILL
ModuleID[2] LevelID[10]: CMyExceptionHandler::OnMsgExceptionEvent() - KillExceptionHandlerThread
ModuleID[2] LevelID[10]: Exception Handler thread is closed
ModuleID[2] LevelID[1]: delete MxHidDeviceClass
ModuleID[2] LevelID[10]: Device Manager thread is closed

At this time, Windows mounted the USB storage and FileManage started automatically. (Windows is Windows10 HOME)

The display of Mfgtool is "No Device Connected".

Do you know why the kernel stopped?

Mfgtool seems to wait waiting for something to happen, but I can't know what it is.

Thank you

0 Kudos
2,732 Views
igorpadykov
NXP Employee
NXP Employee

suggest to check that usb_id pin is not grounded.

Best regards
igor

0 Kudos
2,732 Views
f_takahashi
Contributor II

Thank you very much. igor

I confirmed the usb_id pin connection.


However, there was no problem with pin connection.

I focused on the issue of "UTP: Waiting for /dev/utp to appear" in the kernel LOG for this issue.

This is a message displayed by the utp process, waiting for the /dev/utp device to appear.

Since the /dev/utp device node does not appear, the update process stops.

How should the kernel be configured to make the /dev/utp device node appear?

My kernel already has CONFIG_FSL_UTP enabled.

Thank you

0 Kudos
2,733 Views
igorpadykov
NXP Employee
NXP Employee

>How should the kernel be configured to make the /dev/utp device node appear?

there are no additional settings except suggested in

sect.6.2 Manufacturing Tool, MFGTool attached Yocto Guide.

This error points that usb module is not working on custom board,

due to hardware or software settings. You can try to reproduce issue

on i.MX6ULL EVK reference board.

Best regards
igor

0 Kudos
2,734 Views
f_takahashi
Contributor II

igor, thank you for your support

The advice here didn't help much, but I succeeded in writing an image with Mfgtool.
This was due to incomplete settings due to NAND boot of u-boot.
NXP wrote in the documentation how to configure NAND boot for Yocto, but this alone did not work for u-boot.
We want NXP to confirm and fix this issue as soon as possible. And I would like to use the source code where this issue was fixed and released by NXP.

My changes may not be correct and will not be published here.

We succeeded in writing images with Mfgtool, but have new problems after kernel boot.

This issue should not be discussed here, so I'll ask you a new thread.

Thank you

0 Kudos
2,733 Views
f_takahashi
Contributor II

Thank you very much. igor

I read "i.MX6 / 7 DDR Stress Test Tool V3.00" and decided the DDR setting value of u-boot by using Excel sheet and DDR stress tool.

And I read the "Freescale Yocto Project User's Guide, Rev. 0, 04/2016" and made the image of firmware u-boot, linux kernel and initramfs.

The following command was used to make the firmware.

$ bitbake fsl-image-mfgtool-initramfs

At this time, the kernel image recipe was linux-imx instead of linux-imx-mfgtool.

Can I use this kernel image for fsgtool firmware?

The display of mfgtool immediately returned to "Loading U-boot." after "Jumping to OS image."

0 Kudos
2,733 Views
f_takahashi
Contributor II

Thank you very much. igor

There is additional information.

When creating the firmware image, I wanted to use only UART and USB, so I edited the device tree description.

#include "imx6ull-9x9-XXXX.dts"

&gpmi {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_gpmi_nand_1>;
status = "okay";
nand-on-flash-bbt;
};

&iomuxc {
imx6ull-evk-gpmi-rework {
pinctrl_gpmi_nand_1: gpmi-nand-1 {
fsl,pins = <
MX6UL_PAD_NAND_CLE__RAWNAND_CLE 0xb0b1
MX6UL_PAD_NAND_ALE__RAWNAND_ALE 0xb0b1
MX6UL_PAD_NAND_WP_B__RAWNAND_WP_B 0xb0b1
MX6UL_PAD_NAND_READY_B__RAWNAND_READY_B 0xb000
MX6UL_PAD_NAND_CE0_B__RAWNAND_CE0_B 0xb0b1
MX6UL_PAD_NAND_CE1_B__RAWNAND_CE1_B 0xb0b1
MX6UL_PAD_NAND_RE_B__RAWNAND_RE_B 0xb0b1
MX6UL_PAD_NAND_WE_B__RAWNAND_WE_B 0xb0b1
MX6UL_PAD_NAND_DATA00__RAWNAND_DATA00 0xb0b1
MX6UL_PAD_NAND_DATA01__RAWNAND_DATA01 0xb0b1
MX6UL_PAD_NAND_DATA02__RAWNAND_DATA02 0xb0b1
MX6UL_PAD_NAND_DATA03__RAWNAND_DATA03 0xb0b1
MX6UL_PAD_NAND_DATA04__RAWNAND_DATA04 0xb0b1
MX6UL_PAD_NAND_DATA05__RAWNAND_DATA05 0xb0b1
MX6UL_PAD_NAND_DATA06__RAWNAND_DATA06 0xb0b1
MX6UL_PAD_NAND_DATA07__RAWNAND_DATA07 0xb0b1
>;
};
};
};

&qspi {
status = "disabled";
};

&usdhc2 {
status = "disabled";
};

And.

/dts-v1/;

#include <dt-bindings/input/input.h>
#include "imx6ull.dtsi"

/ {
model = "My XXXX Board";
compatible = "fsl,imx6ull-9x9-evk", "fsl,imx6ull";

// backlight {
// compatible = "pwm-backlight";
// pwms = <&pwm1 0 5000000>;
// brightness-levels = <0 4 8 16 32 64 128 255>;
// default-brightness-level = <6>;
// status = "okay";
// };

chosen {
stdout-path = &uart1;
};

memory {
reg = <0x80000000 0x20000000>;
};

// reserved-memory {
// #address-cells = <1>;
// #size-cells = <1>;
// ranges;
//
// linux,cma {
// compatible = "shared-dma-pool";
// reusable;
// size = <0x6000000>;
// linux,cma-default;
// };
// };

// pxp_v4l2 {
// compatible = "fsl,imx6ul-pxp-v4l2", "fsl,imx6sx-pxp-v4l2", "fsl,imx6sl-pxp-v4l2";
// status = "okay";
// };

// regulators {
// compatible = "simple-bus";
// #address-cells = <1>;
// #size-cells = <0>;
//
// reg_can_3v3: regulator@0 {
// compatible = "regulator-fixed";
// reg = <0>;
// regulator-name = "can-3v3";
// regulator-min-microvolt = <3300000>;
// regulator-max-microvolt = <3300000>;
// gpios = <&gpio_spi 3 GPIO_ACTIVE_LOW>;
// };
//
// reg_gpio_dvfs: regulator-gpio {
// compatible = "regulator-gpio";
// pinctrl-names = "default";
// pinctrl-0 = <&pinctrl_dvfs>;
// regulator-min-microvolt = <1300000>;
// regulator-max-microvolt = <1400000>;
// regulator-name = "gpio_dvfs";
// regulator-type = "voltage";
// gpios = <&gpio5 3 GPIO_ACTIVE_HIGH>;
// states = <1300000 0x1 1400000 0x0>;
// };
//
// reg_sd1_vmmc: regulator@1 {
// compatible = "regulator-fixed";
// regulator-name = "VSD_3V3";
// regulator-min-microvolt = <3300000>;
// regulator-max-microvolt = <3300000>;
// gpio = <&gpio1 9 GPIO_ACTIVE_HIGH>;
// off-on-delay = <20000>;
// enable-active-high;
// };
// };

// sound {
// compatible = "fsl,imx6ul-evk-wm8960",
// "fsl,imx-audio-wm8960";
// model = "wm8960-audio";
// cpu-dai = <&sai2>;
// audio-codec = <&codec>;
// asrc-controller = <&asrc>;
// codec-master;
// gpr = <&gpr 4 0x100000 0x100000>;
// /*
// * hp-det = <hp-det-pin hp-det-polarity>;
// * hp-det-pin: JD1 JD2 or JD3
// * hp-det-polarity = 0: hp detect high for headphone
// * hp-det-polarity = 1: hp detect high for speaker
// */
// hp-det = <3 0>;
// hp-det-gpios = <&gpio5 4 0>;
// mic-det-gpios = <&gpio5 4 0>;
// audio-routing =
// "Headphone Jack", "HP_L",
// "Headphone Jack", "HP_R",
// "Ext Spk", "SPK_LP",
// "Ext Spk", "SPK_LN",
// "Ext Spk", "SPK_RP",
// "Ext Spk", "SPK_RN",
// "LINPUT2", "Mic Jack",
// "LINPUT3", "Mic Jack",
// "RINPUT1", "Main MIC",
// "RINPUT2", "Main MIC",
// "Mic Jack", "MICB",
// "Main MIC", "MICB",
// "CPU-Playback", "ASRC-Playback",
// "Playback", "CPU-Playback",
// "ASRC-Capture", "CPU-Capture",
// "CPU-Capture", "Capture";
// };

// spi4 {
// compatible = "spi-gpio";
// pinctrl-names = "default";
// pinctrl-0 = <&pinctrl_spi4>;
// pinctrl-assert-gpios = <&gpio5 8 GPIO_ACTIVE_LOW>;
// status = "okay";
// gpio-sck = <&gpio5 11 0>;
// gpio-mosi = <&gpio5 10 0>;
// cs-gpios = <&gpio5 7 0>;
// num-chipselects = <1>;
// #address-cells = <1>;
// #size-cells = <0>;
//
// gpio_spi: gpio_spi@0 {
// compatible = "fairchild,74hc595";
// gpio-controller;
// #gpio-cells = <2>;
// reg = <0>;
// registers-number = <1>;
// registers-default = /bits/ 8 <0x57>;
// spi-max-frequency = <100000>;
// };
// };
};

//&clks {
// assigned-clocks = <&clks IMX6UL_CLK_PLL4_AUDIO_DIV>;
// assigned-clock-rates = <786432000>;
//};

&cpu0 {
/*
* on i.MX6ULL, no seperated VDD_ARM_IN and VDD_SOC_IN,
* to align with other platform and use the same cpufreq
* driver, still use the seperated OPP define for arm
* and soc.
*/
operating-points = <
/* kHz uV */
528000 1175000
396000 1175000
198000 1175000
>;
fsl,soc-operating-points = <
/* KHz uV */
528000 1175000
396000 1175000
198000 1175000
>;
fsl,arm-soc-shared = <1>;
};

//&reg_arm {
// vin-supply = <&sw1c_reg>;
// regulator-allow-bypass;
//};

//&reg_soc {
// vin-supply = <&sw1c_reg>;
// regulator-allow-bypass;
//};

//&csi {
// status = "okay";
//
// port {
// csi1_ep: endpoint {
// remote-endpoint = <&ov5640_ep>;
// };
// };
//};

//&fec1 {
// pinctrl-names = "default";
// pinctrl-0 = <&pinctrl_enet1>;
// phy-mode = "rmii";
// phy-handle = <&ethphy0>;
// status = "okay";
//};

//&fec2 {
// pinctrl-names = "default";
// pinctrl-0 = <&pinctrl_enet2>;
// phy-mode = "rmii";
// phy-handle = <&ethphy1>;
// status = "okay";
//
// mdio {
// #address-cells = <1>;
// #size-cells = <0>;
//
// ethphy0: ethernet-phy@2 {
// compatible = "ethernet-phy-ieee802.3-c22";
// reg = <2>;
// };
//
// ethphy1: ethernet-phy@1 {
// compatible = "ethernet-phy-ieee802.3-c22";
// reg = <1>;
// };
// };
//};

//&flexcan1 {
// pinctrl-names = "default";
// pinctrl-0 = <&pinctrl_flexcan1>;
// xceiver-supply = <&reg_can_3v3>;
// status = "okay";
//};

//&flexcan2 {
// pinctrl-names = "default";
// pinctrl-0 = <&pinctrl_flexcan2>;
// xceiver-supply = <&reg_can_3v3>;
// status = "okay";
//};

//&gpc {
// fsl,cpu_pupscr_sw2iso = <0xf>;
// fsl,cpu_pupscr_sw = <0x0>;
// fsl,cpu_pdnscr_iso2sw = <0x1>;
// fsl,cpu_pdnscr_iso = <0x1>;
// fsl,ldo-bypass = <1>;
//};

//&i2c1 {
// clock-frequency = <100000>;
// pinctrl-names = "default";
// pinctrl-0 = <&pinctrl_i2c1>;
// status = "okay";
//
// pmic: pfuze3000@08 {
// compatible = "fsl,pfuze3000";
// reg = <0x08>;
//
// regulators {
// sw1a_reg: sw1a {
// regulator-min-microvolt = <700000>;
// regulator-max-microvolt = <3300000>;
// regulator-boot-on;
// regulator-always-on;
// regulator-ramp-delay = <6250>;
// };
//
// /* use sw1c_reg to align with pfuze100/pfuze200 */
// sw1c_reg: sw1b {
// regulator-min-microvolt = <700000>;
// regulator-max-microvolt = <1475000>;
// regulator-boot-on;
// regulator-always-on;
// regulator-ramp-delay = <6250>;
// };
//
// sw2_reg: sw2 {
// regulator-min-microvolt = <2500000>;
// regulator-max-microvolt = <3300000>;
// regulator-boot-on;
// regulator-always-on;
// };
//
// sw3a_reg: sw3 {
// regulator-min-microvolt = <900000>;
// regulator-max-microvolt = <1650000>;
// regulator-boot-on;
// regulator-always-on;
// };
//
// swbst_reg: swbst {
// regulator-min-microvolt = <5000000>;
// regulator-max-microvolt = <5150000>;
// };
//
// snvs_reg: vsnvs {
// regulator-min-microvolt = <1000000>;
// regulator-max-microvolt = <3000000>;
// regulator-boot-on;
// regulator-always-on;
// };
//
// vref_reg: vrefddr {
// regulator-boot-on;
// regulator-always-on;
// };
//
// vgen1_reg: vldo1 {
// regulator-min-microvolt = <1800000>;
// regulator-max-microvolt = <3300000>;
// regulator-always-on;
// };
//
// vgen2_reg: vldo2 {
// regulator-min-microvolt = <800000>;
// regulator-max-microvolt = <1550000>;
// regulator-always-on;
// };
//
// vgen3_reg: vccsd {
// regulator-min-microvolt = <2850000>;
// regulator-max-microvolt = <3300000>;
// regulator-always-on;
// };
//
// vgen4_reg: v33 {
// regulator-min-microvolt = <2850000>;
// regulator-max-microvolt = <3300000>;
// regulator-always-on;
// };
//
// vgen5_reg: vldo3 {
// regulator-min-microvolt = <1800000>;
// regulator-max-microvolt = <3300000>;
// regulator-always-on;
// };
//
// vgen6_reg: vldo4 {
// regulator-min-microvolt = <1800000>;
// regulator-max-microvolt = <3300000>;
// regulator-always-on;
// };
// };
// };
//
// mag3110@0e {
// compatible = "fsl,mag3110";
// reg = <0x0e>;
// position = <2>;
// };
//
// fxls8471@1e {
// compatible = "fsl,fxls8471";
// reg = <0x1e>;
// position = <0>;
// interrupt-parent = <&gpio5>;
// interrupts = <0 8>;
// };
//};

//&i2c2 {
// clock_frequency = <100000>;
// pinctrl-names = "default";
// pinctrl-0 = <&pinctrl_i2c2>;
// status = "okay";
//
// codec: wm8960@1a {
// compatible = "wlf,wm8960";
// reg = <0x1a>;
// clocks = <&clks IMX6UL_CLK_SAI2>;
// clock-names = "mclk";
// wlf,shared-lrclk;
// };
//
// ov5640: ov5640@3c {
// compatible = "ovti,ov5640";
// reg = <0x3c>;
// pinctrl-names = "default";
// pinctrl-0 = <&pinctrl_csi1>;
// clocks = <&clks IMX6UL_CLK_CSI>;
// clock-names = "csi_mclk";
// pwn-gpios = <&gpio_spi 6 1>;
// rst-gpios = <&gpio_spi 5 0>;
// csi_id = <0>;
// mclk = <24000000>;
// mclk_source = <0>;
// status = "okay";
// port {
// ov5640_ep: endpoint {
// remote-endpoint = <&csi1_ep>;
// };
// };
// };
//};

&iomuxc {
pinctrl-names = "default";
// pinctrl-0 = <&pinctrl_hog_1>;
imx6ul-evk {
// pinctrl_csi1: csi1grp {
// fsl,pins = <
// MX6UL_PAD_CSI_MCLK__CSI_MCLK 0x1b088
// MX6UL_PAD_CSI_PIXCLK__CSI_PIXCLK 0x1b088
// MX6UL_PAD_CSI_VSYNC__CSI_VSYNC 0x1b088
// MX6UL_PAD_CSI_HSYNC__CSI_HSYNC 0x1b088
// MX6UL_PAD_CSI_DATA00__CSI_DATA02 0x1b088
// MX6UL_PAD_CSI_DATA01__CSI_DATA03 0x1b088
// MX6UL_PAD_CSI_DATA02__CSI_DATA04 0x1b088
// MX6UL_PAD_CSI_DATA03__CSI_DATA05 0x1b088
// MX6UL_PAD_CSI_DATA04__CSI_DATA06 0x1b088
// MX6UL_PAD_CSI_DATA05__CSI_DATA07 0x1b088
// MX6UL_PAD_CSI_DATA06__CSI_DATA08 0x1b088
// MX6UL_PAD_CSI_DATA07__CSI_DATA09 0x1b088
// >;
// };

// pinctrl_enet1: enet1grp {
// fsl,pins = <
// MX6UL_PAD_ENET1_RX_EN__ENET1_RX_EN 0x1b0b0
// MX6UL_PAD_ENET1_RX_ER__ENET1_RX_ER 0x1b0b0
// MX6UL_PAD_ENET1_RX_DATA0__ENET1_RDATA00 0x1b0b0
// MX6UL_PAD_ENET1_RX_DATA1__ENET1_RDATA01 0x1b0b0
// MX6UL_PAD_ENET1_TX_EN__ENET1_TX_EN 0x1b0b0
// MX6UL_PAD_ENET1_TX_DATA0__ENET1_TDATA00 0x1b0b0
// MX6UL_PAD_ENET1_TX_DATA1__ENET1_TDATA01 0x1b0b0
// MX6UL_PAD_ENET1_TX_CLK__ENET1_REF_CLK1 0x4001b031
// >;
// };

// pinctrl_enet2: enet2grp {
// fsl,pins = <
// MX6UL_PAD_GPIO1_IO07__ENET2_MDC 0x1b0b0
// MX6UL_PAD_GPIO1_IO06__ENET2_MDIO 0x1b0b0
// MX6UL_PAD_ENET2_RX_EN__ENET2_RX_EN 0x1b0b0
// MX6UL_PAD_ENET2_RX_ER__ENET2_RX_ER 0x1b0b0
// MX6UL_PAD_ENET2_RX_DATA0__ENET2_RDATA00 0x1b0b0
// MX6UL_PAD_ENET2_RX_DATA1__ENET2_RDATA01 0x1b0b0
// MX6UL_PAD_ENET2_TX_EN__ENET2_TX_EN 0x1b0b0
// MX6UL_PAD_ENET2_TX_DATA0__ENET2_TDATA00 0x1b0b0
// MX6UL_PAD_ENET2_TX_DATA1__ENET2_TDATA01 0x1b0b0
// MX6UL_PAD_ENET2_TX_CLK__ENET2_REF_CLK2 0x4001b031
// >;
// };

// pinctrl_flexcan1: flexcan1grp{
// fsl,pins = <
// MX6UL_PAD_UART3_RTS_B__FLEXCAN1_RX 0x1b020
// MX6UL_PAD_UART3_CTS_B__FLEXCAN1_TX 0x1b020
// >;
// };

// pinctrl_flexcan2: flexcan2grp{
// fsl,pins = <
// MX6UL_PAD_UART2_RTS_B__FLEXCAN2_RX 0x1b020
// MX6UL_PAD_UART2_CTS_B__FLEXCAN2_TX 0x1b020
// >;
// };

// pinctrl_hog_1: hoggrp-1 {
// fsl,pins = <
// MX6UL_PAD_UART1_RTS_B__GPIO1_IO19 0x17059 /* SD1 CD */
// MX6UL_PAD_GPIO1_IO05__USDHC1_VSELECT 0x17059 /* SD1 VSELECT */
// MX6UL_PAD_GPIO1_IO09__GPIO1_IO09 0x17059 /* SD1 RESET */
// >;
// };

// pinctrl_i2c1: i2c1grp {
// fsl,pins = <
// MX6UL_PAD_UART4_TX_DATA__I2C1_SCL 0x4001b8b0
// MX6UL_PAD_UART4_RX_DATA__I2C1_SDA 0x4001b8b0
// >;
// };

// pinctrl_i2c2: i2c2grp {
// fsl,pins = <
// MX6UL_PAD_UART5_TX_DATA__I2C2_SCL 0x4001b8b0
// MX6UL_PAD_UART5_RX_DATA__I2C2_SDA 0x4001b8b0
// >;
// };

// pinctrl_lcdif_ctrl: lcdifctrlgrp {
// fsl,pins = <
// MX6UL_PAD_LCD_CLK__LCDIF_CLK 0x79
// MX6UL_PAD_LCD_ENABLE__LCDIF_ENABLE 0x79
// MX6UL_PAD_LCD_HSYNC__LCDIF_HSYNC 0x79
// MX6UL_PAD_LCD_VSYNC__LCDIF_VSYNC 0x79
// >;
// };

// pinctrl_lcdif_dat: lcdifdatgrp {
// fsl,pins = <
// MX6UL_PAD_LCD_DATA00__LCDIF_DATA00 0x79
// MX6UL_PAD_LCD_DATA01__LCDIF_DATA01 0x79
// MX6UL_PAD_LCD_DATA02__LCDIF_DATA02 0x79
// MX6UL_PAD_LCD_DATA03__LCDIF_DATA03 0x79
// MX6UL_PAD_LCD_DATA04__LCDIF_DATA04 0x79
// MX6UL_PAD_LCD_DATA05__LCDIF_DATA05 0x79
// MX6UL_PAD_LCD_DATA06__LCDIF_DATA06 0x79
// MX6UL_PAD_LCD_DATA07__LCDIF_DATA07 0x79
// MX6UL_PAD_LCD_DATA08__LCDIF_DATA08 0x79
// MX6UL_PAD_LCD_DATA09__LCDIF_DATA09 0x79
// MX6UL_PAD_LCD_DATA10__LCDIF_DATA10 0x79
// MX6UL_PAD_LCD_DATA11__LCDIF_DATA11 0x79
// MX6UL_PAD_LCD_DATA12__LCDIF_DATA12 0x79
// MX6UL_PAD_LCD_DATA13__LCDIF_DATA13 0x79
// MX6UL_PAD_LCD_DATA14__LCDIF_DATA14 0x79
// MX6UL_PAD_LCD_DATA15__LCDIF_DATA15 0x79
// MX6UL_PAD_LCD_DATA16__LCDIF_DATA16 0x79
// MX6UL_PAD_LCD_DATA17__LCDIF_DATA17 0x79
// MX6UL_PAD_LCD_DATA18__LCDIF_DATA18 0x79
// MX6UL_PAD_LCD_DATA19__LCDIF_DATA19 0x79
// MX6UL_PAD_LCD_DATA20__LCDIF_DATA20 0x79
// MX6UL_PAD_LCD_DATA21__LCDIF_DATA21 0x79
// MX6UL_PAD_LCD_DATA22__LCDIF_DATA22 0x79
// MX6UL_PAD_LCD_DATA23__LCDIF_DATA23 0x79
// >;
// };

// pinctrl_pwm1: pwm1grp {
// fsl,pins = <
// MX6UL_PAD_GPIO1_IO08__PWM1_OUT 0x110b0
// >;
// };

// pinctrl_qspi: qspigrp {
// fsl,pins = <
// MX6UL_PAD_NAND_WP_B__QSPI_A_SCLK 0x70a1
// MX6UL_PAD_NAND_READY_B__QSPI_A_DATA00 0x70a1
// MX6UL_PAD_NAND_CE0_B__QSPI_A_DATA01 0x70a1
// MX6UL_PAD_NAND_CE1_B__QSPI_A_DATA02 0x70a1
// MX6UL_PAD_NAND_CLE__QSPI_A_DATA03 0x70a1
// MX6UL_PAD_NAND_DQS__QSPI_A_SS0_B 0x70a1
// >;
// };

// pinctrl_sai2: sai2grp {
// fsl,pins = <
// MX6UL_PAD_JTAG_TDI__SAI2_TX_BCLK 0x17088
// MX6UL_PAD_JTAG_TDO__SAI2_TX_SYNC 0x17088
// MX6UL_PAD_JTAG_TRST_B__SAI2_TX_DATA 0x11088
// MX6UL_PAD_JTAG_TCK__SAI2_RX_DATA 0x11088
// MX6UL_PAD_JTAG_TMS__SAI2_MCLK 0x17088
// >;
// };

// pinctrl_tsc: tscgrp {
// fsl,pins = <
// MX6UL_PAD_GPIO1_IO01__GPIO1_IO01 0xb0
// MX6UL_PAD_GPIO1_IO02__GPIO1_IO02 0xb0
// MX6UL_PAD_GPIO1_IO03__GPIO1_IO03 0xb0
// MX6UL_PAD_GPIO1_IO04__GPIO1_IO04 0xb0
// >;
// };

pinctrl_uart1: uart1grp {
fsl,pins = <
MX6UL_PAD_UART1_TX_DATA__UART1_DCE_TX 0x1b0b1
MX6UL_PAD_UART1_RX_DATA__UART1_DCE_RX 0x1b0b1
// MX6UL_PAD_UART1_TX_DATA__UART1_DTE_RX 0x1b0b1
// MX6UL_PAD_UART1_RX_DATA__UART1_DTE_TX 0x1b0b1
// MX6UL_PAD_UART1_RTS_B__UART1_DTE_CTS 0x1b0b1
// MX6UL_PAD_UART1_CTS_B__UART1_DTE_RTS 0x1b0b1
>;
};

// pinctrl_uart2: uart2grp {
// fsl,pins = <
// MX6UL_PAD_UART2_TX_DATA__UART2_DCE_TX 0x1b0b1
// MX6UL_PAD_UART2_RX_DATA__UART2_DCE_RX 0x1b0b1
// MX6UL_PAD_UART3_RX_DATA__UART2_DCE_RTS 0x1b0b1
// MX6UL_PAD_UART3_TX_DATA__UART2_DCE_CTS 0x1b0b1
// >;
// };

// pinctrl_uart2dte: uart2dtegrp {
// fsl,pins = <
// MX6UL_PAD_UART2_TX_DATA__UART2_DTE_RX 0x1b0b1
// MX6UL_PAD_UART2_RX_DATA__UART2_DTE_TX 0x1b0b1
// MX6UL_PAD_UART3_RX_DATA__UART2_DTE_CTS 0x1b0b1
// MX6UL_PAD_UART3_TX_DATA__UART2_DTE_RTS 0x1b0b1
// >;
// };

pinctrl_usdhc1: usdhc1grp {
fsl,pins = <
MX6UL_PAD_SD1_CMD__USDHC1_CMD 0x17059
MX6UL_PAD_SD1_CLK__USDHC1_CLK 0x10059
MX6UL_PAD_SD1_DATA0__USDHC1_DATA0 0x17059
MX6UL_PAD_SD1_DATA1__USDHC1_DATA1 0x17059
MX6UL_PAD_SD1_DATA2__USDHC1_DATA2 0x17059
MX6UL_PAD_SD1_DATA3__USDHC1_DATA3 0x17059
>;
};

pinctrl_usdhc1_100mhz: usdhc1grp100mhz {
fsl,pins = <
MX6UL_PAD_SD1_CMD__USDHC1_CMD 0x170b9
MX6UL_PAD_SD1_CLK__USDHC1_CLK 0x100b9
MX6UL_PAD_SD1_DATA0__USDHC1_DATA0 0x170b9
MX6UL_PAD_SD1_DATA1__USDHC1_DATA1 0x170b9
MX6UL_PAD_SD1_DATA2__USDHC1_DATA2 0x170b9
MX6UL_PAD_SD1_DATA3__USDHC1_DATA3 0x170b9
>;
};

pinctrl_usdhc1_200mhz: usdhc1grp200mhz {
fsl,pins = <
MX6UL_PAD_SD1_CMD__USDHC1_CMD 0x170f9
MX6UL_PAD_SD1_CLK__USDHC1_CLK 0x100f9
MX6UL_PAD_SD1_DATA0__USDHC1_DATA0 0x170f9
MX6UL_PAD_SD1_DATA1__USDHC1_DATA1 0x170f9
MX6UL_PAD_SD1_DATA2__USDHC1_DATA2 0x170f9
MX6UL_PAD_SD1_DATA3__USDHC1_DATA3 0x170f9
>;
};

// pinctrl_usdhc2: usdhc2grp {
// fsl,pins = <
// MX6UL_PAD_NAND_RE_B__USDHC2_CLK 0x17059
// MX6UL_PAD_NAND_WE_B__USDHC2_CMD 0x17059
// MX6UL_PAD_NAND_DATA00__USDHC2_DATA0 0x17059
// MX6UL_PAD_NAND_DATA01__USDHC2_DATA1 0x17059
// MX6UL_PAD_NAND_DATA02__USDHC2_DATA2 0x17059
// MX6UL_PAD_NAND_DATA03__USDHC2_DATA3 0x17059
// >;
// };

pinctrl_wdog: wdoggrp {
fsl,pins = <
MX6UL_PAD_LCD_RESET__WDOG1_WDOG_ANY 0x30b0
>;
};
};
};

&iomuxc_snvs {
pinctrl-names = "default_snvs";
// pinctrl-0 = <&pinctrl_hog_2>;
imx6ull-evk {
// pinctrl_hog_2: hoggrp-2 {
// fsl,pins = <
// MX6ULL_PAD_SNVS_TAMPER0__GPIO5_IO00 0x80000000
// >;
// };

// pinctrl_dvfs: dvfsgrp {
// fsl,pins = <
// MX6ULL_PAD_SNVS_TAMPER3__GPIO5_IO03 0x79
// >;
// };

// pinctrl_lcdif_reset: lcdifresetgrp {
// fsl,pins = <
// /* used for lcd reset */
// MX6ULL_PAD_SNVS_TAMPER9__GPIO5_IO09 0x79
// >;
// };

// pinctrl_spi4: spi4grp {
// fsl,pins = <
// MX6ULL_PAD_BOOT_MODE0__GPIO5_IO10 0x70a1
// MX6ULL_PAD_BOOT_MODE1__GPIO5_IO11 0x70a1
// MX6ULL_PAD_SNVS_TAMPER7__GPIO5_IO07 0x70a1
// MX6ULL_PAD_SNVS_TAMPER8__GPIO5_IO08 0x80000000
// >;
// };

// pinctrl_sai2_hp_det_b: sai2_hp_det_grp {
// fsl,pins = <
// MX6ULL_PAD_SNVS_TAMPER4__GPIO5_IO04 0x17059
// >;
// };
};
};

//&lcdif {
// pinctrl-names = "default";
// pinctrl-0 = <&pinctrl_lcdif_dat
// &pinctrl_lcdif_ctrl
// &pinctrl_lcdif_reset>;
// display = <&display0>;
// status = "okay";
//
// display0: display {
// bits-per-pixel = <16>;
// bus-width = <24>;
//
// display-timings {
// native-mode = <&timing0>;
// timing0: timing0 {
// clock-frequency = <9200000>;
// hactive = <480>;
// vactive = <272>;
// hfront-porch = <8>;
// hback-porch = <4>;
// hsync-len = <41>;
// vback-porch = <2>;
// vfront-porch = <4>;
// vsync-len = <10>;
//
// hsync-active = <0>;
// vsync-active = <0>;
// de-active = <1>;
// pixelclk-active = <0>;
// };
// };
// };
//};

//&pwm1 {
// pinctrl-names = "default";
// pinctrl-0 = <&pinctrl_pwm1>;
// status = "okay";
//};

//&pxp {
// status = "okay";
//};

//&qspi {
// pinctrl-names = "default";
// pinctrl-0 = <&pinctrl_qspi>;
// status = "okay";
// ddrsmp=<0>;
//
// flash0: n25q256a@0 {
// #address-cells = <1>;
// #size-cells = <1>;
// compatible = "micron,n25q256a";
// spi-max-frequency = <29000000>;
// spi-nor,ddr-quad-read-dummy = <6>;
// reg = <0>;
// };
//};

//&sai2 {
// pinctrl-names = "default";
// pinctrl-0 = <&pinctrl_sai2
// &pinctrl_sai2_hp_det_b>;
//
// assigned-clocks = <&clks IMX6UL_CLK_SAI2_SEL>,
// <&clks IMX6UL_CLK_SAI2>;
// assigned-clock-parents = <&clks IMX6UL_CLK_PLL4_AUDIO_DIV>;
// assigned-clock-rates = <0>, <12288000>;
//
// status = "okay";
//};

//&tsc {
// pinctrl-names = "default";
// pinctrl-0 = <&pinctrl_tsc>;
// xnur-gpio = <&gpio1 3 GPIO_ACTIVE_LOW>;
// measure_delay_time = <0xffff>;
// pre_charge_time = <0xfff>;
// status = "okay";
//};

&uart1 {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_uart1>;
// fsl,uart-has-rtscts;
// fsl,dte-mode;
status = "okay";
};

//&uart2 {
// pinctrl-names = "default";
// pinctrl-0 = <&pinctrl_uart2>;
// fsl,uart-has-rtscts;
// /* for DTE mode, add below change */
// /* fsl,dte-mode; */
// /* pinctrl-0 = <&pinctrl_uart2dte>; */
// status = "okay";
//};

&usbotg1 {
dr_mode = "otg";
srp-disable;
hnp-disable;
adp-disable;
status = "okay";
};

&usbotg2 {
dr_mode = "host";
disable-over-current;
status = "okay";
};

&usdhc1 {
pinctrl-names = "default", "state_100mhz", "state_200mhz";
pinctrl-0 = <&pinctrl_usdhc1>;
pinctrl-1 = <&pinctrl_usdhc1_100mhz>;
pinctrl-2 = <&pinctrl_usdhc1_200mhz>;
cd-gpios = <&gpio1 19 GPIO_ACTIVE_LOW>;
keep-power-in-suspend;
enable-sdio-wakeup;
// vmmc-supply = <&reg_sd1_vmmc>;
status = "okay";
};

//&usdhc2 {
// pinctrl-names = "default";
// pinctrl-0 = <&pinctrl_usdhc2>;
// no-1-8-v;
// non-removable;
// keep-power-in-suspend;
// enable-sdio-wakeup;
// status = "okay";
//};

&wdog1 {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_wdog>;
fsl,ext-reset-output;
};

Have I commented out the necessary descriptions?

0 Kudos
2,733 Views
f_takahashi
Contributor II

Thank you for your answer, igor.

Immediately, I will try the DDR stress tool.

I will reply immediately.

Thank you

0 Kudos