Multi Source Translation Content

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

Multi Source Translation Content

Discussions

Sort by:
Request for Reference Documentation: Integrating Ai tools with Cody Chat in S32DS Dear NXP Community Team, I am currently working with S32 Design Studio and using the Cody Chat feature available in the IDE. I would like to know whether it is possible to integrate external AI models such as OpenAI ChatGPT and Anthropic Claude into the Cody Chat section of S32 Design Studio. My requirement is to use an AI assistant directly inside S32DS for activities such as: C/C++ code generation and explanation Embedded C development Debugging compiler and linker errors CAN, SPI, I2C, UART and ADC development S32K3/S32K344 development Understanding and working with the current S32DS project context I found that the official Sourcegraph Cody documentation describes support for both OpenAI and Anthropic models, including model configuration and Bring Your Own Key (BYOK) options. Could you please clarify: Is the Cody integration used in S32 Design Studio capable of connecting to external AI providers such as ChatGPT/OpenAI and Claude? Can we configure our own API key for these AI providers in the Cody Chat section? Is there any official NXP documentation, S32DS documentation, Cody documentation, or example project explaining how to configure or integrate external AI models with Cody in S32DS? If this functionality is not directly supported in the current S32DS version, is there an official method to extend the Cody/Eclipse plugin to support external AI providers? Are there any restrictions in the S32DS implementation of Cody compared with the standard Sourcegraph Cody implementation? For reference, I found the following Sourcegraph documentation regarding supported LLMs and model configuration: Supported LLMs Cody Model Configuration Cody Model Configuration Examples Could you please provide the appropriate NXP reference documentation or recommended procedure for implementing this in S32DS? Thank you for your support. Best regards, Aravind Togaralli
View full article
スタンバイモードでは、S32K328のピンは高レベルを出力できません 操作マニュアルに記載されている設定手順に従って、S32K328のいくつかのGPIOピンをスタンバイモードでハイレベルに維持するように設定しましたが、失敗しました。以下は私の設定手順です。私はマニュアルに記載されている4番目の手順を実行しませんでした。これは影響がありますか?以前にもS32K312で同様の設定を行ったことがありますが、エラーは発生しませんでした。私の理解では、リセット後にピン保持機能を無効にしなかった場合、ウェイクアップ後にGPIOピンを低レベル出力するように設定しても、出力ピンレベルはスタンバイモードに入る前に設定された高レベルを維持するはずです。現在、実際の測定では、スタンバイモードと実行モードの両方で設定されている複数のGPIOピンは、低いレベルに留まっています。 6ABE3FCC-00F4-4165-B025-E31BB4B1BEBC.png de7ee9ab18af4cbe9fe5a0f4dbd21427.png Re: In standby mode, the pins of the S32K328 cannot output a high level こんにちは、@hhggll23 さん。 私はマニュアルに記載されている4番目の手順を実行しませんでした。これは影響がありますか? はい、そうです。スタンバイモードに入る前にパッドキーピングを有効にした場合(DCM_GPR->DCMRWF1[STANDBY_IO_CONFIG] = 0と書いてください。これはSIUL2のPKEが設定されていなくてもデフォルトのレジスタ値ですが、ウェイクアップ後に無効化していなければ、SIUL2モジュールは再度初期化できません。MCUがスタンバイモードに入ってウェイクアップする必要がある間にパッドキーピング機能が必要ないなら、このビットに1をどこかに書き込んでそのままにしておく必要があります。 これはPower_Ip_Init() APIを通じて行われます。 Julin_AragnM_3-1786127814879.png これで、I/Oピンは、パッド保持設定に関係なく、スタンバイモード中も実行モードで最後に設定された状態を保持します。 S32K3は起動後に必ずリセットシーケンスを行い、SIUL2モジュールは機能リセット時にGPIOパッドをデフォルト状態にリセットするため、パッドキーピングによりピンの状態はウェイクアップからユーザーが解除されるまで保持されます。 Julin_AragnM_0-1786126733106.png Julin_AragnM_4-1786128871517.png 画像に示されているすべてのピンをスタンバイ時にHIGHに設定しようとしていますか?スタンバイモードに入ると、すべてLOW状態になるのでしょうか?それとも、終了時でしょうか? よろしくお願いします、 ジュリアン Re: In standby mode, the pins of the S32K328 cannot output a high level ご返信いただき、誠にありがとうございます。プログラムを再確認したところ、スタンバイ前にピンをハイレベルにした後、意図しないルーチンが実行され、すべてのGPIOピンが再初期化されてしまい、スタンバイ中にピンがローレベルのままになってしまうことがわかりました。変更後、スタンバイモードにおいてGPIOピンのレベルが正常にハイレベルに引き上げられるようになりました。新たな問題が発生しました。スタンバイモードでGPIOピンをハイレベルにプルアップした後、スタンバイ電流が増加したようです。現在、スタンバイ条件下では、コントローラーの静止電流は約3 mAで、24V電源で供給されています。他の回路のトラブルシューティングを行った結果、S32K328がこの電流の大部分を消費しているのではないかと推測しています。24 Vの場合、3 mAはコントローラの5V電源に換算すると約14.4 mAに相当します。スタンバイモードで8つのGPIOピンをハイレベルにしました。この待機電流は正常ですか?この問題に対処するために、S32K328のGPIOピンをスタンバイモードで高インピーダンスに設定し、外部プルアップ抵抗がスタンバイ中にピンの高レベルを維持できるようにしますか?
View full article
Zephyr SDKをVS Codeにインポートする際にエラーが発生しました。 こんにちは、NXPさん。 画像に示すように、Zephyr SDKのインポートが繰り返し失敗します。原因は何でしょうか?また、どのようにトラブルシューティングすればよいでしょうか? 魔法を解くテストもしてみましたが、結果は同じでした。 hayden178_1-1786677974386.png hayden178_0-1786677660968.png MCXA Re: VS Code 导入Zephyr SDK出现error こんにちは、 @hadden178さん MCUXpresso上でVS Codeを使ってテストしてみました。 正常にインポートできたので、GitHubリポジトリには問題がないようです。 ログに基づいて remote: Enumerating objects: 3105, done. remote: Counting objects: 100% (1405/1405) remote: Compressing objects: 100% (433/433) error: RPC failed; curl 56 Recv failure: Connection was reset おそらくネットワーク接続の問題だと思います。 リポジトリを手動で更新するには、`nxp\frdm_mcxa156`フォルダで`west update`コマンドを実行してみてください。 Harry_Zhang_0-1786693966782.png BR ハリー
View full article
VS Code 导入Zephyr SDK出现error Hi NXP, 如图导入Zephyr SDK时,一直失败,请问是什么原因,如何排除? 另外测试过打开魔法,也是一样的结果。 hayden178_1-1786677974386.png hayden178_0-1786677660968.png MCXA Re: VS Code 导入Zephyr SDK出现error Hi @hayden178  我刚刚在我的MCUXpresso for vscode测试了一下。 我这边可以成功导入。说明git hub仓库是没有问题的。 根据您的log remote: Enumerating objects: 3105, done. remote: Counting objects: 100% (1405/1405) remote: Compressing objects: 100% (433/433) error: RPC failed; curl 56 Recv failure: Connection was reset 我认为大概率是网络连接问题。 您可以尝试在您的nxp\frdm_mcxa156文件夹下运行west update手动更新仓库。 Harry_Zhang_0-1786693966782.png BR Harry
View full article
i.MX8M Plus HiFi4 DSP(Zephyr):SDMAのサイクリックTXコールバックが一度だけ発生し、その後停止します Zephyrを動かすi.MX8MP HiFi4 DSPでは、Zephyr nxp、dai-sai(SAI3)、nxp、sdma(SDMA3)ドライバーをサイクリックモードでハードウェアエンドポイント再生パスを起動しています。再生開始時には、SDMAチャネル完了コールバックが正確に一度だけ発生し、その後はSDMA割り込みが発生しません。周期的なSDMA転送が定期的な割り込みを生成し続けない理由を特定するのにご協力をお願いします。   ハードウェア/起動 - ボード:i.MX8MP EVK、DTS: IMX8MP-EVK-DSP.DTS  - DSPコア:HiFi4(Cadence Xtensa)、ボードターゲットはimx8mp_evk/mimx8ml8/adsp - コーデック:WM8960 - ペリフェラル:SAI3、SDMA3 建築および建設の詳細: - アーキテクチャ概要: https://audioreach.github.io/platform/nxp.html#architecture-overview - ビルドの詳細: - ヨクト: https://audioreach.github.io/platform/nxp.html#step-1-create-a-yocto-image      - Linux(コントロール/ホスト):Yocto(scarthgap)、linux-imx。      - 回収マニフェスト:imx-6.6.52-2.2.0.xml - ゼファーDSP画像: https://audioreach.github.io/platform/nxp.html#step-2-create-a-zephyr-image - Zephyr(v4.2.0)、HiFi4上で動作する AudioReach Engine信号処理フレームワーク。   私が作っているもの DSPイメージ内のカスタムハードウェアエンドポイント(シンク)モジュールで、以下のようなものを用いています。 1.Zephyr DAI APIを通じてSAI3を設定できます。 2.DRAMリングからSAI TX FIFOへの周期的なSDMA転送(2つのバッファ記述子、MEMORY_TO_PERIPHERAL)を設定します。 3.SDMAの完了コールバックを使って信号プロセッシングフレームワークにリングの再充填を指示します。   オーディオ format   - 48 kHz, 16-bit, mono stream; SAI wire = 16-bit × 2 slots (stereo I2S frame for WM8960), BCLK = 1.536 MHz。 - DMA周期 = 192バイト (48フレーム × 2バイト × 2スロット)、2ディスクリプタ、384バイトリング   関連するKconfig(DSPイメージ)有効化 CONFIG_DAI=y CONFIG_DMA=y CONFIG_DAI_NXP_SAI=y CONFIG_DMA_NXP_SDMA=y CONFIG_SAI_HAS_MCLK_CONFIG_OPTION=y CONFIG_CLOCK_CONTROL_FIXED_RATE_CLOCK=y   デバイスツリーオーバーレイ(DSPアプリ): リンク:app/boards/imx8mp_evk_mimx8ml8_adsp.overlay  mclk1: mclk { ステータス = "正常"; }; &sdma3 { ステータス = "正常"; }; &sai3 { rx-fifo-watermark = <65>; tx-fifo-watermark = <65>; fifo-depth = <128>; rx-sync-mode = <1>; ステータス = "正常"; }; &micfil { ステータス = "正常"; };   使用されたDAI / DMA設定(DSP) - dai_config:type=DAI_IMX_SAI、 dai_index=3、format=DAI_PROTO_I2S(SAIスレーブ)、レート=48000、チャネル=2、word_size=16。  - SAI 特注: mclk_rate=12288000、fsync_rate=48000、bclk_rate=1536000、tdm_slots=2、tx_slots=rx_slots=0x3、tdm_slot_width=16。 - DMA (struct dma_config): channel_direction=MEMORY_TO_PERIPHERAL、source_data_size=4、dest_data_size=4、source_burst_length=4、cyclic=1、block_count=2、dma_slot は SAI ハンドシェイクから取得、dma_callback が設定されています。2 つの dma_block_config BD が dma_src_addr[0/192] を指しています ソースコード参照: endpoint/capi/src/capi_nxp_device_utils.c 申請処理担当者: - DTS: imx8mp-evk-dsp.dts https://github.com/nxp-imx/linux-imx/blob/lf-6.6.y/arch/arm64/boot/dts/freescale/imx8mp-evk-dsp.dts - ダミーDAIおよびダミープラットフォームを備えたwm8960コーデックのPCMデバイスを列挙。 添付資料: - DSPログ(SDMA、SAI) - 修正されたimx8mp-evk-dsp.dts その他の詳細情報も喜んでご提供いたします。 i.MX 8M | i.MX 8M Mini | i.MX 8M Nano マルチメディア Re: i.MX8M Plus HiFi4 DSP (Zephyr): SDMA cyclic TX callback fires once then stops NXPのサポートがこの件を確認するまでは、ひとつ指摘しておきたいことがあります: > 再生開始時に、SDMAチャネル完了コールバックはちょうど一度だけ発生します この割り込みはSDMAスクリプトがチャネル0(ファイアワースロードに使われる)を実行し終えた後に発生し、実際の転送は行われていません。まずはSAIの設定とクロックを確認することから始めます。SDMAリクエストがないようです。
View full article
i.MX8M Plus HiFi4 DSP (Zephyr): SDMA cyclic TX callback fires once then stops On the i.MX8MP HiFi4 DSP running Zephyr, I'm bringing up a hardware-endpoint playback path using the Zephyr nxp,dai-sai (SAI3) and nxp,sdma (SDMA3) drivers in cyclic mode. On start playback, the SDMA channel completion callback fires exactly once, then no further SDMA interrupts occur. I'd like help identifying why the cyclic SDMA transfer does not keep generating periodic interrupts.   Hardware / boot   - Board: i.MX8MP EVK, DTS: imx8mp-evk-dsp.dts   - DSP core: HiFi4 (Cadence Xtensa), board target imx8mp_evk/mimx8ml8/adsp   - Codec: WM8960   - Peripherals: SAI3, SDMA3   Architecture and Build details:   - Architecture Overview: https://audioreach.github.io/platform/nxp.html#architecture-overview    - Build Details:     - Yocto: https://audioreach.github.io/platform/nxp.html#step-1-create-a-yocto-image       - Linux (control/host): Yocto (scarthgap), linux-imx.       - Repo manifest: imx-6.6.52-2.2.0.xml     - Zephyr DSP Image: https://audioreach.github.io/platform/nxp.html#step-2-create-a-zephyr-image       - Zephyr (v4.2.0), AudioReach Engine signal processing framework running on the HiFi4.   What I'm building   A custom hardware-endpoint (sink) module in the DSP image that:   1. Configures SAI3 via the Zephyr DAI API.   2. Sets up a cyclic SDMA transfer (2 buffer descriptors, MEMORY_TO_PERIPHERAL) from a DRAM ring into the SAI TX FIFO.   3. Uses the SDMA completion callback to signal the Signal Processing Framework to refill the ring.   Audio format   - 48 kHz, 16-bit, mono stream; SAI wire = 16-bit × 2 slots (stereo I2S frame for WM8960), BCLK = 1.536 MHz.   - DMA period = 192 bytes (48 frames × 2 bytes × 2 slots), 2 descriptors, 384-byte ring   Relevant Kconfig (DSP image) enabled   CONFIG_DAI=y   CONFIG_DMA=y   CONFIG_DAI_NXP_SAI=y   CONFIG_DMA_NXP_SDMA=y   CONFIG_SAI_HAS_MCLK_CONFIG_OPTION=y   CONFIG_CLOCK_CONTROL_FIXED_RATE_CLOCK=y   Device tree overlay (DSP app):   Link: app/boards/imx8mp_evk_mimx8ml8_adsp.overlay   mclk1: mclk {     status = "okay";   };   &sdma3 {     status = "okay";   };   &sai3 {     rx-fifo-watermark = <65>;     tx-fifo-watermark = <65>;     fifo-depth = <128>;     rx-sync-mode = <1>;     status = "okay";   };   &micfil {     status = "okay";   };   DAI / DMA config used (DSP)   - dai_config: type=DAI_IMX_SAI, dai_index=3, format= DAI_PROTO_I2S (SAI slave), rate=48000, channels=2, word_size=16.   - SAI bespoke: mclk_rate=12288000, fsync_rate=48000, bclk_rate=1536000, tdm_slots=2, tx_slots=rx_slots=0x3, tdm_slot_width=16.   - DMA (struct dma_config): channel_direction=MEMORY_TO_PERIPHERAL, source_data_size=4, dest_data_size=4, source_burst_length=4, cyclic=1, block_count=2, dma_slot from SAI handshake, dma_callback set. Two dma_block_config BDs point at dma_src_addr[0/192] Source code reference: endpoint/capi/src/capi_nxp_device_utils.c Application Processror:   - DTS: imx8mp-evk-dsp.dts https://github.com/nxp-imx/linux-imx/blob/lf-6.6.y/arch/arm64/boot/dts/freescale/imx8mp-evk-dsp.dts   - Enumerate PCM device with wm8960 codec with dummy dai and dummy platform. Attachments: - DSP logs (sdma, sai) - Modified imx8mp-evk-dsp.dts  Happy to provide any other details. i.MX 8M | i.MX 8M Mini | i.MX 8M Nano Multimedia Re: i.MX8M Plus HiFi4 DSP (Zephyr): SDMA cyclic TX callback fires once then stops Until NXP support gets a chance to look at this I just want to point out that: > On start playback, the SDMA channel completion callback fires exactly once This interrupt comes after SDMA scripts finish running channel 0 (used for loading the FW) so there is no actual transfer happening. I woul start checking SAI configuration and clocks. Looks like there is no SDMA request.
View full article
过压和欠压情况下的电压注入测试及相关行为 大家好, SBC FS4503在我们的一个项目中被使用,并按如下方式配置以适应 OV / UV 条件。 VCCA、VCORE 和 VAUX 配置为仅在 OV 条件下对 FS0B产生影响,在 UV 条件下对 RSTB 和 FS0B 均产生影响。 电压注入测试是通过使用第二个电源向 VCORE、VAUX 和 VCCA 引脚注入电压来进行的,同时第一个电源向 SBC 提供 12V 输入。 测试结果如下: 1. VAUX OV - 断言 FS0B, 2. VAUX UV 触发信号RESET 3. VCORE OV- 断言 FS0B,但 VCORE 被切断,如数据表中所述。 4. VCORE UV 触发器 RESET 5. VCCA OV - 断言 FS0B,但 VCORE 短暂下拉,因此 RESET 6. VCCA UV 触发器 RESET。 VPRE-OV-数据手册提到稳压器已关闭,但我们观察到 RESET。 以下是查询内容: 1. 台式测试程序有效吗?其中,在OV条件下,在相应的引脚上注入约5.5V电压,在紫外线条件下,在相应的引脚上注入约3.5V的电压。 2. VCCA OV病症的观察是否可接受? 3. 当VPRE发生OV状态时,数据手册提到稳压器被关闭,这是否也会切断VCORE电源? 谢谢! 阿迪亚 Re: Voltage injection tests for OV and UV scenarios and associated behavior 1. 台架测试程序是否有效?其中,对于 OV 条件,在相应的引脚上注入约 5.5V 电压;对于 UV 条件,在引脚上注入约 3.5V 电压。 [gw]OV 应使用高于 5.5V 的电压,UV 测试应低于 3V。 同时还需要满足过滤时间和反应时间的要求。 2. VCCA OV 条件下的观察结果是否可以接受? [gw]第二个电源(OV电压)是否会通过VCCA引脚反向供电,从而导致VPRE/VCORE回路出现干扰? 在本次VCCA OV测试中,您是否监测了VPRE? 3. 当 VPRE 出现过压情况时,数据手册提到稳压器会关闭,这是否也会切断 VCORE 电源? [gw]是的,VCORE 由 VPRE 提供。 Re: Voltage injection tests for OV and UV scenarios and associated behavior 你好@guoweisun , 谢谢你的回复。这很有帮助。 以下是我的问题: [gw]第二个电源(OV电压)是否会通过VCCA引脚反向供电,从而导致VPRE/VCORE回路出现干扰? 在本次VCCA OV测试中,您是否监测了VPRE? [ab]:未对 VPRE 进行监测。我将通过新的测试来监测它。请问您能否帮我理解一下通过VCCA引脚反向供电是什么意思? [gw]OV 应使用高于 5.5V 的电压,UV 测试应低于 3V。 “还需要满足过滤时间和反应时间的要求。” [ab]:由于我是手动执行此操作,因此对于OV情况,过滤时间100-200微秒和反应时间314微秒均满足要求。 以下是一些其他问题: 1. 如何检测OV/UV?SBC使用的采样率是多少? 2. 过滤时间和反应时间有何意义? 2. 在检测到任何引脚上的过压/过压故障之前,允许有多少个不合格样品? 谢谢! 阿迪亚 Re: Voltage injection tests for OV and UV scenarios and associated behavior 你好, Aditya 问:VPRE 没有被监测。我将通过新的测试来监测它。请问您能否帮我理解一下通过VCCA引脚反向供电是什么意思? [gw]如果 VCCA 正常工作且内部 FET 导通,则下游侧的高电压会反向馈入 VPRE 引脚。  以下是一些其他问题: 如何检测OV/UV?SBC使用的采样率是多少? [gw]没有这种规格,而是使用滤波时间。 过滤时间和反应时间的意义是什么?[gw]您可以在数据表表6中看到这些规格。 在检测到任何引脚上的过压/过压故障之前,允许出现多少个不合格样品?[gw]一旦检测到紫外线/紫外线病害,就应将其视为警告信号。
View full article
Imx95 missing display controller section It seems that the display controller section in the i.MX95 Reference Manual is intentionally limited to just a single page with very little detail. Why is that the case? I noticed that in the i.MX8 Reference Manual, this section is much more comprehensive. Is there a specific reason for this change in documentation approach? Re: Imx95 missing display controller section Hi, Thank you for your interest in NXP Semiconductor products, i.MX 95 is still in pre-production stage and the processor as the documentation are still subject to change, upon it's release, I would expect a Reference Manual with the proper display documentation for customer display usage. Regards Re: Imx95 missing display controller section This is because, at present, the i.MX95 Reference Manual Rev. 1.0 remains a pre-production manual. It has been confirmed by the NXP support team that the incomplete display controller portion is on purpose and that the documentation is still undergoing changes. They expect an enhanced display portion in the reference manual when the processor will be available. Therefore, it does not mean that the capabilities of the i.MX95 display controller are any less than those of i.MX8 implementation. Instead, the present RM remains unfinished in terms of customer-facing documentation. The NXP product page currently displays the version of i.MX95 RM as Rev. 1.0 dated March 30, 2026.
View full article
Issues with IMX95 15x15 package DDR5 Hi NXP I'm currently debugging an .imx95 15x15 packaged DDR5 and have encountered a problem. DDR5: RS2G32LO5D4FB-31BT 1. I used ConfigTools for i.MX 26.06, verification, using the .bin file compiled with lpddr5_timing.c, during flashing, the M33 core showed DDR...OEI: done, err = -1 2. I reduced the DDR speed to 1866 MT/s, but I still got a -1 error. 3. I noticed that the SDK does not include an official version of the IMX9596 15x15 DDR5. yrj_0-1786433338089.png yrj_1-1786433341485.png Re: imx95 15x15封装 DDR5的问题 Hi @yrj The IMX95 does not support DDR5. B.R Re: imx95 15x15封装 DDR5的问题 HI @pengyong_zhang Is it LPDDR5? Does it support it? Re: imx95 15x15封装 DDR5的问题 HI @yrj Yes, it supports LPDDR5 and LPDDR4X. B.R Re: imx95 15x15封装 DDR5的问题 The part is LPDDR5 and you may need to review the schematics 
View full article
i.MX8M Plus HiFi4 DSP(Zephyr):SDMA 循环发送回调触发一次后停止 在运行 Zephyr 的 i.MX8MP HiFi4 DSP 上,我正在使用 Zephyr nxp,dai-sai (SAI3) 和 nxp,sdma (SDMA3) 驱动程序以循环模式启动硬件端点播放路径。开始播放时,SDMA 通道完成回调恰好触发一次,然后不会再发生 SDMA 中断。我想请教一下,为什么循环 SDMA 传输不会持续产生周期性中断? 硬件/启动 - 板:i.MX8MP EVK,DTS:imx8mp-evk-dsp.dts - DSP核心:HiFi4(Cadence Xtensa),目标板为imx8mp_evk/mimx8ml8/adsp - 编解码器:WM8960 - 外设:SAI3、SDMA3 建筑和版本细节: - 架构概述: https://audioreach.github.io/platform/nxp.html#architecture-overview - 版本详情: - Yocto: https://audioreach.github.io/platform/nxp.html#step-1-create-a-yocto-image - Linux(控制/主机):Yocto(scarthgap)、linux-imx。 - 仓库清单:imx-6.6.52-2.2.0.xml - Zephyr DSP 镜像: https://audioreach.github.io/platform/nxp.html#step-2-create-a-zephyr-image - Zephyr (v4.2.0), AudioReach Engine信号处理框架,运行于 HiFi4 上。 我正在建造的东西 DSP 映像中的一个自定义硬件端点(接收器)模块,其功能如下: 1.通过 Zephyr DAI API 配置 SAI3。 2.建立从 动态随机存取存储器 (DRAM) 环到 SAI TX FIFO 的循环 SDMA 传输(2 个缓冲区描述符,MEMORY_TO_PERIPHERAL)。 3.使用 SDMA 完成回调来通知信号处理框架重新填充环。 音频格式 - 48 kHz,16 位,单声道音频流;SAI 线 = 16 位 × 2 个插槽(WM8960 的立体声 I2S 帧),BCLK = 1.536兆赫兹。 - DMA 周期 = 192 字节(48 帧 × 2 字节 × 2 个时隙),2 个描述符,384 字节环 已启用相关 Kconfig(DSP 映像)。 CONFIG_DAI=y CONFIG_DMA=y CONFIG_DAI_NXP_SAI=y CONFIG_DMA_NXP_SDMA=y CONFIG_SAI_HAS_MCLK_CONFIG_OPTION=y CONFIG_CLOCK_CONTROL_FIXED_RATE_CLOCK=y 设备树叠加(DSP 应用): 链接: app/boards/imx8mp_evk_mimx8ml8_adsp.overlay mclk1:mclk { 状态 = "正常"; }; &sdma3 { 状态 = "正常"; }; &sai3 { rx-fifo-watermark = <65>; tx-fifo-watermark = <65>; 先进先出深度 = <128>; rx-sync-mode = <1>; 状态 = "正常"; }; &micfil { 状态 = "正常"; }; 使用的DAI/DMA配置(DSP) - dai_config: type=DAI_IMX_SAI, dai_index=3, format= DAI_PROTO_I2S (SAI 从设备), rate=48000, channels=2, word_size=16. - SAI 定制:mclk_rate=12288000,fsync_rate=48000,bclk_rate=1536000,tdm_slots=2,tx_slots=rx_slots=0x3,tdm_slot_width=16。 - DMA(struct dma_config):channel_direction=MEMORY_TO_PERIPHERAL,source_data_size=4,dest_data_size=4,source_burst_length=4,cyclic=1,block_count=2,dma_slot 来自 SAI 握手,dma_callback 设置。两个 dma_block_config BD 指向 dma_src_addr[0/192] 源代码参考: endpoint/capi/src/capi_nxp_device_utils.c 应用程序处理器: - DTS:imx8mp-evk-dsp.dts https://github.com/nxp-imx/linux-imx/blob/lf-6.6.y/arch/arm64/boot/dts/freescale/imx8mp-evk-dsp.dts - 使用虚拟 DAI 和虚拟平台枚举带有 wm8960 编解码器的 PCM 设备。 附件: - DSP 日志(sdma,sai) - 修改了 imx8mp-evk-dsp.dts 我很乐意提供其他任何细节。 i.MX 8M | i.MX 8M Mini | i.MX 8M Nano 多媒体 Re: i.MX8M Plus HiFi4 DSP (Zephyr): SDMA cyclic TX callback fires once then stops 在恩智浦技术支持有机会查看此问题之前,我只想指出: 开始播放时,SDMA 通道完成回调函数会触发一次。 此中断发生在 SDMA 脚本完成运行通道 0(用于加载固件)之后,因此没有实际的传输发生。我会开始检查SAI配置和时钟。看起来没有SDMA请求。
View full article
Plug & Trust 中间件中是否计划支持 SE05x 的 Mbed TLS 4.x / PSA 加密驱动程序? 你好, NXP 是否计划在 Plug & Trust 中间件中集成对 Mbed TLS 4.x 的支持? SE050 Re: Plans for Mbed TLS 4.x / PSA Crypto driver support for SE05x in Plug & Trust Middleware? 嗨@ph-yac , Mbed TLS 4.x 正在考虑于 2027 年第一季度版本。 祝你有美好的一天, 坎 ------------------------------------------------------------------------------- 笔记: - 如果此回复解答了您的问题,请点击“标记为正确答案”按钮。谢谢你! - 我们会持续关注帖子,从最后一条回复发出后持续7周,之后的回复将被忽略。 如果您之后有相关问题,请另开新帖并引用已关闭的帖子。 -------------------------------------------------------------------------------
View full article
i.MX95基板上にMAX96717/MAX96724を搭載したOX05B1S GMSL2カメラ こんにちは、NXP チームの皆様、 Linuxを動かすi.MX95 19x19 EVKでOX05B1S GMSL2カメラをテストしています。 設定: OX05B1S カメラ - MAX96717 - GMSL2 - MX95MBDESER01 MAX96724 - i.MX95 MX95MBDES10001キットに付属のOX03C10カメラは、同じデシリアライザボードで動作し、cam -lコマンドで確認できます。 しかし、MAX96717を搭載したOX05B1Sカメラはcam -lコマンドではリストに表示されません。 BSPにはox05b1s.koが含まれています。max96724.ko、max96717_lib.ko、およびOX05B1S DTBファイル。 OX05B1S DTBは直接MIPI接続について記述しているようで、一方OX03C10 DTBにはMAX96724トポロジーが含まれている。 NXPはこの構成に対応したリファレンスデバイスツリー構成を提供していますか? OX05B1S - MAX96717 - MAX96724 - i.MX95 もしなければ、このOX05B1S GMSL2カメラをMX95MBDESER01ボードで使うにはどんな変更が必要か教えていただけますか? よろしくお願いします。 よろしくお願いします、 タルン Re: OX05B1S GMSL2 camera with MAX96717/MAX96724 on i.MX95 ご説明いただきありがとうございます。現在のBSPは公式には直接MIPI-CSIインターフェースを通じてOX05B1Sをサポートしており、OX03C10にはMAX96717/MAX96724 SerDesサポートが提供されていると理解しています。 OX05B1SカメラモジュールとMAX96717シリアライザーをMAX96724デシリアライザー経由でi.MX95に接続しています。GMSL2リンクは正常にロックされ、MAX96717はリモートI2Cチャネルを通じてアクセス可能です。 OX05B1S + MAX96717 + MAX96724は現在BSPでサポートされていないため、カスタムドライバー/デバイスツリー統合が必要になるのでしょうか?あるいは、この組み合わせに対応するリファレンス実装やパッチは存在しますか? Re: OX05B1S GMSL2 camera with MAX96717/MAX96724 on i.MX95 現在のBSPは、miniSASコネクタMIPI_CSI IMX95ボードを直接接続するためのOX05B1Sをサポートしています。Omnivision OX03C10 センサは、以下のベンダーのシリアライザー/デシリアライザーソリューションを用いて i.MX 95でサポートされています。 • アナログ・デバイセズ:MAX96717/MAX96724 • テキサス・インスツルメンツ:DS0UB953/DS0UV960 詳細については、第6.1.3章を参照してください。カメラのリファレンス・マニュアル https://www.nxp.com/docs/en/reference-manual/RM00293.pdf Re: OX05B1S GMSL2 camera with MAX96717/MAX96724 on i.MX95 はい、ドライバーのmx95mbcam.cを参照してくださいカメラをOX03C10使うので、もしカメラを変えたいなら、このドライバーを完全に変えるべきです。 https://github.com/nxp-imx/linux-imx/blob/lf-6.18.y/drivers/media/i2c/mx95mbcam.c
View full article
OX05B1S GMSL2 camera with MAX96717/MAX96724 on i.MX95 Hi NXP Team, We are testing an OX05B1S GMSL2 camera on an i.MX95 19x19 EVK running Linux. Setup: OX05B1S camera - MAX96717 - GMSL2 - MX95MBDESER01 MAX96724 - i.MX95 The OX03C10 camera supplied with the MX95MBDES10001 kit works with the same deserializer board and is visible using cam -l. However, the OX05B1S camera with MAX96717 is not listed by cam -l. The BSP contains ox05b1s.ko, max96724.ko, max96717_lib.ko, and OX05B1S DTB files. The OX05B1S DTB appears to describe a direct MIPI connection, while the OX03C10 DTB contains the MAX96724 topology. Does NXP provide a reference device tree configuration for this setup? OX05B1S - MAX96717 - MAX96724 - i.MX95 If not, could you please advise what changes are required to use this OX05B1S GMSL2 camera with the MX95MBDESER01 board? Thank you. Best regards, Tharun Re: OX05B1S GMSL2 camera with MAX96717/MAX96724 on i.MX95 Thank you for the clarification. We understand that the current BSP officially supports OX05B1S through the direct MIPI-CSI interface, while MAX96717/MAX96724 SerDes support is provided for OX03C10. We are using an OX05B1S camera module with a MAX96717 serializer connected to the i.MX95 through the MAX96724 deserializer. The GMSL2 link locks successfully, and the MAX96717 is accessible over the remote I2C channel. Is OX05B1S + MAX96717 + MAX96724 currently unsupported by the BSP, meaning that a custom driver/device-tree integration is required? Or is there any reference implementation or patch available for this combination? Re: OX05B1S GMSL2 camera with MAX96717/MAX96724 on i.MX95 current bsp supports  OX05B1S with MIPI_CSI miniSAS connector to connect imx95 board directly, The Omnivision OX03C10 sensor is supported on i.MX 95 using serializer/deserializer solutions from the following vendors: • Analog Devices: MAX96717/MAX96724 • Texas Instruments: DS0UB953/DS0UV960 for more detailed information, pls refer to the chapter 6.1.3 Cameras of reference manual https://www.nxp.com/docs/en/reference-manual/RM00293.pdf Re: OX05B1S GMSL2 camera with MAX96717/MAX96724 on i.MX95 yes, refer to the driver mx95mbcam.c which uses OX03C10, if you need change the camera, you should change this driver totally,  https://github.com/nxp-imx/linux-imx/blob/lf-6.18.y/drivers/media/i2c/mx95mbcam.c
View full article
IMX95のディスプレイコントローラセクションが欠落しています i.MX95リファレンスマニュアルのディスプレイコントローラに関するセクションは、意図的に1ページのみに限定され、詳細な説明はほとんどないようだ。なぜそうなのでしょうか? i.MX8のリファレンスマニュアルでは、このセクションははるかに詳細に記載されていることに気づきました。このドキュメントの変更には、何か特別な理由があるのでしょうか? Re: Imx95 missing display controller section こんにちは、 NXP Semiconductors製品にご関心をお寄せいただきありがとうございます。 i.MX 95はまだ試作段階であり、プロセッサやドキュメントは今後変更される可能性があります。製品リリース時には、お客様のディスプレイ使用に関する適切なドキュメントを含むリファレンスマニュアルが提供されることを期待しています。 よろしくお願いします。 Re: Imx95 missing display controller section これは、現時点でi.MX95リファレンスマニュアルRev. 1.0がまだ試産マニュアルのままであるためです。NXPのサポートチームにより、不完全なディスプレイコントローラ部分は意図的であり、ドキュメントもまだ変更中であることが確認されています。プロセッサが入手可能になった際には、リファレンスマニュアルの表示機能が強化されることが期待されています。 したがって、i.MX95ディスプレイコントローラの性能がi.MX8の実装と劣っているわけではありません。代わりに、現在のRMはお客様向けのドキュメントに関して未完成のままです。NXP製品ページでは、2026年3月30日付のi.MX95 RMのバージョンがRev. 1.0として表示されています。
View full article
Unable to Configure Tasks and ISRs in AUTOSAR OS for S32K144 Hi, I am currently integrating the AUTOSAR OS on the S32K144 MCU and have installed the S32K_AUTOSAR_OS_4_0_98_RTM_1_0_0 DTM package. After importing the OS module into EB tresos, I can only see the OSCounter container in the configuration editor. However, the OS User Manual describes additional configuration elements such as Tasks, ISRs, and other OS objects. Could you please clarify: Why are only OSCounter configurations visible in EB tresos? Is there any additional plugin, license, or configuration step required to enable Task and ISR configuration? What is the correct procedure for creating and configuring Tasks and ISRs for the S32K144 AUTOSAR OS? Also I want to configure task, ISR and OS related configuration. Any guidance or example project would be greatly appreciated. Thanks Re: Unable to Configure Tasks and ISRs in AUTOSAR OS for S32K144 Hi @Julián_AragónM , Thank you for your response. Currently I'm using v29.0.0 version of EB Tresos Devi_55_0-1786076176743.png Could you please suggest the appropriate RTD version that is compatible with this EB tresos release? Thank you for your support. Best Regards, Devi Re: Unable to Configure Tasks and ISRs in AUTOSAR OS for S32K144 Hi @Devi_55, SW32K14-OS401-RTM-1.0.0 b4.0.98 is legacy SW and no longer maintained. It is strongly recommended to transition to the newer RTDs (Real-Time Drivers for S32K1). For any further assistance or support, please reach out to your NXP representative.  After installing SW32K14-OS401-RTM-1.0.0 b4.0.98 RTM, I can see all of the included ones below. Julin_AragnM_0-1786054248282.png The release notes for this SW package mentions EB Tresos v21.0.0, pelase confirm you are using this build.   EB tresos Studio 21.0.0 b160607-0933  Best regards, Julián Re: Unable to Configure Tasks and ISRs in AUTOSAR OS for S32K144 Hi @Devi_55, Latest release of RTD for S32K1 (S32K1_S32M24x Real-Time Drivers AUTOSAR R21-11 Version 3.0.0 QLP07) uses EB Tresos v29.0.0: Julin_AragnM_0-1786119367226.png Best regards, Julián Re: Unable to Configure Tasks and ISRs in AUTOSAR OS for S32K144 Hello  I apologize; this was an oversight by my part.  RTD 3.0.0 QLP07 is the crypto release for the RTD drivers, QLP06 contains all of the base drivers (Adc, Can, Os, etc.): Julin_AragnM_1-1786379905338.png Best regards, Julián Re: Unable to Configure Tasks and ISRs in AUTOSAR OS for S32K144 Hello @Julián_AragónM , I have installed the S32K1_S32M24x Real-Time Drivers AUTOSAR R21-11 Version 3.0.0 QLP07 package, which is compatible with EB tresos v29.0.0. However, after reviewing the available plugins, I could not find several expected modules such as OS, ADC, Port, Dio, Spi, Can, Mcu, and other MCAL components. Could you please suggest which RTD/AUTOSAR package I should use if I need access to the complete set of MCAL drivers along with an AUTOSAR OS? If a different version of EB tresos is required for compatibility, I am willing to install and use the recommended version. I would appreciate your guidance on the appropriate package and toolchain for the S32K144. Devi_55_0-1786339741286.png Thank you. Best Regards, Devi Re: Unable to Configure Tasks and ISRs in AUTOSAR OS for S32K144 Hello @Julián_AragónM  Thank you for your response. I will verify this with the mentioned RTD version. Thanks Best Regards, Devi 
View full article
S32K312 安全启动认证 当启用安全启动时,切换到不同的 FBL 时,通过 HMAC 密钥生成的 META 数据值会发生变化。由于 FBL 发生更改,HSE 需要使用 HMAC 密钥重新计算 META 数据;但是,由于新的 FBL 删除了 HMAC 密钥,因此无法重新计算 META 数据。因此,由于 FBL 验证失败,发生 RESET,导致应用程序无法启动。是否可以通过HMAC密钥重新验证已更改的FBL,从而使FBL和应用程序都能正常运行? 运行 HSE_SRV_ID_SMR_ENTRY_INSTALL 服务时,HseResponse 返回 0xA5AA5317。这对应于以下定义: #define HSE_SRV_RSP_KEY_EMPTY ((hseSrvResponse_t)0xA5AA5317UL) 这表示钥匙为空。(正如我之前所问,我怀疑出现此回复是因为该区域已被擦除。) 我已经检查了 smrEntry 值。当我在 SecureBootState 为 0 的位置设置断点时,我确认 smrEntry 完全为 0。当我在 Fota_S32k3_SecureBootProcess 结束的返回点设置断点时,我确认这些值出现了。返回时,SecureBootState 值为 1。 如果您能指导我如何注入密钥或以其他方式解决此问题,我将不胜感激。 1) 当在 if(SecureBootState == 0) 处设置断点时 / 结果:smrEntry = 0 2) 在返回 secureBootProcessResult 处设置断点,这是 Fota_S32k3_SecureBootProcess 函数的最后一部分。 Re: S32K312 Secureboot Authentication 除了 HSE_KEY_TYPE_SHE 密钥类型之外,NVM 和 RAM 密钥目录中声明的所有加密密钥都可以配置(即,由主机通过密钥导入服务初始化和更新,该服务由结构 hseImportKeySrv_t 定义。 SHE 密钥由主机通过 hseSheLoadKeySrv_t 或 hseSheLoadPlainKeySrv_t 服务进行配置。密钥可以以明文或加密文本的形式安装,如上图所示,在演示中,所有密钥均以明文形式安装。 db16122_0-1785825417364.png 您是否尝试过 \S32K3_HSE_DemoExamples\ 中的 S32K344_Update_NVM_keys_related_test 参考,引用代码? # 更新 NVM 密钥。 1. 目标 本示例的主要目的是导入对称密钥和 AES GMAC 生成密钥。 2. 程序 实现这一目标的具体步骤如下: 1.格式化关键目录。 2.声明将更新初始版本的 HMAC 密钥信息。 3.声明一个密钥容器。 4.将密钥信息复制到密钥容器中。 5.复制容器中的密钥数据。 6. *您可以向容器中添加任何其他数据* 。 7.将 AES 配置密钥副本导入 RAM,以便使用 HSE 对容器进行签名。 8.对容器进行签名并生成 GMAC。 3. 硬件 本示例需要以下硬件才能正确运行: - S32K344-EVB 或 S32K344-CVB。 -如果使用 S32K344-CVB,则还需要外部调试器(PEmicro Multilink rev. C)。 Re: S32K312 Secureboot Authentication 嗨@jeongwoo 目前阻碍进一步进展的主要问题似乎是我们不知道 HMAC 密钥是否仍然可用。 首先,请您确认是否已按照我之前建议的方法进行检查,以及检查结果如何? “要确认密钥是否已被擦除,您可以使用服务 HSE_SRV_ID_GET_KEY_INFO,结构 struct hseGetKeyInfoSrv_t。使用此服务,您将在 hseKeyInfo_t 中获取信息,以便您可以检查密钥的状态。 一旦我们确认了密钥的状态,就可以进行下一步操作了。如果密钥丢失或已被删除,我们可以尝试重新安装。或者,您也可以尝试使用与最初配置过程中相同的步骤直接安装密钥,看看操作是否成功。 此致, Lukas Re: S32K312 Secureboot Authentication 密钥可通过 HSE 服务 HSE_SRV_ID_IMPORT_KEY 导入或更新。 请查看 HSE 固件参考手册修订版中的这些表格。2.7: 表47. 在 NVM 密钥目录中将密钥导入到空槽位时,密钥配置的使用情况 表48。在 NVM 密钥目录中更新密钥(非空槽位)时,密钥配置的使用情况 这解释了何时可以以明文形式导入密钥,以及何时需要进行身份验证和加密。 如果密钥槽为空且您拥有 SU 权限,则可以无需身份验证即可直接导入密钥。如果密钥槽不为空(您正在更新密钥)并且您拥有 SU 权限,则身份验证是强制性的,加密是可选的。 仅使用用户权限时,无论插槽是否为空,身份验证和加密始终是强制性的。 S32K344_Update_NVM_keys_related_test 示例仅展示了如何准备和签署用于身份验证密钥导入的密钥容器。但是,在这个例子中,密钥并没有被导入。 例如,S32K344_AES_EncryptDecrypt 中显示了密钥的导入。本项目中使用的 AES 密钥 API 为 LoadAesKey。对于 HMAC,可以使用 LoadHmacKey API。这可用于以明文形式导入 HMAC 密钥,无需身份验证或加密。 Re: S32K312 Secureboot Authentication 如果使用加密驱动程序,则可以使用 API Crypto_43_HSE_KeyElementSet 和 Crypto_43_HSE_KeySetValid 导入密钥。 您可以查看类似这样的RTD软件示例(或类似的示例,具体取决于您的RTD版本): c:\NXP\SW32K3_S32M27x_RTD_R23-11_7.0.0_QLP02\eclipse\plugins\Crypto_43_HSE_TS_T40D34M70I0R0\examples\S32DS\S32K3XX\Crypto_43_HSE_SymmetricPrimitives_S32K388\ Crypto 模块中没有用于请求超级用户权限的 API。 该程序在 HSE 固件参考手册修订版的“8.5 超级用户权限请求”部分中进行了描述。2.7. 您还可以参考 hse_crypto.c 文件中的 Grant_SuperUser_Rights() 函数。可以在 HSE DemoExamples 包中找到: https://www.nxp.com/webapp/Download?colCode=S32K3_HSE_DemoExamples 此致, Lukas Re: S32K312 Secureboot Authentication 你好,卢卡斯。 我在 Crypto_hse.c 中定义并调用了您提到的 HSE_SRV_ID_GET_KEY_INFO API。 jeongwoo_0-1786698965068.png 但是,GetKeyInfo 中的 If 语句没有被执行,所以我无法引用 KeyInfo 值。如果密钥丢失或已被删除,您可以尝试重新安装。 jeongwoo_1-1786699332158.png 或者,您能否指导我如何使用与配置过程中相同的步骤直接安装密钥,并验证该操作是否成功? 我接着导入了一个新的 HSE,并在生命周期现场管理中添加了一个不同的 FBL。如何获得SU权限?
View full article
imx95 15x15封装 DDR5的问题 Hi NXP     我现在正在调试imx95 15x15封装的DDR5,遇到了问题,DDR5:RS2G32LO5D4FB-31BT     1.我通过Config Tools for i.MX 26.06,校验,使用lpddr5_timing.c编译的.bin文件,烧录时,M33核出现了DDR OEI: done, err = -1     2.我将ddr的速率降到1866MT/s,还是出现-1的错误     3.我看sdk中没有发布官板的imx9596 15x15 ddr5 yrj_0-1786433338089.png yrj_1-1786433341485.png Re: imx95 15x15封装 DDR5的问题 Hi @yrj  imx95 不支持DDR5。 B.R Re: imx95 15x15封装 DDR5的问题 HI @pengyong_zhang       是lpddr5,支持吗 Re: imx95 15x15封装 DDR5的问题 该器件是LPDDR5,您可能需要查看其原理图。 Re: imx95 15x15封装 DDR5的问题 HI @yrj  对的,支持LPDDR5和LPDDR4X。 B.R
View full article
S32K312 Secureboot Authentication When changing to a different FBL while Secureboot is enabled, the META Data values ​​generated via the HMAC Key change. As the FBL is changed, the HSE needs to recalculate the META Data using the HMAC Key; however, because the HMAC Key is deleted due to the new FBL, recalculating the META Data becomes impossible. Consequently, a reset occurs due to a verification failure at the FBL, making it impossible to launch the application. Is there a way to re-authenticate the changed FBL using the HMAC Key, thereby allowing both the FBL and the application to run normally?  When running the HSE_SRV_ID_SMR_ENTRY_INSTALL service, HseResponse returns 0xA5AA5317. This corresponds to the following definition: #define HSE_SRV_RSP_KEY_EMPTY ((hseSrvResponse_t)0xA5AA5317UL) This indicates that the key is empty. (As I asked previously, I suspect this response appears because that region has been erased.) I have checked the smrEntry values. When I set a breakpoint at the point where SecureBootState is 0, I confirmed that smrEntry was entirely 0. When I set a breakpoint at the return point where Fota_S32k3_SecureBootProcess ends, I confirmed that the values appeared. At the time of return, the SecureBootState value was 1. I would greatly appreciate it if you could guide me on how to inject the key or otherwise resolve this issue. 1) When a breakpoint is set at if(SecureBootState == 0) / Result: smrEntry = 0 2) A breakpoint at return secureBootProcessResult, the last part of the Fota_S32k3_SecureBootProcess function Re: S32K312 Secureboot Authentication All cryptographic keys declared within the NVM and RAM key catalogs, except for the key type HSE_KEY_TYPE_SHE, can be provisioned (i.e. initialized and updated) by the host via a key import service, defined by the structure hseImportKeySrv_t. The SHE keys is provisioned by the host via services hseSheLoadKeySrv_t or hseSheLoadPlainKeySrv_t.The keys can be installed in plain or encrypted text as shown in the above figure, in the demo all keys are installed in plain text. db16122_0-1785825417364.png Do you try the reference code about S32K344_Update_NVM_keys_related_test at \S32K3_HSE_DemoExamples\? # Update NVM keys. ## 1. Objective The main purpose of this example is to a import symmetric key and AES GMAC generate keys. ## 2. Procedure The steps followed to achieve this are: 1. Format Key Catalogs. 2. Declare the HMAC key info that will update initial version. 3. Declare a key container. 4. Copy the key info to the key container. 5. Copy the key data in the container. 6. *You can add any other data to the container*. 7. Import in RAM a copy of the AES provision key to sign the container using the HSE. 8. Sign the container and generate GMAC ## 3. Hardware This example requires the following hardware in order to properly execute: - S32K344-EVB or S32K344-CVB. - If using S32K344-CVB, then an external debugger is also required (PEmicro Multilink rev. C). Re: S32K312 Secureboot Authentication Hi @jeongwoo  It seems that the primary issue currently blocking further progress is that we do not know whether the HMAC key is still available. As a first step, could you please confirm whether you have performed the check I suggested previously and what the result was? “To confirm if the key is erased or not, you can use service HSE_SRV_ID_GET_KEY_INFO, structure struct hseGetKeyInfoSrv_t. Using this service, you will get information in hseKeyInfo_t, so you can check the state of key.” Once we have confirmed the state of the key, we can proceed with the next steps. If the key is missing or has been erased, we can try to install it again. Alternatively, you could also attempt to install the key directly using the same procedure that was originally used during provisioning and see whether the operation succeeds. Regards, Lukas Re: S32K312 Secureboot Authentication A key can be imported or update by HSE service HSE_SRV_ID_IMPORT_KEY. Take a look at these tables in HSE Firmware reference manual rev. 2.7: Table 47. Key provisioning usage when importing a key in an empty slot in the NVM key catalog Table 48. Key provisioning usage when updating  a key (non-empty slot) in the NVM Key Catalog This explains when a key can be imported in plain and when authentication and encryption is needed. If a key slot is empty and you have SU rights, a key can be imported in plain without authentication. If a key slot is not empty (you are updating a key) and you have SU rights, authentication is mandatory and encryption is optional. With user rights only, authentication and encryption is always mandatory regardless of fact that a slot is empty or not. S32K344_Update_NVM_keys_related_test example only shows, how to prepare and sign a key container which is needed for authenticated key import. But the key is not imported in this example. Import of a key is shown in S32K344_AES_EncryptDecrypt, for example. Used API for AES key is LoadAesKey in this project. For HMAC, there’s LoadHmacKey API. This can be used for import of HMAC key in plain without authentication or encryption. Re: S32K312 Secureboot Authentication If Crypto driver is used, a key can be imported using API Crypto_43_HSE_KeyElementSet and Crypto_43_HSE_KeySetValid. You can check RTD SW example like this one (or similar, depending or RTD version you have): c:\NXP\SW32K3_S32M27x_RTD_R23-11_7.0.0_QLP02\eclipse\plugins\Crypto_43_HSE_TS_T40D34M70I0R0\examples\S32DS\S32K3XX\Crypto_43_HSE_SymmetricPrimitives_S32K388\ There’s no API to request super user rights in Crypto module. The procedure is described in section “8.5  Request for Super User rights” in HSE firmware reference manual rev. 2.7. You can also follow function Grant_SuperUser_Rights() in file hse_crypto.c which can be found in HSE DemoExamples package: https://www.nxp.com/webapp/Download?colCode=S32K3_HSE_DemoExamples Regards, Lukas Re: S32K312 Secureboot Authentication Hello Lukas I defined and called the HSE_SRV_ID_GET_KEY_INFO API you mentioned in Crypto_hse.c. jeongwoo_0-1786698965068.png However, the If statement in GetKeyInfo is not entered, so I am unable to reference the KeyInfo value. If the key is missing or has been erased, you can try installing it again. jeongwoo_1-1786699332158.png Alternatively, could you guide me on how to install the key directly using the same procedure used during provisioning and verify if that operation succeeds? I proceeded by importing a new HSE and adding a different FBL in the Life-Cycle In-Field. How can I obtain SU privileges?
View full article
S32K312 Secureboot認証 Securebootが有効になっている状態で別のFBLに変更すると、HMACキーを介して生成されるMETAデータ値が変更されます。FBLが変更されると、HSEはHMACキーを使用してメタデータを再計算する必要があります。しかし、新しいFBLによってHMACキーが削除されるため、メタデータの再計算が不可能になります。その結果、FBLでの検証失敗によりリセットが発生し、アプリケーションの起動が不可能になります。HMACキーを使って変更されたFBLを再認証し、FBLとアプリケーションの両方が正常に動作できるようにする方法はありますか? HSE_SRV_ID_SMR_ENTRY_INSTALL サービスを実行すると、HseResponse は 0xA5AA5317 を返します。これは以下の定義に相当します。 #define HSE_SRV_RSP_KEY_EMPTY ((hseSrvResponse_t)0xA5AA5317UL) これは、鍵が空であることを示しています。(以前にも質問したように、この応答が表示されるのは、その領域が削除されたためではないかと推測しています。) smrEntryの値を確認しました。SecureBootStateが0になる箇所にブレークポイントを設定したところ、smrEntryが完全に0であることを確認しました。Fota_S32k3_SecureBootProcessが終了する戻り点にブレークポイントを設定したところ、値が表示されることを確認しました。帰還時のSecureBootStateの値は1でした。 キーの注入方法やこの問題の解決方法について、ぜひご案内いただけると大変ありがたいです。 1) if(SecureBootState == 0) にブレークポイントが設定された場合 / 結果: smrEntry = 0 2) Fota_S32k3_SecureBootProcess 関数の最後の部分である return secureBootProcessResult にブレークポイントを設定します。 Re: S32K312 Secureboot Authentication NVMおよびRAMキーカタログ内で宣言されたすべての暗号鍵は、鍵タイプHSE_KEY_TYPE_SHEを除き、プロビジョニング可能です(すなわち、ホストによって初期化および更新されるキーインポートサービスは、構造体 hseImportKeySrv_t で定義されます。 SHE鍵はホストがサービスhseSheLoadKeySrv_tまたはhseSheLoadPlainKeySrv_tを通じて提供します。鍵は上記の図のようにプレーンテキストまたは暗号化テキストでインストールでき、デモではすべてのキーがプレーンテキストでインストールされています。 db16122_0-1785825417364.png \S32K3_HSE_DemoExamples\にあるS32K344_Update_NVM_keys_related_testに関するリファレンスコードを試してみましたか? # NVMキーを更新します。 ## 1. 目的 この例の主な目的は対称鍵をインポートし、AES GMACが鍵を生成することです。 ## 2. 手順 これを実現するために取られた手順は以下のとおりです。 1.キーカタログのフォーマット。 2.初期バージョンを更新するためのHMACキー情報を宣言します。 3.キーコンテナを宣言します。 4.キー情報をキーコンテナにコピーします。 5.コンテナ内のキーデータをコピーします。 6. *コンテナに他のデータを追加CAN*。 7. HSEを使ってコンテナに署名するためのAESプロビジョニングキーのコピーをRAMにインポートします。 8.コンテナに署名し、GMACを生成する ## 3. ハードウェア この例を正しく実行するには、以下のハードウェアが必要です。 - S32K344-EVB または S32K344-CVB。 - S32K344-CVBを使用する場合は、外部デバッガ(PEmicro Multilink rev. C)も必要です。 Re: S32K312 Secureboot Authentication こんにちは、 @jeongwoo 現在、さらなる進展を阻んでいる主な問題は、HMACキーがまだ利用可能かどうか不明であることのようです。 まず最初に、先ほど提案した検査を行ったか、また結果を教えていただけますか? 「キーが消去されているかどうかを確認するには、サービスHSE_SRV_ID_GET_KEY_INFO、構造構造hseGetKeyInfoSrv_tを使えます。このサービスを使うと、hseKeyInfo_tの情報を得られるので、キーの状態を確認できます。」 キーの状態を確認したら、次のステップに進めます。もしキーが欠けているか消去されていれば、再インストールを試みることができます。あるいは、プロビジョニング時に最初に使った手順と同じ手順でキーを直接インストールしてみて、操作が成功するかどうかを確認することもできます。 よろしくお願いいたします。 ルーカス Re: S32K312 Secureboot Authentication 鍵はHSEサービスHSE_SRV_ID_IMPORT_KEYによってインポートまたは更新可能です。 HSEファームウェアのリファレンスマニュアルのこれらの表を見てみてください。2.7: 表47。NVMキーカタログの空きスロットにキーをインポートする際のキープロビジョニングの使用方法 表48。NVMキーカタログ内のキー(空きスロット以外)を更新する際のキープロビジョニングの使用 これにより、鍵を単純にインポートできる場合や認証や暗号化が必要な場合が説明されます。 キースロットが空でSU権限がある場合、認証なしで単純にインポートできます。キースロットが空でない場合(鍵を更新している場合)、そしてSU(鍵の更新)権限がある場合、認証は必須で暗号化は任意です。 ユーザー権限のみの場合、スロットが空いているかどうかに関わらず認証と暗号化が常に義務付けられます。 S32K344_Update_NVM_keys_related_test の例では、認証済みキーのインポートに必要なキーコンテナを準備して署名する方法のみを示しています。しかし、この例ではキーはインポートされていません。 鍵のインポートは、例えばS32K344_AES_EncryptDecrypt関数で示されています。このプロジェクトでAESキーに使われているAPIはLoadAesKeyです。HMACについては、LoadHmacKey APIがあります。認証や暗号化なしで、HMAC鍵を平文でインポートするために使用できます。 Re: S32K312 Secureboot Authentication Cryptoドライバーを使用する場合、API Crypto_43_HSE_KeyElementSetとCrypto_43_HSE_KeySetValidを使って鍵をインポートできます。 RTDのソフトウェア例(またはRTDバージョンによっては類似)を確認できます。 c:\NXP\SW32K3_S32M27x_RTD_R23-11_7.0.0_QLP02\eclipse\plugins\Crypto_43_HSE_TS_T40D34M70I0R0\examples\S32DS\S32K3XX\Crypto_43_HSE_SymmetricPrimitives_S32K388\ Cryptoモジュールにはスーパーユーザー権利を要求するAPIはありません。 手順はHSEファームウェアリファレンスマニュアルrevの「8.5 スーパーユーザー権利の要求」セクションで説明されています。2.7. ファイルhse_crypto.cの関数Grant_SuperUser_Rights()に従うこともできますこれはHSEのDemoExamplesパッケージで見つけることができます: https://www.nxp.com/webapp/Download?colCode=S32K3_HSE_DemoExamples よろしくお願いいたします。 ルーカス Re: S32K312 Secureboot Authentication こんにちは、ルーカス Crypto_hse.c で、ご指摘いただいた HSE_SRV_ID_GET_KEY_INFO API を定義し、呼び出しました。 jeongwoo_0-1786698965068.png しかし、GetKeyInfoのIf文は入力されていないため、KeyInfoの値を参照できません。キーが欠けているか消去されている場合は、再度インストールを試すことができます。 jeongwoo_1-1786699332158.png あるいは、プロビジョニング時に使った手順と同じ手順でキーを直接インストールし、その操作が成功したかどうかを教えてもらえますか? 新しいHSEをインポートし、ライフサイクル・インフィールドに別のFBLを追加することで作業を進めました。SU特権はどうやって取得できますか?
View full article
Imx95 缺少显示控制器部分 看来i.MX95参考手册中的显示控制器部分故意仅限于一页,几乎没有细节。为什么会这样呢? 我注意到,在i.MX8参考手册中,本节要全面得多。文件编制方法的这种变化有什么具体原因吗? Re: Imx95 missing display controller section 您好, 感谢您对恩智浦半导体产品的关注, i.MX 95 仍处于预生产阶段,处理器作为文档仍可能发生变化,在版本后,我希望有一本参考手册,其中包含适合客户显示器使用的显示文档。 此致 Re: Imx95 missing display controller section 这是因为,目前 i.MX95 参考手册 Rev. 1.0 仍是预生产手册。NXP 支持团队已确认,显示控制器部分内容不完整是故意的,并且文档仍在不断修改中。他们希望处理器上市后,参考手册中能有更完善的显示部分。 因此,这并不意味着 i.MX95 显示控制器的性能比 i.MX8 实现的性能要差。然而,目前的RM在面向客户的文档方面仍未完成。NXP 产品页面目前显示 i.MX95 RM 的版本为 Rev. 1.0,日期为 2026 年 3 月 30 日。
View full article