Difference between revisions of "M.2 to 4x SATA Module"
m (Voipac moved page M.2 to 4x SATA III Module to M.2 to 4x SATA Module without leaving a redirect) |
|||
(One intermediate revision by the same user not shown) | |||
Line 3: | Line 3: | ||
<!-- --> | <!-- --> | ||
<div style="float:right">__TOC__</div> | <div style="float:right">__TOC__</div> | ||
+ | |||
+ | == SATA == | ||
+ | NOTE: Add descriptions / pictures / visual guide how to connect the card to the board. Do not forget to mention requirement of additional power signals are required to be connected from one of the baseboard headers to the card.<br /><br /> | ||
+ | '''''Input:''''' Plug sata disk to M2 extension board and power on<br /> | ||
+ | '''''Output:''''' Sata device is recognized<br /> | ||
+ | |||
+ | <syntaxhighlight lang="bash"> | ||
+ | root@imx8mq-voipac:~# ls -la /dev/sda | ||
+ | brw-rw---- 1 root disk 8, 0 Feb 22 07:13 /dev/sda | ||
+ | # run speed test - write | ||
+ | root@imx8mq-voipac:~# time dd if=/dev/urandom of=/dev/sda bs=4096 status=progress count=200000 | ||
+ | #NOTE: "of=/dev/sdb" is correct? + Consider using a printout from testing a better SATA disk - higher speeds were achieved. | ||
+ | 812093440 bytes (812 MB, 774 MiB) copied, 29 s, 28.0 MB/s | ||
+ | 200000+0 records in | ||
+ | 200000+0 records out | ||
+ | 819200000 bytes (819 MB, 781 MiB) copied, 34.1491 s, 24.0 MB/s | ||
+ | real 0m 34.15s | ||
+ | user 0m 0.30s | ||
+ | sys 0m 12.74s | ||
+ | |||
+ | # run speed test - read | ||
+ | root@imx8mq-voipac:~# time dd if=/dev/sda of=/tmp/test.bin bs=4096 status=progress count=100000 | ||
+ | #NOTE: "if=/dev/sdb" is correct? + Consider using a printout from testing a better SATA disk - higher speeds were achieved. | ||
+ | 364503040 bytes (365 MB, 348 MiB) copied, 4 s, 91.1 MB/s | ||
+ | 100000+0 records in | ||
+ | 100000+0 records out | ||
+ | 409600000 bytes (410 MB, 391 MiB) copied, 4.5828 s, 89.4 MB/s | ||
+ | real 0m 4.79s | ||
+ | user 0m 0.06s | ||
+ | sys 0m 2.15s | ||
+ | </syntaxhighlight> | ||
+ | |||
+ | We achieved aw write speed ~ 24MB/s and read speed ~90MB/s | ||
+ | |||
+ | <br /><br />!!!!!!!!!EXISTING PART OF THE WIKI PAGE STARTS BELOW !!!!!!!!!<br /><br /> | ||
+ | |||
+ | |||
+ | SATA disk modules provides reliable storage. There are multiple benefits for using them: | ||
+ | * iMX8M Industrial Development Kit can use SATA disk to store files | ||
+ | * sizeable capacity | ||
+ | * available in extended temperature range | ||
+ | * Mean Time Between Failures exceeding 1000000 hours | ||
+ | * supports wear levelling, SMART and power failure management for data integrity<br /><br /> | ||
+ | |||
+ | Although multiple disk on modules can be utilised, iMX6 Rex SATA Disk Module was handpicked as an excellent choice in terms of physical size, power consumption and reliability: | ||
+ | {| class="wikitable" | ||
+ | !Voipac designation !! Manufacturer !! Model !! Capacity !! Flash type | ||
+ | |- | ||
+ | |iMX6 Rex SATA Disk Module (default) || Apacer || APSDM008GB2AN-ETM1 || 8GB || MLC | ||
+ | |- | ||
+ | |iMX6 Rex SATA Disk Module 32GB (upon request) || Apacer || APSDM032GAETN-5ETMGW || 32GB || MLC | ||
+ | |} | ||
+ | |||
+ | == Disk detection == | ||
+ | === iMX6 Rex SATA Disk Module 8GB === | ||
+ | ==== Uboot ==== | ||
+ | <syntaxhighlight lang="bash"> | ||
+ | TinyRex U-Boot > sata init | ||
+ | AHCI 0001.0300 32 slots 1 ports 3 Gbps 0x1 impl SATA mode | ||
+ | flags: ncq stag pm led clo only pmp pio slum part | ||
+ | SATA Device Info: | ||
+ | S/N: E0117219300000000116 | ||
+ | Product model number: 8GB SATA Flash Drive | ||
+ | Firmware version: SFDK003A | ||
+ | Capacity: 15649200 sectors | ||
+ | </syntaxhighlight> | ||
+ | |||
+ | ==== Linux ==== | ||
+ | <syntaxhighlight lang="bash"> | ||
+ | root@imx6-tinyrexultra:~# dmesg | grep -i 'sata\|ata1\|sda' | ||
+ | [ 1.269889] ahci-imx 2200000.sata: fsl,transmit-level-mV not specified, using 00000024 | ||
+ | [ 1.276553] ahci-imx 2200000.sata: fsl,transmit-boost-mdB not specified, using 00000480 | ||
+ | [ 1.283267] ahci-imx 2200000.sata: fsl,transmit-atten-16ths not specified, using 00002000 | ||
+ | [ 1.290173] ahci-imx 2200000.sata: fsl,receive-eq-mdB not specified, using 05000000 | ||
+ | [ 1.299684] ahci-imx 2200000.sata: SSS flag set, parallel bus scan disabled | ||
+ | [ 1.305404] ahci-imx 2200000.sata: AHCI 0001.0300 32 slots 1 ports 3 Gbps 0x1 impl platform mode | ||
+ | [ 1.312901] ahci-imx 2200000.sata: flags: ncq sntf stag pm led clo only pmp pio slum part ccc apst | ||
+ | [ 1.324480] ata1: SATA max UDMA/133 mmio [mem 0x02200000-0x02203fff] port 0x100 irq 316 | ||
+ | [ 1.874932] ata1: SATA link up 3.0 Gbps (SStatus 123 SControl 300) | ||
+ | [ 1.884159] ata1.00: ATA-9: 8GB SATA Flash Drive, SFDK003A, max UDMA/100 | ||
+ | [ 2.676616] ata1.00: 15649200 sectors, multi 1: LBA48 NCQ (depth 31/32) | ||
+ | [ 2.677420] ata1.00: configured for UDMA/100 | ||
+ | [ 2.695168] scsi 0:0:0:0: Direct-Access ATA 8GB SATA Flash D 003A PQ: 0 ANSI: 5 | ||
+ | [ 2.702651] sd 0:0:0:0: [sda] 15649200 512-byte logical blocks: (8.01 GB/7.46 GiB) | ||
+ | [ 2.709225] sd 0:0:0:0: [sda] Write Protect is off | ||
+ | [ 2.712725] sd 0:0:0:0: [sda] Mode Sense: 00 3a 00 00 | ||
+ | [ 2.712811] sd 0:0:0:0: [sda] Write cache: enabled, read cache: enabled, doesnt support DPO or FUA | ||
+ | [ 2.721620] sda: sda1 sda2 | ||
+ | [ 2.724190] sd 0:0:0:0: [sda] Attached SCSI disk | ||
+ | </syntaxhighlight> | ||
+ | |||
+ | === iMX6 Rex SATA Disk Module 32GB === | ||
+ | ==== Uboot ==== | ||
+ | <syntaxhighlight lang="bash"> | ||
+ | TinyRex U-Boot > sata init | ||
+ | AHCI 0001.0300 32 slots 1 ports 3 Gbps 0x1 impl SATA mode | ||
+ | flags: ncq stag pm led clo only pmp pio slum part | ||
+ | SATA Device Info: | ||
+ | S/N: B0719014100000000318 | ||
+ | Product model number: 32GB SATA Flash Drive | ||
+ | Firmware version: SFDN005E | ||
+ | Capacity: 62533296 sectors | ||
+ | </syntaxhighlight> | ||
+ | |||
+ | ==== Linux ==== | ||
+ | <syntaxhighlight lang="bash"> | ||
+ | root@imx6-tinyrexultra:~# dmesg | grep -i 'sata\|ata1\|sda' | ||
+ | [ 1.272523] ahci-imx 2200000.sata: fsl,transmit-level-mV not specified, using 00000024 | ||
+ | [ 1.279188] ahci-imx 2200000.sata: fsl,transmit-boost-mdB not specified, using 00000480 | ||
+ | [ 1.285930] ahci-imx 2200000.sata: fsl,transmit-atten-16ths not specified, using 00002000 | ||
+ | [ 1.292816] ahci-imx 2200000.sata: fsl,receive-eq-mdB not specified, using 05000000 | ||
+ | [ 1.302278] ahci-imx 2200000.sata: SSS flag set, parallel bus scan disabled | ||
+ | [ 1.308013] ahci-imx 2200000.sata: AHCI 0001.0300 32 slots 1 ports 3 Gbps 0x1 impl platform mode | ||
+ | [ 1.315531] ahci-imx 2200000.sata: flags: ncq sntf stag pm led clo only pmp pio slum part ccc apst | ||
+ | [ 1.327154] ata1: SATA max UDMA/133 mmio [mem 0x02200000-0x02203fff] port 0x100 irq 317 | ||
+ | [ 1.875067] ata1: SATA link up 3.0 Gbps (SStatus 123 SControl 300) | ||
+ | [ 1.880140] ata1.00: ATA-9: 32GB SATA Flash Drive, SFDN005E, max UDMA/133 | ||
+ | [ 1.885729] ata1.00: 62533296 sectors, multi 16: LBA48 NCQ (depth 31/32) | ||
+ | [ 1.891437] ata1.00: configured for UDMA/133 | ||
+ | [ 1.905341] scsi 0:0:0:0: Direct-Access ATA 32GB SATA Flash 005E PQ: 0 ANSI: 5 | ||
+ | [ 1.913227] sd 0:0:0:0: [sda] 62533296 512-byte logical blocks: (32.0 GB/29.8 GiB) | ||
+ | [ 1.925586] sd 0:0:0:0: [sda] Write Protect is off | ||
+ | [ 1.925597] sd 0:0:0:0: [sda] Mode Sense: 00 3a 00 00 | ||
+ | [ 1.925702] sd 0:0:0:0: [sda] Write cache: enabled, read cache: enabled, doesnt support DPO or FUA | ||
+ | [ 1.929348] sda: sda1 | ||
+ | [ 1.930471] sd 0:0:0:0: [sda] Attached SCSI disk | ||
+ | </syntaxhighlight> | ||
+ | |||
+ | == Partition layout == | ||
+ | This partition is designed for SATA modules acting as a booting device: | ||
+ | {| class="wikitable" | ||
+ | ! Partition type/index!! Name!! Start offset (Sector)!! Size!! File system!! Content | ||
+ | |- | ||
+ | | N/A|| BOOT Loader|| 1 KB (2)|| 1 MB|| N/A|| u-boot-imx6-*rex*sata-2.4.imx | ||
+ | |- | ||
+ | | Primary 1|| Kernel|| 8 MB (16384)|| 32 MB|| VFAT|| zImage-imx6-*rex*-2.4.bin,zImage-imx6-*rex*-2.4.dtb | ||
+ | |- | ||
+ | | Primary 2|| Rootfs|| Follow Kernel|| - || EXT4|| fsl-image-gui-imx6-*rex*-2.4.ext4.gz | ||
+ | |} | ||
+ | |||
+ | == Creating partitions == | ||
+ | '''/dev/sdX''' represent SATA module node which is usually '''/dev/sda''' on iMX6 TinyRex Development Kit. Sector size is 512 Bytes. | ||
+ | <syntaxhighlight lang="bash"> | ||
+ | root@imx6-tinyrexultra:~# umount /dev/sdX* | ||
+ | root@imx6-tinyrexultra:~# fdisk /dev/sdX | ||
+ | |||
+ | Welcome to fdisk (util-linux 2.27.1). | ||
+ | Changes will remain in memory only, until you decide to write them. | ||
+ | Be careful before using the write command. | ||
+ | |||
+ | |||
+ | Command (m for help): d | ||
+ | Partition number (1,2, default 2): | ||
+ | |||
+ | Partition 2 has been deleted. | ||
+ | |||
+ | Command (m for help): d | ||
+ | Selected partition 1 | ||
+ | Partition 1 has been deleted. | ||
+ | |||
+ | Command (m for help): n | ||
+ | Partition type | ||
+ | p primary (0 primary, 0 extended, 4 free) | ||
+ | e extended (container for logical partitions) | ||
+ | Select (default p): p | ||
+ | Partition number (1-4, default 1): | ||
+ | First sector (2048-15649199, default 2048): 16384 | ||
+ | Last sector, +sectors or +size{K,M,G,T,P} (16384-15649199, default 15649199): +32M | ||
+ | |||
+ | Created a new partition 1 of type 'Linux' and of size 32 MiB. | ||
+ | |||
+ | Command (m for help): t | ||
+ | Selected partition 1 | ||
+ | Partition type (type L to list all types): c | ||
+ | Changed type of partition 'Linux' to 'W95 FAT32 (LBA)'. | ||
+ | |||
+ | Command (m for help): p | ||
+ | Disk /dev/sda: 7.5 GiB, 8012390400 bytes, 15649200 sectors | ||
+ | Units: sectors of 1 * 512 = 512 bytes | ||
+ | Sector size (logical/physical): 512 bytes / 512 bytes | ||
+ | I/O size (minimum/optimal): 512 bytes / 512 bytes | ||
+ | Disklabel type: dos | ||
+ | Disk identifier: 0x59245670 | ||
+ | |||
+ | Device Boot Start End Sectors Size Id Type | ||
+ | /dev/sda1 16384 81919 65536 32M c W95 FAT32 (LBA) | ||
+ | |||
+ | Command (m for help): n | ||
+ | Partition type | ||
+ | p primary (1 primary, 0 extended, 3 free) | ||
+ | e extended (container for logical partitions) | ||
+ | Select (default p): p | ||
+ | Partition number (2-4, default 2): | ||
+ | First sector (2048-15649199, default 2048): 81920 | ||
+ | Last sector, +sectors or +size{K,M,G,T,P} (81920-15649199, default 15649199): | ||
+ | |||
+ | Created a new partition 2 of type 'Linux' and of size 7.4 GiB. | ||
+ | |||
+ | Command (m for help): p | ||
+ | Disk /dev/sda: 7.5 GiB, 8012390400 bytes, 15649200 sectors | ||
+ | Units: sectors of 1 * 512 = 512 bytes | ||
+ | Sector size (logical/physical): 512 bytes / 512 bytes | ||
+ | I/O size (minimum/optimal): 512 bytes / 512 bytes | ||
+ | Disklabel type: dos | ||
+ | Disk identifier: 0x59245670 | ||
+ | |||
+ | Device Boot Start End Sectors Size Id Type | ||
+ | /dev/sda1 16384 81919 65536 32M c W95 FAT32 (LBA) | ||
+ | /dev/sda2 81920 15649199 15567280 7.4G 83 Linux | ||
+ | |||
+ | Command (m for help): w | ||
+ | The partition table has been altered. | ||
+ | Calling ioctl() to re-read partition table. | ||
+ | sda: sda1 sda2 | ||
+ | Syncing disks. | ||
+ | sda: sda1 sda2 | ||
+ | </syntaxhighlight> | ||
+ | |||
+ | == Copying files == | ||
+ | === Bootloader === | ||
+ | <syntaxhighlight lang="bash"> | ||
+ | sudo dd if=u-boot-imx6-*rex*sata*.imx of=/dev/sdX bs=512 seek=2 conv=fsync | ||
+ | </syntaxhighlight> | ||
+ | |||
+ | === Kernel === | ||
+ | <syntaxhighlight lang="bash"> | ||
+ | sudo umount /dev/sdX1 | ||
+ | sudo mkfs.vfat -n KERNEL /dev/sdX1 | ||
+ | mkdir tmpmount | ||
+ | sudo mount /dev/sdX1 tmpmount | ||
+ | sudo cp -v zImage-imx6-*rex*.bin tmpmount/zImage | ||
+ | sudo cp -v zImage-imx6-*rex*.dtb tmpmount/imx6-*rex*.dtb | ||
+ | sudo umount tmpmount | ||
+ | rmdir tmpmount | ||
+ | </syntaxhighlight> | ||
+ | |||
+ | === Filesystem === | ||
+ | <syntaxhighlight lang="bash"> | ||
+ | sudo umount /dev/sdX2 | ||
+ | sudo dd if=fsl-image-gui-imx6-*rex*.ext4 of=/dev/sdX2 && sync | ||
+ | </syntaxhighlight> | ||
+ | or | ||
+ | <syntaxhighlight lang="bash"> | ||
+ | sudo umount /dev/sdX2 | ||
+ | gunzip -c fsl-image-gui-imx6-*rex*.ext4.gz | sudo dd of=/dev/sdX2 && sync | ||
+ | </syntaxhighlight> | ||
+ | |||
+ | === Downloading and copying files over Internet === | ||
+ | <syntaxhighlight lang="bash"> | ||
+ | export XREX_CONFIGURATION=tinyrexultra | ||
+ | #export XREX_CONFIGURATION=rexultra | ||
+ | #export XREX_CONFIGURATION=openrexultra | ||
+ | export XREX_BOOTLOADER=u-boot-imx6-${XREX_CONFIGURATION}sata-2.4.imx | ||
+ | export XREX_KERNEL_ZIMAGE=zImage-imx6-${XREX_CONFIGURATION}-2.4.bin | ||
+ | export XREX_KERNEL_DTB=zImage-imx6-${XREX_CONFIGURATION}-2.4.dtb | ||
+ | export XREX_ROOTFS=fsl-image-gui-imx6-${XREX_CONFIGURATION}-2.4.ext4.gz | ||
+ | |||
+ | wget http://downloads.voipac.com/files/iMX6_TinyRex_Development_Kit/module/software/uboot/binaries/${XREX_BOOTLOADER} | ||
+ | wget http://downloads.voipac.com/files/iMX6_TinyRex_Development_Kit/module/software/linux/binaries/${XREX_KERNEL_ZIMAGE} | ||
+ | wget http://downloads.voipac.com/files/iMX6_TinyRex_Development_Kit/module/software/linux/binaries/${XREX_KERNEL_DTB} | ||
+ | wget http://downloads.voipac.com/files/iMX6_TinyRex_Development_Kit/module/software/yocto/binaries/${XREX_ROOTFS} | ||
+ | sudo dd if=${XREX_BOOTLOADER} of=/dev/sda bs=512 seek=2 conv=fsync | ||
+ | sudo umount /dev/sda1 | ||
+ | sudo mkfs.vfat -n KERNEL /dev/sda1 | ||
+ | mkdir tmpmount | ||
+ | sudo mount /dev/sda1 tmpmount | ||
+ | sudo cp ${XREX_KERNEL_ZIMAGE} tmpmount/zImage | ||
+ | sudo cp ${XREX_KERNEL_DTB} tmpmount/imx6-${XREX_CONFIGURATION}.dtb | ||
+ | sudo umount tmpmount | ||
+ | rmdir tmpmount | ||
+ | sudo umount /dev/sda2 | ||
+ | gunzip -c ${XREX_ROOTFS} | sudo dd of=/dev/sda2 && sync | ||
+ | </syntaxhighlight> | ||
+ | |||
+ | == Bootloader settings == | ||
+ | The primary bootloader (loaded by ROM bootloader) will chainload the second bootloader. Chainloaded bootloader is configured to load kernel and device tree from first partition and rootfs from second partition in this case.<br /> | ||
+ | |||
+ | '''''Notes:''''' | ||
+ | * Primary bootloader environment must be set to run new boot mode ('bmode sata') | ||
+ | * Chainloaded bootloader environment must be set to properly load and execute kernel ('setenv sataroot ...') | ||
+ | |||
+ | <br />'''''Boot sequence:''''' | ||
+ | * ROM bootloader loads and execute primary bootloader based on eFuses configuration (SPI/SD) | ||
+ | * Primary bootloader (SPI/SD) with set i.MX6 register to overwrite primary boot device and will reset SOC | ||
+ | * ROM bootloader will load and execute bootloader from newly configured boot device (SATA) | ||
+ | |||
+ | <br />Configuring primary (SPI/SD) bootloader. Changes are applied in uboot environment: | ||
+ | <syntaxhighlight lang="bash"> | ||
+ | setenv bootcmd 'bmode sata' | ||
+ | saveenv | ||
+ | reset | ||
+ | </syntaxhighlight> | ||
+ | |||
+ | Configuring chainloaded (SATA) bootloader: | ||
+ | <syntaxhighlight lang="bash"> | ||
+ | setenv sataroot '/dev/sda2 rootwait rw' | ||
+ | setenv sataargs 'setenv bootargs console=${console},${baudrate} ${extra} ${video} root=${sataroot}' | ||
+ | setenv sataboot 'echo Booting from sata ...; run sataargs; if sata init; then fatload sata 0:1 ${loadaddr} ${image}; fatload sata 0:1 ${fdt_addr} ${fdt_file}; bootz ${loadaddr} - ${fdt_addr}; fi' | ||
+ | setenv bootcmd 'run sataboot' | ||
+ | sata init; saveenv | ||
+ | boot | ||
+ | </syntaxhighlight> | ||
+ | |||
+ | == Performance comparison == | ||
+ | The transfer speed differences between SD card and SATA module are listed in the table below . The test was performed using flexible I/O tester: | ||
+ | <syntaxhighlight lang="bash"> | ||
+ | fio --loops=5 --size=100m --filename=/home/root/fiotest.tmp --stonewall --ioengine=libaio --direct=1 \ | ||
+ | --name=Seqread --bs=1m --rw=read \ | ||
+ | --name=Seqwrite --bs=1m --rw=write \ | ||
+ | --name=512Kread --bs=512k --rw=randread \ | ||
+ | --name=512Kwrite --bs=512k --rw=randwrite \ | ||
+ | --name=4kQD32read --bs=4k --iodepth=32 --rw=randread \ | ||
+ | --name=4kQD32write --bs=4k --iodepth=32 --rw=randwrite | ||
+ | </syntaxhighlight> | ||
+ | |||
+ | Results: | ||
+ | {| class="wikitable" | ||
+ | !Model !!Test !!Number of megabytes IOs performed !!Average bandwidth rate !!Average IOs performed per second !!The runtime of thread !!Notes | ||
+ | |- | ||
+ | |rowspan="6"|SanDisk SDHCI card ||Seqread ||512000KB ||16576KB/s ||16 ||30888msec ||rw=read, bs=1M-1M/1M-1M/1M-1M, ioengine=libaio, iodepth=1 | ||
+ | |- | ||
+ | |Seqwrite ||512000KB ||4772.9KB/s ||4 ||107274msec ||rw=write, bs=1M-1M/1M-1M/1M-1M, ioengine=libaio, iodepth=1 | ||
+ | |- | ||
+ | |512Kread ||512000KB ||16682KB/s ||32 ||30692msec ||rw=randread, bs=512K-512K/512K-512K/512K-512K, ioengine=libaio, iodepth=1 | ||
+ | |- | ||
+ | |512Kwrite ||512000KB ||1325.7KB/s ||2 ||386413msec ||rw=randwrite, bs=512K-512K/512K-512K/512K-512K, ioengine=libaio, iodepth=1 | ||
+ | |- | ||
+ | |4kQD32read ||512000KB ||5448.3KB/s ||1362 ||93979msec ||rw=randread, bs=4K-4K/4K-4K/4K-4K, ioengine=libaio, iodepth=32 | ||
+ | |- | ||
+ | |4kQD32write ||512000KB ||303.8KB/s ||75 ||1687613msec ||rw=randwrite, bs=4K-4K/4K-4K/4K-4K, ioengine=libaio, iodepth=32 | ||
+ | |- | ||
+ | |rowspan="6"|iMX6 Rex SATA Disk Module 32GB ||Seqread ||512000KB ||92754KB/s ||90 ||5520msec ||rw=read, bs=1M-1M/1M-1M/1M-1M, ioengine=libaio, iodepth=1 | ||
+ | |- | ||
+ | |Seqwrite ||512000KB ||44329KB/s ||43 ||11550msec ||rw=write, bs=1M-1M/1M-1M/1M-1M, ioengine=libaio, iodepth=1 | ||
+ | |- | ||
+ | |512Kread ||512000KB ||88781KB/s ||173 ||5767msec ||rw=randread, bs=512K-512K/512K-512K/512K-512K, ioengine=libaio, iodepth=1 | ||
+ | |- | ||
+ | |512Kwrite ||512000KB ||44294KB/s ||86 ||11559msec ||rw=randwrite, bs=512K-512K/512K-512K/512K-512K, ioengine=libaio, iodepth=1 | ||
+ | |- | ||
+ | |4kQD32read ||512000KB ||36258KB/s ||9064 ||14121msec ||rw=randread, bs=4K-4K/4K-4K/4K-4K, ioengine=libaio, iodepth=32 | ||
+ | |- | ||
+ | |4kQD32write ||512000KB ||35742KB/s ||8935 ||14325msec ||rw=randwrite, bs=4K-4K/4K-4K/4K-4K, ioengine=libaio, iodepth=32 | ||
+ | |} | ||
+ | |||
+ | == Booting log == | ||
+ | <syntaxhighlight lang="bash"> | ||
+ | U-Boot 2015.04-g8efb1bd-dirty (Jul 28 2017 - 16:36:40) | ||
+ | |||
+ | CPU: Freescale i.MX6QP rev1.0 at 792 MHz | ||
+ | CPU: Temperature 55 C | ||
+ | Reset cause: POR | ||
+ | Board: MX6 TinyRex - ultra | ||
+ | I2C: ready | ||
+ | DRAM: 3.8 GiB | ||
+ | MMC: FSL_SDHC: 0, FSL_SDHC: 1, FSL_SDHC: 2 | ||
+ | SF: Detected SST25VF032B with page size 256 Bytes, erase size 4 KiB, total 4 MiB | ||
+ | In: serial | ||
+ | Out: serial | ||
+ | Err: serial | ||
+ | Net: FEC [PRIME] | ||
+ | Normal Boot | ||
+ | Hit any key to stop autoboot: 0 | ||
+ | resetting ... | ||
+ | |||
+ | |||
+ | U-Boot 2015.04 (Jul 29 2017 - 17:21:12) | ||
+ | |||
+ | CPU: Freescale i.MX6QP rev1.0 at 792 MHz | ||
+ | CPU: Temperature 56 C | ||
+ | Reset cause: WDOG | ||
+ | Board: MX6 TinyRex - ultra | ||
+ | I2C: ready | ||
+ | DRAM: 3.8 GiB | ||
+ | WARNING: Caches not enabled | ||
+ | MMC: FSL_SDHC: 0, FSL_SDHC: 1, FSL_SDHC: 2 | ||
+ | AHCI 0001.0300 32 slots 1 ports 3 Gbps 0x1 impl SATA mode | ||
+ | flags: ncq stag pm led clo only pmp pio slum part | ||
+ | SATA Device Info: | ||
+ | S/N: E0117219300000000116 | ||
+ | Product model number: 8GB SATA Flash Drive | ||
+ | Firmware version: SFDK003A | ||
+ | Capacity: 15649200 sectors | ||
+ | In: serial | ||
+ | Out: serial | ||
+ | Err: serial | ||
+ | Net: FEC [PRIME] | ||
+ | Normal Boot | ||
+ | Hit any key to stop autoboot: 0 | ||
+ | Booting from sata ... | ||
+ | AHCI 0001.0300 32 slots 1 ports 3 Gbps 0x1 impl SATA mode | ||
+ | flags: ncq stag pm led clo only pmp pio slum part | ||
+ | SATA Device Info: | ||
+ | S/N: E0117219300000000116 | ||
+ | Product model number: 8GB SATA Flash Drive | ||
+ | Firmware version: SFDK003A | ||
+ | Capacity: 15649200 sectors | ||
+ | reading zImage | ||
+ | 6406928 bytes read in 89 ms (68.7 MiB/s) | ||
+ | reading imx6-tinyrexultra.dtb | ||
+ | 43668 bytes read in 8 ms (5.2 MiB/s) | ||
+ | Kernel image @ 0x10800000 [ 0x000000 - 0x61c310 ] | ||
+ | ## Flattened Device Tree blob at 18000000 | ||
+ | Booting using the fdt blob at 0x18000000 | ||
+ | Using Device Tree in place at 18000000, end 1800da93 | ||
+ | |||
+ | |||
+ | Starting kernel ... | ||
+ | |||
+ | Uncompressing Linux... done, booting the kernel. | ||
+ | Booting Linux on physical CPU 0x0 | ||
+ | Linux version 4.1.36-yocto+g7f55696 (marek@marek-ThinkPad-T530) (gcc version 5.3.0 (GCC) ) #1 SMP PREEMPT Sat Jul 29 17:36:08 CEST 2017 | ||
+ | CPU: ARMv7 Processor [412fc09a] revision 10 (ARMv7), cr=10c53c7d | ||
+ | CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache | ||
+ | Machine model: Fedevel iMX6 QuadPlus TinyREX Board | ||
+ | Reserved memory: created CMA memory pool at 0x2a000000, size 320 MiB | ||
+ | Reserved memory: initialized node linux,cma, compatible id shared-dma-pool | ||
+ | Memory policy: Data cache writealloc | ||
+ | PERCPU: Embedded 12 pages/cpu @ef6fb000 s16908 r8192 d24052 u49152 | ||
+ | Built 1 zonelists in Zone order, mobility grouping on. Total pages: 981519 | ||
+ | Kernel command line: console=ttymxc0,115200 root=/dev/sda2 rootwait rw | ||
+ | PID hash table entries: 4096 (order: 2, 16384 bytes) | ||
+ | Dentry cache hash table entries: 131072 (order: 7, 524288 bytes) | ||
+ | Inode-cache hash table entries: 65536 (order: 6, 262144 bytes) | ||
+ | Memory: 3559672K/3932156K available (7991K kernel code, 427K rwdata, 2896K rodata, 432K init, 445K bss, 44804K reserved, 327680K cma-reserved, 3153916K highmem) | ||
+ | Virtual kernel memory layout: | ||
+ | vector : 0xffff0000 - 0xffff1000 ( 4 kB) | ||
+ | fixmap : 0xffc00000 - 0xfff00000 (3072 kB) | ||
+ | vmalloc : 0xf0000000 - 0xff000000 ( 240 MB) | ||
+ | lowmem : 0xc0000000 - 0xef800000 ( 760 MB) | ||
+ | pkmap : 0xbfe00000 - 0xc0000000 ( 2 MB) | ||
+ | modules : 0xbf000000 - 0xbfe00000 ( 14 MB) | ||
+ | .text : 0xc0008000 - 0xc0aa9eec (10888 kB) | ||
+ | .init : 0xc0aaa000 - 0xc0b16000 ( 432 kB) | ||
+ | .data : 0xc0b16000 - 0xc0b80d20 ( 428 kB) | ||
+ | .bss : 0xc0b83000 - 0xc0bf256c ( 446 kB) | ||
+ | SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=4, Nodes=1 | ||
+ | Preemptible hierarchical RCU implementation. | ||
+ | Additional per-CPU info printed with stalls. | ||
+ | NR_IRQS:16 nr_irqs:16 16 | ||
+ | L2C-310 erratum 769419 enabled | ||
+ | L2C-310 enabling early BRESP for Cortex-A9 | ||
+ | L2C-310 full line of zeros enabled for Cortex-A9 | ||
+ | L2C-310 ID prefetch enabled, offset 16 lines | ||
+ | L2C-310 dynamic clock gating enabled, standby mode enabled | ||
+ | L2C-310 cache controller enabled, 16 ways, 1024 kB | ||
+ | L2C-310: CACHE_ID 0x410000c8, AUX_CTRL 0x76070001 | ||
+ | VPU 352M is enabled! | ||
+ | mxc_clocksource_init 3000000 | ||
+ | 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: 2048 (order: 1, 8192 bytes) | ||
+ | Mountpoint-cache hash table entries: 2048 (order: 1, 8192 bytes) | ||
+ | CPU: Testing write buffer coherency: ok | ||
+ | CPU0: thread -1, cpu 0, socket 0, mpidr 80000000 | ||
+ | Setting up static identity map for 0x100082c0 - 0x10008318 | ||
+ | CPU1: thread -1, cpu 1, socket 0, mpidr 80000001 | ||
+ | CPU2: thread -1, cpu 2, socket 0, mpidr 80000002 | ||
+ | CPU3: thread -1, cpu 3, socket 0, mpidr 80000003 | ||
+ | Brought up 4 CPUs | ||
+ | SMP: Total of 4 processors activated (24.00 BogoMIPS). | ||
+ | CPU: All CPU(s) started in SVC mode. | ||
+ | devtmpfs: initialized | ||
+ | VFP support v0.3: implementor 41 architecture 3 part 30 variant 9 rev 4 | ||
+ | clocksource jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns | ||
+ | pinctrl core: initialized pinctrl subsystem | ||
+ | NET: Registered protocol family 16 | ||
+ | DMA: preallocated 256 KiB pool for atomic coherent allocations | ||
+ | cpuidle: using governor ladder | ||
+ | cpuidle: using governor menu | ||
+ | CPU identified as i.MX6QP, silicon rev 1.0 | ||
+ | hw-breakpoint: found 5 (+1 reserved) breakpoint and 1 watchpoint registers. | ||
+ | hw-breakpoint: maximum watchpoint size is 4 bytes. | ||
+ | imx6q-pinctrl 20e0000.iomuxc: initialized IMX pinctrl driver | ||
+ | mxs-dma 110000.dma-apbh: initialized | ||
+ | vgaarb: loaded | ||
+ | SCSI subsystem initialized | ||
+ | usbcore: registered new interface driver usbfs | ||
+ | usbcore: registered new interface driver hub | ||
+ | usbcore: registered new device driver usb | ||
+ | 2000000.aips-bus:usbphy_nop1 supply vcc not found, using dummy regulator | ||
+ | 2000000.aips-bus:usbphy_nop2 supply vcc not found, using dummy regulator | ||
+ | i2c i2c-0: IMX I2C adapter registered | ||
+ | i2c i2c-0: cant use DMA | ||
+ | i2c i2c-1: IMX I2C adapter registered | ||
+ | i2c i2c-1: cant use DMA | ||
+ | i2c i2c-2: IMX I2C adapter registered | ||
+ | i2c i2c-2: cant use DMA | ||
+ | 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 | ||
+ | imx-ipuv3 2400000.ipu: IPU DMFC NORMAL mode: 1(0~1), 5B(4,5), 5F(6,7) | ||
+ | imx-ipuv3 2800000.ipu: IPU DMFC NORMAL mode: 1(0~1), 5B(4,5), 5F(6,7) | ||
+ | imx-prg 21cc000.prg: driver probed | ||
+ | imx-prg 21cd000.prg: driver probed | ||
+ | imx-pre 21c8000.pre: driver probed | ||
+ | imx-pre 21c9000.pre: driver probed | ||
+ | imx-pre 21ca000.pre: driver probed | ||
+ | imx-pre 21cb000.pre: driver probed | ||
+ | mxc_mipi_csi2 21dc000.mipi_csi: i.MX MIPI CSI2 driver probed | ||
+ | mxc_mipi_csi2 21dc000.mipi_csi: i.MX MIPI CSI2 dphy version is 0x3130302a | ||
+ | MIPI CSI2 driver module loaded | ||
+ | Advanced Linux Sound Architecture Driver Initialized. | ||
+ | Bluetooth: Core ver 2.20 | ||
+ | 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 | ||
+ | Switched to clocksource mxc_timer1 | ||
+ | NET: Registered protocol family 2 | ||
+ | TCP established hash table entries: 8192 (order: 3, 32768 bytes) | ||
+ | TCP bind hash table entries: 8192 (order: 4, 65536 bytes) | ||
+ | TCP: Hash tables configured (established 8192 bind 8192) | ||
+ | UDP hash table entries: 512 (order: 2, 16384 bytes) | ||
+ | UDP-Lite hash table entries: 512 (order: 2, 16384 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. | ||
+ | CPU PMU: Failed to parse /soc/pmu/interrupt-affinity[0] | ||
+ | hw perfevents: enabled with armv7_cortex_a9 PMU driver, 7 counters available | ||
+ | imx rpmsg driver is registered. | ||
+ | futex hash table entries: 1024 (order: 4, 65536 bytes) | ||
+ | VFS: Disk quotas dquot_6.6.0 | ||
+ | VFS: Dquot-cache hash table entries: 1024 (order 0, 4096 bytes) | ||
+ | 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.23) | ||
+ | bounce: pool size: 64 pages | ||
+ | io scheduler noop registered | ||
+ | io scheduler deadline registered | ||
+ | io scheduler cfq registered (default) | ||
+ | imx-weim 21b8000.weim: Driver registered. | ||
+ | MIPI DSI driver module loaded | ||
+ | MIPI DSI driver module loaded | ||
+ | 20e0000.hdmi_video supply HDMI not found, using dummy regulator | ||
+ | mxc_hdmi 20e0000.hdmi_video: Detected HDMI controller 0x13:0xa:0xa0:0xc1 | ||
+ | fbcvt: 1920x1080@60: CVT Name - 2.073M9 | ||
+ | mxc_sdc_fb fb@0: registered mxc display driver hdmi | ||
+ | imx-ipuv3 2400000.ipu: IPU DMFC DP HIGH RESOLUTION: 1(0,1), 5B(2~5), 5F(6,7) | ||
+ | Console: switching to colour frame buffer device 240x67 | ||
+ | imx-sdma 20ec000.sdma: no iram assigned, using external mem | ||
+ | imx-sdma 20ec000.sdma: no event needs to be remapped | ||
+ | imx-sdma 20ec000.sdma: loaded firmware 3.3 | ||
+ | imx-sdma 20ec000.sdma: initialized | ||
+ | 2020000.serial: ttymxc0 at MMIO 0x2020000 (irq = 26, base_baud = 5000000) is a IMX | ||
+ | console [ttymxc0] enabled | ||
+ | 21e8000.serial: ttymxc1 at MMIO 0x21e8000 (irq = 299, base_baud = 5000000) is a IMX | ||
+ | 21ec000.serial: ttymxc2 at MMIO 0x21ec000 (irq = 300, base_baud = 5000000) is a IMX | ||
+ | 21f0000.serial: ttymxc3 at MMIO 0x21f0000 (irq = 301, base_baud = 5000000) is a IMX | ||
+ | 21f4000.serial: ttymxc4 at MMIO 0x21f4000 (irq = 302, base_baud = 5000000) is a IMX | ||
+ | imx sema4 driver is registered. | ||
+ | [drm] Initialized drm 1.1.0 20060810 | ||
+ | [drm] Initialized vivante 1.0.0 20120216 on minor 0 | ||
+ | brd: module loaded | ||
+ | loop: module loaded | ||
+ | ahci-imx 2200000.sata: fsl,transmit-level-mV not specified, using 00000024 | ||
+ | ahci-imx 2200000.sata: fsl,transmit-boost-mdB not specified, using 00000480 | ||
+ | ahci-imx 2200000.sata: fsl,transmit-atten-16ths not specified, using 00002000 | ||
+ | ahci-imx 2200000.sata: fsl,receive-eq-mdB not specified, using 05000000 | ||
+ | ahci-imx 2200000.sata: SSS flag set, parallel bus scan disabled | ||
+ | ahci-imx 2200000.sata: AHCI 0001.0300 32 slots 1 ports 3 Gbps 0x1 impl platform mode | ||
+ | ahci-imx 2200000.sata: flags: ncq sntf stag pm led clo only pmp pio slum part ccc apst | ||
+ | scsi host0: ahci-imx | ||
+ | ata1: SATA max UDMA/133 mmio [mem 0x02200000-0x02203fff] port 0x100 irq 316 | ||
+ | m25p80 spi0.0: found sst25vf032b, expected m25p32 | ||
+ | m25p80 spi0.0: sst25vf032b (4096 Kbytes) | ||
+ | spi_imx 2008000.ecspi: probed | ||
+ | spi_imx 200c000.ecspi: probed | ||
+ | CAN device driver interface | ||
+ | 2090000.flexcan supply xceiver not found, using dummy regulator | ||
+ | flexcan 2090000.flexcan: device registered (reg_base=f0348000, irq=33) | ||
+ | 2188000.ethernet supply phy not found, using dummy regulator | ||
+ | pps pps0: new PPS source ptp0 | ||
+ | libphy: fec_enet_mii_bus: probed | ||
+ | fec 2188000.ethernet eth0: registered PHC device 0 | ||
+ | ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver | ||
+ | ehci-pci: EHCI PCI platform driver | ||
+ | ehci-mxc: Freescale On-Chip EHCI Host driver | ||
+ | usbcore: registered new interface driver usb-storage | ||
+ | usbcore: registered new interface driver usb_ehset_test | ||
+ | 2184800.usbmisc supply vbus-wakeup 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 | ||
+ | mousedev: PS/2 mouse device common for all mice | ||
+ | snvs_rtc 20cc000.snvs:snvs-rtc-lp: rtc core: registered 20cc000.snvs:snvs-r 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 | ||
+ | mxc_v4l2_output v4l2_out: V4L2 device registered as video16 | ||
+ | mxc_v4l2_output v4l2_out: V4L2 device registered as video17 | ||
+ | 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 | ||
+ | /soc/aips-bus@02100000/usdhc@02198000: voltage-ranges unspecified | ||
+ | sdhci-esdhc-imx 2198000.usdhc: Got WP GPIO | ||
+ | sdhci-esdhc-imx 2198000.usdhc: No vmmc regulator found | ||
+ | sdhci-esdhc-imx 2198000.usdhc: No vqmmc regulator found | ||
+ | mmc2: SDHCI controller on 2198000.usdhc [2198000.usdhc] using ADMA | ||
+ | mxc_vpu 2040000.vpu_fsl: VPU initialized | ||
+ | mxc_vdoa 21e4000.vdoa: i.MX Video Data Order Adapter(VDOA) driver probed | ||
+ | mxc_hdmi_cec soc:hdmi_cec@00120000: HDMI CEC initialized | ||
+ | caam 2100000.caam: Entropy delay = 3200 | ||
+ | caam 2100000.caam: Instantiated RNG4 SH0 | ||
+ | usb 1-1: new high-speed USB device number 2 using ci_hdrc | ||
+ | caam 2100000.caam: Instantiated RNG4 SH1 | ||
+ | caam 2100000.caam: device ID = 0x0a16010000000000 (Era -524) | ||
+ | caam 2100000.caam: job rings = 2, qi = 0 | ||
+ | ata1: SATA link up 3.0 Gbps (SStatus 123 SControl 300) | ||
+ | ata1.00: ATA-9: 8GB SATA Flash Drive, SFDK003A, max UDMA/100 | ||
+ | ata1.00: 15649200 sectors, multi 1: LBA48 NCQ (depth 31/32) | ||
+ | ata1.00: configured for UDMA/100 | ||
+ | caam algorithms registered in /proc/crypto | ||
+ | caam_jr 2101000.jr0: registering rng-caam | ||
+ | scsi 0:0:0:0: Direct-Access ATA 8GB SATA Flash D 003A PQ: 0 ANSI: 5 | ||
+ | platform caam_sm: blkkey_ex: 4 keystore units available | ||
+ | sd 0:0:0:0: [sda] 15649200 512-byte logical blocks: (8.01 GB/7.46 GiB) | ||
+ | sd 0:0:0:0: [sda] Write Protect is off | ||
+ | sd 0:0:0:0: [sda] Write cache: enabled, read cache: enabled, doesnt support DPO or FUA | ||
+ | sda: sda1 sda2 | ||
+ | sd 0:0:0:0: [sda] Attached SCSI disk | ||
+ | platform caam_sm: 64-bit clear key: | ||
+ | platform caam_sm: [0000] 00 01 02 03 04 0f 06 07 | ||
+ | platform caam_sm: 64-bit black key: | ||
+ | usb-storage 1-1:1.0: USB Mass Storage device detected | ||
+ | scsi host1: usb-storage 1-1:1.0 | ||
+ | platform caam_sm: [0000] 45 c1 02 fe 83 06 66 f2 | ||
+ | platform caam_sm: [0008] a8 59 af 09 22 96 2d 4d | ||
+ | platform caam_sm: 128-bit clear key: | ||
+ | platform caam_sm: [0000] 00 01 02 03 04 0f 06 07 | ||
+ | platform caam_sm: [0008] 08 09 0a 0b 0c 0d 0e 0f | ||
+ | platform caam_sm: 128-bit black key: | ||
+ | platform caam_sm: [0000] 24 a6 07 2a 93 fd 7d 92 | ||
+ | platform caam_sm: [0008] 7f 09 77 89 6f a6 8a 58 | ||
+ | platform caam_sm: 192-bit clear key: | ||
+ | platform caam_sm: [0000] 00 01 02 03 04 0f 06 07 | ||
+ | platform caam_sm: [0008] 08 09 0a 0b 0c 0d 0e 0f | ||
+ | platform caam_sm: [0016] 10 11 12 13 14 15 16 17 | ||
+ | platform caam_sm: 192-bit black key: | ||
+ | platform caam_sm: [0000] 65 93 2d 72 de 1d 53 89 | ||
+ | platform caam_sm: [0008] 60 3c 6a ba fa 3d fc 61 | ||
+ | platform caam_sm: [0016] 81 1b 1d 9a d1 94 c5 3f | ||
+ | platform caam_sm: [0024] 3a 48 a4 5d 77 17 b4 72 | ||
+ | platform caam_sm: 256-bit clear key: | ||
+ | platform caam_sm: [0000] 00 01 02 03 04 0f 06 07 | ||
+ | platform caam_sm: [0008] 08 09 0a 0b 0c 0d 0e 0f | ||
+ | platform caam_sm: [0016] 10 11 12 13 14 15 16 17 | ||
+ | platform caam_sm: [0024] 18 19 1a 1b 1c 1d 1e 1f | ||
+ | platform caam_sm: 256-bit black key: | ||
+ | platform caam_sm: [0000] 62 98 f0 63 fd 45 55 58 | ||
+ | platform caam_sm: [0008] 7f b1 04 83 28 ee e4 ce | ||
+ | platform caam_sm: [0016] 4e 73 d0 75 68 c1 34 91 | ||
+ | platform caam_sm: [0024] 9d f7 0c 2d ba 33 7d 05 | ||
+ | platform caam_sm: 64-bit unwritten blob: | ||
+ | platform caam_sm: [0000] 00 00 00 00 00 00 00 00 | ||
+ | platform caam_sm: [0008] 00 00 00 00 00 00 00 00 | ||
+ | platform caam_sm: [0016] 00 00 00 00 00 00 00 00 | ||
+ | platform caam_sm: [0024] 00 00 00 00 00 00 00 00 | ||
+ | platform caam_sm: [0032] 00 00 00 00 00 00 00 00 | ||
+ | platform caam_sm: [0040] 00 00 00 00 00 00 00 00 | ||
+ | platform caam_sm: [0048] 00 00 00 00 00 00 00 00 | ||
+ | platform caam_sm: [0056] 00 00 00 00 00 00 00 00 | ||
+ | platform caam_sm: [0064] 00 00 00 00 00 00 00 00 | ||
+ | platform caam_sm: [0072] 00 00 00 00 00 00 00 00 | ||
+ | platform caam_sm: [0080] 00 00 00 00 00 00 00 00 | ||
+ | platform caam_sm: [0088] 00 00 00 00 00 00 00 00 | ||
+ | platform caam_sm: 128-bit unwritten blob: | ||
+ | platform caam_sm: [0000] 00 00 00 00 00 00 00 00 | ||
+ | platform caam_sm: [0008] 00 00 00 00 00 00 00 00 | ||
+ | platform caam_sm: [0016] 00 00 00 00 00 00 00 00 | ||
+ | platform caam_sm: [0024] 00 00 00 00 00 00 00 00 | ||
+ | platform caam_sm: [0032] 00 00 00 00 00 00 00 00 | ||
+ | platform caam_sm: [0040] 00 00 00 00 00 00 00 00 | ||
+ | platform caam_sm: [0048] 00 00 00 00 00 00 00 00 | ||
+ | platform caam_sm: [0056] 00 00 00 00 00 00 00 00 | ||
+ | platform caam_sm: [0064] 00 00 00 00 00 00 00 00 | ||
+ | platform caam_sm: [0072] 00 00 00 00 00 00 00 00 | ||
+ | platform caam_sm: [0080] 00 00 00 00 00 00 00 00 | ||
+ | platform caam_sm: [0088] 00 00 00 00 00 00 00 00 | ||
+ | platform caam_sm: 196-bit unwritten blob: | ||
+ | platform caam_sm: [0000] 00 00 00 00 00 00 00 00 | ||
+ | platform caam_sm: [0008] 00 00 00 00 00 00 00 00 | ||
+ | platform caam_sm: [0016] 00 00 00 00 00 00 00 00 | ||
+ | platform caam_sm: [0024] 00 00 00 00 00 00 00 00 | ||
+ | platform caam_sm: [0032] 00 00 00 00 00 00 00 00 | ||
+ | platform caam_sm: [0040] 00 00 00 00 00 00 00 00 | ||
+ | platform caam_sm: [0048] 00 00 00 00 00 00 00 00 | ||
+ | platform caam_sm: [0056] 00 00 00 00 00 00 00 00 | ||
+ | platform caam_sm: [0064] 00 00 00 00 00 00 00 00 | ||
+ | platform caam_sm: [0072] 00 00 00 00 00 00 00 00 | ||
+ | platform caam_sm: [0080] 00 00 00 00 00 00 00 00 | ||
+ | platform caam_sm: [0088] 00 00 00 00 00 00 00 00 | ||
+ | platform caam_sm: 256-bit unwritten blob: | ||
+ | platform caam_sm: [0000] 00 00 00 00 00 00 00 00 | ||
+ | platform caam_sm: [0008] 00 00 00 00 00 00 00 00 | ||
+ | platform caam_sm: [0016] 00 00 00 00 00 00 00 00 | ||
+ | platform caam_sm: [0024] 00 00 00 00 00 00 00 00 | ||
+ | platform caam_sm: [0032] 00 00 00 00 00 00 00 00 | ||
+ | platform caam_sm: [0040] 00 00 00 00 00 00 00 00 | ||
+ | platform caam_sm: [0048] 00 00 00 00 00 00 00 00 | ||
+ | platform caam_sm: [0056] 00 00 00 00 00 00 00 00 | ||
+ | platform caam_sm: [0064] 00 00 00 00 00 00 00 00 | ||
+ | platform caam_sm: [0072] 00 00 00 00 00 00 00 00 | ||
+ | platform caam_sm: [0080] 00 00 00 00 00 00 00 00 | ||
+ | platform caam_sm: [0088] 00 00 00 00 00 00 00 00 | ||
+ | platform caam_sm: 64-bit black key in blob: | ||
+ | platform caam_sm: [0000] 5a 24 81 f6 c4 54 14 c3 | ||
+ | platform caam_sm: [0008] a8 5a b8 88 3c fd 27 71 | ||
+ | platform caam_sm: [0016] 9e 65 96 3c f1 af 31 e1 | ||
+ | platform caam_sm: [0024] f0 34 fc 46 ca d5 0b 5e | ||
+ | platform caam_sm: [0032] d2 0d 73 ee d1 9e e0 64 | ||
+ | platform caam_sm: [0040] 26 2c 11 77 e7 25 fb fc | ||
+ | platform caam_sm: [0048] f0 3c 05 22 07 5f ec 7b | ||
+ | platform caam_sm: [0056] 00 00 00 00 00 00 00 00 | ||
+ | platform caam_sm: [0064] 00 00 00 00 00 00 00 00 | ||
+ | platform caam_sm: [0072] 00 00 00 00 00 00 00 00 | ||
+ | platform caam_sm: [0080] 00 00 00 00 00 00 00 00 | ||
+ | platform caam_sm: [0088] 00 00 00 00 00 00 00 00 | ||
+ | platform caam_sm: 128-bit black key in blob: | ||
+ | platform caam_sm: [0000] 60 7f 9a 09 9e 86 cc 88 | ||
+ | platform caam_sm: [0008] f5 e8 fa 04 be d9 b2 31 | ||
+ | platform caam_sm: [0016] a8 b7 8c 96 64 c8 72 bd | ||
+ | platform caam_sm: [0024] e3 62 d0 0a 54 41 bd 6b | ||
+ | platform caam_sm: [0032] c6 5c 5b 36 55 cb 94 67 | ||
+ | platform caam_sm: [0040] 87 5b 15 9b 8b 66 e0 c9 | ||
+ | platform caam_sm: [0048] 42 5a 02 56 df f8 66 d8 | ||
+ | platform caam_sm: [0056] 9a 40 98 fc 91 0c b1 52 | ||
+ | platform caam_sm: [0064] 00 00 00 00 00 00 00 00 | ||
+ | platform caam_sm: [0072] 00 00 00 00 00 00 00 00 | ||
+ | platform caam_sm: [0080] 00 00 00 00 00 00 00 00 | ||
+ | platform caam_sm: [0088] 00 00 00 00 00 00 00 00 | ||
+ | platform caam_sm: 192-bit black key in blob: | ||
+ | platform caam_sm: [0000] 64 3d ca c5 9a 0b e1 a3 | ||
+ | platform caam_sm: [0008] da cd f7 7a e4 52 17 1b | ||
+ | platform caam_sm: [0016] fe 4c 9c 72 bd 0e 31 d3 | ||
+ | platform caam_sm: [0024] d5 d3 51 59 7a 7a 65 f7 | ||
+ | platform caam_sm: [0032] b9 52 1c cc 9a 60 ed 65 | ||
+ | platform caam_sm: [0040] b0 bf d1 ed c8 27 29 85 | ||
+ | platform caam_sm: [0048] e8 e8 96 11 98 c4 91 68 | ||
+ | platform caam_sm: [0056] 40 5e bc 4b 78 40 68 1c | ||
+ | platform caam_sm: [0064] c5 98 46 42 81 7d 05 8f | ||
+ | platform caam_sm: [0072] 00 00 00 00 00 00 00 00 | ||
+ | platform caam_sm: [0080] 00 00 00 00 00 00 00 00 | ||
+ | platform caam_sm: [0088] 00 00 00 00 00 00 00 00 | ||
+ | platform caam_sm: 256-bit black key in blob: | ||
+ | platform caam_sm: [0000] 03 11 89 c9 94 c7 15 3a | ||
+ | platform caam_sm: [0008] bf c8 ad ad a2 6b fd 58 | ||
+ | platform caam_sm: [0016] 91 78 d1 5d 0e 97 26 72 | ||
+ | platform caam_sm: [0024] 1b f6 8f e5 a8 64 8e a5 | ||
+ | platform caam_sm: [0032] 94 e8 d3 30 0b 5f 09 78 | ||
+ | platform caam_sm: [0040] 37 9a 56 01 84 fa 09 eb | ||
+ | platform caam_sm: [0048] 7c c1 e1 1d 39 cf 5a c4 | ||
+ | platform caam_sm: [0056] c4 78 eb 74 7a b8 f5 e6 | ||
+ | platform caam_sm: [0064] a2 6a 54 ae d8 03 75 cd | ||
+ | platform caam_sm: [0072] 6f 72 00 52 55 b3 eb ce | ||
+ | platform caam_sm: [0080] 00 00 00 00 00 00 00 00 | ||
+ | platform caam_sm: [0088] 00 00 00 00 00 00 00 00 | ||
+ | platform caam_sm: restored 64-bit black key: | ||
+ | platform caam_sm: [0000] ae 3b b7 d9 3a 4e 46 51 | ||
+ | platform caam_sm: [0008] f4 2e 96 f0 3c f8 ed f8 | ||
+ | platform caam_sm: restored 128-bit black key: | ||
+ | platform caam_sm: [0000] 24 a6 07 2a 93 fd 7d 92 | ||
+ | platform caam_sm: [0008] 7f 09 77 89 6f a6 8a 58 | ||
+ | platform caam_sm: restored 192-bit black key: | ||
+ | platform caam_sm: [0000] 65 93 2d 72 de 1d 53 89 | ||
+ | platform caam_sm: [0008] 60 3c 6a ba fa 3d fc 61 | ||
+ | platform caam_sm: [0016] bc 05 26 22 c8 56 84 5e | ||
+ | platform caam_sm: [0024] 69 34 6f 33 80 7b ae fb | ||
+ | platform caam_sm: restored 256-bit black key: | ||
+ | platform caam_sm: [0000] 62 98 f0 63 fd 45 55 58 | ||
+ | platform caam_sm: [0008] 7f b1 04 83 28 ee e4 ce | ||
+ | platform caam_sm: [0016] 4e 73 d0 75 68 c1 34 91 | ||
+ | platform caam_sm: [0024] 9d f7 0c 2d ba 33 7d 05 | ||
+ | snvs-secvio 20cc000.caam-snvs: cant get snvs clock | ||
+ | snvs-secvio 20cc000.caam-snvs: violation handlers armed - non-secure state | ||
+ | usbcore: registered new interface driver usbhid | ||
+ | usbhid: USB HID core driver | ||
+ | fsl-asrc 2034000.asrc: driver registered | ||
+ | imx-audio-hdmi sound-hdmi: hdmi-hifi <-> soc:hdmi_audio@00120000 mapping ok | ||
+ | NET: Registered protocol family 26 | ||
+ | NET: Registered protocol family 10 | ||
+ | sit: IPv6 over IPv4 tunneling driver | ||
+ | NET: Registered protocol family 17 | ||
+ | can: controller area network core (rev 20120528 abi 9) | ||
+ | NET: Registered protocol family 29 | ||
+ | can: raw protocol (rev 20120528) | ||
+ | can: broadcast manager protocol (rev 20120528 t) | ||
+ | can: netlink gateway (rev 20130117) 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 | ||
+ | Key type dns_resolver registered | ||
+ | remove 396MHz OPP for VPU running at 352MHz! | ||
+ | increase SOC/PU voltage for VPU352MHz | ||
+ | 1ffc000.pcie supply pcie-bus not found, using dummy regulator | ||
+ | imx6q-pcie 1ffc000.pcie: phy link never came up | ||
+ | imx6q-pcie 1ffc000.pcie: failed to initialize host | ||
+ | imx6q-pcie: probe of 1ffc000.pcie failed with error -22 | ||
+ | input: gpio-keys as /devices/soc0/gpio-keys/input/input0 | ||
+ | snvs_rtc 20cc000.snvs:snvs-rtc-lp: setting system clock to 2017-07-30 10:54:38 UTC (1501412078) | ||
+ | usb_otg_vbus: disabling | ||
+ | ALSA device list: | ||
+ | #0: imx-hdmi-soc | ||
+ | scsi 1:0:0:0: Direct-Access ADATA USB Flash Drive 1100 PQ: 0 ANSI: 4 | ||
+ | sd 1:0:0:0: [sdb] 15572992 512-byte logical blocks: (7.97 GB/7.43 GiB) | ||
+ | sd 1:0:0:0: [sdb] Write Protect is off | ||
+ | sd 1:0:0:0: [sdb] No Caching mode page found | ||
+ | sd 1:0:0:0: [sdb] Assuming drive cache: write through | ||
+ | sdb: sdb1 | ||
+ | sd 1:0:0:0: [sdb] Attached SCSI removable disk | ||
+ | EXT3-fs (sda2): error: couldnt mount because of unsupported optional features (240) | ||
+ | EXT2-fs (sda2): error: couldnt mount because of unsupported optional features (240) | ||
+ | EXT4-fs (sda2): mounted filesystem with ordered data mode. Opts: (null) | ||
+ | VFS: Mounted root (ext4 filesystem) on device 8:2. | ||
+ | devtmpfs: mounted | ||
+ | Freeing unused kernel memory: 432K (c0aaa000 - c0b16000) | ||
+ | INIT: version 2.88 booting | ||
+ | Starting udev | ||
+ | udev: Not using udev cache because of changes detected in the following files: | ||
+ | udev: /proc/version /proc/cmdline /proc/devices | ||
+ | udev: lib/udev/rules.d/* etc/udev/rules.d/* | ||
+ | udev: The udev cache will be regenerated. To identify the detected changes, | ||
+ | udev: compare the cached sysconf at /etc/udev/cache.data | ||
+ | udev: against the current sysconf at /dev/shm/udev.cache | ||
+ | udevd[203]: starting version 3.1.5 | ||
+ | random: udevd urandom read with 39 bits of entropy available | ||
+ | Galcore version 5.0.11.41671 | ||
+ | ov5647_read_reg(mipi):reg=300a ret=-5 | ||
+ | camera ov5647_mipi is not found | ||
+ | adv7610_video: HDMI receiver adv7610 is found | ||
+ | ERROR: v4l2 capture: slave not found! | ||
+ | EXT4-fs (sda2): re-mounted. Opts: (null) | ||
+ | bootlogd: cannot allocate pseudo tty: No such file or directory | ||
+ | Populating dev cache | ||
+ | ALSA: Restoring mixer settings... | ||
+ | INIT: Entering runlevel: 5 | ||
+ | Configuring network interfaces... fec 2188000.ethernet eth0: Freescale FEC PHY driver [Micrel KSZ9031 Gigabit PHY] (mii_bus:phy_addr=2188000.ethernet:03, irq=-1) | ||
+ | IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready | ||
+ | done. | ||
+ | Starting Xserver | ||
+ | Starting system message bus: dbus. | ||
+ | Starting Connection Manager | ||
+ | random: nonblocking pool is initialized | ||
+ | power_down_callback: ipu0/csi0 | ||
+ | Starting Dropbear SSH server: dropbear. | ||
+ | Starting rpcbind daemon...done. | ||
+ | starting statd: done | ||
+ | Starting advanced power management daemon: No APM support in kernel | ||
+ | (failed.) | ||
+ | Starting atd: OK | ||
+ | exportfs: cant open /etc/exports for reading | ||
+ | NFS daemon support not enabled in kernel | ||
+ | Starting system log daemon...0 | ||
+ | Starting kernel log daemon...0 | ||
+ | [ ok ]rting Avahi mDNS/DNS-SD Daemon: avahi-daemon | ||
+ | Starting Telephony daemon | ||
+ | Starting Linux NFC daemon | ||
+ | Starting crond: OK | ||
+ | Starting autohdmi: imx-hdmi-audio imx-hdmi-audio: HDMI Video is not ready! | ||
+ | imx-hdmi-audio imx-hdmi-audio: ASoC: cant open platform imx-hdmi-audio: -22 | ||
+ | imx-hdmi-audio imx-hdmi-audio: HDMI Video is not ready! | ||
+ | |||
+ | imx-hdmi-audio imx-hdmi-audio: ASoC: cant open platform imx-hdmi-audio: -22 | ||
+ | imx-hdmi-audio imx-hdmi-audio: HDMI Video is not ready! | ||
+ | imx-hdmi-audio imx-hdmi-audio: ASoC: cant open platform imx-hdmi-audio: -22 | ||
+ | imx-hdmi-audio imx-hdmi-audio: HDMI Video is not ready! | ||
+ | imx-hdmi-audio imx-hdmi-audio: ASoC: cant open platform imx-hdmi-audio: -22 | ||
+ | imx-hdmi-audio imx-hdmi-audio: HDMI Video is not ready! | ||
+ | imx-hdmi-audio imx-hdmi-audio: ASoC: cant open platform imx-hdmi-audio: -22 | ||
+ | imx-hdmi-audio imx-hdmi-audio: HDMI Video is not ready! | ||
+ | imx-hdmi-audio imx-hdmi-audio: ASoC: cant open platform imx-hdmi-audio: -22 | ||
+ | imx-hdmi-audio imx-hdmi-audio: HDMI Video is not ready! | ||
+ | imx-hdmi-audio imx-hdmi-audio: ASoC: cant open platform imx-hdmi-audio: -22 | ||
+ | imx-hdmi-audio imx-hdmi-audio: HDMI Video is not ready! | ||
+ | imx-hdmi-audio imx-hdmi-audio: ASoC: cant open platform imx-hdmi-audio: -22 | ||
+ | Running local boot scripts (/etc/rc.local). | ||
+ | |||
+ | Freescale i.MX Release Distro 4.1.15-2.1.0 imx6-tinyrexultra /dev/ttymxc0 | ||
+ | |||
+ | imx6-tinyrexultra login: | ||
+ | </syntaxhighlight> |
Latest revision as of 14:57, 25 January 2023
SATA
NOTE: Add descriptions / pictures / visual guide how to connect the card to the board. Do not forget to mention requirement of additional power signals are required to be connected from one of the baseboard headers to the card.
Input: Plug sata disk to M2 extension board and power on
Output: Sata device is recognized
root@imx8mq-voipac:~# ls -la /dev/sda brw-rw---- 1 root disk 8, 0 Feb 22 07:13 /dev/sda # run speed test - write root@imx8mq-voipac:~# time dd if=/dev/urandom of=/dev/sda bs=4096 status=progress count=200000 #NOTE: "of=/dev/sdb" is correct? + Consider using a printout from testing a better SATA disk - higher speeds were achieved. 812093440 bytes (812 MB, 774 MiB) copied, 29 s, 28.0 MB/s 200000+0 records in 200000+0 records out 819200000 bytes (819 MB, 781 MiB) copied, 34.1491 s, 24.0 MB/s real 0m 34.15s user 0m 0.30s sys 0m 12.74s # run speed test - read root@imx8mq-voipac:~# time dd if=/dev/sda of=/tmp/test.bin bs=4096 status=progress count=100000 #NOTE: "if=/dev/sdb" is correct? + Consider using a printout from testing a better SATA disk - higher speeds were achieved. 364503040 bytes (365 MB, 348 MiB) copied, 4 s, 91.1 MB/s 100000+0 records in 100000+0 records out 409600000 bytes (410 MB, 391 MiB) copied, 4.5828 s, 89.4 MB/s real 0m 4.79s user 0m 0.06s sys 0m 2.15s
We achieved aw write speed ~ 24MB/s and read speed ~90MB/s
!!!!!!!!!EXISTING PART OF THE WIKI PAGE STARTS BELOW !!!!!!!!!
SATA disk modules provides reliable storage. There are multiple benefits for using them:
- iMX8M Industrial Development Kit can use SATA disk to store files
- sizeable capacity
- available in extended temperature range
- Mean Time Between Failures exceeding 1000000 hours
- supports wear levelling, SMART and power failure management for data integrity
Although multiple disk on modules can be utilised, iMX6 Rex SATA Disk Module was handpicked as an excellent choice in terms of physical size, power consumption and reliability:
Voipac designation | Manufacturer | Model | Capacity | Flash type |
---|---|---|---|---|
iMX6 Rex SATA Disk Module (default) | Apacer | APSDM008GB2AN-ETM1 | 8GB | MLC |
iMX6 Rex SATA Disk Module 32GB (upon request) | Apacer | APSDM032GAETN-5ETMGW | 32GB | MLC |
Disk detection
iMX6 Rex SATA Disk Module 8GB
Uboot
TinyRex U-Boot > sata init AHCI 0001.0300 32 slots 1 ports 3 Gbps 0x1 impl SATA mode flags: ncq stag pm led clo only pmp pio slum part SATA Device Info: S/N: E0117219300000000116 Product model number: 8GB SATA Flash Drive Firmware version: SFDK003A Capacity: 15649200 sectors
Linux
root@imx6-tinyrexultra:~# dmesg | grep -i 'sata\|ata1\|sda' [ 1.269889] ahci-imx 2200000.sata: fsl,transmit-level-mV not specified, using 00000024 [ 1.276553] ahci-imx 2200000.sata: fsl,transmit-boost-mdB not specified, using 00000480 [ 1.283267] ahci-imx 2200000.sata: fsl,transmit-atten-16ths not specified, using 00002000 [ 1.290173] ahci-imx 2200000.sata: fsl,receive-eq-mdB not specified, using 05000000 [ 1.299684] ahci-imx 2200000.sata: SSS flag set, parallel bus scan disabled [ 1.305404] ahci-imx 2200000.sata: AHCI 0001.0300 32 slots 1 ports 3 Gbps 0x1 impl platform mode [ 1.312901] ahci-imx 2200000.sata: flags: ncq sntf stag pm led clo only pmp pio slum part ccc apst [ 1.324480] ata1: SATA max UDMA/133 mmio [mem 0x02200000-0x02203fff] port 0x100 irq 316 [ 1.874932] ata1: SATA link up 3.0 Gbps (SStatus 123 SControl 300) [ 1.884159] ata1.00: ATA-9: 8GB SATA Flash Drive, SFDK003A, max UDMA/100 [ 2.676616] ata1.00: 15649200 sectors, multi 1: LBA48 NCQ (depth 31/32) [ 2.677420] ata1.00: configured for UDMA/100 [ 2.695168] scsi 0:0:0:0: Direct-Access ATA 8GB SATA Flash D 003A PQ: 0 ANSI: 5 [ 2.702651] sd 0:0:0:0: [sda] 15649200 512-byte logical blocks: (8.01 GB/7.46 GiB) [ 2.709225] sd 0:0:0:0: [sda] Write Protect is off [ 2.712725] sd 0:0:0:0: [sda] Mode Sense: 00 3a 00 00 [ 2.712811] sd 0:0:0:0: [sda] Write cache: enabled, read cache: enabled, doesnt support DPO or FUA [ 2.721620] sda: sda1 sda2 [ 2.724190] sd 0:0:0:0: [sda] Attached SCSI disk
iMX6 Rex SATA Disk Module 32GB
Uboot
TinyRex U-Boot > sata init AHCI 0001.0300 32 slots 1 ports 3 Gbps 0x1 impl SATA mode flags: ncq stag pm led clo only pmp pio slum part SATA Device Info: S/N: B0719014100000000318 Product model number: 32GB SATA Flash Drive Firmware version: SFDN005E Capacity: 62533296 sectors
Linux
root@imx6-tinyrexultra:~# dmesg | grep -i 'sata\|ata1\|sda' [ 1.272523] ahci-imx 2200000.sata: fsl,transmit-level-mV not specified, using 00000024 [ 1.279188] ahci-imx 2200000.sata: fsl,transmit-boost-mdB not specified, using 00000480 [ 1.285930] ahci-imx 2200000.sata: fsl,transmit-atten-16ths not specified, using 00002000 [ 1.292816] ahci-imx 2200000.sata: fsl,receive-eq-mdB not specified, using 05000000 [ 1.302278] ahci-imx 2200000.sata: SSS flag set, parallel bus scan disabled [ 1.308013] ahci-imx 2200000.sata: AHCI 0001.0300 32 slots 1 ports 3 Gbps 0x1 impl platform mode [ 1.315531] ahci-imx 2200000.sata: flags: ncq sntf stag pm led clo only pmp pio slum part ccc apst [ 1.327154] ata1: SATA max UDMA/133 mmio [mem 0x02200000-0x02203fff] port 0x100 irq 317 [ 1.875067] ata1: SATA link up 3.0 Gbps (SStatus 123 SControl 300) [ 1.880140] ata1.00: ATA-9: 32GB SATA Flash Drive, SFDN005E, max UDMA/133 [ 1.885729] ata1.00: 62533296 sectors, multi 16: LBA48 NCQ (depth 31/32) [ 1.891437] ata1.00: configured for UDMA/133 [ 1.905341] scsi 0:0:0:0: Direct-Access ATA 32GB SATA Flash 005E PQ: 0 ANSI: 5 [ 1.913227] sd 0:0:0:0: [sda] 62533296 512-byte logical blocks: (32.0 GB/29.8 GiB) [ 1.925586] sd 0:0:0:0: [sda] Write Protect is off [ 1.925597] sd 0:0:0:0: [sda] Mode Sense: 00 3a 00 00 [ 1.925702] sd 0:0:0:0: [sda] Write cache: enabled, read cache: enabled, doesnt support DPO or FUA [ 1.929348] sda: sda1 [ 1.930471] sd 0:0:0:0: [sda] Attached SCSI disk
Partition layout
This partition is designed for SATA modules acting as a booting device:
Partition type/index | Name | Start offset (Sector) | Size | File system | Content |
---|---|---|---|---|---|
N/A | BOOT Loader | 1 KB (2) | 1 MB | N/A | u-boot-imx6-*rex*sata-2.4.imx |
Primary 1 | Kernel | 8 MB (16384) | 32 MB | VFAT | zImage-imx6-*rex*-2.4.bin,zImage-imx6-*rex*-2.4.dtb |
Primary 2 | Rootfs | Follow Kernel | - | EXT4 | fsl-image-gui-imx6-*rex*-2.4.ext4.gz |
Creating partitions
/dev/sdX represent SATA module node which is usually /dev/sda on iMX6 TinyRex Development Kit. Sector size is 512 Bytes.
root@imx6-tinyrexultra:~# umount /dev/sdX* root@imx6-tinyrexultra:~# fdisk /dev/sdX Welcome to fdisk (util-linux 2.27.1). Changes will remain in memory only, until you decide to write them. Be careful before using the write command. Command (m for help): d Partition number (1,2, default 2): Partition 2 has been deleted. Command (m for help): d Selected partition 1 Partition 1 has been deleted. Command (m for help): n Partition type p primary (0 primary, 0 extended, 4 free) e extended (container for logical partitions) Select (default p): p Partition number (1-4, default 1): First sector (2048-15649199, default 2048): 16384 Last sector, +sectors or +size{K,M,G,T,P} (16384-15649199, default 15649199): +32M Created a new partition 1 of type 'Linux' and of size 32 MiB. Command (m for help): t Selected partition 1 Partition type (type L to list all types): c Changed type of partition 'Linux' to 'W95 FAT32 (LBA)'. Command (m for help): p Disk /dev/sda: 7.5 GiB, 8012390400 bytes, 15649200 sectors Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disklabel type: dos Disk identifier: 0x59245670 Device Boot Start End Sectors Size Id Type /dev/sda1 16384 81919 65536 32M c W95 FAT32 (LBA) Command (m for help): n Partition type p primary (1 primary, 0 extended, 3 free) e extended (container for logical partitions) Select (default p): p Partition number (2-4, default 2): First sector (2048-15649199, default 2048): 81920 Last sector, +sectors or +size{K,M,G,T,P} (81920-15649199, default 15649199): Created a new partition 2 of type 'Linux' and of size 7.4 GiB. Command (m for help): p Disk /dev/sda: 7.5 GiB, 8012390400 bytes, 15649200 sectors Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disklabel type: dos Disk identifier: 0x59245670 Device Boot Start End Sectors Size Id Type /dev/sda1 16384 81919 65536 32M c W95 FAT32 (LBA) /dev/sda2 81920 15649199 15567280 7.4G 83 Linux Command (m for help): w The partition table has been altered. Calling ioctl() to re-read partition table. sda: sda1 sda2 Syncing disks. sda: sda1 sda2
Copying files
Bootloader
sudo dd if=u-boot-imx6-*rex*sata*.imx of=/dev/sdX bs=512 seek=2 conv=fsync
Kernel
sudo umount /dev/sdX1 sudo mkfs.vfat -n KERNEL /dev/sdX1 mkdir tmpmount sudo mount /dev/sdX1 tmpmount sudo cp -v zImage-imx6-*rex*.bin tmpmount/zImage sudo cp -v zImage-imx6-*rex*.dtb tmpmount/imx6-*rex*.dtb sudo umount tmpmount rmdir tmpmount
Filesystem
sudo umount /dev/sdX2 sudo dd if=fsl-image-gui-imx6-*rex*.ext4 of=/dev/sdX2 && sync
or
sudo umount /dev/sdX2 gunzip -c fsl-image-gui-imx6-*rex*.ext4.gz | sudo dd of=/dev/sdX2 && sync
Downloading and copying files over Internet
export XREX_CONFIGURATION=tinyrexultra #export XREX_CONFIGURATION=rexultra #export XREX_CONFIGURATION=openrexultra export XREX_BOOTLOADER=u-boot-imx6-${XREX_CONFIGURATION}sata-2.4.imx export XREX_KERNEL_ZIMAGE=zImage-imx6-${XREX_CONFIGURATION}-2.4.bin export XREX_KERNEL_DTB=zImage-imx6-${XREX_CONFIGURATION}-2.4.dtb export XREX_ROOTFS=fsl-image-gui-imx6-${XREX_CONFIGURATION}-2.4.ext4.gz wget http://downloads.voipac.com/files/iMX6_TinyRex_Development_Kit/module/software/uboot/binaries/${XREX_BOOTLOADER} wget http://downloads.voipac.com/files/iMX6_TinyRex_Development_Kit/module/software/linux/binaries/${XREX_KERNEL_ZIMAGE} wget http://downloads.voipac.com/files/iMX6_TinyRex_Development_Kit/module/software/linux/binaries/${XREX_KERNEL_DTB} wget http://downloads.voipac.com/files/iMX6_TinyRex_Development_Kit/module/software/yocto/binaries/${XREX_ROOTFS} sudo dd if=${XREX_BOOTLOADER} of=/dev/sda bs=512 seek=2 conv=fsync sudo umount /dev/sda1 sudo mkfs.vfat -n KERNEL /dev/sda1 mkdir tmpmount sudo mount /dev/sda1 tmpmount sudo cp ${XREX_KERNEL_ZIMAGE} tmpmount/zImage sudo cp ${XREX_KERNEL_DTB} tmpmount/imx6-${XREX_CONFIGURATION}.dtb sudo umount tmpmount rmdir tmpmount sudo umount /dev/sda2 gunzip -c ${XREX_ROOTFS} | sudo dd of=/dev/sda2 && sync
Bootloader settings
The primary bootloader (loaded by ROM bootloader) will chainload the second bootloader. Chainloaded bootloader is configured to load kernel and device tree from first partition and rootfs from second partition in this case.
Notes:
- Primary bootloader environment must be set to run new boot mode ('bmode sata')
- Chainloaded bootloader environment must be set to properly load and execute kernel ('setenv sataroot ...')
Boot sequence:
- ROM bootloader loads and execute primary bootloader based on eFuses configuration (SPI/SD)
- Primary bootloader (SPI/SD) with set i.MX6 register to overwrite primary boot device and will reset SOC
- ROM bootloader will load and execute bootloader from newly configured boot device (SATA)
Configuring primary (SPI/SD) bootloader. Changes are applied in uboot environment:
setenv bootcmd 'bmode sata' saveenv reset
Configuring chainloaded (SATA) bootloader:
setenv sataroot '/dev/sda2 rootwait rw' setenv sataargs 'setenv bootargs console=${console},${baudrate} ${extra} ${video} root=${sataroot}' setenv sataboot 'echo Booting from sata ...; run sataargs; if sata init; then fatload sata 0:1 ${loadaddr} ${image}; fatload sata 0:1 ${fdt_addr} ${fdt_file}; bootz ${loadaddr} - ${fdt_addr}; fi' setenv bootcmd 'run sataboot' sata init; saveenv boot
Performance comparison
The transfer speed differences between SD card and SATA module are listed in the table below . The test was performed using flexible I/O tester:
fio --loops=5 --size=100m --filename=/home/root/fiotest.tmp --stonewall --ioengine=libaio --direct=1 \ --name=Seqread --bs=1m --rw=read \ --name=Seqwrite --bs=1m --rw=write \ --name=512Kread --bs=512k --rw=randread \ --name=512Kwrite --bs=512k --rw=randwrite \ --name=4kQD32read --bs=4k --iodepth=32 --rw=randread \ --name=4kQD32write --bs=4k --iodepth=32 --rw=randwrite
Results:
Model | Test | Number of megabytes IOs performed | Average bandwidth rate | Average IOs performed per second | The runtime of thread | Notes |
---|---|---|---|---|---|---|
SanDisk SDHCI card | Seqread | 512000KB | 16576KB/s | 16 | 30888msec | rw=read, bs=1M-1M/1M-1M/1M-1M, ioengine=libaio, iodepth=1 |
Seqwrite | 512000KB | 4772.9KB/s | 4 | 107274msec | rw=write, bs=1M-1M/1M-1M/1M-1M, ioengine=libaio, iodepth=1 | |
512Kread | 512000KB | 16682KB/s | 32 | 30692msec | rw=randread, bs=512K-512K/512K-512K/512K-512K, ioengine=libaio, iodepth=1 | |
512Kwrite | 512000KB | 1325.7KB/s | 2 | 386413msec | rw=randwrite, bs=512K-512K/512K-512K/512K-512K, ioengine=libaio, iodepth=1 | |
4kQD32read | 512000KB | 5448.3KB/s | 1362 | 93979msec | rw=randread, bs=4K-4K/4K-4K/4K-4K, ioengine=libaio, iodepth=32 | |
4kQD32write | 512000KB | 303.8KB/s | 75 | 1687613msec | rw=randwrite, bs=4K-4K/4K-4K/4K-4K, ioengine=libaio, iodepth=32 | |
iMX6 Rex SATA Disk Module 32GB | Seqread | 512000KB | 92754KB/s | 90 | 5520msec | rw=read, bs=1M-1M/1M-1M/1M-1M, ioengine=libaio, iodepth=1 |
Seqwrite | 512000KB | 44329KB/s | 43 | 11550msec | rw=write, bs=1M-1M/1M-1M/1M-1M, ioengine=libaio, iodepth=1 | |
512Kread | 512000KB | 88781KB/s | 173 | 5767msec | rw=randread, bs=512K-512K/512K-512K/512K-512K, ioengine=libaio, iodepth=1 | |
512Kwrite | 512000KB | 44294KB/s | 86 | 11559msec | rw=randwrite, bs=512K-512K/512K-512K/512K-512K, ioengine=libaio, iodepth=1 | |
4kQD32read | 512000KB | 36258KB/s | 9064 | 14121msec | rw=randread, bs=4K-4K/4K-4K/4K-4K, ioengine=libaio, iodepth=32 | |
4kQD32write | 512000KB | 35742KB/s | 8935 | 14325msec | rw=randwrite, bs=4K-4K/4K-4K/4K-4K, ioengine=libaio, iodepth=32 |
Booting log
U-Boot 2015.04-g8efb1bd-dirty (Jul 28 2017 - 16:36:40) CPU: Freescale i.MX6QP rev1.0 at 792 MHz CPU: Temperature 55 C Reset cause: POR Board: MX6 TinyRex - ultra I2C: ready DRAM: 3.8 GiB MMC: FSL_SDHC: 0, FSL_SDHC: 1, FSL_SDHC: 2 SF: Detected SST25VF032B with page size 256 Bytes, erase size 4 KiB, total 4 MiB In: serial Out: serial Err: serial Net: FEC [PRIME] Normal Boot Hit any key to stop autoboot: 0 resetting ... U-Boot 2015.04 (Jul 29 2017 - 17:21:12) CPU: Freescale i.MX6QP rev1.0 at 792 MHz CPU: Temperature 56 C Reset cause: WDOG Board: MX6 TinyRex - ultra I2C: ready DRAM: 3.8 GiB WARNING: Caches not enabled MMC: FSL_SDHC: 0, FSL_SDHC: 1, FSL_SDHC: 2 AHCI 0001.0300 32 slots 1 ports 3 Gbps 0x1 impl SATA mode flags: ncq stag pm led clo only pmp pio slum part SATA Device Info: S/N: E0117219300000000116 Product model number: 8GB SATA Flash Drive Firmware version: SFDK003A Capacity: 15649200 sectors In: serial Out: serial Err: serial Net: FEC [PRIME] Normal Boot Hit any key to stop autoboot: 0 Booting from sata ... AHCI 0001.0300 32 slots 1 ports 3 Gbps 0x1 impl SATA mode flags: ncq stag pm led clo only pmp pio slum part SATA Device Info: S/N: E0117219300000000116 Product model number: 8GB SATA Flash Drive Firmware version: SFDK003A Capacity: 15649200 sectors reading zImage 6406928 bytes read in 89 ms (68.7 MiB/s) reading imx6-tinyrexultra.dtb 43668 bytes read in 8 ms (5.2 MiB/s) Kernel image @ 0x10800000 [ 0x000000 - 0x61c310 ] ## Flattened Device Tree blob at 18000000 Booting using the fdt blob at 0x18000000 Using Device Tree in place at 18000000, end 1800da93 Starting kernel ... Uncompressing Linux... done, booting the kernel. Booting Linux on physical CPU 0x0 Linux version 4.1.36-yocto+g7f55696 (marek@marek-ThinkPad-T530) (gcc version 5.3.0 (GCC) ) #1 SMP PREEMPT Sat Jul 29 17:36:08 CEST 2017 CPU: ARMv7 Processor [412fc09a] revision 10 (ARMv7), cr=10c53c7d CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache Machine model: Fedevel iMX6 QuadPlus TinyREX Board Reserved memory: created CMA memory pool at 0x2a000000, size 320 MiB Reserved memory: initialized node linux,cma, compatible id shared-dma-pool Memory policy: Data cache writealloc PERCPU: Embedded 12 pages/cpu @ef6fb000 s16908 r8192 d24052 u49152 Built 1 zonelists in Zone order, mobility grouping on. Total pages: 981519 Kernel command line: console=ttymxc0,115200 root=/dev/sda2 rootwait rw PID hash table entries: 4096 (order: 2, 16384 bytes) Dentry cache hash table entries: 131072 (order: 7, 524288 bytes) Inode-cache hash table entries: 65536 (order: 6, 262144 bytes) Memory: 3559672K/3932156K available (7991K kernel code, 427K rwdata, 2896K rodata, 432K init, 445K bss, 44804K reserved, 327680K cma-reserved, 3153916K highmem) Virtual kernel memory layout: vector : 0xffff0000 - 0xffff1000 ( 4 kB) fixmap : 0xffc00000 - 0xfff00000 (3072 kB) vmalloc : 0xf0000000 - 0xff000000 ( 240 MB) lowmem : 0xc0000000 - 0xef800000 ( 760 MB) pkmap : 0xbfe00000 - 0xc0000000 ( 2 MB) modules : 0xbf000000 - 0xbfe00000 ( 14 MB) .text : 0xc0008000 - 0xc0aa9eec (10888 kB) .init : 0xc0aaa000 - 0xc0b16000 ( 432 kB) .data : 0xc0b16000 - 0xc0b80d20 ( 428 kB) .bss : 0xc0b83000 - 0xc0bf256c ( 446 kB) SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=4, Nodes=1 Preemptible hierarchical RCU implementation. Additional per-CPU info printed with stalls. NR_IRQS:16 nr_irqs:16 16 L2C-310 erratum 769419 enabled L2C-310 enabling early BRESP for Cortex-A9 L2C-310 full line of zeros enabled for Cortex-A9 L2C-310 ID prefetch enabled, offset 16 lines L2C-310 dynamic clock gating enabled, standby mode enabled L2C-310 cache controller enabled, 16 ways, 1024 kB L2C-310: CACHE_ID 0x410000c8, AUX_CTRL 0x76070001 VPU 352M is enabled! mxc_clocksource_init 3000000 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: 2048 (order: 1, 8192 bytes) Mountpoint-cache hash table entries: 2048 (order: 1, 8192 bytes) CPU: Testing write buffer coherency: ok CPU0: thread -1, cpu 0, socket 0, mpidr 80000000 Setting up static identity map for 0x100082c0 - 0x10008318 CPU1: thread -1, cpu 1, socket 0, mpidr 80000001 CPU2: thread -1, cpu 2, socket 0, mpidr 80000002 CPU3: thread -1, cpu 3, socket 0, mpidr 80000003 Brought up 4 CPUs SMP: Total of 4 processors activated (24.00 BogoMIPS). CPU: All CPU(s) started in SVC mode. devtmpfs: initialized VFP support v0.3: implementor 41 architecture 3 part 30 variant 9 rev 4 clocksource jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns pinctrl core: initialized pinctrl subsystem NET: Registered protocol family 16 DMA: preallocated 256 KiB pool for atomic coherent allocations cpuidle: using governor ladder cpuidle: using governor menu CPU identified as i.MX6QP, silicon rev 1.0 hw-breakpoint: found 5 (+1 reserved) breakpoint and 1 watchpoint registers. hw-breakpoint: maximum watchpoint size is 4 bytes. imx6q-pinctrl 20e0000.iomuxc: initialized IMX pinctrl driver mxs-dma 110000.dma-apbh: initialized vgaarb: loaded SCSI subsystem initialized usbcore: registered new interface driver usbfs usbcore: registered new interface driver hub usbcore: registered new device driver usb 2000000.aips-bus:usbphy_nop1 supply vcc not found, using dummy regulator 2000000.aips-bus:usbphy_nop2 supply vcc not found, using dummy regulator i2c i2c-0: IMX I2C adapter registered i2c i2c-0: cant use DMA i2c i2c-1: IMX I2C adapter registered i2c i2c-1: cant use DMA i2c i2c-2: IMX I2C adapter registered i2c i2c-2: cant use DMA 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 imx-ipuv3 2400000.ipu: IPU DMFC NORMAL mode: 1(0~1), 5B(4,5), 5F(6,7) imx-ipuv3 2800000.ipu: IPU DMFC NORMAL mode: 1(0~1), 5B(4,5), 5F(6,7) imx-prg 21cc000.prg: driver probed imx-prg 21cd000.prg: driver probed imx-pre 21c8000.pre: driver probed imx-pre 21c9000.pre: driver probed imx-pre 21ca000.pre: driver probed imx-pre 21cb000.pre: driver probed mxc_mipi_csi2 21dc000.mipi_csi: i.MX MIPI CSI2 driver probed mxc_mipi_csi2 21dc000.mipi_csi: i.MX MIPI CSI2 dphy version is 0x3130302a MIPI CSI2 driver module loaded Advanced Linux Sound Architecture Driver Initialized. Bluetooth: Core ver 2.20 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 Switched to clocksource mxc_timer1 NET: Registered protocol family 2 TCP established hash table entries: 8192 (order: 3, 32768 bytes) TCP bind hash table entries: 8192 (order: 4, 65536 bytes) TCP: Hash tables configured (established 8192 bind 8192) UDP hash table entries: 512 (order: 2, 16384 bytes) UDP-Lite hash table entries: 512 (order: 2, 16384 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. CPU PMU: Failed to parse /soc/pmu/interrupt-affinity[0] hw perfevents: enabled with armv7_cortex_a9 PMU driver, 7 counters available imx rpmsg driver is registered. futex hash table entries: 1024 (order: 4, 65536 bytes) VFS: Disk quotas dquot_6.6.0 VFS: Dquot-cache hash table entries: 1024 (order 0, 4096 bytes) 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.23) bounce: pool size: 64 pages io scheduler noop registered io scheduler deadline registered io scheduler cfq registered (default) imx-weim 21b8000.weim: Driver registered. MIPI DSI driver module loaded MIPI DSI driver module loaded 20e0000.hdmi_video supply HDMI not found, using dummy regulator mxc_hdmi 20e0000.hdmi_video: Detected HDMI controller 0x13:0xa:0xa0:0xc1 fbcvt: 1920x1080@60: CVT Name - 2.073M9 mxc_sdc_fb fb@0: registered mxc display driver hdmi imx-ipuv3 2400000.ipu: IPU DMFC DP HIGH RESOLUTION: 1(0,1), 5B(2~5), 5F(6,7) Console: switching to colour frame buffer device 240x67 imx-sdma 20ec000.sdma: no iram assigned, using external mem imx-sdma 20ec000.sdma: no event needs to be remapped imx-sdma 20ec000.sdma: loaded firmware 3.3 imx-sdma 20ec000.sdma: initialized 2020000.serial: ttymxc0 at MMIO 0x2020000 (irq = 26, base_baud = 5000000) is a IMX console [ttymxc0] enabled 21e8000.serial: ttymxc1 at MMIO 0x21e8000 (irq = 299, base_baud = 5000000) is a IMX 21ec000.serial: ttymxc2 at MMIO 0x21ec000 (irq = 300, base_baud = 5000000) is a IMX 21f0000.serial: ttymxc3 at MMIO 0x21f0000 (irq = 301, base_baud = 5000000) is a IMX 21f4000.serial: ttymxc4 at MMIO 0x21f4000 (irq = 302, base_baud = 5000000) is a IMX imx sema4 driver is registered. [drm] Initialized drm 1.1.0 20060810 [drm] Initialized vivante 1.0.0 20120216 on minor 0 brd: module loaded loop: module loaded ahci-imx 2200000.sata: fsl,transmit-level-mV not specified, using 00000024 ahci-imx 2200000.sata: fsl,transmit-boost-mdB not specified, using 00000480 ahci-imx 2200000.sata: fsl,transmit-atten-16ths not specified, using 00002000 ahci-imx 2200000.sata: fsl,receive-eq-mdB not specified, using 05000000 ahci-imx 2200000.sata: SSS flag set, parallel bus scan disabled ahci-imx 2200000.sata: AHCI 0001.0300 32 slots 1 ports 3 Gbps 0x1 impl platform mode ahci-imx 2200000.sata: flags: ncq sntf stag pm led clo only pmp pio slum part ccc apst scsi host0: ahci-imx ata1: SATA max UDMA/133 mmio [mem 0x02200000-0x02203fff] port 0x100 irq 316 m25p80 spi0.0: found sst25vf032b, expected m25p32 m25p80 spi0.0: sst25vf032b (4096 Kbytes) spi_imx 2008000.ecspi: probed spi_imx 200c000.ecspi: probed CAN device driver interface 2090000.flexcan supply xceiver not found, using dummy regulator flexcan 2090000.flexcan: device registered (reg_base=f0348000, irq=33) 2188000.ethernet supply phy not found, using dummy regulator pps pps0: new PPS source ptp0 libphy: fec_enet_mii_bus: probed fec 2188000.ethernet eth0: registered PHC device 0 ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver ehci-pci: EHCI PCI platform driver ehci-mxc: Freescale On-Chip EHCI Host driver usbcore: registered new interface driver usb-storage usbcore: registered new interface driver usb_ehset_test 2184800.usbmisc supply vbus-wakeup 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 mousedev: PS/2 mouse device common for all mice snvs_rtc 20cc000.snvs:snvs-rtc-lp: rtc core: registered 20cc000.snvs:snvs-r 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 mxc_v4l2_output v4l2_out: V4L2 device registered as video16 mxc_v4l2_output v4l2_out: V4L2 device registered as video17 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 /soc/aips-bus@02100000/usdhc@02198000: voltage-ranges unspecified sdhci-esdhc-imx 2198000.usdhc: Got WP GPIO sdhci-esdhc-imx 2198000.usdhc: No vmmc regulator found sdhci-esdhc-imx 2198000.usdhc: No vqmmc regulator found mmc2: SDHCI controller on 2198000.usdhc [2198000.usdhc] using ADMA mxc_vpu 2040000.vpu_fsl: VPU initialized mxc_vdoa 21e4000.vdoa: i.MX Video Data Order Adapter(VDOA) driver probed mxc_hdmi_cec soc:hdmi_cec@00120000: HDMI CEC initialized caam 2100000.caam: Entropy delay = 3200 caam 2100000.caam: Instantiated RNG4 SH0 usb 1-1: new high-speed USB device number 2 using ci_hdrc caam 2100000.caam: Instantiated RNG4 SH1 caam 2100000.caam: device ID = 0x0a16010000000000 (Era -524) caam 2100000.caam: job rings = 2, qi = 0 ata1: SATA link up 3.0 Gbps (SStatus 123 SControl 300) ata1.00: ATA-9: 8GB SATA Flash Drive, SFDK003A, max UDMA/100 ata1.00: 15649200 sectors, multi 1: LBA48 NCQ (depth 31/32) ata1.00: configured for UDMA/100 caam algorithms registered in /proc/crypto caam_jr 2101000.jr0: registering rng-caam scsi 0:0:0:0: Direct-Access ATA 8GB SATA Flash D 003A PQ: 0 ANSI: 5 platform caam_sm: blkkey_ex: 4 keystore units available sd 0:0:0:0: [sda] 15649200 512-byte logical blocks: (8.01 GB/7.46 GiB) sd 0:0:0:0: [sda] Write Protect is off sd 0:0:0:0: [sda] Write cache: enabled, read cache: enabled, doesnt support DPO or FUA sda: sda1 sda2 sd 0:0:0:0: [sda] Attached SCSI disk platform caam_sm: 64-bit clear key: platform caam_sm: [0000] 00 01 02 03 04 0f 06 07 platform caam_sm: 64-bit black key: usb-storage 1-1:1.0: USB Mass Storage device detected scsi host1: usb-storage 1-1:1.0 platform caam_sm: [0000] 45 c1 02 fe 83 06 66 f2 platform caam_sm: [0008] a8 59 af 09 22 96 2d 4d platform caam_sm: 128-bit clear key: platform caam_sm: [0000] 00 01 02 03 04 0f 06 07 platform caam_sm: [0008] 08 09 0a 0b 0c 0d 0e 0f platform caam_sm: 128-bit black key: platform caam_sm: [0000] 24 a6 07 2a 93 fd 7d 92 platform caam_sm: [0008] 7f 09 77 89 6f a6 8a 58 platform caam_sm: 192-bit clear key: platform caam_sm: [0000] 00 01 02 03 04 0f 06 07 platform caam_sm: [0008] 08 09 0a 0b 0c 0d 0e 0f platform caam_sm: [0016] 10 11 12 13 14 15 16 17 platform caam_sm: 192-bit black key: platform caam_sm: [0000] 65 93 2d 72 de 1d 53 89 platform caam_sm: [0008] 60 3c 6a ba fa 3d fc 61 platform caam_sm: [0016] 81 1b 1d 9a d1 94 c5 3f platform caam_sm: [0024] 3a 48 a4 5d 77 17 b4 72 platform caam_sm: 256-bit clear key: platform caam_sm: [0000] 00 01 02 03 04 0f 06 07 platform caam_sm: [0008] 08 09 0a 0b 0c 0d 0e 0f platform caam_sm: [0016] 10 11 12 13 14 15 16 17 platform caam_sm: [0024] 18 19 1a 1b 1c 1d 1e 1f platform caam_sm: 256-bit black key: platform caam_sm: [0000] 62 98 f0 63 fd 45 55 58 platform caam_sm: [0008] 7f b1 04 83 28 ee e4 ce platform caam_sm: [0016] 4e 73 d0 75 68 c1 34 91 platform caam_sm: [0024] 9d f7 0c 2d ba 33 7d 05 platform caam_sm: 64-bit unwritten blob: platform caam_sm: [0000] 00 00 00 00 00 00 00 00 platform caam_sm: [0008] 00 00 00 00 00 00 00 00 platform caam_sm: [0016] 00 00 00 00 00 00 00 00 platform caam_sm: [0024] 00 00 00 00 00 00 00 00 platform caam_sm: [0032] 00 00 00 00 00 00 00 00 platform caam_sm: [0040] 00 00 00 00 00 00 00 00 platform caam_sm: [0048] 00 00 00 00 00 00 00 00 platform caam_sm: [0056] 00 00 00 00 00 00 00 00 platform caam_sm: [0064] 00 00 00 00 00 00 00 00 platform caam_sm: [0072] 00 00 00 00 00 00 00 00 platform caam_sm: [0080] 00 00 00 00 00 00 00 00 platform caam_sm: [0088] 00 00 00 00 00 00 00 00 platform caam_sm: 128-bit unwritten blob: platform caam_sm: [0000] 00 00 00 00 00 00 00 00 platform caam_sm: [0008] 00 00 00 00 00 00 00 00 platform caam_sm: [0016] 00 00 00 00 00 00 00 00 platform caam_sm: [0024] 00 00 00 00 00 00 00 00 platform caam_sm: [0032] 00 00 00 00 00 00 00 00 platform caam_sm: [0040] 00 00 00 00 00 00 00 00 platform caam_sm: [0048] 00 00 00 00 00 00 00 00 platform caam_sm: [0056] 00 00 00 00 00 00 00 00 platform caam_sm: [0064] 00 00 00 00 00 00 00 00 platform caam_sm: [0072] 00 00 00 00 00 00 00 00 platform caam_sm: [0080] 00 00 00 00 00 00 00 00 platform caam_sm: [0088] 00 00 00 00 00 00 00 00 platform caam_sm: 196-bit unwritten blob: platform caam_sm: [0000] 00 00 00 00 00 00 00 00 platform caam_sm: [0008] 00 00 00 00 00 00 00 00 platform caam_sm: [0016] 00 00 00 00 00 00 00 00 platform caam_sm: [0024] 00 00 00 00 00 00 00 00 platform caam_sm: [0032] 00 00 00 00 00 00 00 00 platform caam_sm: [0040] 00 00 00 00 00 00 00 00 platform caam_sm: [0048] 00 00 00 00 00 00 00 00 platform caam_sm: [0056] 00 00 00 00 00 00 00 00 platform caam_sm: [0064] 00 00 00 00 00 00 00 00 platform caam_sm: [0072] 00 00 00 00 00 00 00 00 platform caam_sm: [0080] 00 00 00 00 00 00 00 00 platform caam_sm: [0088] 00 00 00 00 00 00 00 00 platform caam_sm: 256-bit unwritten blob: platform caam_sm: [0000] 00 00 00 00 00 00 00 00 platform caam_sm: [0008] 00 00 00 00 00 00 00 00 platform caam_sm: [0016] 00 00 00 00 00 00 00 00 platform caam_sm: [0024] 00 00 00 00 00 00 00 00 platform caam_sm: [0032] 00 00 00 00 00 00 00 00 platform caam_sm: [0040] 00 00 00 00 00 00 00 00 platform caam_sm: [0048] 00 00 00 00 00 00 00 00 platform caam_sm: [0056] 00 00 00 00 00 00 00 00 platform caam_sm: [0064] 00 00 00 00 00 00 00 00 platform caam_sm: [0072] 00 00 00 00 00 00 00 00 platform caam_sm: [0080] 00 00 00 00 00 00 00 00 platform caam_sm: [0088] 00 00 00 00 00 00 00 00 platform caam_sm: 64-bit black key in blob: platform caam_sm: [0000] 5a 24 81 f6 c4 54 14 c3 platform caam_sm: [0008] a8 5a b8 88 3c fd 27 71 platform caam_sm: [0016] 9e 65 96 3c f1 af 31 e1 platform caam_sm: [0024] f0 34 fc 46 ca d5 0b 5e platform caam_sm: [0032] d2 0d 73 ee d1 9e e0 64 platform caam_sm: [0040] 26 2c 11 77 e7 25 fb fc platform caam_sm: [0048] f0 3c 05 22 07 5f ec 7b platform caam_sm: [0056] 00 00 00 00 00 00 00 00 platform caam_sm: [0064] 00 00 00 00 00 00 00 00 platform caam_sm: [0072] 00 00 00 00 00 00 00 00 platform caam_sm: [0080] 00 00 00 00 00 00 00 00 platform caam_sm: [0088] 00 00 00 00 00 00 00 00 platform caam_sm: 128-bit black key in blob: platform caam_sm: [0000] 60 7f 9a 09 9e 86 cc 88 platform caam_sm: [0008] f5 e8 fa 04 be d9 b2 31 platform caam_sm: [0016] a8 b7 8c 96 64 c8 72 bd platform caam_sm: [0024] e3 62 d0 0a 54 41 bd 6b platform caam_sm: [0032] c6 5c 5b 36 55 cb 94 67 platform caam_sm: [0040] 87 5b 15 9b 8b 66 e0 c9 platform caam_sm: [0048] 42 5a 02 56 df f8 66 d8 platform caam_sm: [0056] 9a 40 98 fc 91 0c b1 52 platform caam_sm: [0064] 00 00 00 00 00 00 00 00 platform caam_sm: [0072] 00 00 00 00 00 00 00 00 platform caam_sm: [0080] 00 00 00 00 00 00 00 00 platform caam_sm: [0088] 00 00 00 00 00 00 00 00 platform caam_sm: 192-bit black key in blob: platform caam_sm: [0000] 64 3d ca c5 9a 0b e1 a3 platform caam_sm: [0008] da cd f7 7a e4 52 17 1b platform caam_sm: [0016] fe 4c 9c 72 bd 0e 31 d3 platform caam_sm: [0024] d5 d3 51 59 7a 7a 65 f7 platform caam_sm: [0032] b9 52 1c cc 9a 60 ed 65 platform caam_sm: [0040] b0 bf d1 ed c8 27 29 85 platform caam_sm: [0048] e8 e8 96 11 98 c4 91 68 platform caam_sm: [0056] 40 5e bc 4b 78 40 68 1c platform caam_sm: [0064] c5 98 46 42 81 7d 05 8f platform caam_sm: [0072] 00 00 00 00 00 00 00 00 platform caam_sm: [0080] 00 00 00 00 00 00 00 00 platform caam_sm: [0088] 00 00 00 00 00 00 00 00 platform caam_sm: 256-bit black key in blob: platform caam_sm: [0000] 03 11 89 c9 94 c7 15 3a platform caam_sm: [0008] bf c8 ad ad a2 6b fd 58 platform caam_sm: [0016] 91 78 d1 5d 0e 97 26 72 platform caam_sm: [0024] 1b f6 8f e5 a8 64 8e a5 platform caam_sm: [0032] 94 e8 d3 30 0b 5f 09 78 platform caam_sm: [0040] 37 9a 56 01 84 fa 09 eb platform caam_sm: [0048] 7c c1 e1 1d 39 cf 5a c4 platform caam_sm: [0056] c4 78 eb 74 7a b8 f5 e6 platform caam_sm: [0064] a2 6a 54 ae d8 03 75 cd platform caam_sm: [0072] 6f 72 00 52 55 b3 eb ce platform caam_sm: [0080] 00 00 00 00 00 00 00 00 platform caam_sm: [0088] 00 00 00 00 00 00 00 00 platform caam_sm: restored 64-bit black key: platform caam_sm: [0000] ae 3b b7 d9 3a 4e 46 51 platform caam_sm: [0008] f4 2e 96 f0 3c f8 ed f8 platform caam_sm: restored 128-bit black key: platform caam_sm: [0000] 24 a6 07 2a 93 fd 7d 92 platform caam_sm: [0008] 7f 09 77 89 6f a6 8a 58 platform caam_sm: restored 192-bit black key: platform caam_sm: [0000] 65 93 2d 72 de 1d 53 89 platform caam_sm: [0008] 60 3c 6a ba fa 3d fc 61 platform caam_sm: [0016] bc 05 26 22 c8 56 84 5e platform caam_sm: [0024] 69 34 6f 33 80 7b ae fb platform caam_sm: restored 256-bit black key: platform caam_sm: [0000] 62 98 f0 63 fd 45 55 58 platform caam_sm: [0008] 7f b1 04 83 28 ee e4 ce platform caam_sm: [0016] 4e 73 d0 75 68 c1 34 91 platform caam_sm: [0024] 9d f7 0c 2d ba 33 7d 05 snvs-secvio 20cc000.caam-snvs: cant get snvs clock snvs-secvio 20cc000.caam-snvs: violation handlers armed - non-secure state usbcore: registered new interface driver usbhid usbhid: USB HID core driver fsl-asrc 2034000.asrc: driver registered imx-audio-hdmi sound-hdmi: hdmi-hifi <-> soc:hdmi_audio@00120000 mapping ok NET: Registered protocol family 26 NET: Registered protocol family 10 sit: IPv6 over IPv4 tunneling driver NET: Registered protocol family 17 can: controller area network core (rev 20120528 abi 9) NET: Registered protocol family 29 can: raw protocol (rev 20120528) can: broadcast manager protocol (rev 20120528 t) can: netlink gateway (rev 20130117) 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 Key type dns_resolver registered remove 396MHz OPP for VPU running at 352MHz! increase SOC/PU voltage for VPU352MHz 1ffc000.pcie supply pcie-bus not found, using dummy regulator imx6q-pcie 1ffc000.pcie: phy link never came up imx6q-pcie 1ffc000.pcie: failed to initialize host imx6q-pcie: probe of 1ffc000.pcie failed with error -22 input: gpio-keys as /devices/soc0/gpio-keys/input/input0 snvs_rtc 20cc000.snvs:snvs-rtc-lp: setting system clock to 2017-07-30 10:54:38 UTC (1501412078) usb_otg_vbus: disabling ALSA device list: #0: imx-hdmi-soc scsi 1:0:0:0: Direct-Access ADATA USB Flash Drive 1100 PQ: 0 ANSI: 4 sd 1:0:0:0: [sdb] 15572992 512-byte logical blocks: (7.97 GB/7.43 GiB) sd 1:0:0:0: [sdb] Write Protect is off sd 1:0:0:0: [sdb] No Caching mode page found sd 1:0:0:0: [sdb] Assuming drive cache: write through sdb: sdb1 sd 1:0:0:0: [sdb] Attached SCSI removable disk EXT3-fs (sda2): error: couldnt mount because of unsupported optional features (240) EXT2-fs (sda2): error: couldnt mount because of unsupported optional features (240) EXT4-fs (sda2): mounted filesystem with ordered data mode. Opts: (null) VFS: Mounted root (ext4 filesystem) on device 8:2. devtmpfs: mounted Freeing unused kernel memory: 432K (c0aaa000 - c0b16000) INIT: version 2.88 booting Starting udev udev: Not using udev cache because of changes detected in the following files: udev: /proc/version /proc/cmdline /proc/devices udev: lib/udev/rules.d/* etc/udev/rules.d/* udev: The udev cache will be regenerated. To identify the detected changes, udev: compare the cached sysconf at /etc/udev/cache.data udev: against the current sysconf at /dev/shm/udev.cache udevd[203]: starting version 3.1.5 random: udevd urandom read with 39 bits of entropy available Galcore version 5.0.11.41671 ov5647_read_reg(mipi):reg=300a ret=-5 camera ov5647_mipi is not found adv7610_video: HDMI receiver adv7610 is found ERROR: v4l2 capture: slave not found! EXT4-fs (sda2): re-mounted. Opts: (null) bootlogd: cannot allocate pseudo tty: No such file or directory Populating dev cache ALSA: Restoring mixer settings... INIT: Entering runlevel: 5 Configuring network interfaces... fec 2188000.ethernet eth0: Freescale FEC PHY driver [Micrel KSZ9031 Gigabit PHY] (mii_bus:phy_addr=2188000.ethernet:03, irq=-1) IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready done. Starting Xserver Starting system message bus: dbus. Starting Connection Manager random: nonblocking pool is initialized power_down_callback: ipu0/csi0 Starting Dropbear SSH server: dropbear. Starting rpcbind daemon...done. starting statd: done Starting advanced power management daemon: No APM support in kernel (failed.) Starting atd: OK exportfs: cant open /etc/exports for reading NFS daemon support not enabled in kernel Starting system log daemon...0 Starting kernel log daemon...0 [ ok ]rting Avahi mDNS/DNS-SD Daemon: avahi-daemon Starting Telephony daemon Starting Linux NFC daemon Starting crond: OK Starting autohdmi: imx-hdmi-audio imx-hdmi-audio: HDMI Video is not ready! imx-hdmi-audio imx-hdmi-audio: ASoC: cant open platform imx-hdmi-audio: -22 imx-hdmi-audio imx-hdmi-audio: HDMI Video is not ready! imx-hdmi-audio imx-hdmi-audio: ASoC: cant open platform imx-hdmi-audio: -22 imx-hdmi-audio imx-hdmi-audio: HDMI Video is not ready! imx-hdmi-audio imx-hdmi-audio: ASoC: cant open platform imx-hdmi-audio: -22 imx-hdmi-audio imx-hdmi-audio: HDMI Video is not ready! imx-hdmi-audio imx-hdmi-audio: ASoC: cant open platform imx-hdmi-audio: -22 imx-hdmi-audio imx-hdmi-audio: HDMI Video is not ready! imx-hdmi-audio imx-hdmi-audio: ASoC: cant open platform imx-hdmi-audio: -22 imx-hdmi-audio imx-hdmi-audio: HDMI Video is not ready! imx-hdmi-audio imx-hdmi-audio: ASoC: cant open platform imx-hdmi-audio: -22 imx-hdmi-audio imx-hdmi-audio: HDMI Video is not ready! imx-hdmi-audio imx-hdmi-audio: ASoC: cant open platform imx-hdmi-audio: -22 imx-hdmi-audio imx-hdmi-audio: HDMI Video is not ready! imx-hdmi-audio imx-hdmi-audio: ASoC: cant open platform imx-hdmi-audio: -22 Running local boot scripts (/etc/rc.local). Freescale i.MX Release Distro 4.1.15-2.1.0 imx6-tinyrexultra /dev/ttymxc0 imx6-tinyrexultra login: