Multi Source Translation Content

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

Multi Source Translation Content

Discussions

Sort by:
[S32N55 B0] XSPI 闪存操作导致 CRS 中的总线故障 在 CRS 中测试最新 B0 硅 RTD 期间,闪存操作会在以下情况下导致总线故障: 1.在 1000 毫秒操作系统任务中,将触发对扇区大小为 256Kb 的外部闪存的读取操作。该请求在 1000ms 任务中不断循环处理,直至操作完成。 2.在处理 1000ms 任务的读取操作期间,一个优先级更高的 0.5ms 任务正在取消该读取操作。在优先级较高的任务中,取消该读取操作是成功的。但是,当上下文恢复到启动读取操作的 1000 毫秒任务时,内核会出现总线故障。 客户让 main 进入 while 循环,直到当前工作处理完毕。他们总是可以在 RDB 上重现这种情况。 优先级:中等 RTD Re: [S32N55 B0] XSPI Flash operation leads to bus fault in CRS 你好,我是@郝月燕、 根据您所描述的客户情况。我想出现这个问题的原因是他们在读取和取消任务中都调用了 MemAcc_Mainfunction。它们应仅在一个任务中定期调用 MemAcc_Mainfunction(如配置的 MemAcc MainFunction Period)。 顺祝商祺! 丹 Re: [S32N55 B0] XSPI Flash operation leads to bus fault in CRS 你好,我是@郝月燕、 您能告诉我他们的流程代码吗? 例如: 顺祝商祺! 丹 Re: [S32N55 B0] XSPI Flash operation leads to bus fault in CRS 你好,丹、 请参见所附的 .xdm文件如果无法下载,请告诉我。 Re: [S32N55 B0] XSPI Flash operation leads to bus fault in CRS 你好,丹、 感谢您的回复。 他们将该参数设置为 200 毫秒。 很抱歉,我已将它们附在本评论中。 RTD 版本为 1.8.0_CD03。 Re: [S32N55 B0] XSPI Flash operation leads to bus fault in CRS 你好@郝月燕、 看起来这个问题与操作系统环境有关,而不是 RTD 驱动程序。 1. 您是否启用了"Mem MainFunction Period" ,以便在操作系统环境中使用? 2. 您的图像非常模糊,我看不清细节。你能再发送更大尺寸的图像吗? 3. 你使用的 RTD 代码包版本是什么? 顺祝商祺! 丹
View full article
Android 13 ディスプレイ・インターフェースの LCDIF が機能しない NXP リファレンス デザイン コード ベース: i.MX8MQ プラットフォーム / Android 13.0.0_2.0.0 (L6.1.22_2.0.0 BSP) Android 13(GKI)ではMIPI-DSIに接続されたLCDIFは動作しませんが、Android 11では機能が動作します。 Android 11 ログ: (Android11_LCDIF_OK.log ) [ 3.511971] nwl-dsi 30a00000.mipi-dsi:[drm:nwl_dsi_probe] LCDIFを入力ソースとして使用する [ 4.084346] [gm8775c_bridge_attach] [ 4.084349] [gm8775c_simple_panel_host_register] [ 4.084353] 子ノードパネル、パネル@0 [ 4.084609] panel-simple panel0: DMAマスクが設定されていません [ 4.084653] [パネル_シンプル_プローブ] [ 4.084686] panel-simple panel0: 供給電源が見つかりません。ダミーレギュレータを使用しています。 [ 4.084862] [gm8775c_attach_dsi] [ 4.084955] nwl-dsi 30a00000.mipi-dsi:[drm:nwl_dsi_host_attach] レーン=4、フォーマット=0x0、フラグ=0x15 [ 4.085966] [drm] 30320000.lcd-コントローラ 用に mxsfb-drm 1.0.0 20160824 を初期化しましたマイナー1 [ 4.237089] mxsfb 30320000.lcd-コントローラ:[drm] fb0: mxsfb-drmdrmfb フレームバッファデバイス Android 13 ログ: (Android13_LCDIF_Fail.log ) [ 2.401658][ T8] nwl-dsi 30a00000.mipi-dsi:[drm:nwl_dsi_probe [nwl_dsi]] LCDIF を入力ソースとして使用する [ 2.412617][ T8] [gm8775c_bridge_attach] DRM_BRIDGE_ATTACH_NO_CONNECTOR [ 2.419684][ T8] [drm:drm_bridge_attach] *エラー* ブリッジ /soc@0/bus@30800000/i2c@30a20000/gm8775c@2C2 の接続に失敗しました [ 2.419734][ T1] __power_supply_register: 'battery' の適切な親デバイスが必要です [ 2.420045][ T1] __power_supply_register: 'usb' の適切な親デバイスが必要です [ 2.432612][ T8] [drm:drm_bridge_attach] *エラー* ブリッジ /soc@0/bus@30800000/mipi-dsi@30a00000 を en2 に接続できませんでした [ 2.460891][ T8] mxsfb 30320000.lcd-コントローラ:エラー -EINVAL: ブリッジの接続に失敗しました [ 2.469098][ T8] mxsfb 30320000.lcd-コントローラ:エラー -EINVAL: ブリッジに接続できません [ 2.477247][ T8] mxsfb: 30320000.lcd-コントローラ のプローブエラー -22 で失敗しました 添付のLCDIF_Log.zipAndroid11_LCDIF_OK.log と Android13_LCDIF_Fail.log の両方が含まれます。 Android 11 のログには「Initialized mxsfb-drm」と表示されますが、Android 13 のログにはメッセージが見つかりません。 また、インターネットで「mxsfb」を検索します。 [ 11.141177] mxsfb 30320000.lcdif:ブリッジを接続できません: -22 [ 11.161062] mxsfb: 30320000.lcdif のプローブがエラー -22 で失敗しました mxsfb は lcdif と同じですか? mxsfb-drm を初期化CAN、問題は解決できるでしょうか? はいの場合、Android 13(GKI)でmxsfb-drmを有効にする方法を教えてください。 いいえの場合、問題をどのように解決しますか? ちなみに、&lcdif の代わりに &dcss を使用しているため、DSI から LVDS へのブリッジ ドライバ (gm8775c) が機能すると考えており、Android 13 の MIPI-DSI にコネクテッドされた DCSS が機能する可能性があります。 U-Boot 環境変数を次のように設定しようとしましたが、まだ機能しません。 u-boot=> setenv append_bootargs androidboot.primary_display=mxsfb-drm u-boot=> saveenv Re: Android 13 LCDIF of display interface can't work こんにちは、HyleChang さん、私も同様の問題を抱えています。問題を解決したいので、デバイスツリー ファイルを共有していただけますか。DCSS で LVDS を正常に駆動できましたが、LCDIF で駆動した LVDS は動作しません。パネルサイズ、ドライバコードなどを変更しました。また、ソフトウェア側の問題であることを確認するためにハードウェアを変更しましたが、まだ進展がありません。私は助けが必要です。 これはフォーラムでの私の問題定義です。 https://community.nxp.com/t5/i-MX-Processors/IMX8MQ-Android-11-LCDIF-Display-Not-Working-by-MIPI-DSI-to-LVDS/td-p/2125642 よろしくお願いします Re: Android 13 LCDIF of display interface can't work 親愛なる友人、私も同様の問題を抱えています。SN65dsi ブリッジは lvds をサポートするために使用されます。 条件 1) DCSS+LVDSは正常に動作します 2) DCSS+HDMIは正常に動作します しかし、lcdif+lvdsは動作しません。デュアル ディスプレイをサポートする必要があるSO、LVDS は LCDIF で駆動し、HDMI は DCSS で駆動する必要があります。 Android11 デバイスのデュアル ディスプレイ用のデバイスツリー構成を共有していただけますか?ログを確認しましたが、同様です。 Re: Android 13 LCDIF of display interface can't work ありがとうございます。Android 13でMIPI-DSIにコネクテッドされたLCDIFは動作します。 Re: Android 13 LCDIF of display interface can't work i.MX8MQ の場合、mxsfb は lcdif ドライバであり、lcdif は MIPI DSI のみを出力できます。DCSSはDSIとHDMIの両方CAN出力します。 imx-dcnano と imx-drm は、他の i.MX プラットフォームのディスプレイ コントローラ ドライバでもあります。 Re: Android 13 LCDIF of display interface can't work 親愛なる志明様 「primary_display」を調べてみると、Android_Quick_Start_Guide.pdf では下図のようにあまり詳しく説明されていません。 NXP 独自の用語の意味を整理していただけますか?ありがとう。 プライマリディスプレイ=mxsfb-drm primary_display=imx-dcss プライマリディスプレイ=imx-drm プライマリディスプレイ=imx-dcnano Re: Android 13 LCDIF of display interface can't work ブリッジの接続が成功すると、mxsfb-drm がカーネル空間で初期化されるということですか。 -->はい、そのようなドキュメントはありませんが、uboot とカーネルのソースコードを参照できます。 Re: Android 13 LCDIF of display interface can't work Zhiming_Liu 様 GM8775C ドライバを移植する際には、NXP が提供する Android 11 用の imx8mp_ite6151_mipi2edp_linux_5.4.24_20200921.patch と Android 13 BSP 上の adv7511 ブリッジ ドライバを参照するため、ブリッジ ドライバを再度確認し、DRM_BRIDGE_ATTACH_NO_CONNECTOR フラグに注目します。 ところで、「ブリッジ接続に失敗したため、mxsfb-drm を初期化CANません」とおっしゃいました。 => ブリッジの接続に成功すると、mxsfb-drm がカーネル空間で初期化されるということですか。 はい、Android のブートアニメーション (ロゴ) に u-boot で mxsfb を使用したいのですが、学習して実装するための Android-13 ドキュメントはありますか?ありがとう。 間違っていたら訂正してください。 Re: Android 13 LCDIF of display interface can't work こんにちは@KyleChang mxsfb は lcdif と同じですか? --> i.MX8MQのlcdifドライバはdrivers/GPU/drm/mxsfb/mxsfb_drv.cです。SO、mxsfb です。ブリッジ接続に失敗したため、mxsfb-drm を初期化できません DRM_BRIDGE_ATTACH_NO_CONNECTORフラグの処理方法に関係しているようです。この点を確認していただけますか? mxsfb は DRM_BRIDGE_ATTACH_NO_CONNECTOR を渡しませんが、dcss ドライバは渡します。 ret = drm_bridge_attach(&mxsfb->encoder, bridge, NULL, 0); if (ret) return dev_err_probe(drm->dev, ret, "Failed to attach bridge\n"); mxsfb->bridge = bridge; よろしくお願いいたします。 志明
View full article
S32M27x EWM Hi,NXP专家,我在S32M27x RM手册中无法找到External WatchDog Monitor相关描述,想麻烦帮忙提供下,谢谢 Re: S32M27x EWM Hi@Chenxu1 很抱歉,这么简单的问题却让您久等了,而且我还没有从内部人员那里得到任何确认。 但我敢肯定这是文档错误,S32M27 并不像 S32K1 和 S32M24 那样有 EWM 模块。 感谢您的理解。 Re: S32M27x EWM Hi@Chenxu1 很抱歉让你久等,目前还没有来自内部团队的确认信息。 7/28/2025 Re: S32M27x EWM Hi@Chenxu1 很抱歉让你久等,目前还没有来自内部团队的确认信息。 Re: S32M27x EWM Hi@Chenxu1 我需要确认下,这是不是一个文档错误。 按我知道的S32K3是没有类似于S32K14X的EWM模块的,那么S32M27X应该也是没有的。
View full article
yocto 版本问题 WSL 和 ubuntu 我正在在 WSL 环境中版本 yocto。但是,它不再在 nodejs 编译中运行。 我一直在等待它的结束,但只更新了版本时间。 nodejs-18.16.0-r0 do_compile - 1h20m27s (pid 187) i.MX 8M | i.MX 8M Mini | i.MX 8M Nano Re: yocto build issue WSL and ubuntu 对于仍然面临这个问题的人,我设法通过增加 wsl 资源和在构建之前将 python 版本从 2 改为 3 来解决这个问题。 Re: yocto build issue WSL and ubuntu 你们好 我在nodejs版本时遇到了同样的问题。 如果您成功解决了这个问题,能否请您分享一下解决方案? 谢谢! Re: yocto build issue WSL and ubuntu 你好,金、 我知道你和我面临着类似的问题。不过,我还没能解决这个问题。我目前正在寻找解决方法。 如果您找到了解决这个问题的方法,请与我分享。我非常希望听到你们在解决我们共同的问题方面的见解和经验。 谢谢, Man Lee Re: yocto build issue WSL and ubuntu hi Brian 我测试了增加 16BG 的交换内存。 但是,这并不能解决问题。 ,你有什么办法吗? 致以最崇高的敬意 Re: yocto build issue WSL and ubuntu 嗨,@sutton_kim、 正如我在上次答复中所说的那样。该问题与内存有关,因为操作系统正在杀死进程,通常与内存有关,但不是专门与 SWAP 内存有关,除了 RAM 内存不足问题外,SWAP 内存也可能是一个原因。 有关 SWAP 内存或分区及其在 Linux 系统中的使用,请访问以下链接:Linux 系统上的交换空间简介 | Opensource.com 请查看此链接。 祝你愉快 Re: yocto build issue WSL and ubuntu 你好,布莱恩 ,你能解释一下为什么你认为是 SWAP 内存问题吗? ,我正在尝试。 顺祝商祺! Re: yocto build issue WSL and ubuntu 嗨,@sutton_kim、 感谢您的回复。 我查看了您的错误日志,发现了以下错误: collect2: fatal error: ld terminated with signal 9 [Killed] 这是一个与内存空间有关的错误。 您可以尝试将 SWAP 内存增加到至少 8GB,并增加 /home 磁盘空间。 谨致问候,布莱恩。 Re: yocto build issue WSL and ubuntu 你好 您的问题也是 nodejs 编译问题吗? Re: yocto build issue WSL and ubuntu 我使用的是 wsl2 ubuntu 20.04。我也在 wsl 2 中为编译 yocto 版本而苦苦挣扎。%95% 的情况与内存不足有关。内存使用量达到峰值,并出现无关错误。创建 .wslconfig 中的文件,并添加这些行: [wsl2] 内存=5GB 编译时不要做任何事情,单独编译任务,先编译简单的任务。 这就是我的经验。 顺祝商祺! Re: yocto build issue WSL and ubuntu 嗨 prakashram72 我的磁盘超过 50G,内存也超过 4G。 我的 imx8 板 nodejs 版本是 18.16.0 我已经试过 bitbake nodejs -c cleanall。但问题还没有解决。 我尝试了以下各种方法,但都没有解决问题。 1.bb_number_threads = " 2" PARALLEL_MAKE = "-j 2 " 添加 版本/conf/local.conf   2. nice -n 19 ionice -c 3 bitbake nodejs   顺祝商祺!   Re: yocto build issue WSL and ubuntu 你好,布莱恩 我的 ubuntu 版本是 20.4 以下是错误日志 | collect2: fatal error: ld terminated with signal 9 [Killed] | 编译终止。 | make[1]:*** [node.target.mk:218:版本/node] 错误 1 | make [1]:*** 等待未完成的任务... | rm bfc4ab6848d78126d96ea1cc2909493619e2620.e2620.中级001fef872bcdd412983a45d8751148446514e391.intermediate0ecc6719bf1f9373e09aab7ca8e249bc65708f7b.intermediate27f057ffd656a5a48c99be9d693d885fa74e6838.intermediatef0a82c14c8271d9ee3baddfc8f0b6dbcd3b7256d.intermediateb3fe029693590b3f84422b3d42e7496dcc1c55c5.intermediate | make:*** [Makefile:134: node] Error 2 | WARNING: /home/sukim/kasan/build.imx8/tmp/work/aarch64-elina-linux/nodejs/18.16.0-r0/temp/run.do_compile.1063:1从 “退出 1” 退出 1 | 错误:任务(/home/sukim/kasan/meta/project/meta-cx/recipes-devtools/nodejs/nodejs/18.16.0.bb: do_compile)失败,退出代码为 “1” 注意:任务摘要:尝试过的 1235 个任务,其中 162 个不需要重新运行,1 个任务失败。 注意:编写 buildHistory 注意:编写构建历史记录花费:3 秒钟 注意:构建完成摘要: 注意:do_populate_sysroot:29.1% 的状态重用(34 个集场景,83 个临时场景) 注意:do_package:0.0% sstate 重用(0 setscene,39) 注意:do_packageData:100.0% 状态重复使用(39 个场景,0 个暂存) 注意:do_package_write_rpm:100.0%状态重复使用(39 个场景,0 个临时场景) 注意:do_populate_lic:100.0%状态重复使用(1 个场景,0 个临时场景) 摘要:1 个任务失败:/home/sukim/kasan/meta/project/meta-cx/recipes-devtools/nodejs /nodejs_18.16.0.bb: do_compile 摘要:共显示 45 条警告信息。 摘要:显示了 2 条ERROR 信息,返回一个非零退出代码。 也在 run.do_compile 下面。日志错误部分 -Wl,--hash-style=gnu-Wl,--as-needed-fstack-protector-strong-Wl,-z,relro,-z,now-fstack-protector-strong-Wl,-z,relro,-z,now' AR.host='aarch64-elina-linux-gcc-ar' builddir_name=./ " $@" }   die() { bbfatal_log " $*" }   bbfatal_log() { if [ -p /home/sukim/kasan/build.imx8/tmp/work/aarch64-elina-linux/nodejs/18.16.0-r0/temp/fifo.32044 那么 printf " % b\0" " bbfatal_log $*" > /home/sukim/kasan/build.imx8/tmp/work/aarch64-elina-linux/nodejs/18.16.0-r0/temp/fifo.32044 不然 echo " ERROR: $*" fi 退出 1 }   顺祝商祺! Re: yocto build issue WSL and ubuntu 嗨,@sutton_kim、 能否请您共享 Yocto 生成的错误日志? 此外,根据i.MX Yocto Project用户指南,建议使用Ubuntu环境。 "建议使用的 Ubuntu 最低版本为 20.04 或更高版本。" 祝你愉快 谨致问候,布莱恩。 Re: yocto build issue WSL and ubuntu 嗨,@sutton_kim、 在适用于 Linux 的 Windows 子系统 (WSL) 环境中 Yocto 的 nodejs 编译步骤中,你似乎遇到了麻烦。造成这种情况的原因有很多,但常见的原因是系统资源不足,尤其是内存不足。 首先,确保您的系统满足 Yocto 版本的最低要求。根据Yocto Project快速入门指南,你应该至少有50千兆字节的可用磁盘空间和4千兆字节的内存。如果同时运行其他繁重的应用程序,请考虑关闭它们以释放资源。 如果系统资源不是问题,那么可能是你尝试编译的 nodejs 的特定版本出现了问题。您可以尝试切换到其他版本,看看问题是否仍然存在。 另一个潜在问题可能是 WSL 环境本身。虽然 WSL 在兼容性方面取得了长足进步,但它并不能 100% 等同于本地 Linux 环境。如果可能的话,你可能想尝试在原生 Linux 环境中运行你的版本,看看问题是否仍然存在。 最后,你可以尝试使用 “bitbake-c cleanall nodejs” 命令清理你的编译环境,然后重新尝试版本。 有关更详细的故障排除,您可能会发现以下资源很有帮助: Yocto 在 ubuntu 18.04 WSL 上版本失败 Yocto 项目编译主机设置 Yocto 项目快速入门 此致, Prakash
View full article
HSE_SRV_RSP_INVALID_PARAMを返します S32K314 「Crypto_43_HSE_TS_T40D34M50I0R0」を統合した後、関数「 「Crypto_43_HSE_Exts_FormatKeyCatalogs」 Crypto_43_HSE_KeyElementSet ” HSE_SRV_RSP_INVALID_PARAM を返します。考えられる原因は何でしょうか?さらに、Crypto で使用されるすべての RAM がキャッシュ不可として設定されていることを確認します。 Re: returns HSE_SRV_RSP_INVALID_PARAM ちなみに、私は SHE キーを実際に操作せずに AES キーをロードしようとしていることをお伝えします。 Re: returns HSE_SRV_RSP_INVALID_PARAM こんにちは、 私は S32K312 上のドライバ Crypto_43_HSE v6.0.0 (Crypto_43_HSE_TS_T40D34M60I0R0) でも同じ問題に直面しており、まったく同じ問題が発生しています。 キー カタログのフォーマットに成功しました。その後、HSE ステータスが 0x0B60 として報告され、CUST_DEL がアクティブになっていることがわかります。 NvM および Ram キー カタログには次の構成があります。 でも私は KeyElementSet を実行してキーを初期化しようとすると、HSE_SRV_RSP_INVALID_PARAM が発生します。 Re: returns HSE_SRV_RSP_INVALID_PARAM ご協力 ありがとうございました 。問題は解決しました!本当に感謝しています。 Re: returns HSE_SRV_RSP_INVALID_PARAM ご返信ありがとうございます。EB設定ファイルとスクリーンショットを添付しました。 Re: returns HSE_SRV_RSP_INVALID_PARAM まあ、ライフサイクル的には問題ありません。デバイスはまだ CUST_DEL 状態です。 NVM カタログと RAM カタログがどのように定義されるか教えていただけますか? Re: returns HSE_SRV_RSP_INVALID_PARAM お返事ありがとうございます。このメモリのスクリーンショットに基づいて、何か問題を特定CANますか? Re: returns HSE_SRV_RSP_INVALID_PARAM こんにちは@hangwu 返信が遅くなり申し訳ありません。 まだ CUST_DEL ライフサイクルですか?これを確認する最も簡単な方法は、0x1B00_0220 - 0x1B00_026F のメモリのスクリーンショットを送っていただくことです。 カタログは CUST_DEL ライフ サイクルでのみフォーマットCANため、これが根本原因である可能性SOあります。次に失敗するコマンド (keyelementset...) は、カタログがフォーマットされていないために発生する可能性があります。 よろしくお願いいたします。 ルーカス returns HSE_SRV_RSP_INVALID_PARAM プロジェクトの制約により、完全に実行可能なプロジェクトを提供することはできません。以下に 2 つの主要なソース ファイルを示します。「S32K3XX_S32M27x_RTD_R21-11_5.0.0_P08」を統合しましたRTD パッケージ。EB 構成は厳密に次のようになります。 「\S32K3XX_S32M27x_RTD_R21-11_5.0.0_P08\eclipse\plugins\Crypto_43_HSE_TS_T40D34M50I0R0\examples\EBT\S32K3XX」。 乱数生成、ハッシュ値、UpdateFw、GetFwVersion、およびその他のサービスをテストしましたが、すべて正常に動作しました。しかし: 「Crypto_43_HSE_Exts_FormatKeyCatalogs」 「Crypto_43_HSE_KeyElementSet」 「Crypto_43_HSE_KeySetValid」 「Crypto_43_HSE_プロセスジョブ」 すべて「HSE_SRV_RSP_INVALID_PARAM」を返しました。 HSE_STATUS_INSTALL_OK ビットがクリアされていることがわかったので、FormatKey を呼び出そうとしましたが、失敗しました。 Re: returns HSE_SRV_RSP_INVALID_PARAM こんにちは@hangwu 問題を再現するための簡単なプロジェクトを共有することは可能ですか? よろしくお願いいたします。 ルーカス
View full article
Edgelock Enclaveはセキュアな世界と非セキュアな世界で鍵操作を導出する NXPコミュニティの皆様、こんにちは。 ここでは、コンテキスト文字列「TEE_for_HUK_ELE」を使用する iMX OP-TEE によるハードウェア一意キー (HUK) の導出を調べています。 通常の世界からの同じコンテキスト文字列で同じ操作を実行してみましたが、異なる結果が得られました。 なぜそうなるのかの正当な理由を見つけようとしていますが、ドキュメントが非常に限られています。ELE が呼び出しの起源をどのように認識しているかを説明しているマニュアルの参照先を教えていただけますか?それとも、この動作を正当化する他のメカニズム(S と NS の世界で異なる派生キー)でしょうか? よろしくお願いいたします。 Re: Edgelock Enclave derive key operation in Secure vs Non-Secure World ハーヴェイ021 私も同じ/類似の問題に苦しんでいます。 SPSDK の nxpele ツールの derive_key コマンドを使用して RPMB キーを設定したかったのです。 また、OPTEE HUK (この投稿で最初に言及) では同じ導出結果を得ることがCANません。 EdgeLock セキュア・エンクレーブ imx93 ユーザガイドには次のように簡潔に記載されています。 「」 DERIVE KEY コマンドを送信して、一意のキーを導出CAN。 キーは、ELE がリクエストを受信する条件に基づいて区別されます。 • ユーザーのセキュリティ保護/非保護。 • ユーザー権限/ユーザー。 • MU を使用しました。 • した。 • マスター番号。 • ライフサイクル。 • EdgeLock セキュア・エンクレーブ SSSM 状態。 • ユーザーのコンテキスト(コマンドの入力)。 「」 しかし、具体的にどう違うのでしょうか? 例えばボードが開いているか閉じているかによって、imx_ele_derive_keyの結果は変わりますか? よろしくお願いします、 ミハウ Re: Edgelock Enclave derive key operation in Secure vs Non-Secure World こんにちは@gpoulios システムメールで返信いたします。 よろしくお願いします。 Harvey Re: Edgelock Enclave derive key operation in Secure vs Non-Secure World 異なる S3MUA ベース アドレスが使用されていることがCANます (MU_APPS.S3MUA と MU_RT.S3MUA)。これが導出関数に含まれて、一方と他方で異なる結果が生じるということを述べている参照が見つかりません。 機能としてこれは非常に便利です (ELE へのアクセスを制限する必要はありません)。実際にこれがCASEであることを示すドキュメント参照が必要です。
View full article
S32K311 引导加载程序跳转到应用程序问题 你好 我遇到过 S32K311 引导加载程序跳转到应用程序的问题。目前无法正常跳跃。我指的是论坛上的帖子,如 从 S32K312 引导加载程序到应用程序跳转 DS3.5 RTD300 的示例 - NXP 社区 统一引导加载器演示 - NXP 社区 已解决:S32K312 引导加载程序跳转到应用程序问题 - NXP Community 这些方法已经尝试过,但是无法正常跳转,ld 链接器文件也是引用示例配置的, 唯一成功的跳转方法是分别将启动程序和应用程序程序下载到 MCU,并使用 S32DS 调试启动程序。当我直接运行它们时,我无法跳转到应用程序。当我在跳转函数处断点并停止运行时,我可以跳转到应用程序程序。 试着用延迟一段时间再跳,不行,只能断点停止,然后再跑到应用程序中去 与其他 S32K3x 系列相比,S32K311 程序跳转是否特别? S32K311 引导加载程序能否成功跳转到应用程序的演示参考? S32K31XEVB-Q100 Re: S32K311 Bootloader Jump to Application issue 嗨,团队、 请告诉我这个问题的解决方案。我正试图从布尔加载器跳转到应用程序。但这并不奏效。 这是引导加载程序的链接文件。 存储器 { ITCM (RWX) :ORIGIN = 0x00000000,LENGTH = 0x8000 pflash_boot (rx) :ORIGIN = 0x00400000,LENGTH = 0xA000 fw_ver_config (rx) :ORIGIN = 0x00419FE0,LENGTH = 0x20 /* 配置管理器 1Kb */ 配置(RX) :ORIGIN = 0x0041A000,LENGTH = 0x400 PFLASH_BAF(RX) :ORIGIN = 0x004F4000,LENGTH = 0xC000 DFLASH (RX) :ORIGIN = 0x10000000,LENGTH = 0x10000 DTCM (RW) :ORIGIN = 0x20000000,LENGTH = 0x10000 sram0_stdby (rw) :ORIGIN = 0x20400000,LENGTH = 0x2000 SRAM (RW) :ORIGIN = 0x20402000,LENGTH = 0x6000 } 这是应用程序的链接文件 存储器 { ITCM (RWX) :ORIGIN = 0x00000000,LENGTH = 0x8000 pflash_app (rx) :ORIGIN = 0x00480000,LENGTH = 0xFFE0 fw_ver_config (rx) :ORIGIN = 0x0048FFE0,LENGTH = 0x20 配置(RX) :ORIGIN = 0x00490000,LENGTH = 0x400 PFLASH_BAF(RX) :ORIGIN = 0x004F4000,LENGTH = 0xC000 DFLASH (RX) :ORIGIN = 0x10000000,LENGTH = 0x10000 DTCM (RW) :ORIGIN = 0x20000000,LENGTH = 0x10000 sram0_stdby (rw) :ORIGIN = 0x20400000,LENGTH = 0x2000 SRAM (RW) :ORIGIN = 0x20402000,LENGTH = 0x6000 } 我使用以下代码跳转到应用程序。 __disable_irq(); SCB->VTOR = 0x00480000; func = *(uint32_t volatile *)(0x00480000 + 0xC); func = *(uint32_t volatile *)(((uint32_t)func) + 0x4); func = ((((uint32_t)func)& 0xFFFFFFFFU)); // Reset_Handler+1 -- 需要>--> 以避免硬故障 (* (void (*) (void)) func)(); 但跳转到应用程序的情况并没有发生。 请您在这方面支持我。 谢谢! 基兰 回复: S32K311 Bootloader Jump to Application issue 已解决
View full article
如何高效驱动和优化 OLED 监测? 嗨,恩智浦社区、 我目前正在开发一个紧凑的嵌入式系统,该系统将小型OLED监测作为主显示屏,我想向任何使用恩智浦硬件做过类似工作的人寻求指导。 使用普通恩智浦微控制器以最小的闪烁和最佳刷新率驱动 OLED 监测 的最可靠方法是什么?我特别好奇使用 SPI 或 I²C 接口时的最佳实践。在显示时间、电压等级或启动顺序方面,是否存在已知的局限性或建议的方法? 此外,恩智浦是否提供任何可简化 OLED 屏幕初始化和绘制例程的首选库或示例代码?我已经翻阅了一些文档,但如果能提供实际的实施技巧,我将不胜感激。 最后,在能效方面,OLED 显示器在低功耗电源模式下的表现如何,以及可以使用哪些技术在不损失数据完整性的情况下管理亮度或待机行为? 预先感谢您提供的任何见解。我发现这个论坛对我帮助很大,我希望能从其他应对过类似显示挑战的人那里学到经验。 感谢您的支持以及恩智浦社区的所有资源 恩智浦社区!
View full article
如何从恩智浦 FRDM RW612 模块提取 CSI 数据 大家好, 我目前正在与恩智浦 FRDM-RW612 开发板合作,目标是为 Wi-Fi 传感应用提取信道状态信息 (CSI) 数据。我查看了 SDK 文档,探索了一些射频诊断模式,但没有找到访问 CSI 的明确路径。 是否有人能提供指导,或为我指出正确的命令、固件配置或示例,使我能在该平台上提取 CSI 数据?如果您已经成功地完成了这项工作,或者找到了相关的恩智浦资源,我将非常感激您的意见。 预先致谢 Re: How to Extract CSI Data from NXP FRDM RW612 Module 嗨,@mieintern02、 另外有一篇关于如何在 FreeRTOS 平台上配置 CSI 的应用笔记。命令和示例都有清晰的解释。请参阅AN14281:FreeRTOS 上的通道状态信息 (CSI)。如果您还有其他问题,请告诉我! 谢谢! Darlena Nguyen Re: How to Extract CSI Data from NXP FRDM RW612 Module 我目前还在尝试从 FRDM-RW612 中提取 CSI 数据。我假设我缺少一个导致 CSI 回调失效的关键元器件,因为错误配置参数确实会导致固件宣布错误,例如频道配置不正确等。不幸的是,我仍然无法获得 CSI 的任何回调。 尽管有安全访问权限,AN14281:FreeRTOS 上的通道状态信息 (CSI)文件显示为不可用,我无法从技术支持或 docstore 支持获得帮助,以了解如何访问该文件(我已申请访问所有相关类别的文件,并已获得批准)。这样的帖子告诉我这是可能的,但我想不通。 如有任何帮助,我们将不胜感激。
View full article
在 i.mx8ULP 上 RESET 之前未触发 WDOG32 中断 你好 我正在研究 i.MX8ULP,并尝试在 WDOG32 触发信号 RESET 之前在中断模式下使用它。 尽管我已将监视程序配置为启用中断,但它仍然像普通的监视器一样运行——它直接RESET系统而不会产生中断。 void WDOG0_IRQHandler(void) { PRINTF("Watchdog IRQ triggered! Count = %u\r\n", wdog_irq_count); /* Clear interrupt flag */ WDOG32_ClearStatusFlags(WDOG0, kWDOG32_InterruptFlag); wdog_irq_count++; SDK_ISR_EXIT_BARRIER; } /* Get default configuration */ WDOG32_GetDefaultConfig(&config); /* Enable interrupt mode */ config.enableInterrupt = true; config.timeoutValue = WDOG_TIMEOUT_VALUE; NVIC_EnableIRQ(WDOG0_IRQn); for (temp = 0; temp < DELAY_TIME; temp++) { __NOP(); } /* Initialize WDOG32 with config */ WDOG32_Init(WDOG0, &config); while(1) { } 我附上了完整的 wdog32.c文件也在那个看门狗 IRQ 里我已经刷新了看门狗但是超时后它仍在RESET。 WDOG32 中断模式是否需要额外的初始化,在这种情况下,我只需要中断而不是 RESET 可能吗? i.MX8ULP Re: WDOG32 on ARBB mode of cortex-M33 after reset bootup issue on i.MX8ULP 你好,@Bio_TICFSL 看门狗 RESET 时你 有没有用 EVK 在 0.9V 下启动? Re: WDOG32 on ARBB mode of cortex-M33 after reset bootup issue on i.MX8ULP 你好,@Bio_TICFSL 我使用 EVK 测试了看门狗示例代码的默认高频率,启动正常。但是,当我将电压降至0.9V时(如我前面的代码片段所示),看门狗超时后,内核在启动过程中会卡住。 如果您已经在0.9V 的 EVK 上进行了测试。能否请您分享一下您在 EVK 上用于该测试的确切代码/配置? 谢谢、 Re: WDOG32 on ARBB mode of cortex-M33 after reset bootup issue on i.MX8ULP 您好, 代码没问题我只是看能降低电压的东西,因为 EVK 可以启动大约 9.0 伏特。 此致 Re: WDOG32 on ARBB mode of cortex-M33 after reset bootup issue on i.MX8ULP 你好,@Bio_TICFSL status = UPOWER_ChngRTDDomBias(DRIVE_MODE_UD); assert(status == 0); status = UPOWER_ChngPmicVoltage(PMIC_BUCK2, PMIC_VOLTAGE_0_9V); if (status == 0) { status = UPOWER_GetPmicVoltage(PMIC_BUCK2, &voltage); if (status == 0 && voltage == PMIC_VOLTAGE_0_9V) { // success } else { assert(false); } } else { assert(false); } 在调试过程中,我发现 当 PMIC 在 ARBB 模式下设置为 0.9V 时,看门狗 RESET 后,内核在启动期间会卡住。 如果我将 PMIC 电压增加到 1.0V 或 1.1V,即使在较低的频率下,RESET 和启动也能正常工作。 我需要将PMIC电压保持在 0.9V 以节省功耗,但是使用这种设置,系统在看门狗 RESET 后无法可靠地启动。 👉 在 0.9V 时可能导致此问题的原因,是否有任何建议的更改或变通办法来确保内核在该电压下 RESET 后能够正常启动? 如能得到任何帮助或指导,将不胜感激。 Re: WDOG32 on ARBB mode of cortex-M33 after reset bootup issue on i.MX8ULP 在 i.MX8ULP 的 Cortex-M33 上,我将 M33 内核配置为ARBB 模式运行。当监视程序超时时,它会尝试 RESET 内核。但是,在重启过程中,内核似乎卡住了,因为在RESET之前,代码已将M33切换到ARBB模式,该模式以较低的频率运行。 需要进行哪些修改才能使内核在 ARBB 模式下运行并且监视程序 RESET,它才能成功再次启动? Re: WDOG32 Interrupt Not Triggering Before Reset on i.MX8ULP 你好,@Bio_TICFSL 我能够在非中断模式下使用看门狗,它正在按预期重置系统。 但是,我需要看门狗中断模式,而且我不确定启用和处理中断的正确配置步骤。 你能否指导我如何在中断模式下启用 WDOG32,这样我的代码才能在 RESET 之前真正进入 WDOG32 IRQ 处理程序? Re: WDOG32 Interrupt Not Triggering Before Reset on i.MX8ULP 你好 是的,根据参考手册应该是可能的,请看第 9.1.7 章电源模式详情(实时功能域): 如你所见,在 ARBB 模式下,WDOG0 的所有必要元器件都可用,但也许 uPower 正在控制这个 WDOG 或整个 PBRIDGE0 的门控时钟。 请参阅《uPower 固件用户指南》。 此致
View full article
S32K3+RTD400+SPD 1.0.4链接文件 在使用 SPD104 时,我遇到了一些有关链接文件的问题。目前,我使用的是 iar 9.50.2 版。从 S32DS 转换为 iar 时生成的 icf 文件不包括与 SPD 相关的内容。请参阅 SPD104 手册中有关 eMcem_MemMap 的部分。在 icf 文件中增加了一些分段分配,但仍然遇到了一些问题。 最常遇到的错误是 错误[Lp005]:位置包含内容的混合部分(例如"rw 数据部分 .s32_saf_bss in eMcem.o符号:[eMcem_DriverState]") [适合放在 ROM 中] 和无内容的部分(例如"zi section .bss in abs.o symbols: [abs_output]") [适合放在 RAM 中] 。 例如,从代码来看,eMcem_MemMap.h 中有如下代码 #ifdef EMCEM_START_SEC_VAR_ZERO_INIT_UNSPECIFIED / * * * @file eMcem_MemMap.h * @violates @ref eMcem_MemMap_h_REF_1 */ #undef EMCEM_START_SEC_VAR_ZERO_INIT_UNSPECIFIED / * * * @file eMcem_MemMap.h * @violates @ref eMcem_MemMap_h_REF_1 */ #undef MEMMAP_ERROR #pragma ghs section bss=".s32_saf_bss" #endif 根据手册中的理解,此处的.s32_saf_bss 段应该是放置在 RAM 中的一段,而不是 eMcem.c 中的一段、有以下代码 #define EMCEM_START_SEC_VAR_ZERO_INIT_UNSPECIFIED /* @* 违反 @ref eMcem_c_REF_0410 */ /* @violates @ref eMcem_c_REF_2001 */ #include"eMcem_MemMap.h" / * * * @brief 驱动器状态。 * 在启动或运行期间,eMCEM 驱动程序从 EMCEM_S_UINIT 变为 EMCEM_S_INITIALIZED。 * 如果配置锁类型设置为 HARD_LOCK,驱动程序会锁定其配置 * 并将其状态更改为 EMCEM_S_LOCKED。 */ eMcem_StateType eMcem_DriverState = EMCEM_S_UNINIT; #define EMCEM_STOP_SEC_VAR_ZERO_INIT_UNSPECIFIED 在代码中,eMcem_DriverState 被明确赋值。尽管此处的赋值为 0,但根据规则,应将其放在数据部分中 我可以对编译器进行配置,强行纠正变量的段分配逻辑:将本应属于"no content" 的显式零初始化变量从.data 段(有内容)移至.bss 段(无内容),使其符合链接器脚本中的要求,即只有"no content 段" 才能放置在 RAM 区域,从而解决混合放置的冲突。但我认为这不是解决问题的根本办法 有没有更合理的办法解决这个问题? Re: S32K3+RTD400+SPD 1.0.4 link file 嗨,@Neo1096、 您能使用本主题中的链接器文件吗? https://community.nxp.com/t5/S32K/S32K3-SPD-DMA/m-p/2139734 BR,丹尼尔
View full article
RT I.MX 1172 Secure RMとアプリケーションノートが見つかりません 皆さんこんにちは 現在、I.MX RT 1172 をベースにしたプロジェクトを開発しています。 Secure リファレンス・マニュアルを参照したいのですが、RT1172 ページにソースが見つかりません。また、セキュア デバッグ アプリケーション ノートやその他のアプリケーションもどこにも見つかりません。 クラウドで、最新の RT1172 Secure RM と RT1172 関連のアプリケーションノートを入手する方法を教えてください。 Re: RT I.MX 1172 Secure RM and application note can not be found 更新された情報をありがとうございます。追加の許可を申請してみましたか? よろしくお願いいたします。 Re: RT I.MX 1172 Secure RM and application note can not be found 安全なファイルにアクセスする権利があるはずだと私は思います。NDAに署名しているため、RTもセキュアファイルページから確認され、付与されます。(下の画像を参照) したがって、このファイルをダウンロードする方法がわかりません。(NXP FAE にお問い合わせしても、この RT1172 の SRM が見つからない、入手できないとのことなので、RT1172 の SRM の入手方法を調べていただけますか? Re: RT I.MX 1172 Secure RM and application note can not be found こんにちは@Yiming2 さん 弊社の製品にご興味をお持ちいただき、またコミュニティをご利用いただき誠にありがとうございます。 安全なアクセス権がないと思われますので、次のリンクを確認してください。 https://www.nxp.com/support/support/secure-access-rights:SEC-ACCESS お役に立てれば幸いです。 まだ質問がある場合は、お気軽にご連絡ください。 素敵な一日をお過ごしください! よろしくお願いします メイリュー Re: RT I.MX 1172 Secure RM and application note can not be found これは SRM を見つけようとするページです。しかし、空があります。 https://www.nxp.com/products/i.MX-RT1170
View full article
示例项目中缺少 TCP/IP 协议栈 你好、 我正在使用 S32K1 系列板,更具体地说,是 S32K148。 我面临的问题是,连示例项目都无法编译。我使用 S32DS IDE 和"New -> Project from Example" 创建它,从中选择 lwip_FreeRTOS_S32K148。 该文档说,应该可以直接从那里版本它。但事实并非如此,因为有很多文件丢失了。打开 S32 配置工具并更新代码后,大部分问题都解决了。但是,lwip 堆栈文件夹仍然丢失,我在 “税务摊销收益” 中出现错误,指出 tcp/ip 堆栈不包含在工具链中。 正如堆栈发行说明中所述,我安装了 S32K1_S32M24X 实时驱动程序 AUTOSAR R21-11 版本 3.0.0还有 S32K1 FreeRTOS 10.5.1 版本 2.0.0 代码包,我使用的是 S32DS 3.6.3。 Re: Missing TCP/IP stack in example project 你好@sergioGeronimo、 这是由 RTD 3.0.0 之间的清单 SDK 版本不匹配造成的(版本 2.0.0)和 TCP/IP 3.0.0(版本 3.0.0)版本。 要解决这个问题,请按照以下步骤操作: 1.进入 S32DS 安装文件夹,或机器的相应路径。 C:\NXP\S32DS.3.6.1\S32DS\software\PlatformSDK_S32K1_S32M24 2.打开tcpip_itm_manifest.xml ,将版本从 3.0.0 改为 2.0.0 3.重新启动 S32DS 4.打开外设视图并运行"更新代码" 5. 再次运行 Build 顺祝商祺! 帕维尔
View full article
LPCScrypt 无法在 Windows 11 25H2 上运行 [LPCScrypt版本2.1.3_83] 为了启动和刷新旧的 LPC1857,我们使用 lpcsCrypt 来更新设备固件。 自 Windows 11 25H2 起,LPCScrypt 就坏了:在命令行(即 PowerShell)上调用它会导致"错误:来自 CreateProcess 的错误:系统无法找到指定的文件" Sysinternal 的 Process 监测 假设 LpcsCrypt 正在使用 " wmic 路径 win32_pnPentity 执行 wmi 查询,其中(像 '%usbser%' 这样的服务,像 '%lpc%' 这样的名称)get.exe "。 但是,wmic 已于 2016 年宣布弃用,并已于 25H2 起从 Windows 11 中 移除 (请参阅 Windows Management Instrumentation Command-line (WMIC) removal from Windows - Microsoft Support) 。 请求恩智浦开发团队解决:这个问题是否已被发现?如何让它在未来发挥作用? Re: LPCScrypt not running on Windows 11 25H2 你好,ErichStyger,你说得没错。从 Windows 10 升级后,wmic 将保留在 Windows 11 中。 但我不得不重新安装 Windows 11 系统,结果遇到了这个问题。 Re: LPCScrypt not running on Windows 11 25H2 感谢您提供的信息。 我的解决办法是在 Windows 11 中添加 wmic 支持,具体如下 以管理员身份打开系统设置,进入可选功能(... 更多功能...)并添加 wmic 或使用" DISM/Online /Add-Capability /CapabilityName:WMIC" [请参阅将 WMIC 安装到 Windows 11 计算机 - Microsoft Q& A] 。 此致, 马蒂亚斯 Re: LPCScrypt not running on Windows 11 25H2 可能是因为我已经从 Win10 升级到了 Win11,我的机器上仍然有 WMIC: Re: LPCScrypt not running on Windows 11 25H2 我最近从 Win10 升级到了 Win11 25H2。 但到目前为止,我还没有看到 LPCScrypt 出现问题(尚未)。使用 LinkServer v25.9.134 中代码包的那个(见下文) 用 LPCScrypt 更新我的 LPC-Link2 运行正常。 我不是 WMIC 方面的专家,但根据信息,它在 25H2 中消失了,chatGTP 建议将旧版本 Windows 中的 wmic.exe 和 wmic.exe.mui 复制到 25H2。 恩智浦已经意识到了这个问题,下一个LinkServer版本中可能会有更新的LPCsCrypt。 Re: LPCScrypt not running on Windows 11 25H2 你好@mathiasmonse 感谢您的提问。 如果 WMIC 支持被移除,可以尝试安装。或者使用早期的 Windows 版本,或者在 Linux 或 macOS 上运行 LPCScrypt。 BR 爱丽丝
View full article
S32K142チップのロックを解除する方法 S32K142 チップは、FSEC の SEC 位置を 11 に設定します。 /* フラッシュ設定 */ 。セクション.FlashConfig, "a" 。長さ0xFFFFFFFF /* 8バイトのバックドア比較キー */ 。長さ0xFFFFFFFF /* */ 。長さ0xFFFFFFFF /* 4バイトのプログラムフラッシュ保護バイト */ 。長さ0xFFFF7FFF /* FDPROT:FEPROT:FOPT:FSEC(0xFE = 保護されていない) */ PEMicroを使用してプログラムをチップに書き込んだ後、デバッグが不可能になりました。「デバイスはセキュリティ保護されています。消去してセキュリティ保護を解除しますか?」というメッセージが表示されます。「はい」をクリックすると再びメッセージが表示され、さらに「はい」をクリックするとPEとデバイス間の接続エラーが発生します。JLINKもチップに接続できません。 デバッグ構成で「フルチップ消去による緊急 Kinetis デバイス回復」をチェックしても、接続を確立できません。 Re: S32K142芯片如何解锁 こんにちは@minsky 使用方法に違いはありません。J-LINKで選択したプログラミングアルゴリズムによって異なります。例えば、J-FLAHSを使用している場合は、手順の中でプログラミングアルゴリズムを選択するように求められます。 この記事の次のセクションをお読みください。 5. S32K1xxシリーズMCUのフラッシュプログラミングに関する一般的な問題と注意事項 https://mp.weixin.qq.com/s?__biz=MzI0MDk0ODcxMw==&mid=2247485716&idx=1&sn=979631aa2385a4e3c7651ee75ee252b4&chksm=e9124d92de65c484f1cfec7de451958cfd5cf818c46a4f71a7d3dd8a522af229c5a18aad58ff&scene=21#wechat_redirect Re: S32K142芯片如何解锁 こんにちは。CSEcキーを有効にし、J-Linkでデバッグを無効にしてプロジェクトをコンパイルし、J-Linkを使ってプログラムしました。チップに接続してJ-Linkで内容を読み取ることはできます。この機能はPEでのみ有効でしょうか? Re: S32K142芯片如何解锁 こんにちは@minsky これらは2つの別々の問題です。バックドアの有効化/無効化に関わらず、CSECを有効にしてキーを割り当てている場合は、一括消去操作を実行する前にキーを消去する必要があります。つまり、ご質問に戻ると、まずCSECキーの消去をデバッグして正常に実行されることを確認し、その後、スタートアップファイルでFSECを設定することができます。ご説明いただいた内容から判断すると、この問題はCSECの不適切な削除に関連しているのではないかと推測します。 Re: S32K142芯片如何解锁 こんにちは。弊社製品ではCSEc機能を有効にする必要があります。デバッグを無効にした後でも、一括消去を実行できるようにバックドアを残すにはどうすればよいでしょうか? まずファイルをパーティション分割し、CSECキーを有効にしてから、 FSECのSEC位置を11に設定し、LIN経由で信号を送信してみました。LIN信号を受信した後、CSECキーを消去しましたが、それでも失敗しました。これは、HEXファイルを「FSECのSEC位置が11に設定されている」ところまで書き込んだ後、それ以上書き込めなくなったためでしょうか? Re: S32K142芯片如何解锁 こんにちは@minsky まず、設定に問題は見当たりません。問題は以下の状況が原因である可能性があります。 例えば、以前にチップ上でパーティション操作を実行し、CSEcキーを有効にしたことがありますか?その場合、デバッガを使用して直接一括消去操作を実行することはできません。一括消去を使用してMCUを操作する前に、CSEcコマンドを使用してCSEcキーを消去する必要があります。
View full article
i.MX Image Build Hello NXP team, I'm now building configurations for FRDM i.MX8MP and select MACHINE = "imx8mp-lpddr4-evk". But Yocto ultimately adopted the Olimex configuration and generated Olimex i.MX8MP EVB. Is this why? Do I need to rebuild the image? Thanks for the response. FRDM-IMX8MPLUS  Re: i.MX Image Build Hi @SQ1  No, i have not compile it. B.R Re: i.MX Image Build Do you have the compiled image or SDK file? Re: i.MX Image Build Hi @SQ1  The minimum hard disk space required is about 50 GB. It is recommended that at least 120 GB is provided, which is enough to compile all backends together. For building machine learning components, at least 250 GB is recommended. But, For imx-image-full image and SDK, i suggest you need to reserve at least 500GB disk space size. B.R Re: i.MX Image Build 5.4.0-150-generic. And I‘ve changed to in 'qstorageinfo_linux.cpp' to avoid using patch. I'm now doing 'bitbake imx-image-full' and 'bitbake meta-toolchain-qt6'. I'm worried that there's not enough disk space for that. Do you have compiled .wic .sh files? Re: i.MX Image Build Hi @SQ1  what is version do you use? i will try to reproduce your problem in my site. BTW, did you change any code? B.R Re: i.MX Image Build Hello, when running 'bitbake imx-image-full', I encountered a compilation error reporting that ‘ ’ was not found. This header file was unavailable in the SDK or Yocto cross-compilation environment. I attempted to generate a patch and substituted ' ' but also failed. Re: i.MX Image Build HI @SQ1  For imx8mp frdm board, you should run the MACHINE = "imx8mp-lpddr4-frdm". B.R
View full article
Design Studio v3.6.4 - 如何添加 S32 SDK RTM v4.0.2? 您好, 我是 Windows 11 上 S32 Design Studio 的新用户。 我成功安装了 S32 Design Studio v3.6.4,并通过帮助 → S32DS 扩展和更新添加了一些更新。但是,SDK 没有更新。因此,我手动下载并安装了 S32SDK_S32K1xx_RTM_4.0.2.exe (S32 SDK RTM v4.0.2)。 在 Design Studio 中创建了一个新的 S32 应用程序项目后,我发现 .mex文件丢失,代码配置器图标不可见。因此,我无法打开代码配置器来配置 GPIO 或其他外设。 我的目标是安装 RTM v4.0.2,以便使用 S32K144 的代码配置器生成简单的程序 C 代码(非 AUTOSAR 风格)。我不需要 RTD 更新。 我该如何解决这个问题? 谢谢! Re: Design Studio v3.6.4 - How to add S32 SDK RTM v4.0.2 ? 嗨,VaneB,感谢您的回复。我已卸载 DS v3.6.4,并安装了 DS v3.4。在帮助 - 扩展和更新中,我安装了 SDK RTM v4.0.3。 Re: Design Studio v3.6.4 - How to add S32 SDK RTM v4.0.2 ? 你好@TLHK S32SDK_S32K1xx_RTM_4.0.2 与 S32 Design Studio v3.6.4 不兼容。该 SDK 最初是作为 S32 Design Studio v3.4 的更新提供的。 要使用它,请下载 S32K1xx Service Pack 1 for S32DS v3.4,并通过 S32DS 扩展和更新将其安装为新的更新站点。 为确保功能正常,请务必下载并使用相应的集成开发环境版本。 BR、VaneB
View full article
使用 SJA1110 进行 IGMP 侦听 你好 我有一台 S32G,配备运行 bsp43 的 SJA1110,正在尝试启用 IGMP 侦听以动态路由多播流。 我发现了一些与 IGMP 有关的特殊问题,但不知道如何解决。 我已经确认,禁用 IGMP 侦听会导致组播数据包涌入交换机,因此 IGMP 侦听选项正在发挥作用...... 但不是预期的行为。 组播流量总是转发到枚举的最低活动端口 端口 4 传出的数据流,如果端口 3 上的节点通过 IGMP 请求流量,就会导致流量通过端口 1 传出(如果该链路处于活动状态),就像端口 1 请求流量一样。 如果端口 1 链路未激活,流量将被转发到端口 2(如果该链路激活)。 我可以用 mdb 手动路由流量,但我希望 IGMP 侦听能自动管理流量。 启用多播查询器不会导致成员资格查询从交换机端口传出。 DSA 网桥接口上有 IGMP 查询,但在连接到交换机的其他链路上看不到 IGMP 查询 我怀疑我可能需要安装一个 tc 规则来捕获来自网桥端口的 IGMP 查询并将其重定向到交换机端口? 我不清楚这是 Linux 配置的问题还是交换机硬件的限制。 谢谢您的建议。 Re: IGMP Snooping with SJA1110 恩智浦没有回复我的支持单,本帖也没有回复,因此我将在此记录我的发现。 在 BSP43 上。 当端口由网桥连接时,SJA1105 DSA 驱动程序似乎不支持 SJA1110 的 IGMP 侦听。 在驱动程序设置期间,sja1110 端口设置为独立组网 (SA) 模式,其中 dsa `tag_8021q` 在交换机的每个端口上安装不同的 vlan 查询规则。vlan-lookup 规则使用`tag_8021q`以太类型`0xDADB`和包含端口 ID 等元数据的 vlan标记入口数据包。 这就为主机处理器创建了一种机制,使其能够知道数据包是从哪个端口接收的,并在特定端口上输出数据包。 当端口在网桥中链接时,"tag_8021q "会用与网桥相关联的单一规则取代每个端口的 vlan-lookup规则。 主机处理器现在无法分辨数据包来自哪个端口,也就无法将数据包输出到特定端口。 我认为使用 `vlan-filtering` 也会破坏此处所述的机制(sja1110 显然属于第二种类型,因为它调用了 `dsa_tag_8021q_bridge_join`)。 主机处理器创建的 IGMP 查询器数据包仍然标记为每个端口的 vlan,但 vlan-lookup 只包含网桥的规则,因此 IGMP 查询器数据包会被发送到空白处。 它们被扔进了垃圾桶。 它们不会输出交换机。 可以通过修改 这一行来 改变这种行为 : if (!dp->bridge) { tx_vid = dsa_tag_8021q_standalone_vid(dp); } else { tx_vid = dsa_tag_8021q_bridge_vid(dp->bridge->num); } 现在,IGMP 查询器信息将从交换机输出,但仅此还不能启用 IGMP 侦听,因为主机处理器不知道 IGMP 加入/离开是在哪个端口上接收的,因为 "tag_8021q "仍然是全桥范围的,而不是端口特定的。 交换机必须捕获数据包并应用本地 sja1110 标记(ethertype 0xdadc),才能启用 IGMP 侦听。 交换机可通过两个 `mac_fltres` 捕捉数据包并添加标记,但驱动程序已将其用于 PTP 和 STP。 用户空间实用程序 `tc` 可以配置为捕获数据包,但这是通过虚拟链接实现的,虚拟链接不会将标记添加到捕获的数据包中。 最后两个选项是使用 l2- 查找或深度数据包检查。 l2-lookup 可用于通过设置陷阱位来捕获目标 mac 地址 01:00:5E:00:00:16,从而启用 IGMPv3。 这也会匹配任何以 *.0.0.22 结尾的组播 IP 组,因此不是一个好的解决方案。 使用网桥时,深度数据包检测似乎是启用 IGMP 侦听的唯一方法。 无论使用何种捕获机制,该提交都是必要的,否则 sja1110 标记将被 `tag_8021q` 覆盖,而 `tag_8021q` 也只代表桥接器。 Re: IGMP Snooping with SJA1110 请注意,上面建议的解决方案将为网桥上的每个 DSA 端口发送 IGMP 查询... 重新安装 vlan-lookup 规则从正确的端口输出数据包也是一种解决方案,但我认为端口 0 会与网桥安装的 vlan-lookup 发生冲突,因此也不是一个好的解决方案。 发送过多的 IGMP 查询除了会增加流量外,似乎没有任何副作用。
View full article
IFC GPCM 正常模式连续交易之间的间隙 HI 我们的 T1024 处理器在 GPCM(正常)模式下使用 IFC 与 FPGA 通信。 每个单独的事务都能按预期运行,但当我们尝试背靠背执行事务时,我们会发现芯片选择信号在每个事务之间处于非激活状态,写入需要 4 个外部 IFC 时钟,读取需要 10 个外部 IFC 时钟,如此长的间隔大大降低了我们在该接口上可以实现的数据传输速率。 我们使用的时钟分频值为 3(IFC_CCR[CLKDIV]="0010" ),端口大小为 16 位(IFC_CSPRn[PS]="10" ),并使用定时事务而非确认模式(IFC_CSORn[RGETA]=IFC_CSORn[WGETA]='0',IFCTA_B 绑定为非激活状态)。 为了执行连续交易,我们使用 DMA,但是如果我们只执行 32 字节的读取或写入(禁用突发模式),我们会看到完全相同的问题——硬件将其转换为两个 16 位操作,但两者之间的差距相同。 如果我们使用突发模式,交易之间也会出现相同的间隔(当然,每笔突发交易之间没有间隔!) 顺便说一句,在 P1025 处理器上,处于 GPCM 模式的 " 增强型本地总线控制器 "(它的可配置时序不如 T1024 中的 IFC)出现同样的问题。 我的问题是:有什么办法可以缩短芯片选择输出在两个事务之间的非活动时间(理想情况下只需一个 IFC 输出时钟)? 我想,如果有人能解释一下为什么我们的交易之间会出现这些间隙,或者至少有人能确认一下他们是否看到了同样的行为,这可能会有所帮助。 如能得到任何帮助/启发,将不胜感激! 谢谢你,比尔。 QorIQ T1 设备 Re: IFC GPCM normal mode gap between successive transactions 感谢您确认 CS 在读取交易后的最短非活动时间。 我们使用突发模式来提高性能,效果不错。固定时间对我们来说很方便,因此我们不必使用 IFCTA_B。 Re: IFC GPCM normal mode gap between successive transactions 在读取交易的情况下,当 TRHZ = 000 时,读取交易后 CS(芯片选择)的最短非激活时间固定为 20 个 IP 时钟。为了进一步优化,我们建议使用 IFCTA_B 信号。 对于突发模式下的写入事务,在突发期间芯片选择 (CS) 信号是否处于失效状态?还请客户共享写入操作期间正在编程的寄存器的波形和转储。 Re: IFC GPCM normal mode gap between successive transactions 感谢您的回复 yipingwang,即使您真正说的是"阅读手册" ! 顺便说一句,我们在 GPCM 模式下使用 IFCTA_B 没有问题——我们使用的 IFC 既配置为确认模式,又配置为中止模式(尽管在中止模式下我们从不触发信号中止,因此我们将 IFCTA_B 设置为非活动状态),而且两者都按预期工作。 我们了解 TRAD 和 TACO 等字段,这些字段会影响交易,但它们只影响交易内部的时间,而不是交易之间的时间。 但是根据你的回应,我们再次在参考手册中查看了任何可能影响交易间隙的寄存器——我们确实发现了两个寄存器,均与 "总线 turn-around " 有关,因此只有在阅读后才会影响差距。 它们是一些实验表明,这些参数确实会对连续读取事务之间的 CS 非活动时间产生影响。 我们之前没有仔细研究这些设置,因为对其效果的描述(见第 23.4.5"数据缓冲器控制 (BCTL)" 节)似乎假定 BCTL 信号已启用,并将其描述为与闪存模式相关,而我们通过将 IFC_CSORn [BCTLD] 设置为 "1 "禁用了 BCTL 信号,而且我们使用的当然是 GPCM 模式而非闪存模式。 但是令我们失望的是,参考手册指出 IFC_csorn [THRZ] 可配置的最小延迟为 " 20 IP 时钟 "(TRHZ 字段设置为 " 000 ")。由于我们使用了 3 的除法比,即 6.66 个 IFC 输出时钟,这确实与连续读取之间 CS 非活动时间比连续写入之间 CS 非活动时间的增加相吻合。我们尝试将 TRHZ 字段值分别设置为"001" 和"010" 40& 60 个 IP 时钟,结果发现连续读取事务之间的间隙确实分别增加了约 7& 14 个 IFC 输出时钟,因此我们确实知道该字段在起作用。 IFC_GCR [TBCTL_TRN_TIME] 也会影响连续读取事务之间的间隙,但这对我们来说不是问题,因为我们可以将其设置为零。 我愿意相信,写入事务之间的间隙可能是固定的,我们无法从任何寄存器中控制它(但如果我错了,请告诉我)。 所以,我的问题变得很简单: IFC_CSORn [TRHZ] 字段值为"000" ,读取交易后的 CS 非活动时间是否真的至少为 20 个 IFC IP 时钟,或者我们是否有办法选择更短的时间? 我期待着您的答复,不过我更希望得到的答案是:"不,您只能使用至少 20 个 IFC IP 时钟" ,我们只能忍受通过该接口读取数据时吞吐量大大降低的情况。 我们可以使用突发模式稍微缓解这种情况,但我们认为这是与较旧 P 系列处理器接口相比性能的显著下降。 无论如何,感谢您的支持! 干杯,比尔 Re: IFC GPCM normal mode gap between successive transactions 首先,客户需要在 GPCM 模式下启用 IFCTA_B。 例如,客户可以尝试设置 IFC_FTIM1_CSn_GPCM 寄存器的 TRAD 和 TACO 字段,同样,也可以调整其他定时寄存器以优化性能。 还请客户参阅第 23.7.1.1 节,"正常 GPCM 程序运行" 。例如,图 23-49,"正常 GPCM 程序运行 - 确认模式" 说明了芯片选择保持激活状态的多数据交易情况。使用该模式时,请确保对所有相关寄存器进行相应配置,以实现所需的性能。
View full article
emmc波形异常,导致无法写入 因为英文不好,所以只能中文来描述问题。 本人制作了imx6q的核心板,使用的是emmc5.1的芯片,VCCQ和VCC都是3.3V。在实际的测试中发现,只有当imx6q的emmc时钟是13M,系统才能正常启动、读写。如果大于13M,则读写的时候会提示错误。 首先我们排除内核的问题,我们有一块一模一样的6Q核心板,emmc也是同一型号的,但是是其他公司制作的,我们的内核能够正常运行。 回到我们自己制作的核心板,用高速示波器测试发现,在启动阶段mmc时钟400K的电平是3.3V,但是随着初始化结束,mmc的频率提高到13M或者更高,则3.3v会降低到2.0V,从测试结果来看,频率越快,电压降低的幅度越大。以下是我们的原理图,我们更换过clk和cmd上的电阻,但是无效。 所以我们想知道,电压幅值降低是不是导致mmc无法正常工作的原因?是什么导致了mmc引脚的电压幅值从3.3V降低到2,0v?如果需要其他的额外信息来进行判断,我可以提供图片,希望技术支持和论坛大佬,能够提提意见,非常感谢!  i.MX6Quad 回复: emmc波形异常,导致无法写入 你好,你这个问题解决了吗, 我这边遇到类似的问题,VCCQ都是接的3.03v 有两块不同的硬件板子,同样的固件在一块板子A上正常存储数据,在另一个板子B上存储不稳定,长期运行数据存储异常,底层读写报错。 Re: emmc波形异常,导致无法写入 那除了layout ,pcb的板材,制程。没有其他原因了。 Re: emmc波形异常,导致无法写入 1.我们是参考其他的板子,emmc型号一模一样的,原理图一模一样,其他板子用同样的代码能够正常运行. 2.有考虑过vccq的问题,我们尝试将3.3V的vccq调整到1.8V,emmc的时钟可以到达40M,读写都是没问题,但是不能到达52M;但是示波器看波形也不太好,测量的时候非常容易受干扰.看手册,vccq关系到emmc的io电压,emmc从3.3V降到2V,这个2v对于1.8V来说,就是有效电压1.2V对于3.3v来说,其实是0电平. Re: emmc波形异常,导致无法写入 1. 可以去问一下emmc 厂家dual voltage (1.8v/3.3v) 那个VCCQ 在3.3v 时候要不要接。或者仔细看一下emmc的手册。  2. 如果可以rework 板子。 吧VCCQ 改成1.8v 3. 波形量一下 不过意义不大。 因为你说 高速时候3.3v 降到了2.0v。波形应该是不符合要求的。 所以#1 问一下emmc 厂家,3.3v的时候的供电。  Re: emmc波形异常,导致无法写入 好的,非常感谢您的建议! 1.我们试过用4bit的方式来读写emmc,如果emmc时钟大于13M,仍然会提示错误. 2.可以确定,我们pcb布线的时候数据线都是等长的;且制板的时候已经向板厂交代阻抗匹配相关信息.但是具体的阻抗参数,我们没有专用的仪器可以验证. 3.我们调整过原理图上data,cmd,clk上的电阻,不管是调大或者调小,但是都无效. Re: emmc波形异常,导致无法写入 嗨,@yacheng_zhang、 不应手动更改或硬编码 eMMC 时钟。 可以使用各种设备树绑定来指定设备树中支持的速度模式。 https://github.com/nxp-imx/linux-imx/blob/lf-6.1.y/Documentation/devicetree/bindings/mmc/mmc-controller.yaml 谢谢& Regards, Ritesh M Patel Re: emmc波形异常,导致无法写入 1. 如前面的说的。 不管高速低俗1.8v 都是正确的电压。而且不是不要高速用3.3v。当然可以省一个电压。  2. 看log的error 要详细看一下layout的等长± 50 mils。 和50ohm 阻抗匹配。 3. 要降频也不用去代码。只要在device tree 里面写上 max-frequency = <26000000>; 硬改代码会带来不必要的,和连自己都不知道的副作用。  4. 可以试试4bit mode,但是还是要先检查一下等长和阻抗匹配。  5. 可以调整一下 clock 上的串阻, 如果data上有也可以调整。  Re: emmc波形异常,导致无法写入 你好,非常感谢你的回答! 1.我们的核心版参考了其他厂家的硬件设计,vccq使用3.3V,因为我们不需要高速模式. 2.查看设备树配置如下,已经默认添加no-1-8-v,具体参数如下 3.通过查看 /sys/kernel/debug/mmc3/ios,具体如下,可以看到协商成ddr52,这是我想要的模式;时钟之所以是40M,是我修改内核代码,手动改成40M.   请问我的参数,哪里可能存在不正常的地方?谢谢 Re: emmc波形异常,导致无法写入 硬件设计: 1. 这个不是问题, 但是指出来一下。      VCCQ 没有必要用3.3v, 1.8v 可以支持HS200,HS400 和所有的legacy speed。      也就是说emmc 的IO 用1.8v总是对的。       详见EMMC 的JEDEC spec. bus speed modes 章节        2. 目前的设计最有可能的是,协商成了高速模式。 但是IO 供电是3.3v。 emmc 做了切换,所以会量到一个2.0 的间于3.3v 和1.8v的中间电平。但是你们没有提供有用信息。可以cat /sys/kernel/debug/mmc3/ios 拿到协商后的信息。看工作在什么模式下面。  目前可以在软件上fix 一下模式。 device tree 里面加一下no-1-8-v 。只用legacy speed,i.MX6 也支持到DDR52.  或者 只作为测试 uboot 的bootargs 加  sdhci.debug_quirks2=0x4 的 no 1v8 的 quirks    Re: emmc波形异常,导致无法写入 是的,eMMC 初始化成功,我可以看到 emmc 信息。 复制文件时,emmc 提示以下错误 问题的原因可能是什么?这是否与 PCB 有关?我们可以提供 PCB 文件。 谢谢 Re: emmc波形异常,导致无法写入 嗨,@yacheng_zhang、 希望你一切都好。 电压下降发生后,eMMC 初始化是否成功完成? 当 eMMC 故障频率超过 13M 时,能否共享日志? 谢谢& Regards, Ritesh M Patel
View full article