Multi Source Translation Content

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

Multi Source Translation Content

Discussions

Sort by:
「セキュアボックス版」とは何ですか? AN12413仕様のGetVersion-APDUでは、「VersionInfo」に2バイトの「セキュアボックスバージョン」が定義されています。それが一体何なのか、明確な定義はない。 なぜこの情報が必要なのですか? 私は現在、通知機関との製品の認証手続きの最中です。この製品は特定のセキュリティ機能のためにSE050を使用しており、SE050にはファームウェアも含まれているため、これは認証の一部です。 SE050 Re: What is "Secure Box version"? こんにちは@Kan_Liさん 迅速なご返信ありがとうございます。感謝いたします。 すべての SE050A2 が同じかどうか確認できますか? OEF ID、プラットフォームビルドID、OSパッチレベル、アプレットのバージョン、機能設定。 そして、新たなロットを注文した場合でも、この点は変わりません。 この話題について知っておくべきことはこれだけです。 敬具 ダーク・ヤン Re: What is "Secure Box version"? こんにちは、 @djdirkj さん。 SE050A2すべてのチップが文字通り同一であることを証明しようとしないでください。OEF ID、プラットフォームビルドID、OSパッチレベル、アプレットバージョン、機能構成が同じであることを証明しつつ、トレーサビリティのために独自のシリアル/バッチデータを記録してください。 すてきな一日を、 カン ------------------------------------------------------------------------------- 注記: この投稿があなたの質問への回答になっている場合は、「正解としてマーク」ボタンをクリックしてください。ありがとうございます! - 前回の投稿から7週間Threadをフォローしており、その後の返信は無視しています もし後で関連する質問があれば、新しいThreadを開き、閉じたThreadを参照してください。 ------------------------------------------------------------------------------- Re: What is "Secure Box version"? こんにちは@Kan_Liさん ご回答ありがとうございます! 質問を言い換えてみましょう。 弊社のEMS(電子機器受託製造業者)には、SE050A2部品が約500個入ったリールがあります。これらのSE050で500個の製品を生産した場合、すべてのSE050がまったく同じかどうかどうやって確信できますか? SE050に違いがある場合、証明書に適合しておらず、証明書の修正が必要です。これが望ましい状況ではないことをご理解いただければ幸いです。 Re: What is "Secure Box version"? こんにちは、 @djdirkj さん。 Secure Box版はSE050ソフトウェア/構成証拠の一部として記録してください。ただし、NXPが管理された定義を提供しない限り、独立して解釈しようとしないでください。認証の場合は完全なものが必要です  GetVersion  /  se05x_GetInfo  出力はより強力なトレーサビリティのアーティファクトです。 すてきな一日を、 カン ------------------------------------------------------------------------------- 注記: この投稿があなたの質問への回答になっている場合は、「正解としてマーク」ボタンをクリックしてください。ありがとうございます! - 前回の投稿から7週間Threadをフォローしており、その後の返信は無視しています もし後で関連する質問があれば、新しいThreadを開き、閉じたThreadを参照してください。 ------------------------------------------------------------------------------- Re: What is "Secure Box version"? こんにちは、 @djdirkj さん。 はい、SE050Aではこれらのパラメータはすべて静的です。 すてきな一日を、 カン ------------------------------------------------------------------------------- 注記: この投稿があなたの質問への回答になっている場合は、「正解としてマーク」ボタンをクリックしてください。ありがとうございます! - 前回の投稿から7週間Threadをフォローしており、その後の返信は無視しています もし後で関連する質問があれば、新しいThreadを開き、閉じたThreadを参照してください。 -------------------------------------------------------------------------------
View full article
如何将 S32 Design Studio 许可证转移/重新注册到我自己的 NXP 帐户 你好, 尊敬的技术支持团队: 这是第二条信息 (第一页: https ://community.nxp.com/t5/MPC5xxx/Request-for-Software-License-Extension-Due-to-Expiration/mp/2396968#M28490) 我的办公电脑是我从前任经理那里继承来的,S32 Design Studio 仍然是在他的 NXP 账户下激活的,而不是我的。因此,我电脑上安装的许可证似乎已经过期了。 我已经确认我的许可证有效期至 2028 年,因此我想将这台电脑上的 S32DS 切换到我的 NXP 帐户和许可证,而不是前任所有者的帐户和许可证。 请问正确的操作步骤是什么?具体来说: 1. 是否有办法停用或解除与先前帐户关联的现有激活状态? 2. 我能否使用我自己的帐户凭据重新激活 S32DS,还是需要完全卸载并重新安装? 感谢您的帮助。 顺祝商祺! Re: How to transfer/re-register an S32 Design Studio license to my own NXP account 你好, 您可以使用之前用户的旧激活码。激活码与特定账户无关。 您可以使用旧代码重新激活现有安装。
View full article
How to transfer/re-register an S32 Design Studio license to my own NXP account Hello, Dear Support Team, That is Second Message  ( First : https://community.nxp.com/t5/MPC5xxx/Request-for-Software-License-Extension-Due-to-Expiration/m-p/2396968#M28490 ) I inherited my work PC from my former manager, and S32 Design Studio is still activated under his NXP account, not mine. Because of this, the installed license appears to have expired on my machine. I have confirmed that my own license is valid until 2028, so I would like to switch S32DS on this PC over to my NXP account and license instead of the previous owner's. Could you let me know the correct procedure for this? Specifically: 1. Is there a way to deactivate or release the existing activation tied to the previous account? 2. Can I simply re-activate S32DS with my own account credentials, or is a full uninstall and clean reinstall required? Thank you for your help. Best regards, Re: How to transfer/re-register an S32 Design Studio license to my own NXP account Hi,  you can use the old activation code from previous user. The activation code is not connected to specific account.  You can re-activate existing installation with the old code. 
View full article
S32K OTA Rollback 各位好,我想咨询一下,关于S32K3系列的HSE ABSwap OTA回滚机制。我了解到的是如果A区为稳定区,将A区切换到B区,B区如果出现Hardfault或看门狗超时等错误问题,OTA的错误计数器会累减,当错误计数器为0时,程序会认定B区为不稳定区从而切换片区回到A区。请问这个机制是正确的吗?如果不是,那么OTA的回滚机制是怎样的呢? Re: S32K OTA Rollback 嗨@RootOf3 对于 S32K3 HSE AB Swap,回滚机制不基于 HSE 监控运行时故障,例如 HardFaults 或看门狗 RESET。 HSE 本身并不会根据应用程序运行时行为来判断新激活的应用程序是否稳定。AB 交换执行完毕后,新映像将变为活动状态,通常由用户引导加载程序/应用程序决定更新是否成功或是否应请求回滚。 安全启动也可以用作恢复策略的一部分。如果活动映像的身份验证失败,则可以根据配置的启动流程和客户的软件设计,将启动流程设计为执行备用映像或专用的恢复映像。一旦有效的恢复映像或备用映像正在运行,软件可以在需要时请求另一个 AB 交换。 综上所述,HSE 提供了安全启动、映像认证和 AB 交换的机制,但实际的回滚策略(包括如何检测运行时故障以及系统何时切换回之前的映像)是由用户引导加载程序/应用程序实现的。 此致, Lukas
View full article
S32K OTA Rollback Hello everyone, I'd like to inquire about the HSE ABSwap OTA rollback mechanism for the S32K3 series. My understanding is that if partition A is a stable partition, switching from partition A to partition B will cause errors such as Hardfault or watchdog timeout to occur in partition B. The OTA error counter will decrease, and when the error counter reaches 0, the program will consider partition B an unstable partition and switch back to partition A. Is this mechanism correct? If not, what is the OTA rollback mechanism? Re: S32K OTA Rollback Hi @RootOf3  For S32K3 HSE AB Swap, the rollback mechanism is not based on HSE monitoring runtime failures such as HardFaults or watchdog resets. HSE itself does not determine whether the newly activated application is stable based on the application runtime behavior. After the AB Swap is performed, the new image becomes active, and it is typically the responsibility of the user bootloader/application to decide whether the update was successful or whether a rollback should be requested. Secure Boot can also be used as part of the recovery strategy. If authentication of the active image fails, the boot flow can be designed to execute an alternate image or a dedicated recovery image, depending on the configured boot flow and the customer’s software design. Once a valid recovery or alternate image is running, the software can request another AB Swap if needed. So, in summary, HSE provides the mechanisms for Secure Boot, image authentication, and AB Swap, but the actual rollback policy, including how runtime failures are detected and when the system switches back to the previous image, is implemented by the user bootloader/application. Regards, Lukas
View full article
NXPのデモイメージを使ってもfrdm-imx93が起動しない SDカードからfrdm-imx93を起動しようとしています。eMMCからでも問題なく動作します。 NXPのサイトリンクから ZIP Rev 4.0 Jun 25, 2025 2.45 MB LF_v6.6.36-2.1.0_images_FRDM_4.0_IMX93をダウンロードしました。その後、以下の手順を実行しました。 zstd -d imx-image-full-imx93frdm.rootfs.wic.zst sudo dd if=imx-image-full-imx93frdm.rootfs.wic of=/dev/sdc bs=1M status=progress && sync sudo dd if=imx-boot-imx93frdm-sd.bin-flash_singleboot of=/dev/sdc bs=1k seek=32 status=progress それからSDカードをスロットに入れて、SW1[3:0]=0011に設定してから起動を試みました。 しかし、ブートはここから先へ進みません。 U-Boot SPL 2024.04+gde16f4f1722+p0(2024年9月2日 - 10:44:35 +0000) SOC: 0xa1009300 LC: 0x2040010 PMIC: PCA9451A PMIC: オーバードライブ電圧モード DDR: 3733MTS DDR: 3733MTS M33 準備完了 誰か至急助けてください… よろしくお願いいたします! Re: frdm-imx93 not booting even with demo images from NXP シリアルポートでも同じ現象が見られます。複数のケーブルで試してみました。 Re: frdm-imx93 not booting even with demo images from NXP こんにちは、 この手順に従っている際に、ボードのシリアルポートにどのようなエラーが表示されますか? 高速起動モードに移行できない場合は、別のUSBケーブルをお試しください。 よろしくお願いいたします。 Re: frdm-imx93 not booting even with demo images from NXP 少し先まで進んだが、まだOSには到達していない。問題はブートドライブの内容と、シングルブートバイナリ自体にあると思います。 これについても、ボードに詳しい人に手伝ってもらいたい。 Re: frdm-imx93 not booting even with demo images from NXP こんにちは、私も同じ問題を抱えています。WindowsとLinuxの両方で、また異なるLinuxディストリビューションで、様々なイメージを試してみました。EMMCとSDカードの両方が動作していません 結局、原因は分かりましたか? Re: frdm-imx93 not booting even with demo images from NXP Hello 私がやったことはこうです。 root@debian:/mnt/host/LF_v6.6.36-2.1.0_images_FRDM_3.0_i.MX93# uuu -V -b sd_all imx-boot-imx93frdm-sd.bin-flash_singlebootimx-image-full-imx93frdm.rootfs.wic.zst NXP IMXチップ用uuu(Universal Update Utility) -- libuuu_1.5.243-5-g124d086   設定ファイルに含める: PctlチップビデオPID Bcdバージョンシリアル番号 ================================================== SDPS: MX8QXP 0x1fc9 0x012f [0x0002..0xffff] SDPS: MX8QM 0x1fc9 0x0129 [0x0002..0xffff] SDPS: MX8DXL 0x1fc9 0x0147 SDPS: MX28 0x15a2 0x004f SDPS: MX815 0x1fc9 0x013e SDPS: MX865 0x1fc9 0x0146 SDPS: MX8ULP 0x1fc9 0x014a SDPS: MX8ULP 0x1fc9 0x014b SDPS: MX93 0x1fc9 0x014e SDPS: MX91 0x1fc9 0x0159 SDPS: MX95 0x1fc9 0x015d SDPS: MX95 0x1fc9 0x015c SDPS: MX943 0x1fc9 0x0027 SDPS: MX952 0x1fc9 0x0028 SDP: MX7D 0x15a2 0x0076 SDP: MX6Q 0x15a2 0x0054 SDP: MX6D 0x15a2 0x0061 SDP: MX6SL 0x15a2 0x0063 SDP: MX6SX 0x15a2 0x0071 SDP: MX6UL 0x15a2 0x007d SDP: MX6ULL 0x15a2 0x0080 SDP: MX6SLL 0x1fc9 0x0128 SDP: MX7ULP 0x1fc9 0x0126 SDP: MXRT106X 0x1fc9 0x0135 SDP: MX8MM 0x1fc9 0x0134 SDP: MX8MQ 0x1fc9 0x012b SDPU: SPL 0x0525 0xb4a4 [0x0000..0x04ff] SDPV: SPL1 0x0525 0xb4a4 [0x0500..0x9998] SDPV: SPL1 0x1fc9 0x0151 [0x0500..0x9998] SDPU: SPL 0x0525 0xb4a4 [0x9999..0x9999] SDPU: SPL 0x3016 0x1001 [0x0000..0x04ff] SDPV: SPL1 0x3016 0x1001 [0x0500..0x9998] FBK: 0x066f 0x9afe FBK: 0x066f 0x9bff FBK: 0x1fc9 0x0153 FB: 0x0525 0xa4a5 FB: 0x18d1 0x0d02 FB: 0x3016 0x0001 FB: 0x1fc9 0x0152 FB: 0x0483 0x0afb FB: 0x1d6b 0x0104   組み込みスクリプトを実行します:   uuu_version 1.4.149   # @_flash.bin| wicイメージから抽出できるブートローダー # @_image [_flash.bin]| wicイメージをemmcに書き込む。     # このコマンドはi.MX6/7 i.MX8MM、i.MX8MQで実行されます SDP: boot -f imx-boot-imx93frdm-sd.bin-flash_singleboot-scanlimited 0x800000   # このコマンドはROMがストリームモードに対応しているときに実行されます # i.MX8QXP、i.MX8QM SDPS: boot -scanterm -f imx-boot-imx93frdm-sd.bin-flash_singleboot-scanlimited 0x800000   # これらのコマンドはSPLを使用するときに実行され、SPLがない場合はスキップされます # SDPUは非推奨になります。SDPUの代わりにSDPVを使用してください # ヤミン・アメックス SDPU: 遅延 1000 SDPU: write -f imx-boot-imx93frdm-sd.bin-flash_singleboot-オフセット 0x57c00 -スキャン制限 0x800000 SDPU: ジャンプ -scanlimited 0x800000 # }   # これらのコマンドはSPLを使用するときに実行され、SPLがない場合はスキップされます # if (SPL が SDPV をサポートしている場合) # ヤミン・アメックス SDPV: 遅延 1000 SDPV: write -f imx-boot-imx93frdm-sd.bin-flash_singleboot-skipspl -scanterm -scanlimited 0x800000 SDPV: ジャンプ -scanlimited 0x800000 # }   FB: ucmd setenv fastboot_dev mmc FB: ucmd setenv mmcdev ${sd_dev} FB: ucmd mmc dev ${sd_dev} FB: flash -raw2sparse all imx-image-full-imx93frdm.rootfs.wic.zst/* FB: flash -scanterm -scanlimited 0x800000 bootloader imx-boot-imx93frdm-sd.bin-flash_singleboot FB: 完了     既知のUSBデバイスが表示されるまでお待ちください... 新しいUSBデバイスが1:2で接続されました。 1:2->開始コマンド:SDPS: boot -scanterm -f imx-boot-imx93frdm-sd.bin-flash_singleboot-scanlimited 0x800000 1:2->HID(W)エラー: LIBUSB_ERROR_TIMEOUT (-7)(20.02秒)     よろしくお願いいたします。 Re: frdm-imx93 not booting even with demo images from NXP こんにちは、 どのコマンドを使用しましたか? 再現できません。 よろしくお願いいたします。 Re: frdm-imx93 not booting even with demo images from NXP こんにちは!はい、そうしました。WindowsとLinuxの両方で必ずタイムアウトが発生し、Linuxではセグメンテーション違反が発生します。 Re: frdm-imx93 not booting even with demo images from NXP こんにちは、 UUUを使ってフラッシュしようとしましたか? よろしくお願いいたします。 Re: frdm-imx93 not booting even with demo images from NXP こんにちは、 シリアルポートには何が見えますか?高速起動モードでインターセプトできますか? 別のBSPやバージョンで試してみましたか?私の環境では、まだその問題を再現できていません。 よろしくお願いいたします。 Re: frdm-imx93 not booting even with demo images from NXP こんにちは、 シリアルポートからはSPL出力しか確認できません。U-Bootが完全に起動しないため、U-Bootプロンプトやfastbootモードに入ることができません。 公式Rev 4.0イメージを使用したシリアル出力: U-Boot SPL 2024.04+gde16f4f1722+p0(2024年9月2日 10:44:35 +0000) SOC: 0xa1009300 LC: 0x2040010 PMIC: PCA9451A PMIC: オーバードライブ電圧モード DDR: 3733MTS DDR: 3733MTS M33準備OK それ以降の出力はありません。 また、再構築したFlexbuild/U-Boot 2025.04ブートイメージをSDカードの32 KiBオフセットに書き込んでテストしました。ボードは新しいSPLを実行しますが、同じ箇所で停止します。 U-Boot SPL 2025.04 (2026年4月26日 16:21:54 +0000) PMIC: PCA9451A PMIC: オーバードライブ電圧モード DDR: 3733MTS DDR: 3733MTS M33準備OK そのため、U-Bootが完全に起動しないので、fastbootモードに入ることができません。 私は以下のBSP/イメージをテストしました。 1. 公式FRDM-i.MX93 Rev 4.0イメージ: LF_v6.6.36-2.1.0_images_FRDM_4.0_IMX93 2. MACHINE=imx93frdm 用の私自身の Yocto ビルド 3. Flexbuild/U-Boot 2025.04 SPL/コンテナを再構築 公式のRev 4.0と私のYoctoビルドでは、このブートイメージハッシュを使用しています。 7aba6102e5ec64add632cd6667e77fa3f6886fd72c314e4c01f2964c0fc56a5f imx-boot-imx93frdm-sd.bin-flash_singleboot UUUもフラッシュ前に失敗する。ボードが検出されました: MX93 SDPS 0x1FC9:0x014E しかしSDPS:起動がタイムアウトします: 開始コマンド:SDPS: boot -scanterm -f imx-boot-imx93frdm-sd.bin-flash_singleboot-scanlimited 0x800000 HID(W)エラー:LIBUSB_ERROR_TIMEOUT これはLinuxとWindowsの両方で発生し、別のノートPCを試しても同じ結果になります。 SDカード起動モードの選択についても確認しました。SDカード起動モードを選択し、SDカードを挿入しない場合、シリアル出力は発生しません。SDカードを挿入すると、SPLは起動し、M33準備完了後に停止します。 そのため、現状ではボードはU-Boot/fastbootに到達しません。 Re: frdm-imx93 not booting even with demo images from NXP 私も同じ問題に直面しています。i.mx93 frdm ポータルで入手可能な 4 つの改訂版すべてを試しましたが、 UUUはいつも投げる HID(W)エラー: LIBUSB_ERROR_TIMEOUT (-7)(20.02秒) eMMCへの書き込みだけでなく、SDカードへの書き込みにも対応しています。 Re: frdm-imx93 not booting even with demo images from NXP ようやく何とか動くようになった。 仕様通り32GBのSDカードを使用しました。 NXP Yoctoリンクからコードをクローンし、ドキュメントに記載されているとおりにコードをビルドしてフラッシュしました。 カードに書き込んで、上記の手順に従って起動してください。これは私には効果がありました。以前の試みで使用したubootバイナリがEVM向けであってFRDM向けではなかったことが問題だったと思います。 Re: frdm-imx93 not booting even with demo images from NXP 解決しましたか?私も同じ問題に遭遇しました Re: frdm-imx93 not booting even with demo images from NXP こんにちは@jventura 、 @qingyu 、 @ssb1 、 @skrimby123 ぜひ試してみてください。 Re: frdm-imx93 not booting even with demo images from NXP お使いのU-Bootは古いようです。ハードウェアの変更があったようで、FRDM-IMX93をサポートするのは2025年以降のバージョンのみとなります。 イメージファイルと一緒にブートローダーをフラッシュする方法については、上記の私の投稿を参照してください。 うまくいくといいですね 🙂 Re: frdm-imx93 not booting even with demo images from NXP 私も全く同じ問題を抱えています。 もしかしたら、新しいボードに欠陥があるのかもしれませんね? 😞 Re: frdm-imx93 not booting even with demo images from NXP こんにちは、みんな、 ボードは正常に動作するようになりました。どうやらFRDM-i.MX93ボードにハードウェアの変更があったようで、古いU-bootブートローダー(2025年以前のもの)を使用している場合は、この問題が発生するようです。 シリアルダウンローダーモードで起動またはフラッシュを試みると、シリアルモニターでU-Bootのバージョンを確認できます。 古いU-Bootバージョンの例:U-Boot SPL 2024.04+gde16f4f1722+p0(2024年9月2日 10:44:35 +0000) 以下のコマンドでこのブートローダーを試してみてください。うまくいくはずです。 🙂 imx-boot-imx93-11x11-lpddr4x-frdm-sd.bin-flash_singleboot UUUコマンド: uuu -b sd_all imx-boot-imx93-11x11-lpddr4x-frdm-sd.bin-flash_singleboot .wic.zst 上記のブートローダーがうまく動作した場合は、変更を加えた最新のYocto i.MX BSPリポジトリはこちらです: GitHub - nxp-imx/meta-imx: i.MX Yocto Project i.MX BSP Layer · GitHub Re: frdm-imx93 not booting even with demo images from NXP NXPのサポートからこの問題を解決しました。 デモ画像ダウンロードページで、バージョン4.0ではなくバージョン1.0を選択し、最新のuuuを使用して画像をボードにダウンロードします。 Re: frdm-imx93 not booting even with demo images from NXP 遅れてすみません。 はい、おそらくそうでしょう。私のU-Bootバージョン: U-Boot SPL 2024.04+gde16f4f1722+p0(2024年9月2日 10:44:35 +0000) しかし、投稿にある正しいブートロードへのリンクが壊れていて、ダウンロードできません。 😞 Re: frdm-imx93 not booting even with demo images from NXP 私も同じエラーが発生しており、UART DEBUGの出力は以下のとおりです。 U-Boot SPL 2024.04+gde16f4f1722+p0(2024年9月2日 10:44:35 +0000) SOC: 0xa1009300 LC: 0x2040010 PMIC: PCA9451A PMIC: オーバードライブ電圧モード DDR: 3733MTS DDR: 3733MTS M33準備OK Re: frdm-imx93 not booting even with demo images from NXP ブートローダーへのリンクが機能していません Re: frdm-imx93 not booting even with demo images from NXP ブートローダーのダウンロードリンクを更新してください。これは依然として多くの人にとって解決されていない問題であり、まだ解決策は見つかっていません。
View full article
是否可以对 i.MX93 板进行重新配置? 我已使用 EdgeLock 2GO 成功配置了我的 FRDM i.MX93 板。现在我想使用一组新的或更新的安全对象(例如密钥对和 X.509 证书)重新配置同一块板。已配置的 i.MX93 设备是否支持重新配置?如果支持,请问推荐的步骤是什么?具体来说,之前配置的安全对象是否需要在重新配置之前删除或 RESET,还是可以通过 EdgeLock 2GO 进行更新?此外,在尝试重新配置之前,我是否需要注意任何限制或不可逆的设置? 日志:-- 错误:iot_agent_utils_create_self_signed_edgelock2go_certificate L#1035 mbedtls_pk_setup_opaque 失败:0xffffc180 错误:iot_agent_utils_write_edgelock2go_datastore L#1150 iot_agent_utils_create_self_signed_edgelock2go_certificate 失败:0xffffffff 错误:iot_agent_utils_create_self_signed_edgelock2go_certificate L#1035 mbedtls_pk_setup_opaque 失败:0xffffc180 错误:iot_agent_utils_write_edgelock2go_datastore L#1150 iot_agent_utils_create_self_signed_edgelock2go_certificate 失败:0xffffffff 错误:iot_agent_utils_create_self_signed_edgelock2go_certificate L#1035 mbedtls_pk_setup_opaque 失败:0xffffc180 错误:iot_agent_update_device_configuration_from_constants L#614 iot_agent_utils_create_self_signed_edgelock2go_certificate 失败:0xffffffff 错误:iot_agent_update_device_configuration L#657 iot_agent_update_device_configuration_from_constants 失败,错误代码为 0xffffffff 状态(oem-prov-app):失败 FRDM 培训 动手实践培训 安全 Yocto Project Re: Is it possible to reprovision the i.MX93 board? 你好, EdgeLock 2GO 可进行重新配置,其设计旨在实现完整的生命周期管理,包括在初始部署后更新、轮换或撤销证书和密钥。 请问您能否分享一下您在安全配置过程中遵循了哪些步骤? 您需要了解与熔丝中烧毁的配置相关的程序,例如键、生命周期等。 顺祝商祺! Re: Is it possible to reprovision the i.MX93 board? 感谢您确认服务级别支持重新配置。澄清一下:这不是一次全新的配置尝试,而是对已经成功配置过一次的板子进行的重新配置尝试(生命周期 OEM_OPEN,ELE 固件 2.0.5-7a34cee,第一次配置时已经存在密钥和证书对象)。 在第二次尝试中,oem-prov-app 在 iot_agent_update_device_configuration_from_constants() → iot_agent_utils_create_self_signed_edgelock2go_certificate() 内部的 mbedtls_pk_setup_opaque() 调用处失败,返回 MBEDTLS_ERR_PK_BAD_INPUT_DATA (0xffffc180)。版本:el2go-agent 6.4.2-r0,smw 5.3-r0,mbedtls 3.6.5-r0。 两个问题: 1.重新配置是否需要在重新运行 oem-prov-app 之前显式擦除现有密钥对象(通过 psa_destroy_key 或 SMW 密钥存储 API),还是代理应该在相同的密钥 ID 处就地覆盖它?我们目前没有执行任何显式擦除步骤。 2. el2go-agent 6.4.2-r0 和 smw 5.3-r0 之间是否存在已知的兼容性问题,尤其是在重新配置/更新路径上?因为我们在初始启动时也看到了同样的错误,并怀疑是版本不匹配导致的。 另外,能否确认已配置的密钥和证书对象位于 ELE 管理的 NVM 中,而不是熔丝中,这样即使重新配置失败,也不会导致该密钥 ID 永久无法使用? Re: Is it possible to reprovision the i.MX93 board? 你好, 谢谢你提供的信息。 1. 是的,使用签名消息执行密钥库重新配置。密钥存储重新配置会导致 HSM 处理的所有密钥存储被擦除。 2. 没有,没有报告任何兼容性问题。 3. 没错,应用程序密钥和证书存储在 ELE 管理的 NVM 中,而不是存储在熔丝中。 顺祝商祺!
View full article
IMX95 Aquila ISP 使用情况 你好, 我购买了一套 Aquila IMX95 评估套件 2,包含两个 ov5640 传感器( https://www.toradex.com/cart )。 我有传感器的驱动程序。主板固件已正确刷写,ISP模块已激活: root@imx95-1:~# lsmod | grep -i isp neoisp 69632 0 摄像头显示在 libcamera 中: root@imx95-1:~# libcamera -sh: libcamera: command not found root@imx95-1:~# cam -l [17:17:31.010001558] [2747] INFO Camera camera_manager.cpp:327 libcamera v0.4.0+dirty (2026-06-03T11:26:44UTC) [17:17:31.044088474] [2748] WARN CameraSensor camera_sensor_legacy.cpp:354 'ov5640 4-003c': Recommended V4L2 control 0x009a0922 not supported [17:17:31.044159391] [2748] WARN CameraSensor camera_sensor_legacy.cpp:426 'ov5640 4-003c': The sensor kernel driver needs to be fixed [17:17:31.044178224] [2748] WARN CameraSensor camera_sensor_legacy.cpp:428 'ov5640 4-003c': See Documentation/sensor_driver_requirements.rst in the libcamera sources for more information [17:17:31.044882558] [2748] WARN CameraSensor camera_sensor_legacy.cpp:594 'ov5640 4-003c': Failed to retrieve the camera location [17:17:31.044918891] [2748] WARN CameraSensor camera_sensor_legacy.cpp:616 'ov5640 4-003c': Rotation control not available, default to 0 degrees [17:17:31.045722599] [2748] WARN CameraSensor camera_sensor_legacy.cpp:354 'ov5640 3-003c': Recommended V4L2 control 0x009a0922 not supported [17:17:31.045762974] [2748] WARN CameraSensor camera_sensor_legacy.cpp:426 'ov5640 3-003c': The sensor kernel driver needs to be fixed [17:17:31.045783849] [2748] WARN CameraSensor camera_sensor_legacy.cpp:428 'ov5640 3-003c': See Documentation/sensor_driver_requirements.rst in the libcamera sources for more information [17:17:31.046362016] [2748] WARN CameraSensor camera_sensor_legacy.cpp:594 'ov5640 3-003c': Failed to retrieve the camera location [17:17:31.046388308] [2748] WARN CameraSensor camera_sensor_legacy.cpp:616 'ov5640 3-003c': Rotation control not available, default to 0 degrees [17:17:31.048068724] [2748] WARN V4L2 v4l2_pixelformat.cpp:346 Unsupported V4L2 pixel format AR30 [17:17:31.048640224] [2748] WARN V4L2 v4l2_pixelformat.cpp:346 Unsupported V4L2 pixel format AR30 [17:17:31.048904099] [2748] WARN V4L2 v4l2_pixelformat.cpp:346 Unsupported V4L2 pixel format AR30 [17:17:31.049145974] [2748] WARN V4L2 v4l2_pixelformat.cpp:346 Unsupported V4L2 pixel format AR30 [17:17:31.049451724] [2748] WARN V4L2 v4l2_pixelformat.cpp:346 Unsupported V4L2 pixel format AR30 [17:17:31.049694683] [2748] WARN V4L2 v4l2_pixelformat.cpp:346 Unsupported V4L2 pixel format AR30 [17:17:31.049937141] [2748] WARN V4L2 v4l2_pixelformat.cpp:346 Unsupported V4L2 pixel format AR30 [17:17:31.050184266] [2748] WARN V4L2 v4l2_pixelformat.cpp:346 Unsupported V4L2 pixel format AR30 [17:17:31.050477516] [2748] WARN V4L2 v4l2_pixelformat.cpp:346 Unsupported V4L2 pixel format AR30 [17:17:31.050720433] [2748] WARN V4L2 v4l2_pixelformat.cpp:346 Unsupported V4L2 pixel format AR30 [17:17:31.050962433] [2748] WARN V4L2 v4l2_pixelformat.cpp:346 Unsupported V4L2 pixel format AR30 [17:17:31.051201724] [2748] WARN V4L2 v4l2_pixelformat.cpp:346 Unsupported V4L2 pixel format AR30 [17:17:31.051441724] [2748] WARN V4L2 v4l2_pixelformat.cpp:346 Unsupported V4L2 pixel format AR30 [17:17:31.051683308] [2748] WARN V4L2 v4l2_pixelformat.cpp:346 Unsupported V4L2 pixel format AR30 [17:17:31.051925308] [2748] WARN V4L2 v4l2_pixelformat.cpp:346 Unsupported V4L2 pixel format AR30 [17:17:31.052259141] [2748] WARN V4L2 v4l2_pixelformat.cpp:346 Unsupported V4L2 pixel format AR30 [17:17:31.052510099] [2748] WARN V4L2 v4l2_pixelformat.cpp:346 Unsupported V4L2 pixel format AR30 [17:17:31.061185308] [2748] WARN V4L2 v4l2_pixelformat.cpp:346 Unsupported V4L2 pixel format AR30 [17:17:31.061469974] [2748] WARN V4L2 v4l2_pixelformat.cpp:346 Unsupported V4L2 pixel format AR30 [17:17:31.061736058] [2748] WARN V4L2 v4l2_pixelformat.cpp:346 Unsupported V4L2 pixel format AR30 [17:17:31.061988683] [2748] WARN V4L2 v4l2_pixelformat.cpp:346 Unsupported V4L2 pixel format AR30 [17:17:31.062242933] [2748] WARN V4L2 v4l2_pixelformat.cpp:346 Unsupported V4L2 pixel format AR30 [17:17:31.062489474] [2748] WARN V4L2 v4l2_pixelformat.cpp:346 Unsupported V4L2 pixel format AR30 [17:17:31.062733266] [2748] WARN V4L2 v4l2_pixelformat.cpp:346 Unsupported V4L2 pixel format AR30 [17:17:31.062980349] [2748] WARN V4L2 v4l2_pixelformat.cpp:346 Unsupported V4L2 pixel format AR30 [17:17:31.063228266] [2748] WARN V4L2 v4l2_pixelformat.cpp:346 Unsupported V4L2 pixel format AR30 [17:17:31.063470391] [2748] WARN V4L2 v4l2_pixelformat.cpp:346 Unsupported V4L2 pixel format AR30 [17:17:31.063712849] [2748] WARN V4L2 v4l2_pixelformat.cpp:346 Unsupported V4L2 pixel format AR30 [17:17:31.063953933] [2748] WARN V4L2 v4l2_pixelformat.cpp:346 Unsupported V4L2 pixel format AR30 [17:17:31.064216891] [2748] WARN V4L2 v4l2_pixelformat.cpp:346 Unsupported V4L2 pixel format AR30 [17:17:31.064463349] [2748] WARN V4L2 v4l2_pixelformat.cpp:346 Unsupported V4L2 pixel format AR30 [17:17:31.064706683] [2748] WARN V4L2 v4l2_pixelformat.cpp:346 Unsupported V4L2 pixel format AR30 [17:17:31.064958766] [2748] WARN V4L2 v4l2_pixelformat.cpp:346 Unsupported V4L2 pixel format AR30 [17:17:31.065200974] [2748] WARN V4L2 v4l2_pixelformat.cpp:346 Unsupported V4L2 pixel format AR30 Available cameras: 1: 'ov5640' (/base/soc/bus@42000000/i2c@42540000/camera@3c) 2: 'ov5640' (/base/soc/bus@42000000/i2c@426e0000/camera@3c) 为了检查 mipis 是否正常,我启动了一个 gstreamer 流水线,并成功地在两个摄像头上都获得了稳定的 30fps 流。我还成功地使用 v4l2-ctl 拍摄了快照。 现在,我想用我的摄像头测试一下 Aquila 的 ISP,看看它的表现如何。 请参阅https://www.nxp.com/docs/en/user-guide/UG10215.pdf我添加了环境变量: root@imx95-1:~# export LIBCAMERA_PIPELINES_MATCH_LIST='nxp/neo' 但是这样做之后,libcamera 就检测不到摄像头了,我不知道为什么: root@imx95-1:~# cam -l [17:36:38.947430563] [2788] INFO Camera camera_manager.cpp:327 libcamera v0.4.0+dirty (2026-06-03T11:26:44UTC) Available cameras: root@imx95-1:~# 感谢你的回复 ! 此致敬礼, Re: IMX95 Aquila ISP usage 查看您的日志后,我认为该问题与 MIPI 接口或 OV5640 驱动程序本身无关。 事实是: libcamera 检测到了两台 OV5640 摄像头。 GStreamer 可以以 30 fps 的帧率进行流媒体传输。 v4l2-ctl 可以捕获图像 这表明传感器驱动程序、I2C 通信、  CSI-2  链接和媒体拓扑结构均运行正常。 关键在于 NXP Neo ISP 流水线需要原始的拜耳传感器输入。 OV5640 是一款 SoC 图像传感器,具有自己的内部图像处理流程,在 NXP 电路板支持包 中,它通常以 YUV 输出模式(例如 YUV422)使用,而不是作为 RAW Bayer 传感器使用。在这种配置下,可以通过标准的 V4L2/libcamera 流水线使用摄像头,但它不符合 Neo ISP 流水线的要求。 这就能解释为什么了: `cam -l` 默认会显示两台 OV5640 摄像头。 设置后 export LIBCAMERA_PIPELINES_MATCH_LIST='nxp/neo' 已检测不到任何摄像头 摄像头仍然存在于系统中,但 NEO 流水线处理程序找不到兼容的摄像头拓扑结构,因此没有向 libcamera 公开任何摄像头。 为了验证传感器的实际输出格式,请提供以下输出: ```bash media-ctl -p v4l2-ctl --list-formats-ext 我们特别感兴趣的是,该传感器是否支持任何 RAW Bayer 格式,例如: SBGGR8 SBGGR10 SRGGB10 RG10 BA10 如果只有 YUV 格式(例如 YUYV/UYVY)可用,则表示相机未在 RAW 模式下运行,无法通过 Neo ISP 处理流程进行处理。 虽然 OV5640 硬件能够输出 RAW Bayer 格式图像,但 BSP 相机驱动程序通常不会启用 RAW 支持,NXP Neo ISP 堆栈也依赖于传感器特定的调整数据。即使启用了 RAW 输出,由于缺少专用的 OV5640 调谐配置文件,可能会阻止 ISP 的正常操作(AE/AWB/图像质量调谐)。 如果您的目标是评估 Neo ISP 框架本身,那么使用已知可与 NXP ISP 协议栈配合使用的传感器可能会更容易。常见候选人包括: OS08A20 OX03C10 OX05B1S AR0521 AR1335(可能需要额外调校) 能否分享一下上述命令的输出结果?这将使我们能够确认当前的 OV5640 配置是否向系统暴露了 RAW Bayer 格式。 此致, Re: IMX95 Aquila ISP usage 谢谢回复。 我做了一些额外的检查: 您是对的,OV5640 最初运行在UYVY 模式下,但我手动将一个传感器切换到了RAW Bayer (SRGGB8) 。 media-ctl -p 现在显示:   root@imx95-1:~# media-ctl -p Media controller API version 6.12.55 Media device information ------------------------ driver mxc-isi model FSL Capture Media Device serial bus info platform:4ad50000.isi hw revision 0x0 driver version 6.12.55 Device topology - entity 1: crossbar (13 pads, 11 links, 8 routes) type V4L2 subdev subtype Unknown flags 0 device node name /dev/v4l-subdev0 routes: 2/0 -> 5/0 [ACTIVE] 3/0 -> 6/0 [ACTIVE] 2/0 -> 7/0 [ACTIVE] 3/0 -> 8/0 [ACTIVE] 2/0 -> 9/0 [ACTIVE] 3/0 -> 10/0 [ACTIVE] 2/0 -> 11/0 [ACTIVE] 3/0 -> 12/0 [ACTIVE] pad0: SINK,MUST_CONNECT pad1: SINK,MUST_CONNECT pad2: SINK,MUST_CONNECT [stream:0 fmt:SRGGB8_1X8/1920x1080 field:none] <- "4ac10000.syscon:formatter@20":1 [ENABLED,IMMUTABLE] pad3: SINK,MUST_CONNECT [stream:0 fmt:UYVY8_1X16/1920x1080 field:none] <- "4ac10000.syscon:formatter@120":1 [ENABLED,IMMUTABLE] pad4: SINK,MUST_CONNECT <- "mxc_isi.output":0 [ENABLED,IMMUTABLE] pad5: SOURCE [stream:0 fmt:SRGGB8_1X8/1920x1080 field:none] -> "mxc_isi.0":0 [ENABLED,IMMUTABLE] pad6: SOURCE [stream:0 fmt:UYVY8_1X16/1920x1080 field:none] -> "mxc_isi.1":0 [ENABLED,IMMUTABLE] pad7: SOURCE [stream:0 fmt:SRGGB8_1X8/1920x1080 field:none] -> "mxc_isi.2":0 [ENABLED,IMMUTABLE] pad8: SOURCE [stream:0 fmt:UYVY8_1X16/1920x1080 field:none] -> "mxc_isi.3":0 [ENABLED,IMMUTABLE] pad9: SOURCE [stream:0 fmt:SRGGB8_1X8/1920x1080 field:none] -> "mxc_isi.4":0 [ENABLED,IMMUTABLE] pad10: SOURCE [stream:0 fmt:UYVY8_1X16/1920x1080 field:none] -> "mxc_isi.5":0 [ENABLED,IMMUTABLE] pad11: SOURCE [stream:0 fmt:SRGGB8_1X8/1920x1080 field:none] -> "mxc_isi.6":0 [ENABLED,IMMUTABLE] pad12: SOURCE [stream:0 fmt:UYVY8_1X16/1920x1080 field:none] -> "mxc_isi.7":0 [ENABLED,IMMUTABLE] - entity 15: mxc_isi.0 (2 pads, 2 links, 0 routes) type V4L2 subdev subtype Unknown flags 0 device node name /dev/v4l-subdev1 pad0: SINK [stream:0 fmt:UYVY8_1X16/1920x1080 field:none compose.bounds:(0,0)/1920x1080 compose:(0,0)/1920x1080] <- "crossbar":5 [ENABLED,IMMUTABLE] pad1: SOURCE [stream:0 fmt:YUV8_1X24/1920x1080 field:none crop.bounds:(0,0)/1920x1080 crop:(0,0)/1920x1080] -> "mxc_isi.0.capture":0 [ENABLED,IMMUTABLE] - entity 18: mxc_isi.0.capture (1 pad, 1 link) type Node subtype V4L flags 0 device node name /dev/video2 pad0: SINK <- "mxc_isi.0":1 [ENABLED,IMMUTABLE] - entity 26: mxc_isi.1 (2 pads, 2 links, 0 routes) type V4L2 subdev subtype Unknown flags 0 device node name /dev/v4l-subdev2 pad0: SINK [stream:0 fmt:UYVY8_1X16/1920x1080 field:none compose.bounds:(0,0)/1920x1080 compose:(0,0)/1920x1080] <- "crossbar":6 [ENABLED,IMMUTABLE] pad1: SOURCE [stream:0 fmt:YUV8_1X24/1920x1080 field:none crop.bounds:(0,0)/1920x1080 crop:(0,0)/1920x1080] -> "mxc_isi.1.capture":0 [ENABLED,IMMUTABLE] - entity 29: mxc_isi.1.capture (1 pad, 1 link) type Node subtype V4L flags 0 device node name /dev/video3 pad0: SINK <- "mxc_isi.1":1 [ENABLED,IMMUTABLE] - entity 37: mxc_isi.2 (2 pads, 2 links, 0 routes) type V4L2 subdev subtype Unknown flags 0 device node name /dev/v4l-subdev3 pad0: SINK [stream:0 fmt:UYVY8_1X16/1920x1080 field:none colorspace:jpeg xfer:srgb ycbcr:601 quantization:full-range compose.bounds:(0,0)/1920x1080 compose:(0,0)/1920x1080] <- "crossbar":7 [ENABLED,IMMUTABLE] pad1: SOURCE [stream:0 fmt:YUV8_1X24/1920x1080 field:none colorspace:jpeg xfer:srgb ycbcr:601 quantization:full-range crop.bounds:(0,0)/1920x1080 crop:(0,0)/1920x1080] -> "mxc_isi.2.capture":0 [ENABLED,IMMUTABLE] - entity 40: mxc_isi.2.capture (1 pad, 1 link) type Node subtype V4L flags 0 device node name /dev/video4 pad0: SINK <- "mxc_isi.2":1 [ENABLED,IMMUTABLE] - entity 48: mxc_isi.3 (2 pads, 2 links, 0 routes) type V4L2 subdev subtype Unknown flags 0 device node name /dev/v4l-subdev4 pad0: SINK [stream:0 fmt:UYVY8_1X16/1920x1080 field:none colorspace:jpeg xfer:srgb ycbcr:601 quantization:full-range compose.bounds:(0,0)/1920x1080 compose:(0,0)/1920x1080] <- "crossbar":8 [ENABLED,IMMUTABLE] pad1: SOURCE [stream:0 fmt:YUV8_1X24/1920x1080 field:none colorspace:jpeg xfer:srgb ycbcr:601 quantization:full-range crop.bounds:(0,0)/1920x1080 crop:(0,0)/1920x1080] -> "mxc_isi.3.capture":0 [ENABLED,IMMUTABLE] - entity 51: mxc_isi.3.capture (1 pad, 1 link) type Node subtype V4L flags 0 device node name /dev/video5 pad0: SINK <- "mxc_isi.3":1 [ENABLED,IMMUTABLE] - entity 59: mxc_isi.4 (2 pads, 2 links, 0 routes) type V4L2 subdev subtype Unknown flags 0 device node name /dev/v4l-subdev5 pad0: SINK [stream:0 fmt:UYVY8_1X16/1920x1080 field:none colorspace:jpeg xfer:srgb ycbcr:601 quantization:full-range compose.bounds:(0,0)/1920x1080 compose:(0,0)/1920x1080] <- "crossbar":9 [ENABLED,IMMUTABLE] pad1: SOURCE [stream:0 fmt:YUV8_1X24/1920x1080 field:none colorspace:jpeg xfer:srgb ycbcr:601 quantization:full-range crop.bounds:(0,0)/1920x1080 crop:(0,0)/1920x1080] -> "mxc_isi.4.capture":0 [ENABLED,IMMUTABLE] - entity 62: mxc_isi.4.capture (1 pad, 1 link) type Node subtype V4L flags 0 device node name /dev/video6 pad0: SINK <- "mxc_isi.4":1 [ENABLED,IMMUTABLE] - entity 70: mxc_isi.5 (2 pads, 2 links, 0 routes) type V4L2 subdev subtype Unknown flags 0 device node name /dev/v4l-subdev6 pad0: SINK [stream:0 fmt:UYVY8_1X16/1920x1080 field:none colorspace:jpeg xfer:srgb ycbcr:601 quantization:full-range compose.bounds:(0,0)/1920x1080 compose:(0,0)/1920x1080] <- "crossbar":10 [ENABLED,IMMUTABLE] pad1: SOURCE [stream:0 fmt:YUV8_1X24/1920x1080 field:none colorspace:jpeg xfer:srgb ycbcr:601 quantization:full-range crop.bounds:(0,0)/1920x1080 crop:(0,0)/1920x1080] -> "mxc_isi.5.capture":0 [ENABLED,IMMUTABLE] - entity 73: mxc_isi.5.capture (1 pad, 1 link) type Node subtype V4L flags 0 device node name /dev/video7 pad0: SINK <- "mxc_isi.5":1 [ENABLED,IMMUTABLE] - entity 81: mxc_isi.6 (2 pads, 2 links, 0 routes) type V4L2 subdev subtype Unknown flags 0 device node name /dev/v4l-subdev7 pad0: SINK [stream:0 fmt:UYVY8_1X16/1920x1080 field:none colorspace:jpeg xfer:srgb ycbcr:601 quantization:full-range compose.bounds:(0,0)/1920x1080 compose:(0,0)/1920x1080] <- "crossbar":11 [ENABLED,IMMUTABLE] pad1: SOURCE [stream:0 fmt:YUV8_1X24/1920x1080 field:none colorspace:jpeg xfer:srgb ycbcr:601 quantization:full-range crop.bounds:(0,0)/1920x1080 crop:(0,0)/1920x1080] -> "mxc_isi.6.capture":0 [ENABLED,IMMUTABLE] - entity 84: mxc_isi.6.capture (1 pad, 1 link) type Node subtype V4L flags 0 device node name /dev/video8 pad0: SINK <- "mxc_isi.6":1 [ENABLED,IMMUTABLE] - entity 92: mxc_isi.7 (2 pads, 2 links, 0 routes) type V4L2 subdev subtype Unknown flags 0 device node name /dev/v4l-subdev8 pad0: SINK [stream:0 fmt:UYVY8_1X16/1920x1080 field:none colorspace:jpeg xfer:srgb ycbcr:601 quantization:full-range compose.bounds:(0,0)/1920x1080 compose:(0,0)/1920x1080] <- "crossbar":12 [ENABLED,IMMUTABLE] pad1: SOURCE [stream:0 fmt:YUV8_1X24/1920x1080 field:none colorspace:jpeg xfer:srgb ycbcr:601 quantization:full-range crop.bounds:(0,0)/1920x1080 crop:(0,0)/1920x1080] -> "mxc_isi.7.capture":0 [ENABLED,IMMUTABLE] - entity 95: mxc_isi.7.capture (1 pad, 1 link) type Node subtype V4L flags 0 device node name /dev/video9 pad0: SINK <- "mxc_isi.7":1 [ENABLED,IMMUTABLE] - entity 103: mxc_isi.output (1 pad, 1 link) type Node subtype V4L flags 0 pad0: SOURCE -> "crossbar":4 [ENABLED,IMMUTABLE] - entity 110: 4ac10000.syscon:formatter@120 (2 pads, 2 links, 1 route) type V4L2 subdev subtype Unknown flags 0 device node name /dev/v4l-subdev9 routes: 0/0 -> 1/0 [ACTIVE] pad0: SINK [stream:0 fmt:UYVY8_1X16/1920x1080 field:none] <- "csidev-4ad40000.csi":1 [ENABLED,IMMUTABLE] pad1: SOURCE [stream:0 fmt:UYVY8_1X16/1920x1080 field:none] -> "crossbar":3 [ENABLED,IMMUTABLE] - entity 115: 4ac10000.syscon:formatter@20 (2 pads, 2 links, 1 route) type V4L2 subdev subtype Unknown flags 0 device node name /dev/v4l-subdev10 routes: 0/0 -> 1/0 [ACTIVE] pad0: SINK [stream:0 fmt:SRGGB8_1X8/1920x1080] <- "csidev-4ad30000.csi":1 [ENABLED,IMMUTABLE] pad1: SOURCE [stream:0 fmt:SRGGB8_1X8/1920x1080] -> "crossbar":2 [ENABLED,IMMUTABLE] - entity 120: csidev-4ad30000.csi (2 pads, 2 links, 1 route) type V4L2 subdev subtype Unknown flags 0 device node name /dev/v4l-subdev11 routes: 0/0 -> 1/0 [ACTIVE] pad0: SINK [stream:0 fmt:SRGGB8_1X8/1920x1080 colorspace:srgb xfer:srgb ycbcr:601 quantization:full-range] <- "ov5640 4-003c":0 [ENABLED] pad1: SOURCE [stream:0 fmt:SRGGB8_1X8/1920x1080 colorspace:srgb xfer:srgb ycbcr:601 quantization:full-range] -> "4ac10000.syscon:formatter@20":0 [ENABLED,IMMUTABLE] - entity 125: csidev-4ad40000.csi (2 pads, 2 links, 1 route) type V4L2 subdev subtype Unknown flags 0 device node name /dev/v4l-subdev12 routes: 0/0 -> 1/0 [ACTIVE] pad0: SINK [stream:0 fmt:UYVY8_1X16/1920x1080 field:none] <- "ov5640 3-003c":0 [ENABLED] pad1: SOURCE [stream:0 fmt:UYVY8_1X16/1920x1080 field:none] -> "4ac10000.syscon:formatter@120":0 [ENABLED,IMMUTABLE] - entity 130: ov5640 4-003c (1 pad, 1 link, 0 routes) type V4L2 subdev subtype Sensor flags 0 device node name /dev/v4l-subdev13 pad0: SOURCE [stream:0 fmt:SRGGB8_1X8/1920x1080@1/30 colorspace:srgb xfer:srgb ycbcr:601 quantization:full-range crop.bounds:(0,0)/2624x1964 crop:(336,434)/1952x1088] -> "csidev-4ad30000.csi":0 [ENABLED] - entity 134: ov5640 3-003c (1 pad, 1 link, 0 routes) type V4L2 subdev subtype Sensor flags 0 device node name /dev/v4l-subdev14 pad0: SOURCE [stream:0 fmt:UYVY8_1X16/1920x1080@1/30 field:none colorspace:srgb xfer:srgb ycbcr:601 quantization:full-range crop.bounds:(0,0)/2624x1964 crop:(336,434)/1952x1088] -> "csidev-4ad40000.csi":0 [ENABLED] (第二个OV5640仍保持UYVY模式,用于对比) 所以 : OV5640 -> SRGGB8 CSI -> SRGGB8 格式化程序 -> SRGGB8 横杆 -> SRGGB8 => RAW Bayer 成功通过传感器、CSI 和格式化器进行传输。 neoisp内核模块已加载: root@imx95-1:~# modprobe neoisp root@imx95-1:~# lsmod | grep -i isp neoisp 69632 0 运行中的设备树中存在 ISP 节点:   /sys/firmware/devicetree/base/soc/isp@4ae00000   => 但是,我只看到一个媒体设备(/dev/media0)暴露了 CSI/Formatter/ISI 管道。媒体图中没有出现新独立党派实体。我在媒体图中没有看到任何 neoisp 实体,我不知道这是否正常。 => cam -l (libcamera) 仍然返回没有可用的摄像头。 目前看来,RAW Bayer 路径似乎可以正常工作,但我无法确定 Neo ISP 在哪个环节成为活动流程的一部分。   如何验证该流是否确实由 Neo ISP 处理,而不是仅仅遵循 CSI -> 格式化程序 -> ISI 路径?   另外,请参阅https://www.nxp.com/docs/en/user-guide/UG10215.pdf对于这种配置,目前还是推荐的指南吗?或者有没有针对 i.MX95 上 OV5640 + Neo ISP 的更具体的参考资料?       此致敬礼, Re: IMX95 Aquila ISP usage 我目前怀疑以下情况之一正在发生: OV5640 很可能运行在 YUV 模式而不是 RAW Bayer 模式。 摄像头 DT 叠加层不是 ISP 启用版本。 根文件系统中缺少 Neo IPA/校准组件。 Neo 管道看到的媒体拓扑结构与预期的 i.MX95 ISP 图不匹配。 media-ctl -p 的输出通常会指出哪个才是真正的问题所在。 Re: IMX95 Aquila ISP usage 您好! 以下是输出结果: root@imx95-1:~# v4l2-ctl --list-formats-ext -d /dev/video2 ioctl: VIDIOC_ENUM_FMT Type: Video Capture Multiplanar [0]: 'YUYV' (YUYV 4:2:2, csc-colorspace, csc-ycbcr, csc-quantization, csc-xfer-func) Size: Stepwise 1x1 - 4096x8191 with step 1/1 [1]: 'YUVA' (32-bit YUVA 8-8-8-8, csc-colorspace, csc-ycbcr, csc-quantization, csc-xfer-func) Size: Stepwise 1x1 - 4096x8191 with step 1/1 [2]: 'NV12' (Y/UV 4:2:0, csc-colorspace, csc-ycbcr, csc-quantization, csc-xfer-func) Size: Stepwise 2x2 - 4096x8190 with step 2/2 [3]: 'NM12' (Y/UV 4:2:0 (N-C), csc-colorspace, csc-ycbcr, csc-quantization, csc-xfer-func) Size: Stepwise 2x2 - 4096x8190 with step 2/2 [4]: 'NV16' (Y/UV 4:2:2, csc-colorspace, csc-ycbcr, csc-quantization, csc-xfer-func) Size: Stepwise 2x1 - 4096x8191 with step 2/1 [5]: 'NM16' (Y/UV 4:2:2 (N-C), csc-colorspace, csc-ycbcr, csc-quantization, csc-xfer-func) Size: Stepwise 2x1 - 4096x8191 with step 2/1 [6]: 'YM24' (Planar YUV 4:4:4 (N-C), csc-colorspace, csc-ycbcr, csc-quantization, csc-xfer-func) Size: Stepwise 1x1 - 4096x8191 with step 1/1 [7]: 'RGBP' (16-bit RGB 5-6-5, csc-colorspace, csc-ycbcr, csc-quantization, csc-xfer-func) Size: Stepwise 1x1 - 4096x8191 with step 1/1 [8]: 'RGB3' (24-bit RGB 8-8-8, csc-colorspace, csc-ycbcr, csc-quantization, csc-xfer-func) Size: Stepwise 1x1 - 4096x8191 with step 1/1 [9]: 'BGR3' (24-bit BGR 8-8-8, csc-colorspace, csc-ycbcr, csc-quantization, csc-xfer-func) Size: Stepwise 1x1 - 4096x8191 with step 1/1 [10]: 'XR24' (32-bit BGRX 8-8-8-8, csc-colorspace, csc-ycbcr, csc-quantization, csc-xfer-func) Size: Stepwise 1x1 - 4096x8191 with step 1/1 [11]: 'AR24' (32-bit BGRA 8-8-8-8, csc-colorspace, csc-ycbcr, csc-quantization, csc-xfer-func) Size: Stepwise 1x1 - 4096x8191 with step 1/1 [12]: 'RA24' (32-bit ABGR 8-8-8-8, csc-colorspace, csc-ycbcr, csc-quantization, csc-xfer-func) Size: Stepwise 1x1 - 4096x8191 with step 1/1 [13]: 'AB24' (32-bit RGBA 8-8-8-8, csc-colorspace, csc-ycbcr, csc-quantization, csc-xfer-func) Size: Stepwise 1x1 - 4096x8191 with step 1/1 [14]: 'RX24' (32-bit XBGR 8-8-8-8, csc-colorspace, csc-ycbcr, csc-quantization, csc-xfer-func) Size: Stepwise 1x1 - 4096x8191 with step 1/1 [15]: 'XB24' (32-bit RGBX 8-8-8-8, csc-colorspace, csc-ycbcr, csc-quantization, csc-xfer-func) Size: Stepwise 1x1 - 4096x8191 with step 1/1 [16]: 'AR30' (32-bit ARGB 2-10-10-10, csc-colorspace, csc-ycbcr, csc-quantization, csc-xfer-func) Size: Stepwise 1x1 - 4096x8191 with step 1/1 [17]: 'GREY' (8-bit Greyscale, csc-colorspace, csc-ycbcr, csc-quantization, csc-xfer-func) Size: Stepwise 1x1 - 4096x8191 with step 1/1 [18]: 'Y10 ' (10-bit Greyscale, csc-colorspace, csc-ycbcr, csc-quantization, csc-xfer-func) Size: Stepwise 1x1 - 4096x8191 with step 1/1 [19]: 'Y12 ' (12-bit Greyscale, csc-colorspace, csc-ycbcr, csc-quantization, csc-xfer-func) Size: Stepwise 1x1 - 4096x8191 with step 1/1 [20]: 'Y14 ' (14-bit Greyscale, csc-colorspace, csc-ycbcr, csc-quantization, csc-xfer-func) Size: Stepwise 1x1 - 4096x8191 with step 1/1 [21]: 'BA81' (8-bit Bayer BGBG/GRGR, csc-colorspace, csc-ycbcr, csc-quantization, csc-xfer-func) Size: Stepwise 1x1 - 4096x8191 with step 1/1 [22]: 'GBRG' (8-bit Bayer GBGB/RGRG, csc-colorspace, csc-ycbcr, csc-quantization, csc-xfer-func) Size: Stepwise 1x1 - 4096x8191 with step 1/1 [23]: 'GRBG' (8-bit Bayer GRGR/BGBG, csc-colorspace, csc-ycbcr, csc-quantization, csc-xfer-func) Size: Stepwise 1x1 - 4096x8191 with step 1/1 [24]: 'RGGB' (8-bit Bayer RGRG/GBGB, csc-colorspace, csc-ycbcr, csc-quantization, csc-xfer-func) Size: Stepwise 1x1 - 4096x8191 with step 1/1 [25]: 'BG10' (10-bit Bayer BGBG/GRGR, csc-colorspace, csc-ycbcr, csc-quantization, csc-xfer-func) Size: Stepwise 1x1 - 4096x8191 with step 1/1 [26]: 'GB10' (10-bit Bayer GBGB/RGRG, csc-colorspace, csc-ycbcr, csc-quantization, csc-xfer-func) Size: Stepwise 1x1 - 4096x8191 with step 1/1 [27]: 'BA10' (10-bit Bayer GRGR/BGBG, csc-colorspace, csc-ycbcr, csc-quantization, csc-xfer-func) Size: Stepwise 1x1 - 4096x8191 with step 1/1 [28]: 'RG10' (10-bit Bayer RGRG/GBGB, csc-colorspace, csc-ycbcr, csc-quantization, csc-xfer-func) Size: Stepwise 1x1 - 4096x8191 with step 1/1 [29]: 'BG12' (12-bit Bayer BGBG/GRGR, csc-colorspace, csc-ycbcr, csc-quantization, csc-xfer-func) Size: Stepwise 1x1 - 4096x8191 with step 1/1 [30]: 'GB12' (12-bit Bayer GBGB/RGRG, csc-colorspace, csc-ycbcr, csc-quantization, csc-xfer-func) Size: Stepwise 1x1 - 4096x8191 with step 1/1 [31]: 'BA12' (12-bit Bayer GRGR/BGBG, csc-colorspace, csc-ycbcr, csc-quantization, csc-xfer-func) Size: Stepwise 1x1 - 4096x8191 with step 1/1 [32]: 'RG12' (12-bit Bayer RGRG/GBGB, csc-colorspace, csc-ycbcr, csc-quantization, csc-xfer-func) Size: Stepwise 1x1 - 4096x8191 with step 1/1 [33]: 'BG14' (14-bit Bayer BGBG/GRGR, csc-colorspace, csc-ycbcr, csc-quantization, csc-xfer-func) Size: Stepwise 1x1 - 4096x8191 with step 1/1 [34]: 'GB14' (14-bit Bayer GBGB/RGRG, csc-colorspace, csc-ycbcr, csc-quantization, csc-xfer-func) Size: Stepwise 1x1 - 4096x8191 with step 1/1 [35]: 'GR14' (14-bit Bayer GRGR/BGBG, csc-colorspace, csc-ycbcr, csc-quantization, csc-xfer-func) Size: Stepwise 1x1 - 4096x8191 with step 1/1 [36]: 'RG14' (14-bit Bayer RGRG/GBGB, csc-colorspace, csc-ycbcr, csc-quantization, csc-xfer-func) Size: Stepwise 1x1 - 4096x8191 with step 1/1 [37]: 'BYR2' (16-bit Bayer BGBG/GRGR, csc-colorspace, csc-ycbcr, csc-quantization, csc-xfer-func) Size: Stepwise 1x1 - 4096x8191 with step 1/1 [38]: 'GB16' (16-bit Bayer GBGB/RGRG, csc-colorspace, csc-ycbcr, csc-quantization, csc-xfer-func) Size: Stepwise 1x1 - 4096x8191 with step 1/1 [39]: 'GR16' (16-bit Bayer GRGR/BGBG, csc-colorspace, csc-ycbcr, csc-quantization, csc-xfer-func) Size: Stepwise 1x1 - 4096x8191 with step 1/1 [40]: 'RG16' (16-bit Bayer RGRG/GBGB, csc-colorspace, csc-ycbcr, csc-quantization, csc-xfer-func) Size: Stepwise 1x1 - 4096x8191 with step 1/1 [41]: 'MJPG' (Motion-JPEG, compressed, csc-colorspace, csc-ycbcr, csc-quantization, csc-xfer-func) Size: Stepwise 1x1 - 4096x8191 with step 1/1 如果我理解正确的话,相机可以拍摄原始拜耳格式照片,我也将其配置为拍摄原始拜耳格式照片(希望我配置正确)。 我再尝试用另一个镜像文件刷机,看看问题是不是出在这里。 此致敬礼, Re: IMX95 Aquila ISP usage 谢谢你的更新。这  v4l2-ctl  输出结果证实 ISI 捕获节点支持 RAW Bayer 格式,并且  media-ctl -p  您上一条消息的输出已经表明,RAW Bayer 路径已正确传递到整个流程中: OV5640 (SRGGB8) -> CSI (SRGGB8) -> 格式化器 (SRGGB8) -> 十字开关 (SRGGB8) 所以传感器侧的配置看起来是正确的。 现在的核心问题是:  新互联网服务  模块已加载,但未出现在媒体图中,也没有其他信息。  /dev/media1  已创建。这通常表明  新互联网服务  驱动程序已成功作为内核模块加载,但在设备探测期间失败,这将阻止其注册媒体设备。 请您提供以下诊断信息: # 检查 NeoISP 探测状态 dmesg | grep -i neoisp dmesg | grep -i "isp@4ae" dmesg | grep -i “探测失败” dmesg | grep -i "4ae00000" # 确认所有可用的媒体设备ls -la /dev/media* # 检查 sysfs中的neoisp 状态ls /sys/总线/platform/drivers/nxp-neoisp/ cat /sys/firmware/devicetree/base/soc/isp@4ae00000/status 同时,我们也想问一下:您是否可以访问以下任何一款由 NXP Neo ISP 协议栈官方支持且具有完整调优我的的传感器? OS08A20 OX03C10 OX05B1S 使用这些传感器之一进行测试,可以让我们快速验证 Neo ISP 驱动程序本身在您的环境中是否正常工作,并有助于确定问题是与驱动程序/环境相关还是 OV5640 配置特有的问题。 请注意,虽然 OV5640 能够输出 RAW Bayer 图像,但它没有官方的 NXP Neo ISP 调谐我的,这意味着即使管道连接正确,AE/AWB 和图像质量调谐功能也无法使用。 Re: IMX95 Aquila ISP usage 一些更新: 我们内部对此进行了检查,并想分享以下关于 OV5640 和 i.MX95 Neo ISP 流水线的观察结果。 虽然 OV5640 能够输出 RAW Bayer 数据,但出于以下原因,我们通常不建议在新设计中使用 OV5640 + Neo ISP 组合: OV5640 已经是一款停产(EOL)传感器。 虽然支持 RAW 输出,但与较新的 RAW 传感器相比,该传感器本身提供的可调控制功能有限。 NXP 的 i.MX95 参考,引用相机解决方案基于 OS08A20 等 RAW 传感器,这些传感器已在 Neo ISP 软件框架中得到支持和验证。 因此,我们的建议如下: 将 OV5640 与其现有的图像处理路径一起使用(不依赖 Neo ISP AE/AWB 调整功能)。 如果需要完整的 Neo ISP 功能,请使用 NXP 支持的 RAW 传感器,例如 OS08A20。 如果 OV5640 必须与 Neo ISP 管道一起使用,则需要额外的软件启用工作。 对于 OV5640 + Neo ISP 方案,需要实现 libcamera CameraHelper。以下文件可作为参考,引用: camera_helper_ov5640.cpp https://github.com/nxp-imx/libcamera/blob/lf-6.6.52_2.2.0/src/ipa/nxp/cam_helper/camera_helper_ov5640.cpp 请注意,此 CameraHelper 实现只是第一步。它的主要目的是让 libcamera 能够识别 OV5640 传感器。还需要针对特定传感器进行额外的适配。 例如,如果希望 Neo ISP 自动曝光 (AE) 功能正常工作,则需要实现传感器增益转换函数等 API。IMX219 CameraHelper 实现中提供了一个简单的示例: https://github.com/nxp-imx/libcamera/blob/lf-6.18.20_2.0.0/src/ipa/nxp/cam_helper/camera_helper_imx219.cpp 具体而言,客户需要确定并实施以下之间的映射关系: 传感器增益代码 实际模拟增益倍增器(增益值) 这样 Neo ISP AE 算法就能正确控制传感器曝光和增益。 有关 CameraHelper 开发的详细信息,请参阅相机移植指南: 第 5.3 节 – “为新传感器实现 libcamera CameraHelper” OV5640 的一个特殊之处在于它本身就包含 AE 功能。因此,如果打算继续使用传感器的内部 AE 而不是 Neo ISP AE 算法,则诸如 gainCodeToGain() 和 gainToGainCode() 之类的实现可能并非严格必需。在这种情况下,一个仅用于传感器检测的基本 CameraHelper 可能就足以启动管道。 然而,图像质量调优仍然需要进行评估和调整。由于 OV5640 最初并非作为 Neo ISP 参考,引用传感器进行特性分析和调校,因此可能需要额外的 ISP 调校工作才能达到最佳图像质量。 总的来说,虽然 OV5640 RAW 输出可以连接到 i.MX95 Neo ISP 流水线,但预计还需要一些针对特定传感器的 libcamera 和 ISP 集成工作。对于新开发项目,我们建议尽可能使用经过 Neo ISP 验证的 RAW 传感器,例如 OS08A20。 Re: IMX95 Aquila ISP usage 在前文讨论的基础上,我们调查了 Neo ISP 管道无法识别 OV5640 传感器的根本原因。 问题在于 NXP Neo IPA(图像处理算法)框架使用了一种  相机助手  工厂通过匹配内核 V4L2 子设备模型字符串来查找传感器特定的增益/曝光算法。由于没有  相机助手  已登记  “ov5640” ,工厂退回  nullptr  无法为该传感器配置 ISP 管道。 为了解决这个问题,我们实施了一项  相机助手  适用于基于 NXP 内核内部驱动程序( drivers/media/i2c/ov5640.c) 的 OV5640 传感器😞 增益寄存器映射: 登记:  OV5640_REG_AEC_PK_REAL_GAIN  ( 0x350a ),10 位值 格式:Q6.4 定点,单位增益 = 16 gainCode(g) = round(g * 16) gain(code) = code / 16.0 两个文件已被修改: camera_helper_ov5640.cpp  – 为 OV5640 开发的新 CameraHelper 实现,已注册为  "ov5640"  与内核子设备模型字符串匹配 meson.build  ——已添加  camera_helper_ov5640.cpp  添加到版本源列表 请使用这两个文件重新构建 libcamera,然后重试。  LIBCAMERA_PIPELINES_MATCH_LIST='nxp/neo' 。Neo ISP 管道现在应该能够找到并配置 OV5640 传感器。 请注意,虽然这可以实现增益/曝光控制路径,但 OV5640 的完整 ISP 调谐我的(AE/AWB 参数)尚未可用。图像质量调优可能仍需进一步完善。 重建完成后与我们联系结果。
View full article
SE050 vulnerability reporting   I have a technical support question regarding the SE050. We are bringing a product to market that uses the SE050, and this product will not receive software updates in the field. Under the EU Cyber Resilience Act (CRA), we have an obligation to monitor for vulnerabilities in the components we use and to report actively exploited vulnerabilities and severe incidents within the required timelines.   Could you tell us: - Does NXP operate a vulnerability disclosure or security notification process for the SE050 (e.g. a mailing list, security advisories page, or PSIRT feed) that we could subscribe to or monitor? - How are known vulnerabilities and their status (fixed, mitigated, not applicable) communicated to customers using the SE050, given that this specific product line does not support field updates? - Is there a way to get proactive notifications rather than having to check manually? SE050 Re: SE050 vulnerability reporting Hi @djdirkj , [Product Security Vulnerability | NXP Semiconductors|https://www.nxp.com/support/support/product-security-vulnerability:PSIRT] PSIRT team can be reported of vulnerabilities, they evaluate, find apt solution and communicate to affected buyers of the product - direct customers and distis which then inform their buyers. Errors and mitigiations are documented in errata sheet and user guidance. Anyone can receive updates of these documents by clicking the "receiving alerts" option on the website of the product page to get informed on document updates. Have a great day, Kan ------------------------------------------------------------------------------- Note: - If this post answers your question, please click the "Mark Correct" button. Thank you! - We are following threads for 7 weeks after the last post, later replies are ignored Please open a new thread and refer to the closed one, if you have a related question at a later point in time. -------------------------------------------------------------------------------
View full article
What is "Secure Box version"? The GetVersion-APDU in AN12413 specification defines "VersionInfo" with a 2-byte "Secure Box version". There is no definition as to what is exactly is. Why do I need this information? I'm in the middle of a certification of a product with a notified body. This product uses a SE050 for certain security features and this is part of the certification since the SE050 also contains a form of firmware.  SE050 Re: What is "Secure Box version"? Hi @Kan_Li , thank you for your timely reply, I appreciate it. Can you confirm that every SE050A2 has the same: OEF ID, platform build ID, OS patch level, applet version, and feature configuration. And if we order a new batch, this does not change. This is all I need to know regarding this topic. Kind regards, Dirk Jan Re: What is "Secure Box version"? Hi @djdirkj , Please do not try to prove that all SE050A2 chips are literally identical; prove that they have the same OEF ID, platform build ID, OS patch level, applet version, and feature configuration, while recording unique serial/batch data for traceability. Have a great day, Kan ------------------------------------------------------------------------------- Note: - If this post answers your question, please click the "Mark Correct" button. Thank you! - We are following threads for 7 weeks after the last post, later replies are ignored Please open a new thread and refer to the closed one, if you have a related question at a later point in time. ------------------------------------------------------------------------------- Re: What is "Secure Box version"? Hi @Kan_Li , thank you for your response! Let me rephrase the question: I have a reel of about 500 SE050A2 components at our EMS. If I produce 500 products with these SE050, how can I be sure that every SE050 is exactly the same? If there is a difference in the SE050 it does not adhere to the certificate and it needs amendments to the certificate. I hope you understand that this is not desirable. Re: What is "Secure Box version"? Hi @djdirkj , Please record the Secure Box version as part of the SE050 software/configuration evidence, but do not try to interpret it independently unless NXP provides a controlled definition; for certification, the full  GetVersion  /  se05x_GetInfo  output is the stronger traceability artifact. Have a great day, Kan ------------------------------------------------------------------------------- Note: - If this post answers your question, please click the "Mark Correct" button. Thank you! - We are following threads for 7 weeks after the last post, later replies are ignored Please open a new thread and refer to the closed one, if you have a related question at a later point in time. ------------------------------------------------------------------------------- Re: What is "Secure Box version"? Hi @djdirkj , Yes, all these parameters are static on SE050A. Have a great day, Kan ------------------------------------------------------------------------------- Note: - If this post answers your question, please click the "Mark Correct" button. Thank you! - We are following threads for 7 weeks after the last post, later replies are ignored Please open a new thread and refer to the closed one, if you have a related question at a later point in time. -------------------------------------------------------------------------------
View full article
什么是“安全盒版本”? AN12413 规范中的 GetVersion-APDU 定义了“VersionInfo”,其中包含 2 字节的“Secure Box 版本”。对于“它”究竟是什么,并没有一个明确的定义。 我为什么需要这些信息? 我正在协助一家认证机构对一款产品进行认证。本产品使用 SE050 来实现某些安全功能,由于 SE050 也包含某种形式的固件,因此这也是认证的一部分。 SE050 Re: What is "Secure Box version"? 嗨@Kan_Li , 感谢您的及时回复,非常感谢。 能否确认所有 SE050A2 都具有相同的以下特性: OEF ID、平台构建 ID、操作系统补丁级别、小程序版本和功能配置。 如果我们订购新一批,情况也不会改变。 关于这个话题,我只需要知道这些就够了。 此致敬礼, 德克·扬 Re: What is "Secure Box version"? 嗨@djdirkj , 请不要试图证明所有 SE050A2 芯片完全相同;请证明它们具有相同的 OEF ID、平台构建 ID、操作系统补丁级别、小程序版本和功能配置,同时记录唯一的序列号/批次数据以进行追溯。 祝你有美好的一天, 坎 ------------------------------------------------------------------------------- 笔记: - 如果此回复解答了您的问题,请点击“标记为正确答案”按钮。谢谢你! - 我们会持续关注帖子,从最后一条回复发出后持续7周,之后的回复将被忽略。 如果您之后有相关问题,请另开新帖并引用已关闭的帖子。 ------------------------------------------------------------------------------- Re: What is "Secure Box version"? 嗨@Kan_Li , 谢谢你的回复! 让我换个方式问: 我们EMS有一卷大约500个SE050A2元件。如果我用这些 SE050 生产 500 件产品,如何才能确保每个 SE050 都完全相同? 如果 SE050 存在差异,则不符合证书要求,需要对证书进行修改。我希望您明白,这样做并不可取。 Re: What is "Secure Box version"? 嗨@djdirkj , 请将 Secure Box 版本记录为 SE050 软件/配置证据的一部分,但除非 NXP 提供受控定义,否则请勿尝试自行解读;对于认证,请使用完整的版本信息。  GetVersion  /  se05x_GetInfo  输出是更强的可追溯性凭证。 祝你有美好的一天, 坎 ------------------------------------------------------------------------------- 笔记: - 如果此回复解答了您的问题,请点击“标记为正确答案”按钮。谢谢你! - 我们会持续关注帖子,从最后一条回复发出后持续7周,之后的回复将被忽略。 如果您之后有相关问题,请另开新帖并引用已关闭的帖子。 ------------------------------------------------------------------------------- Re: What is "Secure Box version"? 嗨@djdirkj , 是的,SE050A上的所有这些参数都是静态的。 祝你有美好的一天, 坎 ------------------------------------------------------------------------------- 笔记: - 如果此回复解答了您的问题,请点击“标记为正确答案”按钮。谢谢你! - 我们会持续关注帖子,从最后一条回复发出后持续7周,之后的回复将被忽略。 如果您之后有相关问题,请另开新帖并引用已关闭的帖子。 -------------------------------------------------------------------------------
View full article
SE050脆弱性報告   SE050に関する技術サポートの質問があります。私たちはSE050を使用する製品をマーケットに投入しており、この製品は現場でのソフトウェアアップデートを受けません。EUサイバーレジリエンス法(CRA)に基づき、当社は使用するコンポーネントの脆弱性を監視し、悪用された脆弱性や重大なインシデントを規定の期限内に報告する義務を負っています。   教えていただけますか: - NXPはSE050に対して脆弱性開示やセキュリティ通知プロセス(例:メーリングリスト、セキュリティアドバイザリーページ、PSIRTフィードなど)を運営しており、私たちが登録または監視できるか? - SE050の既知の脆弱性およびその状況(修正済み、緩和済み、適用不可)は、この特定の製品ラインがフィールドアップデートをサポートしていない場合、どのようにお客様に伝えられますか? 手動で確認するのではなく、事前に通知を受け取る方法はありますか? SE050 Re: SE050 vulnerability reporting こんにちは、 @djdirkj さん。 [製品セキュリティの脆弱性|NXPセミコンダクターズ|https://www.nxp.com/support/support/product-security-vulnerability:PSIRT]PSIRTチームは脆弱性を報告し、評価し、適切な解決策を見つけ、製品の影響を受けた購入者(直接お客様や遠隔地)に連絡し、彼らが購入者に通知します。 誤りや緩和策は訂正表やユーザーガイダンスに記載されています。誰でも、製品ページのウェブサイトで「アラートを受け取る」オプションをクリックすることで、文書の更新情報を入手できます。 すてきな一日を、 カン ------------------------------------------------------------------------------- 注記: この投稿があなたの質問への回答になっている場合は、「正解としてマーク」ボタンをクリックしてください。ありがとうございます! - 前回の投稿から7週間Threadをフォローしており、その後の返信は無視しています もし後で関連する質問があれば、新しいThreadを開き、閉じたThreadを参照してください。 -------------------------------------------------------------------------------
View full article
Is it possible to reprovision the i.MX93 board? I have already provisioned my FRDM i.MX93 board using EdgeLock 2GO, and the provisioning completed successfully.Now I would like to reprovision the same board with a new or updated set of secure objects, such as a key pair and X.509 certificate.Is reprovisioning supported on an already provisioned i.MX93 device?If yes, could you please clarify the recommended procedure? Specifically, do the previously provisioned secure objects need to be deleted or reset before provisioning again, or can they be updated through EdgeLock 2GO?Also, are there any restrictions or irreversible settings that I should be aware of before attempting reprovisioning? The logs:-- ERROR: iot_agent_utils_create_self_signed_edgelock2go_certificate L#1035 mbedtls_pk_setup_opaque failed: 0xffffc180 ERROR: iot_agent_utils_write_edgelock2go_datastore L#1150 iot_agent_utils_create_self_signed_edgelock2go_certificate failed: 0xffffffff ERROR: iot_agent_utils_create_self_signed_edgelock2go_certificate L#1035 mbedtls_pk_setup_opaque failed: 0xffffc180 ERROR: iot_agent_utils_write_edgelock2go_datastore L#1150 iot_agent_utils_create_self_signed_edgelock2go_certificate failed: 0xffffffff ERROR: iot_agent_utils_create_self_signed_edgelock2go_certificate L#1035 mbedtls_pk_setup_opaque failed: 0xffffc180 ERROR: iot_agent_update_device_configuration_from_constants L#614 iot_agent_utils_create_self_signed_edgelock2go_certificate failed: 0xffffffff ERROR: iot_agent_update_device_configuration L#657 iot_agent_update_device_configuration_from_constants failed with 0xffffffff Status(oem-prov-app): FAILURE FRDM-Training Hands-On Training Security Yocto Project Re: Is it possible to reprovision the i.MX93 board? Hello, It is possible to reprovision, EdgeLock 2GO is designed for full lifecycle management, including updating, rotating, or revoking certificates and keys after initial deployment. Could you please share which steps did you follow for secure provisioning? You need to be aware of procedures that involves burned configurations in fuses such as keys, life cycle, etc. Best regards. Re: Is it possible to reprovision the i.MX93 board? Thanks for confirming reprovisioning is supported at the service level. To clarify: this isn't a fresh provisioning attempt — it's a reprovisioning attempt on a board that already provisioned successfully once (lifecycle OEM_OPEN, ELE firmware 2.0.5-7a34cee, with a key and certificate object already present from the first pass). On this second pass, oem-prov-app fails inside iot_agent_update_device_configuration_from_constants() → iot_agent_utils_create_self_signed_edgelock2go_certificate(), at the mbedtls_pk_setup_opaque() call, returning MBEDTLS_ERR_PK_BAD_INPUT_DATA (0xffffc180). Versions: el2go-agent 6.4.2-r0, smw 5.3-r0, mbedtls 3.6.5-r0. Two questions: 1.Does reprovisioning require explicitly erasing the existing key object (via psa_destroy_key or the SMW key-storage API) before rerunning oem-prov-app, or should the agent overwrite it in place at the same key ID? We're currently not doing any explicit erase step. 2.Is there a known compatibility issue between el2go-agent 6.4.2-r0 and smw 5.3-r0 specifically on the reprovisioning/update path — since we saw this same error during initial bring-up too, and suspected a version mismatch there as well? Also — can you confirm the provisioned key and cert objects live in ELE-managed NVM rather than fuses, so a failed reprovisioning attempt doesn't leave that key ID permanently unusable? Re: Is it possible to reprovision the i.MX93 board? Hello, Thank you for the information. 1. Yes, perform a key store reprovisioning using a signed message. A key store re-provisioning results in erasing all the key stores handled by the HSM. 2. No, there are no compatibility issues reported. 3. That is correct, application keys and certificates are stored in ELE-managed NVM, not in fuses. Best regards.
View full article
自分のNXPアカウントにS32 Design Studioライセンスを移管/再登録する方法 こんにちは、 サポートチームの皆様、 これは2番目のメッセージです (まずはこちら: https ://community.nxp.com/t5/MPC5xxx/Request-for-Software-License-Extension-Due-to-Expiration/mp/2396968#M28490) 私は元マネージャーから仕事用PCを引き継ぎましたが、S32 Design Studioは私のではなく彼のNXPアカウントでまだ有効化されています。そのため、私のマシンにインストールされているライセンスの有効期限が切れてしまったようです。 自分のライセンスが2028年まで有効であることを確認したので、このPCのS32DSを前の所有者ではなくNXPのアカウントとライセンスに切り替えたいと考えています。 正しい手順を教えてもらえますか?具体的には: 1. 前のアカウントに紐づいた既存のアクティベーションを無効化または解除する方法はありますか? 2. 自分のアカウント認証情報でS32DSを再アクティベートできますか?それとも完全なアンインストールとクリーンインストールが必要ですか? ご協力ありがとうございます。 よろしくお願いいたします。 Re: How to transfer/re-register an S32 Design Studio license to my own NXP account こんにちは、 前のユーザーの古いアクティベーションコードを使うことができます。アクティベーションコードは特定のアカウントにコネクテッドしていません。 古いコードで既存のインストールを再開できます。
View full article
S32K OTAロールバック 皆さんこんにちは。S32K3シリーズのHSE ABSwap OTAロールバック機構について質問させてください。私の理解では、パーティションAが安定したパーティションである場合、パーティションAからパーティションBに切り替えると、パーティションBでハードフォールトやウォッチドッグタイムアウトなどのエラーが発生します。OTAエラーカウンタが減少し、エラーカウンタが0になると、プログラムはパーティションBを不安定なパーティションと判断し、パーティションAに戻ります。このメカニズムは正しいでしょうか?もし正しくない場合、OTAロールバック機構とはどのようなものですか? Re: S32K OTA Rollback こんにちは、@RootOf3 S32K3 HSE AB Swapの場合、ロールバックメカニズムは、HardFaultやウォッチドッグリセットなどのHSE監視ランタイム障害に基づいていません。 HSE自体は、新たに起動されたアプリケーションの安定性をアプリケーションの実行時の挙動に基づいて判断しません。ABスワップが実行されると新しいイメージが有効になり、通常はユーザーのブートローダーやアプリケーションが更新が成功したかロールバックを要求すべきかを判断します。 Secure Bootも復旧戦略の一部として利用できます。アクティブなイメージの認証に失敗した場合、ブートフローは設定されたブートフローやお客様のソフトウェアデザインに応じて、代替イメージまたは専用のリカバリーイメージを実行するよう設計できます。有効なリカバリーや代替イメージが実行されると、必要に応じてソフトウェアは別のABスワップを要求できます。 まとめると、HSEはSecure Boot、イメージ認証、ABスワップの仕組みを提供しますが、実際のロールバックポリシー、例えばランタイムの失敗検出方法やシステムが前のイメージに戻るタイミングは、ユーザーのブートローダー/アプリケーションによって実装されます。 よろしくお願いいたします。 ルーカス
View full article
KW45B41Z EVK not programming over on board Debugger MCU Link. Hi, I am trying to program the KW45B41Z-EVK using the kw45b41zevk_hello_world SDK example code. When I start debugging, the onboard debugger gets detected, but then I get the following error: 0 Available SWD Devices detected. Connect a device and try again. I have connected the USB cable to J14 and left JP22 open (to program using the onboard debugger itself). Also, JP28 pins 1 and 2 are shorted, as mentioned in the KW45UM. However, even after that, I am unable to program and debug the example. I have also tried the kw45b41zevk_led_blinky SDK example, but it behaves in the same way. I also tried using an external debugger to debug the board by shorting JP22, as mentioned in the KW45UM, but I am getting the same issue. I have attached a screenshot of the issue I am facing. I also tried to erase the flash and write the image using the Secure Provisioning Tool. First, I entered ISP mode by shorting JP25 to enable SW4, then long-pressed SW4 and Reset (SW3). Once the Test Connection passed, I erased the flash (location 0x00000000, size 0x100000) successfully. Then I used the following image: ${SPT_INSTALL_BIN}\data\sample_data\targets\KW45B41Z8\source_images\kw45b41zevk_led_blinky.s19 I was able to build and program the image successfully, and the intended RGB LED1 is also blinking indicating that KW45B41Z microcontroller is working fine. However, even after this, I am still unable to program or debug the board. Re: KW45B41Z EVK not programming over on board Debugger MCU Link. Hi, @kaif1  Which IDE are you using?  MCUXpresso IDE or MCUXpresso for VS Code? Let me have a try on my side, then let you know the default jumper settings. Best regards, Christine. Re: KW45B41Z EVK not programming over on board Debugger MCU Link. Hi, @kaif1  Please refer to my jumper settings, and I verified on my local side, I can flash hello_world example into the board successfully. And I am using MCUXpresso IDE with SDK 25.12.00. Please have a try with my jumper settings and then let me know whether it works for you . Best regards, Christine.
View full article
即使使用恩智浦的演示图像,frdm-imx93 也无法启动 我正试图从 SD 卡中调出 frdm-imx93。从 emmc 可以正常工作。 我从恩智浦网站链接下载了ZIPRev4.0Jun25, 20252.45 MBLF_v6.6.36-2.1.0_images_FRDM_4.0_IMX93。然后我执行了以下操作: zstd -d imx-image-full-imx93frdm.rootfs.wic.zst sudo dd if=imx-image-full-imx93frdm.rootfs.wic of=/dev/sdc bs=1M status=progress&& sync sudo dd if=imx-boot-imx93frdm-sd.bin-flash_singleboot of=/dev/sdc bs=1k seek=32 status=progress 然后在设置 SW1 [3:0] =0011 之后,我把 SD 卡放进插槽里尝试启动。 但是,启动过程不会超过此点: U-Boot SPL 2024.04+gde16f4f1722+p0(Sep 02 2024 - 10:44:35 +0000) SOC: 0xa1009300 LC: 0x2040010 PMIC: PCA9451A PMIC: 过驱动电压模式 DDR: 3733MTS DDR: 3733MTS M33 准备 ok 请尽快提供帮助... 提前感谢! Re: frdm-imx93 not booting even with demo images from NXP 我在串行端口上看到了同样的情况,我已经尝试了多种电缆 Re: frdm-imx93 not booting even with demo images from NXP 你好 当您执行此过程时,您在板串行端口中看到什么错误? 如果无法进入快速启动模式,请尝试使用另一根 USB 电缆。 顺祝商祺! Re: frdm-imx93 not booting even with demo images from NXP 我稍稍领先,但还没有进入操作系统。我认为问题在于我的启动驱动器的内容,以及单启动二进制文件本身。 再一次,我需要一个了解董事会的人来帮助我解决这个问题。 Re: frdm-imx93 not booting even with demo images from NXP 你好,我也遇到了同样的问题。在 Windows 和 Linux 以及不同的 Linux 发行版上尝试了不同的映像。EMMC 和 SD 卡均无法使用 你想明白了吗? Re: frdm-imx93 not booting even with demo images from NXP Hello 我就是这么做的: root @debian:/mnt/host/lf_v6.6.36-2.1.0_images_frdm_3.0_i.mx93# uuu-V-b sd_all imx-boot-imx93frdm-sd.bin-flash_singlebootimx-image-full-imx93frdm.rootfs.wic.zst 用于 nxp imx 芯片的 uuu(通用更新实用程序) -- libuuu_1.5.243-5-g124d086   内置配置: Pctl 芯片 Vid Pid BcdVersion Serial_No ================================================== SDPS:MX8QXP 0x1fc9 0x012f [0x0002...0xffff] SDPS:MX8QM 0x1fc9 0x0129 [0x0002...0xffff] SDPS: MX8DXL 0x1fc9 0x0147 SDPS: MX28 0x15a2 0x004f SDPS: MX815 0x1fc9 0x013e SDPS: MX865 0x1fc9 0x0146 SDPS: MX8ULP 0x1fc9 0x014a SDPS: MX8ULP 0x1fc9 0x014b SDPS: MX93 0x1fc9 0x014e SDPS: MX91 0x1fc9 0x0159 SDPS: MX95 0x1fc9 0x015d SDPS: MX95 0x1fc9 0x015c SDPS: MX943 0x1fc9 0x0027 SDPS: MX952 0x1fc9 0x0028 SDP:MX7D 0x15a2 0x0076 SDP:MX6Q 0x15a2 0x0054 SDP:MX6D 0x15a2 0x0061 SDP:MX6SL 0x15a2 0x0063 SDP:MX6SX 0x15a2 0x0071 SDP:MX6UL 0x15a2 0x007d SDP:MX6ULL 0x15a2 0x0080 SDP:MX6SLL 0x1fc9 0x0128 SDP:MX7ULP 0x1fc9 0x0126 SDP:MXRT106X 0x1fc9 0x0135 SDP:MX8MM 0x1fc9 0x0134 SDP:MX8MQ 0x1fc9 0x012b SDPU:SPL 0x0525 0xb4a4 [0x0000..0x04ff] SDPV: SPL1 0x0525 0xb4a4 [0x0500...0x9998] SDPV: SPL1 0x1fc9 0x0151 [0x0500...0x9998] SDPU:SPL 0x0525 0xb4a4 [0x9999...0x9999] SDPU:SPL 0x3016 0x1001 [0x0000..0x04ff] SPL 0x3016 0x1001 [0x0000..0x04ff SDPV: SPL1 0x3016 0x1001 [0x0500..0x9998] FBK: 0x066f 0x9afe FBK: 0x066f 0x9bff FBK: 0x1fc9 0x0153 FB: 0x0525 0xa4a5 FB: 0x18d1 0x0d02 FB: 0x3016 0x0001 FB: 0x1fc9 0x0152 FB: 0x0483 0x0afb FB: 0x1d6b 0x0104   运行内置脚本:   uuu_version 1.4.149   # @_flash.bin | 可从 wic 映像中提取的引导加载程序 # @_image [_flash.bin]| 将 WIC 映像刻录到 Emmc。     # 当 i.MX6/7、i.MX8MM、i.MX8MQ 时,将运行此命令 SDP:启动-f imx-启动-imx93frdm-sd.bin-flash_singleboot-扫描限制 0x800000   # 当 ROM 支持流模式时,执行此命令 # i.MX8QXP、i.MX8QM SDPS:启动-scanterm-f imx-boot-imx93frdm-sd.bin-flash_singleboot-扫描限制 0x800000   # 以下命令在启用 SPL 时执行,若未使用 SPL 则跳过 # SDPU 将被弃用。请使用 SDPV 而不是 SDPU # { SDPU:延迟 1000 SDPU:写入-f imx-boot-imx93frdm-sd.bin-flash_single启动-offset 0x57c00 -scanlimited 0x800000 SDPU: 跳转 -scanlimited 0x800000 # }   # 以下命令在启用 SPL 时执行,若未使用 SPL 则跳过 # 如果 (SPL 支持 SDPV) # { SDPV:延迟 1000 SDPV:写入-f imx-启动-imx93frdm-sd.bin-flash_singleboot-skipspl -scanterm -scanlimited 0x800000 SDPV: 跳转 -scanlimited 0x800000 # }   FB: ucmd setenv fastboot_dev mmc FB: ucmd setenv mmcdev${sd_dev} FB:ucmd mmc dev ${sd_dev} FB: flash -raw2sparse all imx-image-full-imx93frdm.rootfs.wic.zst/* FB:flash-scanterm-scanlimited 0x800000 引导加载程序 imx-boot-imx93frdm-sd.bin-flash_singleboot FB:已完成     等待已知的 USB 设备出现... 1:2 连接新的 USB 设备- 1:2-> 启动 Cmd:SDPS: 启动 -scanterm -f imx-boot-imx93frdm-sd.bin-flash_singleboot-扫描限制 0x800000 1:2->Fail HID(W):LIBUSB_ERROR_TIMEOUT (-7)(20.02s)     顺祝商祺! Re: frdm-imx93 not booting even with demo images from NXP 你好 您使用的是哪个命令? 我无法重现。 顺祝商祺! Re: frdm-imx93 not booting even with demo images from NXP 嗨,是的。在 Windows 和 Linux 上都会超时,在 Linux 上会出现分段故障。 Re: frdm-imx93 not booting even with demo images from NXP 你好 您尝试用 UUU 闪存了吗? 顺祝商祺! Re: frdm-imx93 not booting even with demo images from NXP 你好 您在串行端口看到了什么?能进入快速启动模式吗? 您是否尝试过使用另一个电路板支持包版本。我这边仍然无法重现这个问题。 顺祝商祺! Re: frdm-imx93 not booting even with demo images from NXP 你好 在串行端口上,我只看到 SPL 输出。它永远无法达到完整的 U-Boot,所以我无法进入 U-Boot 提示符或快速启动模式。 使用官方 Rev 4.0 映像的串行输出: U-Boot SPL 2024.04+gde16f4f1722+p0(Sep 02 2024 - 10:44:35 +0000) SOC: 0xa1009300 LC: 0x2040010 PMIC: PCA9451A PMIC: Over Drive Voltage Mode DDR: 3733MTS DDR: 3733MTS M33 ready ok 然后就没有其他输出了。 我还测试了以 32 KiB 偏移量写入 SD 卡的重建版 Flexbuild/U-Boot 2025.04 启动映像。该板执行新的 SPL,但会在同一点停止: U-Boot SPL 2025.04(2026 年 4 月 26 日-16:21:54 +0000) PMIC:PCA9451A PMIC:过载电压模式 DDR:3733MTS DDR:3733 MTS DDR:3733MTS M33 准备好了 所以我无法进入快速启动模式,因为它无法达到完整的 U-Boot。 我测试了这些 电路板支持包/图片: 1.官方 FRDM-i.MX93 Rev 4.0 映像: LF_v6.6.36-2.1.0_images_FRDM_4.0_IMX93 2。我自己为机器编译的 Yocto =imx93FRDM 3.重建的 Flexbuild/U-Boot 2025.04 SPL/Container 官方 Rev 4.0 和我的 Yocto 版本使用了这个启动映像哈希: 7aba6102e5ec64add64add632cd6667e77fa3f6f6f6f6f6f6fd72c314e4c01f2964c0fc056a5f imx-boot-imx93frdm-sd.bin-flash_singleboot UUU 在闪烁前也会出现故障。检测到主板: MX93 SDPS 0x1FC9:0x014E 但是 SDPS:启动超时: 启动 cmd: sdps: boot-scanterm-f imx-boot-imx93frdm-sd.bin-flash_singleboot-scanlimited 0x800000 Fail HID(W):LIBUSB_ERROR_TIMEOUT 这种情况在 Linux 和 Windows 系统上都会发生,在尝试了另一台笔记本电脑后也是如此。 我还验证了 SD 启动模式的选择:选择 SD 启动模式且未插入 SD 卡时,没有串行输出。插入 SD 卡后,SPL 在 M33 准备就绪后启动和停止。 因此,目前该主板从未达到过U-boot/Fastboot。 Re: frdm-imx93 not booting even with demo images from NXP 我终于成功了。 按照规格使用 32GB SD 卡 从恩智浦的 Yocto 链接中克隆了代码,编译了代码,然后如文档中所述 将其闪存到卡中,然后按上述方式启动。这对我很有用。我认为问题在于之前尝试使用的 uboot 二进制文件是针对 evm 的,而不是 frdm 的。 Re: frdm-imx93 not booting even with demo images from NXP 我也遇到了同样的问题,我尝试了 i.mx93 frdm 门户网站上的所有 4 个版本, UUU 总是抛出 Fail HID(W):LIBUSB_ERROR_TIMEOUT (-7)(20.02s) 用于闪入 emmc 和 sd。 Re: frdm-imx93 not booting even with demo images from NXP 你解决了吗?我遇到了同样的问题 Re: frdm-imx93 not booting even with demo images from NXP 大家好 我让板正常工作了,显然对FRDM-i.MX93板进行了硬件改动,如果你的U-启动加载程序已经过时(2025年之前),那么你就会看到这个问题。 在串行下载器模式下尝试启动或刷机时,可以在串行监视器中查看 U-Boot 版本。 旧 U-Boot 版本示例:U-Boot SPL 2024.04+gde16f4f1722+p0(Sep 02 2024 - 10:44:35 +0000) 用下面的命令试试这个引导加载程序,应该会有效果 🙂 imx-boot-imx93-11x11-lpddr4x-frdm-sd.bin-frdm-sd.bin-flash_singleboot UUU 命令:uuu -b sd_all imx-boot-imx93-11x11-lpddr4x-frdm-sd.bin-flash_singleboot < 你的 frdm-i. mx 93 启动 > .wic.zst 如果上面的引导加载程序确实对你有用,那么这就是当前的 yocto i.MX BSP 存储库,有改动:GitHub-nxp-imx/meta-imx:i.MX Yocto Project i.MX BSP Layer · GitHub Re: frdm-imx93 not booting even with demo images from NXP 你的 U-Boot 看起来很旧,显然硬件发生了变化,只有 2025 年之后的版本才支持 FRDM-IMX93。 请参考我上面的帖子,将引导加载程序连同你的镜像一起刷新。 希望对你有用 🙂 Re: frdm-imx93 not booting even with demo images from NXP 我也遇到了同样的问题。 也许这是新主板的板缺陷? 😞 Re: frdm-imx93 not booting even with demo images from NXP 嗨,@jventura、@qingyu、@ssb1、@skrimby123 请试试这个。 Re: frdm-imx93 not booting even with demo images from NXP 我已经通过 support.nxp 解决了这个问题。 在 "演示图像下载 "页面,选择 1.0 版而不是 4.0 版,然后使用最新的 uuu 下载图像到 borad Re: frdm-imx93 not booting even with demo images from NXP 对不起,我来晚了。 是的,可能就是这样。我的 Uboot 版本: U-Boot SPL 2024.04+gde16f4f1722+p0(Sep 02 2024 - 10:44:35 +0000) 但帖子中正确引导程序的链接坏了,我无法下载它 😞 Re: frdm-imx93 not booting even with demo images from NXP 我遇到了同样的错误,UART 调试输出结果是: U-Boot SPL 2024.04+gde16f4f4f1722+p0(Sep 02 2024 - 10:44:35 +0000) SOC: 0xa1009300 LC: 0x2040010 PMIC: PCA9451A PMIC: Over Drive Voltage Mode DDR: 3733MTS DDR: 3733MTS M33 ready ok Re: frdm-imx93 not booting even with demo images from NXP 引导加载程序的链接无法正常工作 Re: frdm-imx93 not booting even with demo images from NXP 请更新引导程序的下载链接。对我们许多人来说,这仍然是一个持续存在的问题,目前还没有找到解决方案。
View full article
how i can build FCB data from MCUXpresso Secure Provisioning Tool Hello. I am currently testing OTFAD configuration on an RT1010 EVK board. I would like to configure OTFAD using MCUXpresso Secure Provisioning Tool 26.03 and build the project to generate binary files. The build results are: MIMXRT1011_Project.bin MIMXRT1011_Project_hab.bin otfad_keyblobs.bin unsigned_MIMXRT1010_flashloader.bin These are the four files. When I perform a write operation using MCUXpresso Secure Provisioning Tool 26.03 and read the flash memory, the program includes data presumed to be FCB at the 0x0400 region. However, it appears that there is no file corresponding to the FCB among the built files. Is it possible to generate a file containing FCB information during the build process? i.MXRT 101x Re: how i can build FCB data from MCUXpresso Secure Provisioning Tool Thank you for your reply. I created the FCB by referring to the link you provided. I have one more question. In which document can I find the explanation regarding the key data for Region 0 info in the OTFAD settings? The parts I am curious about are the User key data and counter data sections. Could you please explain it to me? Thank you. Re: how i can build FCB data from MCUXpresso Secure Provisioning Tool Hi @TnseoRnr, Please see the following link from the SPT Documentation, which specifies the process to create a complete FCB from the simplified configuration: https://mcuxpresso.nxp.com/secure/26.03/05_user_interface.html#spi-nor It also mentions that the FCB can be generated from MCUXpresso via the Peripherals tool if you prefer to do so. One last note, keep in mind that there is a newer version of SPT available (v26.06), so I would suggest you continue development on the latest version. BR, Edwin. Re: how i can build FCB data from MCUXpresso Secure Provisioning Tool Hi @TnseoRnr, If you mean how these fields would be used on the OTFAD configuration you are creating, perhaps this link might help: https://mcuxpresso.nxp.com/secure/latest/06_processor_specific_workflow.html#booting-otfad-encrypted-image-unsigned-with-user-keys That said, if you are looking for the inner workings or a more in-depth explanation of how these keys are used, you would need to request access to the RT1010 secure files, and look in the Security Reference Manual, which precisely explains the security features of the RT1010 in detail. You will be prompted to download this file, or request access if needed, by clicking on the "Secure" checkbox of the documentation section of the RT1010 product page: https://www.nxp.com/products/i.MX-RT1010#documentation BR, Edwin.
View full article
KW45B41Z EVK 无法通过板载调试器 MCU Link 进行编程。 你好, 我正在尝试使用kw45b41zevk_hello_world SDK 示例代码对KW45B41Z-EVK进行编程。开始调试时,板载调试器被检测到,但随后出现以下错误: 未检测到可用短波除尘设备。 连接设备后再试一次。 我已将 USB 电缆连接到J14 ,并将JP22 保持开路状态(以便使用板载调试器本身进行编程)。此外,如KW45UM中所述, JP28 引脚 1 和 2 短路了。然而,即使那样,我仍然无法对示例进行编程和调试。 我也尝试过kw45b41zevk_led_blinky SDK 示例,但它的表现也一样。 我还尝试使用外部调试器通过短接JP22来调试电路板,正如KW45UM中所述,但我遇到了同样的问题。 我附上了遇到的问题的截图。 我还尝试使用安全配置工具擦除闪存并写入映像。首先,我短接JP25以启用SW4 ,进入 ISP 模式,然后长按SW4和RESET (SW3) 。测试连接通过后,我成功擦除了闪存(位置0x00000000 ,大小0x100000 )。然后我使用了以下图片: ${SPT_INSTALL_BIN} \data\sample_data\targets\KW45B41Z8\source_images\kw45b41zevk_led_blinky.s19 我已经成功构建并编程了图像,并且预期的RGB LED1也闪烁,表明 KW45B41Z 微控制器工作正常。然而,即使这样,我仍然无法对电路板进行编程或调试。 Re: KW45B41Z EVK not programming over on board Debugger MCU Link. 你好, @kaif1 你使用的是哪个集成开发环境(IDE)? MCUXpresso IDE 还是 MCUXpresso for VS Code? 让我先试一下,然后告诉你默认的跳线设置。 顺祝商祺! Christine。 Re: KW45B41Z EVK not programming over on board Debugger MCU Link. 你好, @kaif1 请参考我的跳线设置,我在本地验证过,可以成功地将 hello_world 示例烧录到板上。 我使用的是 MCUXpresso IDE,SDK 版本为 25.12.00。 请尝试一下我的跳线设置,然后告诉我是否有效。 顺祝商祺! Christine。
View full article
IMX95 Aquila ISP の使用状況 こんにちは、 私はAquila IMX95評価キット2を2つのov5640センサ(https://www.toradex.com/cart)搭載で購入しました。 センサのドライバは持っています。基板は正しくフラッシュされ、ISPモジュールもアクティブになっています。 root@imx95-1:~# lsmod | grep -i isp neoisp 69632 0 カメラはlibcameraに表示されています。 root@imx95-1:~# libcamera -sh: libcamera: command not found root@imx95-1:~# cam -l [17:17:31.010001558] [2747] INFO Camera camera_manager.cpp:327 libcamera v0.4.0+dirty (2026-06-03T11:26:44UTC) [17:17:31.044088474] [2748] WARN CameraSensor camera_sensor_legacy.cpp:354 'ov5640 4-003c': Recommended V4L2 control 0x009a0922 not supported [17:17:31.044159391] [2748] WARN CameraSensor camera_sensor_legacy.cpp:426 'ov5640 4-003c': The sensor kernel driver needs to be fixed [17:17:31.044178224] [2748] WARN CameraSensor camera_sensor_legacy.cpp:428 'ov5640 4-003c': See Documentation/sensor_driver_requirements.rst in the libcamera sources for more information [17:17:31.044882558] [2748] WARN CameraSensor camera_sensor_legacy.cpp:594 'ov5640 4-003c': Failed to retrieve the camera location [17:17:31.044918891] [2748] WARN CameraSensor camera_sensor_legacy.cpp:616 'ov5640 4-003c': Rotation control not available, default to 0 degrees [17:17:31.045722599] [2748] WARN CameraSensor camera_sensor_legacy.cpp:354 'ov5640 3-003c': Recommended V4L2 control 0x009a0922 not supported [17:17:31.045762974] [2748] WARN CameraSensor camera_sensor_legacy.cpp:426 'ov5640 3-003c': The sensor kernel driver needs to be fixed [17:17:31.045783849] [2748] WARN CameraSensor camera_sensor_legacy.cpp:428 'ov5640 3-003c': See Documentation/sensor_driver_requirements.rst in the libcamera sources for more information [17:17:31.046362016] [2748] WARN CameraSensor camera_sensor_legacy.cpp:594 'ov5640 3-003c': Failed to retrieve the camera location [17:17:31.046388308] [2748] WARN CameraSensor camera_sensor_legacy.cpp:616 'ov5640 3-003c': Rotation control not available, default to 0 degrees [17:17:31.048068724] [2748] WARN V4L2 v4l2_pixelformat.cpp:346 Unsupported V4L2 pixel format AR30 [17:17:31.048640224] [2748] WARN V4L2 v4l2_pixelformat.cpp:346 Unsupported V4L2 pixel format AR30 [17:17:31.048904099] [2748] WARN V4L2 v4l2_pixelformat.cpp:346 Unsupported V4L2 pixel format AR30 [17:17:31.049145974] [2748] WARN V4L2 v4l2_pixelformat.cpp:346 Unsupported V4L2 pixel format AR30 [17:17:31.049451724] [2748] WARN V4L2 v4l2_pixelformat.cpp:346 Unsupported V4L2 pixel format AR30 [17:17:31.049694683] [2748] WARN V4L2 v4l2_pixelformat.cpp:346 Unsupported V4L2 pixel format AR30 [17:17:31.049937141] [2748] WARN V4L2 v4l2_pixelformat.cpp:346 Unsupported V4L2 pixel format AR30 [17:17:31.050184266] [2748] WARN V4L2 v4l2_pixelformat.cpp:346 Unsupported V4L2 pixel format AR30 [17:17:31.050477516] [2748] WARN V4L2 v4l2_pixelformat.cpp:346 Unsupported V4L2 pixel format AR30 [17:17:31.050720433] [2748] WARN V4L2 v4l2_pixelformat.cpp:346 Unsupported V4L2 pixel format AR30 [17:17:31.050962433] [2748] WARN V4L2 v4l2_pixelformat.cpp:346 Unsupported V4L2 pixel format AR30 [17:17:31.051201724] [2748] WARN V4L2 v4l2_pixelformat.cpp:346 Unsupported V4L2 pixel format AR30 [17:17:31.051441724] [2748] WARN V4L2 v4l2_pixelformat.cpp:346 Unsupported V4L2 pixel format AR30 [17:17:31.051683308] [2748] WARN V4L2 v4l2_pixelformat.cpp:346 Unsupported V4L2 pixel format AR30 [17:17:31.051925308] [2748] WARN V4L2 v4l2_pixelformat.cpp:346 Unsupported V4L2 pixel format AR30 [17:17:31.052259141] [2748] WARN V4L2 v4l2_pixelformat.cpp:346 Unsupported V4L2 pixel format AR30 [17:17:31.052510099] [2748] WARN V4L2 v4l2_pixelformat.cpp:346 Unsupported V4L2 pixel format AR30 [17:17:31.061185308] [2748] WARN V4L2 v4l2_pixelformat.cpp:346 Unsupported V4L2 pixel format AR30 [17:17:31.061469974] [2748] WARN V4L2 v4l2_pixelformat.cpp:346 Unsupported V4L2 pixel format AR30 [17:17:31.061736058] [2748] WARN V4L2 v4l2_pixelformat.cpp:346 Unsupported V4L2 pixel format AR30 [17:17:31.061988683] [2748] WARN V4L2 v4l2_pixelformat.cpp:346 Unsupported V4L2 pixel format AR30 [17:17:31.062242933] [2748] WARN V4L2 v4l2_pixelformat.cpp:346 Unsupported V4L2 pixel format AR30 [17:17:31.062489474] [2748] WARN V4L2 v4l2_pixelformat.cpp:346 Unsupported V4L2 pixel format AR30 [17:17:31.062733266] [2748] WARN V4L2 v4l2_pixelformat.cpp:346 Unsupported V4L2 pixel format AR30 [17:17:31.062980349] [2748] WARN V4L2 v4l2_pixelformat.cpp:346 Unsupported V4L2 pixel format AR30 [17:17:31.063228266] [2748] WARN V4L2 v4l2_pixelformat.cpp:346 Unsupported V4L2 pixel format AR30 [17:17:31.063470391] [2748] WARN V4L2 v4l2_pixelformat.cpp:346 Unsupported V4L2 pixel format AR30 [17:17:31.063712849] [2748] WARN V4L2 v4l2_pixelformat.cpp:346 Unsupported V4L2 pixel format AR30 [17:17:31.063953933] [2748] WARN V4L2 v4l2_pixelformat.cpp:346 Unsupported V4L2 pixel format AR30 [17:17:31.064216891] [2748] WARN V4L2 v4l2_pixelformat.cpp:346 Unsupported V4L2 pixel format AR30 [17:17:31.064463349] [2748] WARN V4L2 v4l2_pixelformat.cpp:346 Unsupported V4L2 pixel format AR30 [17:17:31.064706683] [2748] WARN V4L2 v4l2_pixelformat.cpp:346 Unsupported V4L2 pixel format AR30 [17:17:31.064958766] [2748] WARN V4L2 v4l2_pixelformat.cpp:346 Unsupported V4L2 pixel format AR30 [17:17:31.065200974] [2748] WARN V4L2 v4l2_pixelformat.cpp:346 Unsupported V4L2 pixel format AR30 Available cameras: 1: 'ov5640' (/base/soc/bus@42000000/i2c@42540000/camera@3c) 2: 'ov5640' (/base/soc/bus@42000000/i2c@426e0000/camera@3c) MIPが正常に動作しているかどうかを確認するために、GStreamerパイプラインを起動したところ、両方のカメラで安定した30fpsのストリームを取得することができました。v4l2-ctlを使ってスナップショットを撮ることにも成功しました。 今、AquilaのISPをカメラでテストしてみたいと思っています。 https://www.nxp.com/docs/en/user-guide/UG10215.pdfに従って環境変数を追加しました。 root@imx95-1:~# export LIBCAMERA_PIPELINES_MATCH_LIST='nxp/neo' しかし、そうするとlibcameraにカメラが検出されなくなり、なぜかはわかりません: root@imx95-1:~# cam -l [17:36:38.947430563] [2788] INFO Camera camera_manager.cpp:327 libcamera v0.4.0+dirty (2026-06-03T11:26:44UTC) Available cameras: root@imx95-1:~# お返事ありがとうございます ! 敬具 Re: IMX95 Aquila ISP usage ログを見たところ、問題はMIPIインターフェースやOV5640ドライバ自体には関係ないと思います。 事実: 両方のOV5640カメラはlibcameraによって検出されます GStreamer は30fpsでストリーミング可能です V4L2-CTLは画像を撮影できます センサードライバー、I2C通信、  CSI-2  links、メディアトポロジーがすべて正常に動作していることを示します。 重要な点は、NXP Neo ISPパイプラインがRAWのBayerセンサー入力を想定していることです。 OV5640は独自の内部画像処理パイプラインを持つSoCイメージセンサーであり、NXP BSPでは通常、RAWバイヤーセンサーとしてではなくYUV出力モード(例:YUV422)で使用されます。このような構成では、カメラは標準のV4L2/libcameraパイプラインを通じて使用できますが、Neo ISPパイプラインの要件には合致しません。 これは以下の理由を説明するだろう。 `cam -l` はデフォルトで両方の OV5640 カメラを表示します 設定後 export LIBCAMERA_PIPELINES_MATCH_LIST='nxp/neo' カメラは検出されなくなりました カメラはシステム内に存在しますが、NEOパイプラインハンドラーは互換性のあるカメラトポロジーを見つけられず、そのためlibcameraにはカメラが0台も露出します。 実際のセンサー出力フォーマットを確認するために、以下の出力を教えていただけますか: 「バッシュ」 media-ctl -p V4L2-ctl --list-formats-ext 特に、センサーが以下のようなRAWバイヤーフォーマットを露出しているかどうかに関心があります: SBGGR8 SBGGR10 SRGGB10 RG10 BA10 YUVフォーマット(例:YUYV/UYVY)のみが利用可能な場合、カメラはRAWモードで動作せず、Neo ISPパイプラインで処理できません。 OV5640ハードウェアはRAWバイヤー出力に対応していますが、BSPカメラドライバーではRAWサポートは一般的に有効ではなく、NXP Neo ISPスタックもセンサー固有のチューニングデータに依存しています。RAW出力が有効であっても、専用のOV5640チューニングプロファイルがないため、ISPの適切な動作(AE/AWB/画像品質チューニング)が妨げられる可能性があります。 もしNeo ISPフレームワーク自体を評価するのが目的なら、NXP ISPスタックで動作することが知られているセンサを使う方が簡単かもしれません。一般的な候補としては、以下のようなものがあります。 OS08A20 OX03C10 OX05B1S AR0521 AR1335(追加の調整作業が必要になる場合があります) 上記のコマンドの出力を教えてもらえますか?これにより、現在のOV5640の設定がRAWベイヤーフォーマットをシステムに公開しているかどうかを確認できます。 よろしくお願いします、 Re: IMX95 Aquila ISP usage ご返信ありがとうございます。 追加の確認を行いました。 おっしゃる通り、OV5640は最初は UYVYモードで動作していましたが、手動で1つのセンサーを RAWのBayer(SRGGB8)に切り替えました。 media-ctl -p は現在次のように表示します:   root@imx95-1:~# media-ctl -p Media controller API version 6.12.55 Media device information ------------------------ driver mxc-isi model FSL Capture Media Device serial bus info platform:4ad50000.isi hw revision 0x0 driver version 6.12.55 Device topology - entity 1: crossbar (13 pads, 11 links, 8 routes) type V4L2 subdev subtype Unknown flags 0 device node name /dev/v4l-subdev0 routes: 2/0 -> 5/0 [ACTIVE] 3/0 -> 6/0 [ACTIVE] 2/0 -> 7/0 [ACTIVE] 3/0 -> 8/0 [ACTIVE] 2/0 -> 9/0 [ACTIVE] 3/0 -> 10/0 [ACTIVE] 2/0 -> 11/0 [ACTIVE] 3/0 -> 12/0 [ACTIVE] pad0: SINK,MUST_CONNECT pad1: SINK,MUST_CONNECT pad2: SINK,MUST_CONNECT [stream:0 fmt:SRGGB8_1X8/1920x1080 field:none] <- "4ac10000.syscon:formatter@20":1 [ENABLED,IMMUTABLE] pad3: SINK,MUST_CONNECT [stream:0 fmt:UYVY8_1X16/1920x1080 field:none] <- "4ac10000.syscon:formatter@120":1 [ENABLED,IMMUTABLE] pad4: SINK,MUST_CONNECT <- "mxc_isi.output":0 [ENABLED,IMMUTABLE] pad5: SOURCE [stream:0 fmt:SRGGB8_1X8/1920x1080 field:none] -> "mxc_isi.0":0 [ENABLED,IMMUTABLE] pad6: SOURCE [stream:0 fmt:UYVY8_1X16/1920x1080 field:none] -> "mxc_isi.1":0 [ENABLED,IMMUTABLE] pad7: SOURCE [stream:0 fmt:SRGGB8_1X8/1920x1080 field:none] -> "mxc_isi.2":0 [ENABLED,IMMUTABLE] pad8: SOURCE [stream:0 fmt:UYVY8_1X16/1920x1080 field:none] -> "mxc_isi.3":0 [ENABLED,IMMUTABLE] pad9: SOURCE [stream:0 fmt:SRGGB8_1X8/1920x1080 field:none] -> "mxc_isi.4":0 [ENABLED,IMMUTABLE] pad10: SOURCE [stream:0 fmt:UYVY8_1X16/1920x1080 field:none] -> "mxc_isi.5":0 [ENABLED,IMMUTABLE] pad11: SOURCE [stream:0 fmt:SRGGB8_1X8/1920x1080 field:none] -> "mxc_isi.6":0 [ENABLED,IMMUTABLE] pad12: SOURCE [stream:0 fmt:UYVY8_1X16/1920x1080 field:none] -> "mxc_isi.7":0 [ENABLED,IMMUTABLE] - entity 15: mxc_isi.0 (2 pads, 2 links, 0 routes) type V4L2 subdev subtype Unknown flags 0 device node name /dev/v4l-subdev1 pad0: SINK [stream:0 fmt:UYVY8_1X16/1920x1080 field:none compose.bounds:(0,0)/1920x1080 compose:(0,0)/1920x1080] <- "crossbar":5 [ENABLED,IMMUTABLE] pad1: SOURCE [stream:0 fmt:YUV8_1X24/1920x1080 field:none crop.bounds:(0,0)/1920x1080 crop:(0,0)/1920x1080] -> "mxc_isi.0.capture":0 [ENABLED,IMMUTABLE] - entity 18: mxc_isi.0.capture (1 pad, 1 link) type Node subtype V4L flags 0 device node name /dev/video2 pad0: SINK <- "mxc_isi.0":1 [ENABLED,IMMUTABLE] - entity 26: mxc_isi.1 (2 pads, 2 links, 0 routes) type V4L2 subdev subtype Unknown flags 0 device node name /dev/v4l-subdev2 pad0: SINK [stream:0 fmt:UYVY8_1X16/1920x1080 field:none compose.bounds:(0,0)/1920x1080 compose:(0,0)/1920x1080] <- "crossbar":6 [ENABLED,IMMUTABLE] pad1: SOURCE [stream:0 fmt:YUV8_1X24/1920x1080 field:none crop.bounds:(0,0)/1920x1080 crop:(0,0)/1920x1080] -> "mxc_isi.1.capture":0 [ENABLED,IMMUTABLE] - entity 29: mxc_isi.1.capture (1 pad, 1 link) type Node subtype V4L flags 0 device node name /dev/video3 pad0: SINK <- "mxc_isi.1":1 [ENABLED,IMMUTABLE] - entity 37: mxc_isi.2 (2 pads, 2 links, 0 routes) type V4L2 subdev subtype Unknown flags 0 device node name /dev/v4l-subdev3 pad0: SINK [stream:0 fmt:UYVY8_1X16/1920x1080 field:none colorspace:jpeg xfer:srgb ycbcr:601 quantization:full-range compose.bounds:(0,0)/1920x1080 compose:(0,0)/1920x1080] <- "crossbar":7 [ENABLED,IMMUTABLE] pad1: SOURCE [stream:0 fmt:YUV8_1X24/1920x1080 field:none colorspace:jpeg xfer:srgb ycbcr:601 quantization:full-range crop.bounds:(0,0)/1920x1080 crop:(0,0)/1920x1080] -> "mxc_isi.2.capture":0 [ENABLED,IMMUTABLE] - entity 40: mxc_isi.2.capture (1 pad, 1 link) type Node subtype V4L flags 0 device node name /dev/video4 pad0: SINK <- "mxc_isi.2":1 [ENABLED,IMMUTABLE] - entity 48: mxc_isi.3 (2 pads, 2 links, 0 routes) type V4L2 subdev subtype Unknown flags 0 device node name /dev/v4l-subdev4 pad0: SINK [stream:0 fmt:UYVY8_1X16/1920x1080 field:none colorspace:jpeg xfer:srgb ycbcr:601 quantization:full-range compose.bounds:(0,0)/1920x1080 compose:(0,0)/1920x1080] <- "crossbar":8 [ENABLED,IMMUTABLE] pad1: SOURCE [stream:0 fmt:YUV8_1X24/1920x1080 field:none colorspace:jpeg xfer:srgb ycbcr:601 quantization:full-range crop.bounds:(0,0)/1920x1080 crop:(0,0)/1920x1080] -> "mxc_isi.3.capture":0 [ENABLED,IMMUTABLE] - entity 51: mxc_isi.3.capture (1 pad, 1 link) type Node subtype V4L flags 0 device node name /dev/video5 pad0: SINK <- "mxc_isi.3":1 [ENABLED,IMMUTABLE] - entity 59: mxc_isi.4 (2 pads, 2 links, 0 routes) type V4L2 subdev subtype Unknown flags 0 device node name /dev/v4l-subdev5 pad0: SINK [stream:0 fmt:UYVY8_1X16/1920x1080 field:none colorspace:jpeg xfer:srgb ycbcr:601 quantization:full-range compose.bounds:(0,0)/1920x1080 compose:(0,0)/1920x1080] <- "crossbar":9 [ENABLED,IMMUTABLE] pad1: SOURCE [stream:0 fmt:YUV8_1X24/1920x1080 field:none colorspace:jpeg xfer:srgb ycbcr:601 quantization:full-range crop.bounds:(0,0)/1920x1080 crop:(0,0)/1920x1080] -> "mxc_isi.4.capture":0 [ENABLED,IMMUTABLE] - entity 62: mxc_isi.4.capture (1 pad, 1 link) type Node subtype V4L flags 0 device node name /dev/video6 pad0: SINK <- "mxc_isi.4":1 [ENABLED,IMMUTABLE] - entity 70: mxc_isi.5 (2 pads, 2 links, 0 routes) type V4L2 subdev subtype Unknown flags 0 device node name /dev/v4l-subdev6 pad0: SINK [stream:0 fmt:UYVY8_1X16/1920x1080 field:none colorspace:jpeg xfer:srgb ycbcr:601 quantization:full-range compose.bounds:(0,0)/1920x1080 compose:(0,0)/1920x1080] <- "crossbar":10 [ENABLED,IMMUTABLE] pad1: SOURCE [stream:0 fmt:YUV8_1X24/1920x1080 field:none colorspace:jpeg xfer:srgb ycbcr:601 quantization:full-range crop.bounds:(0,0)/1920x1080 crop:(0,0)/1920x1080] -> "mxc_isi.5.capture":0 [ENABLED,IMMUTABLE] - entity 73: mxc_isi.5.capture (1 pad, 1 link) type Node subtype V4L flags 0 device node name /dev/video7 pad0: SINK <- "mxc_isi.5":1 [ENABLED,IMMUTABLE] - entity 81: mxc_isi.6 (2 pads, 2 links, 0 routes) type V4L2 subdev subtype Unknown flags 0 device node name /dev/v4l-subdev7 pad0: SINK [stream:0 fmt:UYVY8_1X16/1920x1080 field:none colorspace:jpeg xfer:srgb ycbcr:601 quantization:full-range compose.bounds:(0,0)/1920x1080 compose:(0,0)/1920x1080] <- "crossbar":11 [ENABLED,IMMUTABLE] pad1: SOURCE [stream:0 fmt:YUV8_1X24/1920x1080 field:none colorspace:jpeg xfer:srgb ycbcr:601 quantization:full-range crop.bounds:(0,0)/1920x1080 crop:(0,0)/1920x1080] -> "mxc_isi.6.capture":0 [ENABLED,IMMUTABLE] - entity 84: mxc_isi.6.capture (1 pad, 1 link) type Node subtype V4L flags 0 device node name /dev/video8 pad0: SINK <- "mxc_isi.6":1 [ENABLED,IMMUTABLE] - entity 92: mxc_isi.7 (2 pads, 2 links, 0 routes) type V4L2 subdev subtype Unknown flags 0 device node name /dev/v4l-subdev8 pad0: SINK [stream:0 fmt:UYVY8_1X16/1920x1080 field:none colorspace:jpeg xfer:srgb ycbcr:601 quantization:full-range compose.bounds:(0,0)/1920x1080 compose:(0,0)/1920x1080] <- "crossbar":12 [ENABLED,IMMUTABLE] pad1: SOURCE [stream:0 fmt:YUV8_1X24/1920x1080 field:none colorspace:jpeg xfer:srgb ycbcr:601 quantization:full-range crop.bounds:(0,0)/1920x1080 crop:(0,0)/1920x1080] -> "mxc_isi.7.capture":0 [ENABLED,IMMUTABLE] - entity 95: mxc_isi.7.capture (1 pad, 1 link) type Node subtype V4L flags 0 device node name /dev/video9 pad0: SINK <- "mxc_isi.7":1 [ENABLED,IMMUTABLE] - entity 103: mxc_isi.output (1 pad, 1 link) type Node subtype V4L flags 0 pad0: SOURCE -> "crossbar":4 [ENABLED,IMMUTABLE] - entity 110: 4ac10000.syscon:formatter@120 (2 pads, 2 links, 1 route) type V4L2 subdev subtype Unknown flags 0 device node name /dev/v4l-subdev9 routes: 0/0 -> 1/0 [ACTIVE] pad0: SINK [stream:0 fmt:UYVY8_1X16/1920x1080 field:none] <- "csidev-4ad40000.csi":1 [ENABLED,IMMUTABLE] pad1: SOURCE [stream:0 fmt:UYVY8_1X16/1920x1080 field:none] -> "crossbar":3 [ENABLED,IMMUTABLE] - entity 115: 4ac10000.syscon:formatter@20 (2 pads, 2 links, 1 route) type V4L2 subdev subtype Unknown flags 0 device node name /dev/v4l-subdev10 routes: 0/0 -> 1/0 [ACTIVE] pad0: SINK [stream:0 fmt:SRGGB8_1X8/1920x1080] <- "csidev-4ad30000.csi":1 [ENABLED,IMMUTABLE] pad1: SOURCE [stream:0 fmt:SRGGB8_1X8/1920x1080] -> "crossbar":2 [ENABLED,IMMUTABLE] - entity 120: csidev-4ad30000.csi (2 pads, 2 links, 1 route) type V4L2 subdev subtype Unknown flags 0 device node name /dev/v4l-subdev11 routes: 0/0 -> 1/0 [ACTIVE] pad0: SINK [stream:0 fmt:SRGGB8_1X8/1920x1080 colorspace:srgb xfer:srgb ycbcr:601 quantization:full-range] <- "ov5640 4-003c":0 [ENABLED] pad1: SOURCE [stream:0 fmt:SRGGB8_1X8/1920x1080 colorspace:srgb xfer:srgb ycbcr:601 quantization:full-range] -> "4ac10000.syscon:formatter@20":0 [ENABLED,IMMUTABLE] - entity 125: csidev-4ad40000.csi (2 pads, 2 links, 1 route) type V4L2 subdev subtype Unknown flags 0 device node name /dev/v4l-subdev12 routes: 0/0 -> 1/0 [ACTIVE] pad0: SINK [stream:0 fmt:UYVY8_1X16/1920x1080 field:none] <- "ov5640 3-003c":0 [ENABLED] pad1: SOURCE [stream:0 fmt:UYVY8_1X16/1920x1080 field:none] -> "4ac10000.syscon:formatter@120":0 [ENABLED,IMMUTABLE] - entity 130: ov5640 4-003c (1 pad, 1 link, 0 routes) type V4L2 subdev subtype Sensor flags 0 device node name /dev/v4l-subdev13 pad0: SOURCE [stream:0 fmt:SRGGB8_1X8/1920x1080@1/30 colorspace:srgb xfer:srgb ycbcr:601 quantization:full-range crop.bounds:(0,0)/2624x1964 crop:(336,434)/1952x1088] -> "csidev-4ad30000.csi":0 [ENABLED] - entity 134: ov5640 3-003c (1 pad, 1 link, 0 routes) type V4L2 subdev subtype Sensor flags 0 device node name /dev/v4l-subdev14 pad0: SOURCE [stream:0 fmt:UYVY8_1X16/1920x1080@1/30 field:none colorspace:srgb xfer:srgb ycbcr:601 quantization:full-range crop.bounds:(0,0)/2624x1964 crop:(336,434)/1952x1088] -> "csidev-4ad40000.csi":0 [ENABLED] (比較のため、2台目のOV5640はUYVYモードのままです) SO : OV5640 -> SRGGB8 CSI -> SRGGB8 フォーマッター -> SRGGB8 クロスバー -> SRGGB8 => RAWバイエルはセンサ、CSI、フォーマタを通じて正常に伝播されています。 neoispカーネルモジュールがロードされました。 root@imx95-1:~# modprobe neoisp root@imx95-1:~# lsmod | grep -i isp neoisp 69632 0 実行中のデバイスツリーにISPノードが存在します。   /sys/firmware/devicetree/base/soc/isp@4ae00000   => しかし、CSI/Formatter/ISIパイプラインを公開しているメディアデバイス(/dev/media0)は1台だけです。メディアグラフにはneoispのエンティティは現れません。メディアのグラフにneoispの存在は見当たりませんし、これが予想されるものなのかも分かりません。 => cam -l (libcamera) を実行しても、利用可能なカメラは返されません。 現時点ではRAWのBayerパスは機能しているようですが、Neo ISPがどこでアクティブなパイプラインの一部になるのかは特定できません。   ストリームが実際にNeo ISPによって処理されているか、単にCSI -> Formatter -> ISI経路をたどるのではなく、どうやって確認できますか?   また、 https://www.nxp.com/docs/en/user-guide/UG10215.pdf も参照してください。この構成に関する推奨ガイドはまだありますか?それとも、i.MX95 上で OV5640 + Neo ISP を使用するためのより具体的な参考資料はありますか?       敬具 Re: IMX95 Aquila ISP usage 現時点で私が疑っているのは、以下のいずれかが起こっているということです。 OV5640はRAWベイヤーモードではなく、YUVモードで動作している可能性が高い。 カメラのDTオーバーレイは、ISP対応バージョンではありません。 Neo IPA/キャリブレーションコンポーネントがルートファイルシステムに存在しません。 Neoパイプラインで見られるメディアトポロジーは、期待されるi.MX95のISPグラフと一致しません。 media-ctl -pの出力は通常、どちらが実際の問題かを特定します。 Re: IMX95 Aquila ISP usage こんにちは! 出力結果は以下のとおりです。 root@imx95-1:~# v4l2-ctl --list-formats-ext -d /dev/video2 ioctl: VIDIOC_ENUM_FMT Type: Video Capture Multiplanar [0]: 'YUYV' (YUYV 4:2:2, csc-colorspace, csc-ycbcr, csc-quantization, csc-xfer-func) Size: Stepwise 1x1 - 4096x8191 with step 1/1 [1]: 'YUVA' (32-bit YUVA 8-8-8-8, csc-colorspace, csc-ycbcr, csc-quantization, csc-xfer-func) Size: Stepwise 1x1 - 4096x8191 with step 1/1 [2]: 'NV12' (Y/UV 4:2:0, csc-colorspace, csc-ycbcr, csc-quantization, csc-xfer-func) Size: Stepwise 2x2 - 4096x8190 with step 2/2 [3]: 'NM12' (Y/UV 4:2:0 (N-C), csc-colorspace, csc-ycbcr, csc-quantization, csc-xfer-func) Size: Stepwise 2x2 - 4096x8190 with step 2/2 [4]: 'NV16' (Y/UV 4:2:2, csc-colorspace, csc-ycbcr, csc-quantization, csc-xfer-func) Size: Stepwise 2x1 - 4096x8191 with step 2/1 [5]: 'NM16' (Y/UV 4:2:2 (N-C), csc-colorspace, csc-ycbcr, csc-quantization, csc-xfer-func) Size: Stepwise 2x1 - 4096x8191 with step 2/1 [6]: 'YM24' (Planar YUV 4:4:4 (N-C), csc-colorspace, csc-ycbcr, csc-quantization, csc-xfer-func) Size: Stepwise 1x1 - 4096x8191 with step 1/1 [7]: 'RGBP' (16-bit RGB 5-6-5, csc-colorspace, csc-ycbcr, csc-quantization, csc-xfer-func) Size: Stepwise 1x1 - 4096x8191 with step 1/1 [8]: 'RGB3' (24-bit RGB 8-8-8, csc-colorspace, csc-ycbcr, csc-quantization, csc-xfer-func) Size: Stepwise 1x1 - 4096x8191 with step 1/1 [9]: 'BGR3' (24-bit BGR 8-8-8, csc-colorspace, csc-ycbcr, csc-quantization, csc-xfer-func) Size: Stepwise 1x1 - 4096x8191 with step 1/1 [10]: 'XR24' (32-bit BGRX 8-8-8-8, csc-colorspace, csc-ycbcr, csc-quantization, csc-xfer-func) Size: Stepwise 1x1 - 4096x8191 with step 1/1 [11]: 'AR24' (32-bit BGRA 8-8-8-8, csc-colorspace, csc-ycbcr, csc-quantization, csc-xfer-func) Size: Stepwise 1x1 - 4096x8191 with step 1/1 [12]: 'RA24' (32-bit ABGR 8-8-8-8, csc-colorspace, csc-ycbcr, csc-quantization, csc-xfer-func) Size: Stepwise 1x1 - 4096x8191 with step 1/1 [13]: 'AB24' (32-bit RGBA 8-8-8-8, csc-colorspace, csc-ycbcr, csc-quantization, csc-xfer-func) Size: Stepwise 1x1 - 4096x8191 with step 1/1 [14]: 'RX24' (32-bit XBGR 8-8-8-8, csc-colorspace, csc-ycbcr, csc-quantization, csc-xfer-func) Size: Stepwise 1x1 - 4096x8191 with step 1/1 [15]: 'XB24' (32-bit RGBX 8-8-8-8, csc-colorspace, csc-ycbcr, csc-quantization, csc-xfer-func) Size: Stepwise 1x1 - 4096x8191 with step 1/1 [16]: 'AR30' (32-bit ARGB 2-10-10-10, csc-colorspace, csc-ycbcr, csc-quantization, csc-xfer-func) Size: Stepwise 1x1 - 4096x8191 with step 1/1 [17]: 'GREY' (8-bit Greyscale, csc-colorspace, csc-ycbcr, csc-quantization, csc-xfer-func) Size: Stepwise 1x1 - 4096x8191 with step 1/1 [18]: 'Y10 ' (10-bit Greyscale, csc-colorspace, csc-ycbcr, csc-quantization, csc-xfer-func) Size: Stepwise 1x1 - 4096x8191 with step 1/1 [19]: 'Y12 ' (12-bit Greyscale, csc-colorspace, csc-ycbcr, csc-quantization, csc-xfer-func) Size: Stepwise 1x1 - 4096x8191 with step 1/1 [20]: 'Y14 ' (14-bit Greyscale, csc-colorspace, csc-ycbcr, csc-quantization, csc-xfer-func) Size: Stepwise 1x1 - 4096x8191 with step 1/1 [21]: 'BA81' (8-bit Bayer BGBG/GRGR, csc-colorspace, csc-ycbcr, csc-quantization, csc-xfer-func) Size: Stepwise 1x1 - 4096x8191 with step 1/1 [22]: 'GBRG' (8-bit Bayer GBGB/RGRG, csc-colorspace, csc-ycbcr, csc-quantization, csc-xfer-func) Size: Stepwise 1x1 - 4096x8191 with step 1/1 [23]: 'GRBG' (8-bit Bayer GRGR/BGBG, csc-colorspace, csc-ycbcr, csc-quantization, csc-xfer-func) Size: Stepwise 1x1 - 4096x8191 with step 1/1 [24]: 'RGGB' (8-bit Bayer RGRG/GBGB, csc-colorspace, csc-ycbcr, csc-quantization, csc-xfer-func) Size: Stepwise 1x1 - 4096x8191 with step 1/1 [25]: 'BG10' (10-bit Bayer BGBG/GRGR, csc-colorspace, csc-ycbcr, csc-quantization, csc-xfer-func) Size: Stepwise 1x1 - 4096x8191 with step 1/1 [26]: 'GB10' (10-bit Bayer GBGB/RGRG, csc-colorspace, csc-ycbcr, csc-quantization, csc-xfer-func) Size: Stepwise 1x1 - 4096x8191 with step 1/1 [27]: 'BA10' (10-bit Bayer GRGR/BGBG, csc-colorspace, csc-ycbcr, csc-quantization, csc-xfer-func) Size: Stepwise 1x1 - 4096x8191 with step 1/1 [28]: 'RG10' (10-bit Bayer RGRG/GBGB, csc-colorspace, csc-ycbcr, csc-quantization, csc-xfer-func) Size: Stepwise 1x1 - 4096x8191 with step 1/1 [29]: 'BG12' (12-bit Bayer BGBG/GRGR, csc-colorspace, csc-ycbcr, csc-quantization, csc-xfer-func) Size: Stepwise 1x1 - 4096x8191 with step 1/1 [30]: 'GB12' (12-bit Bayer GBGB/RGRG, csc-colorspace, csc-ycbcr, csc-quantization, csc-xfer-func) Size: Stepwise 1x1 - 4096x8191 with step 1/1 [31]: 'BA12' (12-bit Bayer GRGR/BGBG, csc-colorspace, csc-ycbcr, csc-quantization, csc-xfer-func) Size: Stepwise 1x1 - 4096x8191 with step 1/1 [32]: 'RG12' (12-bit Bayer RGRG/GBGB, csc-colorspace, csc-ycbcr, csc-quantization, csc-xfer-func) Size: Stepwise 1x1 - 4096x8191 with step 1/1 [33]: 'BG14' (14-bit Bayer BGBG/GRGR, csc-colorspace, csc-ycbcr, csc-quantization, csc-xfer-func) Size: Stepwise 1x1 - 4096x8191 with step 1/1 [34]: 'GB14' (14-bit Bayer GBGB/RGRG, csc-colorspace, csc-ycbcr, csc-quantization, csc-xfer-func) Size: Stepwise 1x1 - 4096x8191 with step 1/1 [35]: 'GR14' (14-bit Bayer GRGR/BGBG, csc-colorspace, csc-ycbcr, csc-quantization, csc-xfer-func) Size: Stepwise 1x1 - 4096x8191 with step 1/1 [36]: 'RG14' (14-bit Bayer RGRG/GBGB, csc-colorspace, csc-ycbcr, csc-quantization, csc-xfer-func) Size: Stepwise 1x1 - 4096x8191 with step 1/1 [37]: 'BYR2' (16-bit Bayer BGBG/GRGR, csc-colorspace, csc-ycbcr, csc-quantization, csc-xfer-func) Size: Stepwise 1x1 - 4096x8191 with step 1/1 [38]: 'GB16' (16-bit Bayer GBGB/RGRG, csc-colorspace, csc-ycbcr, csc-quantization, csc-xfer-func) Size: Stepwise 1x1 - 4096x8191 with step 1/1 [39]: 'GR16' (16-bit Bayer GRGR/BGBG, csc-colorspace, csc-ycbcr, csc-quantization, csc-xfer-func) Size: Stepwise 1x1 - 4096x8191 with step 1/1 [40]: 'RG16' (16-bit Bayer RGRG/GBGB, csc-colorspace, csc-ycbcr, csc-quantization, csc-xfer-func) Size: Stepwise 1x1 - 4096x8191 with step 1/1 [41]: 'MJPG' (Motion-JPEG, compressed, csc-colorspace, csc-ycbcr, csc-quantization, csc-xfer-func) Size: Stepwise 1x1 - 4096x8191 with step 1/1 私の理解が正しければ、このカメラはRAWベイヤー形式で撮影できるはずなので、私もそのように設定しました(正しく設定できていればいいのですが)。 別のイメージを使って再度フラッシュしてみて、問題がそのあたりにあるかどうか確認してみます。 敬具 Re: IMX95 Aquila ISP usage 最新情報のご提供ありがとうございます。The  v4l2-ctl  outputはISIキャプチャノードがRAWバイエルフォーマットをサポートしていることを確認しており、前のメッセージの  media-ctl -p  outputはすでにRAWバイエルパスがパイプライン内で正しく伝播していることを示しています: OV5640 (SRGGB8) -> CSI (SRGGB8) -> フォーマッタ (SRGGB8) -> クロスバー (SRGGB8) つまり、センサー側の構成は正しいように見えます。 現在の核心的な問題は、  neoisp  モジュールが読み込まれているものの、プレスリリース、製品ニュースグラフに表示されず、  /dev/media1  が作成されていないことです。これは通常、  neoisp  ドライバがカーネルモジュールとしては正常にロードされたが、デバイスプローブ中に失敗し、プレスリリース、製品ニュースデバイスの登録ができなくなることを意味します。 以下の診断情報を教えていただけますか? # Neoispプローブの状態を 確認 dmesg |grep -i neoisp dmesg |grep -i "isp@4ae" DMESG |grep -i 「プローブ失敗」 DMESG |grep -i "4ae00000" # 利用可能なプレスリリース、製品ニュース機器を ls -la /dev/プレスリリース、製品ニュース* # sysfs の neoisp ステータスを確認してください ls /sys/bus/プラットフォーム/ドライバ/nxp-neoisp/ cat /sys/firmware/devicetree/base/soc/isp@4ae00000/status 並行してお聞きしたいのですが、NXP Neo ISPスタックで公式にサポートされている以下のセンサのいずれかに、完全なチューニングプロファイルでアクセスできますか? OS08A20 OX03C10 OX05B1S これらのセンサのいずれかでテストすることで、Neo ISPドライバ自体が環境で正しく動作しているかを迅速に確認でき、問題がドライバや環境に関係するのか、OV5640特有のものかを特定するのに役立ちます。 OV5640はRAWのBayer出力が可能ですが、公式のNXP Neo ISPチューニングプロファイルは持っておらず、パイプラインが正しくコネクテッドされていてもAE/AWBや画像品質チューニングは利用できません。 Re: IMX95 Aquila ISP usage 最新情報: 社内で調査した結果、OV5640とi.MX95 NeoのISPパイプラインに関して以下の所見をお伝えしたいと思います。 OV5640はRAWのバイエルデータの出力が可能ですが、以下の理由から一般的にOV5640+Neo ISPの組み合わせは新しいデザインに推奨しません。 OV5640はすでに寿命切れ(EOL)センサです。 RAW出力はサポートされていますが、センサ自体は最新のRAWセンサに比べて調整可能なコントロールが限られています。 NXPのi.MX95リファレンスカメラソリューションは、すでにNeo ISPソフトウェアフレームワーク内でサポート・検証されているOS08A20などのRAWセンサに基づいています。 したがって、弊社の推奨案は以下のいずれかとなります。 OV5640を既存の画像プロセッシングパスと併用してください(Neo ISP AE/AWBチューニング機能に依存しません)。 Neo ISPのフル機能が必要な場合は、NXP対応のRAWセンサー(OS08A20など)を使用してください。 もしOV5640をNeo ISPパイプラインで使用する必要がある場合は、追加のソフトウェアエンイネーブルメント作業が必要となります。 OV5640 + Neo ISP方式の場合、libcamera CameraHelperを実装する必要があります。以下のファイルが開始参照として使用できます: camera_helper_ov5640.cpp https://github.com/nxp-imx/libcamera/blob/lf-6.6.52_2.2.0/src/ipa/nxp/cam_helper/camera_helper_ov5640.cpp このCameraHelperの実装は、あくまでも第一歩に過ぎないことにご注意ください。主な目的は、libcameraがOV5640センサーを認識し識別できるようにすることです。追加のセンサー特有の適応は依然として必要です。 例えば、Neo ISP 車載 Exposure(AE)が動作すると予想される場合、センサの利得変換関数などのAPIを実装する必要があります。IMX219 CameraHelperの実装に簡単な例があります: https://github.com/nxp-imx/libcamera/blob/lf-6.18.20_2.0.0/src/ipa/nxp/cam_helper/camera_helper_imx219.cpp 特に、顧客は以下の間のマッピングを決定し実装する必要があります: センサーゲインコード 実アナログゲイン乗算器(ゲイン値) これにより、Neo ISP AEアルゴリズムがセンサの露出と利得を正しく制御できるようにしています。 CameraHelperの開発の詳細については、カメラ移植ガイドをご参照ください: セクション5.3 – 「新しいセンサのためのlibcamera CameraHelperの実装」 OV5640の特別な考慮点の一つは、すでに独自のAE機能を備えています。したがって、Neo ISP AEアルゴリズムの代わりにセンサ内部AEを継続使用する意図がある場合、gainCodeToGain()やgainToGainCode()などの実装は必ずしも必要とは限りません。この場合、センサ検出専用の基本的なCameraHelperでパイプラインを起動するのに十分かもしれません。 しかし、画像品質の調整は評価と調整が必要です。OV5640は元々Neo ISP基準センサとして特性評価・調整されていなかったため、最適な画像品質を得るために追加のISPチューニング作業が必要になる場合があります。 全体として、OV5640のRAW出力はi.MX95 Neo ISPパイプラインに接続可能ですが、センサー固有のlibcameraやISP統合作業が期待されています。新しい開発については、可能な限りNeo ISP認証済みRAWセンサー(OS08A20など)を使用することを推奨します。 Re: IMX95 Aquila ISP usage 前回の議論に続き、Neo ISPパイプラインがOV5640センサーを認識できない根本原因を調査しました。 問題は、NXP Neo IPA(Image プロセッシング Algorithm)フレームワークがa  CameraHelper  factoryを使って、カーネルのV4L2サブ開発モデル文字列を照合してセンサ固有のゲイン/露出アルゴリズムを調べていることです。 CameraHelper "ov5640" に登録されていなかったため、工場出荷時は nullptr が戻り、ISPパイプラインはこのセンサに設定できませんでした。 これに対処するため、  CameraHelper  をOV5640センサ用にNXPカーネルドライバ( drivers/media/i2c/ov5640.c )に基づく実装しました😞 ゲインレジスタのマッピング: 登録する:  OV5640_REG_AEC_PK_REAL_GAIN  ( 0x350a )、10ビット値 形式: Q6.4 固定小数点、ユニティゲイン = 16 gainCode(g) = round(g * 16) ゲイン(コード) = コード / 16.0 2つのファイルが変更されました。 camera_helper_ov5640.cpp – OV5640用の新しいCameraHelper実装で、カーネルのサブ開発モデル文字列に合わせて "ov5640 " として登録 メソンビルド  - 追加した  camera_helper_ov5640.cpp  ビルドソースリストへ これらの2つのファイルを使用してlibcameraを再構築し、再度試してください。  LIBCAMERA_PIPELINES_MATCH_LIST='nxp/neo' 。Neo ISPパイプラインは今後OV5640センサーを見つけて設定できるようになるはずです。 なお、これによりゲイン/露出制御パスは有効になりますが、OV5640用の完全なISPチューニングプロファイル(AE/AWBパラメータ)はまだ利用できません。画像品質調整にはさらなる作業が必要かもしれません。 再建後の結果をお知らせください。
View full article