Multi Source Translation Content

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

Multi Source Translation Content

ディスカッション

ソート順:
K5 用于时钟的热电阻 你好,团队 请问时钟配置的 K5 RTD 如何? 如果我从 RTD 打开 GPT 演示,核心时钟显示如下。 我还看到了一些有关时钟和 PLL 代码的手动代码。 目前的 RTD 不是完全支持时钟功能吗? 谢谢。 RTD S32_CONFIG_TOOL 来源:恩智浦内部来源:恩智浦内部 Re: K5 RTD for Clock 你好@Nhi_Nguyen 感谢你的支持 不过,我查看了其他演示,也有类似的情况,即"0" 时钟... 我不确定当前版本是否支持 Clock 配置.....,这些只是示例问题,是否支持... 问题是 当前的 RTD 是否支持时钟配置? 谢谢。 谢谢! Re: K5 RTD for Clock 你好@Luke_Chun、 在我看来,现在似乎还没有这个例子。我开了罚单:ARTDCT2-882。您可以按照 RM S32K5RM_Rev1_DraftJ 中的第 42-49 章时钟来配置时钟,我在票据中也提到了一些时钟。 顺祝商祺! Nhi Re: K5 RTD for Clock 你好@Nhi_Nguyen 我使用 CD3。 所以,你的意思是 CD 5 在时钟配置方面运行良好。这样理解对吗? (我会尝试添加 CD5,但它看起来还没有版本...) 谢谢。 Re: K5 RTD for Clock 你好@Luke_Chun、 我没看到您的配置。我正在使用软件包 SW32N_RTD_R21-11_1.8.0_CD05。你的包裹和例子是什么? 顺祝商祺! Nhi Re: K5 RTD for Clock 你好@Luke_Chun、 对不起,我以为你问的是 S32N。我检查一下 K5,然后再联系你。 顺祝商祺! Nhi Re: K5 RTD for Clock 你好@Luke_Chun、 我看到配置时钟可以配置。PLT_CORE 可以选择其他时钟: 你可以尝试使用它。如果你发现问题,可以回来找我。 此版本中的所有模块都只是代码删除资格。 我没有看到代码包中附有 MCU/Clock 的示例。 顺祝商祺! Nhi
記事全体を表示
MCUXpresso ではグローバル変数は機能しません。 私は MKE06Z128VQH4 を使用してプログラムをデバッグしており、特に Bluetooth に使用する UART バッファー内の受信値を確認するためにグローバル変数を使用したいと考えていました。しかし、再生を押すと、変数はグローバルであるにもかかわらず、使用不可として表示されます。また、メイン関数にcontaという変数を追加して、それが増分されるかどうか確認し、テストしましたが、まだ使用できないように表示されます。すでに設定に入り、「ライブ変数サービスを有効にする」を無効にしました。私は中国製の J-Link プログラマーを使用しています。 Iotelctronic_0-1764607762489.png Iotelctronic_1-1764607894650.png Iotelctronic_2-1764607934868.png Re: Global variables are not working in MCUXpresso. Hello 使用している MCUXpresso IDE のバージョンを確認していただけますか?MKE06Z128VQH4 のプロジェクトを作成するプロセスについて説明していただけますか? 「conta」の宣言を共有していただけますか? 中国の J-Link プログラマーについての詳細を教えていただけますか? よろしくお願いいたします。 ルイス Re: Global variables are not working in MCUXpresso. こんにちは。返信ありがとうございます。私は MCUXpresso IDE v24.12 を使用しており、構成ツールを使用して構成を行っています。現時点では、メイン ループで増加するグローバル変数のみをテストしています。UART はすでに実行されており正常に動作しているため、クロックの問題はありません。他のプロジェクトのニーズを続行し、プログラムの実行中に変数の値を監視するために、最初はライブ式で変数の更新をリアルタイムで確認したいと考えていました。中国製プログラマーについて話すとき、私は AliExpress で購入した J-Link Segger v9-G プログラマーについて言及しています。中国人プログラマーと言うとき、それは独創的ではないという意味ですが、それが問題だとは思いません。私の最初のテストコードは次のとおりです。 #include "pin_mux.h" #include "board.h" #include "fsl_uart.h" #include "fsl_debug_console.h" #include /******************************************************************************* * Definitions ******************************************************************************/ #define DATA_UART UART0 #define DATA_UART_CLK_FREQ CLOCK_GetFreq(kCLOCK_BusClk) #define DATA_UART_IRQn UART0_IRQn #define DATA_UART_IRQHandler UART0_IRQHandler /******************************************************************************* * Variables Globales ******************************************************************************/ uint32_t conta = 0; unsigned char rx_aux; /******************************************************************************\ * * ************************* otra recepcion uart de prueba ****************** */ void UART0_IRQHandler(void) { if (UART0->S1 & UART_S1_RDRF_MASK) { rx_aux = UART0->D; //lê o caracter recebido } } /******************************************************************************* * Main Application ******************************************************************************/ int main(void) { uart_config_t uart_config; /*** 1. INICIALIZACIÓN ***/ BOARD_InitBootPins(); BOARD_InitBootClocks(); BOARD_InitDebugConsole(); /*** 2. CONFIGURACIÓN UART0 ***/ UART_GetDefaultConfig(&uart_config); uart_config.baudRate_Bps = 115200; uart_config.enableTx = true; uart_config.enableRx = true; UART_Init(DATA_UART, &uart_config, DATA_UART_CLK_FREQ); /*** 3. CONFIGURACIÓN INTERRUPCIONES ***/ DATA_UART->C2 |= UART_C2_RIE_MASK; // Habilita interrupción RX NVIC_SetPriority(DATA_UART_IRQn, 0); NVIC_EnableIRQ(DATA_UART_IRQn); while (1) { conta++; /********************************************************/ // Delay mínimo for(volatile int i = 0; i < 50; i++); } } Re: Global variables are not working in MCUXpresso. こんにちは、 プログラム実行中にグローバル変数の更新を監視して視覚化します MCUXPRESSO-UG [MCUXPRESSO IDE ユーザーガイド] の14.10章を参照してください。 また、この投稿では簡単な説明であなたを導くことができます EclipseとMCUXpresso IDEsを使用してターゲット実行中にグローバル変数を視覚化する | MCU on Eclipse 敬具、ルイス Re: Global variables are not working in MCUXpresso. ありがとうございます。J-Link は「ノンストップ モード」を受け入れず、MCU-Link などの LinkServer 互換デバッガーのみを受け入れることがわかりました。
記事全体を表示
i.MX 8M Plus DDR4 終端 i.MX 8M Plus(品番:MIMX8ML8CVNKZAB)のDDR4接続を確認したいと思います。 8MMINID4-EVK-DESIGNFILES を参照として使用していますが、この回路にはアドレス信号と制御信号用の VTT 終端がありません。 これは、VTT 終了または VTT アイランドは不要であることを意味しますか? Re: i.MX 8M Plus DDR4 Termination ご回答ありがとうございます。 何をすればいいのか分からなかったので、外部VTT終端装置を設置しました。 しかし、VTT 終端でも正常に動作しますか? Re: i.MX 8M Plus DDR4 Termination NXP の i.MX 8M Plus のハードウェアデザインガイドラインでは、SoC と DRAM が内部で終端を処理するため、DDR4 アドレス/制御信号に VTT 終端は必要ないことを確認しています。 SO、弊社のリファレンス・デザインを参照してください。 i.MX 8M Quad/Mini/Nano/Plus - LPDDR4、DDR4、DDR3Lメモリ互換性ガイド - NXPコミュニティ DDR サポートに役立ちます。 Re: i.MX 8M Plus DDR4 Termination   この構成ではVTT終端は必要ありません EVK および NXP ハードウェアデザインガイドに従います: ACC ラインの外部 VTT 終端を削除します。 VTTを維持する場合: VTT = VDDQ/2 であることを確認し、必要な電流をソース/シンクできることをCANします。 シミュレーションまたは測定によって信号の整合性を検証します。 ソフトウェアで DDR の初期化とトレーニングを確認します (VREFDQ キャリブレーション、書き込み/読み取りレベリング)。
記事全体を表示
プログラムをコンパイルできません。     awawawda_2-1764290594254.png クリーニング後のビルドプロセスに問題が発生していますが、クリーニングなしでは正常に動作します。画像に示されているエラーの通りです。この問題をどのように解決すればよいでしょうか? Re: 程序无法编译 こんにちは、 クリーン ビルドを実行した後にのみビルド エラーが発生します。クリーン ステップをスキップすると、ビルドは正常に動作します。 これは通常、次のような問題を示しています。 クリーンアップ後のインクルード パスが欠落しているか正しくありません。 生成されたファイルが適切に再作成されない (例: EB Tresos や RTD などのツールによって生成されたコード)。 依存関係が正しく定義されていない Makefile の不整合。SO、必要な中間ファイルが削除されます。 解決するための推奨手順: クリーンアップ後に、ビルド コンソールの出力で不足しているファイルや未定義のシンボルがないか確認します。 プロジェクト設定を確認します。 ヘッダーのパスを含めます。 リンクされたライブラリ。 S32 Design Studio または CodeWarrior を使用する場合は、次の点を確認してください。 ビルド前の手順では、必要なすべてのファイルが再生成されます。 makefile には、生成されたソースのルールが含まれています。 出力ディレクトリを手動で削除して再構築し、ワークスペースが破損していないことを確認してください。 問題が解決しない場合は、ビルド ログをエクスポートし、クリーン ビルドと非クリーン ビルドを比較して、不足している手順を特定します。 よろしくお願いいたします。 ピーター
記事全体を表示
imx91: 768MBit LPDDR4を部分的に使用 こんにちは、 imx91 カスタム ボード上で u-boot(-imx) を実行しようとしています。私の要件は、さまざまな RAM サイズをサポートし、最初の 512 MiB を使用し、残りを無視することです。512 MiB の lpddr4 タイミング ファイルを作成し、サイズとして 0x20000000 を設定すると、正常に動作します。 768 MiB (12 Gbit) DDR を搭載したボードで同じ flash.bin ファイルを起動しようとすると、SPL を超えて起動しません。 U-Boot SPL 2025.04-g56fb301b0da9-dirty (Nov 27 2025 - 13:04:08 +0100) SOC: 0xa0009100 LC: 0x2040010 DDR: 1600MTS ddr_init succeeded // custom print by me Normal Boot Trying to boot from BOOTROM Boot Stage: USB boot Find img info 0x88000000, size 416 Download 1661952, Total size 1662976 512 MiBのボードでは、ブートは次のように続行されます。 NOTICE: TRDC init done NOTICE: BL31: v2.10.0 (release):automotive-15.0.0_1.3.0 NOTICE: BL31: Built : 12:42:08, Sep 3 2025 U-Boot 2025.04-g56fb301b0da9-dirty (Nov 27 2025 - 11:44:55 +0100) Reset Status: POR そのため、imx-atf はどういうわけか 768 MiB を受け入れないのではないかと思いました。どう思いますか?これをデバッグする方法をご存知ですか? Re: imx91: Using 768MBit LPDDR4 partially こんにちは、 DDR サイズの異なるボードごとに個別の u-boot.imx が必要です。 よろしくお願いいたします。 Re: imx91: Using 768MBit LPDDR4 partially 結局のところ、nxp ddr ツールは、2025 年 12 月 25 日に予定されている次のリリースでのみ imx91 1.5Gb のサポートを取得します。 私は、imx93 プロセッサを使用して 12Gbit 密度のタイミング ファイルを作成し、MTS を編集して、512 MB と 768 MB の DDR の両方で実行しました (必要なのは 512 MB のみと想定)。
記事全体を表示
有源天线概念 您好, 我们正在开发 NFCB 标签,希望使用 CLRC663 的 "有源天线概念 "来验证我们的无射频数字技术。然而,在使用这种模式时,我们有以下疑问。 1) 是否有这方面的文献资料? 2) 当 SIGIN 引脚配置为接收通用信号时(即 rcv.siginsel = 11),我们应该发送数字副载波波形 (847khz) 还是基带 (106khz) 信号? 3) SIGIN 信号是否应包括 SOF、EOF? 4) 我们是否需要将 SIGIN 上的信号与读者的 fC 同步? 谢谢、 普拉宾 Re: Active antenna concept 你好 遗憾的是,只有数据表提到了有源天线概念。没有示例和更多文档供您参考。
記事全体を表示
LPCGレジスタ予約ビット推奨値 iMX8 リファレンス マニュアルには、LPCG レジスタの RESERVED ビットの推奨値に関する記載はありません。 RESERVED ビットも 1 に設定CANますか? 実際には、 'CLK_SWEN' ビットを設定するために、LPCG レジスタに汎用パターンとして 0x22222222 を初期化しています。RESERVED ビットに 1 をプログラムすると、何か影響がありますか? Re: LPCG Register Reserved bits recommended value NXP サポートの担当者が私の質問に答えてくれますか? 」 iMX8 リファレンス マニュアルには、LPCG レジスタの RESERVED ビットの推奨値に関する記載はありません。 RESERVED ビットも 1 に設定CANますか? 実際には、 'CLK_SWEN' ビットを設定するために、LPCG レジスタに汎用パターンとして 0x22222222 を初期化しています。RESERVED ビットに 1 をプログラムすると、何か影響がありますか?
記事全体を表示
IMX415カメラ移植 imx8mplus こんにちは、 私は、Sony IMX415 カメラ センサを NXP i.MX8M Plus (IMX8MP) プラットフォームに移植する作業に取り組んでいます。 移植プロセス中に、ISP チューニング ツールを使用してXML ファイルを生成することがいくつかの参照で言及されています。 私の質問は次のとおりです: IMX415 を IMX8M Plus で動作させるには本当に XML ファイルを生成する必要がありますか? これらの XML ファイルは、基本的なセンサの起動 (V4L2 / ISI を介したストリーミング) に必須ですか? XML 生成を回避する回避策または最小限の構成方法はありますか? IMX8Mプラス Re: IMX415 camera porting imx8mplus これは良い質問ですね。 ここでわかるように、xml 構成/キャリブレーション ファイルは依然として必要です。 -AN13712: 8MP ISP OS08A20 センサ -AN13713: 8MP ISP 新カメラ移植 しかし、NXP が最近これを削除した理由はわかりません。 Re: IMX415 camera porting imx8mplus 私見では、xml ファイルが必要です。最初は同じ解像度のものを使用して、後で微調整することCAN。 以下も参照: https://community.nxp.com/t5/i-MX-Processors/IMX8M-Plus-ISP/mp/2220156/emcs_t/S2h8ZW1haWx8dG9waWNfc3Vic2NyaXB0aW9ufE1JN0JJTUJFRVZXMTA2fDIyMjAxNTZ8U1VCU0NSSVBUSU9OU3xoSw#M242307 Re: IMX415 camera porting imx8mplus こんにちは、 その XML ファイルに関してもう一つ疑問があります。 現時点ではカメラ センサ OS08A20 の XML ファイルがありますが、同じ XML ファイルを imx415 センサに使用できますか? Re: IMX415 camera porting imx8mplus 返信ありがとうございます。しかし、最近の isp-imx プロジェクトから xml ファイルが削除されるというのはどういう意味ですか?新しいカメラセンサを移植する際にはそれらは不要になりますか? Re: IMX415 camera porting imx8mplus PS: バイパスするように設定した場合でも、Dewarp モジュールを構成する必要があるため、対応する json ファイルも必要です。 Re: IMX415 camera porting imx8mplus XML ファイルを取得するにはどうすれば CAN ますか?何かアイデアがあれば教えてください。OS08A20 の場合、「Sensor0_Entry_os08a20.cfg」という名前のファイルがあり、ファイル内には次の内容が含まれています。 名前="os08a20" drv = "os08a20.drv" モード= 0 [モード.0] xml = "OS08a20_8M_10_1080p_リニア.xml" dwe = "dewarp_config/sensor_dwe_bypass_1080P_config.json" [モード1] xml = "OS08a20_8M_10_1080p_hdr.xml" dwe = "dewarp_config/sensor_dwe_bypass_1080P_config.json" [モード2] xml = "OS08a20_8M_10_4k_linear.xml" dwe = "dewarp_config/sensor_dwe_bypass_4K_config.json" [モード3] xml = "OS08a20_8M_10_4k_hdr.xml" dwe = "dewarp_config/sensor_dwe_bypass_4K_config.json 私の疑問は、これらの json ファイルが必要かどうかということです。 Re: IMX415 camera porting imx8mplus 最近の isp-imx プロジェクトから xml ファイルは削除されましたが、以前のプロジェクトからは取得CANます。 isp-imx-4.2.2.xx.0.bin の xx を以前のバージョンに置き換えます。 例を確認してください: https://www.nxp.com/lgfiles/NMG/MAD/YOCTO/isp-imx-4.2.2.18.0.bin https://www.nxp.com/lgfiles/NMG/MAD/YOCTO/isp-imx-4.2.2.20.0.bin 等...
記事全体を表示
U-BootでのiMX8MP PCIe初期化 こんにちは、 お客様は、U-Boot で NVMe ドライブを初期化して、iMX8MP にイメージ (カーネルと rootfs) をロードしています。これは問題なく動作し、NVMe ディスクが正しく検出され、システムの起動が開始されます。ただし、一部の特定の SoM では、Linux カーネルが PCIe インターフェースを初期化してもリンクが確立されません。これは、影響を受ける SoM で約 30% の確率で発生します。初期化に失敗した場合のエラー メッセージは次のとおりです。 phy phy-32f00000.pcie-phy.0: phy poweron failed --> -110 影響を受けない SoM は 100% の時間で動作します。PCIe が U-Boot で初期化されていない場合、影響を受ける SoM は Linux 上で 100% 動作し、NVMe ディスクで 12 時間のストレス テストを問題なく実行しました。 この問題は、Linux カーネルがすでに初期化されている PCIe インターフェースを初期化する方法に関連している可能性が非常に高いです。カーネルはインターフェースがすでに初期化されていることを認識していないため、プロセス全体を最初から実行し、一部のモジュールで失敗することがあります。 リセット状態にならないまま再構成されると、PLL が適切にロックされない可能性があると思います。ただし、前述のとおり、これは 100% のハードウェアで再現できるわけではないため、何らかの HW バリエーション (SO C、SO M) も影響を与えているはずです。 何が問題なのかについてヒントをCAN人はいますか? ありがとうございます ラファエル Re: iMX8MP PCIe initialization in U-Boot こんにちは、 pll はデバイス ツリーでチェックする必要があり、必要に応じて変更する必要があります。 よろしくお願いします。 Re: iMX8MP PCIe initialization in U-Boot 回答ありがとうございます! お客様はカーネル イメージと rootfs を NVMe ディスクからロードしたいと考えており、そのために U-Boot 初期化を追加しました。このため、起動後に PCIe/NVMe を初期化することはできません。 すでに確認しましたが、カーネルを起動する前に U-Boot で PCIe インターフェースを適切に初期化解除する方法があれば問題ありません。すでに PCIe リセットを試みましたが、解決しませんでした。 あなたがおっしゃることからすると、問題は PCIe ペリフェラルよりも PLL に関連しているように見えます。また、解決方法に関するご提案からすると、PCIe だけでなく、より多くのペリフェラルに対応する PLL である可能性があるようです。 Linux を起動する前にリセットを試みることができる特定の PLL はありますか?これらの問題を回避するためにリセットする正しい方法は何でしょうか? Re: iMX8MP PCIe initialization in U-Boot こんにちは、 Linux カーネルがすでに初期化されている PCIe インターフェースを初期化するときに断続的に発生する障害の原因を特定できます。 発生している問題は、U-Boot と Linux 間の PCIe インターフェース初期化シーケンスに関連しているようです。U-Boot が PCIe インターフェースを初期化して NVMe からイメージをロードし、その後 Linux が適切なリセットを行わずに同じインターフェースを再初期化しようとすると、影響を受ける SoM で約 30% の確率で失敗する競合状態が発生します。 これは PLL 構成の問題と一致しています。Linux カーネルがすでに初期化された PCIe インターフェースを再構成しようとすると、初期化間でハードウェアが適切にリセットされない場合に PLL ロックの問題が発生する可能性があります。 解決策としては、次の 3 つが考えられます。 1. U-Boot での PCIe 初期化を完全に無効にします。これは 100% の動作を確認済みです。これが最も信頼できるアプローチでしょう。 2. sys エントリを追加して、Linux に適切な PCIe サスペンド/再開機能を実装します。 - PCIe サスペンド/レジュームの sys エントリを追加するパッチを作成する - PCIe EPデバイスを削除します: `echo 1 > /sys/bus/pci/devices/0000\:00\:00.0/remove` - PCIe を無効にする: `echo 1 > /sys/devices/platform/soc\@0/33800000.pcie/pcie_dis` - PCIe を有効にする: `echo 0 > /sys/devices/platform/soc\@0/33800000.pcie/pcie_dis` - PCIeバスを再スキャン: `echo 1 > /sys/bus/pci/rescan` 3. PCIe ドライバをモジュールとしてビルドし、ブート シーケンスを変更します。 - まずLinuxを起動する - 必要な初期化を待つ - 必要に応じてPCIe ドライバモジュールをロードする この問題は他の i.MX8MP 実装でも確認されており、特に異なる SoM バッチ間でのハードウェア許容度のばらつきが顕著です。Linux カーネルの PCIe ドライバは、初期化されていないハードウェアで動作していると想定しているため、実際にはそうでない場合は競合が発生する可能性があります。 よろしくお願いします。 Re: iMX8MP PCIe initialization in U-Boot ありがとうございます。この情報の後、Linux ドライバが起動する前に PHY をリセットすると問題が解決することがわかりました。
記事全体を表示
How to Import i.MX93 Cortex-M33 Board and SDK into MCUXpresso IDE? 📌 Context: I'm trying to get started with development on the i.MX93 Cortex-M33 (MCIMX93-EVK) board using MCUXpresso IDE. I have downloaded the SDK ZIP from the NXP website, but I'm not able to successfully import the board or use its examples. 🛠️ What I Have Done: Downloaded the SDK ZIP: SDK_25_03_00_MCIMX93-EVK.zip from mcuxpresso.nxp.com Opened MCUXpresso IDE (version: please specify here) Went to: Installed SDKs > Import → selected the ZIP file SDK appears under Installed SDKs in the IDE. However, when I go to “Import SDK example(s)”, nothing shows up, or I'm unable to build the imported project. ❓ My Question: What is the correct and complete procedure to import i.MX93 Cortex-M33 board and SDK into MCUXpresso IDE so that I can: See the board supported Access demo/example applications (like hello_world) Build and debug projects without errors 🔍 Additional Notes: I'm targeting the Cortex-M33 core of the i.MX93 I want to use MCUXpresso IDE only (not IAR or VS Code) 🧪 Expected Outcome: Be able to import and build example projects like hello_world or led_blinky for cm33_core0 on the MCIMX93-EVK board using MCUXpresso IDE. Let me know if any additional tools or configuration are required to make this work. Thanks in advance! i.MX93EVK #i.mx93 cortex-m33 i.MX93  #MCUXpressoIDE ##MCUXpressoSDK Re: How to Import i.MX93 Cortex-M33 Board and SDK into MCUXpresso IDE? Hi @Manjunathb  I am currently also working on i.MX93 Cortex-M33. I installed the MCUXpresso IDE but encountered error when I dropped the SDK zipped file to the Installed SDK view (following the guide). Understanding that you are also working on the same M33 core, do you mind to share any information and your progress so far? I should also use MCUXpresso for VS Code? I would appreciate if you could share some guides or procedure on how to get started with M33 development. Thanks. Re: How to Import i.MX93 Cortex-M33 Board and SDK into MCUXpresso IDE? Hello Chavira, I'm currently working with the i.MX93 Cortex-M33 core and I understand that MCUXpresso IDE is not supported for this device, but that MCUXpresso for VS Code is the recommended tool. I have already installed: MCUXpresso for VS Code extension The i.MX93 SDK package ARM GCC toolchain And I’m using a J-Link debugger. Could you please guide me on the following points: How to correctly import the i.MX93 Cortex-M33 SDK into VS Code? Where should the SDK files be placed and how does the extension detect them? How to create or open a demo or template project for Cortex-M33 (e.g., hello_world or led_blinky)? How to configure build settings (compiler, linker paths, etc.) for successful compilation using the MCUXpresso VS Code environment? What is the proper way to flash and debug the compiled application using a J-Link probe or remoteproc (if using Linux)? Are there any known limitations or extra steps specific to i.MX93 when using MCUXpresso for VS Code? I would appreciate a full step-by-step explanation or links to relevant documentation. Thank you in advance for your support! Best regards, Manjunath Badiger Re: How to Import i.MX93 Cortex-M33 Board and SDK into MCUXpresso IDE? Okay 👍 Thank you for your response  Re: How to Import i.MX93 Cortex-M33 Board and SDK into MCUXpresso IDE? Hi @Manjunathb! Thank you for contacting NXP Support! Unfortunately, MCUXpresso IDE is not compatible in this case. However, you can use MCUXpresso for VS Code, which is supported and provides similar functionality. Best regards, Chavira
記事全体を表示
imx93 lpddr4x ddr検証 こんにちはNXP JSL4BAG167ZAMF-05A DDRメモリチップを使用しようとしています。i.MX 25.06のConfig Toolsを使用して検証したところ、パフォーマンス最適化テストに緑色の四角が表示されず、次のステップに進むことができません。 yrj_0-1764067165175.png 設定は以下のとおり yrj_1-1764067200936.png yrj_2-1764067218423.png 何か変更する必要があるでしょうか?DQ ODT と DS の設定を変更しても、緑色のバーは表示されません。 ストレージ互換性リストを確認したところ、このモデルが記載されていました。詳細を教えていただけますか?ありがとうございます。 i.MX 93 メモリ互換性ガイド - NXP コミュニティ リナックス Re: imx93 lpddr4x ddr校验 こんにちは、 ログを共有していただけますか? 構成は正しいのですが、整合性の問題によって問題が発生しているようです。 DDRレイアウトを確認しましたか? よろしくお願いいたします。 Re: imx93 lpddr4x ddr校验 こんにちは@JorgeCas 私の JSL4BAG167ZAMF-05A チップの密度はチップあたり 8G (8G x 2 ランク x 16 行アドレス) です。 yrj_0-1764208685658.png 公式サイトでは対応していると記載されていましたが、何か特別な設定は必要ですか? yrj_1-1764208724730.png Re: imx93 lpddr4x ddr校验 こんにちは、 一部の LPDDR4/4X デバイスは低速での動作をサポートしていない場合があります。 Windows の場合は、管理者権限で PowerShell を開いてみてください。 問題が解決しない場合は、UUU ツールを削除して再度ダウンロードしてみてください。 別の原因としては、USB ケーブルまたはホスト コンピュータがCAN。必要に応じて、ケーブルとホスト コンピュータを変更してみてください。 よろしくお願いいたします。 Re: imx93 lpddr4x ddr校验 DDR検証ツールの設定を以下のように変更し、フラッシュはできるもののmemtestが失敗します。 デュアルインライン LPDDR4x には特別な設定が必要ですか? yrj_0-1764208934706.png yrj_1-1764211261447.png yrj_2-1764211295101.png Re: imx93 lpddr4x ddr校验 こんにちは、 追加の変更は必要ありません。 DDR ツールでわかるように、DDR メモリにはさまざまな構成が用意されています。メモリの構成をツールに入力できない場合、メモリをテストできない場合、またはスクリプトを作成できない場合は、ツールがそれらのオプションに「ハードコード」されており、スクリプトを手動で構成するためのガイドがないため、そうではないことを確認してください。 よろしくお願いいたします。
記事全体を表示
恩智浦支持软件包 S12ZVMx(Matlab/Simulink MBD 工具) 你好,我有一个关于 S12ZVMx MBD 工具箱的问题。 根据以下链接,该工具箱已确认与 MATLAB R2020a 兼容。 能否请您确认它是否也兼容最新的 MATLAB 版本,如 R2025? 此外,是否有计划更新或发布工具箱的更新版本? 提前感谢您的支持。 Re: NXP Support Package S12ZVMx(Matlab/Simulink MBD Tool) 你好@jhbae、 MBD 工具箱完全由 MBDT 社区提供支持。我注意到你在那里已经有一个活跃的主题: https://community.nxp.com/t5/Model-Based-Design-Toolbox-MBDT/NXP-Support-Package-S12ZVMx-Matlab-Simulink-MBD-Tool/td-p/2205007 谢谢! BR,丹尼尔
記事全体を表示
如何根据不同的 DDR 大小调整 i.MX8MP 的预留内存? 恩智浦专家您好, 我们搜索了整个社区,但没有找到满意的答案。 以下是恩智浦 Linux 6.12 中 imx8mp.dtsi 中的预留内存节点 reserved-memory { #address-cells =<2>; #size-cells =<2>; ranges; /* * 保留给 optee 使用的内存。请勿使用。 * 如果安装了 OP-TEE,则会自动将此添加到 dtb 中。 * optee@56000000 { * reg =<0 0x56000000 0 0x2000000>; * no-map; * }; */ /* 用于连续分配的全局自动配置区域 */ linux,cma { compatible ="shared-dma-pool" ; 可重复使用; size =<0 0x3c000000>; alloc-ranges =<0 0x40000000 0 0xC0000000>; linux,cma-default; }; gpu_reserved: gpu_reserved@100000000 { no-map; reg =<0x1 0x00000000 0 0x10000000>; }; dsp_reserved: dsp@92400000 { reg =<0 0x92400000 0 0x1000000>; no-map; }; dsp_reserved_heap:dsp_reserved_heap@93400000 { reg =<0 0x93400000 0 0xef0000>; no-map; }; dsp_vdev0vring0: vdev0vring0@942f0000 { reg =<0 0x942f0000 0 0x8000>; no-map; }; dsp_vdev0vring1: vdev0vring1@942f8000 { reg =<0 0x942f8000 0 0x8000>; no-map; }; dsp_vdev0buffer: vdev0buffer@94300000 { compatible ="shared-dma-pool"; reg =<0 0x94300000 0 0x100000>; no-map; }; }; 1.i.MX8MP 的 DDR 大小为 2GB/4GB/8GB,如何调整预留内存/Linux,cma/大小和预留内存/Linux,cma/分配范围?(很明显,对于 2GB DDR 而言,大小(960MB)过大,而且分配范围也超出了 2GB DDR 的范围)。 2.Execpt linux,cma/size 和 linux,cma/alloc-ranges,在不同的 DDR 大小 2GB/4GB/8GB 时,是否还需要更改其他属性? 3. 对于 2GB ddr,gpu_reserved 节点的注册表显然 超出了范围,应该如何更改? 我们注意到恩智浦的 linux6.12 arch/arm64/启动/dts/freescale/imx8mp-tqma8mpql-mba8mpxl.dts 中的预留内存/linux、cma/size & alloc-ranges 发生了变化: reserved-memory { #address-cells =<2>; #size-cells =<2>; ranges; /* 用于连续分配的全局自动配置区域 */ linux,cma { compatible ="shared-dma-pool"; reusable; size =<0 0x38000000>; alloc-ranges =<0 0x40000000 0 0xB0000000>; linux,cma-default; }; }; 4. 是什么触发了这次修改?是因为 DDR 大小不同吗? 我们还注意到,在恩智浦的linux 6.12 arch/arm64/启动/dts/freescale/imx8mp-evk-root.dts中,节点/预留内存发生了更多变化。 &{/reserved-memory}{ jh_reserved: jh@fdc00000 { no-map; reg =<0 0xfdc00000 0x0 0x400000>; }; loader_reserved: loader@fdb00000 { no-map; reg =<0 0xfdb00000 0x0 0x00100000>; }; ivshmem_reserved: ivshmem@fda00000 { no-map; reg =<0 0xfda00000 0x0 0x00100000>; }; ivshmem2_reserved: ivshmem2@fd900000 { no-map; reg =<0 0xfd900000 0x0 0x00100000>; }; pci_reserved: pci@fd700000 { no-map; reg =<0 0xfd700000 0x0 0x00200000>; }; inmate_reserved: inmate@c0000000 { no-map; reg =<0 0xc0000000 0x0 0x3d700000>; }; }; &{/reserved-memory/linux,cma}{ size =<0 0x28000000>; alloc-ranges =<0 0x40000000 0 0x60000000>; }; 5. 在什么情况下应使用新增节点 jh_reserved/loader_reserved/ivshmem_reserved/ivshmem2_reserved/pci_reserved/inmate_reserved? 请提供详细解释,以解决我的上述疑惑。 i.MX 8M | i.MX 8M Mini | i.MX 8M Nano Re: How to adjust i.MX8MP's reserved-memory accroding different DDR size? 你好,豪尔赫-卡斯、 我们非常感谢你们的帮助。 我们对 Quction6 仍有疑虑。 在我们配备 2GB/4GB/8GB DDR 的自定义 imx8mp 板中(基于带有 6GB DDR 的 imx8mpevk 板),我们为每块不同的 DDR 板单独设置了 u-boot.imx,并在 linux6.12 源代码中保留以下 “内存 @40000000” 节点不变形式 imx8mp-evk.dts。 内存 @40000000 {d evice_type = " 内存 "; reg =,;<0x0 0x40000000 0 0xc0000000> <0x1 0x00000000 0 0xc0000000>//3GB+3GB =6 GB};而且我们的 imx8mp 主板运行良好 。此外,他们还能通过洞穴夜间记忆测试。 以下是我配备 4GB DDR 的 imx8mp 板: root@router:/#free 已使用的可用共享缓冲区/缓存总数 内存3686580 159528 2914044 19536 613008 3458156 //Recognizing atotal of 3686580 KB is reasonable for 4GB DDR. 交换:0 0 0 root@router:/# /media/MCB2/memtester 3G memtester 版本 4.3.0(32 位) 版权所有 (C) 2001-2012 Charles Cazabon。 根据 GNU 通用公共许可证第 2 版(仅)授权。 pagesize 是 4096 pagesizemask 是 0xffff000 想要 3072MB(3221225472 字节)获得 3072MB(3221225 472 字节),正在尝试 mlock... 锁定。 循环 1: 卡住地址:测试 3 [3326.210063] clean_cache.sh (100707):drop_caches:1 [3326.277139] clean_cache.sh (100707):drop_caches: 2 [3326.316299] clean_cache.sh (100707):drop_caches:3 ok 随机值: ok 比较异或:ok 比较异或:ok 比较 MUL:ok 比较 DIV:好对比 DIV:好对比 DIV: 好对比比较 AND:ok 顺序增量:ok 实心位:ok 方块 顺序:ok Checkerboard:ok Bit Spread :ok ...// 通宵测试表明没有问题。 以下是 4GB DDR 设备内核启动阶段的内存信息:[0.000000] 机器型号:恩智浦 i.mx8mPlus EVK 板 [0.000000] efi:未找到 UE FI。 [ 0.000000] Reserved memory: created CMA memory pool at 0x00000000c4000000, size 960 MiB [ 0.000000] OF: reserved mem: initialized node linux,cma, compatible id shared-dma-pool [ 0.000000] OF: reserved mem:0x00000000c4000000..0x00000000ffffffff (983040 KiB) map reusable linux,cma [ 0.000000] OF: reserved mem:0x0000000057c00000..0x0000000057ffffff (4096 KiB) nomap non-reusable optee_shm@0x57c00000 [ 0.0000000000] OF: reserved mem:0x0000000056000000..0x0000000057bfffff (28672 KiB) nomap non-reusable optee_core@0x56000000 [ 0.000000] OF: reserved mem:0x0000000100000000..0x000000010fffffff (262144 KiB) nomap non-reusable gpu_reserved@100000000 [ 0.000000] OF: reserved mem:0x0000000092400000..0x00000000933fffff (16384 KiB) nomap non-reusable dsp@92400000 [ 0.000000] OF: reserved mem:0x0000000093400000..0x00000000942effff (15296 KiB) nomap non-reusable dsp_reserved_heap@93400000 [ 0.000000] OF: reserved mem:0x00000000942f0000..0x00000000942f7fff (32 KiB) nomap non-reusable vdev0vring0@942f0000 [ 0.000000] OF: reserved mem:0x00000000942f8000..0x00000000942fffff (32 KiB) nomap non-reusable vdev0vring1@942f8000 [ 0.000000] Reserved memory: created DMA memory pool at 0x0000000094300000, size 1 MiB [ 0.000000] OF: reserved mem: initialized node vdev0buffer@94300000, compatible id shared-dma-pool [ 0.000000] OF: reserved mem:0x0000000094300000..0x00000000943fffff (1024 KiB) nomap non-reusable vdev0buffer@94300000 [ 0.000000] NUMA: Faking a node at [mem 0x0000000040000000-0x000000013fffffff][ 0.000000] NODE_DATA(0) allocated [mem 0x13f84a840-0x13f84d3bf] [ 0.000000] 区域范围: [ 0.000000] DMA [mem 0x0000000040000000-0x00000000ffffffffff] [ 0.000000] DMA32 空 [ 0.000000] 正常 [mem 0x0000000100000000-0x000000013ffffffff] [ 0.000000] 每个节点的可移动区域起点 [ 0.000000] 早期内存节点范围 [ 0 .000000] 节点 0: [mem 0x0000000040000000-0x0000000055ffffff] [ 0.000000] 节点 0: [mem 0x0000000058000000-0x00000000923ffffff] [ 0.000000] 节点 0: [mem 0x0000000092400000-0x00000000943ffff] [ 0.000000] 节点 0: [mem 0x0000000094400000-0x0000000000ffffff] [ 0.000000] 节点 0: [mem 0x0000000100000000-0x000000010ffffff] [ 0.000000] 节点 0: [mem 0x0000000110000000-0x000000013ffffff] [ 0.000000] Initmem 设置节点 0 [mem 0x0000000040000000-0x000000013ffffff] [ 0.000000] 在节点 0 上,区域 DMA: 8192 页在不可用范围内 1。你能找出任何由实际为 4GB 的 DDR 设备的内存 @40000000 节点中的 6GB 注册内存配置造成的不合理日志吗? 2. 所以我推测内核不会仅根据 DTS 中的内存 @40000000 /reg 内存配置来计算内存范围。取而代之的是,它通过组合实际物理内存大小来全面确定范围,该大小通过 ATAG 从 U-启动 传递到内核。换句话说,我认为可能没有必要为 2GB/4GB/8GB 内存配置准备单独的 DTB 文件。你能为我们确认一下吗? 再次感谢您。 Re: How to adjust i.MX8MP's reserved-memory accroding different DDR size? 你好 1. 没有具体的文档可以调整设备树中的预留内存节点,因为这些值取决于 DDR 大小和您的应用程序,唯一的限制将是参考手册内存映射中描述的为每个模块分配的最大内存区域。 以电路板支持包为单位的默认 CMA 大小可以是 960MB,正如你提到的 2GB DDR,960MB 太大了,通常的做法是将 CMA 减少到 256MB—512MB 或类似的容量。必须在有效的 DDR 空间内集中分配。 2. 无需添加其他属性。 3. 例如,您可以根据设计中的可用尺寸重新组织每个节点: gpu_reserved: gpu_reserved@70000000 { no-map; reg = <0 0x70000000 0 0x10000000>; }; 其他人的情况也类似。 4. 该设备树用于虚拟机管理程序的预留内存。 5. 这些节点用于 Jailhouse/PCIe/虚拟化,如果不使用它们,可以省略这些节点。 您可以将本文档用作参考以获取更多信息。 i.MX 虚拟化用户指南 6. 是的,它应该与每个 DDR 大小相匹配。 顺祝商祺! Re: How to adjust i.MX8MP's reserved-memory accroding different DDR size? 第 6 条:(附加 ) reg 属性是否在内存 @40000000 节点中(在 arch/arm64/启动/dts/freescale/imx8mp-evk.dts 中)是否需要根据 DDR 容量(2GB/4GB/8GB)进行修改? 内存 @40000000 {d evice_type = " 内存 "; reg<0x0 0x40000000 0 0xc0000000> <0x1 0x00000000 0 0xc0000000> =,;} ;如果是, 这是否意味着我们具有不同 DDR 大小的自定义 i.mx8M P 板需要单独的 DTB 文件? 提前思考! Re: How to adjust i.MX8MP's reserved-memory accroding different DDR size? 你好 JorgeCas, 既然内核将使用从 U-启动 传递的 DDR 大小,那么在 DTS 中配置内存 @40000000 /reg 的目的是什么? Re: How to adjust i.MX8MP's reserved-memory accroding different DDR size? 你好 感谢您提供的信息。 1. 没有错误或警告等关键日志,内核仅使用 U-启动 提供的内存范围。 2. 内核同时使用 U-boot 和 DTS 配置。 在设备树中,即使你没有足够的物理内存,你也可以分配更多的虚拟内存,但是如果你的内存使用量很大,系统可能会崩溃。 顺祝商祺! Re: How to adjust i.MX8MP's reserved-memory accroding different DDR size? 你好 我与内部团队进行了确认。 U-启动配置包含有关可用物理 DDR 内存的正确数据,但是 DTS 预留内存节点也会传递给内核,在你的情况下,你可以在节点中分配更多的虚拟内存,但是如果你用尽了所有的物理预留内存,你会因为没有可用内存、物理地址不存在或者由于它可能被其他模块使用而出现资源问题。 正如你所提到的,你需要调整预留内存以适应每块板,它可以正常工作,但是如果你的内存使用量很大,你可能会出现错误/内核错误。 我将更正上次的回复。 顺祝商祺!
記事全体を表示
MCU負荷計算 こんにちは、Nxpチーム 私は eatt セントラル SDK を使用する Kw45 ボードを使用しており、ワイヤレス サンプルで UART に接続してデータを印刷しています。MCU の負荷、アイドル タスク時間、およびビジー時間を計算したいのですが、NXP は MCU 負荷を計算するための参照ドキュメントや方法を共有できますか。 ありがとうございます。よろしくお願いします。 チェタン Freedom開発プラットフォーム Re: MCU load calculation FreeRTOS を使用している場合: CPU 負荷 (割り込みなし) に関する情報を含むパフォーマンス分析が組み込まれています。https ://mcuoneclipse.com/2018/02/25/performance-and-runtime-analysis-with-freertos/およびhttps://mcuoneclipse.com/2019/12/31/implementing-freertos-performance-counters-on-arm-cortex-m/を参照してください。 それ以外では、SystemView を使用することもできます: https://mcuoneclipse.com/2015/11/16/segger-systemview-realtime-analysis-and-visualization-for-freertos/ お役に立てば幸いです。 エーリッヒ
記事全体を表示
MPC5746C 中的安全模式行为 我已根据附图配置了安全模式。当 ECU 进入 "安全模式 "时,MCU 只能在下一个电源周期恢复,而不能在同一周期内恢复(这是否符合预期?)使用 SIUL2_MSCR[SMC],我可以根据应用或 ASIL 要求保留输出引脚状态。 我的问题是 在安全模式下,程序代码是否继续运行? 仅指保持最后状态(SMC===1)或高阻抗(SMC===0)的 I/O 引脚。 我试图理解这一点,因为 在安全模式下,我没有看到任何 CAN 信息传输。 在安全模式下,我无法使用 Trace32 连接 MCU。 如果应用程序在 SAFE 模式下继续运行,我如何使用 Trace32 在该模式下进行调试?或者在 SAFE 模式下,应用程序将停止& ,无法进行通信或 trace32 访问。 Re: SAFE MODE Behavior in MPC5746C 如果 PDO 位已开启,则 ECU 将进入电源模式 现在,我可以通过 trace32 进行调试。禁用 PDO 位后 关于安全模式下的时钟行为,我有几个问题: 我配置 MC_CGM.AC5_SC[SELCTL] = FXOSC,以使用稳定的外部时钟源。不过,当软件进入 SAFE 模式时,系统会自动切换到由 MC_ME 模块控制的FIRC 时钟。即使在进入 SAFE 模式后,MC_CGM.AC5_SC[SELCTL] 仍将FXOSC报告为选定的信号源。 所以我的问题是 设备进入安全模式后,我需要手动将时钟源重新配置为 FIRC 吗? 还是说,由于安全模式会自动强制使用内部 RC 振荡器,而不管 CGM 设置如何,因此没有必要这样做? 此外,我注意到 MC_CGM.SC_SS[SWTRG] = 0b100,这意味着: “由于安全模式请求或 RESET 成功,切换到 16 MHz 内部 RC 振荡器。” 此外,在安全模式下,为什么 CAN 通信在进入安全模式时不起作用。这是微控制器的默认操作吗? Re: SAFE MODE Behavior in MPC5746C 添加@rweiss 你知道设备处于安全模式时调试是否存在已知问题吗?谢谢 Re: SAFE MODE Behavior in MPC5746C 我尝试手动更改(PD0=0),但操作没有任何区别,如果我停止在 trace32 中执行,就会出现以下错误。安全模式下似乎没有程序代码运行。在 SAFE_MODE 模式下的预期行为是什么? AshokSubramani_0-1748953011213.png Re: SAFE MODE Behavior in MPC5746C 与其他模式不同,MC_ME_SAFE_MC[PDO] 应该是可写的。所以 我认为这是配置器的问题。 Re: SAFE MODE Behavior in MPC5746C 在 SAFE 模式配置中,我无法将 PD0 位设置为"0" ,因为配置器不允许我禁用 PD0 位。在验证过程中失败。 Re: SAFE MODE Behavior in MPC5746C 您可以对每个引脚进行单独配置。 davidtosenovjan_0-1748948377514.png Re: SAFE MODE Behavior in MPC5746C 如果我没有设置 PDO 位,那么安全模式的目的是什么...?根据功能安全手册,我们需要设置PDO位以启动安全模式。此外,我无法在安全模式下禁用 PDO 位。 查询 : 1.如果是,如何配置? 2.为什么我无法在安全模式下看到跟踪 32? AshokSubramani_0-1748937019398.png Re: SAFE MODE Behavior in MPC5746C 显然不应设置该位。 davidtosenovjan_0-1748934251890.png Re: SAFE MODE Behavior in MPC5746C 我附上了使用的配置供你参考,因为我试图将系统时钟开关更改为 PLL_PHI0,但它不起作用。安全模式配置的推荐配置是什么? 我的 CAN 时钟配置为 F40,因此 CAN 通信无法正常工作?要在安全模式下支持 CAN 通信,需要进行哪些配置? 它显示,一旦触发安全模式,我就无法通过trace32访问任何外围设备(lpm-st/sl(安全模式)。在安全模式下,我无法识别系统是否在运行。 AshokSubramani_0-1748866777098.png AshokSubramani_1-1748867290478.png Re: SAFE MODE Behavior in MPC5746C 当然可以,但是需要意识到,在安全模式下,设备由IRC计时,可能会影响通信外围设备的内容。 还请注意以下说明 davidtosenovjan_0-1748863858647.png 我认为当设备处于安全模式时,在 TRACE32 中进行调试不会有问题。
記事全体を表示
S32K144 CSEc Secure Boot - Device Stuck in Secure State, Cannot Unsecure Hardware: S32K144 Development Board IDE: S32 Design Studio Programming: Direct via S32DS Issue Description: I successfully implemented CSEc secure boot on S32K144 with the following steps: Configure keys - Set up MASTER_ECU_KEY and BOOT_MAC_KEY Flash application in flash region - Used Debug_FLASH configuration via S32DS Set up secure boot - Used Debug_RAM configuration via S32DS to store BOOT_MAC After reset - Secure boot working properly Application working - Confirmed with LED indication, BOK=1 Problem: When testing negative case (failure scenario): Try to flash different application in flash region → "Device is secure. Erase to unsecure?" dialog appears Click "Yes" to erase → Same dialog keeps appearing repeatedly Tried factory reset → Still same error Cannot flash any new application Questions: Is clicking "Yes" supposed to perform mass erase automatically? Why does dialog keep reappearing? How to properly unsecure the device using S32DS only? What's the correct procedure? Can I use mass erase command in S32DS? If yes, what's the exact procedure? Is device permanently locked? Or is there a recovery method via S32DS? Current Status: Device appears stuck in secure state. Cannot flash any applications using S32DS. Need step-by-step recovery procedure to unsecure the device. Re: S32K144 CSEc Secure Boot - Device Stuck in Secure State, Cannot Unsecure Which secure boot mode did you configured? There's sequential mode, parallel mode or strict sequential mode.  If sequential or parallel boot mode fails, the only consequence is that boot protected keys cannot be used. That's the only effect, it does not affect your application, it's still executed.  If strict sequential boot mode fails, the device stays in reset forever and there's no way to recover.  ANS: Using the S32K144_CSEc_Secure_boot_add_boot_MAC_Manual example from AN5401sw, we configured serial secure boot with boot mode 1 in the BOOT_DEFINE() function. if boot mode 1 corresponds to strict sequential boot mode, this would explain the permanent reset behavior we're experiencing."   /* Step-3 Define the secure boot flavor and the BOOT_SIZE*/     csec_error = BOOT_DEFINE(128*1024*8, 1); " Did you check the reset signal? Is it released after power-on?  ANS: Yes, I have checked the reset signal. The reset signal remains active (reset LED stays on) after power-on, indicating the device is still in resetting state  Also once CSEc is enabled, mass erase (Erase All Blocks command) is locked: Kishore_14_0-1764067663149.png To enable mass erase, it is necessary to erase all keys by CMD_DBG_CHAL and CMD_DBG_AUTH commands with knowledge of MASTER_ECU_KEY.  ANS: When attempting to flash AN5401_S32K144_CSEc_Resetting_Flash_to_Factory_State, I receive "Device is secure. Erase to unsecure?" dialog. Even after clicking "Yes", the same dialog keeps appearing repeatedly S32DS has "Emergency Kinetis Device Recovery by Full Chip Erase" option. Should we use this to recover the device? Kishore_14_2-1764069429876.png Note: We don't have the debugger setup for flashing and erasing. We are using S32DS for flashing and debugging. Hence need assistance on mass erase.   Re: S32K144 CSEc Secure Boot - Device Stuck in Secure State, Cannot Unsecure Hi @Kishore_14  Which secure boot mode did you configured? There's sequential mode, parallel mode or strict sequential mode.  If sequential or parallel boot mode fails, the only consequence is that boot protected keys cannot be used. That's the only effect, it does not affect your application, it's still executed.  If strict sequential boot mode fails, the device stays in reset forever and there's no way to recover.  Did you check the reset signal? Is it released after power-on?  Also once CSEc is enabled, mass erase (Erase All Blocks command) is locked: lukaszadrapa_0-1764055246465.png To enable mass erase, it is necessary to erase all keys by CMD_DBG_CHAL and CMD_DBG_AUTH commands with knowledge of MASTER_ECU_KEY.  Regards, Lukas Re: S32K144 CSEc Secure Boot - Device Stuck in Secure State, Cannot Unsecure Strict sequential boot mode is configured when Boot Flavor parameter is set to 0: image.png But it does not make sense if you kept original sequential boot: /* Step-3 Define the secure boot flavor and the BOOT_SIZE*/ csec_error = BOOT_DEFINE(128*1024*8, 1); Even if sequential boot fails, this should definitely not cause permanent reset. Did you try to check the signal by an oscilloscope or did you watch the LED only? Isn't the reset signal toggling? If the reset signal is asserted permanently, I'm afraid there's no way to recover.  Re: S32K144 CSEc Secure Boot - Device Stuck in Secure State, Cannot Unsecure As observed directly, LED is not toggling,, It is permanently on. If it is Sequential boot mode, What could be the possibility that the device is on continuous reset when a new application is flashed? How will the device get Secured when all the Flashconfig settings in the examples are as below: /* Flash Configuration */ .section .FlashConfig, "a" .long 0xFFFFFFFF /* 8 bytes backdoor comparison key */ .long 0xFFFFFFFF /* */ .long 0xFFFFFFFF /* 4 bytes program flash protection bytes */ .long 0xFFFF7FFE /* FDPROT:FEPROT:FOPT:FSEC(0xFE = unsecured) */ Can i try Kinetis option for mass erase since no direct debugger flashing possible due to unavailablity. Note: We also observe this case for another board and posted in below link: error: Device is secure. Erase to unsecure - NXP Community Re: S32K144 CSEc Secure Boot - Device Stuck in Secure State, Cannot Unsecure Toggling on the reset pin can be so fast that it might not be visible to the naked eye. And that’s why I asked if you tried it with an oscilloscope. I can see only two reasons for permanent reset: 1. Failed strict sequential boot mode. 2. Hardware issue - typically insufficient voltage, so voltage monitors does not allow to start the device... There's no way how to force the device to permanent reset by (wrong) application. This could only be done in some kind of self-destructive way, for example by setting a GPIO to short-circuit or something similar. The message "Device is secure. Erase to unsecure?" is just general one. Most of the time, this usually means that the debugger was not able to establish the connection ever. And in this case, even if the device is secured, it would not be possible to unsecure it because mass erase operation is blocked by enabled CSEc module. Re: S32K144 CSEc Secure Boot - Device Stuck in Secure State, Cannot Unsecure hi, Toggling on the reset pin can be so fast that it might not be visible to the naked eye. And that’s why I asked if you tried it with an oscilloscope. Did you check the reset signal? Is it released after power-on?  Ans: we observed that reset pin is toggling. Kishore_14_2-1764229793234.png Does it mean that the previous application flashed is stuck in any SW /WDG reset?  can it be recovered via SWD debugger flashing?     Re: S32K144 CSEc Secure Boot - Device Stuck in Secure State, Cannot Unsecure Do you have Segger J-Link probe or Lauterbach debugger to read MDM-AP? Unfortunately that's not possible with Pemicro. There's a rare scenario when the device can be locked. Please check this thread: https://community.nxp.com/t5/S32K/Unbricking-S32K146/m-p/937227 To confirm it, it's necessary to read MDM-AP.  Re: S32K144 CSEc Secure Boot - Device Stuck in Secure State, Cannot Unsecure Unfortunately, we dont have JLink or PE Micro for flashing. We use S32DS OpenSDA for Debugging. Below was mentioned from AN12130, When launching program partition command (PGMPART), be sure to allocate CSEc key size to value different than zero. • Program CSEc keys, at least the MASTER_ECU_KEY. • Erase Keys by issuing CMD_DBG_CHAL and CMD_DBG_AUTH commands. The CMD_DBG_AUTH command will erase the data IFR thus erasing the partition code and allow mass erase to work again. If any CSEc key is ‘write-protected’ the above procedure will not work thus mass erase cannot be launched. QUestion: When we flashed a different application, it flashed successfully in the first attempt. Since the above said sequence is not followed,  upon next reset, new application might got into continuous resets? IS this right ? Re: S32K144 CSEc Secure Boot - Device Stuck in Secure State, Cannot Unsecure OpenSDA is also from Pemicro.  Normally it is possible to program new application by OpenSDA even if CSEc is enabled, even if some keys are write protected etc. That's because it erases the flash block by block, not via mass erase. I meant that AN12130 talks about issues like this: lukaszadrapa_0-1764582832674.png lukaszadrapa_1-1764582841459.png So, these are rather issues when something goes wrong during the programming - unexpected reset or something like that.  Unfortunately the only way to confirm such state is to read mentioned MDM_AP register. Then we could say if the device is locked permanently or not. But the register cannot be read by OpenSDA.  Regards, Lukas
記事全体を表示
Arm-Linux blho <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 您好, 我使用的是 LPC55S69 芯片。 我想在下面介绍 Arm-Linux 的 blhost。 ---< blhost User's Guide.pdf(p.9) 4.1.5-s [, , , , lsb|msb] (通过 SPI 连接) 以下命令可用于通过 SPI 连接 MCU 引导加载程序。此选项对 Arm-Linux blhost 有效。该选项可以有一个、两个或五个参数。 blhost -s - command blhost --spi - command ... --- 我应该去哪里找? 谢谢! 概述 Re: Arm-Linux blhost 在此版本的版本中添加了 AArch64 2.6.7 二进制文件。更新这张旧票,以备日后对他人有所帮助。 https://github.com/gutelfuldead/blhost/releases/tag/v2.6.7 Re: Arm-Linux blhost 你好@chotto2、 我也在尝试从 ARM LINUX 环境中构建 blhost (v2.6.2),我正在使用 arm-linux-gnueabihf-g++/arm-linux-gnueabihf-g++/arm-linux-gnueabi-g++ 进行编译。blhost(v2.6.2) 中的所有 cpp 文件都已编译,但在链接时,只有一个文件 blhost.o 无法链接。 你能否指导,如何成功版本 Arm LINUX 环境中的 blhost (v2.6.2)? 谢谢! 阿比杰特 Re: Arm-Linux blhost <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 嗨,萨宾娜、 谢谢您的回答。 我解决了一些问题并成功制作了blhost(v2.6.2)版本。 我使用容器进行版本,方法与 lauszus/BLHost (v2.0.0) 相同。 SPI 开始 测试 在 arm linux 环境下进行通信。 你这么说,Arm-Linux blhost似乎没有版本。 我希望在不久的将来能提供 blhost。 顺祝商祺! 直人 Re: Arm-Linux blhost <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 你好,直人 希望你一切顺利。 正如另一篇链接文章中所提到的,当前可用的版本只有适用于Linux的amd64和i386版本。没有 ARM 版本。我建议查看这个 github 共享文档。因为它可能是你正在寻找的东西。 版本·laus/BLHost · GitHub 顺祝商祺! 萨宾娜 ----------------------------------------------------------------------------------------------------------------------- 注:如果本帖回答了您的问题,请点击 "正确答案 "按钮。谢谢! ----------------------------------------------------------------------------------------------------------------------- Re: Arm-Linux blhost <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 大家好, 我正在尝试在 Ubuntu 上版本 blhost (v2.6.2),但是我在关注时遇到了麻烦。 没有 lpcusbsio.a在 blhost(v2.6.2) 环境中。 我想去图书馆。 请告诉我该怎么做。 谢谢! 直人 Re: Arm-Linux blhost <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 嗨,Sabina, 当然,我已经看过答案并尝试过了。 但我没有在"-s "选项中找到 blhost。 现在,我从以下地址获取了 blhost(v2.6.2) 源文件和 Makefile。 <> 然后我正在制作带有 “-s” 选项的 Arm-Linux blhost。 谢谢。 直人 Re: Arm-Linux blhost <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 你好,直人 希望你一切都好。我相信下面的帖子已经回答了这个问题: https://community.nxp.com/thread/509321 如有其他问题,请告诉我。 顺祝商祺! 萨宾娜 Re: Arm-Linux blhost <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 嗨,萨宾娜 是的,我是这么认为的。 我指的是 blhost 用户指南第 7 版(2020 年 4 月 29 日)。 elftosb_gui_1.0.12/docs 中有相关文档。 谢谢! Re: Arm-Linux blhost <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 你好 、 希望你一切顺利。 你能否提供你在哪里收到的 arm-linux blhost?另外,你能告诉我你指的是哪个版本的 blhost 用户指南吗? 顺祝商祺! 萨宾娜 ----------------------------------------------------------------------------------------------------------------------- 注:如果本帖回答了您的问题,请点击 "正确答案 "按钮。谢谢! -----------------------------------------------------------------------------------------------------------------------
記事全体を表示
S32 Design Studio for ARM 2.2 – Windows/Linux activation code email Hi!   I'm trying to download "S32 Design Studio for ARM 2.2 – Windows/Linux" and get an activation code emailed to me. When I hit the "Download" button for "S32 Design Studio for ARM 2.2 – Windows/Linux" on the NXP website, I get taken to my NXP 'Profile' page, and the download never occurs.   I'm signed into my typical NXP account and have gone through the steps a few dozen times.   Thank you for your time! -Rich S32 SDK for S32K1 Re: S32 Design Studio for ARM 2.2 – Windows/Linux activation code email Hi Peter, I did download it once, though I never received an activation code for it.   If the activation code was emailed, I didn't receive it. Might have been an issue with our email filters, though I seem to receive NXP email fine now.  Could they resend the activation code? Thanks for your time with this!   Sincerely, Rich Mullen Re: S32 Design Studio for ARM 2.2 – Windows/Linux activation code email Hello, I was talking again to the SW team and they told me it looks that you were able to successfully download it and you also have activation key assigned. Is the issue still valid? Best regards, Peter Re: S32 Design Studio for ARM 2.2 – Windows/Linux activation code email Hello, Ok, Here is the activation code for your machine: A07C-4C9E-C3B9-A436  Best regards, Peter Re: S32 Design Studio for ARM 2.2 – Windows/Linux activation code email Thanks Peter! I got the code and appreciate your time with this!
記事全体を表示
问题 UART_RETRY_TIMES 晚上好、 我在 LPUART_WriteBlocking 和 LPUART_ReadBlocking 模式下使用 LPUART1。如果我的 UART 在一定秒数内没有接收到任何信息,我需要它退出等待模式。我注意到有一个名为 UART_RETRY_TIMES 的参数可以用来设置超时。然而,当我设置该参数时,我发现超时没有设置,但 UART 不再正常工作。您能告诉我如何在超时的情况下退出阻塞模式吗? 谢谢! 顺祝商祺! Re: Issue UART_RETRY_TIMES 你好@Transidico 请问您使用的是哪种芯片? BR 哈利 Re: Issue UART_RETRY_TIMES 你好@Transidico MCXC242 的 LPUART_ReadBlocking() 和 WriteBlocking() 不支持超时退出。 UART_RETRY_TIMES 仅在内部用于 "重试检查标志",并非超时机制。 如果希望 UART 在几秒钟无数据后退出阻塞,我认为可以将 LPUART_ReadBlocking 与软件定时器结合使用。 BR 哈利
記事全体を表示
启用硬件加密引擎 你好,先生、 目前我正在使用恩智浦Layerscape 1046ARDB套件,在该套件中,我正在使用名为InnTel IPsec-MB的软件加密设备执行L2FWD-Crypto代码。此外,TLS 也与它并行运行,以进行密钥交换 现在,我想将我的代码移植到工具包中,目的是使用硬件加密引擎。下面是我提出的相关问题。 Q1) 如何启用套件中的硬件加密引擎? 我目前的命令是 meson 安装版本--crossfile config/Arm/arm64-dpaa-linux_gcc-denableDrivers=总线/dpaa、mempool/dpaa、crypto/dpaa_sec 但只有在 "驱动程序 "部分出现了 dma、raw、crypto dpaa,而在 "已启用驱动程序 "部分却没有出现。 如何解决? Q2) DPDK 早期版本中提供了 KNI,而新版本中却没有。那么,为此提供的替代方案是什么呢? Re: Enable Hardware Crypto Engine 你好 我已经在内核模块中启用了 CAAM。现在我遇到的问题是 : Q1) (最后几行输出dmesg | grep -i caam) 设备 caam-keygen 已注册 caam_jr 17300000.jr : 冲洗作业环 2 失败。 探测 17300000.jr 失败,错误 -5。 Q2) 对于 af-xdp,来自eno1端口的流量是这样处理的 sudo ethtool -L eno1 combined 2 # 添加一条流量规则,将指向端口 443 的 TCP 流量引导到 RX 队列 1 sudo ethtool -N eno1 flow-type tcp4 dst-port 443 action 1 ./dpdk_app ... --vdev="net_af_xdp0,iface=eno1,start_queue=1,queue_count=1"... nb_rx = rte_eth_rx_burst(portid、 0, pkts_burst, MAX_PKT_BURST); 在这里,我给出了数据传输的特定端口号。 请标明查询内容。 Re: Enable Hardware Crypto Engine 你好 问题 1) 启用硬件加密引擎:问题似乎出 在你的 meson 版本 命令上。要在 DPDK 中支持 DPAA 加密加速,您需要正确包含 DPAA 网络安全驱动程序。检查是否安装了所需的依赖项和正确的 Linux 头文件。命令中的语法看起来正确,但您可能需要确保版本环境具有所有必要的先决条件。 尝试在命令中添加 DPAA 高效密码学标准驱动程序的完整路径: ``` meson setup 版本 --crossfile config/Arm/arm64_dpaa_linux_gcc -Denable_drivers=总线/dpaa,mempool/dpaa,crypto/dpaa_sec ``` 如果你在启用的驱动程序部分仍然看不到它,请验证 DPAA 加密加速器已正确初始化您的内核以及所需的 DPDK 库已正确安装。 Q2) 关于 KNI(内核网卡接口)替代方案: 在较新的 DPDK 版本中,KNI 已被弃用和移除。推荐的替代方案是: 1. AF_XDP(地址系列 eXpress 数据路径)- 提供高性能数据包处理接口 2. AF_PACKET - 用于数据包处理的标准套接字接口 3. Virtio-user - 适用于用户空间网络应用程序 对于与 L2fwd-crypto 并行运行的 TLS 密钥交换的特定用例,AF_XDP 作为 KNI 替代品可能会提供最佳性能特征。   此致 Re: Enable Hardware Crypto Engine 你好 1) CAAM 利用多个 " 工作环 " 来管理和处理加密请求。 每个任务环都行动队列,操作系统可以在队列中提交加密任务,供 CAAM 硬件执行。 "冲洗工作环 2 失败" : 此错误表明系统试图清除或最终完成作业环 2 上的未完成作业,但操作失败。 发生这种情况有多种原因,包括 CAAM 驱动程序或管理任务环的其他内核元器件中出现错误。这可能涉及分散收集列表的处理不正确、内存访问问题或计时问题。 在某些情况下,U-Boot 版本(初始化 CAAM)和 Linux 内核版本之间的不匹配可能会导致此类错误。 系统的另一部分可能干扰了作业环 2 的运行。 潜在解决方案和故障排除: 更新 U-启动 和内核: 确保您的U-Boot和Linux内核版本兼容且处于最新状态,尤其是在使用恩智浦的软件开发套件 (SDK) 时。 检查补丁: 在恩智浦社区论坛或相关邮件列表中搜索与 CAAM 和作业环刷新相关的已知错误和补丁。 禁用或配置 CAAM: 如果错误持续存在,并且您对该特定任务环不太依赖 CAAM 加速,则可以考虑在设备树或内核配置中将其禁用作为临时解决方法或进行测试。 检查内核日志 查找内核日志 (dmesg ) 中的其他相关错误信息或警告,它们可能会提供有关故障的更多信息。 查看设备树配置: 验证设备树中是否正确配置了 CAAM 及其作业环。         数量     2下面是该命令及其前提条件的详细说明:     命令分解   --vdev="net_af_xdp0,..." : 指示 DPDK EAL(环境抽象层)使用 net_af_xdp 驱动程序创建虚拟设备。名称 net_af_xdp0 是 DPDK 应用程序中该特定设备实例的唯一标识符。 iface=eno1 :指定 AF_XDP 套接字将连接的主机内核网络接口 (eno1 ) 的名称(必选项)。 start_queue=1 :指定 AF_XDP 套接字应绑定到 eno1 接口的 第 1 号 Rx/Tx 队列 (队列通常以 0 为索引)。 queue_count=1 : 指定此 PMD 实例从 start_queue 开始管理单个队列(即只管理队列 1)。      前提条件和设置   要成功使用该配置,Linux 主机系统必须满足以下前提条件:   数量 内核支持:Linux 内核必须是 4.18 或更高版本,编译时必须使用 CONFIG_XDP_SOCKETS=y 启用。 库:必须安装 libxdp (版本>= 1.2.2)和 libbpf 库。 接口配置:目标网络接口 (eno1 ) 必须在内核中配置: 多队列:接口的驱动程序必须支持多队列,且配置的队列总数必须至少为 start_queue + queue_count (即本例中至少有 2 个队列:队列 0 和队列 1)。 例如,您可以使用 ethtool 设置队列数量: 敲击 sudo ethtool -L eno1 combined 2 这样就能确保流量被导向 DPDK 应用程序正在监听的队列 1。 XDP 程序:AF_XDP PMD 通常会在接口上加载默认的 XDP 程序,将数据包重定向到用户空间内存缓冲区。 权限:应用程序必须有足够的权限(例如,以 root 或适当的权限运行)才能访问网络接口和使用 AF_XDP 套接字。    该命令是在 DPDK 应用程序中使用 AF_XDP 驱动程序将流量处理隔离到特定非默认队列的有效方法   此致
記事全体を表示