Multi Source Translation Content

キャンセル
次の結果を表示 
表示  限定  | 次の代わりに検索 
もしかして: 

Multi Source Translation Content

ディスカッション

ソート順:
使用 8x DPDMUX 加载静态 DPL 失败 嗨,社区、 成功使用动态创建 DPDMUX 和 DPNI,并通过以下命令生成 DPL: 8x ls-addni --fs-entries=8 --num-queues=8 -n source /usr/local/dpdk/dpaa2/dynamic_dpl.sh ... 8x restool dpdmux create 8x restool dprc connect dprc.1 --endpoint1= .n.0/1/2 --endpoint2= / /dpni.k> restool dprc generate-dpl dprc.1> dpl-8-dpdmux.dts 使用 dpl-8-dpdmux.dtb(由 dtc 工具生成)更新静态 DPL,以便 uboot 启动 MC 布局。 错误显示为 "吹": [E, mem_mng_get_phys_mem:655] 主内存。管理器内存分配失败 [E, mem_mng_get_phys_mem:658] Required size 0x000040000 alignment 0x000000100 exceeds available memory for partition ID 7 [E, init_bman_bp:399, DPDMUX] ID[6] - dpbp_allocate_buffers(),分配 dpbp 缓冲区失败 [E, init_infrastructure:3750, DPDMUX] swlib_init_bman_bp :-12 [E, dpdmux_init:4487, DPDMUX] init_infrastructure : -12 [E, mem_mng_get_phys_mem:655] MAJOR mem.管理器内存分配失败 [E, mem_mng_get_phys_mem:658] Required size 0x000040000 alignment 0x000000100 exceeds available memory for partition ID 7 [E, init_bman_bp:399, DPDMUX] ID[7] - dpbp_allocate_buffers(), 分配 dpbp 缓冲区失败 [E, init_infrastructure:3750, DPDMUX] swlib_init_bman_bp :-12 [E, dpdmux_init:4487, DPDMUX] init_infrastructure : -12 [E, resman_is_link_permitted:6375, RESMAN] Object wasn't found [E, linkman_probe_cb:205] No common ancestor - Failed to connect dpdmux@6 and dpmac@9 [E, subnode_process:155] Probing module 'connection' return error code -1.继续 dpl 处理... [E, resman_is_link_permitted:6375, RESMAN] 对象未找到 [E, linkman_probe_cb:205] 没有共同祖先 - 连接 dpdmux@6 和 dpni@15 失败 [E, subnode_process:155] 探测模块 'connection' 返回错误代码 -1.继续 dpl 处理... [E, resman_is_link_permitted:6375, RESMAN] Object wasn't found [E, linkman_probe_cb:205] No common ancestor - Failed to connect dpdmux@6 and dpni@7 [E, subnode_process:155] Probing module 'connection' return error code -1.继续 dpl 处理... [E, resman_is_link_permitted:6375, RESMAN] 对象未找到 [E, linkman_probe_cb:205] 没有共同祖先 - 连接 dpdmux@7 和 dpmac@10 失败 [E, subnode_process:155] 探测模块 'connection' 返回错误代码 -1.继续 dpl 处理... [E, resman_is_link_permitted:6375, RESMAN] 对象未找到 [E, linkman_probe_cb:205] 没有共同祖先 - 连接 dpdmux@7 和 dpni@16 失败 [E, subnode_process:155] 探测模块 'connection' 返回错误代码 -1.继续 dpl 处理... [E, resman_is_link_permitted:6375, RESMAN] 对象未找到 [E, linkman_probe_cb:205] 没有共同祖先 - 连接 dpdmux@7 和 dpni@8 失败 [E, subnode_process:155] 探测模块 'connection' 返回错误代码 -1.继续 dpl 处理... [E, dpl_process:527] 解析 "连接 "时出错。跳过处理 DPL 的其余部分。 [E, main:198] DPL 处理失败;继续... 静态 DPL 在支持与动态方式相同的布局方面是否有任何限制? QorIQ LS2 设备 Re: Failed to load static DPL with 8x DPDMUX 你好 yipingwang, 在动态创建布局时使用"--max-dmat-entries "不会改变 "restool dprc generate-dpl dprc.1 "的最终 dts。 因此,我尝试在 .dts 中添加以下元素 "mem-size "和"max-dmat-entries" 。手动 dpdmux@0 { 兼容 ="FSL,DPDMUX" ; options ="DPDMUX_OPT_CLS_MASK_SUPPORT","DPDMUX_OPT_AUTO_MAX_FRAME_LEN" ; method ="DPDMUX_METHOD_CUSTOM" ; manip ="DPDMUX_MANIP_NONE" ; num_ifs =<0x2> ; mem-size =<0x100>; // 这是我手动添加的 max-dmat-entries =<0x8>; // 这是我手动添加的 }; 遗憾的是,这并没有解决问题,MC 调试器中显示的错误信息还是一样。 还请检查随附的我的 dpl。 Re: Failed to load static DPL with 8x DPDMUX 请尝试以下方法是否可行。 创建 DPDMUX 时,请指定"--max-dmat-entries=8" 以减少资源分配。 -max-dmat-entries= DPDMUX 地址表的最大条目数。默认为 64。 如果问题仍然存在,请共享创建 DPDMUX 和生成 DPL 文件的整个控制台日志。 此外,您使用的是哪种处理器? Re: Failed to load static DPL with 8x DPDMUX 您好, 通过更正 DPL 参数名称,我设法解决了这个问题。
記事全体を表示
嵌入式系统开发的最佳 DevOps 实践 大家好 我想讨论在嵌入式系统开发中实施 DevOps 的最佳实践。我们都知道,嵌入式系统面临着独特的挑战,但结合 DevOps 原则并利用正确的 DevOps 解决方案可以大大改善我们的工作流程。 以下是我发现的一些有用的做法: 自动版本构建和 CI/CD 设置自动构建管道对于嵌入式系统至关重要。借助 CI/CD,我们可以自动测试、刷新和部署到真实设备,从而确保尽早发现错误。 固件和硬件的版本控制 将固件视为软件 — 使用 Git 或类似工具进行版本控制,以及硬件抽象层 (HAL),有助于同步管理软件和硬件依赖关系。 硬件在环 (HIL) 的持续集成 将 HIL 测试内置到您的 CI 管道中可确保您针对真实场景进行验证,而不仅仅是模拟环境。这有助于发现只有在实际硬件中才会出现的问题。 嵌入式软件的容器化 使用 容器 或类似工具进行软件环境复制可确保开发、测试和部署阶段的一致性,即使在使用嵌入式平台时也是如此。 我很想听听您的想法和其他有效的做法。您如何将 DevOps 内置到嵌入式开发工作流程中? DSC Re: Best DevOps Practices for Embedded Systems Development 我们正在努力做你所建议的事情。您有什么具体的建议吗?
記事全体を表示
How to use a GPIO(libgpiod) with gpioget/gpioset, on i.MX8Q as an example difference between gpioget and "cat /sys/class/gpio" in GPIO control: gpioget : This is a command-line utility provided by the  libgpiod  library. It is designed to interact with GPIO lines through the modern Linux GPIO character device interface ( /dev/gpiochipN ). /sys/class/gpio : This refers to the legacy sysfs interface for GPIO control in Linux. While widely used in the past, this interface has been officially deprecated in favor of the  libgpiod  character device interface since Linux kernel version 6.0 and later. Below is an example of libgpiod tested on i.MX8Q-MEK, L6.12.3 BSP. Device tree settings: We use GPIO1-05 and GPIO1-06 in this example. can put GPIO pinctrls in a specific group like “gpio_test”, or under certain driver like “gpio-keys” gpio_test: gpio-test { pinctrl-names = "default", "sleep"; pinctrl-0 = <&pinctrl_gpio_test_default>; pinctrl-1 = <&pinctrl_gpio_test_sleep>; status = "okay"; }; gpio-keys { compatible = "gpio-keys"; pinctrl-names = "default", "sleep"; pinctrl-0 = <&pinctrl_gpio_example_default>; pinctrl-1 = <&pinctrl_gpio_example_sleep>; key_wakeup2{ label = "wakeup_key"; gpios = <&lsio_gpio2 1 GPIO_ACTIVE_LOW>; linux,code = ; wakeup-source; }; pinctrl_gpio_test_default: gpiotestgrp_default { fsl,pins = < IMX8QM_LVDS0_I2C0_SDA_LSIO_GPIO1_IO07 0x06000061 IMX8QM_QSPI1A_DATA0_LSIO_GPIO4_IO26 0x06000041 IMX8QM_MIPI_CSI1_I2C0_SCL_LSIO_GPIO2_IO00 0x06000021 IMX8QM_LVDS0_I2C0_SCL_LSIO_GPIO1_IO06 0x06000021 >; }; pinctrl_gpio_test_sleep: gpiotestgrp_sleep { fsl,pins = < IMX8QM_LVDS0_I2C0_SDA_LSIO_GPIO1_IO07 0x07800061 IMX8QM_QSPI1A_DATA0_LSIO_GPIO4_IO26 0x07800041 IMX8QM_MIPI_CSI1_I2C0_SCL_LSIO_GPIO2_IO00 0x07800021 IMX8QM_LVDS0_I2C0_SCL_LSIO_GPIO1_IO06 0x07800021 >; }; pinctrl_gpio_example_default: gpioexamplegrp_default { fsl,pins = < IMX8QM_LVDS0_GPIO01_LSIO_GPIO1_IO05 0x06000021 IMX8QM_MIPI_CSI1_I2C0_SDA_LSIO_GPIO2_IO01 0x06000021 >; }; pinctrl_gpio_example_sleep: gpioexamplegrp_sleep { fsl,pins = < IMX8QM_LVDS0_GPIO01_LSIO_GPIO1_IO05 0x07800021 IMX8QM_MIPI_CSI1_I2C0_SDA_LSIO_GPIO2_IO01 0x07800021 >; }; Kernel commands to test GPIO function: gpiodetect and gpioinfo command: root@imx8qmmek:~# gpiodetect gpiochip0 [5d080000.gpio] (32 lines) gpiochip1 [5d090000.gpio] (32 lines) gpiochip2 [5d0a0000.gpio] (32 lines) gpiochip3 [5d0b0000.gpio] (32 lines) gpiochip4 [5d0c0000.gpio] (32 lines) gpiochip5 [5d0d0000.gpio] (32 lines) gpiochip6 [5d0e0000.gpio] (32 lines) gpiochip7 [5d0f0000.gpio] (32 lines) root@imx8qmmek:~# gpioinfo -c 1 gpiochip1 - 32 lines: line 0: unnamed input line 1: unnamed input line 2: unnamed input line 3: unnamed input line 4: unnamed input line 5: unnamed input line 6: unnamed output line 7: unnamed output line 8: unnamed input line 9: unnamed input line 10: unnamed input line 11: unnamed input line 12: unnamed input line 13: unnamed output consumer=regulator-pcie line 14: unnamed input line 15: unnamed input line 16: unnamed input line 17: unnamed input line 18: unnamed input line 19: unnamed input line 20: unnamed input line 21: unnamed input line 22: unnamed input line 23: unnamed input line 24: unnamed input line 25: unnamed input line 26: unnamed input line 27: unnamed input line 28: unnamed input line 29: unnamed input line 30: unnamed input line 31: unnamed input use cat /sys/kernel/debug/gpio to show current GPIO settings before GPIO1-05 and GPIO1-06 are set: root@imx8qmmek:~# cat /sys/kernel/debug/gpio gpiochip0: GPIOs 512-543, parent: platform/5d080000.gpio, 5d080000.gpio: gpio-526 ( |scl ) out lo gpio-527 ( |sda ) in lo gpiochip1: GPIOs 544-575, parent: platform/5d090000.gpio, 5d090000.gpio: gpio-557 ( |regulator-pcie ) out hi gpiochip2: GPIOs 576-607, parent: platform/5d0a0000.gpio, 5d0a0000.gpio: gpio-577 ( |wakeup_key ) in hi ACTIVE LOW gpiochip3: GPIOs 608-639, parent: platform/5d0b0000.gpio, 5d0b0000.gpio: gpio-618 ( |spi1 CS0 ) out hi ACTIVE LOW gpiochip4: GPIOs 640-671, parent: platform/5d0c0000.gpio, 5d0c0000.gpio: gpio-641 ( |enable ) out hi ACTIVE LOW gpio-643 ( |regulator-usbotg1-vb) out lo gpio-647 ( |usdhc2-vmmc ) out hi gpio-667 ( |enable ) out lo ACTIVE LOW gpio-668 ( |host-wake ) in hi ACTIVE LOW gpio-669 ( |PCIe reset ) out hi ACTIVE LOW gpiochip5: GPIOs 672-703, parent: platform/5d0d0000.gpio, 5d0d0000.gpio: gpio-673 ( |mux ) out hi gpio-693 ( |wp ) in lo gpio-694 ( |cd ) in lo ACTIVE LOW gpiochip6: GPIOs 704-735, parent: platform/5d0e0000.gpio, 5d0e0000.gpio: gpiochip7: GPIOs 736-767, parent: platform/5d0f0000.gpio, 5d0f0000.gpio: use gpioset command to set GPIO output, can also change GPIO direction(input → output) #set gpiochip1-5 and 1-6 root@imx8qmmek:~# gpioset -c gpiochip1 6=1 & [1] 700 root@imx8qmmek:~# gpioset -c gpiochip1 5=1 & [2] 702 check the changes from the commands above with cat /sys/kernel/debug/gpio and gpioinfo -c 1 : root@imx8qmmek:~# cat /sys/kernel/debug/gpio gpiochip0: GPIOs 512-543, parent: platform/5d080000.gpio, 5d080000.gpio: gpio-526 ( |scl ) out lo gpio-527 ( |sda ) in lo gpiochip1: GPIOs 544-575, parent: platform/5d090000.gpio, 5d090000.gpio: gpio-549 ( |gpioset ) out hi gpio-550 ( |gpioset ) out hi gpio-557 ( |regulator-pcie ) out hi gpiochip2: GPIOs 576-607, parent: platform/5d0a0000.gpio, 5d0a0000.gpio: gpio-577 ( |wakeup_key ) in hi ACTIVE LOW gpiochip3: GPIOs 608-639, parent: platform/5d0b0000.gpio, 5d0b0000.gpio: gpio-618 ( |spi1 CS0 ) out hi ACTIVE LOW gpiochip4: GPIOs 640-671, parent: platform/5d0c0000.gpio, 5d0c0000.gpio: gpio-641 ( |enable ) out hi ACTIVE LOW gpio-643 ( |regulator-usbotg1-vb) out lo gpio-647 ( |usdhc2-vmmc ) out hi gpio-667 ( |enable ) out lo ACTIVE LOW gpio-668 ( |host-wake ) in hi ACTIVE LOW gpio-669 ( |PCIe reset ) out hi ACTIVE LOW gpiochip5: GPIOs 672-703, parent: platform/5d0d0000.gpio, 5d0d0000.gpio: gpio-673 ( |mux ) out hi gpio-693 ( |wp ) in lo gpio-694 ( |cd ) in lo ACTIVE LOW gpiochip6: GPIOs 704-735, parent: platform/5d0e0000.gpio, 5d0e0000.gpio: gpiochip7: GPIOs 736-767, parent: platform/5d0f0000.gpio, 5d0f0000.gpio: root@imx8qmmek:~# gpioinfo -c 1 gpiochip1 - 32 lines: line 0: unnamed input line 1: unnamed input line 2: unnamed input line 3: unnamed input line 4: unnamed input line 5: unnamed output consumer=gpioset line 6: unnamed output consumer=gpioset line 7: unnamed output line 8: unnamed input line 9: unnamed input line 10: unnamed input line 11: unnamed input line 12: unnamed input line 13: unnamed output consumer=regulator-pcie   How to enable legacy GPIO SYSFS(default disabled on L6 kernel and above) refer to the comment of this commit: https://github.com/nxp-imx/linux-imx/commit/3b4feb21158f873269ff3fbe2fe8d23a88d64b24 commit 3b4feb21158f873269ff3fbe2fe8d23a88d64b24 Author: Linus Walleij Date: Tue Nov 10 15:27:24 2020 +0100 gpio: sysfs: Enforce character device If users select sysfs support they get the character device as well so that end-users cannot complain that they "only have sysfs on my system". They should have the character device at all times. If someone is in so dire need of stripping out the character device while still enabling the sysfs ABI they can very well patch the kernel. Also only show this obsolete option to expert users. Signed-off-by: Linus Walleij Link: <> diff --git a/drivers/gpio/Kconfig b/drivers/gpio/Kconfig index 5d4de5cd6759..4dd566f7ea39 100644 --- a/drivers/gpio/Kconfig +++ b/drivers/gpio/Kconfig @@ -59,8 +59,9 @@ config DEBUG_GPIO that are most common when setting up new platforms or boards. config GPIO_SYSFS - bool "/sys/class/gpio/... (sysfs interface)" + bool "/sys/class/gpio/... (sysfs interface)" if EXPERT depends on SYSFS + select GPIO_CDEV # We need to encourage the new ABI help Say Y here to add the legacy sysfs interface for GPIOs. To enable GPIO_SYSFS, from the patch. The best way is CONFIG_EXPERT = y, then enable CONFIG_GPIO_SYSFS=Y. not need to revert the patch. SYSFS, as legacy interface for GPIO control in Linux. While widely used in the past, this interface has been officially deprecated in favor of the libgpiod character device interface since Linux kernel version 6.0 and later. i.MX Processors
記事全体を表示
文本区域错误问题 我创建了几个 Textarea 元器件。当我使用键盘在其中一个输入框中输入内容,然后点击"Finish" 时,键盘会自动切换到另一个文本区进行进一步操作。如何解决这个问题?视频地址为https://github.com/monkeyhorse/guiguider.git Re: Textarea bug issue 嗨,@monkeyhorse、 谢谢你的澄清。我发现这个问题似乎是在模拟过程中出现的。是否只有在模拟时才会出现这种情况?或者在板上运行 GUI 时也是如此? Re: Textarea bug issue @EdwinHz是的,我使用的是最新版本。 Re: Textarea bug issue 嗨,@monkeyhorse、 感谢您的更新。您使用的是哪个版本的 GUI Guider/LVGL?它们是最新的吗(GUI Guider 1.9.1 和 LVGL 9.2.1)? Re: Textarea bug issue 现在我发现,setup_scr_screen.c 中 Textarea 的创建顺序是造成这个问题的原因,但我仍然不知道如何解决这个问题。
記事全体を表示
MaaxBoard (NXP i.MX93) で GPIO およびタイマー ピンを構成し、pinmux 設定を有効にする方法は? 私は MaaxBoard (NXP i.MX93 プロセッサベース) を使用していますが、次のユースCASEの pinmux とピン構成の設定について支援が必要です。 トリガー ピン (出力) として GPIO ピンが 1 つ必要です。 1 つのピンをタイマー入力 (TPM 入力キャプチャまたは PWM) 用に構成する必要があります。 問題は次の通りです: GPIO ピンが読み取り/書き込み操作に正しく応答しません。 pinmux 構成が欠落しているか間違っているか、デバイス ツリーが適切に更新されていないと思われます。 以下の点についてご協力いただけますでしょうか? MaaxBoard のピン配置とリファレンス マニュアルで GPIO とタイマーの正しいピン名とパッドを見つけるにはどうすればよいでしょうか? 必要なピン多重化を有効にするには、デバイス ツリー (.dts) にどのような変更を加える必要がありますか。 GPIOピンを出力用に設定し、ユーザー空間からの読み取り/書き込みを許可する タイマーピンを入力キャプチャまたはPWM用に設定する MaaxBoard で GPIO が正しく動作しない原因となる一般的な問題はありますか? 1 つの GPIO を読み取りと書き込み用に設定する方法の例はありますか?そのために、pin_mux.c や app.h など、何を更新する必要がありますか? i.MX93 #マックスボード MCX C Re: How to configure GPIO and Timer pins on MaaxBoard (NXP i.MX93) and enable pinmux settings ? こんにちは、Manjunathb MaaxBoard は Element14 によって製造およびサポートされています。所有者に問い合わせて、BSP とボードに関する詳しい情報を入手することをお勧めします。 MaaXBoard OSM93 - element14 コミュニティ MaaXBoardハードウェアデザイン - element14コミュニティ    i.MX 93 EVK 用の NXP MCUXpresso SDK も参照できます。 SDKは以下からダウンロードできます。 MCUXpresso SDK Builder パッケージ内には TPM と GPIO / タイマーのデモが含まれています。 よろしくお願いします。 ダニエル よろしくお願いします。 ダニエル Re: How to configure GPIO and Timer pins on MaaxBoard (NXP i.MX93) and enable pinmux settings ? -> ここで参考のためにコードを添付しました。1 つの GPIO を構成して読み取りおよび書き込み操作を実行するだけで、コードを次のように更新しました。   /* * 著作権 (c) 2015、Freescale Semiconductor, Inc. * 著作権 2016-2017 NXP * 無断転載を禁じます。 * * SPDXライセンス識別子: BSD-3条項 */ #include "board.h" #include "fsl_debug_console.h" #include "fsl_rgpio.h" #include "app.h" /**************************************************************************************** * 定義 **********************************************************************************/ /**************************************************************************************** * プロトタイプ **********************************************************************************/ /*! * @briefしばらく遅延します。 */ void遅延( void ); /**************************************************************************************** * 変数 **********************************************************************************/ /**************************************************************************************** * コード **********************************************************************************/ /*! * @briefメイン関数 */ int main( void ) { /*[手動で]-> GPIO入力のinit構造体を定義する*/ rgpio_pin_config_t 入力構成 = {         kRGPIO_デジタル入力、         0 , }; /* ボードピン、クロック、デバッグコンソールの初期化 */ BOARD_InitHardware(); /* 端末にメモを印刷します。*/     PRINTF ( "\r\n GPIO は状態の読み取りを開始します.....\r\n" ); /* 出力 LED GPIO を初期化します。*/ RGPIO_PinInit( BOARD_LED_RGPIO 、 BOARD_LED_RGPIO_PIN 、 &input_config);     一方( 1 )     {         uint32_t val = RGPIO_PinRead( BOARD_LED_RGPIO 、 BOARD_LED_RGPIO_PIN );         PRINTF ( "GPIO%d の現在の値は : %d\r\n" , BOARD_LED_RGPIO_PIN ,val); SDK_DelayAtLeastUs( 500000U , SystemCoreClock);    } } ######################################################## /* * 著作権 2022 NXP * * SPDXライセンス識別子: BSD-3条項 */ /******************************************************************************************************************************** * このファイルは、MCUXpresso Config Tools によって生成されました。このファイルに対して手動で行われた編集 * それぞれの MCUXpresso Config Tools を使用してこのファイルを更新すると、上書きされます。 ******************************************************************************************************************************/ /* * 以下のテキストはツールの設定として使用されます ************************************* !!グローバル情報 製品: Pins v12.0 プロセッサ: MIMX9352xxxxM パッケージID: MIMX9352DVVXM mcu_data: ksdk2_0 プロセッサバージョン: 0.12.3 * このコメントを変更する際は注意してください - これはツールの YAML 設定です *********** */ #include "pin_mux.h" /* 関数 ************************************************************************************************************ * * 関数名: BOARD_InitBootPins * 説明: 初期化関数を呼び出します。 * * 終わり ****************************************************************************************************************/ BOARD_InitBootPins を無効にします( void ) { BOARD_InitPins(); } /* * 以下のテキストはツールの設定として使用されます ************************************* ボード初期ピン: - オプション: {callFromInitBoot: 'true', coreID: cm33} - ピンリスト: - {pin_num: F20、ペリフェラル: LPUART2、信号: lpuart_rx、pin_signal: UART2_RXD、HYS: DISABLED、FSEL1: SlOW_SLEW_RATE、DSE: NO_DRIVE} - {pin_num: F21、ペリフェラル: LPUART2、信号: lpuart_tx、pin_signal: UART2_TXD、HYS: 無効、PD: 無効、FSEL1: SlOW_SLEW_RATE} - {pin_num: L17、ペリフェラル: GPIO2、信号: 'gpio_io, 04'、ピン信号: GPIO_IO04、HYS: 無効} * このコメントを変更する際は注意してください - これはツールの YAML 設定です *********** */ /* 関数 ************************************************************************************************************ * * 関数名: BOARD_InitPins * 説明: ピンのルーティングとオプションでピンの電気機能を構成します。 * * 終わり ****************************************************************************************************************/ void BOARD_InitPins( void ) { /*!< コアに割り当てられた関数: undefined[cm33] */     // IOMUXC_SetPinMux(IOMUXC_PAD_GPIO_IO04__GPIO2_IO04, 0U); IOMUXC_SetPinMux( IOMUXC_PAD_UART2_RXD__LPUART2_RX 、 0U ); IOMUXC_SetPinMux( IOMUXC_PAD_UART2_TXD__LPUART2_TX 、 0U ); /* 手動で追加 (開始)*/ IOMUXC_SetPinMux( IOMUXC_PAD_GPIO_IO13__GPIO2_IO13 , 0U ); IOMUXC_SetPinConfig( IOMUXC_PAD_GPIO_IO13__GPIO2_IO13 、 /* 手動で追加 (終了)*/     // IOMUXC_SetPinConfig(IOMUXC_PAD_GPIO_IO04__GPIO2_IO04,     // IOMUXC_PAD_PD_MASK); IOMUXC_SetPinConfig( IOMUXC_PAD_UART2_RXD__LPUART2_RX 、                         IOMUXC_PAD_PD_MASK ); IOMUXC_SetPinConfig( IOMUXC_PAD_UART2_TXD__LPUART2_TX 、                         IOMUXC_PAD_DSE ( 15U )); } /******************************************************************************************************************************** * 終了 ******************************************************************************************************************************/ /* * 著作権 2022 NXP * * SPDXライセンス識別子: BSD-3条項 */ #ifndef _APP_H_ #define _APP_H_ /**************************************************************************************** * 定義 **********************************************************************************/ /* ${macro:start} */ #BOARD_LED_RGPIOを定義します          GPIO2 #BOARD_LED_RGPIO_PINを定義します      13U #DEFINE EXAMPLE_RGPIO_CLOCK_ROOT kCLOCK_Root_BusWakeup #DEFINE EXAMPLE_RGPIO_CLOCK_GATE kCLOCK_Gpio2 /* ${macro:end} */ /**************************************************************************************** * プロトタイプ **********************************************************************************/ /* ${prototype:start} */ BOARD_InitHardware をvoidにします。 /* ${prototype:end} */ #endif /* _APP_H_ */
記事全体を表示
SPSDK v3.1 release We are excited to annouce the release of Secure Provisioning SDK (SPSDK) 3.1 Please note this release is a new generation of SPSDK and it is NOT backward compatible to 2.x versions.  A migration guide is provided below: ⭐What's NEW: https://spsdk.readthedocs.io/en/latest/release_notes.html ⚠️Migration Guide: https://spsdk.readthedocs.io/en/latest/migration_guide.html 📦Supported Devices: https://spsdk.readthedocs.io/en/latest/devices_list.html 👇More details: Github PyPi Documentation SPSDK Plugins 3.1: Github (Plugins) PyPi (Plugins) Restricted Data Package for SPSDK 3.1: Please note that the package uses an LA_OPT license. Package will be located in the Download section. announcement
記事全体を表示
开放工业Linux ® (OpenIL)——安全、稳健、实时的工业和自动化应用_Connects China <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> OpenIL 是专为工业市场设计的 Linux ®发行版。OpenIL 是 PLC、HMI、工业控制和自动化系统的理想部署。OpenIL 是一个基于 buildroot 的开源项目,旨在为工业用途提供紧凑的文件系统,支持 LTS Linux 内核 4.1 和 4.9、Xenomai 钴核、工业 IEEE ® 1588、时间敏感网络等诸多功能。实时裸机框架支持继电器控制和机器人应用。了解 OpenIL、架构、设计目标和路线图。了解如何为 OpenIL 做出贡献并推动社区项目的发展方向。 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> OpenIL 是专为工业市场设计的 Linux ®发行版。OpenIL 是 PLC、HMI、工业控制和自动化系统的理想部署。OpenIL 是一个基于 buildroot 的开源项目,旨在为工业用途提供紧凑的文件系统,支持 LTS Linux 内核 4.1 和 4.9、Xenomai 钴核、工业 IEEE ® 1588、时间敏感网络等诸多功能。实时裸机框架支持继电器控制和机器人应用。了解 OpenIL、架构、设计目标和路线图。了解如何为 OpenIL 做出贡献并推动社区项目的发展方向。
記事全体を表示
FTF-ACC-F1259 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 同時マルチスレッド (SMT) は、独立した実行スレッドがスーパースカラー CPU パイプライン編成をより効果的に利用できるようにする高度なプロセッサ マイクロアーキテクチャ機能です。2ウェイ・スーパースカラー・パイプラインでのSMT実装は、動的消費電力の増加が比較的少ないデュアル・スレッドの同時実行性を最大化します。このセッションでは、次世代のPower Architecture e200z9プロセッサ・コアに含まれるSMT機能と、このマイクロアーキテクチャによって達成可能なパフォーマンス/パワー・メトリックの向上に焦点を当てます。 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 同時マルチスレッド (SMT) は、独立した実行スレッドがスーパースカラー CPU パイプライン編成をより効果的に利用できるようにする高度なプロセッサ マイクロアーキテクチャ機能です。2ウェイ・スーパースカラー・パイプラインでのSMT実装は、動的消費電力の増加が比較的少ないデュアル・スレッドの同時実行性を最大化します。このセッションでは、次世代のPower Architecture e200z9プロセッサ・コアに含まれるSMT機能と、このマイクロアーキテクチャによって達成可能なパフォーマンス/パワー・メトリックの向上に焦点を当てます。 日時:FTF-ACC-F1259 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 新しいe200z9はいつ発売されますか?
記事全体を表示
wxWidgets based distributed information and control systems There developed the controller uses i.MX53 + Linux. Has developed a solution for building distributed information and control systems. Prototmpy been in operation for over a year. Examples: - Control Electromagnetic stirring (mixer) http://ontecom.com/en/catalog/ems / Rusal, Krasnoyarsk. - Moniroring and management of pumping stations. - Monitoring and control of climate control systems. You can create a smart home systems and iot. There is experience with PLC (Power Line Communication) Qualcomm/Atheros. In my spare time I develop a budget solution for PLC (Power Line Communication) control / monitoring components smart home. Based on the standard IEC 61131-3 developed software - distributed information management system. The solution is cross-platform. In a single system may be computers of different architectures and various operating systems. Such signals are synchronized controller ARM / Linux, and x86 server (Win, Linux, VMS, ...) Uses wxWidgets. Articles on this subject is, but in Russian.
記事全体を表示
Installing Ubuntu Rootfs on NXP i.MX6 boards This post describes the setup detail for installing Ubuntu based distro in any i.Mx6x NXP Boards. Details are described on: 1. Select your board, Setting the host, Download and compile uboot , dtb and and the Kernel version on your board. 2. Installing the Ubuntu core, Lubuntu graphics desktop version and/or Build your own Ubuntu rootfs with debootstrap. 3. Modify rootfs and Installing needed packages 4. Setting with SD image. 5. Setting Ubuntu on target 6. Adding GPU acceleration 1: Select your board, Setting the host, Download and compile uboot , dtb and and the Kernel version on your board. Supported NXP HW boards: i.MX 6QuadPlus SABRE-SD Board and Platform i.MX 6Quad SABRE-SD Board and Platform i.MX 6DualLite SABRE-SD Board i.MX 6Quad SABRE-AI Board i.MX 6DualLite SABRE-AI Board i.MX 6SoloX SABRE-SD Board i.MX 6SoloX SABRE-AI Board Install host dependences (version tested 14.04): $ sudo apt-get install gparted git build-essential libncurses5 wget u-boot-tools zlib1g-dev ncurses-dev \ cmake libc-dev-armhf-cross pkg-config-arm-linux-gnueabihf build-essential checkinstall cmake \ pkg-config lzop libc6 libstdc++6 debootstrap qemu-user-static binfmt-support Download the compiler toolchain and extract it: $ cd ~/ $ wget -c https://releases.linaro.org/14.09/components/toolchain/binaries/gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux.tar.xz $ tar xf gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux.tar.xz Create general variable environments: $ export target=mx6q (e.g. processor: mx6sx, mx6d, mx6dl,etc) $ export board=sabresd (e.g. sabresd, sabreauto) $ export ARCH=arm $ export CROSS_COMPILE=../gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux/bin/arm-linux-gnueabihf- $ unset LDFLAGS Download u-boot At the release of this document, latest uboot version was imx_3.14.52, it should work with other version as well, so please check the proper version for your board: $ cd ~/ $ wget –c http://git.freescale.com/git/cgit.cgi/imx/uboot-imx.git/snapshot/uboot-imx-rel_imx_3.14.52_1.1.0_ga.tar.gz $ tar -xf uboot-imx-rel_imx_3.14.52_1.1.0_ga.tar.gz $ cd uboot-imx-rel_imx_3.14.52_1.1.0_ga $ make $targetboard_config    # e.g. mx6qsabresd_config $ make Linux Kernel, Firmware, headers, modules and DTS files $ cd ~/ $ wget –c http://git.freescale.com/git/cgit.cgi/imx/linux-2.6-imx.git/snapshot/linux-2.6-imx-rel_imx_3.14.52_1.1.0_ga.tar.gz $ tar xf linux-2.6-imx-rel_imx_3.14.52_1.1.0_ga.tar.gz $ cd linux-2.6-imx-rel_imx_3.14.52_1.1.0_ga $ make imx_v7_defconfig $ make menuconfig $ make -j4 zImage modules dtbs $ cd ~/ move your image to binary folder: $ sudo cp –v uboot-imx-rel_imx_3.14.52_1.1.0_ga/u-boot.imx binary/ $ sudo cp –v linux-2.6-imx-rel_imx_3.14.52_1.1.0_ga/arch/arm/boot/zImage binary/ $ sudo cp –v linux-2.6-imx-rel_imx_3.14.52_1.1.0_ga/arch/arm/boot/dts/i$target-$board.dtb binary/ Now you have the bootloader, device tree and kernel image of your board ready, let’s create the rootfs. 2: Installing the Ubuntu core, Lubuntu graphics desktop version and/or Build your own Ubuntu rootfs with debootstrap. Installing ubuntu core: $ cd ~/ $ sudo mkdir –p core /media/rootfs /media/kernel $ wget –c http://cdimage.ubuntu.com/ubuntu-core/releases/14.04/release/ubuntu-core-14.04.4-core-armhf.tar.gz $ sudo tar –xf ubuntu-core-14.04.4-core-armhf.tar.gz –C core $ sudo cp -vr core/* /media/rootfs $ cd linux-2.6-imx-rel_imx_3.14.52_1.1.0_ga $ sudo make modules_install firmware_install INSTALL_MOD_PATH=/media/rootfs/ ARCH=arm CROSS_COMPILE=../../gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux/bin/arm-linux-gnueabihf- $ sudo make ARCH=arm CROSS_COMPILE=../../gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux/bin/arm-linux-gnueabihf- headers_install INSTALL_HDR_PATH=/media/rootfs/usr Now you should have your ubuntu rootfs on /media/rootfs folder. and you can pass to part 3 of this post. Installing ubuntu Linaro LXDE: $ cd ~/ $ sudo mkdir –p core /media/rootfs /media/kernel $ wget https://releases.linaro.org/14.10/ubuntu/trusty-images/alip/linaro-trusty-alip-20141024-684.tar.gz $ sudo tar -xf linaro-trusty-alip-20141024-684.tar.gz –C core $ sudo mv core/binary/* core/ $ sudo rm –rf core/binary $ sudo cp -vr core/* /media/rootfs $ cd linux-2.6-imx-rel_imx_3.14.52_1.1.0_ga $ sudo make modules_install firmware_install INSTALL_MOD_PATH=/media/rootfs/ ARCH=arm CROSS_COMPILE=../../gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux/bin/arm-linux-gnueabihf- $ sudo make ARCH=arm CROSS_COMPILE=../../gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux/bin/arm-linux-gnueabihf- headers_install INSTALL_HDR_PATH=/media/rootfs/usr Now you should have your ubuntu rootfs on /media/rootfs folder. and you can pass to part 3 of this post. Installing with debootstrap $ cd ~/ $ target=rootfs $ distro=trusty $ sudo debootstrap --arch=armhf --foreign --include=ubuntu-keyring,apt-transport-https,ca-certificates,openssl $distro "$target" http://ports.ubuntu.com $ sudo cp /usr/bin/qemu-arm-static $target/usr/bin $ sudo cp /etc/resolv.conf $target/etc Now have a minimal Ubuntu rootfs - chroot to it and perform the 2nd stage install: $ sudo chroot $target  //Now we are in chroot # distro=trusty # export LC_ALL=C LANGUAGE=C LANG=C # /debootstrap/debootstrap --second-stage Edit the sources.list repositories # cat < /etc/apt/sources.list deb http://ports.ubuntu.com/ubuntu-ports/ $distro main restricted universe multiverse deb http://ports.ubuntu.com/ubuntu-ports/ $distro-updates main restricted universe multiverse deb http://ports.ubuntu.com/ubuntu-ports/ $distro-security main restricted universe multiverse EOT # apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 40976EAF437D05B5 # apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 3B4FE6ACC0B21F32 # apt-get update # apt -y -f install # apt-get upgrade # apt-get install nano Now you should be able to login without password, then use passwd command to set one. If you like to add custom users: # passwd root # adduser # usermod -a -G tty myuser # usermod -a -G dialout, adm, sudo, dip, plugdev myuser # visudo Under the line that looks like: root ALL=(ALL:ALL) ALL add the following (change user with your actual username) ALL=(ALL) ALL your rootfs is ready, exit chroot # exit $ sudo rm $target/etc/resolv.conf $ sudo rm $target/usr/bin/qemu-arm-static $ sudo mv rootfs/* /media/rootfs $ cd linux-2.6-imx-rel_imx_3.14.52_1.1.0_ga $ sudo make modules_install firmware_install INSTALL_MOD_PATH=/media/rootfs/ ARCH=arm CROSS_COMPILE=../../gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux/bin/arm-linux-gnueabihf- $ sudo make ARCH=arm CROSS_COMPILE=../../gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux/bin/arm-linux-gnueabihf- headers_install INSTALL_HDR_PATH=/media/rootfs/usr Now you should have your ubuntu rootfs on /media/root. 3: Modify Rootfs and Install needed packages Edit and verify the sources.list repositories $ cd /media/rootfs $ sudo cat < etc/apt/sources.list deb http://ports.ubuntu.com/ubuntu-ports/ trusty main restricted universe multiverse deb http://ports.ubuntu.com/ubuntu-ports/ trusty-updates main restricted universe multiverse deb http://ports.ubuntu.com/ubuntu-ports/ trusty-security main restricted universe multiverse EOT Edit networks interfaces and append in the existing file: $ sudo nano etc/network/interfaces auto lo iface lo inet loopback auto eth0 iface eth0 inet dhcp If you require Serial Console, remove and include an additional line at the end of the file for  ttymxc0 output as below, $ sudo nano etc/init/tty1.conf exec /sbin/getty -8 38400 tty1 exec /sbin/getty -L 115200 ttymxc0 If you like to change the localhostname: $ sudo nano etc/hostname and change to “your name” e.g. imx6Q. Set the date and time clock and update $ sudo nano /etc/rc.local  Add this: if [ `date +"%Y"` -eq "1970" ]; then                     date --set="2016-04-01" fi exit 0 (optional for Linaro rootfs) Edit passwd and remove the x in root and linaro lines $ sudo nano etc/passwd root:x:0:0:root:/root:/bin/bash linaro:x:0:0.. and change like this:                                   root::0:0:root:/root:/bin/bash linaro:::0:.. Now you are ready to program your sd image. 4: Setup microSD/SD card For these instructions, we are assuming: DISK=/dev/sdg on your HOST, cat /proc/partitions is very useful for determining the device id. $ cd ~/ $ export DISK=/dev/sdg Erase microSD/SD card: $ sudo dd if=/dev/zero of=${DISK} bs=1M count=10 Install Bootloader $ cd binary/ $ sudo dd if=u-boot.imx of=${DISK} bs=512 seek=2 $ sync Create Partition layout: $ cd ~/ $ sudo fdisk ${DISK} steps:        d ///delete all partitions currently on sd n // create new partition p // Primary partition 1 // partition number 1 2048 //default +1G // n // created 2d parition p 2 default default 1 // firts B // to be fat32 W // write partiotions $ sudo mkfs.vfat ${DISK}1 $ sudo mkfs.ext3  ${DISK}2 Mount ext3 SD partition to /media/rootfs: $ sudo mount ${DISK1} /media/kernel_target $ sudo mount ${DISK}2 /media/rootfs_target Copy Files on the SD. $ cd ~/ $ sudo cp –v binary/ i$target-$board.dtb /media/kernel_target $ sudo cp –v binary/zImage /media/kernel_target $ sudo mv /media/rootfs/* /media/rootfs_target Remove SD: $ sync $ sudo umount /media/kernel_target $ sudo umount /media/rootfs_target Boot the target, in console you should be login as root. root@imx6QSabreSD:~# 5: Setting Ubuntu on target Note: If you have issues with sudo on user UID, need to logout and log as root: imx6Q login: root Welcome to Ubuntu 14.04.4 LTS (GNU/Linux 3.14.52 armv7l) root@imx6Q:~# chown root:root /usr/bin/sudo root@imx6Q:~# chmod 4755 /usr/bin/sudo root@imx6Q:~# exit Login with or root # # apt-get update # apt-get –f install # apt-get install locales dialog wget # dpkg-reconfigure locales # apt-get upgrade Optional – install some useful packages: # apt-get install openssh-server can-utils usbutils build-essential automake autoconf libtool Get and Install the BSP packages (EULA required) # cd /home/user # mkdir –p vpu_pack # cd vpu_pack # wget http://www.nxp.com/lgfiles/NMG/MAD/YOCTO//firmware-imx-5.3.bin # wget http://www.nxp.com/lgfiles/NMG/MAD/YOCTO//imx-vpu-5.4.32.bin # wget http://www.nxp.com/lgfiles/NMG/MAD/YOCTO//libfslcodec-4.0.8.bin # wget http://www.nxp.com/lgfiles/NMG/MAD/YOCTO//imx-lib-5.1.tar.gz # chmod +x * # ./firmware-imx-5.3.bin --auto-accept --force # mkdir –p /lib/firmware/vpu # cp -ravf firmware-imx-5.3/firmware/* /lib/firmware/ # ./imx-vpu-5.4.32.bin --auto-accept --force # cd imx-vpu-* # make PLATFORM=IMX6Q all # make install # tar -xf imx-lib-5.1.tar.gz # cd  imx-lib-5.1/ # make -j1 PLATFORM="IMX6Q" # make PLATFORM="IMX6Q" install # cd .. # ./libfslcodec-4.0.8 --auto-accept –force # cd libfslcodec-* # ./autogent.sh --prefix=/usr --enable-fhw --enable-vpu # make # make install # mv /usr/lib/imx-mm/video-codec/* /usr/lib # mv /usr/lib/imx-mm/audio-codec/* /usr/lib # rm –rf /usr/lib/imx-mm/ # cd .. # mkdir –p gpu_pack # cd gpu_pack # wget http://www.nxp.com/lgfiles/NMG/MAD/YOCTO//imx-gpu-viv-5.0.11.p7.4-hfp.bin # wget http://www.nxp.com/lgfiles/NMG/MAD/YOCTO//xserver-xorg-video-imx-viv-5.0.11.p7.4.tar.gz # chmod +x * # ./imx-gpu-viv-5.0.11.p7.4-hfp –-auto-accept -–force # cd imx-gpu* # cp g2d/usr/include/* /usr/include/ # cp -d g2d/usr/lib/* /usr/lib/ # cp -Pr gpu-core/usr/* /usr # optional: install demos # cp -r gpu-demos/opt / # optional: install gpu tools # cp -axr gpu-tools/gmem-info/usr/bin/* /usr/bin/ # cd .. Installing gstreamer-imx, IPU, VPU and GPU support: Install build deps, gstreamer1.x, this step could take some time (~350MB): # apt-get install python pkg-config git gstreamer1.0-x gstreamer1.0-tools gstreamer1.0-plugins-good gstreamer1.0-plugins-bad gstreamer1.0-alsa libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev libgstreamer-plugins-good1.0-dev g++-multilib # git clone git://github.com/Freescale/gstreamer-imx.git # cd gstreamer-imx # ln –s /usr/lib/arm-linux-gnueabihf/gstreamer-1.0/ /usr/lib/gstreamer-1.0 # ./waf configure --prefix=/usr --kernel-headers=/include # ./waf # ./waf install # cd ../../ (optional) Install libimxvpuapi library: This library provides a community based open-source API to the NXP imx-vpu library (the low-level IMX6 VPU interface). # git clone git://github.com/Freescale/libimxvpuapi.git # cd libimxvpu* # ./waf configure –-prefix=/usr # ./waf # ./waf install # cd .. note './waf install' installs artifacts to its prefix + /lib/gstreamer-1.0 but they need to be installed to /usr/lib/arm-linux-gnueabihf/gstreamer-1.0 which is why we created a symlink above before installing note g2d lib required to build G2D note that x11 library is required to build EGL sink with Vivante direct textures (only needed for X11 support) note that libfslaudiocodec is required to build audio plugins Now you are ready to test gstreamer 6: Add GPU HW Acceleration for X11 NOTE: The original version of these build instructions can be found in the Gateworks wiki . Many thanks to them for writing this! IMX6 IPU, VPU, and GPU support via GStreamer and Gstreamer-imx plugins. Many of the pieces needed (firmware and source-code) are from NXP and not freely redistributable thus must be downloaded from their mirror and extracted from a shell script that forces you to read and agree to their End User License Agreement (EULA). The following instructions can be used on top of the debootstrap and should work on other sources of Ubuntu or other Linux distributions root filesystems as well You can easily add X11 support to a base image created with the debootstrap instructions above by adding a few package groups. You will need the following: X11 server - ie Xorg Display Manager - this controls the login to the X session Window Manager - manages window position, re-sizing, decorations, etc for X clients If in any case you have installed the Linaro LXDE rootfs, it includes the Xorg X11 server, the lxdm Display Manager, the openbox Window Manager, and others useful user applications including the Chromium browser, if you do not install linaro lxde and want to install it please do: this step could take some time (~650MB)   # apt-get install xinit lxde lxterminal lxappearance lxrandr lxshortcut lxinput xinit  xserver-xorg-dev mesa-utils mesa-utils-extra Notes: you will need to add a non-root user with adduser for Chromium browser to work. You may choose to set up auto-login for that user by editing /etc/lxdm/default.conf and setting the autologin property in the base section at the beginning of the config file. /etc/xdg/lubuntu/lxdm/lxdm.conf This document takes as based kernel version 3.14.52v, vivante 5.0.11p7.4 correspond to the kernel version used. you should check the BSP release notes in order to know which xserver and Vivante GPU files need to be downloaded from the NXP repos. $ sudo nano /etc/lxdm/default.conf    [base]    autologin=user To add hardware GPU acceleration to X11 you need to add some libraries and drivers provided by Freescale from the imx-gpu-viv package. This requires signing Freescales End User License Agreement (EULA). This package provides the following: libg2d - a documented low-level API to the GPU (used by things like libimxvpuapi for gstreamer-imx and the gpu-core drivers) gpu-core - provides all the various OpenGL libs (libGL, libGLESv1_CM, libGLESv1_CL, libGLESv2, libGLSLC, libCLC, libEGL, libGAL, libOpenCL, ls libOpenVG) typically provided by the mesa project. Note that several versions of libEGL/libGAL/libGLESv2/libVIVANTE are provided for different backend rendering systems: dfb, fb, wl, x11. # cd gpu_pack #cd imx-gpu-* # cp gpu-core/usr/lib/dri/vivante_dri.so /usr/lib/xorg/modules/drivers/ # chmod 644 /usr/lib/xorg/modules/drivers/vivante_dri.so # rm /usr/lib/arm-linux-gnueabihf/mesa/libGL.so* # rm /usr/lib/arm-linux-gnueabihf/mesa-egl/libEGL.so* # rm /usr/lib/arm-linux-gnueabihf/mesa-egl/libGLESv2.so* # rm /usr/lib/arm-linux-gnueabihf/mesa-egl/libOpenVG.so* # cd ../../ # cd gpu-pack # wget http://www.nxp.com/lgfiles/NMG/MAD/YOCTO//xserver-xorg-video-imx-viv-5.0.11.p7.4.tar.gz # tar –xf xserver* # cd xserver-org-video-imx* #looks lik have to made #git init # ./fastbuild.sh  BUILD_HARD_VFP=1 XSERVER_GREATER_THAN_13=1 # cd.. # cd kernel-modu* # make Switch to gpu-core x11 backend: # backend=x11 # ln -sf libEGL-${backend}.so /usr/lib/libEGL.so # ln -sf libEGL-${backend}.so /usr/lib/libEGL.so.1 # ln -sf libEGL-${backend}.so /usr/lib/libEGL.so.1.0 # ln -sf libGAL-${backend}.so /usr/lib/libGAL.so # ln -sf libGLESv2-${backend}.so /usr/lib/libGLESv2.so # ln -sf libGLESv2-${backend}.so /usr/lib/libGLESv2.so.2 # ln -sf libGLESv2-${backend}.so /usr/lib/libGLESv2.so.2.0.0 # ln -sf libVIVANTE-${backend}.so /usr/lib/libVIVANTE.so # ln -sf libGAL_egl.dri.so /usr/lib/libGAL_egl.so # for i in egl glesv1_cm glesv2 vg; do         cp /usr/lib/pkgconfig/${i}_${backend}.pc/usr/lib/pkgconfig/${i}.pc     done #rm /usr/lib/*-dfb.so /usr/lib/*-fb.so /usr/lib/*-wl.so (Optional in case you deploy your kernel version with GPU as module) make vivante kernel module (GPU kernel driver) load on boot: # echo vivante >> /etc/modules # nano /etc/udev/rules.d/10-imx.rules KERNEL=="galcore",  MODE="0660", GROUP="video" KERNEL=="mxc_asrc",  MODE="0666" Create an xorg.conf configured for the Vivante fbdev driver: # nano /etc/X11/xorg.conf Section "Device"     Identifier "i.MX Accelerated Framebuffer Device"     Driver "vivante"     Option "fbdev" "/dev/fb0"     Option "vivante_fbdev" "/dev/fb0"     Option "HWcursor" "false" EndSection Section "ServerFlags"     Option "BlankTime"  "0"     Option "StandbyTime"  "0"     Option "SuspendTime"  "0"     Option "OffTime"  "0" EndSection # cd .. Make sure the files copied into the correct places. If all compiled and copied, you should now see a bunch of new libraries in /usr/lib! Congratulations! After you finish you can reboot your system and start playing. Testing Gstreamer examples: show gstreamer-imx plugins: # gst-inspect-1.0 | grep imx imxvpu:  imxvpuenc_mjpeg: Freescale VPU motion JPEG video encoder imxvpu:  imxvpuenc_mpeg4: Freescale VPU MPEG-4 video encoder imxvpu:  imxvpuenc_h264: Freescale VPU h.264 video encoder imxvpu:  imxvpuenc_h263: Freescale VPU h.263 video encoder imxvpu:  imxvpudec: Freescale VPU video decoder imxv4l2videosrc:  imxv4l2videosrc: V4L2 CSI Video Source imxg2d:  imxg2dcompositor: Freescale G2D video compositor imxg2d:  imxg2dvideotransform: Freescale G2D video transform imxg2d:  imxg2dvideosink: Freescale G2D video sink imxipu:  imxipucompositor: Freescale IPU video compositor imxipu:  imxipuvideosink: Freescale IPU video sink imxipu:  imxipuvideotransform: Freescale IPU video transform imxpxp:  imxpxpvideotransform: Freescale PxP video transform imxpxp:  imxpxpvideosink: Freescale PxP video sink imxipuvideosink: # gst-launch-1.0 videotestsrc ! imxipuvideosink imxg2dvideosink: # gst-launch-1.0 videotestsrc ! imxg2dvideosink The imxeglvivsink allows hardware accelerated display to a window on the X11 host # export DISPLAY=:0.0 # gst-launch-1.0 videotestsrc ! imxeglvivsink To test if you have graphics support you can run any glmark2 and/or mesa-utils or can run example of the next route: # cd /opt/viv_samples/vdk/ # ./tutorial1                                                                      //any example root@imx6Q:~# glxgears -info GL_RENDERER   = Vivante GC2000 GL_VERSION    = 2.1 2.0.1 GL_VENDOR     = Vivante Corporation GL_EXTENSIONS = WGL_ARB_extensions_string WGL_EXT_extensions_string WGL_EXT_swap_control GL_EXT_texture_env_add GL_ARB_multitexture GL_ARB_multisample GL_ARB_texture_env_add GL_ARB_texture_compression GL_ARB_texture_env_combine GL_ARB_depth_texture GL_ARB_window_pos …. 1606 frames in 5.0 seconds = 321.130 FPS 1650 frames in 5.0 seconds = 329.834 FPS L_RENDERER   = Vivante GC2000 GL_VERSION    = 2.1 2.0.1 GL_VENDOR     = Vivante Corporation1629 frames in 5.0 seconds = 325.644 FPS 1621 frames in 5.0 seconds = 324.072 FPS 1650 frames in 5.0 seconds = 329.806 FPS 1651 frames in 5.0 seconds = 330.079 FPS Re: Installing Ubuntu Rootfs on NXP i.MX6 boards Hi Bio_TICFSL, Thank for your excellent doc. I'm working on imx6q sabreauto. successfully flashed uboot,zimage,*dtb and rootfs in sdcard and tried to bootup the board.but it stucks at one point my debug log is below. how can i fix it? U-Boot 2015.04-gb8837c4-dirty (Aug 13 2019 - 17:05:21) CPU: Freescale i.MX6Q rev1.2 at 792 MHz CPU: Temperature 41 C Reset cause: POR Board: MX6Q-Sabreauto revA I2C: ready DRAM: 2 GiB PMIC: PFUZE100 ID=0x10 NAND: 0 MiB MMC: FSL_SDHC: 0, FSL_SDHC: 1 No panel detected: default to HDMI Display: HDMI (640x480) In: serial Out: serial Err: serial switch to partitions #0, OK mmc1 is current device Net: FEC [PRIME] Error: FEC address not set. Normal Boot Hit any key to stop autoboot: 0 switch to partitions #0, OK mmc1 is current device reading boot.scr ** Unable to read file boot.scr ** reading zImage 6022032 bytes read in 293 ms (19.6 MiB/s) Booting from mmc ... reading imx6q-sabreauto.dtb 41594 bytes read in 19 ms (2.1 MiB/s) Kernel image @ 0x12000000 [ 0x000000 - 0x5be390 ] ## Flattened Device Tree blob at 18000000 Booting using the fdt blob at 0x18000000 Using Device Tree in place at 18000000, end 1800d279 Starting kernel ... Booting Linux on physical CPU 0x0 Linux version 3.14.52-g0e08af9-dirty (BspDeveloper2@BspDeveloper2) (gcc version 4.8.5 (Linaro GCC 4.8-2015.06) ) #9 SMP PREEMPT Tue Aug 13 16:58:40 IST 2019 CPU: ARMv7 Processor [412fc09a] revision 10 (ARMv7), cr=10c53c7d CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache Machine model: Freescale i.MX6 Quad SABRE Automotive Board cma: CMA: reserved 320 MiB at 6a000000 Memory policy: Data cache writealloc PERCPU: Embedded 8 pages/cpu @ee71e000 s8320 r8192 d16256 u32768 Built 1 zonelists in Zone order, mobility grouping on. Total pages: 520720 Kernel command line: console=ttymxc3,115200 root=/dev/mmcblk2p2 rootwait rw PID hash table entries: 4096 (order: 2, 16384 bytes) Dentry cache hash table entries: 262144 (order: 8, 1048576 bytes) Inode-cache hash table entries: 131072 (order: 7, 524288 bytes) Memory: 1739236K/2097152K available (7452K kernel code, 460K rwdata, 2596K rodata, 392K init, 433K bss, 357916K reserved, 270336K highmem) Virtual kernel memory layout: vector : 0xffff0000 - 0xffff1000 ( 4 kB) fixmap : 0xfff00000 - 0xfffe0000 ( 896 kB) vmalloc : 0xf0000000 - 0xff000000 ( 240 MB) lowmem : 0x80000000 - 0xef800000 (1784 MB) pkmap : 0x7fe00000 - 0x80000000 ( 2 MB) modules : 0x7f000000 - 0x7fe00000 ( 14 MB) .text : 0x80008000 - 0x809d828c (10049 kB) .init : 0x809d9000 - 0x80a3b080 ( 393 kB) .data : 0x80a3c000 - 0x80aaf340 ( 461 kB) .bss : 0x80aaf34c - 0x80b1b99c ( 434 kB) SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=4, Nodes=1 Preemptible hierarchical RCU implementation. NR_IRQS:16 nr_irqs:16 16 L310 cache controller enabled l2x0: 16 ways, CACHE_ID 0x410000c7, AUX_CTRL 0x32070000, Cache size: 1024 kB Switching to timer-based delay loop sched_clock: 32 bits at 3000kHz, resolution 333ns, wraps every 1431655765682ns 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: 4096 (order: 2, 16384 bytes) Mountpoint-cache hash table entries: 4096 (order: 2, 16384 bytes) CPU: Testing write buffer coherency: ok CPU0: thread -1, cpu 0, socket 0, mpidr 80000000 Setting up static identity map for 0x10717d60 - 0x10717db8 CPU1: Booted secondary processor CPU1: thread -1, cpu 1, socket 0, mpidr 80000001 CPU2: Booted secondary processor CPU2: thread -1, cpu 2, socket 0, mpidr 80000002 CPU3: Booted secondary processor 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 pinctrl core: initialized pinctrl subsystem regulator-dummy: no parameters 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.MX6Q, silicon rev 1.2 Use WDOG1 as reset source syscon 20c8000.anatop: regmap [mem 0x020c8000-0x020c8fff] registered vdd1p1: 800 <--> 1375 mV at 1100 mV vdd3p0: 2625 <--> 3400 mV at 3000 mV vdd2p5: 2000 <--> 2750 mV at 2400 mV vddarm: 725 <--> 1450 mV at 1150 mV vddpu: 725 <--> 1450 mV vddsoc: 725 <--> 1450 mV at 1175 mV syscon 20e0000.iomuxc-gpr: regmap [mem 0x020e0000-0x020e0037] registered syscon 21bc000.ocotp-ctrl: regmap [mem 0x021bc000-0x021bffff] registered 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 bio: create slab at 0 mxs-dma 110000.dma-apbh: initialized cs42888_supply: 3300 mV 3P3V: 3300 mV vio1: 3300 mV vio2: 3300 mV vd: 3300 mV va: 5000 mV platform usb_h1_vbus.29: Driver reg-fixed-voltage requests probe deferral platform usb_otg_vbus.30: Driver reg-fixed-voltage requests probe deferral i2c-core: driver [max17135] using legacy suspend method i2c-core: driver [max17135] using legacy resume method SCSI subsystem initialized usbcore: registered new interface driver usbfs usbcore: registered new interface driver hub usbcore: registered new device driver usb usbphy_nop1.12 supply vcc not found, using dummy regulator usbphy_nop2.13 supply vcc not found, using dummy regulator i2c i2c-1: IMX I2C adapter registered pca953x 2-0032: failed reading register pca953x: probe of 2-0032 failed with error -5 i2c i2c-2: IMX I2C adapter registered 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 <[email protected]> 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) MIPI CSI2 driver module loaded Advanced Linux Sound Architecture Driver Initialized. Bluetooth: Core ver 2.18 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 cfg80211: Calling CRDA to update world regulatory domain Switched to clocksource mxc_timer1 NET: Registered protocol family 2 TCP established hash table entries: 16384 (order: 4, 65536 bytes) TCP bind hash table entries: 16384 (order: 5, 131072 bytes) TCP: Hash tables configured (established 16384 bind 16384) TCP: reno registered UDP hash table entries: 1024 (order: 3, 32768 bytes) UDP-Lite hash table entries: 1024 (order: 3, 32768 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. hw perfevents: enabled with ARMv7 Cortex-A9 PMU driver, 7 counters available imx rpmsg driver is registered. imx_busfreq busfreq.16: DDR medium rate not supported. Bus freq driver module loaded futex hash table entries: 1024 (order: 4, 65536 bytes) bounce pool size: 64 pages VFS: Disk quotas dquot_6.5.2 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.22) msgmni has been set to 3508 io scheduler noop registered io scheduler deadline registered io scheduler cfq registered (default) imx-weim 21b8000.weim: Driver registered. backlight.17 supply power not found, using dummy regulator MIPI DSI driver module loaded MIPI DSI driver module loaded mxc_sdc_fb fb.22: registered mxc display driver ldb imx-ipuv3 2800000.ipu: IPU DMFC DP HIGH RESOLUTION: 1(0,1), 5B(2~5), 5F(6,7) Console: switching to colour frame buffer device 128x48 mxc_hdmi 20e0000.hdmi_video: Detected HDMI controller 0x13:0xa:0xa0:0xc1 fbcvt: 1920x1080@60: CVT Name - 2.073M9 mxc_sdc_fb fb.23: registered mxc display driver hdmi mxc_sdc_fb fb.24: NO mxc display driver found! mxc_sdc_fb fb.25: registered mxc display driver ldb 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.2 imx-sdma 20ec000.sdma: initialized pfuze100-regulator 1-0008: Full layer: 2, Metal layer: 1 pfuze100-regulator 1-0008: FAB: 0, FIN: 0 pfuze100-regulator 1-0008: pfuze100 found. SW1AB: 300 <--> 1875 mV at 1375 mV SW1C: 300 <--> 1875 mV at 1375 mV SW2: 800 <--> 3300 mV at 3000 mV SW3A: 400 <--> 1975 mV at 1500 mV SW3B: 400 <--> 1975 mV at 1500 mV SW4: 800 <--> 1975 mV at 1800 mV SWBST: 5000 <--> 5150 mV at 5000 mV VSNVS: 1000 <--> 3000 mV at 3000 mV VREFDDR: 750 mV VGEN1: 800 <--> 1550 mV at 800 mV VGEN2: 800 <--> 1550 mV at 1500 mV VGEN3: 1800 <--> 3300 mV at 1800 mV VGEN4: 1800 <--> 3300 mV at 1800 mV VGEN5: 1800 <--> 3300 mV at 2500 mV VGEN6: 1800 <--> 3300 mV at 2800 mV Serial: IMX driver 21ec000.serial: ttymxc2 at MMIO 0x21ec000 (irq = 60, base_baud = 5000000) is a IMX 21f0000.serial: ttymxc3 at MMIO 0x21f0000 (irq = 61, base_baud = 5000000) is a IMX console [ttymxc3] enabled serial: Freescale lpuart driver 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 si476x-core 1-0063: Using default platform data. si476x-core 1-0063: No IRQ number specified, will use polling si476x-core 1-0063: Error while sending command 0x11 si476x-core 1-0063: The device in inconsistent power state 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: failed to reset phy: -110 ahci-imx: probe of 2200000.sata failed with error -110 CAN device driver interface 2094000.can supply xceiver not found, using dummy regulator flexcan 2094000.can: device registered (reg_base=f01f0000, irq=143) ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver ehci-mxc: Freescale On-Chip EHCI Host driver usbcore: registered new interface driver usb-storage usbcore: registered new interface driver usb_ehset_test 2184800.usbmisc supply vbus-wakeup not found, using dummy regulator imx_usb 2184000.usb: Can't register ci_hdrc platform device, err=-517 platform 2184000.usb: Driver imx_usb requests probe deferral imx_usb 2184200.usb: Can't register ci_hdrc platform device, err=-517 platform 2184200.usb: Driver imx_usb requests probe deferral mousedev: PS/2 mouse device common for all mice egalax_ts 1-0004: Failed to read firmware version egalax_ts: probe of 1-0004 failed with error -5 2-0044 supply vdd not found, using dummy regulator i2c-core: driver [isl29023] using legacy suspend method i2c-core: driver [isl29023] using legacy resume method snvs_rtc 20cc034.snvs-rtc-lp: can't get snvs-rtc clock snvs_rtc 20cc034.snvs-rtc-lp: rtc core: registered 20cc034.snvs-rtc-lp as rtc0 i2c /dev entries driver IR NEC protocol handler initialized IR RC5(x) protocol handler initialized IR RC6 protocol handler initialized IR JVC protocol handler initialized IR Sony protocol handler initialized IR RC5 (streamzap) protocol handler initialized IR SANYO protocol handler initialized IR MCE Keyboard/mouse protocol handler initialized mxc_v4l2_output v4l2_out.33: V4L2 device registered as video16 mxc_v4l2_output v4l2_out.33: V4L2 device registered as video17 mxc_v4l2_output v4l2_out.33: V4L2 device registered as video18 mxc_v4l2_output v4l2_out.33: V4L2 device registered as video19 mxc_v4l2_output v4l2_out.33: V4L2 device registered as video20 2-000e supply vdd not found, using dummy regulator 2-000e supply vddio not found, using dummy regulator mag3110 2-000e: check mag3110 chip ID mag3110 2-000e: read chip ID 0xfffffffb is not equal to 0xc4! mag3110: probe of 2-000e failed with error -22 i2c-core: driver [mag3110] using legacy suspend method i2c-core: driver [mag3110] using legacy resume method 2-001c supply vdd not found, using dummy regulator 2-001c supply vddio not found, using dummy regulator mma8451 2-001c: read chip ID 0x1 is not equal to 0x1a or 0x2a! mma8451: probe of 2-001c failed with error -22 imx2-wdt 20bc000.wdog: IMX2+ Watchdog Timer enabled. timeout=60s (nowayout=0) Bluetooth: HCI UART driver ver 2.2 Bluetooth: HCI H4 protocol initialized Bluetooth: HCI BCSP protocol initialized Bluetooth: HCIATH3K protocol initialized 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 mmc1: no vqmmc regulator found mmc1: no vmmc regulator found mmc1: SDHCI controller on 2194000.usdhc [2194000.usdhc] using ADMA mmc2: no vqmmc regulator found mmc2: no vmmc regulator found mmc2: SDHCI controller on 2198000.usdhc [2198000.usdhc] using ADMA Galcore version 5.0.11.33433 mmc1: new high speed DDR MMC card at address 0001 mmcblk1: mmc1:0001 VM010B 14.5 GiB mmcblk1boot0: mmc1:0001 VM010B partition 1 512 KiB mmcblk1boot1: mmc1:0001 VM010B partition 2 512 KiB mmcblk1rpmb: mmc1:0001 VM010B partition 3 512 KiB Alternate GPT is invalid, using primary GPT. mmcblk1: p1 p2 p3 p4 p5 p6 p7 mmcblk1boot1: unknown partition table mmcblk1boot0: unknown partition table mmc2: host does not support reading read-only switch. assuming write-enable. mmc2: new high speed SDHC card at address e624 mmcblk2: mmc2:e624 SS16G 14.8 GiB mmcblk2: p1 p2 mxc_vdoa 21e4000.vdoa: i.MX Video Data Order Adapter(VDOA) driver probed mxc_vpu 2040000.vpu: VPU initialized caam 2100000.caam: Instantiated RNG4 SH0 caam 2100000.caam: Instantiated RNG4 SH1 caam 2100000.caam: device ID = 0x0a160100 (Era 4) caam 2100000.caam: job rings = 2, qi = 0 caam algorithms registered in /proc/crypto caam_jr 2101000.jr0: registering rng-caam platform caam_sm: blkkey_ex: 4 keystore units available 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: platform caam_sm: [0000] 17 d4 14 e3 cd 14 99 3c platform caam_sm: [0008] 28 ac 13 da 4f 13 86 b9 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] 47 20 d5 8a 08 2e c9 76 platform caam_sm: [0008] 21 a3 ab 86 72 eb e0 d7 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] a0 ab 18 b1 c0 86 52 c3 platform caam_sm: [0008] 26 02 62 70 a8 78 4c f2 platform caam_sm: [0016] 4e 6c e5 31 7e 6c d1 25 platform caam_sm: [0024] 48 62 78 86 93 70 62 ff 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] 61 42 d7 cf 79 ad 81 5c platform caam_sm: [0008] cc 1b 9e 5c a0 20 0e 54 platform caam_sm: [0016] ed fa 74 03 08 e1 96 e2 platform caam_sm: [0024] 5c 85 e0 cc ab f4 9e 3b 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] fc e1 2d 2c 81 75 5e 99 platform caam_sm: [0008] 2d 93 9b b0 a6 5a 3d 49 platform caam_sm: [0016] 98 96 9d 0c 39 36 da 72 platform caam_sm: [0024] f9 1d 66 0c 78 24 20 9a platform caam_sm: [0032] 85 3c 92 1e a4 55 d2 4b platform caam_sm: [0040] e4 7a ed 19 af 70 2e f6 platform caam_sm: [0048] cf c9 07 0e 82 19 47 7f 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] c6 ae 04 56 f6 5e c2 1b platform caam_sm: [0008] d9 6c 07 89 9d 1e 20 0f platform caam_sm: [0016] 72 4c 63 e1 ed d2 fd 68 platform caam_sm: [0024] 99 81 17 32 33 39 2a 1c platform caam_sm: [0032] fb e4 bb db 0c 07 c0 f2 platform caam_sm: [0040] eb 23 cf 79 64 2a ca f3 platform caam_sm: [0048] d9 84 ac 22 0b 49 79 e9 platform caam_sm: [0056] 7d 8b 97 09 6a d4 72 0b 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] 9c ec 58 09 50 20 80 1d platform caam_sm: [0008] 21 b6 e3 64 41 ed 14 12 platform caam_sm: [0016] 16 e1 c7 d3 fe 54 40 ed platform caam_sm: [0024] bc 92 e0 0c 6b 0a ec 02 platform caam_sm: [0032] 3b 60 6f 18 20 26 e4 04 platform caam_sm: [0040] c2 94 5e 2f 1e e4 99 b1 platform caam_sm: [0048] 9c 05 65 95 9b 8d db 72 platform caam_sm: [0056] a8 50 b0 50 9d f8 67 66 platform caam_sm: [0064] 33 ae 46 e9 42 6c fb ab 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] 9b 50 6d 78 93 a8 08 84 platform caam_sm: [0008] e5 3b 26 18 1d 6a 42 80 platform caam_sm: [0016] 3f c9 7f 4d dd 1a b6 a3 platform caam_sm: [0024] 02 6a 4d 64 a6 cc c3 61 platform caam_sm: [0032] 15 9e c8 1f 75 72 01 af platform caam_sm: [0040] f5 87 b3 78 b0 78 3f 34 platform caam_sm: [0048] bf 19 80 05 72 32 c2 82 platform caam_sm: [0056] d1 fd 4c f7 c6 c9 98 85 platform caam_sm: [0064] 9d 02 55 75 35 d5 ef ca platform caam_sm: [0072] 80 f5 21 87 ef 6c cd 96 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] 47 9d fa 49 f0 cf c5 1c platform caam_sm: [0008] 90 4d 0a e3 a1 ee 72 5c platform caam_sm: restored 128-bit black key: platform caam_sm: [0000] 47 20 d5 8a 08 2e c9 76 platform caam_sm: [0008] 21 a3 ab 86 72 eb e0 d7 platform caam_sm: restored 192-bit black key: platform caam_sm: [0000] a0 ab 18 b1 c0 86 52 c3 platform caam_sm: [0008] 26 02 62 70 a8 78 4c f2 platform caam_sm: [0016] 8d 0d bc 2d 2c 90 67 0c platform caam_sm: [0024] 93 91 ea 59 81 df 52 df platform caam_sm: restored 256-bit black key: platform caam_sm: [0000] 61 42 d7 cf 79 ad 81 5c platform caam_sm: [0008] cc 1b 9e 5c a0 20 0e 54 platform caam_sm: [0016] ed fa 74 03 08 e1 96 e2 platform caam_sm: [0024] 5c 85 e0 cc ab f4 9e 3b snvs-secvio 20cc000.caam-snvs: can't 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 cs42xx8 1-0048: found device, revision 4 fsl-asrc 2034000.asrc: driver registered snd-soc-dummy snd-soc-dummy: ASoC: Failed to create platform debugfs directory imx-cs42888 sound-cs42888.26: cs42888 <-> 2024000.esai mapping ok imx-cs42888 sound-cs42888.26: snd-soc-dummy-dai <-> 2034000.asrc mapping ok imx-cs42888 sound-cs42888.26: cs42888 <-> 2024000.esai mapping ok imx-spdif sound-spdif.19: snd-soc-dummy-dai <-> 2004000.spdif mapping ok imx-audio-hdmi sound-hdmi.20: hdmi-hifi <-> hdmi_audio.3 mapping ok imx-tuner-si476x sound-fm.31: failed to find FM platform device imx-tuner-si476x: probe of sound-fm.31 failed with error -22 NET: Registered protocol family 26 TCP: cubic registered 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 VGEN2: disabling SWBST: disabling SW4: disabling regulator-dummy: disabling imx mcc test is registered. platform usb_h1_vbus.29: Driver reg-fixed-voltage requests probe deferral usb_otg_vbus: 5000 mV imx_usb 2184200.usb: Can't register ci_hdrc platform device, err=-517 platform 2184200.usb: Driver imx_usb requests probe deferral platform usb_h1_vbus.29: Driver reg-fixed-voltage requests probe deferral snvs_rtc 20cc034.snvs-rtc-lp: setting system clock to 1970-01-01 00:00:02 UTC (2) imx_usb 2184200.usb: Can't register ci_hdrc platform device, err=-517 ALSA device list: #0: cs42888-audio #1: imx-spdif #2: imx-hdmi-soc p�� �platform usb_h1_vbus.29: Driver reg-fixed-voltage requests probe deferral kjournald starting. Commit interval 5 seconds EXT3-fs (mmcblk2p2): using internal journal EXT3-fs (mmcblk2p2): recovery complete EXT3-fs (mmcblk2p2): mounted filesystem with ordered data mode VFS: Mounted root (ext3 filesystem) on device 179:34. devtmpfs: error mounting -2 Freeing unused kernel memory: 392K (809d9000 - 80a3b000) Kernel panic - not syncing: No working init found. Try passing init= option to kernel. See Linux Documentation/init.txt for guidance. CPU2: stopping CPU: 2 PID: 0 Comm: swapper/2 Not tainted 3.14.52-g0e08af9-dirty #9 [<80014764>] (unwind_backtrace) from [<80011488>] (show_stack+0x10/0x14) [<80011488>] (show_stack) from [<807119b4>] (dump_stack+0x7c/0xbc) [<807119b4>] (dump_stack) from [<80013718>] (handle_IPI+0x144/0x158) [<80013718>] (handle_IPI) from [<800085b0>] (gic_handle_irq+0x58/0x5c) [<800085b0>] (gic_handle_irq) from [<80011f80>] (__irq_svc+0x40/0x70) Exception stack(0xd80adf50 to 0xd80adf98) df40: d80adf98 3b9aca00 e9b5de9d 00000000 df60: e882c038 00000000 ee72f0d0 80a4a814 00000001 ee72f0d4 d80ac000 d80ac000 df80: a6aaaaab d80adf98 00000009 804b64bc 60000113 ffffffff [<80011f80>] (__irq_svc) from [<804b64bc>] (cpuidle_enter_state+0x50/0xe0) [<804b64bc>] (cpuidle_enter_state) from [<804b6648>] (cpuidle_idle_call+0xfc/0x150) [<804b6648>] (cpuidle_idle_call) from [<8000edf0>] (arch_cpu_idle+0x8/0x44) [<8000edf0>] (arch_cpu_idle) from [<8006b140>] (cpu_startup_entry+0x104/0x150) [<8006b140>] (cpu_startup_entry) from [<10008644>] (0x10008644) CPU0: stopping CPU: 0 PID: 0 Comm: swapper/0 Not tainted 3.14.52-g0e08af9-dirty #9 [<80014764>] (unwind_backtrace) from [<80011488>] (show_stack+0x10/0x14) [<80011488>] (show_stack) from [<807119b4>] (dump_stack+0x7c/0xbc) [<807119b4>] (dump_stack) from [<80013718>] (handle_IPI+0x144/0x158) [<80013718>] (handle_IPI) from [<800085b0>] (gic_handle_irq+0x58/0x5c) [<800085b0>] (gic_handle_irq) from [<80011f80>] (__irq_svc+0x40/0x70) Exception stack(0x80a3df18 to 0x80a3df60) df00: 80a3df60 3b9aca00 df20: e9b5de9d 00000000 e883714d 00000000 ee71f0d0 80a4a814 00000001 ee71f0d4 df40: 80a3c000 80a3c000 a6aaaaab 80a3df60 00000009 804b64bc 60000113 ffffffff [<80011f80>] (__irq_svc) from [<804b64bc>] (cpuidle_enter_state+0x50/0xe0) [<804b64bc>] (cpuidle_enter_state) from [<804b6648>] (cpuidle_idle_call+0xfc/0x150) [<804b6648>] (cpuidle_idle_call) from [<8000edf0>] (arch_cpu_idle+0x8/0x44) [<8000edf0>] (arch_cpu_idle) from [<8006b140>] (cpu_startup_entry+0x104/0x150) [<8006b140>] (cpu_startup_entry) from [<809d9af0>] (start_kernel+0x350/0x35c) CPU3: stopping CPU: 3 PID: 0 Comm: swapper/3 Not tainted 3.14.52-g0e08af9-dirty #9 [<80014764>] (unwind_backtrace) from [<80011488>] (show_stack+0x10/0x14) [<80011488>] (show_stack) from [<807119b4>] (dump_stack+0x7c/0xbc) [<807119b4>] (dump_stack) from [<80013718>] (handle_IPI+0x144/0x158) [<80013718>] (handle_IPI) from [<800085b0>] (gic_handle_irq+0x58/0x5c) [<800085b0>] (gic_handle_irq) from [<80011f80>] (__irq_svc+0x40/0x70) Exception stack(0xd80aff50 to 0xd80aff98) ff40: d80aff98 3b9aca00 e9b5de9d 00000000 ff60: e882c2d3 00000000 ee7370d0 80a4a814 00000001 ee7370d4 d80ae000 d80ae000 ff80: a6aaaaab d80aff98 00000009 804b64bc 60000113 ffffffff [<80011f80>] (__irq_svc) from [<804b64bc>] (cpuidle_enter_state+0x50/0xe0) [<804b64bc>] (cpuidle_enter_state) from [<804b6648>] (cpuidle_idle_call+0xfc/0x150) [<804b6648>] (cpuidle_idle_call) from [<8000edf0>] (arch_cpu_idle+0x8/0x44) [<8000edf0>] (arch_cpu_idle) from [<8006b140>] (cpu_startup_entry+0x104/0x150) [<8006b140>] (cpu_startup_entry) from [<10008644>] (0x10008644) Re: Installing Ubuntu Rootfs on NXP i.MX6 boards Hello, Can same instrctions can be used with imx.8? Thanks Re: Installing Ubuntu Rootfs on NXP i.MX6 boards Hi  in section "Download u-boot" I excuted the "make" instruction and seens like it doesnt work, show as below what's wrong with it?how can i fixed it? Thanks.. ../gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux/bin/arm-linux-gnueabihf-gcc: 1: ../gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux/bin/arm-linux-gnueabihf-gcc: Syntax error: "(" unexpected ../gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux/bin/arm-linux-gnueabihf-gcc: 1: ../gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux/bin/arm-linux-gnueabihf-gcc: Syntax error: "(" unexpected dirname: missing operand Try 'dirname --help' for more information. scripts/kconfig/conf --silentoldconfig Kconfig CHK include/config.h GEN include/autoconf.mk ../gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux/bin/arm-linux-gnueabihf-gcc: 1: ../gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux/bin/arm-linux-gnueabihf-gcc: Syntax error: "(" unexpected scripts/Makefile.autoconf:71: recipe for target 'include/autoconf.mk' failed make[1]: *** [include/autoconf.mk] Error 1 make: *** No rule to make target 'include/config/auto.conf', needed by 'include/config/uboot.release'. Stop. Re: Installing Ubuntu Rootfs on NXP i.MX6 boards Basically, I found the solution. To generate a zImage instead of Image, you have to enter make menuconfig and select this option Gzip is not the defaut choice.  Now I have a ubuntu 14.04 running on my I.MX6Q SABRESD board. Thanks for this essential post ! Re: Installing Ubuntu Rootfs on NXP i.MX6 boards Hello, Thanks for this great post ! My goal is to run an Ubuntu 14.04 or higher on my IMX6Q SABRE SD board from the mmc card. I am following the post.  The following link is not valid any more: https://releases.linaro.org/14.09/components/toolchain/binaries/gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux.tar.xz  I replace it by the following one:  https://releases.linaro.org/archive/14.09/components/toolchain/binaries/gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux.tar.xz But it does not work, I get the following strange error: (same error described by wenming feng) /bin/sh: 1: /home/guillaume/gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux/bin/arm-linux-gnueabihf-gcc: not found  If I select this toolchain, I can compile: gcc-linaro-4.8-2015.06-x86_64_arm-linux-xxxx But I am generating an Image file and NOT a zImage file. And u-boot does not take it (bad linux arm zimage magic error at u boot runtime). It seems that it exists uImage, Image and zImage. Image would correspond to a 64bit image if I understand correctly.   Question 1: Which toolchain or option I have to use/set to generate a zImage ? (and not an Image) Question 2: Would it be possible to update this post with up to date links ? Question 3: Is there somewhere an already builded .sdcard for SABRE SD with everything on it (u-boot, kernel, dtb, ubuntu 14.04 or higher ..) ? Best regards, Guillaume HUGUES Re: Installing Ubuntu Rootfs on NXP i.MX6 boards I am using imx6q-sabresd board. I am following steps from Installing Ubuntu Rootfs on NXP i.MX6 boards.  My kernel version is 3.14.52 and i am using ubuntu Rootfs 14.04. My Xorg xserver version is 1.15.1. I am observing that if i enable PCI bus support in the kernel, then i am not able to use x11 gpu hardware acceleration(glxgears and es2gears give segmentation faults). But if i disable PCI support , i could use x11 gpu hardware acceleration with above mentioned versions of xserver. What role is PCI drivers playing in x11 hardware acceleration? How to get x11 acceleration working with PCI bus support enabled. Has anyone faced similar issue? Is there any fix for this or patches for pci or drm drivers?? Re: Installing Ubuntu Rootfs on NXP i.MX6 boards Hi Wenming, I ignore the cd kernel-modu* too. My board is i.mx6q sabre sd and I use a LVDS display. Have you try the toolchain gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux.tar.xz as the doc discribed? You can search "Kane Jiang" in the Skype for Business. All the Best Kane Jiang Re: Installing Ubuntu Rootfs on NXP i.MX6 boards Hi Kane, I am used the linaro-trusty-alip-20141024-684.tar.gz , I can not start the desktop for my imx6dl customer board, I used an OSD-WVGA lcd to connect with ipu.di0/fb0. for the ubuntu core version I can not boot into console. about the kernel-modu* there is a link in the note:ventana/ubuntu – Gateworks  section 2, what I do just ignore the cd kernel-modu* make, I just cd /usr/lib to do the ln -sf . the fastbuild.sh only build the vivante_drv.so, the vivante_dri.so is copy from gpu_core. I can not find any folder name kernel-modu* maybe a mistake. BTW,  what is you video= line, Thanks! Wenming Re: Installing Ubuntu Rootfs on NXP i.MX6 boards Hi @Bio_TICFSL, Thanks for your excellent doc!!  There's two questions I have get now. 1. I did not find the folder named kernel-modu* as the doc said, where is it? # ./fastbuild.sh  BUILD_HARD_VFP=1 XSERVER_GREATER_THAN_13=1   # cd..      # cd kernel-modu*   # make   Switch to gpu-core x11 backend:   # backend=x11     2. And when I use the rootfs named linaro-jessie-alip-20160428-22.tar.gz(debian based ubuntu 16.04), I can not successfully login to the console: [FAILED] Failed to start Login Service. See 'systemctl status systemd-logind.service' for details. [ OK ] Started Permit User Sessions. [FAILED] Failed to start LSB: Load kernel mo...eeded to enable cpufreq scaling. See 'systemctl status loadcpufreq.service' for details. [ OK ] Started /etc/rc.local Compatibility. [ OK ] Started LSB: network benchmark. [ OK ] Started LSB: Advanced IEEE 802.11 management daemon. [ OK ] Started Initialize hardware monitoring sensors. [ TIME ] Timed out waiting for device dev-ttymxc0.device. [DEPEND] Dependency failed for Serial Getty on ttymxc0. [FAILED] Failed to start Network Manager. See 'systemctl status NetworkManager.service' for details. So how to login to the console, any ideas? All the Best Kane Re: Installing Ubuntu Rootfs on NXP i.MX6 boards Hi Wenming, You may try command: apt-get install libxtst-dev to overcome the fatal error: X11/extensions/Xext.h: No such file or directory. All the Best Kane Re: Installing Ubuntu Rootfs on NXP i.MX6 boards Hi Wenming, Which rootfs did you choose? I think you may not choose the Linaro LXDE rootfs(E.g. linaro-trusty-alip-20141024-684.tar.gz) as mentioned in the doc above. The  vivid-preinstalled-core-armhf.tar.gz I mentioned didn't have a GUI desktop, it just have a console terminal. And it seems that did not support the commands like apt-get. But I also tried the rootfs linaro-trusty-alip-20141024-684.tar.gz as same as the doc. And I can succeed to bring up the desktop in i.MX6Q SABRE SD, but there's some issues about how to find the GPU Vivante and play tutorials. Besides, I did not find the folder named kernel-modu* as the doc said, have you? # ./fastbuild.sh  BUILD_HARD_VFP=1 XSERVER_GREATER_THAN_13=1   # cd..      # cd kernel-modu*   # make   Switch to gpu-core x11 backend:   # backend=x11   All the Best Kane Re: Installing Ubuntu Rootfs on NXP i.MX6 boards Hi Kane, I export the BUILD_HARD_VFP=1 and XSERVER_GREATER_THAN_13=1 it will not make for the DRI_1.10.4/src/, but I still got  fatal: bad default revision 'HEAD' fatal: ambiguous argument 'HEAD': unknown revision or path not in the working tree. Use '--' to separate paths from revisions, like this: 'git [ ...] -- [ ...]' fsl_pixmap_ext.c:31:33: fatal error: X11/extensions/Xext.h: No such file or directory #include Does me missed some installed package? BTW, as your mentioned vivid-preinstalled-core-armhf.tar.gz  are you tried and success to bring up the desktop for your imx6 board? thanks! Wenming Re: Installing Ubuntu Rootfs on NXP i.MX6 boards Hi, Prathamesh You can run the command: git init as the the doc said to have a try. You can open the ubuntu-core link in the Explorer and use another. E.g in the link: Index of /ubuntu-core/vivid/daily-preinstalled/current  You may select vivid-preinstalled-core-armhf.tar.gz . Kane Re: Installing Ubuntu Rootfs on NXP i.MX6 boards Hi Pratham, I got the same issue with you. Do you get it worked? Thanks! Wenming Re: Installing Ubuntu Rootfs on NXP i.MX6 boards Hi erikraynolds‌ , I have the same question as yours. There seems no folder named kernel-modu*. Have you solved the problem now? Thanks! Kane Re: Installing Ubuntu Rootfs on NXP i.MX6 boards Hi feng, the issue "Waiting for root device /dev/mmcblk0p2.." , seems to be related to sd card initialization failure, once kernel comes up. Try to boot from eMMc and see if you still get same issue. I am using toolchain mentioned above in this post. Thanks, Prathamesh  Re: Installing Ubuntu Rootfs on NXP i.MX6 boards Hi Pratham, Do you used any patches?  I can not boot into rootfs on my mx6dl customer board, I only can start uboot and kernel. Kenerl will stop at waiting "Waiting for root device /dev/mmcblk0p2... which version of toolchain are you used? Thanks! Wenming Re: Installing Ubuntu Rootfs on NXP i.MX6 boards Hi, I am using above steps to get ubuntu rootfs running on imx6q-sabrsd board. I am not able to build xserver-xorg-video-imx-viv-5.0.11.p7.4. I am getting below error with linaro rootfs: gcc -DCOMMIT="`git log -n 1 --format=%H``git diff-index --quiet HEAD || echo '-dirty'`" -DFIX_NO_MI_BACKINGSTORE -fvisibility=hidden -fPIC -DPIc fatal: Not a git repository (or any of the parent directories): .git fatal: Not a git repository (or any of the parent directories): .git gcc -shared -fPIC -o vivante_drv.so vivante_gal/vivante_gal_blit.o vivante_gal/vivante_gal_gpu.o vivante_gal/vivante_gal_surface.o vivante_fbde make: Leaving directory `/root/gpu/xserver-xorg-video-imx-viv-5.0.11.p7.4/EXA/src' make: *** DRI_1.10.4/src/: No such file or directory. Stop. has anybody able to solve this issue?? Also has anybody tried brnigup with ubuntu-core rootfs? Link for ubuntu-core rootfs seems dead. Thanks, Prathamesh Re: Installing Ubuntu Rootfs on NXP i.MX6 boards It seems now no way to build by this thread. I changed the gcc toolchain, still not compilable. But I can build one month ago, there should be some commits blocked the build. Does someone else encounter the same issue as me currently? Re: Installing Ubuntu Rootfs on NXP i.MX6 boards Hi, I installed ubuntu Linaro LXDE desktop but the touch panel doesn't work. I confirmed the touch panel driver is ok. It generates input events when I cat /dev/input/event0 and touch the panel. But the ubuntu desktop does not have response. Anyone has advice on it? Thanks! Re: Installing Ubuntu Rootfs on NXP i.MX6 boards Hi, I encounter a uboot compiler issue, when I try to build the wandboard_dl_defconfig. Anybody else encounter this? share your fix. LD examples/standalone/hello_world OBJCOPY examples/standalone/hello_world.srec OBJCOPY examples/standalone/hello_world.bin LDS u-boot.lds LD u-boot arch/arm/imx-common/built-in.o: In function `print_cpuinfo': /home/lucid/imx6dl/uboot-imx-rel_imx_3.14.52_1.1.0_ga/arch/arm/imx-common/cpu.c:199: undefined reference to `uclass_get_device' /home/lucid/imx6dl/uboot-imx-rel_imx_3.14.52_1.1.0_ga/arch/arm/imx-common/cpu.c:201: undefined reference to `thermal_get_temp' arch/arm/imx-common/built-in.o: In function `arch_preboot_os': /home/lucid/imx6dl/uboot-imx-rel_imx_3.14.52_1.1.0_ga/arch/arm/imx-common/cpu.c:270: undefined reference to `ldo_mode_set' drivers/built-in.o: In function `read_cpu_temperature': /home/lucid/imx6dl/uboot-imx-rel_imx_3.14.52_1.1.0_ga/drivers/thermal/imx_thermal.c:43: undefined reference to `dev_get_platdata' /home/lucid/imx6dl/uboot-imx-rel_imx_3.14.52_1.1.0_ga/drivers/thermal/imx_thermal.c:45: undefined reference to `dev_get_priv' drivers/built-in.o: In function `imx_thermal_probe': /home/lucid/imx6dl/uboot-imx-rel_imx_3.14.52_1.1.0_ga/drivers/thermal/imx_thermal.c:226: undefined reference to `dev_get_platdata' /home/lucid/imx6dl/uboot-imx-rel_imx_3.14.52_1.1.0_ga/drivers/thermal/imx_thermal.c:227: undefined reference to `dev_get_priv' /home/lucid/toolchain/gcc-linaro-4.8-2015.06-x86_64_arm-linux-gnueabihf/bin/arm-linux-gnueabihf-ld.bfd: BFD (GNU Binutils) Linaro 2014.11-3-git 2.24.0.20141017 assertion fail /home/tcwg-buildslave/workspace/tcwg-make-release/label/tcwg-x86_64/target/arm-linux-gnueabihf/snapshots/binutils-gdb.git~linaro_binutils-2_24-branch@a93e252ee5250dba831e54f98336b40c7210dac7/bfd/elf32-arm.c:7710 /home/lucid/toolchain/gcc-linaro-4.8-2015.06-x86_64_arm-linux-gnueabihf/bin/arm-linux-gnueabihf-ld.bfd: BFD (GNU Binutils) Linaro 2014.11-3-git 2.24.0.20141017 assertion fail /home/tcwg-buildslave/workspace/tcwg-make-release/label/tcwg-x86_64/target/arm-linux-gnueabihf/snapshots/binutils-gdb.git~linaro_binutils-2_24-branch@a93e252ee5250dba831e54f98336b40c7210dac7/bfd/elf32-arm.c:7710 /home/lucid/toolchain/gcc-linaro-4.8-2015.06-x86_64_arm-linux-gnueabihf/bin/arm-linux-gnueabihf-ld.bfd: BFD (GNU Binutils) Linaro 2014.11-3-git 2.24.0.20141017 assertion fail /home/tcwg-buildslave/workspace/tcwg-make-release/label/tcwg-x86_64/target/arm-linux-gnueabihf/snapshots/binutils-gdb.git~linaro_binutils-2_24-branch@a93e252ee5250dba831e54f98336b40c7210dac7/bfd/elf32-arm.c:7710 /home/lucid/toolchain/gcc-linaro-4.8-2015.06-x86_64_arm-linux-gnueabihf/bin/arm-linux-gnueabihf-ld.bfd: BFD (GNU Binutils) Linaro 2014.11-3-git 2.24.0.20141017 assertion fail /home/tcwg-buildslave/workspace/tcwg-make-release/label/tcwg-x86_64/target/arm-linux-gnueabihf/snapshots/binutils-gdb.git~linaro_binutils-2_24-branch@a93e252ee5250dba831e54f98336b40c7210dac7/bfd/elf32-arm.c:7710 /home/lucid/toolchain/gcc-linaro-4.8-2015.06-x86_64_arm-linux-gnueabihf/bin/arm-linux-gnueabihf-ld.bfd: BFD (GNU Binutils) Linaro 2014.11-3-git 2.24.0.20141017 assertion fail /home/tcwg-buildslave/workspace/tcwg-make-release/label/tcwg-x86_64/target/arm-linux-gnueabihf/snapshots/binutils-gdb.git~linaro_binutils-2_24-branch@a93e252ee5250dba831e54f98336b40c7210dac7/bfd/elf32-arm.c:7710 /home/lucid/toolchain/gcc-linaro-4.8-2015.06-x86_64_arm-linux-gnueabihf/bin/arm-linux-gnueabihf-ld.bfd: error: required section '.rel.plt' not found in the linker script /home/lucid/toolchain/gcc-linaro-4.8-2015.06-x86_64_arm-linux-gnueabihf/bin/arm-linux-gnueabihf-ld.bfd: final link failed: Invalid operation make: *** [u-boot] Error 1 lucid@ubuntu:~/imx6dl/uboot-imx-rel_imx_3.14.52_1.1.0_ga$ Thanks! WF Re: Installing Ubuntu Rootfs on NXP i.MX6 boards Dears, I'd like to continue with adding GPU HW Acceleration for X11 per instruction with that section and working within gpu_pack directory instructions say: # cd kernel-modu*   # make   Switch to gpu-core x11 backend:   # backend=x11   Where kernel-modu* is coming from? How kernel-modu* to create from? Re: Installing Ubuntu Rootfs on NXP i.MX6 boards Hi, Is there anyway to rotate LCD from landscape mode to portrait mode with ubuntu Linaro LXDE rootfs? Thanks! Re: Installing Ubuntu Rootfs on NXP i.MX6 boards Hi, I connected USB disk and USB mouse to the USB Host port, but the devices were not able to be detected. I can see following message during kernel booting up: usb_otg_vbus: disabling What could be the possible reasons? Thanks! Re: Installing Ubuntu Rootfs on NXP i.MX6 boards Hi What error are you getting. I am still having the error messages I posted but my audio is working nonetheless so I stopped troubleshooting further on it until someone gives me an idea what should be done. Re: Installing Ubuntu Rootfs on NXP i.MX6 boards Cool. I had changed it to 'linaro' user which also doesnt have a password but still showed me login page. Anyways will try 'root.' But I was getting launched into desktop directly already so dont know if I should bother. Anyways thank for the info.  Re: Installing Ubuntu Rootfs on NXP i.MX6 boards I can login as root with no login screen automatically. this works for me /etc/lxdm$ lxdm.conf [base] ## uncomment and set autologin username to enable autologin autologin=root ## uncomment and set timeout to enable timeout autologin, ## the value should >=5 # timeout=10 ## default session or desktop used when no systemwide config session=/usr/bin/startlxde ## uncomment and set to set numlock on your keyboard # numlock=0 ## set this if you don't want to put xauth file at ~/.Xauthority # xauth_path=/tmp ## greeter used to welcome the user greeter=/usr/lib/lxdm/lxdm-greeter-gtk [server] ## arg used to start xserver, not fully function # arg=/usr/bin/X -background vt1 [display] ## gtk theme used by greeter gtk_theme=Clearlooks ## background of the greeter bg=/usr/share/backgrounds/default.png ## if show bottom pane bottom_pane=1 ## if show language select control lang=1 ## if show keyboard layout select control keyboard=0 ## the theme of greeter theme=Industrial [input] [userlist] ## if disable the user list control at greeter disable=0 ## whitelist user white= ## blacklist user black= Re: Installing Ubuntu Rootfs on NXP i.MX6 boards Nice. Do let me know if you figure out how to remove the login page completely from 'startlxde'. Re: Installing Ubuntu Rootfs on NXP i.MX6 boards Have you fixed gstreamer-imx somehow? Re: Installing Ubuntu Rootfs on NXP i.MX6 boards Finally I got login: After I got LXDE login screen which I needed to switch off the GUI and start in console mode via CTRL+ALT+F1 then I set passwd for root again and then switch back via CTRL+ALT+F7 and I did login as root. Re: Installing Ubuntu Rootfs on NXP i.MX6 boards Erik, Maybe you have not installed xorg and xinit. Try that. Re: Installing Ubuntu Rootfs on NXP i.MX6 boards Understand but on my side after install I can't run 'startx' command (command not found). I have my console on PC host side where I'm connected to the target via UART. On target itself I got Login screen which I can't go thru. I did changes as you suggested but no success. Re: Installing Ubuntu Rootfs on NXP i.MX6 boards Hi Erik,    If you have also used Linaro LXDE then the default display manager is lxdm which is upstarted from /etc/init.d/. Lxdm uses /etc/lxdm/lxdm.conf for its configuration. I changed the default session to 'startx' to avoid the login page. Just a workaround for now. More info here : LXDM - ArchWiki  Re: Installing Ubuntu Rootfs on NXP i.MX6 boards Hi Jaffin, I'm in  pretty much the same situation: have you chance to resolve it? Thank you. Re: Installing Ubuntu Rootfs on NXP i.MX6 boards Hi Erik Any idea how to boot into desktop rather than to the login window I am getting. When I execute startx from serial console, it starts desktop environment on the screen. But by default, startlxde is getting executed and that takes me to the login page from where I cant login with any user. By default I want startx to load. (later I would like to just boot into just one gui application) Re: Installing Ubuntu Rootfs on NXP i.MX6 boards Hi Erik, I am using iMX6 QP Sabre Board. Everything is working fine just that I am unable to login through the gui login manager. Also I am facing another issue today. I installed gstreamer-imx and its plugins but I am getting an error with the audio codec plugin which is not working. When I run 'gst-inspect-1.0 -b' I get. (gst-plugin-scanner:8983): GStreamer-WARNING **: Failed to load plugin '/usr/lib/arm-linux-gnueabihf/gstreamer-1.0/libgstimxaudio.so': lib_mp3_enc_arm12_elinux.so.2: cannot open shared object file: No such file or directory (gst-plugin-scanner:8983): GStreamer-WARNING **: Failed to load plugin '/usr/lib/arm-linux-gnueabihf/gstreamer-1.0/gstreamer-1.0/libgstimxaudio.so': lib_mp3_enc_arm12_elinux.so.2: cannot open shared object file: No such file or directory (gst-plugin-scanner:8983): GStreamer-WARNING **: Failed to load plugin '/usr/lib/arm-linux-gnueabihf/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/libgstimxaudio.so': lib_mp3_enc_arm12_elinux.so.2: cannot open shared object file: No such file or directory (gst-plugin-scanner:8983): GStreamer-WARNING **: Failed to load plugin '/usr/lib/arm-linux-gnueabihf/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/libgstimxaudio.so': lib_mp3_enc_arm12_elinux.so.2: cannot open shared object file: No such file or directory (gst-plugin-scanner:8983): GStreamer-WARNING **: Failed to load plugin '/usr/lib/arm-linux-gnueabihf/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/libgstimxaudio.so': lib_mp3_enc_arm12_elinux.so.2: cannot open shared object file: No such file or directory (gst-plugin-scanner:8983): GStreamer-WARNING **: Failed to load plugin '/usr/lib/arm-linux-gnueabihf/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/libgstimxaudio.so': lib_mp3_enc_arm12_elinux.so.2: cannot open shared object file: No such file or directory (gst-plugin-scanner:8983): GStreamer-WARNING **: Failed to load plugin '/usr/lib/arm-linux-gnueabihf/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/libgstimxaudio.so': lib_mp3_enc_arm12_elinux.so.2: cannot open shared object file: No such file or directory (gst-plugin-scanner:8983): GStreamer-WARNING **: Failed to load plugin '/usr/lib/arm-linux-gnueabihf/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/libgstimxaudio.so': lib_mp3_enc_arm12_elinux.so.2: cannot open shared object file: No such file or directory (gst-plugin-scanner:8983): GStreamer-WARNING **: Failed to load plugin '/usr/lib/arm-linux-gnueabihf/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/libgstimxaudio.so': lib_mp3_enc_arm12_elinux.so.2: cannot open shared object file: No such file or directory (gst-plugin-scanner:8983): GStreamer-WARNING **: Failed to load plugin '/usr/lib/arm-linux-gnueabihf/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/libgstimxaudio.so': lib_mp3_enc_arm12_elinux.so.2: cannot open shared object file: No such file or directory (gst-plugin-scanner:8983): GStreamer-WARNING **: Failed to load plugin '/usr/lib/arm-linux-gnueabihf/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/libgstimxaudio.so': lib_mp3_enc_arm12_elinux.so.2: cannot open shared object file: No such file or directory Blacklisted files: libgstimxaudio.so Total count: 1 blacklisted file I dont understand why only audio plugin got blacklisted when I installed both fsl video and audio codec together. I have followed the links from this post. Also the error that it shows that it cannot open shared file, I checked the directory and the file is inside it. Re: Installing Ubuntu Rootfs on NXP i.MX6 boards What imx board/chip do you use? Re: Installing Ubuntu Rootfs on NXP i.MX6 boards First of all, thanks for this amazing post. Helped a lot. I have used the Linaro LXDE rootfs(partly because the ubuntu core link didnt work). Now apart from few hiccups I faced here and there in the process, I am able to boot the hardware and login from the serial console to the shell. But on the HDMI display I am shown a login window. I tried typing username 'root' and 'linaro' without any password(since I had removed the password from the root and linaro user as per the process above) and I am still stuck on the same window. I am unable to move past the login window and enter the GUI. Did anyone else face this. Please advise if I have missed something. Or I could just remove this login window manager and install another. Re: Installing Ubuntu Rootfs on NXP i.MX6 boards Now I got Linaro, 14.10 image booting.. but still get into HDMI display and it's Serial console from PC. How can I enable and run it form within HDMI monitor? Secondly I followed  section 3: Modify Rootfs and Install needed packages  even though network, sources.list, hostname are not configured accordingly.. I change it on host PC and those setting are not reflected...       U-Boot 2016.03 (Nov 04 2016 - 11:24:24 +0100) CPU: Freescale i.MX6QP rev1.0 996 MHz (running at 792 MHz) CPU: Automotive temperature grade (-40C to 125C) at 31C Reset cause: POR Board: MX6Q-Sabreauto revA I2C: ready DRAM: 2 GiB PMIC: PFUZE100 ID=0x10 NAND: 0 MiB MMC: FSL_SDHC: 0, FSL_SDHC: 1 No panel detected: default to Hannstar-XGA Display: Hannstar-XGA (1024x768) In: serial Out: serial Err: serial switch to partitions #0, OK mmc1 is current device Net: FEC [PRIME] Normal Boot Hit any key to stop autoboot: 0 switch to partitions #0, OK mmc1 is current device reading boot.scr ** Unable to read file boot.scr ** reading zImage 6637656 bytes read in 328 ms (19.3 MiB/s) Booting from mmc ... reading imx6qp-sabreauto.dtb 48853 bytes read in 20 ms (2.3 MiB/s) Kernel image @ 0x12000000 [ 0x000000 - 0x654858 ] ## Flattened Device Tree blob at 18000000 Booting using the fdt blob at 0x18000000 Using Device Tree in place at 18000000, end 1800eed4 Starting kernel ... Booting Linux on physical CPU 0x0 Linux version 4.1.15 (r59400@Latitude) (gcc version 4.8.5 (Linaro GCC 4.8-2015.06) ) #1 SMP PREEMPT Fri Nov 4 11:53:43 CET 2016 CPU: ARMv7 Processor [412fc09a] revision 10 (ARMv7), cr=10c53c7d CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache Machine model: Freescale i.MX6 Quad Plus SABRE Automotive Board Reserved memory: created CMA memory pool at 0x6a000000, size 320 MiB Reserved memory: initialized node linux,cma, compatible id shared-dma-pool Memory policy: Data cache writealloc PERCPU: Embedded 12 pages/cpu @ee6fe000 s16960 r8192 d24000 u49152 Built 1 zonelists in Zone order, mobility grouping on. Total pages: 520720 Kernel command line: console=ttymxc3,115200 root=/dev/mmcblk2p2 rootwait rw PID hash table entries: 4096 (order: 2, 16384 bytes) Dentry cache hash table entries: 262144 (order: 8, 1048576 bytes) Inode-cache hash table entries: 131072 (order: 7, 524288 bytes) Memory: 1737928K/2097152K available (8295K kernel code, 435K rwdata, 2892K rodata, 432K init, 450K bss, 31544K reserved, 327680K cma-reserved, 270336K highmem) Virtual kernel memory layout: vector : 0xffff0000 - 0xffff1000 ( 4 kB) fixmap : 0xffc00000 - 0xfff00000 (3072 kB) vmalloc : 0xf0000000 - 0xff000000 ( 240 MB) lowmem : 0x80000000 - 0xef800000 (1784 MB) pkmap : 0x7fe00000 - 0x80000000 ( 2 MB) modules : 0x7f000000 - 0x7fe00000 ( 14 MB) .text : 0x80008000 - 0x80af51c8 (11189 kB) .init : 0x80af6000 - 0x80b62000 ( 432 kB) .data : 0x80b62000 - 0x80bcec40 ( 436 kB) .bss : 0x80bd1000 - 0x80c41a5c ( 451 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 0x76470001 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: 4096 (order: 2, 16384 bytes) Mountpoint-cache hash table entries: 4096 (order: 2, 16384 bytes) CPU: Testing write buffer coherency: ok CPU0: thread -1, cpu 0, socket 0, mpidr 80000000 Setting up static identity map for 0x10008280 - 0x100082d8 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: no groups defined in /soc/aips-bus@02000000/iomuxc@020e0000/hdmicecgrp imx6q-pinctrl 20e0000.iomuxc: initialized IMX pinctrl driver imx-gpc 20dc000.gpc: no fsl,ldo-bypass found! mxs-dma 110000.dma-apbh: initialized 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-1: IMX I2C adapter registered i2c i2c-1: can't use DMA i2c i2c-2: IMX I2C adapter registered i2c i2c-2: can't 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 <[email protected]> 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 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: 16384 (order: 4, 65536 bytes) TCP bind hash table entries: 16384 (order: 5, 131072 bytes) TCP: Hash tables configured (established 16384 bind 16384) UDP hash table entries: 1024 (order: 3, 32768 bytes) UDP-Lite hash table entries: 1024 (order: 3, 32768 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. Bus freq driver module loaded 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) backlight supply power not found, using dummy regulator MIPI DSI driver module loaded MIPI DSI driver module loaded mxc_sdc_fb fb@0: registered mxc display driver ldb imx-ipuv3 2800000.ipu: IPU DMFC DP HIGH RESOLUTION: 1(0,1), 5B(2~5), 5F(6,7) Console: switching to colour frame buffer device 128x48 mxc_hdmi 20e0000.hdmi_video: Detected HDMI controller 0x13:0xa:0xa0:0xc1 fbcvt: 1920x1080@60: CVT Name - 2.073M9 mxc_sdc_fb fb@1: registered mxc display driver hdmi mxc_sdc_fb fb@2: NO mxc display driver found! mxc_sdc_fb fb@3: registered mxc display driver ldb mxc_hdmi 20e0000.hdmi_video: Read EDID again 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 pfuze100-regulator 1-0008: Full layer: 2, Metal layer: 1 pfuze100-regulator 1-0008: FAB: 0, FIN: 0 pfuze100-regulator 1-0008: pfuze100 found. 21ec000.serial: ttymxc2 at MMIO 0x21ec000 (irq = 298, base_baud = 5000000) is a IMX 21f0000.serial: ttymxc3 at MMIO 0x21f0000 (irq = 299, base_baud = 5000000) is a IMX mxc_hdmi 20e0000.hdmi_video: create default modelist console [ttymxc3] enabled 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 si476x-core 1-0063: Using default platform data. si476x-core 1-0063: No IRQ number specified, will use polling si476x-core 1-0063: Error while sending command 0x11 si476x-core 1-0063: The device in inconsistent power state 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 313 CAN device driver interface 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-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 imx_usb 2184000.usb: Can't register ci_hdrc platform device, err=-517 imx_usb 2184200.usb: Can't register ci_hdrc platform device, err=-517 mousedev: PS/2 mouse device common for all mice egalax_ts 1-0004: Failed to read firmware version egalax_ts: probe of 1-0004 failed with error -5 2-0044 supply vdd not found, using dummy regulator input: isl29023 light sensor as /devices/virtual/input/input1 isl29023 2-0044: driver version 1.0 enabled 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 mxc_v4l2_output v4l2_out: V4L2 device registered as video18 mxc_v4l2_output v4l2_out: V4L2 device registered as video19 mxc_v4l2_output v4l2_out: V4L2 device registered as video20 2-000e supply vdd not found, using dummy regulator 2-000e supply vddio not found, using dummy regulator mag3110 2-000e: check mag3110 chip ID input: mag3110 as /devices/virtual/input/input2 mag3110 2-000e: mag3110 is probed 2-001c supply vdd not found, using dummy regulator 2-001c supply vddio not found, using dummy regulator input: mma845x as /devices/virtual/input/input3 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 ata1: SATA link down (SStatus 0 SControl 300) ahci-imx 2200000.sata: no device found, disabling link. usbcore: registered new interface driver bcm203x usbcore: registered new interface driver btusb usbcore: registered new interface driver ath3k ahci-imx 2200000.sata: pass ahci_imx..hotplug=1 to enable hotplug 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@02190000: voltage-ranges unspecified sdhci-esdhc-imx 2190000.usdhc: Got CD GPIO sdhci-esdhc-imx 2190000.usdhc: No vmmc regulator found sdhci-esdhc-imx 2190000.usdhc: No vqmmc regulator found mmc0: SDHCI controller on 2190000.usdhc [2190000.usdhc] using ADMA /soc/aips-bus@02100000/usdhc@02198000: voltage-ranges unspecified sdhci-esdhc-imx 2198000.usdhc: Got CD GPIO sdhci-esdhc-imx 2198000.usdhc: Got WP GPIO sdhci-esdhc-imx 2198000.usdhc: No vqmmc regulator found mmc2: SDHCI controller on 2198000.usdhc [2198000.usdhc] using ADMA 218c000.mlb supply reg_nvcc not found, using dummy regulator mxc_mlb150 218c000.mlb: enalbe regulator mxc_vpu 2040000.vpu_fsl: VPU initialized mxc_vdoa 21e4000.vdoa: i.MX Video Data Order Adapter(VDOA) driver probed imx6q-pinctrl 20e0000.iomuxc: unable to find group for node hdmicecgrp imx6q-pinctrl 20e0000.iomuxc: unable to find group for node hdmicecgrp mxc_hdmi_cec soc:hdmi_cec@00120000: can't get/select CEC pinctrl Galcore version 5.0.11.41671 mmc2: new ultra high speed SDR104 SDHC card at address 0007 mmcblk2: mmc2:0007 SD32G 28.9 GiB mmcblk2: p1 p2 caam 2100000.caam: Entropy delay = 3200 caam 2100000.caam: Instantiated RNG4 SH0 caam 2100000.caam: Instantiated RNG4 SH1 caam 2100000.caam: device ID = 0x0a16010000000000 (Era -524) caam 2100000.caam: job rings = 2, qi = 0 caam algorithms registered in /proc/crypto caam_jr 2101000.jr0: registering rng-caam platform caam_sm: blkkey_ex: 4 keystore units available 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: platform caam_sm: [0000] b1 20 7c 0a 8a 86 61 07 platform caam_sm: [0008] f0 19 01 46 38 76 bd 49 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] 2f 06 82 1f cc b0 35 1f platform caam_sm: [0008] 72 03 b1 f3 aa e0 3e b0 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] 1b b3 ad 95 d0 24 81 9a platform caam_sm: [0008] fd b9 b8 4c 55 17 92 c4 platform caam_sm: [0016] ae af b5 6a ea 59 01 4f platform caam_sm: [0024] 1b be de e8 dd 5c 8b 10 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] cf f7 16 54 2e 7b 19 e0 platform caam_sm: [0008] fe 96 8c 8b 3e 1b b3 f0 platform caam_sm: [0016] 38 35 bc 80 67 35 ed 58 platform caam_sm: [0024] e1 dd 73 11 85 8b 10 1f 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] 7c 66 1b 86 2d 1c b7 2d platform caam_sm: [0008] 20 1f bb eb b4 00 1c 56 platform caam_sm: [0016] 8f b7 46 a6 40 58 28 49 platform caam_sm: [0024] 55 a0 50 1c 58 1d 43 a9 platform caam_sm: [0032] 06 3c 86 13 da 7d c1 6a platform caam_sm: [0040] 3b 09 77 ee 3a ee 3f e6 platform caam_sm: [0048] 7e be 58 92 f4 b9 1d 4a 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] 61 a7 fd 69 ac 06 3c 35 platform caam_sm: [0008] 55 aa 49 66 c1 d2 ee 49 platform caam_sm: [0016] 04 af 80 4a fe 33 92 ab platform caam_sm: [0024] 9c a7 c3 82 25 53 80 63 platform caam_sm: [0032] 22 3e 89 9a e6 d8 a6 54 platform caam_sm: [0040] c6 e6 f7 34 b6 1f 2c 9e platform caam_sm: [0048] 5e 96 89 5e a6 fc 7f 87 platform caam_sm: [0056] 20 5f 7a 16 11 3b e7 ce 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] 23 2c cb 1b 73 ab 7d 23 platform caam_sm: [0008] f4 b0 f7 92 b2 78 0d 4c platform caam_sm: [0016] b7 ba 1e 4d 05 6d 31 f5 platform caam_sm: [0024] ce c9 fd 0a ce 39 eb 94 platform caam_sm: [0032] cb b1 33 41 b7 f7 6b 26 platform caam_sm: [0040] 44 80 d7 26 36 25 ad 73 platform caam_sm: [0048] 87 a0 51 29 82 7f 9c d8 platform caam_sm: [0056] 2f 75 98 5f b7 50 f3 db platform caam_sm: [0064] b3 39 17 c7 c9 90 c8 26 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] 49 ff 5a d8 79 44 e7 67 platform caam_sm: [0008] 96 87 75 f6 5c 8a 2e df platform caam_sm: [0016] ae cc a1 b6 4a 31 f6 e8 platform caam_sm: [0024] 8d fd ad 8b 07 f3 e8 b0 platform caam_sm: [0032] c0 58 18 9b ae 02 bb ce platform caam_sm: [0040] 38 fb 44 db 04 67 1b c7 platform caam_sm: [0048] 2c 15 75 41 8d c1 77 cf platform caam_sm: [0056] a1 68 de 68 2d cd 24 e7 platform caam_sm: [0064] d5 7e e3 22 eb 7a 21 9d platform caam_sm: [0072] 63 67 cf 3b 32 19 e0 03 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] 95 c8 a2 bc ac 2e 8e d7 platform caam_sm: [0008] f7 cc fa 5b b6 a5 5b 4b platform caam_sm: restored 128-bit black key: platform caam_sm: [0000] 2f 06 82 1f cc b0 35 1f platform caam_sm: [0008] 72 03 b1 f3 aa e0 3e b0 platform caam_sm: restored 192-bit black key: platform caam_sm: [0000] 1b b3 ad 95 d0 24 81 9a platform caam_sm: [0008] fd b9 b8 4c 55 17 92 c4 platform caam_sm: [0016] 5f 82 48 34 d8 cb 15 a9 platform caam_sm: [0024] b0 6c fe c8 ee 8e cd 21 platform caam_sm: restored 256-bit black key: platform caam_sm: [0000] cf f7 16 54 2e 7b 19 e0 platform caam_sm: [0008] fe 96 8c 8b 3e 1b b3 f0 platform caam_sm: [0016] 38 35 bc 80 67 35 ed 58 platform caam_sm: [0024] e1 dd 73 11 85 8b 10 1f snvs-secvio 20cc000.caam-snvs: can't 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 cs42xx8 1-0048: found device, revision 4 fsl-asrc 2034000.asrc: driver registered imx-cs42888 sound-cs42888: cs42888 <-> 2024000.esai mapping ok imx-cs42888 sound-cs42888: snd-soc-dummy-dai <-> 2034000.asrc mapping ok imx-cs42888 sound-cs42888: cs42888 <-> 2024000.esai mapping ok imx-spdif sound-spdif: snd-soc-dummy-dai <-> 2004000.spdif mapping ok imx-tuner-si476x sound-fm: failed to find FM platform device imx-tuner-si476x: probe of sound-fm failed with error -22 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 can-stby: supplied by can-en flexcan 2094000.flexcan: device registered (reg_base=f0648000, irq=31) ci_hdrc ci_hdrc.0: EHCI Host Controller ci_hdrc ci_hdrc.0: new USB bus registered, assigned bus number 1 ci_hdrc ci_hdrc.0: USB 2.0 started, EHCI 1.00 hub 1-0:1.0: USB hub found hub 1-0:1.0: 1 port detected ci_hdrc ci_hdrc.1: EHCI Host Controller ci_hdrc ci_hdrc.1: new USB bus registered, assigned bus number 2 ci_hdrc ci_hdrc.1: USB 2.0 started, EHCI 1.00 hub 2-0:1.0: USB hub found hub 2-0:1.0: 1 port detected dhd_module_init in input: gpio-keys as /devices/soc0/gpio-keys/input/input4 snvs_rtc 20cc000.snvs:snvs-rtc-lp: setting system clock to 1970-01-01 00:00:02 UTC (2) can-stby: disabling can-en: disabling VGEN2: disabling SWBST: disabling SW4: disabling ALSA device list: #0: cs42888-audio #1: imx-spdif #2: imx-hdmi-soc usb 1-1: new high-speed USB device number 2 using ci_hdrc hub 1-1:1.0: USB hub found hub 1-1:1.0: 4 ports detected usb 1-1.2: new low-speed USB device number 3 using ci_hdrc input: DELL DELL USB Laser Mouse as /devices/soc0/soc/2100000.aips-bus/2184000.usb/ci_hdrc.0/usb1/1-1/1-1.2/1-1.2:1.0/0003:046D:C063.0001/input/input5 hid-generic 0003:046D:C063.0001: input: USB HID v1.10 Mouse [DELL DELL USB Laser Mouse] on usb-ci_hdrc.0-1.2/input0 usb 1-1.3: new low-speed USB device number 4 using ci_hdrc input: Dell Dell QuietKey Keyboard as /devices/soc0/soc/2100000.aips-bus/2184000.usb/ci_hdrc.0/usb1/1-1/1-1.3/1-1.3:1.0/0003:413C:2106.0002/input/input6 hid-generic 0003:413C:2106.0002: input: USB HID v1.10 Keyboard [Dell Dell QuietKey Keyboard] on usb-ci_hdrc.0-1.3/input0 kjournald starting. Commit interval 5 seconds EXT3-fs (mmcblk2p2): using internal journal EXT3-fs (mmcblk2p2): recovery complete EXT3-fs (mmcblk2p2): mounted filesystem with ordered data mode VFS: Mounted root (ext3 filesystem) on device 179:2. devtmpfs: mounted Freeing unused kernel memory: 432K (80af6000 - 80b62000) Mount failed for selinuxfs on /sys/fs/selinux: No such file or directory random: init urandom read with 34 bits of entropy available init: plymouth-upstart-bridge main process (175) terminated with status 1 init: plymouth-upstart-bridge main process ended, respawning init: plymouth-upstart-bridge main process (185) terminated with status 1 init: plymouth-upstart-bridge main process ended, respawning init: plymouth-upstart-bridge main process (189) terminated with status 1 init: plymouth-upstart-bridge main process ended, respawning init: ureadahead main process (178) terminated with status 5 init: mounted-proc main process (204) terminated with status 1 DBG sensor data is at 7f010188 * Stopping Send an event to indicate plymouth is up [ OK ] * Starting Mount filesystems on boot [ OK ] * Starting Signal sysvinit that the rootfs is mounted [ OK ] * Starting Populate /dev filesystem [ OK ] * Stopping Populate /dev filesystem [ OK ] * Starting Clean /tmp directory [ OK ] * Starting Populate and link to /run filesystem [ OK ] * Stopping Clean /tmp directory [ OK ] * Stopping Populate and link to /run filesystem [ OK ] * Stopping Track if upstart is running in a container [ OK ] * Starting Initialize or finalize resolvconf [ OK ] * Starting set console keymap [ OK ] * Starting Signal sysvinit that virtual filesystems are mounted [ OK ] * Starting Signal sysvinit that virtual filesystems are mounted [ OK ] * Starting Bridge udev events into upstart [ OK ] * Stopping set console keymap [ OK ] * Starting device node and kernel event manager [ OK ] * Starting Signal sysvinit that local filesystems are mounted [ OK ] * Starting Signal sysvinit that remote filesystems are mounted [ OK ] * Starting load modules from /etc/modules [ OK ] * Starting cold plug devices [ OK ] * Starting log initial device creation [ OK ] * Stopping load modules from /etc/modules [ OK ] * Starting flush early job output to logs [ OK ] * Stopping Mount filesystems on boot [ OK ] * Stopping flush early job output to logs [ OK ] * Starting D-Bus system message bus [ OK ] * Starting set console font [ OK ] * Starting SystemD login management service [ OK ] * Stopping set console font [ OK ] * Starting userspace bootsplash [ OK ] * Stopping userspace bootsplash [ OK ] * Starting Send an event to indicate plymouth is up [ OK ] * Starting bluetooth daemon [ OK ] * Stopping Send an event to indicate plymouth is up [ OK ] * Starting system logging daemon [ OK ] * Starting configure network device security [ OK ] * Starting mDNS/DNS-SD daemon [ OK ] * Starting Reload cups, upon starting avahi-daemon to make sure remote q[ OK ]are populated * Starting configure network device [ OK ] * Starting Reload cups, upon starting avahi-daemon to make sure remote q[fail]are populated * Starting configure network device security [ OK ] * Starting configure network device [ OK ] * Starting configure network device security [ OK ] * Starting configure network device security [ OK ] * Starting configure network device [ OK ] * Starting Mount network filesystems [ OK ] * Starting Failsafe Boot Delay [ OK ] * Stopping Mount network filesystems [ OK ] * Starting configure network device [ OK ] * Stopping Failsafe Boot Delay [ OK ] * Starting System V initialisation compatibility [ OK ] * Setting up X socket directories... [ OK ] * Stopping System V initialisation compatibility [ OK ] Last login: Thu Jan 1 00:00:23 UTC 1970 on tty1 Welcome to Linaro 14.04 (GNU/Linux 4.1.15 armv7l) * Documentation: https://wiki.linaro.org/ root@linaro-alip:~# Re: Installing Ubuntu Rootfs on NXP i.MX6 boards I did compile for 4.1.15 kernel but I need to set (configure) proper board instead of Board: MX6Q-Sabreauto revA I need to have: MX6QP-Sabreauto Where and how to configure it? How can I redirect display to HDMI? U-Boot 2016.03 (Nov 03 2016 - 11:28:37 +0100) CPU: Freescale i.MX6QP rev1.0 996 MHz (running at 792 MHz) CPU: Automotive temperature grade (-40C to 125C) at 28C Reset cause: POR Board: MX6Q-Sabreauto revA I2C: ready DRAM: 2 GiB PMIC: PFUZE100 ID=0x10 NAND: 0 MiB MMC: FSL_SDHC: 0, FSL_SDHC: 1 *** Warning - bad CRC, using default environment No panel detected: default to Hannstar-XGA Display: Hannstar-XGA (1024x768) In: serial Out: serial Err: serial switch to partitions #0, OK mmc1 is current device Net: FEC [PRIME] Normal Boot Hit any key to stop autoboot: 0 Re: Installing Ubuntu Rootfs on NXP i.MX6 boards How can I redirect output to HDMI monitor? I am trying to start the system but I got stuck at  * Stopping save kernel messages                                         [ OK ] U-Boot 2015.04 (Nov 02 2016 - 23:46:14) CPU: Freescale i.MX6QP rev1.0 at 792 MHz CPU: Temperature 33 C Reset cause: POR Board: MX6Q-Sabreauto revA I2C: ready DRAM: 2 GiB PMIC: PFUZE100 ID=0x10 NAND: 0 MiB MMC: FSL_SDHC: 0, FSL_SDHC: 1 *** Warning - bad CRC, using default environment No panel detected: default to Hannstar-XGA Display: Hannstar-XGA (1024x768) In: serial Out: serial Err: serial switch to partitions #0, OK mmc1 is current device Net: FEC [PRIME] Normal Boot Hit any key to stop autoboot: 0 switch to partitions #0, OK mmc1 is current device reading boot.scr ** Unable to read file boot.scr ** reading zImage 6022776 bytes read in 309 ms (18.6 MiB/s) Booting from mmc ... reading imx6qp-sabreauto.dtb 46893 bytes read in 20 ms (2.2 MiB/s) Kernel image @ 0x12000000 [ 0x000000 - 0x5be678 ] ## Flattened Device Tree blob at 18000000 Booting using the fdt blob at 0x18000000 Using Device Tree in place at 18000000, end 1800e72c Starting kernel ... Booting Linux on physical CPU 0x0 Linux version 3.14.52 (r59400@Latitude) (gcc version 4.8.5 (Linaro GCC 4.8-2015.06) ) #3 SMP PREEMPT Wed Nov 2 23:55:53 CET 2016 CPU: ARMv7 Processor [412fc09a] revision 10 (ARMv7), cr=10c53c7d CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache Machine model: Freescale i.MX6 Quad Plus SABRE Automotive Board cma: CMA: reserved 320 MiB at 6a000000 Memory policy: Data cache writealloc PERCPU: Embedded 8 pages/cpu @ee71d000 s8320 r8192 d16256 u32768 Built 1 zonelists in Zone order, mobility grouping on. Total pages: 520720 Kernel command line: console=ttymxc3,115200 root=/dev/mmcblk2p2 rootwait rw PID hash table entries: 4096 (order: 2, 16384 bytes) Dentry cache hash table entries: 262144 (order: 8, 1048576 bytes) Inode-cache hash table entries: 131072 (order: 7, 524288 bytes) Memory: 1739228K/2097152K available (7452K kernel code, 460K rwdata, 2596K rodata, 392K init, 433K bss, 357924K reserved, 270336K highmem) Virtual kernel memory layout: vector : 0xffff0000 - 0xffff1000 ( 4 kB) fixmap : 0xfff00000 - 0xfffe0000 ( 896 kB) vmalloc : 0xf0000000 - 0xff000000 ( 240 MB) lowmem : 0x80000000 - 0xef800000 (1784 MB) pkmap : 0x7fe00000 - 0x80000000 ( 2 MB) modules : 0x7f000000 - 0x7fe00000 ( 14 MB) .text : 0x80008000 - 0x809d82d4 (10049 kB) .init : 0x809d9000 - 0x80a3b080 ( 393 kB) .data : 0x80a3c000 - 0x80aaf340 ( 461 kB) .bss : 0x80aaf34c - 0x80b1b99c ( 434 kB) SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=4, Nodes=1 Preemptible hierarchical RCU implementation. NR_IRQS:16 nr_irqs:16 16 L310 cache controller enabled l2x0: 16 ways, CACHE_ID 0x410000c8, AUX_CTRL 0x32070000, Cache size: 1024 kB Switching to timer-based delay loop sched_clock: 32 bits at 3000kHz, resolution 333ns, wraps every 1431655765682ns 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: 4096 (order: 2, 16384 bytes) Mountpoint-cache hash table entries: 4096 (order: 2, 16384 bytes) CPU: Testing write buffer coherency: ok CPU0: thread -1, cpu 0, socket 0, mpidr 80000000 Setting up static identity map for 0x10718008 - 0x10718060 CPU1: Booted secondary processor CPU1: thread -1, cpu 1, socket 0, mpidr 80000001 CPU2: Booted secondary processor CPU2: thread -1, cpu 2, socket 0, mpidr 80000002 CPU3: Booted secondary processor 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 pinctrl core: initialized pinctrl subsystem regulator-dummy: no parameters 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 Use WDOG1 as reset source syscon 20c8000.anatop: regmap [mem 0x020c8000-0x020c8fff] registered vdd1p1: 800 <--> 1375 mV at 1100 mV vdd3p0: 2625 <--> 3400 mV at 3000 mV vdd2p5: 2000 <--> 2750 mV at 2400 mV vddarm: 725 <--> 1450 mV at 1150 mV vddpu: 725 <--> 1450 mV at 1150 mV vddsoc: 725 <--> 1450 mV at 1175 mV syscon 20e0000.iomuxc-gpr: regmap [mem 0x020e0000-0x020e0037] registered syscon 21bc000.ocotp-ctrl: regmap [mem 0x021bc000-0x021bffff] registered 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 bio: create slab at 0 mxs-dma 110000.dma-apbh: initialized cs42888_supply: 3300 mV 3P3V: 3300 mV vio1: 3300 mV vio2: 3300 mV vd: 3300 mV va: 5000 mV platform usb_h1_vbus.30: Driver reg-fixed-voltage requests probe deferral platform usb_otg_vbus.31: Driver reg-fixed-voltage requests probe deferral P3V3_SDa_SWITCHED: 3300 mV i2c-core: driver [max17135] using legacy suspend method i2c-core: driver [max17135] using legacy resume method SCSI subsystem initialized usbcore: registered new interface driver usbfs usbcore: registered new interface driver hub usbcore: registered new device driver usb usbphy_nop1.12 supply vcc not found, using dummy regulator usbphy_nop2.13 supply vcc not found, using dummy regulator i2c i2c-1: IMX I2C adapter registered i2c i2c-2: IMX I2C adapter registered 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 <[email protected]> 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 MIPI CSI2 driver module loaded Advanced Linux Sound Architecture Driver Initialized. Bluetooth: Core ver 2.18 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 cfg80211: Calling CRDA to update world regulatory domain Switched to clocksource mxc_timer1 NET: Registered protocol family 2 TCP established hash table entries: 16384 (order: 4, 65536 bytes) TCP bind hash table entries: 16384 (order: 5, 131072 bytes) TCP: Hash tables configured (established 16384 bind 16384) TCP: reno registered UDP hash table entries: 1024 (order: 3, 32768 bytes) UDP-Lite hash table entries: 1024 (order: 3, 32768 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. hw perfevents: enabled with ARMv7 Cortex-A9 PMU driver, 7 counters available imx rpmsg driver is registered. imx_busfreq busfreq.16: DDR medium rate not supported. Bus freq driver module loaded futex hash table entries: 1024 (order: 4, 65536 bytes) bounce pool size: 64 pages VFS: Disk quotas dquot_6.5.2 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.22) msgmni has been set to 3508 io scheduler noop registered io scheduler deadline registered io scheduler cfq registered (default) backlight.17 supply power not found, using dummy regulator MIPI DSI driver module loaded MIPI DSI driver module loaded mxc_sdc_fb fb.23: registered mxc display driver ldb imx-ipuv3 2800000.ipu: IPU DMFC DP HIGH RESOLUTION: 1(0,1), 5B(2~5), 5F(6,7) Console: switching to colour frame buffer device 128x48 mxc_hdmi 20e0000.hdmi_video: Detected HDMI controller 0x13:0xa:0xa0:0xc1 fbcvt: 1920x1080@60: CVT Name - 2.073M9 mxc_sdc_fb fb.24: registered mxc display driver hdmi mxc_sdc_fb fb.25: NO mxc display driver found! mxc_sdc_fb fb.26: registered mxc display driver ldb 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.2 mxc_hdmi 20e0000.hdmi_video: Read EDID again imx-sdma 20ec000.sdma: initialized pfuze100-regulator 1-0008: Full layer: 2, Metal layer: 1 pfuze100-regulator 1-0008: FAB: 0, FIN: 0 pfuze100-regulator 1-0008: pfuze100 found. SW1AB: 300 <--> 1875 mV at 1375 mV SW1C: 300 <--> 1875 mV at 1375 mV SW2: 800 <--> 1975 mV at 1375 mV SW3A: 400 <--> 1975 mV at 1350 mV SW3B: 400 <--> 1975 mV at 1350 mV SW4: 800 <--> 1975 mV at 1825 mV SWBST: 5000 <--> 5150 mV at 5000 mV VSNVS: 1000 <--> 3000 mV at 3000 mV VREFDDR: 750 mV VGEN1: 800 <--> 1550 mV at 1200 mV VGEN2: 800 <--> 1550 mV at 1500 mV VGEN3: 1800 <--> 3300 mV at 1800 mV VGEN4: 1800 <--> 3300 mV at 3000 mV VGEN5: 1800 <--> 3300 mV at 2500 mV VGEN6: 1800 <--> 3300 mV at 2800 mV Serial: IMX driver 21ec000.serial: ttymxc2 at MMIO 0x21ec000 (irq = 60, base_baud = 5000000) is a IMX 21f0000.serial: ttymxc3 at MMIO 0x21f0000 (irq = 61, base_baud = 5000000) is a IMX mxc_hdmi 20e0000.hdmi_video: create default modelist console [ttymxc3] enabled serial: Freescale lpuart driver 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 si476x-core 1-0063: Using default platform data. si476x-core 1-0063: No IRQ number specified, will use polling si476x-core 1-0063: Error while sending command 0x11 si476x-core 1-0063: The device in inconsistent power state 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 scsi0 : ahci_platform ata1: SATA max UDMA/133 mmio [mem 0x02200000-0x02203fff] port 0x100 irq 71 CAN device driver interface 2094000.can supply xceiver not found, using dummy regulator flexcan 2094000.can: device registered (reg_base=f0238000, irq=143) 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-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 imx_usb 2184000.usb: Can't register ci_hdrc platform device, err=-517 platform 2184000.usb: Driver imx_usb requests probe deferral imx_usb 2184200.usb: Can't register ci_hdrc platform device, err=-517 platform 2184200.usb: Driver imx_usb requests probe deferral mousedev: PS/2 mouse device common for all mice egalax_ts 1-0004: Failed to read firmware version egalax_ts: probe of 1-0004 failed with error -5 2-0044 supply vdd not found, using dummy regulator input: isl29023 light sensor as /devices/virtual/input/input1 isl29023 2-0044: driver version 1.0 enabled i2c-core: driver [isl29023] using legacy suspend method i2c-core: driver [isl29023] using legacy resume method snvs_rtc 20cc034.snvs-rtc-lp: can't get snvs-rtc clock snvs_rtc 20cc034.snvs-rtc-lp: rtc core: registered 20cc034.snvs-rtc-lp as rtc0 i2c /dev entries driver IR NEC protocol handler initialized IR RC5(x) protocol handler initialized IR RC6 protocol handler initialized IR JVC protocol handler initialized IR Sony protocol handler initialized IR RC5 (streamzap) protocol handler initialized IR SANYO protocol handler initialized IR MCE Keyboard/mouse protocol handler initialized mxc_v4l2_output v4l2_out.35: V4L2 device registered as video16 mxc_v4l2_output v4l2_out.35: V4L2 device registered as video17 mxc_v4l2_output v4l2_out.35: V4L2 device registered as video18 mxc_v4l2_output v4l2_out.35: V4L2 device registered as video19 mxc_v4l2_output v4l2_out.35: V4L2 device registered as video20 2-000e supply vdd not found, using dummy regulator 2-000e supply vddio not found, using dummy regulator mag3110 2-000e: check mag3110 chip ID input: mag3110 as /devices/virtual/input/input2 mag3110 2-000e: mag3110 is probed i2c-core: driver [mag3110] using legacy suspend method i2c-core: driver [mag3110] using legacy resume method 2-001c supply vdd not found, using dummy regulator 2-001c supply vddio not found, using dummy regulator ata1: SATA link down (SStatus 0 SControl 300) ahci-imx 2200000.sata: no device found, disabling link. ahci-imx 2200000.sata: pass ahci_imx..hotplug=1 to enable hotplug input: mma845x as /devices/virtual/input/input3 imx2-wdt 20bc000.wdog: IMX2+ Watchdog Timer enabled. timeout=60s (nowayout=0) Bluetooth: HCI UART driver ver 2.2 Bluetooth: HCI H4 protocol initialized Bluetooth: HCI BCSP protocol initialized Bluetooth: HCIATH3K protocol initialized 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 mmc0: no vqmmc regulator found mmc0: no vmmc regulator found mmc0: SDHCI controller on 2190000.usdhc [2190000.usdhc] using ADMA mmc2: no vqmmc regulator found mmc2: SDHCI controller on 2198000.usdhc [2198000.usdhc] using ADMA Warning: No contiguous memory is reserverd for gpu.! Warning: Will use default value(134217728) for the reserved memory! Galcore version 5.0.11.41671 mmc2: Problem setting current limit! mmc2: new ultra high speed DDR50 SDHC card at address aaaa mmcblk2: mmc2:aaaa SU08G 7.40 GiB mmcblk2: p1 p2 mxc_vdoa 21e4000.vdoa: i.MX Video Data Order Adapter(VDOA) driver probed mxc_vpu 2040000.vpu: VPU initialized caam 2100000.caam: Instantiated RNG4 SH0 caam 2100000.caam: Instantiated RNG4 SH1 caam 2100000.caam: device ID = 0x0a160100 (Era 4) caam 2100000.caam: job rings = 2, qi = 0 caam algorithms registered in /proc/crypto caam_jr 2101000.jr0: registering rng-caam platform caam_sm: blkkey_ex: 4 keystore units available 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: platform caam_sm: [0000] e5 67 1a 32 44 12 3e 71 platform caam_sm: [0008] 35 de 20 2e 43 ce ec 82 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] d4 b2 d2 cd de 16 e3 b1 platform caam_sm: [0008] 13 7c 1e af 4c a4 40 14 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] 3d 4f 1d c9 83 84 b5 8a platform caam_sm: [0008] 50 8e de 15 8e 02 00 8d platform caam_sm: [0016] 67 cd 31 2d c6 9c 13 60 platform caam_sm: [0024] 35 2d b7 c2 10 76 36 e9 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] c4 4e d7 b6 3e 43 2f 66 platform caam_sm: [0008] 36 df f3 c9 1c b4 d5 28 platform caam_sm: [0016] 4b 48 f0 e6 04 2e 87 2c platform caam_sm: [0024] 30 f4 10 8d c6 91 bd 77 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] 9c 5f c6 a9 06 33 a5 a5 platform caam_sm: [0008] de 27 35 d8 15 e5 a1 4f platform caam_sm: [0016] f7 e1 e8 d0 74 23 fd a8 platform caam_sm: [0024] 68 81 69 46 49 13 17 3e platform caam_sm: [0032] 9c fc 15 f5 39 0a c6 3d platform caam_sm: [0040] d7 00 d0 49 9a bb 3f c3 platform caam_sm: [0048] e4 ef 05 f9 e5 38 da f8 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] 84 6e 68 1d 03 6b f8 3b platform caam_sm: [0008] 09 da 7c 60 70 f4 df 65 platform caam_sm: [0016] 95 b5 48 9d 70 e4 47 ca platform caam_sm: [0024] e9 1f 5a e5 f0 43 26 a7 platform caam_sm: [0032] a9 90 65 92 42 ab fd 46 platform caam_sm: [0040] fb 3d e9 13 5c 24 f1 e9 platform caam_sm: [0048] 8b ca b4 c1 10 23 9d 66 platform caam_sm: [0056] 85 68 14 30 47 ce 43 c0 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] 57 a6 97 3f 43 96 cf 87 platform caam_sm: [0008] 1f 72 89 a6 a0 ad 0e 48 platform caam_sm: [0016] 7a ad 5c e4 6e 37 04 3d platform caam_sm: [0024] e4 95 c9 09 aa c7 12 bb platform caam_sm: [0032] 56 3c d7 dc 03 6b 2f e1 platform caam_sm: [0040] 16 a8 c2 c3 78 7a 95 ce platform caam_sm: [0048] 05 75 fc d4 a6 84 be d3 platform caam_sm: [0056] c7 df 01 4f bc 17 fd 9d platform caam_sm: [0064] 98 25 68 26 f6 9b 5c 99 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] fe a8 22 dd 34 d2 00 3e platform caam_sm: [0008] 7e e8 32 93 59 a4 96 72 platform caam_sm: [0016] 47 9a dd 3e fe 2a 83 27 platform caam_sm: [0024] 92 05 b2 c8 cc 3e fe 64 platform caam_sm: [0032] 9b 6b 2d 47 bc 58 ca 1c platform caam_sm: [0040] 8d c2 b4 94 81 b1 80 bf platform caam_sm: [0048] 0e 59 38 50 47 61 09 f4 platform caam_sm: [0056] 22 c2 fa 92 56 92 df 2e platform caam_sm: [0064] 62 84 43 56 69 3a 85 f1 platform caam_sm: [0072] c4 f4 f7 54 46 4c 0b ca 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] c8 bd 51 12 0f 8c 3c 9b platform caam_sm: [0008] 94 ac 86 67 55 65 75 24 platform caam_sm: restored 128-bit black key: platform caam_sm: [0000] d4 b2 d2 cd de 16 e3 b1 platform caam_sm: [0008] 13 7c 1e af 4c a4 40 14 platform caam_sm: restored 192-bit black key: platform caam_sm: [0000] 3d 4f 1d c9 83 84 b5 8a platform caam_sm: [0008] 50 8e de 15 8e 02 00 8d platform caam_sm: [0016] 47 6b e3 e8 62 6f 89 8f platform caam_sm: [0024] 7c dc 6f eb cc 73 30 1c platform caam_sm: restored 256-bit black key: platform caam_sm: [0000] c4 4e d7 b6 3e 43 2f 66 platform caam_sm: [0008] 36 df f3 c9 1c b4 d5 28 platform caam_sm: [0016] 4b 48 f0 e6 04 2e 87 2c platform caam_sm: [0024] 30 f4 10 8d c6 91 bd 77 snvs-secvio 20cc000.caam-snvs: can't 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 cs42xx8 1-0048: found device, revision 4 fsl-asrc 2034000.asrc: driver registered snd-soc-dummy snd-soc-dummy: ASoC: Failed to create platform debugfs directory imx-cs42888 sound-cs42888.27: cs42888 <-> 2024000.esai mapping ok imx-cs42888 sound-cs42888.27: snd-soc-dummy-dai <-> 2034000.asrc mapping ok imx-cs42888 sound-cs42888.27: cs42888 <-> 2024000.esai mapping ok imx-spdif sound-spdif.20: snd-soc-dummy-dai <-> 2004000.spdif mapping ok imx-audio-hdmi sound-hdmi.21: hdmi-hifi <-> hdmi_audio.3 mapping ok imx-tuner-si476x sound-fm.33: failed to find FM platform device imx-tuner-si476x: probe of sound-fm.33 failed with error -22 NET: Registered protocol family 26 TCP: cubic registered 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 VGEN2: disabling SWBST: disabling SW4: disabling regulator-dummy: disabling imx mcc test is registered. usb_h1_vbus: 5000 mV usb_otg_vbus: 5000 mV ci_hdrc ci_hdrc.0: EHCI Host Controller ci_hdrc ci_hdrc.0: new USB bus registered, assigned bus number 1 ci_hdrc ci_hdrc.0: USB 2.0 started, EHCI 1.00 hub 1-0:1.0: USB hub found hub 1-0:1.0: 1 port detected ci_hdrc ci_hdrc.1: doesn't support gadget ci_hdrc ci_hdrc.1: EHCI Host Controller ci_hdrc ci_hdrc.1: new USB bus registered, assigned bus number 2 ci_hdrc ci_hdrc.1: USB 2.0 started, EHCI 1.00 hub 2-0:1.0: USB hub found hub 2-0:1.0: 1 port detected input: gpio-keys.18 as /devices/soc0/gpio-keys.18/input/input4 snvs_rtc 20cc034.snvs-rtc-lp: setting system clock to 1970-01-01 00:00:02 UTC (2) ALSA device list: #0: cs42888-audio #1: imx-spdif #2: imx-hdmi-soc usb 1-1: new high-speed USB device number 2 using ci_hdrc hub 1-1:1.0: USB hub found hub 1-1:1.0: 4 ports detected kjournald starting. Commit interval 5 seconds EXT3-fs (mmcblk2p2): using internal journal EXT3-fs (mmcblk2p2): recovery complete EXT3-fs (mmcblk2p2): mounted filesystem with ordered data mode VFS: Mounted root (ext3 filesystem) on device 179:2. devtmpfs: mounted Freeing unused kernel memory: 392K (809d9000 - 80a3b000) usb 1-1.2: new low-speed USB device number 3 using ci_hdrc Mount failed for selinuxfs on /sys/fs/selinux: No such file or directory random: init urandom read with 68 bits of entropy available input: DELL DELL USB Laser Mouse as /devices/soc0/soc.0/2100000.aips-bus/2184000.usb/ci_hdrc.0/usb1/1-1/1-1.2/1-1.2:1.0/0003:046D:C063.0001/input/input5 hid-generic 0003:046D:C063.0001: input: USB HID v1.10 Mouse [DELL DELL USB Laser Mouse] on usb-ci_hdrc.0-1.2/input0 usb 1-1.3: new low-speed USB device number 4 using ci_hdrc init: plymouth-upstart-bridge main process (177) terminated with status 1 init: plymouth-upstart-bridge main process ended, respawning init: plymouth-upstart-bridge main process (187) terminated with status 1 init: plymouth-upstart-bridge main process ended, respawning init: plymouth-upstart-bridge main process (190) terminated with status 1 init: plymouth-upstart-bridge main process ended, respawning input: Dell Dell QuietKey Keyboard as /devices/soc0/soc.0/2100000.aips-bus/2184000.usb/ci_hdrc.0/usb1/1-1/1-1.3/1-1.3:1.0/0003:413C:2106.0002/input/input6 hid-generic 0003:413C:2106.0002: input: USB HID v1.10 Keyboard [Dell Dell QuietKey Keyboard] on usb-ci_hdrc.0-1.3/input0 init: ureadahead main process (180) terminated with status 5 init: mounted-proc main process (204) terminated with status 1 DBG sensor data is at 7f010190 * Starting Mount filesystems on boot [ OK ] * Stopping Send an event to indicate plymouth is up [ OK ] * Starting Signal sysvinit that the rootfs is mounted [ OK ] * Starting Clean /tmp directory [ OK ] * Starting Populate and link to /run filesystem [ OK ] * Stopping Populate and link to /run filesystem [ OK ] * Stopping Clean /tmp directory [ OK ] * Stopping Track if upstart is running in a container [ OK ] * Starting Initialize or finalize resolvconf [ OK ] * Starting Signal sysvinit that virtual filesystems are mounted [ OK ] * ERROR: v4l2 capture: slave not found! Starting Signal sysvinit that virtual filesystems are mounted [ OK ] * Starting Bridge udev events into upstart [ OK ] * Starting Signal sysvinit that local filesystems are mounted [ OK ] * Starting Signal sysvinit that remote filesystems are mounted [ OK ] * Stopping Mount filesystems on boot [ OK ] * Starting device node and kernel event manager [ OK ] * Starting flush early job output to logs [ OK ] * Starting load modules from /etc/modules [ OK ] * Starting cold plug devices [ OK ] * Starting log initial device creation [ OK ] * Stopping flush early job output to logs [ OK ] * Stopping load modules from /etc/modules [ OK ] * Starting set console font [ OK ] * Starting system logging daemon [ OK ] * Stopping set console font [ OK ] * Starting userspace bootsplash [ OK ] * Stopping userspace bootsplash [ OK ] * Starting Send an event to indicate plymouth is up [ OK ] * Stopping Send an event to indicate plymouth is up [ OK ] * Starting configure network device security [ OK ] * Starting configure network device [ OK ] * Starting configure network device security [ OK ] * Starting configure network device security [ OK ] * Starting configure network device security [ OK ] * Starting configure network device [ OK ] * Starting Mount network filesystems [ OK ] * Starting Failsafe Boot Delay [ OK ] * Stopping Mount network filesystems [ OK ] * Starting configure network device [ OK ] * Starting Bridge socket events into upstart [ OK ] * Starting Bridge file events into upstart [ OK ] * Starting Mount network filesystems [ OK ] * Starting configure network device [ OK ] * Stopping Failsafe Boot Delay [ OK ] * Starting System V initialisation compatibility [ OK ] * Stopping System V initialisation compatibility [ OK ] * Starting System V runlevel compatibility [ OK ] * Starting save kernel messages [ OK ] * Starting configure network device security [ OK ] * Starting regular background program processing daemon [ OK ] * Stopping System V runlevel compatibility [ OK ] * Stopping Mount network filesystems [ OK ] * Stopping save kernel messages [ OK ] Re: Installing Ubuntu Rootfs on NXP i.MX6 boards HI Erik, I do not have a i.mx 6 QuadPlus board to try. If you tried and share me the results. Thanks! Wenming Re: Installing Ubuntu Rootfs on NXP i.MX6 boards Have you chance to test it for i.MX 6QuadPlus SABRE-AI Board? Can be used a newer BSP rel_imx_4.1.15_1.1.0_ga?  Re: Installing Ubuntu Rootfs on NXP i.MX6 boards Hi , I build one following the guidance for my im53qsb reference board. But I got kernel panic at imx5_pm_init, I am using the imx_v7_defconfig, is anybody else has this issue or has fix for this issue or can I remove the pm configuration. U-Boot 2015.04 (Oct 04 2016 - 12:17:39) Board: MX53 LOCO I2C: ready DRAM: 1 GiB MMC: FSL_SDHC: 0, FSL_SDHC: 1 *** Warning - bad CRC, using default environment In: serial Out: serial Err: serial Net: FEC Hit any key to stop autoboot: 0 switch to partitions #0, OK mmc0 is current device reading boot.scr ** Unable to read file boot.scr ** reading zImage 5997120 bytes read in 346 ms (16.5 MiB/s) Booting from mmc ... reading imx53-qsrb.dtb 24491 bytes read in 19 ms (1.2 MiB/s) Kernel image @ 0x72000000 [ 0x000000 - 0x5b8240 ] ## Flattened Device Tree blob at 71000000 Booting using the fdt blob at 0x71000000 Loading Device Tree to 8f552000, end 8f55afaa ... OK Starting kernel ... Booting Linux on physical CPU 0x0 Linux version 3.14.38 (lucid@ubuntu) (gcc version 4.8.5 (Linaro GCC 4.8-2015.06) ) #1 SMP PREEMPT Wed Oct 5 06:56:31 PDT 2016 CPU: ARMv7 Processor [412fc085] revision 5 (ARMv7), cr=10c53c7d CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache Machine model: Freescale i.MX53 Quick Start Board cma: CMA: reserved 320 MiB at bc000000 Memory policy: Data cache writeback CPU: All CPU(s) started in SVC mode. PERCPU: Embedded 8 pages/cpu @cb33f000 s8320 r8192 d16256 u32768 Built 1 zonelists in Zone order, mobility grouping on. Total pages: 259072 Kernel command line: console=ttymxc0,115200 root=/dev/mmcblk0p2 rw rootwait 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: 699820K/1048576K available (7423K kernel code, 456K rwdata, 2584K rodata, 384K init, 432K bss, 348756K reserved, 0K highmem) Virtual kernel memory layout: vector : 0xffff0000 - 0xffff1000 ( 4 kB) fixmap : 0xfff00000 - 0xfffe0000 ( 896 kB) vmalloc : 0xe0800000 - 0xff000000 ( 488 MB) lowmem : 0x80000000 - 0xe0000000 (1536 MB) pkmap : 0x7fe00000 - 0x80000000 ( 2 MB) modules : 0x7f000000 - 0x7fe00000 ( 14 MB) .text : 0x80008000 - 0x809ce000 (10008 kB) .init : 0x809ce000 - 0x80a2e080 ( 385 kB) .data : 0x80a30000 - 0x80aa20c0 ( 457 kB) .bss : 0x80aa20cc - 0x80b0e25c ( 433 kB) SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=1, Nodes=1 Preemptible hierarchical RCU implementation. RCU restricting CPUs from NR_CPUS=4 to nr_cpu_ids=1. RCU: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=1 NR_IRQS:16 nr_irqs:16 16 TrustZone Interrupt Controller (TZIC) initialized CPU identified as i.MX53, silicon rev 2.1 Switching to timer-based delay loop sched_clock: 32 bits at 33MHz, resolution 30ns, wraps every 128849019873ns clocksource_of_init: no matching clocksources found Console: colour dummy device 80x30 Calibrating delay loop (skipped), value calculated using timer frequency.. 66.66 BogoMIPS (lpj=333333) 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 -1, mpidr 0 Setting up static identity map for 0x70710420 - 0x70710478 Brought up 1 CPUs SMP: Total of 1 processors activated (66.66 BogoMIPS). CPU: All CPU(s) started in SVC mode. devtmpfs: initialized VFP support v0.3: implementor 41 architecture 3 part 30 variant c rev 2 pinctrl core: initialized pinctrl subsystem regulator-dummy: no parameters NET: Registered protocol family 16 DMA: preallocated 256 KiB pool for atomic coherent allocations cpuidle: using governor ladder cpuidle: using governor menu Use WDOG1 as reset source syscon 53fa8000.iomuxc-gpr: regmap [mem 0x53fa8000-0x53fa800b] registered hw-breakpoint: debug architecture 0x4 unsupported. imx53-pinctrl 53fa8000.iomuxc: initialized IMX pinctrl driver bio: create slab at 0 3P2V: 3200 mV usb_vbus: 5000 mV i2c-core: driver [max17135] using legacy suspend method i2c-core: driver [max17135] using legacy resume method SCSI subsystem initialized usbcore: registered new interface driver usbfs usbcore: registered new interface driver hub usbcore: registered new device driver usb usbphy.1 supply vcc not found, using dummy regulator usbphy.2 supply vcc not found, using dummy regulator i2c i2c-1: IMX I2C adapter registered da9052: probe of 0-0048 failed with error -5 i2c i2c-0: IMX I2C adapter registered 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 <[email protected]> PTP clock support registered imx-ipuv3: probe of 18000000.ipu failed with error -22 MIPI CSI2 driver module loaded Advanced Linux Sound Architecture Driver Initialized. Bluetooth: Core ver 2.18 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 cfg80211: Calling CRDA to update world regulatory domain 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) TCP: reno registered 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. imx rpmsg driver is registered. Bus freq driver module loaded futex hash table entries: 256 (order: 2, 16384 bytes) VFS: Disk quotas dquot_6.5.2 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.22) msgmni has been set to 2006 io scheduler noop registered io scheduler deadline registered io scheduler cfq registered (default) MIPI DSI driver module loaded imx-sdma 63fb0000.sdma: no iram assigned, using external mem imx-sdma 63fb0000.sdma: no event needs to be remapped imx-sdma 63fb0000.sdma: Direct firmware load failed with error -2 imx-sdma 63fb0000.sdma: Falling back to user helper imx-sdma 63fb0000.sdma: initialized Serial: IMX driver 53fbc000.serial: ttymxc0 at MMIO 0x53fbc000 (irq = 47, base_baud = 4166666) is a IMX console [ttymxc0] enabled serial: Freescale lpuart driver 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 CAN device driver interface 63fec000.ethernet supply phy not found, using dummy regulator libphy: fec_enet_mii_bus: probed ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver ehci-mxc: Freescale On-Chip EHCI Host driver usbcore: registered new interface driver usb-storage usbcore: registered new interface driver usb_ehset_test 53f80800.usbmisc supply vbus-wakeup not found, using dummy regulator ci_hdrc ci_hdrc.1: doesn't support gadget 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 input: mma8450 as /devices/virtual/input/input0 i2c-core: driver [isl29023] using legacy suspend method i2c-core: driver [isl29023] using legacy resume method i2c /dev entries driver IR NEC protocol handler initialized IR RC5(x) protocol handler initialized IR RC6 protocol handler initialized IR JVC protocol handler initialized IR Sony protocol handler initialized IR RC5 (streamzap) protocol handler initialized IR SANYO protocol handler initialized IR MCE Keyboard/mouse protocol handler initialized coda 63ff4000.vpu: Direct firmware load failed with error -2 coda 63ff4000.vpu: Falling back to user helper i2c-core: driver [mag3110] using legacy suspend method i2c-core: driver [mag3110] using legacy resume method imx2-wdt 53f98000.wdog: IMX2+ Watchdog Timer enabled. timeout=60s (nowayout=0) Bluetooth: HCI UART driver ver 2.2 Bluetooth: HCI H4 protocol initialized Bluetooth: HCI BCSP protocol initialized Bluetooth: HCIATH3K protocol initialized 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 mmc0: no vqmmc regulator found mmc0: no vmmc regulator found mmc0: SDHCI controller on 50004000.esdhc [50004000.esdhc] using ADMA mmc1: no vqmmc regulator found mmc1: no vmmc regulator found mmc0: host does not support reading read-only switch. assuming write-enable. mmc1: SDHCI controller on 50020000.esdhc [50020000.esdhc] using ADMA mmc0: new high speed SDHC card at address 0007 Job Ring Device allocation for transform failed mmcblk0: mmc0:0007 SD16G 14.5 GiB usbcore: registered new interface driver usbhid usbhid: USB HID core driver mmcblk0: p1 p2 sgtl5000 1-000a: sgtl5000 revision 0x11 imx-sgtl5000 sound.8: phandle missing or invalid imx-sgtl5000: probe of sound.8 failed with error -22 NET: Registered protocol family 26 TCP: cubic registered 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 Unable to handle kernel paging request at virtual address f51a000c pgd = 80004000 [f51a000c] *pgd=00000000 Internal error: Oops: 5 [#1] PREEMPT SMP ARM Modules linked in: CPU: 0 PID: 1 Comm: swapper/0 Not tainted 3.14.38 #1 task: c8068000 ti: c806c000 task.ti: c806c000 PC is at mx5_cpu_lp_set+0x10/0xfc LR is at imx5_pm_init+0x64/0x80 pc : [<8001d804>] lr : [<809da58c>] psr: 60000113 sp : c806dedc ip : 00000072 fp : 00000000 r10: c806c038 r9 : 80a1ee7c r8 : 809d1190 r7 : 80aa2100 r6 : 80aa2100 r5 : 00000007 r4 : c801b600 r3 : f51a0000 r2 : 8001d8f0 r1 : 00000002 r0 : 00000002 Flags: nZCv IRQs on FIQs on Mode SVC_32 ISA ARM Segment kernel Control: 10c5387d Table: 70004019 DAC: 00000015 Process swapper/0 (pid: 1, stack limit = 0xc806c238) Stack: (0xc806dedc to 0xc806e000) dec0: c801b600 dee0: 00000007 809da58c 80a2b80c 809d11b0 00000000 800088bc c800ccc0 808c7d28 df00: c8096200 80714144 00000000 00000000 00000000 8012a57c 00000000 80a446b0 df20: 60000113 00000001 cbfffc2e 8073b938 0000010b 800498e0 80996644 00000007 df40: cbfffc36 00000007 80a446a0 80a2b80c 00000007 80aa2100 80aa2100 809ce50c df60: 80a1ee7c 0000010b 80a1ee74 809cec38 00000007 00000007 809ce50c 8070fbd8 df80: 00000000 00002100 80706164 00000000 00000000 00000000 00000000 00000000 dfa0: 00000000 80706170 00000000 8000e278 00000000 00000000 00000000 00000000 dfc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 dfe0: 00000000 00000000 00000000 00000000 00000013 00000000 80000220 08040010 [<8001d804>] (mx5_cpu_lp_set) from [<809da58c>] (imx5_pm_init+0x64/0x80) [<809da58c>] (imx5_pm_init) from [<809d11b0>] (init_machine_late+0x20/0x28) [<809d11b0>] (init_machine_late) from [<800088bc>] (do_one_initcall+0xf8/0x144) [<800088bc>] (do_one_initcall) from [<809cec38>] (kernel_init_freeable+0x13c/0x1dc) [<809cec38>] (kernel_init_freeable) from [<80706170>] (kernel_init+0xc/0xe8) [<80706170>] (kernel_init) from [<8000e278>] (ret_from_fork+0x14/0x3c) Code: e3a03000 e92d4030 e1a01000 e34f351a (e593c00c) ---[ end trace 65acb852349b9d5b ]--- Kernel panic - not syncing: Attempted to kill init! exitcode=0x0000000b T Re: Installing Ubuntu Rootfs on NXP i.MX6 boards Hi, Please use the flashing procedure from our Ubuntu release blog post. Regards, Gary Re: Installing Ubuntu Rootfs on NXP i.MX6 boards My uboot print (couldn't find the document attachment option) baudrate=115200 board=sabrelite bootargs=console=ttymxc0,115200 root=/dev/mmcblk2p1 rootwait rw video=mxcfb1:dev=ldb,LDB-XGA,if=RGB666 video=mxcfb0:dev=hdmi,1920x1080M@60,if=RGB24 bootargs_base=setenv bootargs console=ttymxc0,115200 bootargs_mmc=setenv bootargs ${bootargs} root=/dev/mmcblk2p1 rootwait rw bootcmd=run bootcmd_mmc bootcmd_mmc=run bootargs_base bootargs_mmc;mmc dev 1;mmc read ${loadaddr} 0x800 0x4000;mmc read ${fdt_addr} 0x5000 0x800;bootm ${loadaddr} - ${fdt_addr} bootdelay=3 bootdevs=sata mmc usb clearenv=if sf probe || sf probe || sf probe 1 ; then sf erase 0xc0000 0x2000 && echo restored environment to factory default ; fi cmd_hdmi=fdt set fb_hdmi status okay;fdt set fb_hdmi mode_str 1280x720M@60; cmd_lcd=fdt set fb_lcd status disabled cmd_lvds=fdt set fb_lvds status disabled console=ttymxc1 cpu=6Q dfu_alt_info=u-boot raw 0x0 0xc0000 ethact=FEC ethaddr=00:19:b8:02:79:6c ethprime=FEC fdt_addr=0x18000000 fdt_high=0xffffffff filesize=70c00 initrd_high=0xffffffff kernel=uImage loadaddr=0x80800000 loadsplash=if sf probe ; then sf read ${splashimage} c2000 ${splashsize} ; fi reset_cause=1 rundfu=dfu 0 sf 0:0:25000000:0 stdout=serial,vga uboot_defconfig=nitrogen6q umsdevs=sata mmc upgradeu=for dtype in ${bootdevs}; do for disk in 0 1 ; do ${dtype} dev ${disk};load ${dtype} ${disk}:1 10008000 /6x_upgrade && source 10008000 ; done ; done usbnet_devaddr=00:19:b8:00:00:02 usbnet_hostaddr=00:19:b8:00:00:01 usbrecover=setenv ethact usb_ether; setenv ipaddr 10.0.0.2; setenv netmask 255.255.255.0; setenv serverip 10.0.0.1; setenv bootargs console=ttymxc1,115200; tftp boot 10800000 10.0.0.1:uImage-${board}-recovery&& tftpboot 12800000 10.0.0.1:uramdisk-${board}-recovery.img && bootm 10800000 12800000 Environment size: 1701/8188 bytes => boot switch to partitions #0, OK mmc1 is current device MMC read: dev # 1, block # 2048, count 16384 ... 16384 blocks read: OK MMC read: dev # 1, block # 20480, count 2048 ... 2048 blocks read: OK Wrong Image Format for bootm command ERROR: can't get kernel image! Re: Installing Ubuntu Rootfs on NXP i.MX6 boards Hi Gary, thanks for your reply. Now the situation is like this : I want to interface an analog TV encoder (adv7343) to the RGB port of the imx6 (in BDSL). According to what I have researched, I need adding few modifications to the mxc_lcd.if of the linux kernel (3.14.52_1.1.0_ga) to use lcd driver in V_SYNC | H_SYNC mode to support this encoder. So I have no option (or do I?) rather than building a new kernel (as these drivers are builtin modules), and that's why I thought of building a bootable SD card myself.  I think the steps I followed in preparing SD should be okay, but to note what I've done in brief : ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ export DISK=/dev/sdg sudo dd if=/dev/zero of=${DISK} bs=1M count=10 cd binary/ sudo dd if=u-boot.imx of=${DISK} bs=512 seek=2 sync //------------create partition table sudo fdisk ${DISK} d       //delete all partitions currently on sd n       // create new partition p       // Primary partition 1       // partition number 1 2048 //default +1G    // n       // created 2d parition p 2 default default w sudo mkfs.vfat ${DISK}1 sudo mkfs.ext3 ${DISK}2 Mount ext3 SD partition to /media/rootfs: sudo mount ${DISK1} /media/kernel_target sudo mount ${DISK}2 /media/rootfs_target sudo cp –v binary/ i$target-$board.dtb /media/kernel_target    //dtb file sudo cp –v binary/uImage /media/kernel_target                        //uImage  sudo mv /media/rootfs/* /media/rootfs_target                             //root file sys ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- As you said the NAND flashed uboot already has required environment variables, and the uboot 'print' is attached to this comment. Now after the uboot prompt, I get the following message in console terminal : switch to partitions #0, OK mmc1 is current device MMC read: dev # 1, block # 2048, count 16384 ... 16384 blocks read: OK MMC read: dev # 1, block # 20480, count 2048 ... 2048 blocks read: OK Wrong Image Format for bootm command ERROR: can't get kernel image! So from this point, how should I proceed ? do these environment variables cause the issue or is SD card preparation wrong?  Thanks in advance ! Re: Installing Ubuntu Rootfs on NXP i.MX6 boards Hi Anuradha, Actually for SabreLite you don't need to follow the above instructions, we already provide an Ubuntu image ready to go: https://boundarydevices.com/ubuntu-xenial-mx67-boards-august-2016-kernel-4-1-15/  Or if you'd rather use Debian: https://boundarydevices.com/debian-8-3-jessie-for-i-mx6-boards-february-2016-kernel-3-14-28/  Note that in our case all the NXP components like the graphics library, VPU support, Chrome hw acceleration are packaged. That means that when a new graphics library version is out, you just need to do "apt update && apt upgrade" and you are up-to-date. Hope this helps. Regards, Gary Re: Installing Ubuntu Rootfs on NXP i.MX6 boards Hi Anuradha, please refer to https://community.nxp.com/message/836641?commentID=836641&et=watches.email.thread#comment-836641  this doc, about old uboot with new kernel. Re: Installing Ubuntu Rootfs on NXP i.MX6 boards Hi, thanks for this excellent doc, and I have a question on rootfs system. I am using imx6 sabrelite board and have exactly followed the guidelines in this doc. I cross compiled all the files on an Ubuntu platform, and after the unmount and inserted the SD card to my board. The kernel boot process requests 6x_bootscript file and it seems like the older uBoot is operating fron Nand Flash. How should I solve this issue by setting my own uBoot to prompt and load rootfs and zImage ? Thanks Re: Installing Ubuntu Rootfs on NXP i.MX6 boards Hi all, I find the gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux.tar.xz compiler not working on ubuntu14.04, I tried with gcc-linaro-4.8-2015.06-x86_64_arm-linux-xxxx works. Regards! Wenming Re: Installing Ubuntu Rootfs on NXP i.MX6 boards HI, Does somebody encounter /bin/sh 1: arm-linux-gnueabihf-gcc not found issue? this is a symlink to arm-linux-gnueabihf-gcc-4.9.4. any fix to it is highly appreciated. Thanks aheard. wenming Re: Installing Ubuntu Rootfs on NXP i.MX6 boards How to connect it to HDMI Display? Is there any additional changes or If I connect to HDMI it will show desktop??
記事全体を表示
The benefits of choosing products with NXP security features (Japanese blog) Introduction NXP has long been developing products such as smart cards and secure elements for mobile devices. Based on these technologies, we offer a scalable range of embedded products, including MCUs/MPUs with built-in cryptographic accelerators, MCUs/MPUs with built-in EdgeLock ® secure enclaves, and dedicated security ICs (secure elements, secure authenticators), allowing for easy migration when products with different security strengths are required. We also offer a cloud service (EdgeLock 2GO) that securely writes confidential information to EdgeLock Secure Enclaves, Secure Elements, and Secure Authenticators. This article introduces the features and benefits of NXP's security-enabled products. NXP Hardware Security Product Features NXP offers products and services with the following security features, allowing users to select the optimal product based on the security level they require. Security features and services Feature Overview Cryptographic Accelerators Hardware-based encryption processing function implemented in MCU/MPU EdgeLock ® Secure Enclave A security block implemented within an MCU/MPU that integrates the above cryptographic accelerator as well as numerous other security functions. Secure Element/Authenticator An external IC specialized for security. EdgeLock 2GO A cloud service that supports key management and secure provisioning. In particular, products such as the EdgeLock ® Secure Enclave and Secure Element/Authenticator offer advanced security features not available in other companies' products. Even if you are not sure what level of security you need at the moment, by choosing NXP products, you can easily migrate to products with different security strengths if you need more advanced security features or if you no longer need them. NXP MCU/MPU without cryptographic accelerator or EdgeLock Secure Enclave MCU/MPU with built-in cryptographic accelerator or EdgeLock secure enclave External security IC (secure element/authenticator) The features when compared are shown below. Note: The actual features provided vary by product, so please check the product specifications for details.   1. MCU/MPU without cryptographic accelerator or EdgeLock Secure Enclave 2. MCU/MPU with built-in cryptographic accelerator or EdgeLock Secure Enclave 3. External security IC (secure element/authenticator) Product Examples MCX A(essential security), MCX C MCX A(advanced security), MCX L, MCX E, MCX N i.MX RT, i.MX 8, i.MX 9 SE05x, A5000, A30 Strong security ・Security software must run on the application CPU - Possibility of confidential information being leaked due to vulnerabilities in the application CPU and the software executed there. ・Application CPUs generally prioritize processing speed, and tamper resistance is a low priority (or is not considered at all) - Robust security with a dedicated security block that is physically independent from the application CPU ・Protection of confidential information from vulnerabilities in application CPU-side SW - Physical tamper resistance that also protects against some physical attacks ・In addition to 2., it also supports advanced physical attacks. Easier implementation of security software ・Security software (including key management and encryption algorithms) must be implemented and verified on the user software side. -Security processing has been implemented on the security function side In addition to 2., the following advantages are also provided: ・More advanced key management ・Product security can be strengthened without changing the MCU/MPU ・Security implementation can be standardized between systems using different host MCUs/MPUs Facilitating certification of final products ・If there is no security certification, it is necessary to extract information on compliance with cybersecurity standard requirements from product documentation or obtain it from customer support. -Third-party certification (SESIP/PSA) obtained - Evidence of conformance can be provided , and support is provided for obtaining cybersecurity standard certification for final products. - Meets the high-level hardware security requirements of various cybersecurity standards (depending on use cases) - In addition to 2, the more stringent Common Criteria (CC) certification has been obtained. Easier key writing (Provisioning) Customers must have PKI and manufacturing infrastructure for secure provisioning ・Initial investment and preparation period are required for new businesses ( EdgeLock Secure Enclave only) Flexible and secure key provisioning through the EdgeLock 2GO cloud service , enabling easy product launch. In addition to key provisioning with EdgeLock 2GO, factory-programmed credentials can be used for simple applications. While we've covered strong security and making security software easier to implement, we'll go into a bit more detail on third-party authentication and provisioning. Third-party certification Regardless of the security function used, the security processing behavior (output relative to input) will be the same, although there may be differences in processing speed. However, the security strength (tamper resistance, etc.) will differ depending on the security function implementation. Furthermore, even among products that are called the same secure element, the actual software/hardware implementation varies depending on the company. Security must also be considered in semiconductor suppliers' organizational structures and handling processes such as product development, manufacturing, and operation. The differences in security performance and processes of these semiconductor products from each company make it extremely difficult for users to compare them based on specifications or benchmarks. One way to solve these problems is to use third-party certification. Third-party certifications for ICs with security functions include SESIP, PSA, Common Criteria, and FIPS. A third-party organization evaluates the security implementation and operation of the security features declared by device manufacturers on a unified scale, verifying and certifying that they have been implemented correctly. In addition, we can provide documented evidence for products that have received third-party certification. This document allows customers to confirm how NXP products meet the requirements of cybersecurity standards, which is expected to reduce the effort required to ensure that end products incorporating NXP products comply with cybersecurity standards. NXP calls products that have received third-party certification under its EdgeLock ® Assurance program "Certified EdgeLock Assurance Products." A list of Certified EdgeLock Assurance products can be found here. You can also find product and certification evidence in the standards body's certified product lists. SESIP Certification List PSA Certification List Common Criteria (CC) Certified List The fact that components such as ICs/devices have already received third-party certification is expected to reduce the risk of non-compliance even when manufacturers obtain third-party certification for cybersecurity standards for their final products. For example, under the CRA (EU Cyber Resilience Act), products categorized as Default and Class 1 can be self-declared as well as third-party certified, but end users may still request third-party certification. About Secure Provisioning Service (EdgeLock 2GO) Products with security features require users to provision the confidential information they will use in their applications before they can actually be used. Provisioning must be done in a secure environment, and setting up a new secure environment on a user's production line requires a great deal of effort and expense. Additionally, if a user has multiple manufacturing bases, support will be required for each one. Furthermore, if manufacturing is outsourced, problems may arise such as it being difficult to exercise such control, or there being only a limited number of outsourcees that can exercise such control. NXP's secure elements/authenticators come pre-programmed with some identifying information at the NXP factory, and for simple use cases can be used without any provisioning during manufacturing. For complex use cases that cannot be covered by the identity information pre-programmed into the secure element/authenticator, or for MCU/MPU products with an integrated EdgeLock secure enclave that does not have pre-programmed identity information, NXP offers a cloud service ( EdgeLock 2GO ) that can be used in combination with NXP ICs. EdgeLock 2GO provides a means for secure provisioning during manufacturing and in the field by providing the ability to generate unique identities (key pairs and certificates) for each device and end-to-end encryption between EdgeLock 2GO and the device. In addition, EdgeLock 2GO's certificate authority is approved as a certificate authority that can issue certificates required by standards such as Matter and Qi. You can use it with confidence as a certificate authority that meets the requirements of these standards, not only when compliance with these standards is required, but also when it is not. In a separate article, we will take a closer look at the potential threats faced when handling confidential information on your production line and how EdgeLock 2GO addresses them. Software support for working with EdgeLock Secure Enclaves/Secure Elements We have mentioned that security can be strengthened by using products with security features. However, there are no set standards for APIs for using hardware security features, and each company has its own unique specifications. Doesn't this make it difficult to develop applications using these APIs? NXP provides middleware for host applications that not only provide device-specific APIs but also plugins for popular cryptographic libraries such as OpenSSL, PKCS#11, and Mbed-TLS. For example, by using a plugin for OpenSSL, applications that rely on OpenSSL (e.g., Eclipse Mosquitto ™ ) can use key protection using secure elements without any modifications. We will introduce practical use cases in a separate article. =========================​ We are currently unable to respond to comments in the " Comment " section of this post . We apologize for the inconvenience, but when making inquiries, please refer to " How to contact NXP with technical questions ( Japanese blog ) " . (If you are already an NXP distributor or have a relationship with NXP , you may ask the person in charge directly.) NXP has long been developing products such as smart cards and secure elements for mobile devices. Based on these technologies, we offer a scalable range of embedded products, including MCUs/MPUs with built-in cryptographic accelerators, MCUs/MPUs with built-in EdgeLock ® secure enclaves, and dedicated security ICs (secure elements, secure authenticators), allowing for easy migration when products with different security strengths are required. We also offer a cloud service (EdgeLock 2GO) that securely writes sensitive information to EdgeLock ® Secure Enclaves, Secure Elements, and Secure Authenticators. This article introduces the features and benefits of NXP's security-enabled products. Security Japanese Blog
記事全体を表示
调试工具在使用最新版 SDK_25_12_00 时显示为灰色,在使用旧版 SDK_25_03_00 时工作正常 运行 MCUXpresso IDE V25.6.136 版+ 带有 SDK_25_12_00 的 evkmimxrt685 板。调试开始时,所有调试工具(恢复...)都显示为灰色,无法运行项目。 使用旧版 SDK_25_03_00 可以正常工作,但使用 SDK_25_06_00 和 SDK_25_09_00 会出现同样的问题。 如何恢复调试工具 Re: Debug tools greyed out with latest SDK_25_12_00, work fine with older SDK_25_03_00 你好,卡洛斯,包括 hello world 在内的所有示例都出现了这种情况。它总是停在"void ResetISR(void) 函数的第一行,即 startup_mimxrt685s.c 中的 __asm volatile ("cpsid i") 行(第 381 行)。文件。我正在尝试运行 evkmimxrt685_dsp_mu_polling_cm33。该示例在 25.03 版本中运行正常。之后的所有版本(06、09、12)都有这个问题。对于 24.03 之后的 SDK 版本,我是否需要在集成开发环境中进行一些更改?我有截图,但如何发布呢?谢谢@bobvr Re: Debug tools greyed out with latest SDK_25_12_00, work fine with older SDK_25_03_00 你好,卡洛斯,我正在上传截图> 包括 hello world 在内的所有示例都出现了这种情况。它总是停在"void ResetISR(void) 函数的第一行,即启动目录下 startup_mimxrt685s.c 文件中的 __asm volatile ("cpsid i") 行(第 381 行)。它从未进入 main() 开始运行。 我试图运行 evkmimxrt685_dsp_mu_polling_ cm33。cm33。该示例在 25.03 版本中运行正常。之后的所有版本(06、09、12)都有这个问题。对于 24.03 之后的 SDK 版本,我是否需要在集成开发环境中做一些更改? 谢谢 bobvr Re: Debug tools greyed out with latest SDK_25_12_00, work fine with older SDK_25_03_00 你好@bobvr 能否请您介绍一下您的计算机使用的是哪个操作系统?Linux、Windows 10 还是 Windows 11? 能否请您检查一下 EVK 的 BOOT_SEL 是否选择正确? Re: Debug tools greyed out with latest SDK_25_12_00, work fine with older SDK_25_03_00 我正在戴尔 Alder Lake 台式机上运行 Windows 11。启动跳线 (JP1) 处于打开状态,根据手册(MIMXRT685-AUD-EVKUM 修订版 3-2023 年 7 月 21 日),这是默认设置。我想这就是您所说的"查看 EVK" 的 BOOT_SEL 的意思。谢谢 bobvr Re: Debug tools greyed out with latest SDK_25_12_00, work fine with older SDK_25_03_00 你好@bobvr 感谢您分享您的设置细节。 能否请您对闪存进行一次大规模擦除,然后重新进行调试? 为此,请在快速启动面板上更改链接服务器操作 然后使用 LinkServer 探测器将其返回到调试模式。 如果在此过程中出现任何错误信息,请分享截图。 Re: Debug tools greyed out with latest SDK_25_12_00, work fine with older SDK_25_03_00 卡洛斯,我试图用链接服务器进行大规模清除,但得到了错误信息--截图附后。 谢谢 Re: Debug tools greyed out with latest SDK_25_12_00, work fine with older SDK_25_03_00 卡洛斯,谢谢。在此之前,我想让您知道,我一直使用世纪佳缘 J-Link 探头,使用世纪佳缘 J-Link 探头" 菜单选项可进行"清除闪存操作。我应该用它清除还是用你上面提到的链接服务器探针清除? Re: Debug tools greyed out with latest SDK_25_12_00, work fine with older SDK_25_03_00 你好,卡洛斯,我使用 Segger J-Link 探头(不是链接服务器探头,因为该固件已被 Segger 固件覆盖)删除了闪存。 我知道我必须使用 Segger 探针来调试 ARM 内核和 HiFi4 DSP。我还将 Segger 固件更新到了最新的 8.98 版本。 我删除了调试启动文件,删除了工作区以在启动时生成一个新文件,还重新启动了板。还是同样的问题。 它说调试会话正在运行,但我无法调试。 正如我所说,03 之后的所有版本(06、09 和 12)都会出现这种情况。 它停在 startup_mimxrt685s.c 处文件。 在调试器控制台中,我确实看到了一条警告信息,但这可能是无害的。 "警告:无法将 "main "从主机编码 (CP1252) 转换为 UTF-32。 这种情况通常不会发生,请提交错误报告。 监测执行器 setrestartonClose=1 请告知下一步措施。谢谢 bobvr。 Re: Debug tools greyed out with latest SDK_25_12_00, work fine with older SDK_25_03_00 你好@bobvr 感谢您分享您正在使用的产品。 如果尝试使用链接服务器调试,问题是否仍然存在?如果您收到错误信息,请与我们分享。
記事全体を表示
S32Design studio 中的 S32k322 ADC 双用途问题 你好、 我使用 ADC1 有两个目的。我为高速电流检测配置了两个通道,这需要启用特定的"控制模式"。但是,我还需要使用同一 ADC 上的其他几个通道进行电压和温度检测,并配置为"正常链式转换",而这些通道目前无法工作。造成这种冲突的原因是什么?如果可以将 ADC 用于双重目的,请访问" ,这里附有 FYR 的配置图像。 芯片为 s32k322 系列 Re: S32k322 ADC Dual Purpose issue in S32Design studio 您好, 这是我写的,在 BCTU 控制模式下,无法启动正常转换。你需要更改设置才能使用 "触发信号模式" 作为 Adc Ctu Mode 选项 BR, Petr Re: S32k322 ADC Dual Purpose issue in S32Design studio control modecontrol modecontrol mode控制模式 Normal ChainNormal ChainNormal ChainNormalChain 抱歉,我现在附上了配置图像。问题是,当我启用电流检测控制模式时,正常的链式转换(电压和温度)就会停止工作。 我使用 ADC1 有两个目的。 这就是我问这个问题的主要原因:是否有可能将 ADC1 配置和用于双重目的,即同时使用控制模式(用于电流检测)和普通链式转换(用于电压/温度检测)? Re: S32k322 ADC Dual Purpose issue in S32Design studio 您好, 这里似乎没有附上配置图像。 总之,如果 ADC 配置为 BCTU 控制模式(MCR[BCTU_MODE] = 0),则只有 BCTU 才能启动转换。所有其他触发信号都将被忽略。 在触发信号模式(MCR [BCTU_MODE] = 1)下,也可以执行普通和注入转换。所有类型的转换都可以在此模式下启动。设备 RM 的 BCTU 触发信号模式第 60.3.6.1 章中讨论了三种转换类型的优先级。 BR, Petr Re: S32k322 ADC Internal Temperature issue in S32Design studio 你好@PetrS、 我将 14 位 ADC 配置为内部温度传感,但 RTD 温度传感宏仅定义为 12 位分辨率,并在 Adc_Sar_Ip.h 和 Adc_Sar_Ip.c 中使用 12 位温度实例。因此,计算的温度、ADC 原始读数和测量的电压都会发生振荡,且不正确。在配置 14 位 ADC 时,RTD 功能是否应自动切换到 14 位,还是需要定义 14 位分辨率宏并手动更新 API 功能?此处附上图片供您参考。 RTD Function Defined MacrosRTD 函数定义的宏 Calculated Value Configuration tab计算值配置选项卡
記事全体を表示
如何使用 HSE 固件二进制文件对恩智浦 S32K344 MCU 进行编程?需要哪种调试器? 我正在使用 S32K344 MCU,并希望在其中使用 HSE。 我从 nxp flexnet 下载了 HSE Fw 可执行文件。 在解压缩 exe 文件时,我得到了 hse 粉色文件。 但是无法得到,我应该如何将这个二进制文件转储到 S32K344 MCU? 他们是否需要像 lauterback 这样的外部调试器来刷新二进制粉色文件?或者我也读过他们的 HSE_demo_App,我们可以通过它对 HSE 固件进行编程。如果是,我们可以从哪里获得 S32K344 MCU 的 HSE 演示应用程序? Re: How to Program NXP S32K344 MCU with HSE Firmware Binary? Which debugger is needed? #I 正在开发 S32K3X4EVB-T172 板并尝试安装 HSE 固件 HSE 固件刷新成功,但我的应用程序总是停在: if (FALSE == checkHseFwFeatureFlagEnabled()) { /* Stuck here */ } 因此,HSE FW 初始化无法进行。 我检查了 UTEST 区域 (0x1B000080),得到的值是0XFFFFFFFF ,请查看我们的项目和图像,并帮助我们解决这个问题。 谢谢 Re: How to Program NXP S32K344 MCU with HSE Firmware Binary? Which debugger is needed? 你好@Kunal_Gettobyte 最新版本的 HSE 固件中引入了 HSE_SRV_ID_ERASE_FW 服务。该服务将清除 HSE 固件、备份和 SYS-IMG (HSE 数据)固件,但仅限于生命周期仍处于 CUST_DEL 时。您可以参考下面的社区主题,我的一位同事在其中简要介绍了如何做到这一点。 安装 HSE 固件 Re: How to Program NXP S32K344 MCU with HSE Firmware Binary? Which debugger is needed? 嗨,恩智浦技术团队,关于我上一条评论有什么新进展吗? 因此,在通用 HSE 演示示例 中,我得到了 HSE Fw 安装示例。 但是,如果要删除 HSE Fw,并使用不带 HSE Fw 的芯片,又该怎么办呢?那我怎样才能做得更好? 是否也有删除 HSE Fw 的例子? 如果我想删除 HSE Fw,该怎么做? Re: How to Program NXP S32K344 MCU with HSE Firmware Binary? Which debugger is needed? 您好, 好吧,我知道了。 因此,在通用 HSE 演示示例 中,我得到了 HSE Fw 安装示例。 但是,如果要删除 HSE Fw,并使用不带 HSE Fw 的芯片,又该怎么办呢?那我怎样才能做得更好? 是否也有删除 HSE Fw 的例子? 谢谢并致以诚挚的问候 库纳尔-古普塔 Re: How to Program NXP S32K344 MCU with HSE Firmware Binary? Which debugger is needed? 你好@Kunal_Gettobyte HSE 演示应用程序可以从 S32K3 标准软件 → 汽车软件-S32K3-HSE 固件 → S32K358 HSE FW 0.2.40.0 RTM 版本中下载。此外,用于通用 HSE 演示示例的 S32K3 MCU 可在 S32K3 设备页面(适用于汽车通用的 S32K3 微控制器)的设计资源 → 软件下找到。版本说明随软件一起提供,可以在下载的文件中找到。 关于 RTD 版本,HSE 演示应用程序或非用于通用的 HSE 演示示例的 S32K3 MCU 都不是使用 RTD 开发的,其运行也不需要 RTD。 Re: How to Program NXP S32K344 MCU with HSE Firmware Binary? Which debugger is needed? 好的,您从哪里下载HSE 演示应用程序和用于通用 HSE 演示示例的 S32K3 MCU? 因为我想知道我需要安装哪个 RTD 版本。 还需要用于环境设置的 HSE 演示的发行版本说明文档。 Re: How to Program NXP S32K344 MCU with HSE Firmware Binary? Which debugger is needed? 你好@Kunal_Gettobyte 如果我之前的回答不够清楚,请原谅。 HSE 演示 APP 和通用 HSE 演示示例 S32K3 MCU 都提供了以 FULL_MEM 或 A/B_SWAP 方式安装 HSE 固件的示例。这些应用程序设计用于T32 Lauterbach或PEMicro,因为这些是我们直接支持的设备。但是,该过程可以由任何与我们的设备兼容的程序员执行。 此外,我们还有一份应用笔记,解释了安装 HSE 固件的步骤,该固件也可以在安全文件中找到。如前所述,有关更多详细信息,建议查阅《HSE参考手册》。 Re: How to Program NXP S32K344 MCU with HSE Firmware Binary? Which debugger is needed? 您好, 啊哈,你的回答没有准确回答我的问题。 我最关心的是,有什么方法可以将 HSE 固件编程到我的控制器 S32K344 中? 将 HSE 固件编程到 S32K344 MCU 需要什么调试器? 我们只能通过劳特巴赫 对 HSE 固件进行编程吗?如果是,那么没有劳特巴赫的用户如何编程 HSE FW(因为劳特巴赫 相当昂贵)。 PeMicro 或 Segger Jlink 调试器是否不支持 HSE FW 编程? 使用 HSE 演示应用程序可以闪存 HSE Fw 吗?如果是,那么使用相应的 HSE 演示应用程序是否需要劳特巴赫(lauterbach),或者通过 PeMicro 是否也可以使用 HSE 演示应用程序,然后从中进一步闪存 HSE Fw? 主要问题是如何将 HSE Fw 闪存到我的 S32K344 MCU 中,有哪些方法/调试器可供选择(除了直接/间接使用劳特巴赫)。 Re: How to Program NXP S32K344 MCU with HSE Firmware Binary? Which debugger is needed? 你好@Kunal_Gettobyte HSE DEMO APP 需要 T32 Lauterbach 才能运行。不过,如果您没有 T32 Lauterbach,也可以通过S32K3 MCU for General Purpose HSE Demo Examples 找到替代方案。两者都提供了不同的用例场景和示例,以演示 HSE 固件在各种设备上的功能。关键区别在于,后者是专门为与 PEmicro 和 S32 Design Studio 配合使用而开发的,因为这两个工具可以很好地相互集成,允许使用 IDE 进行直接调试。 有关在 S32K3 中使用 HSE 的更多信息,建议查阅安全文件中提供的 HSE 参考手册以及每个 HSE 固件版本附带的 API 参考。 BR、VaneB Re: How to Program NXP S32K344 MCU with HSE Firmware Binary? Which debugger is needed? 你好@VaneB请提供有关我们的问题的最新消息......请问我们没有问题的原因是什么? Re: How to Program NXP S32K344 MCU with HSE Firmware Binary? Which debugger is needed? # 你好@VaneB 请提供有关我们的问题的任何最新消息......请问我们不是什么原因?
記事全体を表示
i.MX6 DDR Stress Test Tool V1.0.3 Note, the tools described in this page are deprecated and are no longer maintained.  For the latest maintained i.MX 6/7 series DDR tools, the user can find these here: i.MX 6/7 Series DDR Tool Release Hi All, DDR_Stress_Tester is a software application for fine tuning DDR parameters and verifying DDR performance on i.MX6 boards. It performs write leveling, DQS gating, read/write delay calibration on the target board to match the layout of the board and archive the best DDR performance. In addition, the stress test can help the user to verify the DDR performance on their boards. The following are the features supported: • Support i.MX6Q, i.MX6D, i.MX6DL, iMX6S, i.MX6SL, and i.MX6SX DDR calibration. • Support DDR3 write leveling, DQS gating, Read/Write Delay auto-calibration. • Support LPDDR2 Read/Write Delay auto-calibration. • Support 16 bits, 32 bits, and 64 bits data bus. • Support fixed-mapping 2-channel LPDDR2. • Support DDR stress test between the frequency 135MHz and 672 MHz If  USB OTG port is not available on customer board, please use the images in DDR_Stress_Tester_V1.0.3_UART1_for_SDboot&JTAG.zip. The bin files in the packages can be loaded by uboot and elf files are used by JTAG load.  Please note when the image is loaded by u-boot, the DDR is initialized by u-boot (reference flash_header.S). To run ddr stress test from u-boot, CONFIG_SPLASH_SCREEN must be disabled in u-boot. Because when enter self refresh mode in ddr stress test, DRAM access will be blocked. If splash screen in u-boot is enabled, IPU will continuously access DRAM, so the system will hang up. If you have other DMA access in u-boot, it must be disabled. If customer uses different RX/TX pin for UART, please contact FAE. UART1 6DQ 6DL 6SL 6SX TX CSI0_DAT10/ALT3 CSI0_DAT10/ALT3 UART1_TXD/ALT0 GPIO1_IO04/ALT0 RX CSI0_DAT11/ALT3 CSI0_DAT11/ALT3 UART1_RXD/ALT0 GPIO1_IO05/ALT0 The commands to run ddr test in i.MX6Q uboot: U-Boot > fatload mmc 2:1 0x907000 ddr-stress-test-mx6dq.bin U-Boot > go 0x907000 For i.MX6Q/6D 4K interleaved LPDDR2, please use version v1.0.3.1. i.MX6 DDR Stress Test Tool V1.0.3.1 for LPDDR2 4K interleaved mode For i.MX6/i.MX7 DDR Stress Test Tool with GUI interface, please use version V2.x: i.MX6/7 DDR Stress Test Tool V2.10 History V1.0.3:  i.MX6SoloX is supported. Re: i.MX6 DDR Stress Test Tool V1.0.3 V0.042 is not suggested for i.MX6. There are a lot of differences between v0.042 and v1.0.x. The memory property is different. Re: i.MX6 DDR Stress Test Tool V1.0.3 I took a look at it in more detail and the actual difference is not USB OTG vs SDBoot, it was the DDRStressTester version. We were originally testing OSB OTG DDRStressTester v0.042, we were getting 3min for 2GB DDR there. When we started with the SDBoot, we tested with v1.0.2. which gave 8min for 2GB. When I retested v1.0.2 USB OTG, I get 8min for 2GB. Retesting for 512MB does give me the 2min you were getting. The main items the were significantly longer in v1.0.2 was t0.1 data is addr test, t1 memcpy8 SSN x64 test, t3 memcypy11 random pattern test. What caused the drastic change in performance between v0.042 and v1.0.2? Thanks Re: i.MX6 DDR Stress Test Tool V1.0.3 Hi Mark, I have not see the difference you described. i.MX6Q: L3.0.35_4.1.0 u-boot  ( modification: comment out drv_lcd_init () in common/stdio.c ) DDR density selected (MB): 512 There is no difference on the time to run one loop through USB OTG and through u-boot loading, both are around 2 mins. You can try to modify the u-boot as my changes. Grace Re: i.MX6 DDR Stress Test Tool V1.0.3 Hi Mark, I have not see the difference you described. i.MX6Q: L3.0.35_4.1.0 u-boot  ( modification: comment out drv_lcd_init () in common/stdio.c ) DDR density selected (MB): 512 There is no difference on the time to run one loop through USB OTG and through u-boot loading, both are around 2 mins. You can try to modify the u-boot as my changes. Grace Re: i.MX6 DDR Stress Test Tool V1.0.3 Hi Grace Si, We are using the imx6 DDR Stress Tester both through USB OTG and loading through uboot with the SDBoot version. We noticed in usbotg, we finish one loop in about 3minutes while the SDboot version finished in about 8minutes. Is this expected and what is causing this time difference? Thanks Re: i.MX6 DDR Stress Test Tool V1.0.3 Hi Grace Si, We are using the imx6 DDR Stress Tester both through USB OTG and loading through uboot with the SDBoot version. We noticed in usbotg, we finish one loop in about 3minutes while the SDboot version finished in about 8minutes. Is this expected and what is causing this time difference? Thanks Re: i.MX6 DDR Stress Test Tool V1.0.3 Hi Casper, Please contact your FAE or Marketing. Grace Re: i.MX6 DDR Stress Test Tool V1.0.3 Hi Casper, Please contact your FAE or Marketing. Grace Re: i.MX6 DDR Stress Test Tool V1.0.3 hello Grace           is anyway to support us to create that pattern in? we can pay for a whole sulotion! or who should i  contact? thanks ^^ Re: i.MX6 DDR Stress Test Tool V1.0.3 We don't have plan for it. Grace Re: i.MX6 DDR Stress Test Tool V1.0.3 We don't have plan for it. Grace Re: i.MX6 DDR Stress Test Tool V1.0.3 Hello is it possible to add in precharge power down test in Stress test?? tks ^^ Re: i.MX6 DDR Stress Test Tool V1.0.3 Hello is it possible to add in precharge power down test in Stress test?? tks ^^ Re: i.MX6 DDR Stress Test Tool V1.0.3 Hello is it possible to add in precharge power down test in Stress test?? tks ^^ Re: i.MX6 DDR Stress Test Tool V1.0.3 Hello is it possible to add in precharge power down test in Stress test?? tks ^^ Re: i.MX6 DDR Stress Test Tool V1.0.3 I don't know how I missed this, but knowing that I could launch the DDR Stress Test tool from U-Boot would have saved us a lot of time. GraceSi wrote: In my log below, you can see the load size of ddr-stress-test-mx6dq.bin is  87520, but yours is 96660. None of the binaries in the v1.0.2 or v1.0.3 ZIP files has a size of 87520 bytes.  My copy of ddr-stress-test-mx6dq.bin (v1.0.3) is 96660 bytes. Another point is what I mentioned before, is the RX/TX pin of  UART1 of your board same as i.MX6DQ EVK? If not, please contact your FAE. i.MX6DQ UART1 :     /* UART1 TXD */     writel(ALT3, IOMUXC_SW_MUX_CTL_PAD_CSI0_DAT10);     /* UART1 RXD */     writel(ALT3, IOMUXC_SW_MUX_CTL_PAD_CSI0_DAT11);     // daisy chain setup    writel(0x1, IOMUXC_UART1_IPP_UART_RXD_MUX_SELECT_INPUT); If you're successfully talking to U-Boot over UART1, then it's probably already set up correctly :-). Currently watching the tool rotating through DDR3 clock frequencies... Re: i.MX6 DDR Stress Test Tool V1.0.3 I don't know how I missed this, but knowing that I could launch the DDR Stress Test tool from U-Boot would have saved us a lot of time. GraceSi wrote: In my log below, you can see the load size of ddr-stress-test-mx6dq.bin is  87520, but yours is 96660. None of the binaries in the v1.0.2 or v1.0.3 ZIP files has a size of 87520 bytes.  My copy of ddr-stress-test-mx6dq.bin (v1.0.3) is 96660 bytes. Another point is what I mentioned before, is the RX/TX pin of  UART1 of your board same as i.MX6DQ EVK? If not, please contact your FAE. i.MX6DQ UART1 :     /* UART1 TXD */     writel(ALT3, IOMUXC_SW_MUX_CTL_PAD_CSI0_DAT10);     /* UART1 RXD */     writel(ALT3, IOMUXC_SW_MUX_CTL_PAD_CSI0_DAT11);     // daisy chain setup    writel(0x1, IOMUXC_UART1_IPP_UART_RXD_MUX_SELECT_INPUT); If you're successfully talking to U-Boot over UART1, then it's probably already set up correctly :-). Currently watching the tool rotating through DDR3 clock frequencies... Re: i.MX6 DDR Stress Test Tool V1.0.3 I tried to test 4GB DDR3 on CS0 only and got calibration data with option "9" (maximum supported density). However, I got error on t0.1 Address of failure: 0x10000000 Data was: 0x90000000 when I set MMDC0_MDASP to 0x7F. I got error on t0.1 Address of failure: 0xc0000000 Data was: 0xffffffc0 when I set MMDC0_MDASP to 0x5F. Is this hardware or software limitation? Re: i.MX6 DDR Stress Test Tool V1.0.3 I tried to test 4GB DDR3 on CS0 only and got calibration data with option "9" (maximum supported density). However, I got error on t0.1 Address of failure: 0x10000000 Data was: 0x90000000 when I set MMDC0_MDASP to 0x7F. I got error on t0.1 Address of failure: 0xc0000000 Data was: 0xffffffc0 when I set MMDC0_MDASP to 0x5F. Is this hardware or software limitation? Re: i.MX6 DDR Stress Test Tool V1.0.3 hi Azlum      performance checking we suggest at least 500loops. Casper Re: i.MX6 DDR Stress Test Tool V1.0.3 hi Azlum      performance checking we suggest at least 500loops. Casper Re: i.MX6 DDR Stress Test Tool V1.0.3 Dear Casper, How many RAM test loop need to be completed ? When I run the RAM stress test, it crossed around 470 loops. So whether can I consider this as Pass ? Regards, Azlum Re: i.MX6 DDR Stress Test Tool V1.0.3 Dear Casper, How many RAM test loop need to be completed ? When I run the RAM stress test, it crossed around 470 loops. So whether can I consider this as Pass ? Regards, Azlum Re: i.MX6 DDR Stress Test Tool V1.0.3 Hello Grace i try to modify as below setmem /32 0x021b000c = 0x3F433F13  // MMDC0_MDCFG0          for txpdll is set a unreasonable value for DDR3 but it still test pass. does it mean no tXPDLL related in DDR3 stress test?? Re: i.MX6 DDR Stress Test Tool V1.0.3 Hello Grace i try to modify as below setmem /32 0x021b000c = 0x3F433F13  // MMDC0_MDCFG0          for txpdll is set a unreasonable value for DDR3 but it still test pass. does it mean no tXPDLL related in DDR3 stress test?? Re: i.MX6 DDR Stress Test Tool V1.0.3 please go to Freescale i.MX6 DRAM Port Application Guide-DDR3 Grace Re: i.MX6 DDR Stress Test Tool V1.0.3 please go to Freescale i.MX6 DRAM Port Application Guide-DDR3 Grace Re: i.MX6 DDR Stress Test Tool V1.0.3 hello Grace           suppose it is not modified in stress test aid. suppose txpdll is setle when DDR3 init! so how can i modify it before init?? Re: i.MX6 DDR Stress Test Tool V1.0.3 hi Grace      but if i want to tuning tXPDLL of DDR3 how can i do in iMX6 solo? Re: i.MX6 DDR Stress Test Tool V1.0.3 hi Grace      but if i want to tuning tXPDLL of DDR3 how can i do in iMX6 solo? Re: i.MX6 DDR Stress Test Tool V1.0.3 txpdll should follow the value in datasheet of your DDR3. It is not supposed to be tested. Grace Re: i.MX6 DDR Stress Test Tool V1.0.3 txpdll should follow the value in datasheet of your DDR3. It is not supposed to be tested. Grace Re: i.MX6 DDR Stress Test Tool V1.0.3 hello    we test DDR3 in IMx6 solo. we want to know if it can inclulde txpdll test by DDR3 stress test? it appricated if any solution or suggestion thank you for your kinldy help ^^ Re: i.MX6 DDR Stress Test Tool V1.0.3 hello    we test DDR3 in IMx6 solo. we want to know if it can inclulde txpdll test by DDR3 stress test? it appricated if any solution or suggestion thank you for your kinldy help ^^ Re: i.MX6 DDR Stress Test Tool V1.0.3 Hi Patrick, Are you using the binary in DDR_Stress_Tester_V1.0.3_UART1_for_SDboot&JTAG.zip or DDR_Stress_Tester_V1.0.2_UART1_for_SDboot&JTAG.zip. Even the name is same, but the binary files in package DDR_Stress_Tester_UART1_for_SDboot&JTAG.zip and DDR_Stress_Tester.zip are different. In my log below, you can see the load size of ddr-stress-test-mx6dq.bin is  87520, but yours is 96660. Another point is what I mentioned before, is the RX/TX pin of  UART1 of your board same as i.MX6DQ EVK? If not, please contact your FAE. i.MX6DQ UART1 :     /* UART1 TXD */     writel(ALT3, IOMUXC_SW_MUX_CTL_PAD_CSI0_DAT10);     /* UART1 RXD */     writel(ALT3, IOMUXC_SW_MUX_CTL_PAD_CSI0_DAT11);     // daisy chain setup    writel(0x1, IOMUXC_UART1_IPP_UART_RXD_MUX_SELECT_INPUT); Grace Re: i.MX6 DDR Stress Test Tool V1.0.3 Hi Patrick, Are you using the binary in DDR_Stress_Tester_V1.0.3_UART1_for_SDboot&JTAG.zip or DDR_Stress_Tester_V1.0.2_UART1_for_SDboot&JTAG.zip. Even the name is same, but the binary files in package DDR_Stress_Tester_UART1_for_SDboot&JTAG.zip and DDR_Stress_Tester.zip are different. In my log below, you can see the load size of ddr-stress-test-mx6dq.bin is  87520, but yours is 96660. Another point is what I mentioned before, is the RX/TX pin of  UART1 of your board same as i.MX6DQ EVK? If not, please contact your FAE. i.MX6DQ UART1 :     /* UART1 TXD */     writel(ALT3, IOMUXC_SW_MUX_CTL_PAD_CSI0_DAT10);     /* UART1 RXD */     writel(ALT3, IOMUXC_SW_MUX_CTL_PAD_CSI0_DAT11);     // daisy chain setup    writel(0x1, IOMUXC_UART1_IPP_UART_RXD_MUX_SELECT_INPUT); Grace Re: i.MX6 DDR Stress Test Tool V1.0.3 Hi there, I'm using an i.MX6Q part on my board and I don't have OTG so I am following your instructions on loading from u-boot or JTAG. JTAG I've had no luck so I thought I'd switch over to u-boot. U-Boot > ext2load mmc 0:1 0x907000 ddr-stress-test-mx6dq.bin 96660 bytes read in 43 ms (2.1 MiB/s) U-Boot > go 0x907000 ## Starting application at 0x00907000 ... then it just sits there and doesn't load anything further... any ideas? Re: i.MX6 DDR Stress Test Tool V1.0.3 Hi there, I'm using an i.MX6Q part on my board and I don't have OTG so I am following your instructions on loading from u-boot or JTAG. JTAG I've had no luck so I thought I'd switch over to u-boot. U-Boot > ext2load mmc 0:1 0x907000 ddr-stress-test-mx6dq.bin 96660 bytes read in 43 ms (2.1 MiB/s) U-Boot > go 0x907000 ## Starting application at 0x00907000 ... then it just sits there and doesn't load anything further... any ideas? Re: i.MX6 DDR Stress Test Tool V1.0.3 Hi Leo, Please check whether the RX/TX pin of  UART1 is same as i.MX6DL EVK,  if not, the DDR_Stress_Tester_V1.0.3_UART1_for_SDboot&JTAG.zip or DDR_Stress_Tester_V1.0.2_UART1_for_SDboot&JTAG.zip. will not work. please contact your FAE to build the software to configure the correct UART. i.MX6DL UART1 :     /* UART1 TXD */     writel(ALT3, IOMUXC_SW_MUX_CTL_PAD_CSI0_DAT10);     /* UART1 RXD */     writel(ALT3, IOMUXC_SW_MUX_CTL_PAD_CSI0_DAT11);     // daisy chain setup     writel(0x1, IOMUXC_UART1_IPP_UART_RXD_MUX_SELECT_INPUT); Grace Re: i.MX6 DDR Stress Test Tool V1.0.3 Hi Leo, Please check whether the RX/TX pin of  UART1 is same as i.MX6DL EVK,  if not, the DDR_Stress_Tester_V1.0.3_UART1_for_SDboot&JTAG.zip or DDR_Stress_Tester_V1.0.2_UART1_for_SDboot&JTAG.zip. will not work. please contact your FAE to build the software to configure the correct UART. i.MX6DL UART1 :     /* UART1 TXD */     writel(ALT3, IOMUXC_SW_MUX_CTL_PAD_CSI0_DAT10);     /* UART1 RXD */     writel(ALT3, IOMUXC_SW_MUX_CTL_PAD_CSI0_DAT11);     // daisy chain setup     writel(0x1, IOMUXC_UART1_IPP_UART_RXD_MUX_SELECT_INPUT); Grace Re: i.MX6 DDR Stress Test Tool V1.0.3 Bump. We are about to crank our new board to 1 GHz timings, and I'd like to be able to get this nailed down.  The DDR3 Script Aid is very useful, but ultimately I want to use the Stress Test Tool to dial them in. So far I've had no (apparent) success being able to run the Stress Test Tool using nothing but JTAG.  This may well be because I'm not using JTAG correctly.  Is there an FAQ or HOWTO somewhere that might point me in the right direction? Also: Does setting up the DDR3 timings also set up the core clock?  We'd like the ARM cores to run at 1 GHz as well; do we get that for "free" when using the output from the Script Aid? Re: i.MX6 DDR Stress Test Tool V1.0.3 Bump. We are about to crank our new board to 1 GHz timings, and I'd like to be able to get this nailed down.  The DDR3 Script Aid is very useful, but ultimately I want to use the Stress Test Tool to dial them in. So far I've had no (apparent) success being able to run the Stress Test Tool using nothing but JTAG.  This may well be because I'm not using JTAG correctly.  Is there an FAQ or HOWTO somewhere that might point me in the right direction? Also: Does setting up the DDR3 timings also set up the core clock?  We'd like the ARM cores to run at 1 GHz as well; do we get that for "free" when using the output from the Script Aid? Re: i.MX6 DDR Stress Test Tool V1.0.3 Hi Steve, Please contact your FAE. Grace Re: i.MX6 DDR Stress Test Tool V1.0.3 Hi Steve, Please contact your FAE. Grace Re: i.MX6 DDR Stress Test Tool V1.0.3 GraceSi, The console port on our board is UART4. Could you release a binary file booting from SD to support UART4 console?  Or could you release the source code to us to modify by ourselves? Thanks. Steve Re: i.MX6 DDR Stress Test Tool V1.0.3 GraceSi, The console port on our board is UART4. Could you release a binary file booting from SD to support UART4 console?  Or could you release the source code to us to modify by ourselves? Thanks. Steve Re: i.MX6 DDR Stress Test Tool V1.0.3 Please always use WALAT=1, you can refer to below aid. i.Mx6DQSDL DDR3 Script Aid https://community.freescale.com/docs/DOC-94917 Sure, flash_header.s should keep same with your test script. Re: i.MX6 DDR Stress Test Tool V1.0.3 Hi Grace,      The write leveling calibration result of our board is as following: MMDC_MPWLDECTRL0 ch0 after write level cal: 0x00270021 MMDC_MPWLDECTRL1 ch0 after write level cal: 0x0030002C MMDC_MPWLDECTRL0 ch1 after write level cal: 0x001F0030 MMDC_MPWLDECTRL1 ch1 after write level cal: 0x000F0026      I am not sure how to judge if the value is larger than 0x2f as User_Guide says:                             NOTE If write-leveling delay is larger than 0x2f, it is suggested to set the WALAT value on MMDCx_MDMISC register to 1 in the initialization script and re-run the DDR_Stress_Tester. And if I should set WALAT to 1 in the script, should I set it to 1 in flash_header.S? In other words, if I calibrated a group of satisfied parameters and the stress test is also OK, should I keep flash_header.S's every register value the same as the test script.inc?    Thank you very much! Re: i.MX6 DDR Stress Test Tool V1.0.3 Hi Grace,      The write leveling calibration result of our board is as following: MMDC_MPWLDECTRL0 ch0 after write level cal: 0x00270021 MMDC_MPWLDECTRL1 ch0 after write level cal: 0x0030002C MMDC_MPWLDECTRL0 ch1 after write level cal: 0x001F0030 MMDC_MPWLDECTRL1 ch1 after write level cal: 0x000F0026      I am not sure how to judge if the value is larger than 0x2f as User_Guide says:                             NOTE If write-leveling delay is larger than 0x2f, it is suggested to set the WALAT value on MMDCx_MDMISC register to 1 in the initialization script and re-run the DDR_Stress_Tester. And if I should set WALAT to 1 in the script, should I set it to 1 in flash_header.S? In other words, if I calibrated a group of satisfied parameters and the stress test is also OK, should I keep flash_header.S's every register value the same as the test script.inc?    Thank you very much! Re: i.MX6 DDR Stress Test Tool V1.0.3 Hi Petr, regarding Vybrid there's not this tool but DDRV (aka DDR Validation) available within Processor Expert and Eclipse based product Driver Suite (DS) v10.4.1. You have to have installed DS v10.4 and after that you need to apply an update 1 which includes DDRV tool supported for Vybrid processors. You may find more information about Driver Suite here - http://www.freescale.com/webapp/sps/site/prod_summary.jsp?code=PE_DRIVER_SUITE. Just one note here, DDRV tool is a licensed tool, so you will need to obtain proper license to run this piece of SW. Not sure who is the right person to contact regarding DDRV licensing for Vybrid, but you may try to contact your local FSL representative for an evaluation key. Re: i.MX6 DDR Stress Test Tool V1.0.3 Hi Petr, regarding Vybrid there's not this tool but DDRV (aka DDR Validation) available within Processor Expert and Eclipse based product Driver Suite (DS) v10.4.1. You have to have installed DS v10.4 and after that you need to apply an update 1 which includes DDRV tool supported for Vybrid processors. You may find more information about Driver Suite here - http://www.freescale.com/webapp/sps/site/prod_summary.jsp?code=PE_DRIVER_SUITE. Just one note here, DDRV tool is a licensed tool, so you will need to obtain proper license to run this piece of SW. Not sure who is the right person to contact regarding DDRV licensing for Vybrid, but you may try to contact your local FSL representative for an evaluation key. Re: i.MX6 DDR Stress Test Tool V1.0.3 From the name, I would presume that "DDR_Stress_Tester_V1.0.3_UART1_for_SDboot&JTAG.zip" contained images that were intended to be loaded via JTAG and would interact over UART1.  However, I've been unable to get this to work.  I'm a newcomer to JTAG in general and OpenOCD in particular, so pilot error is a definite possibility. Our board is based around the i.MX6DL.  I'm using OpenOCD 0.8.0 with an Olimex USB-TINY-H.  TRST on the JTAG pod is connected to JTAG_TRST; SRST is connected to POR. As such, I have reset_config set as follows: reset_config trst_and_srst srst_pulls_trst This appears to (mostly) work: > reset halt adapter speed: 1000 kHz JTAG scan chain interrogation failed: all zeroes Check JTAG interface, timings, target power, etc. Trying to use configured scan chain anyway... imx6.dap: IR capture error; saw 0x00 not 0x01 Bypassing JTAG setup events due to errors Locking debug access failed on first, but succeeded on second try. BUG: can't assert only SRST Locking debug access failed on first, but succeeded on second try. imx6.cpu.0: ran after reset and before halt ... number of cache level 1 imx6.cpu.0 cluster 0 core 0 multi core target state: halted target halted in Thumb state due to debug-request, current mode: Supervisor cpsr: 0x400001f3 pc: 0x00001080 MMU: disabled, D-Cache: disabled, I-Cache: enabled I also appear to be able to load the image: > load_image /home/ewhac/devel/iMX6/DDR_Stress_Tester_V1.0.3_UART1/ddr-stress-test-mx6dl.elf 82226 bytes written at address 0x00907000 downloaded 82226 bytes in 4.802489s (16.720 KiB/s) However, after this point, I can't get anything to work.  'resume 0x907000' appears to do nothing, and subsequent 'halt' commands don't work; I have to reset.  When I disassemble the loaded image from 0x907000, I see this: > arm disassemble 0x907000 32 0x00907000     0xe59ff018     LDR r15, [r15, #0x18] 0x00907004     0xe59ff018     LDR r15, [r15, #0x18] 0x00907008     0xe59ff018     LDR r15, [r15, #0x18] 0x0090700c     0xe59ff018     LDR r15, [r15, #0x18] 0x00907010     0xe59ff018     LDR r15, [r15, #0x18] 0x00907014     0xe1a00000     NOP 0x00907018     0xe59ff014     LDR r15, [r15, #0x14] 0x0090701c     0xe59ff014     LDR r15, [r15, #0x14] 0x00907020     0x00907054     ADDEQS r7, r0, r4, ASR r0 0x00907024     0x0090703c     ADDEQS r7, r0, r12, LSR r0 0x00907028     0x00907040     ADDEQS r7, r0, r0, ASR #0x20 0x0090702c     0x00907044     ADDEQS r7, r0, r4, ASR #0x20 0x00907030     0x00907048     ADDEQS r7, r0, r8, ASR #0x20 0x00907034     0x0090704c     ADDEQS r7, r0, r12, ASR #0x20 0x00907038     0x00907050     ADDEQS r7, r0, r0, ASR r0 0x0090703c     0xeafffffe     B 0x0090703c 0x00907040     0xeafffffe     B 0x00907040 0x00907044     0xeafffffe     B 0x00907044 0x00907048     0xeafffffe     B 0x00907048 0x0090704c     0xeafffffe     B 0x0090704c 0x00907050     0xeafffffe     B 0x00907050 0x00907054     0xeb000054     BL 0x009071ac 0x00907058     0xeb00007d     BL 0x00907254 0x0090705c     0xeb00001b     BL 0x009070d0 0x00907060     0xeb00004a     BL 0x00907190 0x00907064     0xeb00005d     BL 0x009071e0 0x00907068     0xe59f02e4     LDR r0, [r15, #0x2e4] 0x0090706c     0xe321f0d1     MSR CPSR_c, 0x000000d1 0x00907070     0xe240d000     SUB r13, r0, #0x0 0x00907074     0xe321f0d2     MSR CPSR_c, 0x000000d2 0x00907078     0xe240d000     SUB r13, r0, #0x0 0x0090707c     0xe321f0d7     MSR CPSR_c, 0x000000d7 So it's pretty obvious 0x907000 is not the entry point.  The ELF file says the entry point is 0x907054, and the disassembly tends to support this.  However, 'resume 0x907054' has the same result (no output, unresponsive 'halt'). Just for fun, I tried 'resume 0x90703c', expecting the CPU to enter an infinite loop.  But no, not even that works.  It's almost as if it's ignoring my attempts to change the program counter. What am I missing?  I'm sure it's something terribly obvious... Re: i.MX6 DDR Stress Test Tool V1.0.3 From the name, I would presume that "DDR_Stress_Tester_V1.0.3_UART1_for_SDboot&JTAG.zip" contained images that were intended to be loaded via JTAG and would interact over UART1.  However, I've been unable to get this to work.  I'm a newcomer to JTAG in general and OpenOCD in particular, so pilot error is a definite possibility. Our board is based around the i.MX6DL.  I'm using OpenOCD 0.8.0 with an Olimex USB-TINY-H.  TRST on the JTAG pod is connected to JTAG_TRST; SRST is connected to POR. As such, I have reset_config set as follows: reset_config trst_and_srst srst_pulls_trst This appears to (mostly) work: > reset halt adapter speed: 1000 kHz JTAG scan chain interrogation failed: all zeroes Check JTAG interface, timings, target power, etc. Trying to use configured scan chain anyway... imx6.dap: IR capture error; saw 0x00 not 0x01 Bypassing JTAG setup events due to errors Locking debug access failed on first, but succeeded on second try. BUG: can't assert only SRST Locking debug access failed on first, but succeeded on second try. imx6.cpu.0: ran after reset and before halt ... number of cache level 1 imx6.cpu.0 cluster 0 core 0 multi core target state: halted target halted in Thumb state due to debug-request, current mode: Supervisor cpsr: 0x400001f3 pc: 0x00001080 MMU: disabled, D-Cache: disabled, I-Cache: enabled I also appear to be able to load the image: > load_image /home/ewhac/devel/iMX6/DDR_Stress_Tester_V1.0.3_UART1/ddr-stress-test-mx6dl.elf 82226 bytes written at address 0x00907000 downloaded 82226 bytes in 4.802489s (16.720 KiB/s) However, after this point, I can't get anything to work.  'resume 0x907000' appears to do nothing, and subsequent 'halt' commands don't work; I have to reset.  When I disassemble the loaded image from 0x907000, I see this: > arm disassemble 0x907000 32 0x00907000     0xe59ff018     LDR r15, [r15, #0x18] 0x00907004     0xe59ff018     LDR r15, [r15, #0x18] 0x00907008     0xe59ff018     LDR r15, [r15, #0x18] 0x0090700c     0xe59ff018     LDR r15, [r15, #0x18] 0x00907010     0xe59ff018     LDR r15, [r15, #0x18] 0x00907014     0xe1a00000     NOP 0x00907018     0xe59ff014     LDR r15, [r15, #0x14] 0x0090701c     0xe59ff014     LDR r15, [r15, #0x14] 0x00907020     0x00907054     ADDEQS r7, r0, r4, ASR r0 0x00907024     0x0090703c     ADDEQS r7, r0, r12, LSR r0 0x00907028     0x00907040     ADDEQS r7, r0, r0, ASR #0x20 0x0090702c     0x00907044     ADDEQS r7, r0, r4, ASR #0x20 0x00907030     0x00907048     ADDEQS r7, r0, r8, ASR #0x20 0x00907034     0x0090704c     ADDEQS r7, r0, r12, ASR #0x20 0x00907038     0x00907050     ADDEQS r7, r0, r0, ASR r0 0x0090703c     0xeafffffe     B 0x0090703c 0x00907040     0xeafffffe     B 0x00907040 0x00907044     0xeafffffe     B 0x00907044 0x00907048     0xeafffffe     B 0x00907048 0x0090704c     0xeafffffe     B 0x0090704c 0x00907050     0xeafffffe     B 0x00907050 0x00907054     0xeb000054     BL 0x009071ac 0x00907058     0xeb00007d     BL 0x00907254 0x0090705c     0xeb00001b     BL 0x009070d0 0x00907060     0xeb00004a     BL 0x00907190 0x00907064     0xeb00005d     BL 0x009071e0 0x00907068     0xe59f02e4     LDR r0, [r15, #0x2e4] 0x0090706c     0xe321f0d1     MSR CPSR_c, 0x000000d1 0x00907070     0xe240d000     SUB r13, r0, #0x0 0x00907074     0xe321f0d2     MSR CPSR_c, 0x000000d2 0x00907078     0xe240d000     SUB r13, r0, #0x0 0x0090707c     0xe321f0d7     MSR CPSR_c, 0x000000d7 So it's pretty obvious 0x907000 is not the entry point.  The ELF file says the entry point is 0x907054, and the disassembly tends to support this.  However, 'resume 0x907054' has the same result (no output, unresponsive 'halt'). Just for fun, I tried 'resume 0x90703c', expecting the CPU to enter an infinite loop.  But no, not even that works.  It's almost as if it's ignoring my attempts to change the program counter. What am I missing?  I'm sure it's something terribly obvious... Re: i.MX6 DDR Stress Test Tool V1.0.3 Hi Immanuel, Please contact your FAE or Marketing. Grace Re: i.MX6 DDR Stress Test Tool V1.0.3 Hi Immanuel, Please contact your FAE or Marketing. Grace Re: i.MX6 DDR Stress Test Tool V1.0.3 Hello GraceSi, We are working on developing test software for the i.MX6 board where we would like to include some of the test cases from the this DDR3 stress tool. Can we get the source of DDR_Stress_Tester_V1.0.3 tool? Immanuel Re: i.MX6 DDR Stress Test Tool V1.0.3 Hello GraceSi, We are working on developing test software for the i.MX6 board where we would like to include some of the test cases from the this DDR3 stress tool. Can we get the source of DDR_Stress_Tester_V1.0.3 tool? Immanuel Re: i.MX6 DDR Stress Test Tool V1.0.3 Ok we have no Fly-by layout but what have I have to fill in at the write leveling data at the Excel sheet in the red cells? Regards Marcel Re: i.MX6 DDR Stress Test Tool V1.0.3 Ok we have no Fly-by layout but what have I have to fill in at the write leveling data at the Excel sheet in the red cells? Regards Marcel Re: i.MX6 DDR Stress Test Tool V1.0.3 No we have no Fly-by layout we have T-routing... Regards Marcel Re: i.MX6 DDR Stress Test Tool V1.0.3 No we have no Fly-by layout we have T-routing... Regards Marcel Re: i.MX6 DDR Stress Test Tool V1.0.3 For Fly-by layout, write leveling calibration is needed. Grace Re: i.MX6 DDR Stress Test Tool V1.0.3 For Fly-by layout, write leveling calibration is needed. Grace Re: i.MX6 DDR Stress Test Tool V1.0.3 Did I have to do write leveling calibration if I have no Fly-by layout config? Because I always get: Would you like to run the DQS gating, read/write delay calibration? (y/n) Starting DQS gating calibration... . . . . . . . . . . . . . . ERROR FOUND, we can't get suitable value !!!! dram test fails for all values. Re: i.MX6 DDR Stress Test Tool V1.0.3 Did I have to do write leveling calibration if I have no Fly-by layout config? Because I always get: Would you like to run the DQS gating, read/write delay calibration? (y/n) Starting DQS gating calibration... . . . . . . . . . . . . . . ERROR FOUND, we can't get suitable value !!!! dram test fails for all values. Re: i.MX6 DDR Stress Test Tool V1.0.3 Hi, I am attempting to run the stress test tool on an EDM-IMX6 board manufactured by TechNexion (and a Wandboard) to try to resolve some intermittent memory corruption issues we have been seeing when using these boards. When I run the write leveling calibration, the value for MMDC_MPWLDECTRL1 always comes back with an incorrect value (see output below). My question is: Is this a problem with the stress test calibration tool, or is this indicative of a design problem on the board? FYI, I have been unable to get this board to pass the stress test at 475Mhz (it fails almost immediately every time), though it passes at other frequencies, both higher and lower. Thanks, Tony Would you like to run the write leveling calibration? (y/n)   Please enter the MR1 value on the initilization script   This will be re-programmed into MR1 after write leveling calibration   Enter as a 4-digit HEX value, example 0004, then hit enter 0004 You have entered: 0x0004 Start write leveling calibration Write leveling calibration completed MMDC_MPWLDECTRL0 ch0 after write level cal: 0x00130017 MMDC_MPWLDECTRL1 ch0 after write level cal: 0x0017000E MMDC_MPWLDECTRL0 ch1 after write level cal: 0x000F001D MMDC_MPWLDECTRL1 ch1 after write level cal: 0x017A0013 Re: i.MX6 DDR Stress Test Tool V1.0.3 Is the tool or its alternative available for Vybrid processors? Re: i.MX6 DDR Stress Test Tool V1.0.3 Is the tool or its alternative available for Vybrid processors? Re: i.MX6 DDR Stress Test Tool V1.0.3 2 Turns out the code is fine and only the ARM DSTREAM debugger creates the problem for itself.  Strange. Re: i.MX6 DDR Stress Test Tool V1.0.3 2 Turns out the code is fine and only the ARM DSTREAM debugger creates the problem for itself.  Strange. Re: i.MX6 DDR Stress Test Tool V1.0.3 2 Hi Grace, I'm assuming this stress test runs out of OCRAM, is that correct?  If so, can you tell me what the keys are to accessing DDR RAM from OCRAM code?  I'm getting a crash every time I try - the debugger completely chokes and won't give me any data.  Do I still need to leave some hooks for the DDR in the linker script, for example?  I'm building a stripped down version of the Platform SDK, so I'm thinking the DCD and all should be set up correctly.  Runs fine other than this external DDR access issue. Just looking for some hints on a perplexing problem. Thanks. Re: i.MX6 DDR Stress Test Tool V1.0.3 2 Hi Grace, I'm assuming this stress test runs out of OCRAM, is that correct?  If so, can you tell me what the keys are to accessing DDR RAM from OCRAM code?  I'm getting a crash every time I try - the debugger completely chokes and won't give me any data.  Do I still need to leave some hooks for the DDR in the linker script, for example?  I'm building a stripped down version of the Platform SDK, so I'm thinking the DCD and all should be set up correctly.  Runs fine other than this external DDR access issue. Just looking for some hints on a perplexing problem. Thanks. Re: i.MX6 DDR Stress Test Tool V1.0.3 Hi Patrick, If you just want to do the stress test, you can skip the calibration.  It is normal that write leveling calibration got consistent values. To understand write leveling, you can reference 45.11.6 Write leveling Calibration of reference manual. Grace Re: i.MX6 DDR Stress Test Tool V1.0.3 Hi Patrick, If you just want to do the stress test, you can skip the calibration.  It is normal that write leveling calibration got consistent values. To understand write leveling, you can reference 45.11.6 Write leveling Calibration of reference manual. Grace Re: i.MX6 DDR Stress Test Tool V1.0.3 Thank you Grace for your quick answer. Well, i understand that the results of the stress program have to be used to update the DDR3 initialisation process. In fact my question was not exactly this one as i don't use the the initialization script but only U-BOOT (i don't have JTAG access so i upload your binary file through TFTP). Here is how i proceed : - I have my own U-BOOT relevant to my board - The board boots on SD card - I get the U-BOOT prompt - I tftp the DDR_Stress_Tester_V1.0.1_UART1_for_SDboot&JTAG.zip binary program (DL in my case) on RAM (0x907000 as you mentioned above in the post) - Go on this address - Get the values that i mentionned previously What i noticed is whatever is the value of MDMISC that i write in U-BOOT file (flash_header.s, ie 0x00001740 or 0x00011740), the values for the write leveling process are always above 0x2F so i was wondering if the binary DDR stress program was altering the MDMISC value i write in flash_header.s before launching the test by itself, which could explain why i get always the same value. Best regards, Patrick. Re: i.MX6 DDR Stress Test Tool V1.0.3 Thank you Grace for your quick answer. Well, i understand that the results of the stress program have to be used to update the DDR3 initialisation process. In fact my question was not exactly this one as i don't use the the initialization script but only U-BOOT (i don't have JTAG access so i upload your binary file through TFTP). Here is how i proceed : - I have my own U-BOOT relevant to my board - The board boots on SD card - I get the U-BOOT prompt - I tftp the DDR_Stress_Tester_V1.0.1_UART1_for_SDboot&JTAG.zip binary program (DL in my case) on RAM (0x907000 as you mentioned above in the post) - Go on this address - Get the values that i mentionned previously What i noticed is whatever is the value of MDMISC that i write in U-BOOT file (flash_header.s, ie 0x00001740 or 0x00011740), the values for the write leveling process are always above 0x2F so i was wondering if the binary DDR stress program was altering the MDMISC value i write in flash_header.s before launching the test by itself, which could explain why i get always the same value. Best regards, Patrick. Re: i.MX6 DDR Stress Test Tool V1.0.3 Hello, Can anyone explain me how to load the binary file of DDR_Stress_Tester_V1.0.1_UART1_for_SDboot&JTAG.zip by u-boot? Is there any user guide for loading this from SD card? I want to run the DDR stress test to obtain the optimal DDR configuration. Any help will be appreciated. Yijun Re: i.MX6 DDR Stress Test Tool V1.0.3 Hello, Can anyone explain me how to load the binary file of DDR_Stress_Tester_V1.0.1_UART1_for_SDboot&JTAG.zip by u-boot? Is there any user guide for loading this from SD card? I want to run the DDR stress test to obtain the optimal DDR configuration. Any help will be appreciated. Yijun Re: i.MX6 DDR Stress Test Tool V1.0.3 In  Chapter 5 FAQ of  i.MX6 DDR Stress Tester User’s Guide Do I need to update the DDR initialization script after running the calibration? Yes. The calibration results are stored in the MMDC registers during the test only. It is suggested to update the initialization script and re-run the test on different boards to confirm the DDR performance and make sure the MMDC register settings are correctly ported to the firmware. Grace Re: i.MX6 DDR Stress Test Tool V1.0.3 In  Chapter 5 FAQ of  i.MX6 DDR Stress Tester User’s Guide Do I need to update the DDR initialization script after running the calibration? Yes. The calibration results are stored in the MMDC registers during the test only. It is suggested to update the initialization script and re-run the test on different boards to confirm the DDR performance and make sure the MMDC register settings are correctly ported to the firmware. Grace Re: i.MX6 DDR Stress Test Tool V1.0.3 Hi Grace, On my own design, i ran your DDR_Stress_Tester_V1.0.1_UART1_for_SDboot&JTAG.zip that worked for me (just to confirm the initial values from U-BOOT as i replicated the layout from Sabre SD board), just have observed that the SW levelling values are all above 0x2F : MMDC_MPWLDECTRL0 ch0 after write level cal: 0x0046004B MMDC_MPWLDECTRL1 ch0 after write level cal: 0x003C0043 MMDC_MPWLDECTRL0 ch1 after write level cal: 0x002B002B MMDC_MPWLDECTRL1 ch1 after write level cal: 0x0029003F As notified in the document, i modified the MDMISC value in my U-BOOT file (0x00001740 => 0x00011740) but nothing changed, does your programm erase my value with your own one and if so what is your value ? and can we keep the write leveling results as it ? Patrick. Re: i.MX6 DDR Stress Test Tool V1.0.3 Hi Grace, On my own design, i ran your DDR_Stress_Tester_V1.0.1_UART1_for_SDboot&JTAG.zip that worked for me (just to confirm the initial values from U-BOOT as i replicated the layout from Sabre SD board), just have observed that the SW levelling values are all above 0x2F : MMDC_MPWLDECTRL0 ch0 after write level cal: 0x0046004B MMDC_MPWLDECTRL1 ch0 after write level cal: 0x003C0043 MMDC_MPWLDECTRL0 ch1 after write level cal: 0x002B002B MMDC_MPWLDECTRL1 ch1 after write level cal: 0x0029003F As notified in the document, i modified the MDMISC value in my U-BOOT file (0x00001740 => 0x00011740) but nothing changed, does your programm erase my value with your own one and if so what is your value ? and can we keep the write leveling results as it ? Patrick. Re: i.MX6 DDR Stress Test Tool V1.0.3 Hi Ariel, To run ddr stress test from u-boot, CONFIG_SPLASH_SCREEN must be disabled in u-boot. Because when enter self refresh mode in ddr stress test, DRAM access will be blocked. If splash screen in u-boot is enabled, IPU will continuously access DRAM, so the system will hang up. Please make sure there is no DMA running to access DRAM in u-boot. Grace Re: i.MX6 DDR Stress Test Tool V1.0.3 Hi Ariel, To run ddr stress test from u-boot, CONFIG_SPLASH_SCREEN must be disabled in u-boot. Because when enter self refresh mode in ddr stress test, DRAM access will be blocked. If splash screen in u-boot is enabled, IPU will continuously access DRAM, so the system will hang up. Please make sure there is no DMA running to access DRAM in u-boot. Grace Re: i.MX6 DDR Stress Test Tool V1.0.3 Hi Grace! How are you? I use the bin files from "DDR_Stress_Tester_V1.0.1_UART1_for_SDboot&JTAG.zip", but the program hangs when it calibrates the memory. I'm using Freescale Sabre SD board. -----> MX6Q SABRESD U-Boot > go 0x907000 ## Starting application at 0x00907000 ... ******************************     DDR Stress Test (1.0.2) for MX6DQ     Build: Dec 10 2013, 14:26:05     Freescale Semiconductor, Inc. ****************************** =======DDR configuration========== BOOT_CFG3[5-4]: 0x00, Single DDR channel. DDR type is DDR3 Data width: 64, bank num: 8 Row size: 14, col size: 10 Chip select CSD0 is used Density per chip select: 1024MB ================================== What ARM core speed would you like to run? Type 0 for 650MHz, 1 for 800MHz, 2 for 1GHz, 3 for 1.2GHz    ARM set to 800MHz Please select the DDR density per chip select (in bytes) on the board Type 0 for 2GB; 1 for 1GB; 2 for 512MB; 3 for 256MB; 4 for 128MB; 5 for 64MB; 6 for 32MB  For maximum supported density (4GB), we can only access up to 3.75GB.  Type 9 to select this   DDR density selected (MB): 1024 Calibration will run at DDR frequency 528MHz. Type 'y' to continue. If you want to run at other DDR frequency. Type 'n' <----- Any suggestions? Thanks!! Ariel. Re: i.MX6 DDR Stress Test Tool V1.0.3 I managed to get the stress to run from u-boot. I had to make sure that IPU wasn't initialized. But now I getting stuck on the calibration test, getting error: ERROR FOUND, we can't get suitable value!!!! Any suggestions? Re: i.MX6 DDR Stress Test Tool V1.0.3 I managed to get the stress to run from u-boot. I had to make sure that IPU wasn't initialized. But now I getting stuck on the calibration test, getting error: ERROR FOUND, we can't get suitable value!!!! Any suggestions? Re: i.MX6 DDR Stress Test Tool V1.0.3 Hi Grace. For me it hangs after; Calibration will run at DDR frequency 528MHz. Type 'y' to continue. If you want to run at other DDR frequency. Type 'n' Could this be because of the CONFIG_SPLASH_SCREEN, which I should have disabled? Or do we also need to initialize the registers according to the .inc file (parameters from the excel document) when starting up u-boot? If I need to initialize the register, do I initialize all registers from the excel document, before I run the stress test? (I noticed that some are initialized 2, for instance 0x21b0004) Thanks Re: i.MX6 DDR Stress Test Tool V1.0.3 Hi Grace. For me it hangs after; Calibration will run at DDR frequency 528MHz. Type 'y' to continue. If you want to run at other DDR frequency. Type 'n' Could this be because of the CONFIG_SPLASH_SCREEN, which I should have disabled? Or do we also need to initialize the registers according to the .inc file (parameters from the excel document) when starting up u-boot? If I need to initialize the register, do I initialize all registers from the excel document, before I run the stress test? (I noticed that some are initialized 2, for instance 0x21b0004) Thanks Re: i.MX6 DDR Stress Test Tool V1.0.3 Hi Michael, The excel sheet generates the inc file for JTAG mode. For USB download mode, you need comment out setmem /16 0x020bc000 = 0x30. Grace Re: i.MX6 DDR Stress Test Tool V1.0.3 Hi Michael, The excel sheet generates the inc file for JTAG mode. For USB download mode, you need comment out setmem /16 0x020bc000 = 0x30. Grace Re: i.MX6 DDR Stress Test Tool V1.0.3 I have this same issue with mine.  When I had the excel sheet auto generate the .inc file for my board setup it has a line; //============================================================================= // Disable WDOG //============================================================================= setmem /16 0x020bc000 = 0x30 I noticed in one of the example files that that line is commented out.  When I comment it it seems to work great.  I am just wondering what that line is suposed to do and why the stress tester errors.  If i under stand it should just disable the watch dog timer but not sure.  Should I be commenting this line out? Thank Michael Re: i.MX6 DDR Stress Test Tool V1.0.3 I have this same issue with mine.  When I had the excel sheet auto generate the .inc file for my board setup it has a line; //============================================================================= // Disable WDOG //============================================================================= setmem /16 0x020bc000 = 0x30 I noticed in one of the example files that that line is commented out.  When I comment it it seems to work great.  I am just wondering what that line is suposed to do and why the stress tester errors.  If i under stand it should just disable the watch dog timer but not sure.  Should I be commenting this line out? Thank Michael Re: i.MX6 DDR Stress Test Tool V1.0.3 Hello Grace, Thank youmfor your answer. In my board with iMX6 solo (not solo-lite) the debug console is placed on CSI0_DAT10 and CSI0_DAT11; then it is not compatible with the .bin test... I tried to use the test in USB version, but on my PC I have the same problem highligted by Gevorg Sargsyan (22-gen-2014 21.47)... Nothing to do... Best regards Andrea Re: i.MX6 DDR Stress Test Tool V1.0.3 Hello Grace, Thank youmfor your answer. In my board with iMX6 solo (not solo-lite) the debug console is placed on CSI0_DAT10 and CSI0_DAT11; then it is not compatible with the .bin test... I tried to use the test in USB version, but on my PC I have the same problem highligted by Gevorg Sargsyan (22-gen-2014 21.47)... Nothing to do... Best regards Andrea Re: i.MX6 DDR Stress Test Tool V1.0.3 You can check whether the UART of customer board is same as 6SL EVK board.     /* UART1 TXD */     writel(ALT0, IOMUXC_SW_MUX_CTL_PAD_UART1_TXD);     /* UART1 RXD */     writel(ALT0, IOMUXC_SW_MUX_CTL_PAD_UART1_RXD);     // daisy chain setup     writel(0x0, IOMUXC_UART1_IPP_UART_RXD_MUX_SELECT_INPUT); Grace Re: i.MX6 DDR Stress Test Tool V1.0.3 You can check whether the UART of customer board is same as 6SL EVK board.     /* UART1 TXD */     writel(ALT0, IOMUXC_SW_MUX_CTL_PAD_UART1_TXD);     /* UART1 RXD */     writel(ALT0, IOMUXC_SW_MUX_CTL_PAD_UART1_RXD);     // daisy chain setup     writel(0x0, IOMUXC_UART1_IPP_UART_RXD_MUX_SELECT_INPUT); Grace Re: i.MX6 DDR Stress Test Tool V1.0.3 Hello Grace, I used the bin files included in "DDR_Stress_Tester_V1.0.1_UART1_for_SDboot&JTAG.zip" for calibrate and test the DDR3 memories on my custom mx6 board. For my board with quad-core, I fixed 0x907000 as entry-point and the program was executed correctly. For my board with single-core, I fixed the same entry-point but the program don't run... Please, can you help me? Thank you very much. Regards Andrea Re: i.MX6 DDR Stress Test Tool V1.0.3 Hello Grace, I used the bin files included in "DDR_Stress_Tester_V1.0.1_UART1_for_SDboot&JTAG.zip" for calibrate and test the DDR3 memories on my custom mx6 board. For my board with quad-core, I fixed 0x907000 as entry-point and the program was executed correctly. For my board with single-core, I fixed the same entry-point but the program don't run... Please, can you help me? Thank you very much. Regards Andrea Re: i.MX6 DDR Stress Test Tool V1.0.3 Hi Tim In Reference Manual of i.MX 6Dual/6Quad, chapter 2 memory map, you can see the valid MMDC range is from 0x021B0000 to 0x021B7FFF. So your address 0x020bc000 is out of range. 021B_0000 021B_3FFF MMDC (port 0) 16 KB 021B_4000 021B_7FFF MMDC (port 1) 16 KB You can contact your FAE or marketing to get the source code. Regards, Grace Re: i.MX6 DDR Stress Test Tool V1.0.3 Hi Tim In Reference Manual of i.MX 6Dual/6Quad, chapter 2 memory map, you can see the valid MMDC range is from 0x021B0000 to 0x021B7FFF. So your address 0x020bc000 is out of range. 021B_0000 021B_3FFF MMDC (port 0) 16 KB 021B_4000 021B_7FFF MMDC (port 1) 16 KB You can contact your FAE or marketing to get the source code. Regards, Grace Re: i.MX6 DDR Stress Test Tool V1.0.3 That may be caused by the hardware layout. Grace Re: i.MX6 DDR Stress Test Tool V1.0.3 That may be caused by the hardware layout. Grace Re: i.MX6 DDR Stress Test Tool V1.0.3 Hi Grace, Thank you for your reply. Unfortunately, I have set WALAT on MMDCx_MDMISC register to "1" as following. setmem /32     0x021b0018 =     0x00011740     // MMDC0_MDMISC Is there any other point I have to check? Or is this issue hardware layout? Best Regards, Mar 17, 2014, Satoshi Shimoda Re: i.MX6 DDR Stress Test Tool V1.0.3 Please set the WALAT value on MMDCx_MDMISC register to 1 in the initialization script and re-run the DDR_Stress_Tester. Grace Re: i.MX6 DDR Stress Test Tool V1.0.3 Please set the WALAT value on MMDCx_MDMISC register to 1 in the initialization script and re-run the DDR_Stress_Tester. Grace Re: i.MX6 DDR Stress Test Tool V1.0.3 Grace, I am not having much luck using v1.02 of this tool.  The test script generated by the spreadsheet here i.Mx6DQSDL DDR3 Script Aid starts off with a 'setmem /16 0x020bc000 = 0x30' to disable the watchdog, which the stress tool complains about: .\DDR_Stress_Tester_V1.0.2\Binary>DDR_Stress_Tester.exe -t mx6x -df mt41k128m16-125_1066mhz_4x128x16.inc MX6DQ opened. dcd address 0x020bc000 out of valid range. the addr out of valid range. I see that this specific write is commented out in some of the provided sample scripts so I comment it out in my script and the tool does indeed continue on but it seems like the tool locks up within 30 seconds which to me feels an awful lot like the board perhaps resetting from a watchdog timeout?  The tool doesn't hang at a specific spot... it just seems to hang within 30 seconds.  I can't type fast enough to get past entering in MR1 for the write-leveling test. Any ideas? Is there source for this tool available somewhere?  This seems like a great tool but its horrible that it isn't distributed with sourcecode so people could work around some of the above issues. Thanks, Tim KevinWong arpan_chakravarty partner i.mx6 gateworks Re: i.MX6 DDR Stress Test Tool V1.0.3 Grace, I am not having much luck using v1.02 of this tool.  The test script generated by the spreadsheet here i.Mx6DQSDL DDR3 Script Aid starts off with a 'setmem /16 0x020bc000 = 0x30' to disable the watchdog, which the stress tool complains about: .\DDR_Stress_Tester_V1.0.2\Binary>DDR_Stress_Tester.exe -t mx6x -df mt41k128m16-125_1066mhz_4x128x16.inc MX6DQ opened. dcd address 0x020bc000 out of valid range. the addr out of valid range. I see that this specific write is commented out in some of the provided sample scripts so I comment it out in my script and the tool does indeed continue on but it seems like the tool locks up within 30 seconds which to me feels an awful lot like the board perhaps resetting from a watchdog timeout?  The tool doesn't hang at a specific spot... it just seems to hang within 30 seconds.  I can't type fast enough to get past entering in MR1 for the write-leveling test. Any ideas? Is there source for this tool available somewhere?  This seems like a great tool but its horrible that it isn't distributed with sourcecode so people could work around some of the above issues. Thanks, Tim KevinWong arpan_chakravarty partner i.mx6 gateworks Re: i.MX6 DDR Stress Test Tool V1.0.3 Hi I used this stress test with our custom board. However, the following error log was output. ===== Would you like to run the DQS gating, read/write delay calibration? (y/n) Starting DQS gating calibration... . . . . . . . . . . . . . . ERROR FOUND, we can't get suitable value !!!! dram test fails for all values. ===== Could you let me know what is wrong in this case? (e.g. Circuit pattern is too bad, setting value in .inc file is incorrect, etc...) Best Regards, Mar 14, 2014 Satoshi Shimoda Re: i.MX6 DDR Stress Test Tool V1.0.3 Hi I used this stress test with our custom board. However, the following error log was output. ===== Would you like to run the DQS gating, read/write delay calibration? (y/n) Starting DQS gating calibration... . . . . . . . . . . . . . . ERROR FOUND, we can't get suitable value !!!! dram test fails for all values. ===== Could you let me know what is wrong in this case? (e.g. Circuit pattern is too bad, setting value in .inc file is incorrect, etc...) Best Regards, Mar 14, 2014 Satoshi Shimoda Re: i.MX6 DDR Stress Test Tool V1.0.3 Grace - can you let me know where the source code for version 1.0.2 is located internally? The link we were given previously goes to version 1.0 and not further. Thanks! Re: i.MX6 DDR Stress Test Tool V1.0.3 Grace - can you let me know where the source code for version 1.0.2 is located internally? The link we were given previously goes to version 1.0 and not further. Thanks! Re: i.MX6 DDR Stress Test Tool V1.0.3 Great tool that works well on my Nitrogen6! I am wondering if it is possible (for a future version) to read the temperature of the cpu during the stress test for instance? Re: i.MX6 DDR Stress Test Tool V1.0.3 Great tool that works well on my Nitrogen6! I am wondering if it is possible (for a future version) to read the temperature of the cpu during the stress test for instance? Re: i.MX6 DDR Stress Test Tool V1.0.3 Hi, does the Host USB driver now support a 64Bit version Windows? Greetings Andreas Re: i.MX6 DDR Stress Test Tool V1.0.3 Hi, does the Host USB driver now support a 64Bit version Windows? Greetings Andreas Re: i.MX6 DDR Stress Test Tool V1.0.3 Hi. I am trying to run the tool on SabreSD Board. Once I start the tool it is getting stuck on "Downloading image to IRAM ok" At that point HID device in device manager is disappeared and Usb Input device with "Failed to start (code 10)"  appears. After a while Stress Tool times out and extits. I am using 64-bit Windows 7 SP1 Any ideas? Thanks. Re: i.MX6 DDR Stress Test Tool V1.0.3 Hi. I am trying to run the tool on SabreSD Board. Once I start the tool it is getting stuck on "Downloading image to IRAM ok" At that point HID device in device manager is disappeared and Usb Input device with "Failed to start (code 10)"  appears. After a while Stress Tool times out and extits. I am using 64-bit Windows 7 SP1 Any ideas? Thanks. Re: i.MX6 DDR Stress Test Tool V1.0.3 To run ddr stress test from u-boot, CONFIG_SPLASH_SCREEN must be disabled in u-boot. Because when enter self refresh mode in ddr stress test, DRAM access will be blocked. If splash screen in u-boot is enabled, IPU will continuously access DRAM, so the system will hang up. Grace Re: i.MX6 DDR Stress Test Tool V1.0.3 To run ddr stress test from u-boot, CONFIG_SPLASH_SCREEN must be disabled in u-boot. Because when enter self refresh mode in ddr stress test, DRAM access will be blocked. If splash screen in u-boot is enabled, IPU will continuously access DRAM, so the system will hang up. Grace Re: i.MX6 DDR Stress Test Tool V1.0.3 Hi Thierry, We don't want to release the binary for specific customer here. Please contact your FAE and send your request to FSL. Grace Re: i.MX6 DDR Stress Test Tool V1.0.3 Hi Thierry, We don't want to release the binary for specific customer here. Please contact your FAE and send your request to FSL. Grace Re: i.MX6 DDR Stress Test Tool V1.0.3 Hi, the board I am working on does not have USB OTG either, and doesn't use UART port 1 but ports 3&4 instead. Is there a way to access the sources or get elf files where other uart ports would be used ? Thanks Re: i.MX6 DDR Stress Test Tool V1.0.3 Thanks Grace. It is my lucky day since I was using DAT10/11 for SPI2 but I have test-points on those two pads so I tested them them temporarily for UART. It works (o; Not FSL CRM request is required. Thanks very much! Brent Re: i.MX6 DDR Stress Test Tool V1.0.3 Thanks Grace. It is my lucky day since I was using DAT10/11 for SPI2 but I have test-points on those two pads so I tested them them temporarily for UART. It works (o; Not FSL CRM request is required. Thanks very much! Brent Re: i.MX6 DDR Stress Test Tool V1.0.3 Hi Brent, the tx/rx PIN of MX6Q SabraSD board is CSI0_DAT10 and CSI0_DAT11.     /* UART1 TXD */     writel(ALT3, IOMUXC_SW_MUX_CTL_PAD_CSI0_DAT10);     /* UART1 RXD */     writel(ALT3, IOMUXC_SW_MUX_CTL_PAD_CSI0_DAT11); We understand the customer may use different rx/tx pin for UART, that is the reason we only release DDR stress tool which uses USB port for user input and output for general release. Please submit your request to FSL CRM system. Grace Re: i.MX6 DDR Stress Test Tool V1.0.3 Hi Brent, the tx/rx PIN of MX6Q SabraSD board is CSI0_DAT10 and CSI0_DAT11.     /* UART1 TXD */     writel(ALT3, IOMUXC_SW_MUX_CTL_PAD_CSI0_DAT10);     /* UART1 RXD */     writel(ALT3, IOMUXC_SW_MUX_CTL_PAD_CSI0_DAT11); We understand the customer may use different rx/tx pin for UART, that is the reason we only release DDR stress tool which uses USB port for user input and output for general release. Please submit your request to FSL CRM system. Grace Re: i.MX6 DDR Stress Test Tool V1.0.3 Hi Grace... It loads well, and I can interact with u-boot of course, but I cannot interact with this application. My rx/tx in u-boot are :     /* UART1 TXD */     mxc_iomux_v3_setup_pad(MX6Q_PAD_SD3_DAT6__UART1_RXD);     /* UART1 RXD */     mxc_iomux_v3_setup_pad(MX6Q_PAD_SD3_DAT7__UART1_TXD); Is this stress test tool open source? ******************************     DDR Stress Test (1.0.1) for MX6DQ     Build: Oct 21 2013, 14:05:09     Freescale Semiconductor, Inc. ***************************** =======DDR configuration========== BOOT_CFG3[5-4]: 0x00, Single DDR channel. DDR type is DDR3 Data width: 64, bank num: 8 Row size: 15, col size: 10 Chip select CSD0 is used Density per chip select: 2048MB ================================== What ARM core speed would you like to run? Type 0 for 650MHz, 1 for 800MHz, 2 for 1GHz, 3 for 1.2GHz --> System does not respond to my input here. Thanks Brent Re: i.MX6 DDR Stress Test Tool V1.0.3 Hi Grace... It loads well, and I can interact with u-boot of course, but I cannot interact with this application. My rx/tx in u-boot are :     /* UART1 TXD */     mxc_iomux_v3_setup_pad(MX6Q_PAD_SD3_DAT6__UART1_RXD);     /* UART1 RXD */     mxc_iomux_v3_setup_pad(MX6Q_PAD_SD3_DAT7__UART1_TXD); Is this stress test tool open source? ******************************     DDR Stress Test (1.0.1) for MX6DQ     Build: Oct 21 2013, 14:05:09     Freescale Semiconductor, Inc. ***************************** =======DDR configuration========== BOOT_CFG3[5-4]: 0x00, Single DDR channel. DDR type is DDR3 Data width: 64, bank num: 8 Row size: 15, col size: 10 Chip select CSD0 is used Density per chip select: 2048MB ================================== What ARM core speed would you like to run? Type 0 for 650MHz, 1 for 800MHz, 2 for 1GHz, 3 for 1.2GHz --> System does not respond to my input here. Thanks Brent Re: i.MX6 DDR Stress Test Tool V1.0.3 The entry point is 0x907000 if anyone needs it. (o: Re: i.MX6 DDR Stress Test Tool V1.0.3 The entry point is 0x907000 if anyone needs it. (o: Re: i.MX6 DDR Stress Test Tool V1.0.3 Thank you Grace, that is excellent! Thanks very much for your help! I will update on how it works. Regards Brent Re: i.MX6 DDR Stress Test Tool V1.0.3 Thank you Grace, that is excellent! Thanks very much for your help! I will update on how it works. Regards Brent Re: i.MX6 DDR Stress Test Tool V1.0.3 Hi  Brent, The image in DDR_Stress_Tester_V1.0.1.zip can't be loaded through sd card. I just attached image DDR_Stress_Tester_V1.0.1_UART1_for_SDboot&JTAG.zip.  The bin files in the packages can be loaded by uboot and elf files are used by JTAG load.  Please note when the image is loaded by u-boot, the DDR is initialized by u-boot. Regards, Grace Re: i.MX6 DDR Stress Test Tool V1.0.3 Hi  Brent, The image in DDR_Stress_Tester_V1.0.1.zip can't be loaded through sd card. I just attached image DDR_Stress_Tester_V1.0.1_UART1_for_SDboot&JTAG.zip.  The bin files in the packages can be loaded by uboot and elf files are used by JTAG load.  Please note when the image is loaded by u-boot, the DDR is initialized by u-boot. Regards, Grace Re: i.MX6 DDR Stress Test Tool V1.0.3 Hello, I do not have the USB OTG port available on my custom board, is it possible to load this stress tester application directly via sd card and u-boot? Thanks Brent Re: i.MX6 DDR Stress Test Tool V1.0.3 Hello, I do not have the USB OTG port available on my custom board, is it possible to load this stress tester application directly via sd card and u-boot? Thanks Brent Re: i.MX6 DDR Stress Test Tool V1.0.3 We got the Stress Tester running. The tool doesn't like when you give it the wrong input file Re: i.MX6 DDR Stress Test Tool V1.0.3 We got the Stress Tester running. The tool doesn't like when you give it the wrong input file Re: i.MX6 DDR Stress Test Tool V1.0.3 Hello, I tried to run the DDR3 Stress Tester but the application crashes after printing a single line: MX6DQ opened. We are using an i.MX6D7CVT08AC (Industrial, 800MHz) and the PC is running Windows 7 Home Premium SP1 64bit. From Linux I'm able to run the imx_usb_loader application and download an image which toggles an LED connected to GPIO2[4]. Regards Matthias Mann Re: i.MX6 DDR Stress Test Tool V1.0.3 Hello, I tried to run the DDR3 Stress Tester but the application crashes after printing a single line: MX6DQ opened. We are using an i.MX6D7CVT08AC (Industrial, 800MHz) and the PC is running Windows 7 Home Premium SP1 64bit. From Linux I'm able to run the imx_usb_loader application and download an image which toggles an LED connected to GPIO2[4]. Regards Matthias Mann Re: i.MX6 DDR Stress Test Tool V1.0.3 Got the program working now, thank you very much! Re: i.MX6 DDR Stress Test Tool V1.0.3 Hi Emil Myhrman, Please use version 1.0.1.   For i.MX6DQ, the DDR mapping start address is configured as chapter "2.3 DDR mapping to MMDC controller ports"  in  i.MX 6Dual/6Quad Applications Reference Manual. Grace Re: i.MX6 DDR Stress Test Tool V1.0.3 Hi Emil Myhrman, Please use version 1.0.1.   For i.MX6DQ, the DDR mapping start address is configured as chapter "2.3 DDR mapping to MMDC controller ports"  in  i.MX 6Dual/6Quad Applications Reference Manual. Grace Re: i.MX6 DDR Stress Test Tool V1.0.3 We're using i.Mx6DL and LPDDR2 single channel, starting at 0x10000000 (DDR Memory Map Config = '00'). Does this version select the correct address (i.e. not 0x80000000) for our setup? I'm asking because it automatically says "CHANNEL0 is selected." and for previous version 0.042 we had to manually select channel1 to "trick" stress test into using start address 0x10000000. Re: i.MX6 DDR Stress Test Tool V1.0.3 We're using i.Mx6DL and LPDDR2 single channel, starting at 0x10000000 (DDR Memory Map Config = '00'). Does this version select the correct address (i.e. not 0x80000000) for our setup? I'm asking because it automatically says "CHANNEL0 is selected." and for previous version 0.042 we had to manually select channel1 to "trick" stress test into using start address 0x10000000.
記事全体を表示
MIMXRT1170-EVKB 多核示例问题... 这是我第一次使用低级(非 Linux)多核设备,所以这可能是一个愚蠢的问题...... 我正在浏览“ MIMXRT1170-EVKB 的 MCUXpresso SDK 入门指南”(修订版)的第 6.4 和 6.5 节。0 — 2022 年 12 月 31 日),指的是 SDKTOP/boards/evkbmimxrt1170/multicore_examples/hello_world。我正在使用 SDK-2-16-100_MIMXRT1170-EVKB。我还有一个 JLink 编程器,连接到 EVKB 上的 20 针接头。 我第一次就能够构建/加载/运行 cm4/cm7 应用程序,但我没有完全遵循说明,因为它们对我来说没有意义(我必须为两个核心运行 gdb/load)。 第 6.4 节说要“构建”每个应用程序。这很好;但是第 6.5 节说:“ ...主核心调试器负责将主核心和辅助核心应用程序刷入 SoC 闪存... ”。对吗?我发现我必须对每个核心执行“加载”操作(使用 gdb)才能使一切正常工作。 此外,我尝试对 CM4 代码进行微小更改,但它似乎不是编程。gdb 的“加载”是否也会在编程之前清除所有内容? 任何想法都将受到赞赏。 谢谢! 回复:MIMXRT1170-EVKB 多核示例问题…… 好的,我想我现在明白了…… @Pavel_Hernandez ,pdf 非常有用,但是线程只是一组指令,告诉您在 IDE 中要按哪些按钮。如果试图真正理解事物,那就没什么用了。 我现在看到 CM4 的图像实际上作为名为“.core1_code”的部分合并到 CM7 的图像中。CM7 的构建依赖于之前构建的 CM4 图像,因此 CM7 的构建步骤之一是将 CM4 图像合并到 CM7 的内存映射中。这解释了为什么在使用 cm4 的 gdb 中执行“加载”时,它没有被推送到实际的 SPI 闪存空间。我不太喜欢这样做,但没关系。至少我现在明白了。 非常感谢,帮助很大! 回复:MIMXRT1170-EVKB 多核示例问题…… 你好,我叫 Pavel,我会支持你的案例,我发现这个应用笔记可以帮助你更多地了解双核过程,请参阅第 2.1.2 章详细的启动流程。 有一些类似的论点,也许有助于理解。 “ ...主核心调试器负责将主核心和辅助核心应用程序刷入 SoC 闪存... ” i.MX RT1170 双核应用 也许这个其他线程可以帮助您在 IDE 上测试它。 如何使用 JLINK 调试 RT1170 双核 - NXP 社区 此致, 帕维尔 回复:MIMXRT1170-EVKB 多核示例问题…… 好吧,我不想声称这解决了这个问题,但我确实设法让两个核心都执行我的代码...... 我怀疑 gdb 如何告诉 JLINK 写入闪存,因此我没有使用连接到 jlink gdb 服务器的 gdb,而是创建了一个简单的 jlink 脚本来手动加载每个部分(见下文)。为此,我需要从 .elf 文件中提取每个可加载部分文件转换成自己的二进制文件。 对于创建的每个文件,我都可以运行此脚本: eoe 1 设备=MIMXRT1176DVMAA_cm7 速度 4000 si SWD r h 加载箱 elfsect_.flash_config.bin,0x30000400 加载箱 elfsect_.ivt.bin,0x30001000 加载箱 elfsect_.core1_code.bin,0x33fc0000 加载箱 elfsect_.interrupts.bin,0x30002000 加载箱 elfsect_.text.bin,0x30002400 加载箱 elfsect_.ARM.bin,0x30008d00 加载箱 elfsect_.init_array.bin,0x30008d08 加载箱 elfsect_.fini_array.bin,0x30008d0c 加载箱 elfsect_.data.bin,0x30008d10 去 出口 加载 CM7 一切正常。看起来,虽然 jlink 服务器表示它已验证下载,但验证失败了。 有人(NXP 支持)可以解释一下吗? 回复:MIMXRT1170-EVKB 多核示例问题…… 更多信息... 我刚刚注意到,在 gdb 中运行“load”后,我的 JLinkGDBServerCLExe 窗口显示以下错误...... 错误:准备目标时超时,RAMCode 没有及时响应! 无法执行 RAMCode-sidedPrepare() 确定闪存信息时出错(Bank @ 0x30000000)
記事全体を表示
tl431 レギュレータ抵抗器 こんにちは、チーム TEA1733T ic に関していくつか疑問があり、説明をいただきたいと思います。 tea1733t ic データシート: https://www.nxp.com/docs/en/データシート/TEA1733T.pdf アプリケーションノート: https://www.nxp.com/docs/en/application-note/AN10868.pdf 図:1 - これは TEA1733T IC の参照回路図です。 1- 最初の質問は、出力として 24V 3 アンペアが必要な場合、抵抗器 R23 と R24 の値はいくらですか (これらの抵抗器はどのように選択するのですか)、R25 と C17 はどうですか。 2- 2 番目の質問は、ゲート電圧が 10 ~ 12 V、スイッチング周波数が 66 kHz の場合に、トランスの一次側に供給される MOSFET のスイッチング電圧はいくらかということです。 よろしくお願いします。 絶縁ゲートドライバ Re: tl431 regulator resistor こんにちは@TomasVaverkaいくつか疑問があります、説明していただけますか? 1- この D9 および D10 ダイオード (MBR20100) の目的は何ですか? 2- OPTIMER ピンと ISENSE ピンは内部でどのように動作しますか? アプリケーションノート: https://www.nxp.com/docs/en/application-note/AN10868.pdf Re: tl431 regulator resistor @TomasVaverkaさん、ご回答ありがとうございます。 Re: tl431 regulator resistor こんにちは、ジャスティン。 24V/3A 出力の場合、フィードバック分圧器 (R23 と R24) は TL431 リファレンスを 2.5V に設定します。比率は次のとおりです。 SO、R24 = 5.1 kΩの場合、R23 ≈ 43 kΩになります。 R25 と C17 は、ループの安定性のための補償ネットワークの一部を形成します。標準値は R25 = 1 kΩ~10 kΩ、C17 = 100 nF~470 nF で、AN10868 に従って調整されています。 MOSFET は整流された DC バス電圧をスイッチします。この電圧は、115 VAC 入力の場合は約 160 V、230 VAC 入力の場合は約 325 V です。ゲート駆動は10~12 V、スイッチング周波数は約66 kHzです。 BRs、トーマス
記事全体を表示
i.MX 8M Plus EVK で M7 の QSPI を使用する方法 皆さん、こんにちは i.MX 8M Plus EVKをQSPI NORで使い始めるのに苦労しています。 「uuu -b qspi firmware.bin」を使用して8M Miniをフラッシュする方法の説明を見つけました。しかし、これはうまくいかないようです 私のEVKには、NORフラッシュにロードされたブートイメージが付属しているようです。 u-boot=> sf probe SF: Detected n25q256ax1 with page size 256 Bytes, erase size 4 KiB, total 32 MiB u-boot=> sf read $loadaddr 0 0x100 device 0 offset 0x0, size 0x100 SF: 256 bytes @ 0x0 Read: OK u-boot=> md $loadaddr 40400000: 412000d1 007e1000 0005fc00 00000000 .. A..~......... 40400010: 007e0fe0 007e0fc0 0080b7c0 00000000 ..~...~......... 40400020: 007e0bc0 0002cc00 00000000 00000000 ..~............. 40400030: 00000000 00000000 00000000 00000000 ................ 40400040: 1400000a d503201f 40200000 00000000 ..... .... @.... QSPIのコードを使用してM7をフラッシュして起動する方法に関するアプリノートはありますか? Re:i.MX 8M Plus EVKでM7のQSPIを使用する方法 オフセット0にflash_debug/hello_world.binでフラッシュをプログラムしました。 u-boot=> load mmc 1 $loadaddr hello_world.bin 18664 bytes read in 4 ms (4.4 MiB/s) u-boot=> sf probe SF: Detected n25q256ax1 with page size 256 Bytes, erase size 4 KiB, total 32 MiB u-boot=> sf erase 0 0x5000 SF: 20480 bytes @ 0x0 Erased: OK u-boot=> sf write $loadaddr 0 $filesize device 0 offset 0x0, size 0x48e8 SF: 18664 bytes @ 0x0 Written: OK Re:i.MX 8M Plus EVKでM7のQSPIを使用する方法 私はそれを理解しました... .binのプログラミング後ファイルをフラッシュに送り、U-Boot で次のコマンドを発行すると、M7 hello_world アプリを実行できます。 u-boot=> sf probe SF: Detected n25q256ax1 with page size 256 Bytes, erase size 4 KiB, total 32 MiB u-boot=> bootaux 0x08000000 ## No elf image at address 0x08000000 ## Starting auxiliary core stack = 0x20020000, pc = 0x0800048D... そして、UART4 (/dev/ttyUSB3) に "hello world." と表示されます。
記事全体を表示
如何在定制 MIMXRT1176AVM8A 板 上运行恩智浦 SDK 示例 我有一块带有 MIMXRT1176AVM8A 处理器的定制板(与 MIMXRT1170-EVK 不同)。我想运行 SDK 示例,但在必要的修改方面需要指导。 我的硬件设置 微控制器:MIMXRT1176AVM8A(与 EVK 不同)。 外部闪存:S25FL128L(QSPI,16 MB)(与 EVK 的 W25Q512NWEIQ 不同)。 同步动态随机存取存储器(SDRAM):W9812G6KB-6J (32 MB) *(与 EVK 的 W9825G6KH-5I 不同)。 其他更改:用于 LED 和 UART 引脚等的不同 GPIO 我需要什么帮助? Flex-SPI NOR 闪存设置: 既然我使用的是 S25FL128L(不是华邦),我该如何更新 flex SPI 或配置 C 文件才能正常启动? 同步动态随机存取存储器(SDRAM) 初始化: EVK 使用不同的同步动态随机存取存储器(SDRAM) 芯片。我应该如何调整 DCD 设置? 调试技巧 将 SDK 示例移植到自定义板时常见的陷阱有哪些? 请求: 谁能分享一下: 改编 SDK 示例的分步说明? 自定义 Flex SPI/同步动态随机存取存储器(SDRAM) 设置的示例配置? 提前感谢! Re: How to Run NXP SDK Examples on Custom MIMXRT1176AVM8A Board 只要频率不超过 800MHz,就没有问题。 BR, Omar Re: How to Run NXP SDK Examples on Custom MIMXRT1176AVM8A Board MIMXRT1176AVM8A 的 Cortex-M7 内核工作频率为 800 MHz。MIMXRT1176DVMAA(EVK 的处理器)的主频为 1 GHz。 Re: How to Run NXP SDK Examples on Custom MIMXRT1176AVM8A Board 不,它是相同的元器件,但包装不同。 BR, Omar Re: How to Run NXP SDK Examples on Custom MIMXRT1176AVM8A Board 由于 EVK 使用的是 MIMXRT1176DVMAA 处理器,如果我使用 MIMXRT1176AVM8A 处理器的 EVK 示例,会有问题吗? Re: How to Run NXP SDK Examples on Custom MIMXRT1176AVM8A Board 请参阅此文档:如何为 FLEXSPI 或非 闪存启用调试\ 本文件包含使用其他闪存时可进行调试的指南。 更详细的文档可能对您有所帮助:i.MX RT FLEXSPI 启动指南-恩智浦社区 关于同步动态随机存取存储器(SDRAM),建议参考 SDK 示例来配置内存,DCD 使用相同的同步动态随机存取存储器(SDRAM)配置,因此它是在启动时加载的。这里有一些关于如何配置同步动态随机存取存储器(SDRAM) 参数的示例:已解决:双 16 位同步动态随机存取存储器(SDRAM) (W9812G6KH) 的 MIMXRT1176 SEMC 配置-恩智浦社区 致以最崇高的敬意, Omar
記事全体を表示
添加模块后"TM_TS_T40D34M10I0R0" of S32K3xx_SBC_FS23_R21-11_1.0.0_D2402EB 报告错误 专家们好 我的客户正在开发基于 FS23+S32K3 的项目。 他们安装了S32K3xx_SBC_FS23_R21-11_1.0.0_D2402.exe和SW32K3_S32M27x_RTD_R21 -11 _4.0.0_D2311.exe。 但在 EBTresos 中添加模块" TM_TS_T40D34M10I0R0"(C:\NXP\S32K3xx_SBC_FS23_R21-11_1.0.0\eclipse\plugins\TM_TS_T40D34M10I0R0) 会导致错误: Module "TM_TS_T40D34M10I0R0" (defined in plugin "TM_TS_T40D34M10I0R0") defines the schema file "config/TM.xdm" which cannot be found (if the file is signed or crypted, it must be referenced in META-INF\CRYPTOMANIFEST.MF). The manager of a schema of configuration extension "TM_TS_T40D34M10I0R0" of plugin "TM_TS_T40D34M10I0R0" cannot be created 我不知道 TM 在 S32K3xx_SBC_FS23_R21-11_1.0.0_D2402.exe 中做了什么。请介绍一下,并告诉我如何使用。 提前感谢您的帮助! 最诚挚的问候, Robin 以下是客户信息: Contact Name 超 夏 Email (Contact) [email protected] 公司 CHERY AUTOMOBILE CO. AA SW - 外部设备 优先级:中等 Re: After add Module "TM_TS_T40D34M10I0R0" of S32K3xx_SBC_FS23_R21-11_1.0.0_D2402 EB repor 感谢您的解释。我想现在已经很清楚了。 让我来向客户解释一下。 Re: After add Module "TM_TS_T40D34M10I0R0" of S32K3xx_SBC_FS23_R21-11_1.0.0_D2402 EB repor 我同意。否则,关于 Tm 的其他一切现在都清楚了吗? Re: After add Module "TM_TS_T40D34M10I0R0" of S32K3xx_SBC_FS23_R21-11_1.0.0_D2402 EB repor @Ondřej_Vácha 我在想,如果我们没有 TM.xdm,那么就应该将其从 plugin.xml 中排除,以避免混淆,对吗? Re: After add Module "TM_TS_T40D34M10I0R0" of S32K3xx_SBC_FS23_R21-11_1.0.0_D2402 EB repor 您好,TM 驱动程序目前无法插入 EBT,因为它没有任何配置。因此,这不是一个错误。TM 与 CanTrcv 驱动程序共享,以符合 SWS_CanTrcv_00230。没有必要在 EBT 中加入 TM,在版本项目时,只需要将其中包含的文件包含在项目中。 Tm 包含用于时间延迟的 API。 根据共享的截图,您正试图编译 cantrcv_fs23 示例。我也试过,Tm 模块不一定要在那里。 Re: After add Module "TM_TS_T40D34M10I0R0" of S32K3xx_SBC_FS23_R21-11_1.0.0_D2402 EB repor 嗨,拉杜、 以下是客户信息: 联系人姓名 超夏 电子邮件(联系人) [email protected] 公司 CHERY AUTOMOBILE CO. 此致敬礼, Robin Re: After add Module "TM_TS_T40D34M10I0R0" of S32K3xx_SBC_FS23_R21-11_1.0.0_D2402 EB repor 你好,@Robin_Shen, 谁是客户? Re: After add Module "TM_TS_T40D34M10I0R0" of S32K3xx_SBC_FS23_R21-11_1.0.0_D2402 EB repor Hi Cuong、 谢谢您的答复。 由于 FS23 SBC AUTOSAR R21-11 版本 1.0.0 已经是 FS23 的最新版本,所以让我们等待 AA SW-Exter nal 设备的同事来处理吧。 此致敬礼, Robin Re: After add Module "TM_TS_T40D34M10I0R0" of S32K3xx_SBC_FS23_R21-11_1.0.0_D2402 EB repor 嗨 @Robin_Shen 当 " config/tm.xdm " 不包含在 CRYPTOMANIFEST.MF 文件中时,这看起来像 SBC 代码包,软件包中的错误。我检查了一下,在 CRYPTOMANIFEST.MF 中找不到这个文件。 您能否尝试使用另一个更新版本的 SBC,看看问题是否得到了解决。 我将移除标签 " RTD ",因为它与 SBC-AA SW-外部设备有关
記事全体を表示