I just finished cleaning up the guide: Debian: Getting Started with the PICO-PI-IMX7
I’ve removed the need for DFU-utils, this means you need to keep it in USB boot mode thru out the process. But that solves one of the errors some users have seen…
I’ve also added more output, from the serial console side of imx_usb…
dpkg --list | grep libusb-1
ii libusb-1.0-0:amd64 2:1.0.24-3 amd64 userspace USB programming library
ii libusb-1.0-0-dev:amd64 2:1.0.24-3 amd64 userspace USB programming library development files
ii libusb-1.0-doc 2:1.0.24-3 all documentation for userspace USB programming
imx_usb_loader$ ldd imx_usb
linux-vdso.so.1 (0x00007ffc3e5a7000)
libusb-1.0.so.0 => /lib/x86_64-linux-gnu/libusb-1.0.so.0 (0x00007f3301c7f000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f3301aba000)
libudev.so.1 => /lib/x86_64-linux-gnu/libudev.so.1 (0x00007f3301a92000)
libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f3301a70000)
/lib64/ld-linux-x86-64.so.2 (0x00007f3301cd4000)
sudo ../imx_usb_loader/imx_usb SPL
config file <../imx_usb_loader//imx_usb.conf>
vid=0x066f pid=0x3780 file_name=mx23_usb_work.conf
vid=0x15a2 pid=0x004f file_name=mx28_usb_work.conf
vid=0x15a2 pid=0x0052 file_name=mx50_usb_work.conf
vid=0x15a2 pid=0x0054 file_name=mx6_usb_work.conf
vid=0x15a2 pid=0x0061 file_name=mx6_usb_work.conf
vid=0x15a2 pid=0x0063 file_name=mx6_usb_work.conf
vid=0x15a2 pid=0x0071 file_name=mx6_usb_work.conf
vid=0x15a2 pid=0x007d file_name=mx6_usb_work.conf
vid=0x15a2 pid=0x0080 file_name=mx6ull_usb_work.conf
vid=0x1fc9 pid=0x0128 file_name=mx6_usb_work.conf
vid=0x15a2 pid=0x0076 file_name=mx7_usb_work.conf
vid=0x1fc9 pid=0x0126 file_name=mx7ulp_usb_work.conf
vid=0x15a2 pid=0x0041 file_name=mx51_usb_work.conf
vid=0x15a2 pid=0x004e file_name=mx53_usb_work.conf
vid=0x15a2 pid=0x006a file_name=vybrid_usb_work.conf
vid=0x066f pid=0x37ff file_name=linux_gadget.conf
vid=0x1b67 pid=0x4fff file_name=mx6_usb_sdp_spl.conf
vid=0x0525 pid=0xb4a4 file_name=mx6_usb_sdp_spl.conf
vid=0x1fc9 pid=0x012b file_name=mx8mq_usb_work.conf
vid=0x1fc9 pid=0x0134 file_name=mx8mm_usb_work.conf
vid=0x1fc9 pid=0x013e file_name=mx8mn_usb_work.conf
vid=0x3016 pid=0x1001 file_name=mx8m_usb_sdp_spl.conf
config file <../imx_usb_loader//mx7_usb_work.conf>
parse ../imx_usb_loader//mx7_usb_work.conf
Trying to open device vid=0x15a2 pid=0x0076
Interface 0 claimed
HAB security state: development mode (0x56787856)
== work item
filename SPL
load_size 0 bytes
load_addr 0x00000000
dcd 1
clear_dcd 0
plug 1
jump_mode 3
jump_addr 0x00000000
== end work item
No DCD table
loading binary file(SPL) to 00911400, skip=0, fsize=ac00 type=aa
<<<44032, 44032 bytes>>>
succeeded (security 0x56787856, status 0x88888888)
jumping to 0x00911400
U-Boot SPL 2021.10 (Jan 11 2022 - 15:35:38 -0600)
Trying to boot from USB SDP
SDP: initialize...
SDP: handle requests...
sudo ../imx_usb_loader/imx_usb u-boot-dtb.img
config file <../imx_usb_loader//imx_usb.conf>
vid=0x066f pid=0x3780 file_name=mx23_usb_work.conf
vid=0x15a2 pid=0x004f file_name=mx28_usb_work.conf
vid=0x15a2 pid=0x0052 file_name=mx50_usb_work.conf
vid=0x15a2 pid=0x0054 file_name=mx6_usb_work.conf
vid=0x15a2 pid=0x0061 file_name=mx6_usb_work.conf
vid=0x15a2 pid=0x0063 file_name=mx6_usb_work.conf
vid=0x15a2 pid=0x0071 file_name=mx6_usb_work.conf
vid=0x15a2 pid=0x007d file_name=mx6_usb_work.conf
vid=0x15a2 pid=0x0080 file_name=mx6ull_usb_work.conf
vid=0x1fc9 pid=0x0128 file_name=mx6_usb_work.conf
vid=0x15a2 pid=0x0076 file_name=mx7_usb_work.conf
vid=0x1fc9 pid=0x0126 file_name=mx7ulp_usb_work.conf
vid=0x15a2 pid=0x0041 file_name=mx51_usb_work.conf
vid=0x15a2 pid=0x004e file_name=mx53_usb_work.conf
vid=0x15a2 pid=0x006a file_name=vybrid_usb_work.conf
vid=0x066f pid=0x37ff file_name=linux_gadget.conf
vid=0x1b67 pid=0x4fff file_name=mx6_usb_sdp_spl.conf
vid=0x0525 pid=0xb4a4 file_name=mx6_usb_sdp_spl.conf
vid=0x1fc9 pid=0x012b file_name=mx8mq_usb_work.conf
vid=0x1fc9 pid=0x0134 file_name=mx8mm_usb_work.conf
vid=0x1fc9 pid=0x013e file_name=mx8mn_usb_work.conf
vid=0x3016 pid=0x1001 file_name=mx8m_usb_sdp_spl.conf
config file <../imx_usb_loader//mx6_usb_sdp_spl.conf>
parse ../imx_usb_loader//mx6_usb_sdp_spl.conf
Trying to open device vid=0x0525 pid=0xb4a4
Interface 0 claimed
HAB security state: development mode (0x56787856)
== work item
filename u-boot-dtb.img
load_size 0 bytes
load_addr 0x00000000
dcd 1
clear_dcd 0
plug 1
jump_mode 3
jump_addr 0x00000000
== end work item
loading binary file(u-boot-dtb.img) to 877fffc0, skip=0, fsize=7c5cc type=aa
<<<509388, 509388 bytes>>>
succeeded (security 0x56787856, status 0x88888888)
jumping to 0x877fffc0
Downloading file of size 509388 to 0x877fffc0... done
Jumping to header at 0x877fffc0
Header Tag is not an IMX image
Found header at 0x877fffc0
U-Boot 2021.10 (Jan 11 2022 - 15:35:38 -0600)
CPU: Freescale i.MX7D rev1.2 1000 MHz (running at 792 MHz)
CPU: Commercial temperature grade (0C to 95C) at 46C
Reset cause: POR
Model: TechNexion PICO-IMX7D Board and PI baseboard
Board: i.MX7D PICOSOM
I2C: ready
DRAM: 512 MiB
PMIC: PFUZE3000 DEV_ID=0x30 REV_ID=0x11
MMC: FSL_SDHC: 3, FSL_SDHC: 1, FSL_SDHC: 0
Loading Environment from MMC... OK
In: serial
Out: serial
Err: serial
Net: eth0: ethernet@30be0000
Hit any key to stop autoboot: 0
U-Boot SPL 2021.10 (Jan 11 2022 - 15:35:38 -0600)
Trying to boot from MMC1
U-Boot 2021.10 (Jan 11 2022 - 15:35:38 -0600)
CPU: Freescale i.MX7D rev1.2 1000 MHz (running at 792 MHz)
CPU: Commercial temperature grade (0C to 95C) at 46C
Reset cause: POR
Model: TechNexion PICO-IMX7D Board and PI baseboard
Board: i.MX7D PICOSOM
I2C: ready
DRAM: 512 MiB
PMIC: PFUZE3000 DEV_ID=0x30 REV_ID=0x11
MMC: FSL_SDHC: 3, FSL_SDHC: 1, FSL_SDHC: 0
Loading Environment from MMC... *** Warning - bad CRC, using default environment
In: serial
Out: serial
Err: serial
Net: eth0: ethernet@30be0000
Hit any key to stop autoboot: 0
Saving Environment to MMC... Writing to MMC(0)... OK
switch to partitions #0, OK
mmc0(part 0) is current device
Scanning mmc 0:1...
Found /boot/extlinux/extlinux.conf
Retrieving file: /boot/extlinux/extlinux.conf
194 bytes read in 2 ms (94.7 KiB/s)
1: Linux 5.15.10-armv7-lpae-x15
Retrieving file: /boot/vmlinuz-5.15.10-armv7-lpae-x15
12116480 bytes read in 270 ms (42.8 MiB/s)
append: root=/dev/mmcblk2p1 ro rootfstype=ext4 rootwait quiet
Retrieving file: /boot/dtbs/5.15.10-armv7-lpae-x15/imx7d-pico-pi.dtb
49781 bytes read in 4 ms (11.9 MiB/s)
Kernel image @ 0x80800000 [ 0x000000 - 0xb8e200 ]
## Flattened Device Tree blob at 83000000
Booting using the fdt blob at 0x83000000
Using Device Tree in place at 83000000, end 8300f274
Starting kernel ...
[ 0.071939] debugfs: Directory 'dummy-iomuxc-gpr@30340000' with parent 'regmap' already present!
[ 1.732781] debugfs: Directory 'dummy-reset-controller@30390000' with parent 'regmap' already present!
[ 1.846461] CPUidle arm: CPU 0 failed to init idle CPU ops
Debian GNU/Linux 11 arm ttymxc4
default username:password is [debian:temppwd]
arm login: root
Password:
The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.
Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
root@arm:~# cat /proc/cpuinfo
processor : 0
model name : ARMv7 Processor rev 5 (v7l)
BogoMIPS : 48.00
Features : half thumb fastmult vfp edsp thumbee neon vfpv3 tls vfpv4 idiva idivt vfpd32 lpae evtstrm
CPU implementer : 0x41
CPU architecture: 7
CPU variant : 0x0
CPU part : 0xc07
CPU revision : 5
processor : 1
model name : ARMv7 Processor rev 5 (v7l)
BogoMIPS : 48.00
Features : half thumb fastmult vfp edsp thumbee neon vfpv3 tls vfpv4 idiva idivt vfpd32 lpae evtstrm
CPU implementer : 0x41
CPU architecture: 7
CPU variant : 0x0
CPU part : 0xc07
CPU revision : 5
Hardware : Freescale i.MX7 Dual (Device Tree)
Revision : 0000
Serial : 0000000000000000
root@arm:~#
Regards,