Multi Source Translation Content

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 

Multi Source Translation Content

讨论

排序依据:
i.Cortex M7のMX8MPメモリレイアウト(DRAM 1GB) 当社では、1GBのDRAMを搭載したi.MX8MPを使用するプロジェクトがあります。Cortex M7用にリンカーファイルを調整し、RPMSG用にDevicetreeを、Cortex M7用にDRAM予約メモリを調整しました。U-Bootからrpmsg ping pongを開始すると、例えばLinuxで起動し、カーネルモジュールを読み込み、正しい出力を確認できます。メモリマップは、1GB DRAM内の設定済み領域にあるm_data2セクションについても正しく見えます。 Linuxから同じファームウェア(elf)をremoteprocで起動すると動作しますが、rpmsgネームサービスの発表を待つ間にデモがフリーズします。 移植作業において、何か見落としている点はあるだろうか? よろしくお願い申し上げます。 Re: i.MX8MP memory layout for Cortex M7 with DRAM 1GB 既に述べたように、デバイスツリーとリンカーファイルが調整されました。remoteproc ELFローダーがファイルをロードして実行します。MXUXSDKからの移植されたHello WorldデモはLinuxから起動すると問題なく動作します。RPMSGのデモはロードされ、起動します(M7デバッグコンソールに有効な出力が表示されます)が、rpmsg自体は動作しません。 M7用のMPU初期化コードに何らかの互換性の問題があるのではないかと疑っています。8MP EVKのDRAM空間には、1GBを超えるアドレスが存在するのでしょうか? Re: i.MX8MP memory layout for Cortex M7 with DRAM 1GB Linuxを起動する前にprepare_mcore実行を追加します U-Bootでは、bootcmd / bsp_bootcmdを実行する前に、以下を追加します。 prepare_mcore を実行します もしこれを自動で使いたいなら、Linuxを起動する前にボードの起動コマンドに含めてください。 デバッグ中は未使用のクロックを有効にしておく 起動時には、以下も追加してください。 setenv mmcargs " ${mmcargs} clk_ignore_unused" saveenv 一部のダウンストリームBSPは、clk-imx8mp.mcore_booted=1; のようなより具体的な回避策を使用します。Toradexは、これによりLinuxがi.MX8MPのCortex-M7ルートクロックを無効化できないと指摘しています。 ランタイム DTB が RPMsg 対応の DTB であることを確認してください。 EVKの場合、NXPのサポート回答としては、M7リモートプロック/RPMsgに対してimx8mp-evk-rpmsg.dtbを使用することが一般的です。有効なNXP RPMsgファームウェアでi.MX8MP M7リモートプロックが失敗した「carveout doesn't fit da request」では、NXPのサポート回答にはLinuxでimx8mp-evk-rpmsg.dtbを使用していることを確認してくださいと書かれています。[community.nxp.com] カスタム1GBボードの場合、ファイル名は異なりますが、重要な点は、ランタイムDTBにimx8mp-cm7リモートプロシージャノード、MUメールボックス、およびすべてのRPMsg予約メモリノードが含まれている必要があるということです。 予約済みメモリとリソーステーブルのアライメントを確認する i.MX8MPの場合、一般的なRPMsgレイアウトでは、次のような領域が使用されます。 dtsは完全にはサポートされていません。構文ハイライトはプレーンテキストに基づいています。 vdev0vring0: vdev0vring0@55000000 { reg = <0 0x55000000 0 0x8000>; 地図なし; }; vdev0vring1: vdev0vring1@55008000 { reg = <0 0x55008000 0 0x8000>; 地図なし; }; vdevbuffer: vdevbuffer@55400000 { compatible = "shared-dma-pool"; reg = <0 0x55400000 0 0x100000>; 地図なし; }; rsc_table: rsc_table@550ff000 { reg = <0 0x550ff000 0 0x1000>; 地図なし; }; i.MX8MPの公開されたLinux Remoteprocの議論では、このスタイルのDTセットアップが示されており、rsc-da = <0x55000000>、mbox = <μ 0 1 μ 1 μ 3 1>、memory-region = <&vdevbuffer>、<&vdev0vring0>、<&vdev0vring1>、<&rsc_table>、...などが含まれます。 [community.nxp.com] 1GBのDRAM CASEでは、これらの領域がLinuxの通常のメモリ、CMA、GPU、OP-TEE、または他の予約範囲内に入っていないことを確認してください。また、M7ファームウェアのrsc_table.cも確認してください。リンカーファイルはLinux DTと同じvring/リソースアドレスを使用します。 1GB DRAMポートについては、ELFプログラムヘッダーを確認してください。 Linux remoteprocは「U-Bootがコピーした場所」だけでなく、プログラムヘッダーでELFを読み込むため、以下の点を確認してください: readelf -l your_m7_firmware.elf readelf -S your_m7_firmware.elf | grep -E "resource|data|bss|text" すべての読み込み可能なセグメントがLinuxのリモートプロックがi.MX8MPに変換可能なアドレスにマッピングされているか、そしてm_data2リージョンが実際の1 GB DRAM範囲内で、予約メモリのカブアウトと一致しているかを確認してください。 デバッグ中に古いリソーステーブル領域をクリアする 繰り返し起動モードをテストする場合は、M7を起動する前にRPMsgリソーステーブル領域をクリアしてください。i.MX Linuxユーザーガイドによると、i.MX8M Plus LPDDR4 EVKの場合、リソーステーブル領域は以下でクリアできます: mw 0x550ff000 0 4 これは、リソーステーブルの値が不正になることを回避するために特に文書化されています。 Re: i.MX8MP memory layout for Cortex M7 with DRAM 1GB AEチームと話し合っています。 Re: i.MX8MP memory layout for Cortex M7 with DRAM 1GB エラーログがあれば共有していただけますか? rpmsgはDRAM設定と直接リンクしないようです。 Re: i.MX8MP memory layout for Cortex M7 with DRAM 1GB バイナリファイルとELFファイルは、同じコードとリンカーファイルによって同時に生成されるんですよね? 「M7のMPU初期化コードに何らかの互換性の問題があるのではないかと疑っています。」8MP EVKのDRAM空間には1GBを超えるアドレスが存在するのですか? - もしubootではすべて正常でLinux rprocが問題ない場合、MPUの問題ではないようです。 まずはubootとlinux rproc boot Mの違いを一時停止しようと思います。以下の2点を顧客確認することをおすすめします。 1) imx_rproc.cimx_rproc_att_imx8mn は、新しい DRAM サイズに合わせて変更されましたか? 2) セクション.resource_tableが適切な位置にあるか確認すること?UbootはcopyResourceTableでこのテーブルを読み込みますが、Linuxは.resource_tableを解析します。.elf からのセクションファイル。 彼らはどのデモを使用しているのですか?LinuxやM7 SDK向けのすべての修正パッチを提供できますか?そして、ログには「RPMSG デモがロードされ、起動します (M7 デバッグ コンソールに有効な出力があります) が、rpmsg 自体は動作しません」と表示されます。
查看全文
MLB The Show 26でサイクルマイルストーンシリーズのブライス・ハーパーをアンロックする方法 最近ダイヤモンドダイナスティを周回しているなら、コミュニティが新しい98 OVRサイクルマイルストーンシリーズのブラ イス・ハーパーについて話題になっていることはすでにご存知でしょう。このカードは、彼が現実世界でサイクルヒットを達成した歴史的な偉業を記念して発行されたもので、正直なところ、その能力値から、外野の要として、あるいは打線に一流の左打者パワーを加えたいと考えている人にとって、絶対に手に入れるべきカードと言えるでしょう。 落とし穴は?彼は、単純な報酬制度に縛られていない。このハーパーカードを手に入れるには、チェイスパック16を入手する必要があります。これはチェイスパックの報酬なので、彼をアンロックするには、多少の戦略、運、またはかなりの量のスタブが必要になります。使える時間やゲーム内通貨に応じて、彼をチームに加えるための最適な4つの方法をご紹介します。 1. 第4イニングXP報酬パスホイールを周回する 厳格な「ノーマネースペント(NMS)」チームを運営しているなら、これが無料でカードを引く最良のアクティブグラインド方法です。第4イニングXPプログラムの主要報酬をすべて獲得した後も、実際には苦労は終わりません。プログラムの主な上限を超えて獲得した追加の経験値ごとに、繰り返し可能な報酬パスホイールを1回回すことができます。チェイスパック16はそのホイールの賞金プールに位置しているので、経験値を稼ぎながらパックを引く挑戦を続けても、スタブを一切使わずにできます。 2. The Show 50パックバンドルを購入する ランダムなホイールスピンを避けたいプレイヤーや、苦労して稼いだスタブを貯めているプレイヤーには、パックマーケットでより直接的な方法を選べます。標準版の「The Show 50パックバンドル」を購入すると、ボーナスとして必ずチェイスパック16が付属します。バンドルを購入するのは常に多少の投資ではありますが、ハーパーが入った特定のチェイスパックを100%確実に手に入れられると分かっている場合は、個別のパックを購入するよりもはるかに安全な選択肢となります。 3. スタンダードな「ザ・ショー」パックで運試しをしよう 自然にゲームをプレイして、運の神様があなたに微笑みかけてくれるのを願うこともできます。開封するすべての標準ベースパックには、チェイスパック16にアップグレードされる小さなランダムな確率が含まれています。通貨を使わずにこの方法を最大限に活用する最良の方法は、現在のコンテンツから無料パックを溜め込むことです。6月カウントダウンプログラム、6月スポットライトプログラム、そしてムーンショットIIイベント情報の課題を必ずこなしてください。これらのモードはすべて大量の無料ベースパックを配布し、チェイスパックへのアップグレードのための無料抽選券をたくさん提供してくれます。 4. コミュニティマーケットプレイスから直接購入する パックの運に頼るのがどうしても嫌で、今すぐ確実にカードが欲しいなら、コミュニティマーケットプレイスの「レジェンド&フラッシュバック」セクションに直行しましょう。貯めたスタブを使って、彼を引き抜いた他のプレイヤーから直接ブライス・ハーパーを買うCAN。割高な料金を支払う覚悟はしておいてください。マーケットの変動や日々の需要によって、彼の価格は364,000から404,000のスタブの間を大きく推移しています。値段は高額だが、余剰の小銭があれば、推測に頼る必要は完全になくなる。
查看全文
S32 设计工作室许可证问题 您好。 我最近更换了笔记本电脑,并在新电脑上重新安装了S32设计工作室。 但是,我遇到了许可证激活错误——软件无法激活,因为许可证仍然绑定到我之前的笔记本电脑上。 我尝试通过 NXP 许可证管理器退回许可证,但收到一条消息,称许可证无法退回。 请问您能否帮我从旧电脑上停用/释放许可证,以便我可以在新笔记本电脑上激活它?(我的)许可证密钥为 81B8-B707-440D-FE7C) 谢谢你的帮助。 Re: S32 Design Studio License Problem 你好, 可用许可证数量已增加。
查看全文
i.MX8MP 内存布局,适用于 Cortex M7 处理器,配备 1GB 动态随机存取存储器(DRAM) 我们有一个项目,其中使用了配备 1 GB 动态随机存取存储器(DRAM) 的 i.MX8MP。我们调整了 Cortex M7 的链接器文件、RPMSG 共享内存的设备树以及 Cortex M7 的动态随机存取存储器(DRAM) 保留内存。从 U-Boot 启动 rpmsg ping pong 可以正常工作,例如我们能够启动进入 Linux 系统,加载内核模块并看到正确的输出。内存映射看起来也正确,m_data2 段位于 1GB 动态随机存取存储器(DRAM) 内存的配置空间内。 使用 remoteproc 从 linux 启动相同的固件 (elf) 可以正常工作,但是当等待 rpmsg 名称服务宣布时,演示程序会挂起。 移植过程中是否存在我们遗漏的地方? 谢谢 Re: i.MX8MP memory layout for Cortex M7 with DRAM 1GB 正如我所写,设备树和链接器文件都进行了调整。remoteproc elf 加载器将加载该文件并启动它。从 MXUXSDK 移植的 hello world 演示程序在 Linux 系统下启动时运行良好。RPMSG 演示程序已加载并启动(我们在 M7 调试控制台上有有效输出),但 rpmsg 本身无法工作。 我怀疑是 M7 的 MPU 初始化代码存在不兼容的问题。8MP EVK 的 动态随机存取存储器\(DRAM\) 空间中是否有大于 1GB 的地址? Re: i.MX8MP memory layout for Cortex M7 with DRAM 1GB 在启动 Linux 之前运行 prepare_mcore 命令。 在 U-Boot 中,运行 bootcmd / 运行 bsp_bootcmd 之前,添加: 运行 prepare_mcore 如果他们想要实现自动化,请在启动 Linux 之前将其包含在板启动命令中。 调试期间保持未使用的时钟启用状态 对于抚养,还需添加: setenv mmcargs " ${mmcargs} clk_ignore_unused" saveenv 一些下游 BSP 使用更具体的解决方法,例如 clk-imx8mp.mcore_booted=1;Toradex 指出,这可以防止 Linux 禁用 i.MX8MP 上的 Cortex-M7 根时钟。 确认运行时 DTB 是启用 RPMsg 的 DTB。 对于 EVK,NXP 支持响应通常指向使用 imx8mp-evk-rpmsg.dtb 进行 M7 remoteproc/RPMsg 操作。在 i.MX8MP M7 remoteproc 故障 – “carveout doesn't fit da request” 的情况下,使用有效的 NXP RPMsg 固件,NXP 支持人员的回答是确保在 Linux 中使用 imx8mp-evk-rpmsg.dtb。[community.nxp.com] 对于定制的 1 GB 板,文件名会有所不同,但重点是运行时 DTB 必须包含 imx8mp-cm7 remoteproc 节点、MU 邮箱和所有 RPMsg 保留内存节点。 验证预留内存和资源表是否一致 对于 i.MX8MP,常见的 RPMsg 布局使用如下区域: dts 尚未完全支持。语法高亮显示基于纯文本。 vdev0vring0: vdev0vring0@55000000 { reg = <0 0x55000000 0 0x8000>; 无地图; }; vdev0vring1: vdev0vring1@55008000 { reg = <0 0x55008000 0 0x8000>; 无地图; }; vdevbuffer:vdevbuffer@55400000 { 兼容 = "共享DMA池"; reg = <0 0x55400000 0 0x100000>; 无地图; }; rsc_table: rsc_table@550ff000 { reg = <0 0x550ff000 0 0x1000>; 无地图; }; 一个关于 i.MX8MP 的 Linux Remoteproc 公开讨论展示了这种 DT 设置方式,包括 rsc-da = <0x55000000>、mboxes = <μ 0 1 μ 1 1 μ 3 1> 和 memory-region = <&vdevbuffer>、<&vdev0vring0>、<&vdev0vring1>、<&rsc_table> 等。 [community.nxp.com] 对于您的 1 GB 动态随机存取存储器(DRAM) 情况,请确保这些区域都不在 Linux 普通内存、CMA、GPU、OP-TEE 或其他保留范围内。同时验证 M7 固件的 rsc_table.c 文件。链接器文件使用与 Linux DT 相同的 vring/资源地址。 对于 1 GB 动态随机存取存储器(DRAM) 端口,请检查 ELF 程序头。 因为 Linux remoteproc 是通过程序头加载 ELF 文件,而不仅仅是通过“U-Boot 复制的位置”,所以请验证: readelf -l your_m7_firmware.elf readelf -S your_m7_firmware.elf | grep -E "resource|data|bss|text" 检查每个可加载段是否映射到 Linux remoteproc 可以为 i.MX8MP 转换的地址,以及您的 m_data2 区域是否在实际的 1 GB 动态随机存取存储器 (DRAM) 范围内,并与保留内存划分相匹配。 在调试期间清除过时的资源表区域 如果要测试重复启动模式,请在启动 M7 之前清除 RPMsg 资源表区域。i.MX Linux 用户指南指出,对于 i.MX8M Plus LPDDR4 EVK,可以使用以下命令清除资源表区域: mw 0x550ff000 0 4 这是专门为了避免资源表值出现垃圾值而记录的。 Re: i.MX8MP memory layout for Cortex M7 with DRAM 1GB 您有错误日志可以分享吗? rpmsg 似乎可能无法直接与 动态随机存取存储器(DRAM) 设置关联。 Re: i.MX8MP memory layout for Cortex M7 with DRAM 1GB 与AE团队讨论。 Re: i.MX8MP memory layout for Cortex M7 with DRAM 1GB 二进制文件和ELF文件是由同一段代码和链接器文件同时生成的,对吗? “我怀疑,M7 的 MPU 初始化代码存在不兼容的问题。8MP EVK 的 动态随机存取存储器(DRAM) 空间中是否有大于 1GB 的地址? - 如果 uboot 一切正常,但 linux rproc 却不行,那么这似乎就不是 MPU 的问题。 我可能首先会搁置 uboot 和 linux rproc 启动 M 之间的区别。请建议客户检查以下两点: 1) imx_rproc.cimx_rproc_att_imx8mn 是否已根据新的 动态随机存取存储器(DRAM) 容量进行了修改? 2)请确保 .resource_table 部分位于合适的位置?因为 Uboot 通过 copyResourceTable 加载此表,而 Linux 解析的是 .resource_table。.elf 部分文件。 他们使用的是哪个演示版本?他们能否提供针对 Linux 和 M7 SDK 的所有修改补丁?他们能否分享一下日志,日志显示“RPMSG 演示程序已加载并启动(我们在 M7 调试控制台上有有效输出),但 rpmsg 本身无法工作”?
查看全文
S32 Design Studio License Problem Hello. I recently changed my laptop and reinstalled S32 Design Studio on the new machine. However, I am encountering a license activation error — the software is unable to activate because the license is still bound to my previous laptop. I attempted to return the license through the NXP License Manager, but received a message stating that the license return is not possible. Could you please help me deactivate/release the license from my old machine so that I can activate it on my new laptop?(my license key is 81B8-B707-440D-FE7C) Thank you for your assistance. Re: S32 Design Studio License Problem Hi,  the number of available licenses has been increased. 
查看全文
[S32K388] SPD 1.0.6 Package Missing Complete Test Examples - Request for Register-Level Reference C Hi NXP Support Team,   I downloaded the "Safety Peripheral Drivers for S32K3 Version 1.0.6"    After installing and importing the SPD_example_S32K388_M7_0_0 project into S32 Design Studio, I found that the main.c is essentially empty   **My Environment:** - S32 Design Studio for S32 Platform 3.5 - SPD Version: 1.0.6 (SW32K3_SPD_1.0.6_D2512_DesignStudio_updatesite_updated.zip) - Target: S32K388 M7_0   **What I Expected** Please send complete register-level examples for: ECC on all memories (Flash, SRAM, TCM) - FCCU (Fault Collection and Control Unit) - STCU2 (Self-Test Control Unit 2 with LBIST/MBIST) - EIM (Error Injection Module) - ERM (Error Reporting Module) - CMU (Clock Monitor Unit) - Lockstep Core - SWT (Software Watchdog)   Send to [[email protected]] Or provide download link. Thank you.   Best regards, Re: [S32K388] SPD 1.0.6 Package Missing Complete Test Examples - Request for Register-Level Referenc Hi @xlele, Copilot said: The SPD provides a complete demo project, but it is available only for EB Tresos and not for the S32DS IDE. The demo is distributed in the standalone .exe version. Here is an unofficial SPD example for S32DS IDE.  https://community.nxp.com/t5/S32K-Knowledge-Base/Example-S32K344-BIST-eMCEM-SPD106-v2-0-S32DS365-RTD700/ta-p/2373113 There is one bare-metal EIM, ERM example: https://community.nxp.com/t5/S32K-Knowledge-Base/Example-S32K344-EIM-ERM-DTCM-SRAM-Baremetal-v3-0-S32DS36/ta-p/2193534 One CMU_FC example: https://community.nxp.com/t5/S32K-Knowledge-Base/Example-S32K344-MCAL-MCU-ClockMonitor-v1-0-S32DS36-RTD600/ta-p/2179976 SWT example can be found by default in RTD. Best regards, Daniel
查看全文
ホストからスイッチへのトレーラーは削除されていませんSJA1110 私はSJA1110上のホストプロセッサ(Cortex-M7)を通じてイーサネットフレームを送信しています。スイッチの特定のポートにルーティングするために、5.8.2の下UM11107に説明されているホスト-トゥスイッチヘッダー/トレーラーを使用しています。 フレームは正しい港に到着しているが、トレーラーは解体されていないか、部分的にしか解体されていない。参考までに、送信前にtxBufferに格納された同じフレームと、受信後に別のデバイスのrxBufferに格納された同じフレームを以下に示します。 01 80 c2 00 00 10 68 58 c5 00 11 02 8b 8c 88 39 88 b7 5a 46 00 01 02 06 68 58 c5 00 11 02 04 01 00 06 01 02 12 01 01 14 0e 01 02 11 00 c5 58 68 08 d8 26 c0 cb fd 18 00 00 00 00 ---- 00 04 00 00 00 ====== 01 80 C2 00 00 10 68 58 C5 00 11 02 88 B7 5A 46 00 01 02 06 68 58 C5 00 11 02 04 01 00 06 01 02 12 01 01 14 0E 01 02 11 00 C5 58 68 08 D8 26 C0 CB FD 18 00 00 00 00 ---- 00 04 00 00 00 ご覧の通り、ヘッダーは完全に削除されていますが、トレーラー(4本の線以降の部分)は削除されていません(イーサネットフレームが有効であるため、すべて0に設定されていることも含めて)です。 Re: host-to-switch trailer not removed on SJA1110 こんにちは、 @flxwly さん。 提供されたデータから判断すると、ホストからスイッチへのヘッダーは認識されているようで、4バイトのヘッダーは送信フレームから削除されています。しかし、受信フレームの末尾には依然としてトレーラーバイトが表示されます。 重要な点の一つは、ホストからスイッチへのヘッダーのTRAILER_POSフィールドです。あなたの例のヘッダーバイトは8b、8c、88、39です。 ホストからスイッチへのヘッダー形式で解釈すると、HEADER_TYPE = 0x8B8C、HOST_SWITCH = 1、TRAILER = 1、TRAILER_POS = 57となります。しかし、ダンプに示されている送信フレームでは、5バイトのトレーラーはMAC DAフィールドから0ベースのオフセットで59バイト目から始まっているようです。SFDに対する正確な位置カウントの慣例によっては期待値が1差になることがありますが、符号化された値57は実際のトレーラー位置と一致していないようです。 したがって、まずTRAILER_POSフィールドの計算方法を確認し、トレーラーの最初のバイトに対応する位置に設定してみてください。 もう一つ指摘しておきたい点があります。それは、提供されているテストフレームが非常に短いということです。5バイトトレーラーが剥がされると、得られるイーサネットフレームはFCSなしの最小イーサネットフレームサイズより短くなり、退出時に再度パディングを追加する必要があります。この曖昧さを避けるために、例えばホストトレーラーの前に16バイトや32バイトのダミーバイトを追加するなど、より長いペイロードでテストを繰り返していただけますか?これにより、トレーラーが本当に部品を抜き取られているかどうかが明らかになるだろう。 また、2番目のデバイスがフレームを受信する出力ポートが、通常のポートとして設定されていることを確認してください。UMによると、フレームが通常のポートから出力される際にはヘッダーとトレーラーは削除されますが、フレームがホストポートまたはカスケードポートから出力される際には制御情報は保持されます。 最後に、5バイトのトレーラー値「00 04 00 00 00」がどのように生成されるのか教えていただけますか?FRAMEID、PRIO、SWITCHID、DESTPORT のビットパッキングを、ユーザーマニュアルに示された形式と照らし合わせて検証することが有用でしょう。 よろしくお願いいたします。 パベル Re: host-to-switch trailer not removed on SJA1110 こんにちは、 @PavelL さん。 お返事ありがとうございます。トレーラーの位置は正しいのですが、ポストでフレームの「終わり」を間違ってマークしていました。実際には2バイト手前です(ご指摘のとおり、57バイト目です)。 したがって、予告編も異なり、今では意味が通じ、UMのシナリオに合致している。 また、トレーラーが64バイト以上過ぎてからしか表示されないフレームでは、トレーラーが正しく削除されていることも確認できます。つまり、これはトレーラーが追加される前の64バイト未満のフレームでのみ問題になります(確かIEEEの仕様ではトレーラーは存在しないはずです)。 よろしくお願いいたします。 ネポムク
查看全文
如何在《MLB The Show 26》中解锁布莱斯·哈珀的循环里程碑系列 如果你最近一直在玩钻石王朝模式,你肯定已经知道社区正在热议新的 98 OVR 循环里程碑系列布莱斯·哈珀。这张卡片是为了纪念他在现实世界中完成完全打击的历史性表现而推出的,老实说,它的属性使其成为任何想要巩固外野或为阵容增添一些精英左打力量的人的必备之选。 有什么猫腻呢?他并不受制于一条简单的奖励机制。要获得这张 Harper 卡,你需要购买 Chase Pack 16。由于他是追逐包奖励,解锁他需要一些策略、运气或一大堆短截线。根据你拥有的时间或游戏内货币,以下是把他加入你的队伍的四种最佳方法。 1. 努力刷完第四局经验奖励路径轮盘 如果你正在组建一支严格的“零氪金”(NMS)队伍,那么这是你完全免费获得该卡牌的最佳主动刷图方法。完成第四局经验值计划的主要奖励后,真正的挑战并不会就此结束。超出程序主上限的额外经验值,每多获得一点,就能让你有机会转动一次可重复使用的奖励路径转盘。追逐包 16 就在这个转盘的奖池里,这意味着你可以不断刷经验值,并有机会抽取该卡包,而无需花费一根短截线。 2. 购买《The Show》50 合集 对于那些不想参与随机转盘抽奖,并且一直在攒钱购买游戏币的玩家来说,可以在礼包市场中采取更直接的方式。如果你购买标准的《The Show》50包组合包,游戏会额外赠送一个必定的追逐包16。虽然购买组合包总算有点投资,但知道你能 100% 获得包含哈珀的特定追逐包,这比购买单个卡包要安全得多。 3. 试试你的运气,购买标准版《The Show》卡包 你也可以顺其自然地玩游戏,然后祈祷运气之神眷顾你。你打开的每一个标准个人基础包都有很小的随机概率升级为追逐包 16。不花费游戏币就能最大化利用这种方法的最佳途径是囤积当前内容中的免费礼包。务必完成六月倒计时计划、六月焦点计划中的任务,并积极参与登月计划 II 活动。所有这些模式都会赠送大量免费基础礼包,让你获得大量免费彩票,用于兑换追逐礼包升级。 4. 直接从社区市场购买 如果你实在讨厌依赖卡包运气,只想现在就确保获得这张卡,那就直接前往社区市场的传奇与闪回卡牌专区吧。你可以用你积累的短截线直接从其他抽到Bryce Harper的玩家手中购买他。但你要做好支付高价的准备。根据市场波动和每日需求,他的价格一直徘徊在 364,000 至 404,000 Stubs 的范围内。虽然价格不菲,但如果你手头宽裕,它就能彻底消除猜测的成分。
查看全文
S32 デザインスタジオライセンス問題 こんにちは、 最近ノートPCを交換し、新しいマシンにS32 Design Studioを再インストールしました。 しかし、ライセンスアクティベーションのエラーが発生しています。ライセンスが以前のノートPCに紐づいているため、ソフトウェアがアクティベートできません。 NXPライセンスマネージャーを通じて免許証を返却しようとしましたが、免許返却が不可能であるというメッセージが出ました。 古いマシンのライセンスを解除・解放して、新しいノートPCで有効化できるように手伝ってもらえますか?(私のライセンスキーは81B8-B707-440D-FE7Cです。 ご協力ありがとうございました。 Re: S32 Design Studio License Problem こんにちは、 利用可能なライセンス数が増加しました。
查看全文
i.MX8MP memory layout for Cortex M7 with DRAM 1GB We have a project where we use i.MX8MP with 1 GB DRAM. We adjusted Linker files for Cortex M7, Devicetree for RPMSG shared memory and DRAM reserved memory for Cortex M7. Starting rpmsg ping pong from U-Boot works, e.g. we are able to boot into linux, load the kernel module and see correct output. The memory map looks correct also for the m_data2 section which is in the configured space inside the 1GB DRAM Starting the same firmware (elf) from linux using remoteproc works but the demo hangs when waiting for rpmsg nameservice announce. Is there someting we miss when porting? Thank you Re: i.MX8MP memory layout for Cortex M7 with DRAM 1GB Add run prepare_mcore before booting Linux In U-Boot, before run bootcmd / run bsp_bootcmd, add: run prepare_mcore If they want this automatic, include it in the board boot command before Linux is launched. Keep unused clocks enabled during debug For bring-up, also add: setenv mmcargs "${mmcargs} clk_ignore_unused" saveenv Some downstream BSPs use a more specific workaround such as clk-imx8mp.mcore_booted=1; Toradex notes that this prevents Linux from disabling the Cortex-M7 root clock on i.MX8MP. Confirm the runtime DTB is the RPMsg-enabled DTB For EVK, NXP support responses commonly point to using imx8mp-evk-rpmsg.dtb for M7 remoteproc/RPMsg. In i.MX8MP M7 remoteproc failure – “carveout doesn't fit da request” with valid NXP RPMsg firmware, the NXP support answer says to make sure imx8mp-evk-rpmsg.dtb is used in Linux. [community.nxp.com] For a custom 1 GB board, the filenames will differ, but the important point is that the runtime DTB must include the imx8mp-cm7 remoteproc node, MU mailboxes, and all RPMsg reserved-memory nodes. Verify reserved-memory and resource table alignment For i.MX8MP, the common RPMsg layout uses regions such as: dts isn’t fully supported. Syntax highlighting is based on Plain Text. vdev0vring0: vdev0vring0@55000000 { reg = <0 0x55000000 0 0x8000>; no-map; }; vdev0vring1: vdev0vring1@55008000 { reg = <0 0x55008000 0 0x8000>; no-map; }; vdevbuffer: vdevbuffer@55400000 { compatible = "shared-dma-pool"; reg = <0 0x55400000 0 0x100000>; no-map; }; rsc_table: rsc_table@550ff000 { reg = <0 0x550ff000 0 0x1000>; no-map; }; A public Linux Remoteproc on i.MX8MP discussion shows this style of DT setup, including rsc-da = <0x55000000>, mboxes = <μ 0 1 μ 1 1 μ 3 1>, and memory-region = <&vdevbuffer>, <&vdev0vring0>, <&vdev0vring1>, <&rsc_table>, .... [community.nxp.com] For your 1 GB DRAM case, make sure none of these regions are inside Linux normal memory, CMA, GPU, OP-TEE, or another reserved range. Also verify that the M7 firmware’s rsc_table.c and linker file use the same vring/resource addresses as Linux DT. For the 1 GB DRAM port, check the ELF program headers Because Linux remoteproc loads the ELF by program headers, not just by “where U-Boot copied it,” verify: readelf -l your_m7_firmware.elf readelf -S your_m7_firmware.elf | grep -E "resource|data|bss|text" Check that every loadable segment maps to an address Linux remoteproc can translate for i.MX8MP, and that your m_data2 region is inside the actual 1 GB DRAM range and matches the reserved-memory carveout. Clear stale resource table area during debug If testing repeated boot modes, clear the RPMsg resource table area before booting M7. The i.MX Linux User’s Guide says that for i.MX8M Plus LPDDR4 EVK, the resource table area can be cleared with: mw 0x550ff000 0 4 This is specifically documented for avoiding garbage resource table values Re: i.MX8MP memory layout for Cortex M7 with DRAM 1GB As I wrote, the devicetree and linker file were adjusted. The remoteproc elf loader will load the file and start it. The ported hello world demo from MXUXSDK runs fine when started from Linux. The RPMSG demo is loaded and starts (we have valid output on M7 debug console) but rpmsg itself does not work. I suspect, there is anything incompatible with the MPU initialisation code for the M7.  There are addresses above 1 GB in DRAM space for the 8MP EVK? Re: i.MX8MP memory layout for Cortex M7 with DRAM 1GB do you have an y error log to share? it seems the rpmsg may not link with DRAM setting directly Re: i.MX8MP memory layout for Cortex M7 with DRAM 1GB Discussing with the AE team. Re: i.MX8MP memory layout for Cortex M7 with DRAM 1GB The binary file and elf file are generated on the same time, by the same code and linker file, oright?  "I suspect, there is anything incompatible with the MPU initialisation code for the M7. There are addresses above 1 GB in DRAM space for the 8MP EVK?"  - If everything on uboot is OK but linux rproc is not, then it seems not the issue of MPU. I may first suspend the differences between uboot and linux rproc boot M. Please suggest customer check below two things: 1) imx_rproc.c imx_rproc_att_imx8mn has been modified according to your new DRAM size? 2) Make sure the section .resource_table is in a suitable position? Because Uboot load this table by copyResourceTable, but Linux parse the .resource_table section from .elf file. Which demo they are using? can they provide all the patch of the modification, towards Linux and M7 SDK? And what isCan they share their log shows "The RPMSG demo is loaded and starts (we have valid output on M7 debug console) but rpmsg itself does not work"?
查看全文
How do I build imx-optee-os from source and integrate it into the uboot FIT image? I am using the i.MX8MP SoC. I have cloned the imx-optee-ossource code from https://github.com/nxp-imx/imx-optee-os.gitand checked out the lf-6.6.36_2.1.0branch. How do I build imx-optee-osand package it into the flash.bin  image? i.MX 8M | i.MX 8M Mini | i.MX 8M Nano Re: How do I build imx-optee-os from source and integrate it into the uboot FIT image? Hello, I don't know exactly which BSP version you are using, but please have a look to the i.MX Linux User's Guide, section 4.5.13 How to build imx-boot image by using imx-mkimage, and look for i.MX 8M EVK section (i.MX8M is the family) Linux documentation: https://www.nxp.com/design/design-center/software/embedded-software/i-mx-software/embedded-linux-for-i-mx-applications-processors:IMXLINUX i.MX Linux User's Guide: https://www.nxp.com/docs/en/user-guide/UG10163.pdf Best regards/Saludos, Aldo.
查看全文
《大学橄榄球27》:官方封面运动员预测及发售日程安排 等待即将结束。EA Sports College Football 27 已确定将于 2026 年 7 月 9 日星期四在全球范围内正式发布。 今年是该系列游戏的一个重要里程碑。该系列游戏有史以来第一次打破了主机平台独占的局面,通过 Steam、Epic Games Store 和 EA App 登陆 PC 平台。PC玩家终于可以和PlayStation 5和Xbox Series X|S用户一起在虚拟橄榄球场上驰骋了。 EA 已正式确定封面明星,并制定了分阶段的抢先体验计划。如果您想计划您的开球仪式,这里有一份完整的名单,包括谁在场、何时可以开始比赛以及费用是多少。 官方封面运动员 EA Sports 没有只突出一名球员,而是采用了星光熠熠、多名运动员参与的方式,在不同版本中庆祝现代大学橄榄球的辉煌时代。 标准版封面 标准版封面展示了上赛季表现出色的三位进攻型球员: 但丁·摩尔——带领俄勒冈鸭队的明星四分卫。 马拉奇·托尼——迈阿密队极具爆发力的外接手。 Kewan Lacy——这位爆发力十足的奥莱米斯大学跑卫。 豪华版封面 豪华版扩充了球队阵容,除了标准版的三位球星外,还加入了多名防守悍将和一位冠军教练: 杰登·马亚瓦(南加州大学四分卫) 科林·西蒙斯(德克萨斯大学线卫) 伦纳德·摩尔(圣母大学角卫) 科特·西格内蒂(印第安纳大学全国冠军队主教练) 官方发布时间表 根据您的预购等级或订阅状态,您有三个不同的时间段可以进入游戏。分阶段版本的安排可以让最专用的粉丝提前整整一周开始游戏。 日期 访问窗口 需求/版本 2026年7月2日 7天抢先体验/10小时试用 EA Sports MVP+ 会员资格或标准 EA Play 试用 2026年7月6日 提前3天进入 豪华版、MVP 捆绑包或 EA Play Pro(PC) 2026年7月9日 全球正式发布 标准版(所有平台) 定价及版本细分 目前已在EA Sports官方商店开启预购。选择合适的版本取决于你想多早开始玩以及你是否也玩 Madden 游戏。 标准版(69.99美元):7 月 9 日发售当天即可获得基础游戏,以及标准的预购奖励,例如 Ultimate Team封面运动员物品和基本的王朝教练点数。 豪华版(99.99美元):提前 3 天(7 月 6 日)解锁游戏,并包含 4,600 大学橄榄球积分,助您快速组建终极球队阵容。 MVP 套餐(149.99 美元):专为足球纯粹主义者构建的软件包版本。它将《大学橄榄球 27》豪华版与即将推出的《麦登橄榄球 27》豪华版捆绑在一起,让您可以提前体验这两款游戏并获得高级货币。
查看全文
How to Unlock Cycle Milestone Series Bryce Harper in MLB The Show 26 If you have been grinding Diamond Dynasty lately, you already know that the community is buzzing about the new 98 OVR Cycle Milestone Series Bryce Harper. This card was dropped to commemorate his historic real-world performance where he hit for the cycle, and honestly, the attributes make it an absolute must-have for anyone looking to anchor their outfield or add some elite left-handed power to their lineup. The catch? He isn't tied to a straightforward program reward path. To get your hands on this Harper card, you need to acquire Chase Pack 16. Because it is a Chase Pack reward, unlocking him takes a bit of strategy, luck, or a healthy stack of Stubs. Depending on how much time or in-game currency you have, here are the four best ways to add him to your squad. 1. Grind the 4th Inning XP Reward Path Wheel If you are running a strict "No Money Spent" (NMS) squad, this is your best active grind method to pull the card entirely for free. Once you finish up the main rewards in the 4th Inning XP Program, the grind does not actually stop. Every chunk of extra XP you accumulate beyond the program's main cap grants you a spin on the repeatable Reward Path Wheel. Chase Pack 16 is sitting right in that wheel’s prize pool, meaning you can keep farming XP and taking shots at pulling the pack without spending a single stub. 2. Buy the The Show 50-Pack Bundle For players who prefer to skip the random wheel spins and have been saving up their hard-earned stubs, you can take a more direct route in the Pack Market. If you purchase the standard The Show 50-Pack Bundle, the game throws in a guaranteed Chase Pack 16 as a bonus. While buying bundles is always a bit of an investment, knowing you are 100% getting the specific Chase Pack containing Harper makes this a much safer bet than buying individual packs. 3. Test Your Luck with Standard The Show Packs You can also just play the game naturally and hope the RNG gods smile on you. Every single standard individual base pack you open carries a small, random percentage chance to upgrade into a Chase Pack 16. The best way to maximize this method without spending currency is to hoard free packs from current content. Make sure to knock out your tasks in the June Countdown Program, the June Spotlight Program, and jump into the Moonshot II Event. All of these modes hand out a ton of free base packs, giving you plenty of free lottery tickets for that Chase Pack upgrade. 4. Buy Directly from the Community Marketplace If you absolutely hate relying on pack luck and just want the card guaranteed right now, head straight over to the Legends & Flashbacks section of the Community Marketplace. You can use your banked Stubs to buy Bryce Harper directly from other players who managed to pull him. Just be prepared to pay a premium. Depending on market fluctuations and daily demand, his price has been hovering heavily around the 364,000 to 404,000 Stubs range. It is a hefty price tag, but it completely removes the guesswork if you have the stubs to spare.
查看全文
host-to-switch trailer not removed on SJA1110 I am sending ethernet frames via the host processor (Cortex-M7) on a SJA1110. To route them to the specific ports on the switch I am using the host-to-switch header/trailer described in UM11107 under 5.8.2. The frames are received on the correct port however the trailer is not stripped or only partily stripped. For reference here is the same frame once before sending stored in the txBuffer and once after receiving in the rxBuffer of another device: 01 80 c2 00 00 10 68 58 c5 00 11 02 8b 8c 88 39 88 b7 5a 46 00 01 02 06 68 58 c5 00 11 02 04 01 00 06 01 02 12 01 01 14 0e 01 02 11 00 c5 58 68 08 d8 26 c0 cb fd 18 00 00 00 00 ---- 00 04 00 00 00 ====== 01 80 C2 00 00 10 68 58 C5 00 11 02 88 B7 5A 46 00 01 02 06 68 58 C5 00 11 02 04 01 00 06 01 02 12 01 01 14 0E 01 02 11 00 C5 58 68 08 D8 26 C0 CB FD 18 00 00 00 00 ---- 00 04 00 00 00 As you can see the header is removed completly but the trailer (everything after the 4 dashed lines) is not removed (or set to all 0s because atleast 64 bytes are required for the ethernet frame to be valid). Re: host-to-switch trailer not removed on SJA1110 Hello @flxwly , From the provided data, the host-to-switch header seems to be recognized by the switch, because the 4-byte header is removed from the outgoing frame. However, the trailer bytes still appear at the end of the received frame. One important point to check is the TRAILER_POS field in the host-to-switch header. The header bytes in your example are 8b 8c 88 39 Interpreting this according to the host-to-switch header format gives HEADER_TYPE = 0x8B8C, HOST_SWITCH = 1, TRAILER = 1, and TRAILER_POS = 57. However, in the transmitted frame shown in your dump, the 5-byte trailer appears to start at byte offset 59 from the MAC DA field, zero-based. Depending on the exact position counting convention relative to SFD, the expected value may differ by one, but the encoded value 57 does not seem to match the actual trailer position. Therefore, please first check how the TRAILER_POS field is calculated and try setting it to the position corresponding to the actual first byte of the trailer. There is also a second point: the provided test frame is very short. If the 5-byte trailer were stripped, the resulting Ethernet frame would become shorter than the minimum Ethernet frame size without FCS, so padding would need to be added again on egress. To avoid this ambiguity, could you please repeat the test with a longer payload, for example by adding 16 or 32 dummy bytes before the host trailer? This will make it clear whether the trailer is really stripped or not. Please also confirm that the egress port where the second device receives the frame is configured as a normal port. According to the UM, the header and trailer are stripped when the frame egresses a normal port, while the control information is preserved when the frame egresses the host port or a cascaded port. Finally, could you please share how the 5-byte trailer value `00 04 00 00 00` is generated? It would be useful to verify the bit packing of FRAMEID, PRIO, SWITCHID, and DESTPORTS against the format shown in the user manual. Best regards, Pavel Re: host-to-switch trailer not removed on SJA1110 Hello @PavelL, thank you for your reply. The trailer position is correct because I marked the "end" of my frame in the post wrong. It is actually 2 bytes earlier (at byte 57 as you correctly states). Therefore the trailer is also different and now makes sense and corresponds to the sceme in the UM. I can also confirm that on frames where the trailer only comes after atleast 64 bytes the trailer is removed correctly. So this is only a problem for frames shorter than 64 bytes before the trailer is added (which should not exist according to IEEE spec if i remember correct).  Best regards Nepomuk
查看全文
[S32K388]SPD 1.0.6 パッケージに完全なテスト例が欠けている - レジスタレベルの参照Cのリクエスト NXPサポートチームの皆さん、こんにちは。   「S32K3 バージョン1.0.6のセーフティ・ペリフェラル・ドライバ」をダウンロードしました。   SPD_example_S32K388_M7_0_0プロジェクトをインストールしてS32 Design Studioにインポートしたところ、main.cはほぼ空であることに気づきました   **私の環境:** - S32 Design Studio for S32 プラットフォーム 3.5 - SPD バージョン:1.0.6(SW32K3_SPD_1.0.6_D2512_DesignStudio_updatesite_updated.zip) - ターゲット:S32K388 M7_0   **私が期待していたこと** 以下のレジスタレベルの完全な例をお送りください。 すべてのメモリ(フラッシュ、SRAM、TCM)にECCを適用- FCCU(故障収集・制御装置) - STCU2 (LBIST/MBIST を備えたセルフテスト コントロール ユニット 2) - EIM(エラー注入モジュール) - ERM(エラー報告モジュール) - CMU(クロックモニタユニット) - ロックステップコア- SWT(ソフトウェア監視)   [[email protected]]宛てに送信してください。 または、ダウンロードリンクを提供してください。 よろしくお願いします。   よろしくお願いいたします。 Re: [S32K388] SPD 1.0.6 Package Missing Complete Test Examples - Request for Register-Level Referenc こんにちは、 @xlele さん。 Copilotさんによると:SPDは完全なデモプロジェクトを提供していますが、EB Tresosのみで利用可能で、S32DS IDEsには対応していません。 デモはスタンドアロンの.exeファイルとして配布されています。バージョン。 こちらはS32DS IDEの非公式SPD例です。 https://community.nxp.com/t5/S32K-Knowledge-Base/Example-S32K344-BIST-eMCEM-SPD106-v2-0-S32DS365-RTD700/ta-p/2373113 ベアメタルEIM、ERMの例を1つ挙げます。 https://community.nxp.com/t5/S32K-Knowledge-Base/Example-S32K344-EIM-ERM-DTCM-SRAM-Baremetal-v3-0-S32DS36/ta-p/2193534 CMU_FCの例を1つ挙げます。 https://community.nxp.com/t5/S32K-Knowledge-Base/Example-S32K344-MCAL-MCU-ClockMonitor-v1-0-S32DS36-RTD600/ta-p/2179976 SWTの例はRTDでデフォルトで見つけることができます。 よろしくお願いいたします。 ダニエル
查看全文
College Football 27: Official Cover Athlete Prediction and Launch Schedule Breakdown The wait is almost over. EA Sports College Football 27 is locked in for an official worldwide launch on Thursday, July 9, 2026. This year is a massive milestone for the franchise. For the first time ever, the series is breaking out of its console-only cage and landing on PC via Steam, the Epic Games Store, and the EA App. PC players can finally join PlayStation 5 and Xbox Series X|S users on the virtual gridiron. EA has officially finalized its cover stars and laid out a staggered early access schedule. If you want to plan your kickoff, here is a complete breakdown of who is on the box, when you can start playing, and what it will cost. Official Cover Athletes Instead of highlighting just one player, EA Sports went with a star-studded, multi-athlete approach to celebrate the modern era of college football across different editions. Standard Edition Cover The standard cover features a powerhouse trio of dominant offensive playmakers who lit up the previous season: Dante Moore – The star quarterback leading the Oregon Ducks. Malachi Toney – Miami’s electrifying wide receiver. Kewan Lacy – The explosive Ole Miss running back. Deluxe Edition Cover The Deluxe Edition expands the squad, grouping the three Standard Edition stars alongside major defensive standouts and a championship coach: Jayden Maiava (USC Quarterback) Colin Simmons (Texas Linebacker) Leonard Moore (Notre Dame Cornerback) Curt Cignetti (Indiana’s national championship-winning head coach) Official Launch Schedule Depending on your pre-order tier or subscription status, there are three distinct windows to jump into the game. The staggered release schedule lets the most dedicated fans get a full week of head-start playtime. Release Date Access Window Requirement / Edition July 2, 2026 7-Day Early Access / 10-Hour Trial EA Sports MVP+ Membership or standard EA Play Trial July 6, 2026 3-Day Early Access Deluxe Edition, MVP Bundle, or EA Play Pro (PC) July 9, 2026 Official Worldwide Launch Standard Edition (All Platforms) Pricing & Edition Breakdown Pre-orders are already live on the official EA Sports storefront. Choosing the right version comes down to how early you want to play and whether you also play Madden. Standard Edition ($69.99): Gives you the base game on the July 9 launch date, plus standard pre-order incentives like Ultimate Team cover athlete items and basic Dynasty coach points. Deluxe Edition ($99.99): Unlocks the game 3 days early on July 6 and includes 4,600 College Football Points to kickstart your Ultimate Team roster. MVP Bundle ($149.99): A massive package built for football purists. It bundles the Deluxe Edition of College Football 27 with the Deluxe Edition of the upcoming Madden NFL 27, giving you early access and premium currency for both titles.
查看全文
如何从源代码构建 imx-optee-os 并将其集成到 uboot FIT 镜像中? 我使用的是 i.MX8MP SoC。我从https://github.com/nxp-imx/imx-optee-os.git克隆了 imx-optee-os 源代码,并检出了 lf-6.6.36_2.1.0branch。如何版本 imx-optee-os 并将其软件包到 flash.bin 中图像? i.MX 8M | i.MX 8M Mini | i.MX 8M Nano Re: How do I build imx-optee-os from source and integrate it into the uboot FIT image? 你好, 我不太清楚您具体使用的是哪个 BSP 版本,但请参阅 i.MX Linux 用户指南的 4.5.13 节。如何使用 imx-mkimage 构建 imx-boot 镜像,并查找 i.MX 8M EVK 部分(i.MX8M 是系列名称) Linux 文档: https://www.nxp.com/design/design-center/software/embedded-software/i-mx-software/embedded-linux-for-i-mx-applications-processors:IMXLINUX i.MX Linux 用户指南: https://www.nxp.com/docs/en/user-guide/UG10163.pdf 此致敬礼/Saludos, 阿尔多。
查看全文
Question Regarding Critical Section Protection for OTP and NVM Access Services Hi, We previously encountered an issue caused by a background process when modifying the OTP (Secure Debug Password) and Life Cycle (LC) in HSE_B. As a result, we were advised to protect the OTP and LC update operations by using a critical section. In addition, would it also be necessary to protect service requests that access the NVM area, rather than the OTP, such as ImportKey, FormatKeyCatalogs, SmrEntryInstall, and CrEntryInstall, by using a critical section? Re: Question Regarding Critical Section Protection for OTP and NVM Access Services Hi @lukaszadrapa, thank you for your reply. In that case, instead of entering a critical section, would it be sufficient to check the HSE_CONFIG_GPR3 register before accessing the flash to ensure that flash access is available? Re: Question Regarding Critical Section Protection for OTP and NVM Access Services Hi @wodudwo  To have full picture, I recommend to read description in HSE Firmware reference manual rev. 2.7 in section: “14.6.5  Synchronizing flash read/write access between HSE and application core”: https://www.nxp.com/webapp/sd/collateral/1765990353647716033651?version=2.7 There are tables 149, 150 and 151 where you can find details about typical scenarios. In short: if HSE firmware is executing, it’s not possible to program a flash block from which the firmware is running from. In case of S32K344 and FULL_MEM version (just an example) it’s block 3, in case of AB_SWAP it’s block 1. It’s necessary to wait until HSE is in idle state and then do not trigger other HSE services. If HSE is performing flash operation on SYS-IMG (like key catalog formatting, importing a key, writing NVM attribute…) then, in addition, it is not possible to access data flash memory. If HSE is writing OTP data (attribute, life cycle advancing, programming password etc.) it is not possible to access UTEST and also flash block 0 because UTEST and flash block 0 are in the same read partition. And this seems to be the key point if you have a problem with ADKP programming and with life cycle advancing. Please take a look at this post where I described what needs to be relocated from flash block 0: https://community.nxp.com/t5/S32K/S32K324-HSE-Setting-ADKP-Issue/m-p/2369325/highlight/true#M58774 And when talking about synchronization between flash and HSE, notice that the support for synchronization between FLS and CRYPTO modules in RTD was added in version 5.0.0 and higher. Here is a screenshot from 6.0.0: If you use older RTD version, it needs to be handled by users. Notice that this synchronization does not solve the problem with programming OTP attributes to UTEST. The code still needs to be relocated from flash block 0. Regards, Lukas Re: Question Regarding Critical Section Protection for OTP and NVM Access Services It depends on scenario. “In addition, would it also be necessary to protect service requests that access the NVM area, rather than the OTP, such as ImportKey, FormatKeyCatalogs, SmrEntryInstall, and CrEntryInstall, by using a critical section?” For this scenario – no. HSE_CONFIG_GPR3 informs users if read/execute or program/erase is blocked for application by HSE on some flash block. But this is not a protection similar to critical section in your code. Critical section will ensure that there will be no interrupt which could access data flash or which could somehow interfere with the operations. But this has nothing to do with status of HSE_CONFIG_GPR3. Anyway, mentioned services like ImportKey, FormatKeyCatalogs, SmrEntryInstall, and CrEntryInstall are crucial configuration services which should be executed sequentially in controlled environment. It makes sense to use critical section. If it is necessary to handle some important interrupts in the meantime, it’s necessary to ensure that used interrupt resources does not interfere with HSE and flash blocks used by HSE. Re: Question Regarding Critical Section Protection for OTP and NVM Access Services Hi, @lukaszadrapa  Thank you for your explanation. If I understand correctly, checking the HSE_CONFIG_GPR3 register alone is not sufficient, and protection using a critical section is still required. My understanding is that even if an interrupt occurs, checking the HSE_CONFIG_GPR3 register before accessing the flash should prevent the application core and the HSE core from accessing the same flash block simultaneously. If a critical section is not used, are there any other potential issues that could occur besides simultaneous flash access between the application core and the HSE core? Re: Question Regarding Critical Section Protection for OTP and NVM Access Services Conversely, is it also an issue if the application core performs a program/erase operation while HSE is already performing a program/erase operation? - Yes, it is an issue because no more flash operations can run at the same time.   If so, can this situation be prevented by checking not only bits 21:16 but also bits 29:24 of the HSE_CONFIG_GPR3 register before the application core starts the program/erase operation? - Yes. This would help in situation when HSE is already programming the flash and application core want to also start another flash operation.   If this approach is not sufficient to prevent such conflicts, would using a critical section be the recommended solution for protecting these service requests? - When HSE performs mentioned NVM operations (catalog format, key import…), application should not start other flash operations and should not access flash block which is being programmed by HSE. If anything like that is done by the interrupt handlers, yes, critical section would prevent this conflict.   Additionally, the tables do not explicitly describe the case where the application core is executing code from a code flash block while HSE is performing a program/erase operation on the same code flash block. Is this scenario considered safe without any synchronization, or does it also require some form of protection? - Code flash memory is being programmed by HSE only when HSE/SBAF installs/updates/recovers/erases HSE firmware. This is done either out of reset automatically or it is triggered by software. HSE firmware is located it the end of code flash (in FULL_MEM version) or at the end of active and passive block (AB_SWAP version). It is expected that the application starts from lower flash blocks and it also waits until initialization is done and until HSE finishes the initialization (and possible flash operations). So, there’s no risk in this case. If application triggers an update of HSE firmware, it’s up to user to ensure that corresponding flash block is not access during this operation. If protection is required for this scenario, what would be the recommended way to implement it? - As described above – after reset, do not access flash block which contains HSE firmware until initialization is completed. And do not access the flash block when your software initiates HSE firmware update.   Re: Question Regarding Critical Section Protection for OTP and NVM Access Services hi, @lukaszadrapa  Thank you for your explanation. Your answers have been very helpful.  Re: Question Regarding Critical Section Protection for OTP and NVM Access Services Hi, @lukaszadrapa  Thank you for your reply. According to Tables 149, 150, and 151 in the HSE Firmware Reference Manual, which describe synchronization requirements for concurrent flash program/erase operations, the following is stated: No synchronization steps to be followed. It is expected that the M7_0/1 core does not issue any command to HSE which involves program/erase operation when it is programming data flash. Conversely, is it also an issue if the application core performs a program/erase operation while HSE is already performing a program/erase operation? If so, can this situation be prevented by checking not only bits 21:16 but also bits 29:24 of the HSE_CONFIG_GPR3 register before the application core starts the program/erase operation? If this approach is not sufficient to prevent such conflicts, would using a critical section be the recommended solution for protecting these service requests? Additionally, the tables do not explicitly describe the case where the application core is executing code from a code flash block while HSE is performing a program/erase operation on the same code flash block. Is this scenario considered safe without any synchronization, or does it also require some form of protection? If protection is required for this scenario, what would be the recommended way to implement it? Re: Question Regarding Critical Section Protection for OTP and NVM Access Services We are getting back to tables 149, 150 and 151 from HSE firmware reference manual which I mentioned earlier. It's necessary to evaluate the program flow, compare it with scenarios described in the tables and decide if countermeasures are needed or not. Otherwise there could be a risk that HSE will disrupt application core(s) or vice versa.  Regards, Lukas
查看全文
关于 OTP 和 NVM 访问服务的关键部分保护的问题 您好,我们之前在修改 HSE_B 中的 OTP(安全调试密码)和生命周期 (LC) 时,遇到了由后台进程引起的问题。 因此,我们被建议使用临界区来保护 OTP 和 LC 更新操作。 此外,是否也需要使用临界区来保护访问 NVM 区域(而不是 OTP)的服务请求,例如ImportKey 、 FormatKeyCatalogs 、 SmrEntryInstall和CrEntryInstall ? Re: Question Regarding Critical Section Protection for OTP and NVM Access Services 嗨@lukaszadrapa , 感谢您的回复。 在这种情况下,与其进入临界区,不如在访问闪存之前检查 HSE_CONFIG_GPR3 寄存器以确保闪存访问可用,这样是否就足够了? Re: Question Regarding Critical Section Protection for OTP and NVM Access Services 嗨@wodudwo 为了获得完整的信息,我建议阅读 HSE 固件参考手册 rev. 中的描述。2.7 节: “14.6.5同步 HSE 和应用核心之间的闪存读/写访问: https://www.nxp.com/webapp/sd/collateral/1765990353647716033651?version=2.7 表 149、150 和 151 中提供了典型场景的详细信息。 简而言之:如果 HSE 固件正在执行,则无法对正在运行该固件的闪存块进行编程。以 S32K344 和 FULL_MEM 版本为例(仅举例),它是第 3 个块;以 AB_SWAP 为例,它是第 1 个块。必须等到 HSE 处于 IDLE状态后,才不要触发其他 HSE 服务。 如果 HSE 正在对 SYS-IMG 执行闪存操作(例如密钥目录格式化、导入密钥、写入 NVM 属性等),则此外,也无法访问数据闪存。 如果 HSE 正在写入 OTP 数据(属性、生命周期推进、编程密码等),则无法访问 UTEST 和闪存块 0,因为 UTEST 和闪存块 0 位于同一个读取分区中。如果你在使用 ADKP 编程和生命周期推进方面遇到问题,这似乎就是关键所在。请查看这篇帖子,其中我描述了需要从闪存块 0 迁移的内容: https://community.nxp.com/t5/S32K/S32K324-HSE-Setting-ADKP-Issue/mp/2369325/highlight/true#M58774 谈到闪存和 HSE 之间的同步时,请注意 RTD 中 FLS 和 CRYPTO 模块之间的同步支持是在 5.0.0 及更高版本中添加的。 以下是 6.0.0 版本的屏幕截图: 如果使用较旧的RTD版本,则需要用户自行处理。请注意,这种同步并不能解决将 OTP 属性编程到 UTEST 的问题。代码仍需从闪存块 0 迁移出来。 此致, Lukas Re: Question Regarding Critical Section Protection for OTP and NVM Access Services 这要视具体情况而定。 “此外,是否也需要使用临界区来保护访问 NVM 区域(而不是 OTP)的服务请求,例如ImportKey 、 FormatKeyCatalogs 、 SmrEntryInstall和CrEntryInstall ?” 就这种情况而言——不。HSE_CONFIG_GPR3 通知用户,如果 HSE 阻止了对某些闪存块的读取/执行或编程/擦除操作。但这并不类似于代码中的临界区保护机制。临界区将确保不会发生任何可能访问数据闪存或以任何方式干扰操作的中断。但这与 HSE_CONFIG_GPR3 的状态无关。 总之,提到的 ImportKey、FormatKeyCatalogs、SmrEntryInstall 和 CrEntryInstall 等服务都是至关重要的配置服务,应该在受控环境中按顺序执行。使用临界区是合理的。如果在此期间需要处理一些重要的中断,则必须确保所使用的中断资源不会干扰 HSE 和 HSE 使用的闪存块。 Re: Question Regarding Critical Section Protection for OTP and NVM Access Services 你好, @lukaszadrapa 谢谢你的解释。 如果我理解正确的话,仅仅检查 HSE_CONFIG_GPR3 寄存器是不够的,仍然需要使用临界区进行保护。 我的理解是,即使发生中断,在访问闪存之前检查 HSE_CONFIG_GPR3 寄存器也应该能够防止应用程序内核和 HSE 内核同时访问同一个闪存块。 如果不使用临界区,除了应用程序核心和 HSE 核心之间同时访问闪存之外,还会出现其他潜在问题吗? Re: Question Regarding Critical Section Protection for OTP and NVM Access Services 反过来,如果应用程序核心在 HSE 已经执行编程/擦除操作的同时执行编程/擦除操作,这是否也是一个问题? - 是的,这是一个问题,因为不能同时运行更多闪存操作。 如果是这样,是否可以通过在应用程序内核开始编程/擦除操作之前,不仅检查 HSE_CONFIG_GPR3 寄存器的第 21:16 位,而且检查第 29:24 位来防止这种情况发生? - 是的。这有助于解决 HSE 已经对闪存进行编程,而应用程序核心也想启动另一个闪存操作的情况。 如果这种方法不足以防止此类冲突,那么使用临界区是否是保护这些服务请求的推荐解决方案? - 当 HSE 执行上述 NVM 操作(目录格式、密钥导入等)时,应用程序不应启动其他闪存操作,也不应访问 HSE 正在编程的闪存块。如果中断处理程序执行了类似的操作,那么临界区可以防止这种冲突。 此外,表格没有明确描述应用程序核心正在执行代码闪存块中的代码,而 HSE 正在对同一个代码闪存块执行编程/擦除操作的情况。 在没有任何同步的情况下,这种方案是否安全?还是也需要某种形式的保护? - 代码闪存仅在 HSE/SBAF 安装/更新/恢复/擦除 HSE 固件时由 HSE 进行编程。这是通过自动复位实现的,也是由软件触发的。 HSE 固件位于代码闪存的末尾(在 FULL_MEM 版本中)或主动和被动块的末尾(AB_SWAP 版本中)。预计应用程序将从较低的闪存块开始,并且会等待初始化完成,以及 HSE 完成初始化(以及可能的闪存操作)。所以,这种情况没有风险。如果应用程序触发 HSE 固件更新,则用户有责任确保在此操作期间不会访问相应的闪存块。 如果需要针对这种情况采取保护措施,建议采用哪种实施方法? - 如上所述 - RESET后,在初始化完成之前,请勿访问包含 HSE 固件的闪存块。当您的软件启动 HSE 固件更新时,请勿访问闪存块。 Re: Question Regarding Critical Section Protection for OTP and NVM Access Services 我们现在要回到我之前提到的 HSE 固件参考手册中的表 149、150 和 151。有必要评估程序流程,将其与表格中描述的情况进行比较,并决定是否需要采取应对措施。否则,HSE可能会干扰应用程序核心,反之亦然。 此致, Lukas Re: Question Regarding Critical Section Protection for OTP and NVM Access Services 你好, @lukaszadrapa 感谢您的回复。 根据 HSE 固件参考手册中的表 149、150 和 151(其中描述了并发闪存编程/擦除操作的同步要求),规定如下: 无需遵循任何同步步骤。预计 M7_0/1 内核在对数据闪存进行编程时,不会向 HSE 发出任何涉及编程/擦除操作的命令。 反过来,如果应用程序核心在 HSE 已经执行编程/擦除操作的同时执行编程/擦除操作,这是否也是一个问题? 如果是这样,是否可以通过在应用程序内核开始编程/擦除操作之前,不仅检查 HSE_CONFIG_GPR3 寄存器的第 21:16 位,而且检查第 29:24 位来防止这种情况发生? 如果这种方法不足以防止此类冲突,那么使用临界区是否是保护这些服务请求的推荐解决方案? 此外,表格没有明确描述应用程序核心正在执行代码闪存块中的代码,而 HSE 正在对同一个代码闪存块执行编程/擦除操作的情况。 在没有任何同步的情况下,这种方案是否安全?还是也需要某种形式的保护? 如果需要针对这种情况采取保护措施,建议采用哪种实施方法? Re: Question Regarding Critical Section Protection for OTP and NVM Access Services 嗨, @lukaszadrapa 谢谢你的解释。您的回答非常有帮助。
查看全文
imx-optee-osをソースコードからビルドして、それをuboot FITイメージに統合するにはどうすればよいですか? 私はi.MX8MP SoCを使用しています。私はhttps://github.com/nxp-imx/imx-optee-os.gitから imx-optee-os のソースコードをクローンし、lf-6.6.36_2.1.0 ブランチをチェックアウトしました。imx-optee-oをどのように構築して、それをflash.binにパッケージ化すればいいのでしょうか画像? i.MX 8M | i.MX 8M Mini | i.MX 8M Nano Re: How do I build imx-optee-os from source and integrate it into the uboot FIT image? こんにちは、 どのBSPバージョンを使っているのか正確にはわかりませんが、i.MX Linuxユーザーガイドのセクション4.5.13をぜひご覧くださいimx-mkimageを使ってimx-bootイメージを構築する方法と、i.MX 8M EVKセクション(i.MX8Mがファミリ)を探す Linuxのドキュメント: https://www.nxp.com/design/design-center/software/embedded-software/i-mx-software/embedded-linux-for-i-mx-applications-processors:IMXLINUX i.MX Linuxユーザーガイド: https://www.nxp.com/docs/en/user-guide/UG10163.pdf よろしくお願いいたします。 アルド。
查看全文