Multi Source Translation Content

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

Multi Source Translation Content

讨论

排序依据:
TJA1055/3 FT canbus 为了将带有 twai 的 ESP32-P4 连接到容错 canbus 系统,我已经苦恼了一段时间。TJA1055/3 已安装在试验板上并连接起来,我可以测量芯片的 Rx 输出,该输出本应发送到 ESPGPIO,但是看来这个电压输出在 HI 上达到大约 3.2V,LO的电压输出仅达到大约 1.8V,ESP32 GPIO 的 LO 需要看到 0.8V,因此无法解码这些脉冲和读取接收到的数据。我试过在 TJA1055 的 Rx 输出上使用不同大小的上拉电阻,但效果甚微。我还试过改变针脚 8 和针脚 9 与 CAN H 和 CAN L 信号之间的终端电阻,也有一些效果,但还不够。有谁能告诉我如何从芯片中获取可用信号,或者我是否需要在 TJA1055 和 ESP GPIO 之间添加额外的信号调节器? Re: TJA1055/3 FT canbus 你好,唐纳德-皮特 日安 如下图所示,您可以通过减少 Iol 来降低 Vol 值。 您在 Iol 有什么职位? 如果需要保持相同的电流且无法降低电流,我建议添加一个 MOSFET 晶体管作为缓冲器,选择最适合您需求的晶体管。 希望这些信息对您有所帮助,如果您还需要其他帮助,请告诉我。 祝你愉快,好运连连。 Re: TJA1055/3 FT canbus 感谢您的宝贵意见,我将在未来几天内尝试这样做,并向您汇报。我们已经决定使用施密特触发器来调整输出以使其适应需求,但是如果我可以在不添加其他元器件的情况下获得 ESP32 GPIO 的正确输出,那么我会张开双臂拥抱它。我不是电子工程师,而是自动化专家,所以虽然我了解这些事情,但我通常不明白为什么,而且如果文件没有 "一勺烩",我就会迷失方向。 Re: TJA1055/3 FT canbus 你好,拉法 我对您的建议的理解是否正确? 谢谢! 唐纳德-P Re: TJA1055/3 FT canbus 你好,唐纳德-皮特 日安 是的,您的电路图似乎是正确的。试试看,然后告诉我你的结果。 另外需要注意的是:你在 RTH 和 RTL 上的电阻值有点高,但如果这样就能工作,那就继续吧。如果总线上有任何损耗,请尝试降低电阻。 希望这些信息对您有所帮助,如果您还需要其他帮助,请告诉我。 祝你愉快,好运连连。 Re: TJA1055/3 FT canbus 你好,拉法 所以我又对它进行了基准测试,并背靠背使用了两个 TJA1055/3 芯片,效果非常好,当我回到车辆上时,这个电路中内置的收发器关闭了 Can L 并杀死了所有导致总线故障的脉冲,这促使我再次检查了你对终止电阻器主题和规格表的回应,在那里我发现推荐的尺寸介于 500 到 16K 欧姆之间,但你建议使用 100 欧姆 m 可能太大了,相信那是手指错误,因为规格表中显示的更大的电阻器对我来说是合理的对外部 canbus 段的影响较小。我今天将进行试验,看看结果如何,但希望您能就此发表意见,以防其他地方的其他人也像我一样在考虑这种对话和战斗。 此致问候 唐纳德-P
查看全文
SE051 OpenSSL 3.0 プロバイダを Node.js で使用する / URI と参照 PEM の受け渡し (チケットのフォローアップ) NXPサポートチームの皆様、こんにちは。 以前のスレッドで提起された同様の問題についてフォローアップしています。https ://community.nxp.com/t5/Secure-Authentication/OpenSSL-doesn-t-handle-refpem-key-correctly-nxp-scheme-is/mp/1866179 そのチケットで、 @Kan_Li は@tksecに .refpem について説明しました。このキーフォーマットは、主に従来のOpenSSLエンジンで使用されます。しかし、OpenSSL 3.0プロバイダーとNode.jsの統合に関する疑問は未解決のままだった。 当社は、#SE051セキュアエレメントを使用したiWaveボード上で開発を行っています。私たちは、Node.jsアプリケーションと最新のOpenSSLプロバイダーを使用して、mTLS(クライアント認証)接続を確立しようとしています。 私たちの環境: セキュアエレメント: SE051バリアントC ミドルウェア/SDK: Plug & Trust MW v4.7.1 ハードウェアプロトコル:バージョン7(SCP03有効) Node.js バージョン: v16.11.1 OpenSSL バージョン: 3.0.x OpenSSL 3.0ではエンジンが非推奨になったため、最新のse05x OpenSSLプロバイダ(libsssProvider.so)を使用する必要があります。従来のe_sssエンジンの代わりに。 根本的な問題:前のスレッドで@tksec が指摘したように、Node.js アプリケーションは PEM_read_bio_PrivateKey のような関数を使用しますが、これらの関数は厳密に標準の PEM 形式の文字列/バッファを期待しています。 最新の OpenSSL 3.0 sssProvider では、キーをダイレクト プロバイダー URI (例: "nxp:0x7D000002" または "nxp:/path/to/tls_client_key_ref.pem") として渡す必要があります。 このURIをNode.jsのhttps.Agentに渡そうとすると、TLSハンドシェイクが始まる前にアプリケーションがクラッシュします。 JavaScript   const https = require('https'); const agent = new https.Agent({ cert: fs.readFileSync('device_cert.pem'), key: "nxp:0x7D000002", // Fails: Node.js expects a raw PEM buffer here rejectUnauthorized: true }); // Error: ERR_OSSL_PEM_NO_START_LINE Node.jsは、キーパラメータをOpenSSLに渡す前に検証します。「nxp:」には -----BEGIN PRIVATE KEY----- ヘッダーがないため、すぐに処理が中断されます。 私たちの質問: Node.jsをアップデート(例えば、OpenSSL 3.0をネイティブに統合したv18/v20にアップデート)すれば、このURI解析の問題は自動的に解決されるのでしょうか?それとも、NodeのTLSレイヤーは依然としてプロバイダURIを拒否するのでしょうか? この問題を解決するには、NXPプロバイダーの設定を変更する必要がありますか?プロバイダーコードを改善して、従来の.refpemファイルを解析できるようにするための計画や既存の解決策はありますか?ファイルを直接ダウンロードしますか?Node.jsのような高水準言語がダミーのPEMバッファを渡すことを許可すれば、URIクラッシュの問題を完全に回避できるだろう。 お時間とご指導をいただき、ありがとうございました。 オートモーティブ スマートカード スマート・カード Re: Using SE051 OpenSSL 3.0 Provider with Node.js / Passing URIs vs Reference PEMs (Follow-up to Tic v20のリリースノート/変更履歴を見る限り、node.jsはまだOpenSSL 3.0プロバイダーをサポートしていないようです。彼らは現在、ドキュメントでエンジンコンセプトに依存していることを明確にしています( https://github.com/nodejs/node/pull/53329/changes )。 当時、私は最終的にnode.jsにキーIDをサポートするパッチを適用することになりました。主にOSSL_STORE API( https://docs.openssl.org/3.0/man7/ossl_store/ )を使用することで実現します。https://github.com/nodejs/node/blob/3b19867caaef6b85c65e44dc60274dce2b240d22/src/crypto/crypto_context.cc#L1699の PEM 関数の代わりに。これにより、あらゆる種類のキーを読み込むことが可能になった。 もちろん、データ型などを一致させるために、呼び出し元や設定構造体にもいくつかの変更が必要でした。
查看全文
使用 SE052F 的 RNG OpenSSL 提供程序 我们需要使用 SE052F 作为符合 FIPS 标准的随机数生成源。我们要求 OpenSSL 使用 SE052F,进而要求所有使用 openssl 库的应用程序使用 SE052F 作为 RNG。 我知道我们必须使用 NXP MW accessManager 和 OpenSSL Provider。 我正在使用SE-PLUG-TRUST-MW_04.07.01 我已按照以下说明进行操作: AN14028.pdf SE-PLUG-TRUST-MW_04.07.01/simw-top/doc/hostlib/hostLib/accessManager/doc/accessManager.html and the README info here (but not using this 仓库): https://github.com/NXPPlugNTrust/se05x-openssl-provider AccessManager 使用以下 cmake 选项构建: NXP_SE_MW_CONF_OPTS += -DWithSharedLIB=OFF -DPTMW_Host=Raspbian -DPTMW_SMCOM=T1oI2C -DPTMW_Applet=SE05X_C \ -DPTMW_FIPS=None -DPTMW_SE05X_Ver=07_02 -DPTMW_SE05X_Auth=PlatfSCP03 -DPTMW_SCP=SCP03_SSS -DSE05X_EN_PIN=582 -DSE_RESET_LOGIC=0 \ -DPAHO_BUILD_SHARED=FALSE -DPAHO_BUILD_STATIC=TRUE 使用以下 cmake 选项构建的 OpenSSL 提供商: NXP_SE_MW2_CONF_OPTS += -DWithSharedLIB=ON -DPTMW_HostCrypto=OPENSSL -DPTMW_Host=Raspbian -DPTMW_SMCOM=JRCP_V1_AM -DPTMW_SE05X_Auth=None openssl.cnf 修改如下: [provider_sect] nxp_prov = nxp_sect default = default_sect [nxp_sect] identity = nxp_prov module = /usr/lib/libsssProvider.so activate = 1 [default_sect] activate = 1 访问管理器启动: Starting accessManager (Rev.1.1). Protect Link between accessManager and SE: YES. accessManager JRCPv1 (T1oI2C SE side) ****************************************************************************** Server: waiting for connections on port 8040. Server: only localhost based processes can connect. 从命令行使用 openssl 的 RNG 似乎运行正常: # openssl rand -hex 64 sssprov-dbg: Enter - OSSL_provider_init App :INFO :Using PortName='127.0.0.1:8040' (gszSocketPortDefault) App :INFO :If you want to over-ride the selection, use ENV=EX_SSS_BOOT_SSS_PORT or pass in command line arguments. New client connection from 127.0.0.1. Client ID: 5 Command 0x00 from client 5 DUMMY_ATR=0x01.A0.00.00.03.96.04.03.E8.00.FE.02.0B.03.E8.00.01.00.00.00.00.64.13.88.0A.00.65.53.45.30.35.31.00.00.00. Replacing *_ATR by default (pre-cooked) ATR. ATR=0x3B.FB.18.00.00.81.31.FE.45.50.4C.41.43.45.48.4F.4C.44.45.52.AB. Command 0x01 from client 5 SM_EstablishPlatformSCP03Am (Entry) App :WARN :Using SCP03 keys from:'/tmp/SE05X/plain_scp.txt' (FILE=/tmp/SE05X/plain_scp.txt) SE051 connected. SM_EstablishPlatformSCP03Am (Exit); Status = 0x9000 sss :INFO :Newer version of Applet Found sss :INFO :Compiled for 0x70200. Got newer 0x70216 sss :WARN :Communication channel is Plain. sss :WARN :!!!Not recommended for production use.!!! sssprov-dbg: Enter - sss_rand_newctx sssprov-dbg: Enter - sss_rand_instantiate sssprov-dbg: Enter - sss_rand_enable_locking sssprov-dbg: Enter - sss_rand_newctx sssprov-dbg: Enter - sss_rand_instantiate sssprov-dbg: Enter - sss_rand_get_ctx_params sssprov-dbg: Enter - sss_rand_generate sssprov-flw: Get random data from SE05x Command 0x01 from client 5 SM_SendAPDUAm: smStatus = 0x9000 5f0f4d63e4ec771b8cfd46dd50c497b7e4e56e203ad5bc6eca9f8c28d23f39aa2d4a807915e3c60cf2e6a833794cb1208554f3e635811354eadd7b2c911c60da sssprov-dbg: Enter - sss_rand_freectx sssprov-dbg: Enter - sss_rand_freectx sssprov-dbg: Enter - sss_teardown Received 0 byte from client 5 (Message Header Phase) . 但是,启动 ssh 守护进程失败了: # /usr/sbin/sshd & sssprov-dbg: Enter - OSSL_provider_init App :INFO :Using PortName='127.0.0.1:8040' (gszSocketPortDefault) App :INFO :If you want to over-ride the selection, use ENV=EX_SSS_BOOT_SSS_PORT or pass in command line arguments. New client connection from 127.0.0.1. Client ID: 5 Command 0x00 from client 5 ATR=0x3B.FB.18.00.00.81.31.FE.45.50.4C.41.43.45.48.4F.4C.44.45.52.AB. Command 0x01 from client 5 Pre-cooked response (rspAppletSelect) sss :INFO :Newer version of Applet Found sss :INFO :Compiled for 0x70200. Got newer 0x70216 sss :WARN :Communication channel is Plain. sss :WARN :!!!Not recommended for production use.!!! sssprov-dbg: Enter - sss_rand_newctx sssprov-dbg: Enter - sss_rand_instantiate sssprov-dbg: Enter - sss_rand_enable_locking sssprov-dbg: Enter - sss_rand_get_ctx_params PRNG is not seeded Received 0 byte from client 5 (Message Header Phase) . [2]+ Done(255) /usr/sbin/sshd 如有任何帮助,我将不胜感激、 Sam Re: OpenSSL Provider with SE052F for RNG 你好@sam123、 我们的提供商目前尚未测试 Openssh 支持。 这需要进一步分析,并可能需要修改。 已为 RnD 创建了内部票据,他们将进行分析。 如果我从那里得到更多信息,我会告诉你的。 感谢您的耐心等待! 祝您愉快, Kan ------------------------------------------------------------------------------- 注: - 如果本帖回答了您的问题,请点击"标记正确" 按钮。谢谢! - 我们会在最后一次发帖后的 7 周内跟踪主题,之后的回复将被忽略 如果您以后有相关问题,请另开新主题,并参考已关闭的主题。 -------------------------------------------------------------------------------
查看全文
S32K3使用技巧汇总_skill_experience Hi,  一些经验汇总如附件。包含主题如下: S32K3 Cortex-M7的DSP能力(Liek Li).docx S32K3 GCC版本与RTD版本的对应支持关系_Box Li 202312.docx S32K3 HSE_B资源汇总及获取流程(Liek Li).docx S32K3 MaxQFP的生产检测建议(Mike Cao).txt S32K3 NXP代理商关于S32K3的参考设计汇总(Seth Wang).docx S32K3 NXP关于S32K3的参考设计和资料汇总(Seth Wang).docx S32DS的版本管理及对应的RTD下载及安装_Box Li 202312.docx S32K3 JTAG加密及调试_JayceYang.pptx S32K3 LifeCycle的使用建议_JayceYang.docx S32K3 PN与HSE_B FW版本映射关系_JayceYang.pptx S32K3 sBAF与HSE_B FW的版本关系_JayceYang.pptx S32K3 TCM使用建议_(Box Li).docx S32K3 XRDC的使用场景及技巧(Liek Li) .docx S32K3+SBC的使用建议(Alvin Liu).pdf S32K3_LinkerFile_JayceYang.docx S32K3功能安全文档的获取及开发流程_WeoWang.docx S32K3在BMS应用的软硬件资源汇总_WeoWang.docx S32K3基于外设的培训资料汇总及样例(Seth Wang).docx S32K3的ETH应用(Liek Li).docx S32K3的Hardfault问题分析步骤(Alvin Liu).pdf S32K3的HSE_B FW安装 (Alvin Liu).pdf S32K3的RTD软件架构及使用建议(Seth Wang).docx S32K3的SAF(SPD)获取及集成建议(Ives CHENG).pdf S32K3的sBAF更新办法(Alvin Liu).pdf S32K3的SCST获取使用建议(Ives CHENG).pdf S32K3的“EB+命令行开发”环境搭建及实验(Alvin Liu).pdf S32K3的中断机制_Box Li 202312.docx S32K3的使用技巧_AHB总线上QSPI的使用建议_(Oliver TIAN).txt S32K3的使用技巧_ISELED应用上的PN选取及开发建议_(Oliver TIAN).txt S32K3的使用技巧_S32DS工程和iAR工程的相互迁移_(Jacky TAN).txt S32K3的使用技巧_S32K3 OTA的实现_(Jacky TAN).txt S32K3的使用技巧_S32K3的bootloader_(Jacky TAN).txt S32K3的使用技巧_S32K3的FEE ECC处理机制_(Jacky TAN).txt S32K3的使用技巧_S32K3的低功耗管理及唤醒样例汇总_(Jacky TAN).txt S32K3的使用技巧_S32K3的启动性能分析_(Jacky TAN).txt S32K3的功能安全开发流程及资料_Box Li 202312.docx S32K3的启动过程讲解_Box Li 202312.docx S32K3的多核调试建议及示例_(Ives CHENG).docx S32K3的时钟配置建议(Seth Wang).docx S32K3的电机控制基础及资料_WeoWang.docx S32K3硬件设计检查建议_WeoWang.docx S32K3调试中ETM的使用展示(Ives CHENG).docx S32K3问题发生后的信息搜集(Charles Zhao).docx S32K3 Security名词解释(Charles Zhao).docx S32K3 阅读勘误手册注意事项(Charles Zhao).docx 希望能够有所帮助  Oliver Re: S32K3使用技巧汇总_skill_experience 太干了 感谢楼主 Re: S32K3使用技巧汇总_skill_experience 谢谢! 能否提供英文版? 回复: S32K3使用技巧汇总_skill_experience 下载了,感谢感谢 Re: S32K3使用技巧汇总_skill_experience 原文的最后有下载压缩包 Re: S32K3使用技巧汇总_skill_experience 有示例代码吗 Re: S32K3使用技巧汇总_skill_experience 在哪下载,你更新在哪啊 Re: S32K3使用技巧汇总_skill_experience 已更新下载包链接 回复: S32K3使用技巧汇总_skill_experience 已更新下载包链接 回复: S32K3使用技巧汇总_skill_experience 请问怎么能获取下载连接 Re: S32K3使用技巧汇总_skill_experience 怎么获取下载链接 Re: S32K3使用技巧汇总_skill_experience Hi Oliver,      怎么获取到下载连接? Re: S32K3使用技巧汇总_skill_experience 请欣赏这些纸张! 奥利弗
查看全文
T1040 板上的 PCI 内存分配(BAR 寄存器) 你好, 我的问题很简单,PCI 没有在 t10420 主板上分配内存。 以下是 “dmesg” 消息和 u-boot 消息。 PCI:探测 PCI 硬件 fsl-pci ffe250000.pcie:PCI 主机桥接到总线 0001:00 pci_bus 0001:00:根总线资源 [io 0xf1050000-0xf105ffff](总线地址 [0x0000-0xffff])pci_bus 0001:00:根总线资源 [mem 0xc100000000-0xc1fffff](总线地址 [0xe0000000-0xefffff])pci_bus 0001:00:根总线资源 [mem 0xc1000000-0x1fffff](总线地址 [0xe0000000-0xefffff]) pci_bus 0001:00:根总线资源 [mem 0xcbus 0001:00:根总线资源 [bus 00-ff] pci_bus 0001:00:busn_res:[bus 00-ff] 结束已更新为 ff pci 0001:00:00.0: [1957:0820] type 01 class 0x060400 pci 0001:00:00.0:reg 0x10: [mem 0xff000000-0xffffffffff] pci 0001:00:00.0:支持 D1 D2 pci 0001:00:00.0:从 D0 D1 D2 D3hot D3cold 支持 PME# fsl-pci ffe250000.pcie:从 iommu 组 19 移除 pci 0001:00:00.0:添加到 iommu 组 21 pci 0001:01:00.0:[1002:6987] type 00 class 0x030000 pci 0001:01:00.0:reg 0x10: [mem 0xc10000000-0xc1fffffff 64bit pref] pci 0001:01:00.0:reg 0x18: [mem 0x1000ffe00000-0x1000ffffffff 64bit pref] pci 0001:01:00.0:reg 0x20: [io 0xf1051100-0xf10511ff] pci 0001:01:00.0:reg 0x24: [mem 0xfffc0000-0xffffffffff] pci 0001:01:00.0:reg 0x30: [mem 0xfffe0000-0xffffffff pref] pci 0001:01:00.0:启用扩展标记 pci 0001:01:00.0:支持 D1 D2 pci 0001:01:00.0:D1 D2 D3hot D3cold pci 0001:01:00.0 支持 PME#:可用 PCIe 带宽为 4.000 Gb/s,在 0001:00:00.0 时受 5.0 GT/s PCIe x1 链接限制(使用 8.0 GT/s PCIe x8 链接可达到 63.008 Gb/s) pci 0001:01:00.0:添加到 iommu 组 21 pci 0001:01:00.1:[1002:aae0] type 00 class 0x040300 pci 0001:01:00.1:reg 0x10: [mem 0x1200ffffc000-0x1200ffffff 64bit] pci 0001:01:00.1:启用扩展标记 pci 0001:01:00.1:支持 D1 D2 pci 0001:01:00.1:添加到 iommu 组 21 pci 0001:00:00.0:PCI 桥接到 [总线 01-ff] pci 0001:00:00.0:bridge window [io 0xf1051000-0xf1051fff] pci 0001:00:00.0:桥接窗口 [mem 0xc100000000-0xc1fffff] pci_bus 0001:01:busn_res:[总线 01-ff] 末端更新为 01 p ci_bus 0001:00:busn_res:[总线 00-ff] 端已更新为 01 PCI:无法分配设备 0001:00:0 的资源区域 0,将重新映射 PCI:无法分配设备 0001:00:0 的资源区域 2 01:00.0,将重新映射 PCI:无法分配设备 0001:01:00.0 的资源区域 5,将重新映射 PCI:无法分配设备 0001:01:00.0 的资源区域 6,将重新映射 PCI:无法分配设备 0001:01:00.1 的资源区域 0,将重新映射 pci 0001:00:00.0:BAR 0: no space for [mem size 0x01000000] pci 0001:00:00.0:BAR 0:分配失败 [内存大小 0x01000000] pci 0001:00:00.0:BAR 9:无空间 [内存大小 0x00200000 64 位前缀] pci 0001:00:00.0:BAR 9:分配失败 [内存大小 0x00200000 64 位前缀] pci 0001:01:00.0:BAR 2: no space for [mem size 0x00200000 64bit pref] pci 0001:01:00.0:BAR 2:分配失败 [内存大小 0x00200000 64 位前缀] pci 0001:01:00.0:BAR 5: no space for [mem size 0x00040000] pci 0001:01:00.0:BAR 5:分配失败 [内存大小 0x00040000] pci 0001:01:00.0:BAR 6: no space for [mem size 0x00020000 pref] pci 0001:01:00.0:BAR 6:分配失败 [内存大小 0x00020000 pref] pci 0001:01:00.1:BAR 0: no space for [mem size 0x00004000 64bit] pci 0001:01:00.1:BAR 0:分配失败 [内存大小 0x00004000 64 位] pci 0001:00:00.0:PCI 桥接到 [总线 01] pci 0001:00:00.0:bridge window [io 0xf1050000-0xf105ffff] pci 0001:00:00.0:桥接窗口 [mem 0xc1000000-0xc1fffff] pci_bus 0001:00:部分 PCI 设备资源未分配,尝试使用 pci=realloc pci_bus 0001:00 启动:资源 4 [io 0xf105000000-0xf105ffff] pci_bus 0001:00:资源 5 [mem 0xc100000000-0xc1fffff] pci_bus 0001:00:资源 5 [mem 0xc100000000-0xc1fffff] pci_b us 0001:00:资源 5 [mem 0xc100000000-0xc1fffff] pci_bus fff] pci_bus 0001:01:资源 0 [io 0xf1050000-0xf105fff] pci_bus 0001:01:资源 1 [mem 0xc1000000-0xc1fffff] HugeTLB 注册了 4.00 MiB 页面大小,预先分配 0 页 HugeTLB 注册了 64.0 MiB 页面大小大小,预计 已分配 0 页 HugeTLB 注册了 256 MiB 页面大小,预先分配 0 页 HugeTLB 注册了 1.00 GiB 页面大小,预先分配 0 页 飞思卡尔 Elo 系列 DMA 驱动程序以下是内核 dts pci1:pcie@ffe250000 { reg =<0xf 0xfe250000 0 0x10000>; ranges =<0x02000000 0 0xe0000000 0xc 0x10000000 0 0x10000000 0x01000000 0 0xf 0xf8010000 0 0x00010000>; pcie@0 { ranges =<0x02000000 0 0xe0000000 0x02000000 0 0xe0000000 0 0x10000000 0x01000000 0 0x00000000 0x01000000 0 0x00000000 0 0x00010000>; }; }; Re: PCI memory allocation (BAR Registers) on T1040 Board GPU 的 BAR 2 请求 0x1000ffe00000 - 这是一个 64 位可预取 BAR ,试图使用 ~163 Terabytes 的地址 。这完全超出了 32 位 PCI 窗口。 T1040 是 32 位 PowerPC e5500 内核 ,通过 MMU 拥有 36 位物理地址空间 。 0x1000ffe00000 而 T1040 硬件不可能提供 48 位地址空间。 您的地址 0x1000ffe00000 在 40 多位的范围内,完全超出了 T1040 的寻址空间。 Re: PCI memory allocation (BAR Registers) on T1040 Board 是的,它是 E9171 AMDGPU Re: PCI memory allocation (BAR Registers) on T1040 Board @Ganesh3955 你连接到 T1040 的端点设备是什么?这是 GPU 吗? Re: PCI memory allocation (BAR Registers) on T1040 Board 你好 谢谢你的回复 没什么变化 PCI 主机桥 /pcie @ffe250000 范围: MEM 0x0000000c100000000... 0x0000000c2fffff-> 0x00000000e000000e0000000 IO 0x00000000... 0x0000000ff105fff-> 0x00000000000000 /pcie @ffe250000:PCICSRBAR @ 0xdf000000 setup_pcie ci_atmu:动态随机存取存储器(DRAM) 80000000 平台的终结 ff6000000 .qman-portal: 添加到 iommu 组 0 platform ff6004000.qman-portal:添加到 iommu 组 1 platform ff6008000.qman-portal:添加到 iommu 组 2 平台 ff600c000.qman-portal:添加到 iommu 组 3 platform ff6010000.qman-portal:添加到 iommu 组 4 platform ff6014000.qman-portal:添加到 iommu 组 5 platform ff6018000.qman-portal:添加到 iommu 组 6 平台 ff601c000.qman-portal:添加到 iommu 组 7 platform ff6020000.qman-portal:添加到 iommu 组 8 平台 ff6024000.qman-portal:添加到 iommu 组 9 平台 ffe100300.dma:添加到 iommu 组 10 平台 ffe101300.dma:添加到 iommu 组 11 平台 ffe114000.sdhc:添加到 iommu 组 12 平台 ffe210000.usb:添加到 iommu 组 13 平台 ffe211000.usb:添加到 iommu 组 14 平台 ffe220000.sata:添加到 iommu 组 15 平台 ffe221000.sata:添加到 iommu 组 16 platform ffe318000.qman:添加到 iommu 组 17 平台 ffe31a000.bman:添加到 iommu 组 18 fsl-pci ffe250000.pcie:添加到 iommu 组 19 平台 ffe140000.qe:添加到 iommu 组 20 software IO TLB: tearing down default memory pool PCI: Probing PCI hardware fsl-pci ffe250000.pcie:PCI 主机桥接到总线 0001:00 pci_bus 0001:00:根总线资源 [io 0xf1050000-0xf105ffff](总线地址 [0x0000-0xffff])pci_bus 0001:00:根总线资源 [mem 0xc100000000-0xc2ffffff](总线地址 [0xe0000000-0xffffff])pci_bus 0001:00:根总线资源 [mem 0xc1000000-0xc2ffffff](总线地址 [0xe0000000-0xffffff]) pci_bus 0001:00:根总线资源 [mem bus 0001:00:根总线资源 [bus 00-ff] pci_bus 0001:00:busn_res:[bus 00-ff] 结束已更新为 ff pci 0001:00:00.0: [1957:0820] type 01 class 0x060400 pci 0001:00:00.0:reg 0x10: [mem 0xdf000000-0xdfffffff] pci 0001:00:00.0:支持 D1 D2 pci 0001:00:00.0:从 D0 D1 D2 D3hot D3cold 支持 PME# fsl-pci ffe250000.pcie:从 iommu 组 19 移除 pci 0001:00:00.0:添加到 iommu 组 21 pci 0001:01:00.0:[1002:6987] type 00 class 0x030000 pci 0001:01:00.0:reg 0x10: [mem 0xc10000000-0xc1fffffff 64bit pref] pci 0001:01:00.0:reg 0x18: [mem 0x1000ffe00000-0x1000ffffffff 64bit pref] pci 0001:01:00.0:reg 0x20: [io 0xf1051100-0xf10511ff] pci 0001:01:00.0:reg 0x24: [mem 0xc2ffc0000-0xc2fffffff] pci 0001:01:00.0:reg 0x30: [mem 0xc2ffe0000-0xc2fffffff pref] pci 0001:01:00.0:启用扩展标记 pci 0001:01:00.0:支持 D1 D2 pci 0001:01:00.0:D1 D2 D3hot D3cold pci 0001:01:00.0 支持 PME#:可用 PCIe 带宽为 4.000 Gb/s,在 0001:00:00.0 时受 5.0 GT/s PCIe x1 链接限制(使用 8.0 GT/s PCIe x8 链接可达到 63.008 Gb/s) pci 0001:01:00.0:添加到 iommu 组 21 pci 0001:01:00.1:[1002:aae0] type 00 class 0x040300 pci 0001:01:00.1:reg 0x10: [mem 0x1200ffffc000-0x1200ffffff 64bit] pci 0001:01:00.1:启用扩展标记 pci 0001:01:00.1:支持 D1 D2 pci 0001:01:00.1:添加到 iommu 组 21 pci 0001:00:00.0:PCI 桥接到 [总线 01-ff] pci 0001:00:00.0:bridge window [io 0xf1051000-0xf1051fff] pci 0001:00:00.0:桥接窗口 [mem 0xc100000000-0xc1fffff] pci_bus 0001:01:busn _res:[总线 01-ff] 末端更新为 01 pci_bus 0001:00:busn_res:[总线 00-ff] 端已更新为 01 PCI:无法分配设备 0001:00:0 的资源区域 0,将重新映射 PCI:无法分配设备 0001:00:0 的资源区域 2 01:00.0,将重新映射 PCI:无法分配设备 0001:01:00.0 的资源区域 6,将重新映射 PCI:无法分配设备 0001:01:00.1 的资源区域 0,将重新映射 pc i 0001:00:00.0: BAR 0: no space for [mem size 0x01000000] pci 0001:00:00.0:BAR 0:分配失败 [内存大小 0x01000000] pci 0001:00:00.0:BAR 9:无空间 [内存大小 0x00200000 64 位前缀] pci 0001:00:00.0:BAR 9:分配失败 [内存大小 0x00200000 64 位前缀] pci 0001:01:00.0:BAR 2: 已分配 [mem 0xc20000000-0xc201fffff 64bit pref] pci 0001:01:00.0:BAR 6: 已分配 [mem 0xc20200000-0xc2021ffff pref] pci 0001:01:00.1:BAR 0: 已分配 [mem 0xc20220000-0xc20223fff 64bit] pci 0001:00:00.0:PCI 桥接到 [总线 01] pci 0001:00:00.0:bridge window [io 0xf1050000-0xf105ffff] pci 0001:00:00.0:桥接窗口 [mem 0xc100000000-0xc2fffff] pci_bus 0001:00:部分 PCI 设备资源未分配,尝试使用 pci=realloc pci_bus 0001:00 启动:资源 4 [io 0xf105000000-0xf105ffff] pci_bus 0001:00:资源 5 [mem 0xc100000000-0xc2fffff] pci_b us 0001:00:资源 5 [mem 0xc100000000-0xc2fffff fff] pci_bus 0001:01:资源 0 [io 0xf1050000-0xf105fff] pci_bus 0001:01:资源 1 [mem 0xc1000000-0xc2fffff] HugeTLB 注册了 4.00 MiB 页面大小,预先分配 0 页 HugeTLB 注册了 64.0 MiB 页面大小大小,预计 已分配 0 页 HugeTLB 注册了 256 MiB 页面大小,预先分配 0 页 H ugeTLB 注册了 1.00 GiB 页面大小,预先分配 0 页飞思卡尔 Elo 系列 DMA 驱动程序 fsl-elo-dma ffe100300.dma: #0 (fsl,eloplus-dma-channel), irq 28 fsl-elo-dma ffe100300.dma:#1 (fsl,eloplus-dma-channel), irq 29 fsl-elo-dma ffe100300.dma:#2 (fsl,eloplus-dma-channel), irq 30 fsl-elo-dma ffe100300.dma:#3 (fsl,eloplus-dma-channel), irq 31 fsl-elo-dma ffe100300.dma:#4 (fsl,eloplus-dma-channel), irq 76 fsl-elo-dma ffe100300.dma:#5 (fsl,eloplus-dma-channel), irq 77 fsl-elo-dma ffe100300.dma:#6 (fsl,eloplus-dma-channel), irq 78 fsl-elo-dma ffe100300.dma:#7 (fsl,eloplus-dma-channel), irq 79 fsl-elo-dma ffe101300.dma:#0 (fsl,eloplus-dma-channel), irq 32 fsl-elo-dma ffe101300.dma:#1 (fsl,eloplus-dma-channel), irq 33 fsl-elo-dma ffe101300.dma:#2 (fsl,eloplus-dma-channel), irq 34 fsl-elo-dma ffe101300.dma:#3 (fsl,eloplus-dma-channel), irq 35 fsl-elo-dma ffe101300.dma:#4 (fsl,eloplus-dma-channel), irq 80 fsl-elo-dma ffe101300.dma:#5 (fsl,eloplus-dma-channel), irq 81 fsl-elo-dma ffe101300.dma:#6 (fsl,eloplus-dma-channel), irq 82 fsl-elo-dma ffe101300.dma:#7(fsl,eloplus-dma-channel),irq 83 iommu:默认功能域类型:已翻译 iommu:DMA 功能域 TLB 失效政策:严格模式 pci 0001:01:00.0:vgaarb:已添加 VGA 设备:decodes=io+mem,owns=无,locks=none pci 0001:01:00.0: vgaarb: 桥接控制可能 pci 0001:01:00.0:vgaarb:设置为引导设备(VGA 旧版资源不可用) Re: PCI memory allocation (BAR Registers) on T1040 Board @Ganesh3955,你能用这个 dts 更改试试吗?:- pci1:pcie@ffe250000 { reg =<0xf 0xfe250000 0 0x10000>; ranges =<0x02000000 0x0 0xe0000000 0xc 0x10000000 0x0 0x20000000 /* 512MB */ 0x01000000 0x0 0x000000 0xf 0xf1050000 0x0 0x00010000> ;/* 64KB I/O */ pcie@0 { ranges =<0x02000000 0x0 0xe0000000 0x02000000 0x0 0xe0000000 0x0 0x20000000 0x01000000 0x0 0x00000000 0x01000000 0x0 0x00000000 0x0 0x00010000>; }; }; Re: PCI memory allocation (BAR Registers) on T1040 Board 嗨 @gaurav_sharma 谢谢你的回复,这个 E9171 AMDGPU 能在 T2080 主板上运行吗? Re: PCI memory allocation (BAR Registers) on T1040 Board 你好@gaurav_sharma 我尝试了这些命令,但得到了相同的错误信息"无效 PCI ROM 头签名:预计为 0xaa55,结果为 0xadde" Re: PCI memory allocation (BAR Registers) on T1040 Board 你好@gaurav_sharma 谢谢你的回复, ,我在配置文件中做了一些改动,就能实现 64 位内核了。现在正在分配内部 BAR(包括 32 位和 64 位)。 但在加载 AMDGPU 驱动程序时,我收到了以下错误信息 root@t1042d4rdb:~# insmod /amdgpu.ko [drm] amdgpu 内核模式设置已启用。 [drm] 初始化内核模式设置(POLARIS12 0x1002:0x6987 0x1787:0x2389 0x80)。 amdgpu 0001:01:00.0:amdgpu:不支持可信内存区域 (TMZ) 功能 [drm] 寄存器 mmio 基础:0x80000000 [drm] 寄存器 mmio 大小:262144 [drm] 不支持 PCIE 原子操作 [drm] 添加 ip 区块编号 0 [drm] 添加 ip 区块编号 1 [drm] 添加 ip 区块编号 2 [drm] 添加编号为 3 的 ip [drm] 添加 ip 区块编号 4 [drm] 添加 ip 区块编号 5 [drm] 添加 ip 区块编号 6 [drm] 添加 ip 区块编号 7 [drm] 添加 ip 区块号 8 amdgpu 0001:01:00.0:无效的 PCI ROM 标头签名:期待 0xaa55,得到 0xadde amdgpu 0001:01:00.0:PCI ROM 标头签名无效:期待 0xaa55,得到 0xadde amdgpu 0001:01:00.0:amdgpu:找不到 BIOS ROM amd gpu 0001:01:00:0 00.0:amdgpu:GPU 初始化期间出现致命错误 amdgpu 0001:01:00.0:amdgpu:amdgpu: amdgpu:amdgpu:amdgpu:am 精加工设备。 尝试在 0x0000000000000000 amdgpu 处取消映射早期的螺栓映射:0001:01:00.0 的探测失败,错误 -22 更新后的设备树如下所示: pci1: pcie@ffe250000 { reg =<0xf 0xfe250000 0 0x10000> ; ranges =<0x02000000 0x0 0x80000000 0x0 0x80000000 0x0 0x20000000 /* 512MB nonref */ 0x43000000 0xc 0x10000000 0xc 0x10000000 0x0 0x40000000 /* 1GB 64 位前缀 ← 键更改 */ 0x01000000 0x0 0x00000000 0xf 0xf8010000 0x0 0x00010000> ; pcie@0 { }; }; uBoot 变更: #if! 已定义 (CONFIG_DM_PCI) #define CONFIG_FSL_PCI_INIT /* 使用常用的 FSL 初始化代码 */ #define CONFIG_SYS_PCIE1_MEM_BUS 0xe0000000 #define CONFIG_SYS_PCIE1_MEM_SIZE 0x00000000 CONFIG_SYS_PCIE1_BUS 0x00000000 #define CONFIG_SYS_PCIE1_BUS 0x00000000 CONFIG_SYS_PCIE1_BUS 0x00000000 CONFIG_SYS_PCIE1_IO_BUS PCIE1_IO_SIZE 0x00010000 /* 64k */ #define CONFIG_SYS_PCIE2_MEM_BUS 0xe0000000 #define CONFIG_SYS_PCIE2_MEM_ SIZE 0x100000000 /* 256M */ #define #define CONFIG_SYS_PCIE2_IO_BUS 0x00000000 #define CONFIG_SYS_PCIE2_IO_SIZE 0x00010000 /* 64k */ #define CONFIG_SYS_PCIE3_MEM_BUS #define CONFIG_SYS_PCIE3_IO_BUS CONFIG_SYS_PCIE3_IO_BUS CONFIG_SYS_PCIE3_IO_BUS CONFIG_SYS_PCIE3_IO_BUS 0x00000000 #define CONFIG_SYS_PCIE3_IO_SIZE 0x00010000 /* 64k */ #define CONFIG_SYS_PCIE4_MEM_ BUS 0xe0000000 #define #define CONFIG_SYS_PCIE4_MEM_SIZE 0x100000000 /* 256M */ #define CONFIG_SYS_PCIE4_IO_BUS 0x00000000 #define CONFIG_SYS_PCIE4_IO_SIZE 0x00010000 /* 64k */ #define CONFIG_PCI_INDIRECT_BRIDIGE #endif #define CONFIG_PCI_SCAN_SHOW /* 启动时显示 pci 设备 */ #endif /* CONFIG_PCI */ 对于你的问题,以下是答 案: 1。设备树和 uBoot 中的更改如上所述。 2.附上 pci=realloc 的日志 3.内存大小 = 2GB Re: PCI memory allocation (BAR Registers) on T1040 Board @Ganesh3955我想纠正一下之前的说法:- "你的地址 0x1000ffe00000 在 40 多位的范围内,完全超出了 T1040 的寻址空间。" -- 事实并非如此。SOC 的设计适用于高达 64GB 寻址内存空间的大型物理地址空间。假设运行的是 64 位内核 GPU请求的不是地址,只是大小/类型。Linux/ 固件通过对 BAR 编程来分配地址,而你看到的值(如 0x1000ffe00000 )只是当前编程的基数--通常是固件设置错误或 DT 解析错误,直到 Linux 重新分配。 我正在检查为什么会出现这种情况。同时, 1. 你能告诉我除了 dts 之外你在固件/uboot/linux 中是否还有其他与 pcie 相关的更改吗? 2. 你能不能用 pci=realloc 启动一次然后分享日志。 3. 你的主板上的 RAM 大小是多少? Re: PCI memory allocation (BAR Registers) on T1040 Board 当您执行 setpci -s 0001:01:00.0 30.l 时,rom bar 地址编程是否会粘连?执行上述操作后,当您执行以下操作时, :- 。 lspci -vv -s 0001:01:00.0 | grep -i"Expansion ROM" 你看到了什么? 另外,在连续读取多个 devmem 之后:- devmem 0x80040000 16 devmem 0x80040000 16 执行:- lspci -vv -s 0001:00:00.0 | egrep -i"Secondary status|UESta|CESta|AER" dmesg | tail -200 | egrep -i"pcie|aer|abort|error" 你在 dmesg 中观察到任何错误日志吗? Re: PCI memory allocation (BAR Registers) on T1040 Board 你好@gaurav_sharma ,请查看以下结果, root@t1042d4rdb:~# setpci -s 0001:01:00.0COMMAND=0007 root@t1042d4rdb:~# setpci -s 0001:01:00.0 30.l=80040001 root@t1042d4rdb:~# devmem 0x80040000 16 0xDEAD root@t1042d4rdb:~# setpci -s 0001:01:00.0 30.l 80040001 root@t1042d4rdb:~# devmem 0x80040000 16 0xDEAD root@t1042d4rdb:~# devmem 0x80040000 16 0xDEAD root@t1042d4rdb:~# devmem 0x80040000 16 0xDEAD root@t1042d4rdb:~# devmem 0x80040000 16 0xDEAD root@t1042d4rdb:~# devmem 0x80040000 16 0xDEAD root@t1042d4rdb:~# devmem 0x80040000 16 0xDEAD root@t1042d4rdb:~# devmem 0x80040000 16 0xDEAD root@t1042d4rdb:~# devmem 0x80040000 16 0xDEAD root@t1042d4rdb:~# devmem 0x80040000 16 0xDEAD root@t1042d4rdb:~# devmem 0x80040000 16 0xDEAD root@t1042d4rdb:~# devmem 0x80040000 16 0xDEAD root@t1042d4rdb:~# devmem 0x80040000 16 0xDEAD root@t1042d4rdb:~# devmem 0x80040000 16 0xDEAD root@t1042d4rdb:~# setpci -s 0001:01:00.0 30.l 80040001 root@t1042d4rdb:~# lspci -vv -s 0001:01:00.0 | grep -i"Expansion ROM" Expansion ROM at 80040000 [size=128K] root@t1042d4rdb:~# devmem 0x80040000 16 0xDEAD root@t1042d4rdb:~# devmem 0x80040000 16 0xDEAD root@t1042d4rdb:~# devmem 0x80040000 16 0xDEAD root@t1042d4rdb:~# devmem 0x80040000 16 0xDEAD root@t1042d4rdb:~# devmem 0x80040000 16 0xDEAD root@t1042d4rdb:~# devmem 0x80040000 16 0xDEAD root@t1042d4rdb:~# devmem 0x80040000 16 0xDEAD root@t1042d4rdb:~# devmem 0x80040000 16 0xDEAD root@t1042d4rdb:~# devmem 0x80040000 16 0xDEAD root@t1042d4rdb:~# lspci -vv -s 0001:00:00.0 | egrep -i"Secondary status|UESta|CESta|AER" Secondary status:66MHz- FastB2B- ParErr- DEVSEL=fast>TAbort- UESta:DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq- ACSViol- CESta:RxErr- BadTLP- BadDLLP- Rollover- Timeout- AdvNonFatalErr- AERCap:第一个错误指针:00, ECRCGenCap+ ECRCGenEn- ECRCChkCap+ ECRCChkEn- root@t1042d4rdb:~# dmesg | tail -200 | egrep -i"pcie|aer|abort|error" [ 2.151844] EXT4-fs (mmcblk0p2): warning: mounting fs with errors, running e2fsck is recommended. Re: PCI memory allocation (BAR Registers) on T1040 Board 你好@gaurav_sharma 请查看以下日志 root@t1042d4rdb:~# lspci 0001:00:00.0PCI 桥接器:飞思卡尔半导体公司设备 0820(修订版 10)0001:01:00.0 兼容 VGA 的控制器:Advanced Micro Devices, Inc. [AMD/ATI] Lexa [Radeon 540X/550X/630/RX 640/E9171 MCM](修订版 80) 0001:01:00.1 音频设备:高级微设备公司 [AMD/ATI] Baffin HDMI/DP 音频 [Radeon RX 550 640SP/RX 560/560X] root @t1042d4rdb ~# root @t1042d4rdb:~# root @t1042d4rdb:~# lspci-vv-s 0001:01:00.0 0001:01:00.0兼容 VGA 的控制器:Advanced Micro Devices, Inc. [AMD/ATI] Lexa [Radeon 540X/550X/630/RX 640/E9171 MCM](修订版 80)(prog-if 00 [VGA 控制器]) 子系统:高科技信息系统有限公司设备 2389 控制:I/O+ Mem+ BusMaster+ SpecCycle-memwinv-vgasNoop-ParerR-步进 SERR-FastB2b-disintX-状态:Cap+ 66MHz-UDF-FastB2b-Parerr-devsel=Fast > tabort-< tabort- SERR-SERR- < PERR-INTX- 延迟:0,缓存行大小:32 字节 中断:引脚 A 路由到 IRQ 41 IOMMU 组:21 区域 0:c1000000 处的内存(64 位,可预取)[size=256M] 区域 2:c200000(64 位,可预取)的内存 [size=256] 区域 4:1100 的 I/O 端口 [size=256] 区域 5:内存在 80000000(32 位,不可预取)[size=256K] 扩展 ROM 为 80040000 [已禁用] [size=128K] 功能:[48] 供应商特定信息:Len=08 <? > 功能:[50] 电源管理单元 版本 3 标志:pmeClk-DSI-D1+ D2+ auxcurrent=0mA PME(D0-、D1+、D2+、d3Hot+、d3Hot+、d3Cold+) 状态:D0 nosoftRST+ PME-enable-dsel=0 pme- 功能:[58] Express (v2) 传统端点,MSI 00 DevCa p:maxPayload 256 字节,PhantFunc 0,延迟 l0s < 4us,L1 无限制 extTag+ attnBtn-attnn-attnnInd-pwrind-RBE+ flreset-devCtl:correrr-nonFatalerr-Fatalerr-Unsuperq-rlxDord+ extTag+ phantFunc-auxPWR-noSnoop+ maxPayload 128 字节,maxReadReq 512 字节 devSta:correrr+ nonfatalerr-Fatalerr-Unsupreq+ auxPWR-TransSpend-LnkCap:端口 #0,速度 8GT/s,宽度 x8,ASPM L1,退出延迟 L1 < 1us clockPM+ 惊喜-llactrep-bwnot-aspmoptComp + lnkCt l:ASPM 禁用;RKCtl:ASPM 已禁用;CB 64 字节,禁用-commCLK-extSynch-clockPM-autWiddis-bwint-AutbWint-lnkSta:速度 5GT/s(降级),宽度 x1(降级)trerr-Train-slotCLK+ dLActive-bwint-devCap2:完成超时:不支持, Timeoutdis-nroprp-LTR+ 10bittagComp-10bittagReq-OBFF 不支持,extFMT+ eetlpPrefix+、maxeetLPPrefix+ 1 不支持紧急 功率降低,紧急降电init-FRS-AtomicopsCap:32 位+ 64 位+ 128 bitcas-d evctl2:完成超时:50 us 到 50 毫秒,TimeoutDis-LTR-OBFF 已禁用,At omicopSCTL:reqen-lnkCap2:支持的链路速度:2.5-8GT/ s,Crosslink-重定时器-2重定时器-DRS-lnkCtl2:目标链路速度:8GT/s,EnterCompanial-SpeedDis-传输余量:正常工作范围, 进入修改后的合规性-合规性操作系统-合规性减重:-6dB Lnksta2:当前去加重级别:-6dB,均衡完成- 均衡阶段 1-均衡阶段 2-均衡阶段 3-LinkEqualizationRequest-重定时器-2 重定时器-Crosslinkres:不支持的功能:[a0] MSI:启用-计数 =1/1 可屏蔽-64 位 + 地址:0000000000000000 数据:0000 能力:[100 v1] 供应商特定信息:ID=0001 Rev=1 Len=010 功能:[150 v2] 高级错误报告 uestA:DLP-SDES-TLP-FCP-cmplto-cmplto-cmplt-unxcmplt-rxof-MalftLP-ECRC-Unsupreq-acsviol-uemsk:DLP-SDES-TLP-FCP-cmpltto-cmplt-unxcmplt-ECRC-Unsupreq-acsviol- uemsk:DLP-SDES-TLP-FCP-cmpltto-cmpltbrt-unxcmplLP-ECRC-Unsupreq-acsviol-uesVRT:DLP+ SD ES+ TLP-FCP+ cmplto-cmplto-cmplt-rxOf+ malftLP+ ECRC-Unsupreq-acsViol-cesta:rxerr-badtlp-baddlp-baddLPLP-Timeout-rxof+ malftLP+ ECRC-Unsupreq-acsViol-cesta:rxerr-badtlp-baddllp-rolver-Timeout-advnonFatalerr+ AerCap:第一个错误 指针:00,ecrcgencap+ ecrcGenenen-ecrcchken+ ecrcchken-multhDrrecca p-multhDrrecen-tlppfxPres-HdrlogCap-He aderLog:00000000 00000000 00000000 能力:[200 v1] 物理大小可调整的 BAR 0:当前大小:256MB 512MB 1GB 2GB 4GB 容量:[270 v1] 辅助 PCI Express lnkCtl3:lnkequintrrupten-PerformeQu-LaneerrStat:0 功能:[2b0 v1] 地址映射 服务 (ATS) atsCap:无效队列深度:00 atsCTL:启用-,最小转换单位:00 功能:[2c0 v1] 页面请求接口 (PRI) pr icTL:启用-RESET-p rista:RF-UPRGI-Stoped+ 页面请求容量:00000020,页面请求分配:00000000 功能:[2d0 v1] 进程地址空间 ID (PASID) p asidCap:Exec+ Priv+,最大 PASID宽度:10 pasidCtl:启用-执行-Priv-功能:[320 v1] 延迟容差报告最大监听延迟:0 ns 最大无窥探延迟:0 ns 功能:[328 v1] 替代 路由 ID 解释 (ARI) ariCap:MFVC-ACS-,下一个函 数:1 aricTL: MFVC-ACS-,功能组:0 能力:[370 v1] L1 PM Substates L1subcap:PCI-PM_L1.2+ PCI-PM_L1.1+ASPM_L1.2+ASPM_L1.1+L1_PM_Substates+ PortCommonModeRestoreTime=0us PortTPowerOnTime=170us L1SubCtl1:PCI-PM_L1.2-PCI-PM_L1.1-ASPM_L1.2-ASPM_L1.1- T_CommonMode=0us LTR1.2_Threshold=0ns L1SubCtl2:T_PwrOn=10us 内核模块:amdgpu root@t1042d4rdb:~# lspci -vv -s 0001:00:00.0 0001:00:00.0PCI 桥接器:飞思卡尔半导体公司设备 0820(修订版 10)(prog-if 00 [正常解码]) 设备树节点:/sys/固件/devicetree/base/pcie @ffe250000 /pcie @0 控制:I/O+ Mem+ BusMaster+ SpecCycle-memware-Vgasnoop-Parerr-Steping-Serr+ FastB2b-disintX-状态:Cap+ 66MHz-UDX-UDCLE-memware-VGasnoop-Parerr-Steping-Serr+ FastB2b-disintX-状态:Cap+ F-fastB2b-Parerr-devsel=Fast > taBort-< taBort- SERR-< PERR-intX- 延迟:0,缓存行大小:32 字节 中断:引脚?路由到 IRQ 21 IOMMU 组:21 区域 0:已忽略 (32 位,不可预取) 总线:primary=00,secondary=01,subordinate=01,sec-latency=0 I/O behind bridge: 00000000-0000ffff [size=64K] Memory behind bridge: 80000000-8fffffff [size=256M] Prefetchable memory behind bridge: 0000000c10000000-0000000c4fffffff [size=1G] Secondary status: 66MHz- FastB2B- ParErr- DEVSEL=fast >TAbort- BridgeCtl: Parity- SERR+ NoISA- VGA- VGA16- MAbort- >RESET- FastB2B- PriDiscTmr- SecDiscTmr- DiscTmrStat- DiscTmrSERREn- Capabilities: [44] 电源管理单元 version 3 Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=0mA PME(D0+,D1+,D2+,D3hot+,D3cold+) Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME- Capabilities: [4c] Express (v2) Root Port (Slot-), MSI 00 DevCap: MaxPayload 256 字节, PhantFunc 0 ExtTag- RBE+ DevCtl: CorrErr- NonFatalErr+ FatalErr+ UnsupReq+ RlxdOrd+ ExtTag- PhantFunc- AuxPwr- NoSnoop+ MaxPayload 128 字节, MaxReadReq 512 字节 DevSta: CorrErr- NonFatalErr- FatalErr- UnsupReq- AuxPwr- TransPend- LnkCap: Port #0, Speed 5GT/s, Width x4, ASPM L0s, Exit Latency L0s <2us ClockPM- Surprise- LLActRep- BwNot+ ASPMOptComp- LnkCtl: ASPM Disabled; RCB 128 字节, Disabled- CommClk- ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt- LnkSta: Speed 5GT/s (ok), Width x1 (downgraded) TrErr- Train- SlotClk- DLActive- BWMgmt- ABWMgmt+ RootCap: CRSVisible- RootCtl: ErrCorrectable- ErrNon-Fatal- ErrFatal- PMEIntEna+ CRSVisible- RootSta: PME ReqID 0000, PMEStatus- PMEPending- DevCap2: Completion Timeout: Range ABC, TimeoutDis+ NROPrPrP- LTR- 10BitTagComp- 10BitTagReq- OBFF Not Supported, ExtFmt- EETLPPrefix- EmergencyPowerReduction Not Supported, EmergencyPowerReductionInit- FRS- LN System CLS Not Supported, TPHComp- ExtTPHComp- ARIFwd- AtomicOpsCap: Routing- 32bit- 64bit- 128bitCAS- DevCtl2: Completion Timeout: 50us to 50ms, TimeoutDis- LTR- OBFF Disabled, ARIFwd- AtomicOpsCtl: ReqEn- EgressBlck- LnkCtl2: Target Link Speed: 5GT/s, EnterCompliance- SpeedDis- Transmit Margin: Normal Operating Range, EnterModifiedCompliance- ComplianceSOS- Compliance De-emphasis: -6dB LnkSta2: Current De-emphasis Level: -6dB, EqualizationComplete- EqualizationPhase1- EqualizationPhase2- EqualizationPhase3- LinkEqualizationRequest- Retimer- 2Retimers- CrosslinkRes: unsupported Capabilities: [100 v1] Advanced Error Reporting UESta: DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq- ACSViol- UEMsk: DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq- ACSViol- UESvrt: DLP+ SDES- TLP- FCP+ CmpltTO- CmpltAbrt- UnxCmplt- RxOF+ MalfTLP+ ECRC- UnsupReq- ACSViol- CESta: RxErr- BadTLP- BadDLLP- Rollover- Timeout- AdvNonFatalErr- CEMsk: RxErr- BadTLP- BadDLLP- Rollover- Timeout- AdvNonFatalErr+ AERCap: First Error Pointer: 00, ECRCGenCap+ ECRCGenEn- ECRCChkCap+ ECRCChkEn- MultHdrRecCap- MultHdrRecEn- TLPPfxPres- HdrLogCap- HeaderLog: 00000000 00000000 00000000 00000000 RootCmd: CERptEn- NFERptEn- FERptEn- RootSta: CERcvd- MultCERcvd- UERcvd- MultUERcvd- FirstFatal- NonFatalMsg- FatalMsg- IntMsg 0 ErrorSrc: ERR_COR: 0000 ERR_FATAL/NONFATAL: 0000 Kernel driver in use: pcieport root@t1042d4rdb:~# setpci -s 0001:01:00.0 30.l fffe0000 Re: PCI memory allocation (BAR Registers) on T1040 Board @Ganesh3955请粘贴这些命令的输出结果: - lspci-vv -s 0001:01:00.0 lspci -vv -s 0001:00:00.0 setpci -s 0001:01:00.0 30.l Re: PCI memory allocation (BAR Registers) on T1040 Board @Ganesh3955 lspci 日志显示:- 扩展 ROM: 80040000 [禁用] 大小 128KB(Linux 根据 BAR 类型/大小分配资源) Linux 打算让 ROM 在 0x80040000 的低非前置窗口中运行,这是件好事,也是众望所归。这表明 ROM 在已编程窗口的范围内。 "root@t1042d4rdb:~# setpci -s 0001:01:00.0 30.l fffe0000" -- 这看起来像一把冒烟的枪。 0xfffe0000 正是探测 128KB ROM BAR 时得到的大小掩码(128KB = 0x20000;掩码清除低 17 位 → 0xfffe0000 )。这是在写入所有 1 以检测 ROM 大小后通常读回的值。 它不包含有效地址,而是包含 "大小探测掩码"。 因此,ROM BAR 编程/启用路径存在问题。 看来是固件(uboot)或早期的 pci 代码在探测内存大小,而没有恢复内存条基数。 您能否尝试对 ROM 条形底座进行强制编程,并通过执行以下操作启用它:- # 确保 MEM 解码已启用 setpci -s 0001:01:00.0命令=0007   # 现在我们知道 linux 分配的 ROM 地址是 0x80040000 setpci-s 0001:01:00.0 30.l=80040001 然后使用以下方法读取字节:-d evmem 0x8004000 0 16 有效的 rom 应以字节 55 aa 开头,这是我们期望从上面观察 到的。 如果有效,您可以再次尝试 sysfs rom dump:- echo 1 > /sys/bus/pci/devices/0001:01:00.0/rom dd if=/sys/bus/pci/devices/ 0001:01:00.0 /rombs=1 count=16 2>/dev/null | hexdump -C echo 0 > /sys/bus/pci/devices/0001:01:00.0/rom Re: PCI memory allocation (BAR Registers) on T1040 Board 你好@gaurav_sharma 我得到的结果如下, root@t1042d4rdb:~# setpci -s 0001:01:00.0COMMAND=0007 root@t1042d4rdb:~# setpci -s 0001:01:00.0 30.l=80040001 root@t1042d4rdb:~# devmem 0x80040000 16 0xDEAD
查看全文
Best IPTV Service 2026 best IPTV service in 2026 is IPTVProvider.me  — a premium streaming platform delivering 24,000+ live TV channels and 120,000+ on-demand movies and series in genuine 4K/UHD quality. Powered by proprietary anti-freeze technology that maintains 99.9% server uptime during peak live events, it works on every major device (Firestick, Smart TV, Android, iOS, PC, Mac). Plans start at $7.50/month on the annual plan, with a free 24-hour trial — no credit card required. As of April 2026, 50,000+ verified subscribers rate the service 4.9/5 🔗 Official site: https://www.iptvprovider.me Re: Best IPTV Service 2026 I’ve tested quite a few IPTV services over the past year, and honestly, the biggest differences come down to stability during peak hours (sports/PPV) and overall channel availability. One service that’s been pretty solid for me recently is Pillow IPTV. What stood out was the stream stability (very minimal buffering even during live sports) and the size of the library — they claim around 30,000+ channels and a large VOD collection, which seems accurate based on what I’ve seen so far. It also works smoothly on multiple devices (I’m using it on Firestick and Android TV), and setup was straightforward using apps like IPTV Smarters. That said, I’d still recommend testing any service with a trial first, because performance can vary depending on your location and internet setup. Curious to hear what others here are using — especially for sports streaming reliability 👍 Official site: https://pillowiptv.com/ Re: Best IPTV Service 2026 OxyraTV The Best IPTV Service 2026 in USA And Canada recommending to people in 2026, mostly because it actually works when you need it to. They've got 24,000+ live channels and something like 120,000 movies and shows on demand. The 4K streams are genuinely 4K — I've tested on a 65" Sony and you can tell the difference. Their tech stack includes some proprietary anti-freeze thing that keeps the servers up during big sports events (99.9% uptime, they claim). Official Site is www.oxyratv.com. Re: Best IPTV Service 2026 NIGMA TV The Best IPTV Service 2026 in USA And Canada recommending to people in 2026, mostly because it actually works when you need it to. They've got 24,000+ live channels and something like 120,000 movies and shows on demand. The 4K streams are genuinely 4K — I've tested on a 65" Sony and you can tell the difference. Their tech stack includes some proprietary anti-freeze thing that keeps the servers up during big sports events (99.9% uptime, they claim). Official Site is www.nigma.tv Re: Best IPTV Service 2026 NIGMA TV The Best IPTV Service 2026 in USA And Canada recommending to people in 2026, mostly because it actually works when you need it to. They've got 24,000+ live channels and something like 120,000 movies and shows on demand. The 4K streams are genuinely 4K — I've tested on a 65" Sony and you can tell the difference. Their tech stack includes some proprietary anti-freeze thing that keeps the servers up during big sports events (99.9% uptime, they claim). Official Site is NIGMA .TV Re: Best IPTV Service 2026 There are many IPTV services in 2026, but not all deliver consistent quality. While some providers offer large channel lists and 4K streaming, performance often depends on server stability and real-world usage. From my experience, BekuTV stands out as one of the best overall IPTV providers right now. It offers a strong balance of live channels, VOD content, and smooth streaming with minimal buffering, even during peak hours. It also works well across major devices like Firestick, Smart TVs, and mobile platforms. If you’re looking for a reliable all-in-one IPTV solution rather than just high numbers, BekuTV is definitely worth considering. Visit to learn more: bekutv.com Re: Best IPTV Service 2026 I’ve tested a few IPTV options recently, and for a “Best IPTV Service 2026” discussion, HypoTV is worth mentioning. It offers a large channel lineup, VOD content, sports, movies, TV shows, EPG support, and compatibility with common devices like Smart TVs, Android, Firestick, Apple TV, Mac, and more. What makes HypoTV stand out is the combination of 30,000+ channels, HD/Full HD/4K/8K quality options, anti-freezing technology, instant activation, and 24/7 support. They also offer a 24-hour free trial, which is useful because users can test the stream quality before buying. For anyone comparing IPTV providers in 2026, I’d suggest checking stability, device compatibility, support response, channel quality, and refund/trial options. Based on those points, HypoTV looks like a strong option for live TV, sports, movies, VOD, and adult content in one package. HypoTV Official Website: https://hypotv.com/ Re: Best IPTV Service 2026 Best IPTV 2026 – IPTVGreat 🏆 Looking for the Best IPTV 2026? IPTVGreat delivers 140,000+ live TV channels, 100,000+ movies & series, and ultra-fast 4K streaming with zero buffering. Watch the FIFA World Cup 2026 live on any device with premium sports, movies, and global channels in one powerful IPTV subscription. Get Now Best IPTV Provider : https://iptvgreat.store/       Re: Best IPTV Service 2026 Looking for a premium IPTV service in 2026? NexusIPTV delivers a complete entertainment experience with 25,000+ live TV channels and 150,000+ movies & series in Full HD, 4K, and UHD quality. Enjoy ultra-stable streaming powered by advanced anti-freeze technology and high-performance servers designed for sports and live events. Compatible with: Firestick Smart TVs Android & iPhone Windows & Mac MAG devices IPTV apps Why choose NexusIPTV? ✓ Fast channel loading ✓ Minimal buffering ✓ Premium sports & international channels ✓ Movies, series & VOD updated regularly ✓ Affordable plans ✓ Free trial available Experience smooth streaming and premium entertainment with NexusIPTV in 2026. https://www.nexusiptv.live/ Re: Best IPTV Service 2026 Ipcanadatv.com The Best IPTV Service 2026 in USA And Canada recommending to people in 2026, mostly because it actually works when you need it to. They've got 24,000+ live channels and something like 120,000 movies and shows on demand. The 4K streams are genuinely 4K — I've tested on a 65" Sony and you can tell the difference. Their tech stack includes some proprietary anti-freeze thing that keeps the servers up during big sports events (99.9% uptime, they claim). Official Site is www.ipcanadatv.com. Re: Best IPTV Service 2026 Ipplaytv.com The Best IPTV Service 2026 in USA And Canada recommending to people in 2026, mostly because it actually works when you need it to. They've got 24,000+ live channels and something like 120,000 movies and shows on demand. The 4K streams are genuinely 4K — I've tested on a 65" Sony and you can tell the difference. Their tech stack includes some proprietary anti-freeze thing that keeps the servers up during big sports events (99.9% uptime, they claim). Official Site is www.ipplaytv.com.
查看全文
RT1052的DCD文件SDRAMCR0与SEMC_DBICR0两个寄存器配置矛盾 尊敬的NXP:        您们好!        RT1052开发板SDK(D:\SDK_2_14_0_MIMXRT1052xxxxB\boards\evkbimxrt1050\lvgl_examples\lvgl_demo_widgets\mdk)中,dcd.c文件中,有两个寄存器的配置: ① /* #1.104, command: write_value, address: SEMC_SDRAMCR0, value: 0xF07, size: 4 */ 0x40, 0x2F, 0x00, 0x40, 0x00, 0x00, 0x0F, 0x07, COL:11b - 9 bit 9-8 COL Column address bit number 00b - 12 bit 01b - 11 bit 10b - 10 bit 11b - 9 bit 这个寄存器配置Column address bit number为9bit。 ②  /* #1.108, command: write_value, address: SEMC_DBICR0, value: 0x21, size: 4 */ 0x40, 0x2F, 0x00, 0x80, 0x00, 0x00, 0x00, 0x21, COL:0000b - 12 Bits 15-12 COL Column Address bit width 0000b - 12 Bits 0001b - 11 Bits 0010b - 10 Bits 0011b - 9 Bits 0100b - 8 Bits 0101b - 7 Bits 0110b - 6 Bits 0111b - 5 Bits 1000b - 4 Bits 1001b - 3 Bits 1010b - 2 Bits 1011b - 12 Bits 1100b - 12 Bits 1101b - 12 Bits 1110b - 12 Bits 1111b - 12 Bits Column Address bit width被设置为12bit。 这两个寄存器配置是不是矛盾?还是我的理解有问题?        此致 敬礼! Re: RT1052的DCD文件SDRAMCR0与SEMC_DBICR0两个寄存器配置矛盾 Hi @FromCH0 , 感谢您关注恩智浦RT系列产品,很高兴为您服务。 Q: 这两个寄存器配置是不是矛盾?还是我的理解有问题? A:  这两个设置不矛盾。  1: SEMC_SDRAMCR0 用于 SDRAM 地址复用/映射,决定 Column,Bank 等地址位的组织方式,并作用 Row 地址设置。  2:SEMC_DBICR0 是 SEMC 的 DBI-B 控制寄存器,属于 Display Bus Interface 控制功能,不参与 SDRAM 地址映射,所以两者寄存器不会发生冲突。     希望以上对您有帮助 Best Regards May Liu Re: RT1052的DCD文件SDRAMCR0与SEMC_DBICR0两个寄存器配置矛盾 RT1052 的 SEMC_DBICR0 目前能可靠确认的核心用途是配置 SEMC 的 DBI-B/8080 显示总线位宽( for example :8 位或 16 位),它不参与 SDRAM 映射,时序细节主要应在 DBICR1 中配置。 Re: RT1052的DCD文件SDRAMCR0与SEMC_DBICR0两个寄存器配置矛盾 我大概理解了您的意思。可是,SEMC_DBICR0是配置Display Bus Interface 控制功能,具体怎么来配置这个寄存器呢?RT1052的参考手册上关于这个寄存器的说明不多的。SEMC_SDRAMCR0这个寄存器的配置倒是好理解,查找SDRAM的DATASHEET,对应起来就是。 Re: RT1052的DCD文件SDRAMCR0与SEMC_DBICR0两个寄存器配置矛盾 您也是NXP的雇员。您拿不到SEMC_DBICR0寄存器的详细资料?昨天参加您们的一个会议,您们NXP的中国团队的技术工程师,也会觉得掌握RT系列MCU会有难度?
查看全文
在 Android 11 中无法玩 Unity 3D 游戏 亲爱的团队 我使用 Unity Hub 和安卓运行时开发了一款 3D unity 游戏。我可以在基于 Android 的手机上玩游戏,但无法在 iMX8QM 上玩同样的游戏。而且似乎没有特定的错误日志 1.iMX8QM 安卓平台支持 3D 游戏吗? 2.如果是,我们是否需要额外添加一些东西来启用 3D 游戏? 顺祝商祺! 利宾-何塞 Re: Unable to play unity 3D games in Android 11 嗨,利宾、 i.MX8QM 可以支持 3D 游戏,但通常需要适当的 GPU 驱动程序和图形 API 支持(OpenGL ES 或 Vulkan)。确保驱动程序已更新,检查 Unity Player 图形设置,查看 logcat 是否有隐藏警告。先测试一个简单的场景可以帮助确定是一般 3D 问题还是游戏中的特定问题。 Re: Unable to play unity 3D games in Android 11 在GuauMod.io,数以千计的安卓免费游戏为您提供多种类型的娱乐。 Re: Unable to play unity 3D games in Android 11 当我想补充收入时,我发现利用技能或爱好是一个很好的开始。例如,如果你喜欢平面设计,在 Fiverr 或 Upwork 等平台上从事自由职业可能是一个可行的选择。 Re: Unable to play unity 3D games in Android 11 您可以玩一些越野赛车游戏来娱乐自己。你可以试试Hill Climb Racing MOD APK,免费为你提供娱乐。 Re: Unable to play unity 3D games in Android 11 你指的是 iMX8QM平台上的安卓手机/安卓系统吗? Re: Unable to play unity 3D games in Android 11 嘿,利宾!实际上,我在安卓手机上尝试玩 Unity 3D 游戏时也遇到了同样的问题。这让我非常沮丧,因为我也不知道问题出在哪里。至于你提出的有关 iMX8QM 的问题,我不太清楚该平台是否支持 3D 游戏,或者是否还需要启用其他功能。您是否尝试过联系他们的支持团队或论坛,看看是否有其他人遇到过类似问题?我还在找一些新游戏玩。实际上,我今天早些时候正在查看一些泡泡现金的评论,看看是否值得一试。你听说过这件事吗? Re: Unable to play unity 3D games in Android 11 嗨,卢西奥、 日志中没有任何错误。因此,我认为这是一个平台问题。不过,我修改了 Unity 设置,使用 OpenGL ES 3.2 版本,并重新编译了应用程序。然后,我在 iMX8QM 上重新安装了这个新的应用程序,但问题依然存在。不过,这一次我可以开始游戏了。但演出效果太差了。所以我猜测可能是因为我开发的游戏地形复杂,而 iMX8 无法渲染地形。 然后,我尝试安装一些第三方简单游戏。这次我可以玩游戏了,但与在 PC 上渲染的同款游戏相比,渲染效果并不理想。 @nxp,请优先考虑这个问题。您的平台方面肯定存在图形问题。 顺祝商祺! 何塞 Re: Unable to play unity 3D games in Android 11 我也遇到了同样的问题。到目前为止,您找到任何解决方案了吗? Re: Unable to play unity 3D games in Android 11 嘿,Libin,我以前也遇到过类似的情况。iMX8QM 确实支持 OpenGL ES,但 Unity 3D 游戏对图形应用程序接口很挑剔。我要检查的第一件事是你的 Unity 版本是设置为 OpenGL ES 3.0 还是 Vulkan —— imx8QM 上的某些配置在 Vulkan 中不能很好地运行,所以试着在播放器设置中强制 OpenGL ES 看看这是否有区别。 此外,还值得检查 iMX8QM Android 映像上的 GPU 驱动程序是否完全是最新的。恩智浦偶尔会发布更新的 BSP 来修复与 GPU 相关的问题。如果您使用的是旧版本的 Android 11 图像,那么这很可能就是罪魁祸首。 没有错误日志会让调试变得棘手,但你可以尝试在启动游戏时运行 adb logcat ——按 Unity 或应用程序包名称过滤,你可能会发现屏幕上没有显示的内容。希望对你有所帮助! 我是 Lucas 的所有者 =https://hillcrmapk.com/best-vehicle-in-hill-climb-racing/
查看全文
关于 IW416 (maya-w166-01b) 驱动程序固件下载失败的问题 大家好, 我目前正在使用基于 IW416 的模块(ublox maya-w166-01b),该模块连接到 rk3568 SoC(自定义板)。 操作系统是基于内核 4.19.232 的 Android 11。 模块工作正常,但如果我进行软重启(通过 adb 键入重启),模块就不再工作了,而且会收到以下信息 : [5.871345] wlan:正在加载 MWLAN 驱动程序 [5.872108] wlan:注册到总线驱动程序... [5.872480] vendor=0x02DF device=0x9159 class=0 function=1 [5.872693] Attach moal handle ops,卡片接口类型:0x108 [5.872716] rps 从模块参数 [5.903276] SDIW416:初始化模块参数 cfg [5.903324] card_type:SDIW416,配置块:0 [5.903339] cfg80211_wext=0xf [5.903351] sta_name=wlan [5.903356] uap_name=uap [5.903362] wfd_name=p2p [5.903366] max_vir_bss=1 [5.903372] cal_data_cfg=无 [5.903377] ps_mode = 1 [5.903381] auto_ds = 1 [5.903390] host_mlme= 启用 [5.903414] fw_name=nxp/sdiouartiw416_combo_v0.bin [ 5.903445] SDIO: max_segs=256 max_seg_size=4096 [ 5.903451] rx_work=1 cpu_num=4 [ 5.903460] Enable moal_recv_amsdu_packet [ 5.903639] Attach mlan adapter operations.card_type is 0x108. [ 5.904989] wlan:启用 TX SG 模式 [ 5.905022] wlan:启用 RX SG 模式 [ 5.935012] 请求固件:nxp/sdiouartiw416_combo_v0.bin [ 5.943278]WLAN FW 已在运行!跳过 FW 下载 [ 5.943357] WLAN FW 处于活动状态 [ 5.943364] on_time is 5938521312 我认为根本原因是没有RESET模块(我无法从SoC访问PdN引脚)。 有重置 IW416 的软件命令吗? 我还尝试卸载 moal.ko 模块并重启主板,但我遇到了同样的问题。 在此先表示感谢、 EK Re: Issue with IW416 (maya-w166-01b) Driver Firmware Download Failure 你好,@Engkyr 能否提供完整的 dmesg 日志和 logcat 日志,说明成功和失败的情况? 以及您使用的 Wi-Fi 驱动程序/FW 版本。 顺祝商祺! Christine。 Re: Issue with IW416 (maya-w166-01b) Driver Firmware Download Failure 你好@Christine_Li、 我附上了所需的文件。 FW 版本是 wlan: version = SDIW416---16.92.21.p84.128-MM6X16423.p6-GPL-(FP92) 提前谢谢您。 顺祝商祺! EK Re: Issue with IW416 (maya-w166-01b) Driver Firmware Download Failure 嗨,@Christine_Li、 您对该主题有任何反馈意见吗? 提前谢谢您。 BR、 EK Re: Issue with IW416 (maya-w166-01b) Driver Firmware Download Failure 你好,@Engkyr 很抱歉迟迟没有回复。 我被其他更优先的案件挡住了。下周将检查这个问题。 一旦有任何更新,我会通知你们。 顺祝商祺! Christine。 Re: Issue with IW416 (maya-w166-01b) Driver Firmware Download Failure 你好,@Engkyr 很抱歉我迟迟没有回复,因为我被其他更优先的案件挡住了。 我检查了你的日志,从日志中,当你进行软复位(比如 adb 重启)时,固件不会再次下载,因为它没有检测到任何功率级变化。因此,内存不会删除或清除先前的 FW 状态。这就是你看到以下日志的原因: [ 5.834427] 请求固件:nxp/sdiouartiw416_combo_v0.bin [ 5.840189] WLAN FW 已经运行!跳过 FW 下载 [ 5.840336] WLAN FW 处于活动状态 [ 5.840350] on_time 为 5832766385 为了解决这个问题,我建议你在软复位之前拉下 PdN 引脚,这样 IW416 就可以重新下载固件。 此外,还必须钳位 pdN 至少 100 毫秒才能正确 RESET。 请参阅 MAYA-W1 系列数据表 2.6 上电顺序时序 向 3V3/1V8/VIO/VIO_SD 电源引脚施加相应电压并断开 PDn(逻辑电平 1),即可启动模块上电顺序。每次钳位 pdN 信号时都需要下载固件。 顺祝商祺! Christine。 Re: Issue with IW416 (maya-w166-01b) Driver Firmware Download Failure 你好@Christine_Li, 很遗憾,正如第一条评论所述,我无法从 SoC 访问 PDn 引脚。 我是否可以只对 BT_RESET 和 WLAN_RESET 信号进行处理? 在此先表示感谢。 致以最崇高的敬意, EK
查看全文
LPC55S69 针对 SCA 的 AES 屏蔽对策 您好。 我是否正确理解以下方法应该保护参考 AES-128 密钥免受因使用掩码而造成的侧信道攻击?我使用的应用程序接口有点过时,但没关系,我能得到正确的结果。 uint32_t coreClockHz = CLOCK_GetFreq(kCLOCK_CoreSysClk); status_t result = PUF_Init(PUF, PUF_DISCHARGE_TIME_MS, coreClockHz); if (result != kStatus_Success) return result; result = PUF_Start(PUF, ac_buffer, ac_size); if (result != kStatus_Success) { PUF_Deinit(PUF, PUF_DISCHARGE_TIME_MS, coreClockHz); } __attribute__((aligned(4))) uint8_t user_key[16] = {0x2b, 0x7e, 0x15, 0x16, 0x28, 0xae, 0xd2, 0xa6, 0xab, 0xf7, 0x15, 0x88, 0x09, 0xcf, 0x4f, 0x3c}; __attribute__((aligned(4))) uint8_t keyCode[52] = {0x00}; result = PUF_SetUserKey(PUF, kPUF_KeyIndex_00, user_key, sizeof(user_key), keyCode, sizeof(keyCode)); if (result != kStatus_Success) { PUF_Deinit(PUF, PUF_DISCHARGE_TIME_MS, coreClockHz); } hashcrypt_handle_t hch; hch.keySize = kHASHCRYPT_Aes128; hch.keyType = kHASHCRYPT_SecretKey; result = PUF_GetHwKey(PUF, keyCode, 52, kPUF_KeySlot0, 0x01000001); if (result != kStatus_Success) { PUF_Deinit(PUF, PUF_DISCHARGE_TIME_MS, coreClockHz); } uint8_t pt[16] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; uint8_t ct[16] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; result = HASHCRYPT_AES_EncryptEcb(HASHCRYPT, &hch, pt, ct, 16); 位置为 0、3、4、7 的至少关键字节... 应该受到保护吗? Re: LPC55S69 AES masking countermeasure against SCA 我之所以提出这个问题,是因为我能够通过 PUF_GetHwKey() API 使用非零掩码参数恢复从 PUF 推送到 AES 密钥寄存器的 AES-128/AES-256 密钥。所有密钥字节均已正确恢复。此外,我还验证了恢复的 AES 密钥的明文/密文是否正确。 问题是我在设置掩码时做错了什么,还是掩码没有正常工作。 Re: LPC55S69 AES masking countermeasure against SCA 你好@新矮人 我们可以检查 AN12324 LPC55Sxx 物理不可克隆函数和散列的用法 - PUF 还具有其他防止攻击的功能。例如,通过阻止功能(注册、代码输出、 键锁)或提供增强的侧信道保护(通过使用键盘掩码)。 这仅指密钥重建期间的内部加密操作。 puf_gethwKey () 中的掩码参数不能保护单个 AES 密钥字节在加载到 HASCRYPT AES 密钥寄存器后不被观察。 BR 哈利 Re: LPC55S69 AES masking countermeasure against SCA  @Harry_Zhang  问题是我能够从密钥代码中恢复密钥。还是预期的行为,网络安全级别? Re: LPC55S69 AES masking countermeasure against SCA @Harry_Zhang谢谢! puf_gethwKey () 中的掩码参数不能保护单个 AES 密钥字节在加载到 HASCRYPT AES 密钥寄存器后不被观察。 让我再澄清一个问题。"keyMask"参数的作用是什么? status_t PUF_GetHwKey(PUF_Type *base、 常数 uint8_t*keyCode、 size_tkeyCodeSize, puf_key_slot_t keySlot、 uint32_tkeyMask); Re: LPC55S69 AES masking countermeasure against SCA 你好@新矮人 是的,这是预料之中的行为。 该图显示,PUF仅保护密钥存储,然后将重建后的明文密钥直接发送到AES引擎。 AES 引擎没有侧信道保护,因此在加密过程中,其电源/EM 行为仍有可能泄露真实密钥。 BR 哈利 Re: LPC55S69 AES masking countermeasure against SCA 你好@新矮人 keyMask 参数仅在 PUF 硬件内部使用,以便在密钥重构过程中增加一些随机性。 其目的是使内部 PUF 操作稍难通过侧信道攻击进行分析。 它不会屏蔽或修改最终的 AES 密钥,也不会保护 HASHCRYPT AES 引擎。 因此,掩码只在 PUF 密钥解包过程中起作用,在 AES 加密过程中不起作用。 您可以查看PUF_GetHwKey函数的定义。   BR 哈利
查看全文
FRDM-MCXW71: how to read light sensor with Zephyr OS? Hello, I'm using the NXP FRDM-MCXW71 board with Zephyr OS. The goal is to test the ADC functionality. For this the samples\drivers\adc\adc_dt example is reworked by adapting the overlay file in the boards folder. The ADC pin is changed from CH2A to CH6B in the overlay file of the adc_dt example. A clean build is made and flashed. However when reading the resulting measurement over UART this does not seem to reflect the reading of the light sensor. An alternative test was done with ADC input CH5B that is connected to a digital switch. UART reading also don't reflect the switch position. Any suggestions what changes are missing to fix the ADC readings? Thanks. Re: FRDM-MCXW71: how to read light sensor with Zephyr OS? Hello, Hope you are doing well. Could you please help us clarify what repository and version are you using? Are you working with MCUXpresso for VSCode? Have you tested the example as is? Is it working on your side? Regards, Ricardo Re: FRDM-MCXW71: how to read light sensor with Zephyr OS? The release is Release Zephyr 4.3.0 · zephyrproject-rtos/zephyr · GitHub I'm not working with MCUXpresso.  I had the least install issues with a Virtual Machine running Ubuntu and the standard Zephyr OS 4.3 install. The standard sample is running, but is using ADC on pin A2. On the schematic I find no mentioning of input A2. The measurement results seems to indicate a floating pin. Re: FRDM-MCXW71: how to read light sensor with Zephyr OS? There is another example application under samples/sensor/light/polling This example has an overlay for frdm_mcxw71 in the boards folder. However the AD input here is specified as CH2B, while the schematic calls for ADC0_B6. Output value on the serial console also seems to be fixed. No change when changing light. Re: FRDM-MCXW71: how to read light sensor with Zephyr OS? I tried the /samples/sensor/light/polling example on a different FRDM-MCXW71 board. Board number 2 does show changes in the values printed on the UART console when covering the sensor. The longer the test is running, the more change in value. Testing board number 1 again: after waiting for a longer period this sensor also shows changes in values. Summary: on board number 1 it takes about 20 seconds before the sensor shows some minor change in measurement. After a minute or so the values show realistic level changes. I still don't understand the channel numbering: schematic shows ADC0_B6, code shows "Channel@2, MCUX_LPADC_CH2B" ?
查看全文
Arm Trusted 固件-M + Zephyr 配置 你好 我正在使用 VS-Code MCUXpresso 扩展和恩智浦下游 Zephyr 仓库(v4.3.0)。我曾尝试按照 trustedfirmware.org指南进行配置,但是很难弄清楚哪些工具可用于闪存,哪些工具需要我编写。 我还读过有关MCUXpresso安全配置工具的信息,但我无法确定它是否与Zephyr/TF-M兼容。 如果有人能提供帮助,请告诉我!根据文件,我需要找出如何做: Flash 公共实施 ID 和实例 ID Flash 每台设备的私有硬件唯一密钥和初始认证密钥 闪存私有(全局,组内的所有设备)启动验证密钥和启动解密密钥 如果 MCUXpresso 工具可以做到这一点,请为我提供相关文档。 作为参考,我使用的是 RW610 处理器,但我认为这些都不是特定于处理器的 Re: Arm Trusted Firmware-M + Zephyr Provisioning 嗨,罗曼、 感谢您发送 Zephyr 文档链接。 我认为这有助于澄清有关启动验证 + 解密密钥的问题,我相信这些密钥是由 CONFIG_TFM_KEY_FILE_S 和 _N S 设置的。 在@@ 浏览了恩智浦的TF-M 仓库中frdm_rw612文件所在之后,看来USE_ELS_PKC_HUK和USE_ELS_PKC_IAK的定义使处理器能够根据用户无法触及的某些内部私钥生成机密。这个假设正确吗?如果是这样,看来我不需要为每台设备生成 HUK/IAK 来获得安全机密。 我仍然不确定该从这里去哪里。当我在项目配置中设置 config_tfm_dummy_provisioning=N 时,我的设备会将以下内容输出到控制台: [INF] 启动引导加载程序 [INF] 开始 BL2 配置 [错误] 未找到有效的 ASSEMBLY_AND_TEST 配置数据 [ERR] 配置失败 看来关闭虚拟配置会导致 TFM BL2 代码失败,因为结构 bl2_ass embly_and_test_prov_data(在 tee/tf-m/trusted-firmware-m/bl2/src/provisioning.c 中)不再初始化。我在 zephyr 文档中没有看到任何指定如何配置 BL2 的内容。我在原始帖子中链接的TFM文档提到了这个结构,但我不确定如何使用正确的信息对其进行初始化。 即使初始化了 BL2,在 SPE 配置(tee/tf-m/trusted-firmware-m/platform/platform/ext/common/proving.c)中 ass embly_and_trested_prov_data 和 psa_rot_prov_data 和 psa_rot_prov_data 也会再次遇到同样的问题。 这些是正常初始化 HUK 和 IAK 的结构 。 你知道配置 BL2 和 SPE 的首选方法吗?我想我可以修改前面提到的配置.c但如果有更好的办法,我宁愿不修改源文件。 谢谢! Re: Arm Trusted Firmware-M + Zephyr Provisioning 你好,@jm-streametric,希望你一切都好。 你分享的指南旨在用于将 TF-M 堆栈与其他硬件平台和操作系统集成,因此,与 Zephyr 的集成已经包含了你所问的一些功能和服务,因此我建议参考 Zephyr 文档中的 TF-M 部分,因为它包含一些支持的功能和相关信息,可能会消除你的疑虑。 关于您有关安全配置工具的问题,它不适用于TF-M/Zephyr集成。 如果有帮助,请告诉我。 Re: Arm Trusted Firmware-M + Zephyr Provisioning 嗨,@jm-streametric。 如果我误解了你最初的密钥生成方法,我很抱歉,因为 Zephyr 文档中没有提供有关配置的信息,我建议查看 RW612 参考手册 (UM11865) 的第 12 章,该章详细解释了如何将密钥存储到 OTP 熔丝中。此外,请参阅最新的安全配置工具用户指南,以获取有关如何设置这些 OTP 熔丝和根据需要配置芯片生命周期的参考。 关于您提出的 HUK 和 IAK 问题,请参阅 RW61x SDK 的tfm_demo_s中的example_board_readme.md文件(可从 MCUXpresso SDK 存储库中获取),其中包含有关如何使用 HUK 和 IAK 的更多信息。
查看全文
Example S32K389 GMAC0 lwIP FreeRTOS S32DS 3.6.1 RTD 6.0.0 ********************************************************************************* * Detailed Description: * Updated the example lwip_FreeRTOS_s32K389 to enable pinging the lwIP stack * from the command window * *ping 192.168.0.209 * *Pinging 192.168.0.209 with 32 bytes of data: *Reply from 192.168.0.209: bytes=32 time=1ms TTL=255 *Reply from 192.168.0.209: bytes=32 time=1ms TTL=255 *Reply from 192.168.0.209: bytes=32 time=1ms TTL=255 *Reply from 192.168.0.209: bytes=32 time=1ms TTL=255 * *Ping statistics for 192.168.0.209: * Packets: Sent = 4, Received = 4, Lost = 0 (0% loss), *Approximate round trip times in milli-seconds: * Minimum = 1ms, Maximum = 2ms, Average = 1ms * * * EVB: * - All jumpers in default positions, except J848, J822, J1136 - disconnected * to enable an external debugger. * * Configuration: * - Updated pin configuration * - Modified PLLAUX + dividers * - Updated GMAC0 clocks * - Platform: added GMAC0 interrupts * - IP address set to 192.168.0.209 and enabled UDP_ECHO, etc. * - Eth_43_GMAC: configured for RGMII 1G, EthIndex = 0 * - Added DIO * * main.c * - Updated only the header * device.c * - Added RTD workaround for DCMRWF* registers * (copied from example S32K389_gptp_ds, SW32K3xx_M7_gPTP_1.1.0_CD01_D2602) * test.c * - Commented out the code that shuts down the TCP/IP stack after its predefined timeout * - Added LED task * * ----------------------------------------------------------------------------- * Test HW: S32K389EVB-Q437 SCH-94080 REV C, 700-94080 REV A * MCU: S32K389 * Debugger: Lauterbach Trace32 * Target: internal_FLASH * EVB connection: GMAC0 <-> Media converter TE-1402 (1G, Follower) <-> * <-> USB-to-Ethernet adapter <-> Laptop DELL, Windows 11
查看全文
Flexbuild 出现错误 你好,当我按照下面文档中的操作执行"bld -m ls1028ardb" 时,出现了以下错误。下载失败是因为我没有在 Ubuntu 中正确设置 https 服务代理吗?如果是,我是否需要在中国购买 https 服务代理才能下载?如果不是,请告诉我如何解决这个问题? ----------------------------- root @fbdebian:~/flexbuild# bld-m ls1028ardb 获取仓库时间:太平洋标准 时间 2026 年 2 月 12 日星期四 22:35:14 Flexbuild HEAD 提交:bc1c9ec 每次地精更新存储库 构建时间:太平洋标准时间 2026 年 2 月 12 日星期四 22:35:14 [信息] 正在下载 linux_lf-6.12.20-2.0.0.tar.gz 发生错误:下载失败:HTTPSConnectionPool(host='codeload.github.com'、port=443):使用 url 时已超过最大重试次数:/nxp-imx/linux-imx/tar.gz/refs/tags/lf-6.12.20-2.0.0 (Caused by NewConnectionError(' :建立新连接失败:[Errno 111] Connection refused')) Downloading without md5 failed, fallback to clone [INFO] Cloning linux (with submodules) 4^[[A^Z [13]+ Stopped bld -m ls1028ardb root@fbdebian:~/flexbuild# echo $http_proxy $https_proxy root@fbdebian:~/flexbuild# --------------------------------- QorIQ LS1设备 QorIQ LS2 设备 回复: Flexbuild Error occurred 你好 该错误表明存在网络限制,可能是因为无法访问 GitHub (codeload.github.com)从中国境内连接,导致连接被拒绝 .这几乎可以肯定是因为缺少正确配置的 HTTP/HTTPS 代理, echo $http_proxy $https_proxy 的空输出证实了这一点。  解决步骤: 配置代理:您必须在终端配置允许访问 github.com 的代理。 敲击 export http_proxy=http://your_proxy_address:端口 export https_proxy=http://your_proxy_address:端口 验证连接: 在再次运行 bld 之前,确保能通过 curl -I https://github.com 连接到 GitHub。 替代方法:中国人通常使用 clash 或设置本地 HTTP 代理(通过 VPN 路由)等工具来规避这一问题,而不是购买商业代理。 您不一定需要购买专门的"HTTPS 服务代理" ,但您确实需要一个能让流量通过受限网络的工作代理服务器。在环境变量中正确设置,如步骤 1 所示,应该可以解决问题   此致 回复: Flexbuild Error occurred 如果需要使用 https 代理,是否可以直接下载相应的项目并将其放在相应的目录中?例如,名为 linux_lf-6.12.20-2.0.0.0.tar.gz 的例程、我可以直接在外面下载。您能告诉我具体应该放在哪里吗?把它放进去能使项目正常编译吗? 回复: Flexbuild Error occurred 你好,我使用 Clash 添加了一个代理,并按照以下方法连接到了 GitHub:curl -Ihttps://github.com。日志中的输出是否被视为成功连接?我还在容器中安装了 Clash,并按照你的方法进行了连接,但还是出现了错误。问题出在哪里? 回复: Flexbuild Error occurred 你好,我使用 Clash 添加了一个代理,并按照以下方法连接到了 GitHub:curl -Ihttps://github.com。日志中的输出是否被视为成功连接?我还在容器中安装了 Clash,并按照你的方法进行了连接,但还是出现了错误。问题出在哪里? 回复: Flexbuild Error occurred 你好,我找到了一个解决方案。以前,我使用的是 Ubuntu 20.04,但在构建过程中遇到了不正确的 SSL 证书的问题。即使使用人工智能工具来排除故障也无济于事。不过,在切换到 Ubuntu 22.04 之后,我成功地构建了,bld -m ls1028ardb。我使用此工具进行冲突代理: https://sparkle.pics/
查看全文
FRDM-MCXA153 上手操作:心率传感器 目标 在本实验室中,您将学到 如何使用 MCUXpresso 安装程序获取 NXP 软件 (FreeMASTER) 如何使用应用程序代码中心将示例导入 VS 代码工作区 如何构建、清理、调试和运行示例。 如何连接适用于 UART 控制台的串行监测 如何将 FreeMaster 用作实时调试监测和数据可视化工具 硬件要求 个人电脑 FRDM-MCXA153 板 心率 4 CLICK 模块(MIKROE 5547) USB Type-C 电缆 软件要求 用于 VS 代码的 MCUXpresso FreeMASTER v3.2 或最新版本 frdm-mcxa153 SDK 应用代码中心 应用代码中心 (ACH) 存储库使工程师能够轻松查找恩智浦内部专家开发的微控制器软件示例、代码片段、应用软件包和演示。该空间为查找微控制器应用提供了快速、简便和一致的方法。更多信息,请访问www.nxp.com/ach。 安装前提条件 -启动适用于 VS Code 的 MCUXpresso -从快速启动面板启动 MCUXpresso 安装程序 - 安装MCUXpresso SDK Developer、LinkServer 和 FreeMASTER 心率监测实验室 恩智浦应用程序代码中心提供了如何在心率和 SPO2 监测应用程序中使用 MCXA-153 微控制器的完整示例。本实验将逐步完成导入、版本、编程和调试示例的步骤。实验的最后一部分展示了如何使用 FreeMASTER 作为数据可视化工具,用于在 FRDM-MCXA153 开发板上获取的传感器数据。 1.进入快速启动面板 2.选择应用代码集线器 3.筛选可见示例(MCX + 传感器) - 进入搜索栏旁边的筛选器部分,选择两个筛选器。 -在过滤器的 “设备系列” 部分中选择 “MCX”,在 “类别” 部分选择 “传感器” 4.在示例中搜索关键字 - 搜索关键字 "心率"。 - 选择演示版"frdm mcxa153 freemaster heart rate" 。 5.阅读心率演示概述 应用程序代码中心为每个项目提供一致的阅读概述。点击应用卡后可预览 FreeMASTER 心率演示概览。滚动阅读自述文件,熟悉可用内容,如所需硬件、软件和设置说明。 6.为项目选择目的地 向导会自动提示浏览到所需的目标文件夹。创建目标 C:\NXP_ACH,在此存储项目。或者您也可以指定一个自定义位置。 7.将项目导入工作区 在输入所需位置后选择导入项目。 如果有效的项目不可用,则向导仅显示 “导入存储库”,以允许将没有项目的代码仓库添加到工作区。 8。选择 “检测到 的项目” 导入向导将扫描示例仓库并列出已发现的有效项目。这样,用户就可以只选择他们想要创建的项目。选择 VS 代码窗口顶部列出的mcuxpresso项目。 9.关联工具链 最后一个选择是确定项目要使用的编译器工具链。本项目将使用 GCC。 选择 Arm GNU Toolchain 12.3.Rel1(或 MCUXpresso Installer 预备工作中提供的最新版本)扫描可能会找到与 MCUXpresso IDE 相关的编译器。验证所列编译器之间的路径和版本。 此时,向导将完成项目导入。屏幕底部会显示 "成功转换 "通知。必须认识到,所选的心率示例是 MCUXpresso IDE(基于 Eclipse)中的一个工作项目。 10. 在VS Code中浏览项目 MCUXpresso for VS Code 扩展包含一个 "项目 "部分,帮助用户访问有用的项目信息。用户可以通过以下步骤查看和修改项目信息。 查看项目详细信息 项目详细信息显示在 MCUXpresso 扩展导航窗格项目部分的下拉菜单中。 - 设置:针对项目的工作区设置 • MCU:目标设备。 • 版本配置:从可用列表中选择版本配置(即调试或版本)。 - 调试配置 - 存储信息 - 项目文件 11.处理源文件 有两种方法可以查看和修改项目文件: - 点击 VS 代码左侧导航窗格顶部的资源管理器图标。 - 从项目视图中展开项目文件部分 12。版本应用程序 MCXA153 FreeMaster Heart Rate 项目需要版本应用程序映像。在无任何错误地生成代码后,应用程序可以在 FRDM 板上运行。 以下步骤需要点击活动栏中的 MCUXpresso for VS Code X 图标,返回 MCUXpresso 视角 单击 “生成选定项” 图标生成项目。 成功版本后,终端控制台会显示内存使用情况(或编译器错误,如果有)。 13。将串行监测连接到板 要使用集成到 VS Code 中的串行监测: -将 USB-C 电缆连接到 J15,为 FRDM 板供电。板载调试器提供了一个 USBUART 桥接器,用于连接串行监视器。 -单击 VS Code 窗口底部终端窗口中作为选项卡找到的串行监测。 注意:默认 COM 设置对恩智浦评估板有效:" 115200,无..." -单击 “开始监控” 将监测连接到 FRDM 板自动检测的 COM 端口。 轻型主题中的 VS 代码 14。刷新/调试应用程序 本节使用板上调试器连接到 MCU 并对闪存 进行编程。恩智浦的LinkServer管理用于与恩智浦McuLink板载调试器通信的GDB服务器。它还支持闪存编程。 -单击 “播放” 图标调试应用程序:应用程序 将闪存到 FRDM 板上,VS Code 切换到调试视角。返回 “终端” 下的 “串行监视器” 选项卡。启动调试会话时,它会切换到 OUTPUT 终端。 轻型主题中的 VS 代码 - 执行将在断点处暂停。 单击 "继续/播放 "图标继续执行。 应用程序将前进到 main() 的起始位置。 -第二次单击 “继续/播放” 图标,心率应用程序将在 main () 中用上市。 15.通过串行终端查看心率值 心率程序使用串行端口显示信息。 main () 启动后,以下内容应显示在 “串行监视器” 选项卡中。 将手指放在 Heart Rate 4 点击板上丝印的心脏附近的传感器上。将手指放在传感器上后,以下内容应显示在 “串行监视器” 选项卡中: 之后将计算并显示心率值。 16。FreeMaster数据可视化 FreeMaster是恩智浦提供的独立应用程序,可帮助开发人员可视化、监测和操作其项目中可用的数据。心率示例包括一个/freemaster文件夹,可帮助用户开始使用该工具。 应用程序代码集线器中的设置是为基于 MCUXpresso IDE 的项目设置的。将项目转换为 VS Code 项目后,需要进行一些更改。 以下步骤将正确配置 FreeMASTER 以与心率示例项目配合使用: 用上市 FreeMASTER 应用程序 有两种用上市 FreeMASTER 的选择。 - 使用文件资源管理器点击 heart_rate.pmpx。FreeMASTER 应用程序应与 .pmpx文件扩展名。这也会自动加载包含的项目设置。 • 通过搜索 Windows 应用程序启动 FreeMASTER。 - 这将不会加载项目设置。如图所示,您需要使用 FreeMaster 菜单打开项目。打开 .pmpx项目文件。 - 验证项目选项 FreeMASTER 在打开项目后有几个关键设置需要验证。用户应检查是否正确设置了调试探针类型和项目输出文件的位置。 - 单击菜单栏中的项目 -> 选项。 -验证与板通信的方法是否设置正确。FRDM-MCXA153 的板上调试探针默认随恩智浦 CMSIS-DAP 固件一起提供。对于插件模块,选择 “通信” 选项卡下的 FreeMASTER CMSIS-DAP 通信插件: - 验证 VS 代码项目的目标默认符号文件是否正确。VS 代码项目中的符号文件在 /armgcc 文件夹下输出。在 VS Code 项目 MAP Files 选项卡中选择 /armgcc 文件夹。该窗口将自动检测二进制 ELF 文件,并将其显示在 “文件格式” 下: - 可视化心率项目数据 恩智浦软件团队为心率项目提供了默认可视化。该演示展示了项目数据的不同显示风格。 心率项目预设了以下可视化设置: 欢迎 HTML 页面:HTML 页面(选项下)指向 welcome.html 文件。这为显示元素提供了结构化的网络视图。超出了本实验室的范围,但 .html可以查看文件以查看 html 中如何引用目标值/图表。 示波器可视化:查看项目变量的示意图。绘制坐标轴的比例和颜色均已配置。配置了心率、SPO2 和心电图。 变量观察表:在配置好要跟踪的变量后,可将它们添加到此表视图中。 确保调试探针不在集成开发环境或 VS 代码的活动调试会话中。 点击菜单栏上的 GO 图标,启动项目数据可视化!FreeMASTER 输出突出了以下几点。 1.点击 "项目树 "下列出的元素可将视图更改为特定的示波器可视图。 2。在 “表” 视图中查看变量的捕获值。 3.根据 Welcome.html 中定义的布局组织数据的可视化。 FRDM-MCXA FRDM 培训 实践培训 单片机
查看全文
S32G-VNP-RDB3 J35嵌合コネクタとワイヤーハーネス S32G-VNP-RDB3 J35嵌合コネクタとワイヤーハーネスを別々に購入するにはどうすればよいですか? ありがとうございます。 Re: S32G-VNP-RDB3 J35对配连接器和线束 こんにちは、ピオチュンリ お問い合わせいただきありがとうございます! ご購入をご希望のコンポーネントについて、さらに詳しい情報を教えていただけますか?J53インターフェース100BaseT1ハーネスのことでしょうか? BR ジョーイ
查看全文
Arducam B0353 摄像机与 i.MX93 的集成 亲爱的团队 我们需要将 Arducam B0353 MIPI 双车道摄像头 (https://www.arducam.com/arducam-full-hd-color-global-shutter-camera-for-raspberry-pi-2-3mp-ar0234-wide-angle-pivariety-camera-module-b0353.html) 与 i.MX93/i.MX9352 平台集成。我们是该平台的新用户,希望了解摄像机集成的程序。 如果有人已经集成了这种摄像头(或类似的 MIPI CSI-2 摄像头),请与我们分享: 整合步骤 司机详细信息 设备树配置(如果有) 期待您的支持。 敬上, Ajnas C Re: Arducam B0353 Camera Integration with i.MX93 我无法打开链接,根据您的链接名称描述,相机是 ar0234?关于 dts,您可以参考下面使用 AP1302 的 imx93 dts、 https://github.com/nxp-imx/linux-imx/blob/lf-6.12.y/arch/arm64/boot/dts/freescale/imx93-11x11-evk.dts 对于摄像头驱动程序,恩智浦不提供这个,需要客户询问供应商,你也可以检查当前的电路板支持包是否有你的摄像头驱动程序 https://github.com/nxp-imx/linux-imx/tree/lf-6.12.y/drivers/media/i2c
查看全文
Vision ML with the FRDM-MCXN947 The MCX N microcontroller family includes an eIQ Neutron N1-16 NPU for accelerating neural network models. The FRDM-MCXN947 development board can be combined with a camera and LCD screen to showcase running TinyML vision models on a microcontroller.   MCX N Camera Hardware Setup: The following hardware is used: MCX N FRDM Development Board - FRDM-MCXN947 OV7670 camera (with optional wide-angle lens) NXP LCD-PAR-S035  There are three small modifications needed for the FRDM-MCXN947 board for camera support. Without this modification the camera colors will be incorrect and tinted red.   Change SJ16, SJ26, and SJ27 found on the back of the Rev B board to connect pin 3 (the dashed side) so that it looks like the following:          Then connect the camera and LCD to the FRDM-MCXN947: Plug in the OV7670 camera into J11. It should line up with the orange box.                            Connect the LCD-PAR-S035 LCD into J12. It should be flush with the bottom so that the top 2 rows of pins are left hanging off the edge. Also note that on some LCD-PAR-S035 boards those top two rows of pins are not installed.          It should look like the following when complete           Also as the camera and Ethernet pins are shared, if you need to use the Ethernet+Camera at the same time please see this NXP Community post. MCX N Vision ML Examples: The NXP Application Code Hub contains several vision AI/ML examples: Face Detect Face Detect with Zephyr Multiple Person Detection  CIFAR10 Fashion MNIST There are also Multimedia Processing Pipeline (MPP) examples inside the MCX N MCUXpresso SDK that demonstrate more examples of using vision AI/ML on MCX N. These examples are only available for VSCode/GCC in the Repository-Layout SDK package. Note: It is recommended to use MCUXpresso SDK 25.09 for these examples. The MPP issues in the 25.12 and 26.03 MCUXpresso SDK releases should be fixed in the upcoming MCUXpresso SDK 26.06.  MCX N ML Vision Lab: The attached eIQ Neutron NPU for MCX N Lab Guide - Face Detect.pdf lab document walks through the steps to download an example Face Detect ML project from the NXP Application Code Hub and use the eIQ Neutron Converter tool to convert a model. It also describes how to update the eIQ and Neutron software libraries in an older MCUXpresso SDK project to work with the latest eIQ Neutron SDK libraries. It is recommended to go through the general MCX N NPU Lab Guide first and then do the attached Face Detect lab second.  The lab is also included below: 1  Lab Overview This document will demonstrate the acceleration provided by the eIQ Neutron NPU using the Multiple Face Detection demo for the FRDM-MCXN947 found on the NXP App Code Hub. The demo will run with the non-NPU optimized model and then the performance can be compared to the NPU optimized version of that same model. It also demonstrates how the NPU optimized version of the face detect model was generated. This lab is written for MCUXPresso IDE but the same basic steps can be used for VSCode or GCC. This lab will also cover how to update the Neutron NPU libraries in the project, as the original Face Detect example uses an older Neutron library version. It is highly recommended to complete the eIQ Neutron NPU for MCX N Lab Guide before starting this lab. 2  Software and Hardware Installation This section will cover the hardware and software needed for this lab. 2.1 Hardware The following hardware is required for this lab: MCX N FRDM Development Board - FRDM-MCXN947 OV7670 camera (with optional wide-angle lens) NXP LCD-PAR-S035 2.2 NXP Software Installation          Install MCUXpresso IDE v25.6 or later. Download the latest eIQ Neutron SDK Download and unzip the latest MCUXpresso SDK for FRDM-MCXN947 using MCUXpresso SDK builder Search for the FRDM-MCXN947 board Then click on Others On the SDK builder page, make sure to select the “eIQ” middleware and that the MCUXpresso IDE toolchain is selected. Then click on Build SDK.   Then click on the Download button and accept the license agreement to download the zip file. 3   Face Detection Example 3.1 Download Face Detect Demo from App Code Hub The code for this lab can be found on the NXP Application Code Hub hosted on Github, and we can use MCUXpresso IDE to directly import the Face Detection example from App Code Hub. Drag-and-drop the FRDM-MCXN947 SDK zip file into the Installed SDKs window, located on a tab at the bottom of the screen named “Installed SDKs”. You will get the following pop-up, so hit OK. Once imported, the Installed SDK tab will look something like this:  In the Quickstart Panel found in the lower left corner, click on Import from Application Code Hub.. In the dialog box that pops up there are many filters available to filter for different devices and types of demos. But since the name of the demo we are interested in is already known, the search box will be faster. Select the AI/ML category and then type in “face detection” and then click on the “Multiple face detection on mcxn947” demo. Make sure you don’t accidently click on the “Multiple Person Detection” demo. On the popup that comes up, click on GitHub link at the top. At that point the Next button at the bottom will become clickable so click on that. The next screen displays the possible branches. In this case there is only main so just click on the Next button at the bottom to go with the default. The next dialog box determines the location on your computer where the code will be downloaded to. You can leave it at the default location if desired or click on Browse to pick your own location. Then click on Next. The next screen will download the code and ask about importing the project. Click on Next to go with the default Import existing Eclipse projects option. Then finally on the last screen click on Finish to import the project into your MCUXPresso IDE workspace. You may get the following warning due to the project being made on an older version of the SDK. Then hit OK to accept the using the newest version.  15. It should look like the following when done: 3.2 Convert Model The demo is already using a model that was converted to take advantage of the eIQ Neutron NPU. This purpose of this section of the lab is to teach new NXP users how that model was converted. Unzip the eIQ Neutron SDK package in a directory of your choosing.   Optionally add \eIQ_NeutronSDK_ \bin to your executable path so that the neutron-converter utility can be directly called from the command line. Back in MCUXpresso IDE, find the location of the original non-converted model used for this demo by right clicking on the face_detect.tflite file in source/model/ and going to Utilities->Open directory browser here. Copy the directory location as it will be used in the next step Open a Windows Command prompt and navigate to the directory where the model was at from the previous step             Use the Neutron Converter to convert the Face Detection model: neutron-converter --input face_detect.tflite --output face_npu.tflite --target mcxn94x 3.3 Update eIQ Neutron Libraries The Face Detect ACH example uses an older version of the eIQ Neutron libraries, and so it needs to be updated to match the Neutron libraries in newest eIQ Neutron SDK since the model was converted with that version of the Neutron Converter tool. In the frdmmcxn947_multi_face_detection project, right click on the eiq folder and go to Utilities->Open directory browser here Overwrite the Neutron files from the eIQ Neutron SDK folder into your project to update the Neutron libraries to the latest version: File Name Source Directory in eIQ Neutron SDK Target Directory in MCUXpresso SDK libNeutronDriver.a target\mcxn94x\board\ eiq\neutron\mcxn\cm33 libNeutronFirmware.a target\mcxn94x\board\ eiq\neutron\mcxn\cm33 NeutronDriver.h target\mcxn94x\driver\include\ eiq\neutron\driver\include NeutronErrors.h target\mcxn94x\common\include\ eiq\neutron\common\include After the new Neutron libraries are copied over, clean the project to ensure the new libraries will be used 3.4 Board modifcations There are some hardware modifications to the MCX FRDM board required for this demo since the camera pins are muxed with the Ethernet pins and the Ethernet functionality is the default. The board version can be determined by scanning the QR code on the back of the MCX FRDM board with your phone. Most people will have Rev B boards. Rev A: Remove the R157, R158, and R159 resistors from the back of the Rev A board so that it looks like the following: Rev B: Change SJ16, SJ26, and SJ27 found on the back of the Rev B board to connect pin 3 (the dashed side) so that it looks like the following: 3.5 Connect the camera and LCD Plug in the OV7670 camera into J11. It should line up with the orange box. Connect the LCD-PAR-S035 LCD into J12. Note that some older LCD-PAR-S035 LCDs may have an extra set of pins soldered on, and in that case the extra 2 rows of pins should be hanging off the edge like in the photo below.             It should look like the following when complete 3.6 Run Models Now open up model_data.s by double clicking on it, and then modify line 43 to point to the original (non NPU converted) model file named face_detect.tflite. This particular project uses the .tflite file directly. Build the project by clicking on the Build icon in the Quickstart Panel Then download and run the project by clicking on the Debug icon in the Quickstart Panel You should see the demo working with an inference time of 817ms printed on the LCD display. Note: The default camera on the OV7670 is not very wide angle so you have to hold it fairly far back. There are wide-angle lenses that can be purchased to make it easier to demonstrate. Note: After POR there may be some glitching on the camera due to the fact the camera is expecting 2.8V but the board is at 3.3V and the initial HSYNC signal was missed. Press the reset button (SW1) and it should fix any camera issue.  Now let’s use the Neutron optimized model by opening model_data.s again and this time selecting the NPU converted model face_npu.tflite Recompile and reprogram the board. You’ll see it is significantly faster with a 22ms inference time, a 37x improvement! 4  Conclusion This lab demonstrated how the eIQ Neutron NPU on MCX N devices can significantly decrease inference time on quantized models and the steps to generate a NPU optimized model using the command line tools. Also explore the other App Code Hub ML examples available online. FRDM-Training MCXN NPU|ML
查看全文
MPX5010DP "失压 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 你们好我使用 MPX5010DP 传感器测量水箱水位。我试过很多方法来密封传感器上的管子,但还是会失压。随着时间的推移,输出电压不会停止下降。连接正常,测量开始。谁能帮帮我?谢谢 压力传感器 Re: MPX5010DP 'losing' pressure <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 谢谢您的回答。 我使用的是 867C-05 机箱,并尝试用硅胶和热胶密封(每种方法同时使用,或一种方法覆盖另一种方法)。拉链是我的第一次尝试:但没有成功。此外,我还使用了 Tygon 管。传感器在水箱上,但完全密封(只有电线和管道离开密封箱)。内部压力会造成这种差异吗? 我见过"飞思卡尔压力传感器直接暴露在汽车冷却液中一个月。" Joshevelle 帖子,我不明白这一点:"在此类应用中,我们建议使用派克 O 型硅润滑脂或 DMS-T46 或 T51。我们的大多数客户都使用这种润滑脂,没有出现过问题" 。我怎样才能在上面使用一些油?这种油是介质还是用来保持测量的? 我不知道该怎么办了 :X 我正准备大规模生产出售呢,哈哈 再次感谢您! Re: MPX5010DP 'losing' pressure <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 你好,费利佩 在测量驻水高度时,传感器会随着时间的推移略有泄漏,但如果您使用的是 MPX5010DP CASE 867C-05,则这是泄漏最少的封装。或 867B-04 号案件。使用这些案例来最大限度地减少随着时间的推移漏电流,而不是 SOP 垂直端口或 SOP 侧端口封装。 此外,Tygon 管应该会有所帮助。一些客户使用类似于拉链的产品来固定管子。我们建议选择内径略小于 4.775 毫米的端口倒钩。稍稍加热导管,然后将导管滑入。冷却后,密封效果应该会很好。为了进一步固定,可以使用铁丝或非常小的拉链。请注意,由于空气和水蒸气可以穿过多孔的管材,因此有些管材也会随着时间的推移而慢慢泄漏。 希望对你有所帮助。 此致, 托马斯 PS: 如果我的回答有助于解决您的问题,请标记为"正确" 或 "有帮助"。谢谢。
查看全文
压力传感器 MPXM2051GST1 规格 在 2021 年 4 月 22 日的 MPXM2051G 规范第 5 版第 5 页,表 4 中的线性度显示最小为 -0.3,最大为 +3.0%Vfss。最大 +3.0% 似乎偏高。这个规格是否正确? Re: Pressure Sensor MPXM2051GST1 spec 亲爱的亚当 应用工程师确认,最大线性度值是个错别字,应该是 0.3%VFSS,而不是3%VFSS。 致以最崇高的敬意 约瑟夫 Re: Pressure Sensor MPXM2051GST1 spec 亲爱的亚当 感谢您所做的研究。根据您提供的新信息,我认为是的,最大值。线性值很可能是 0.3%VFSS,而不是 3%VFSS。我已联系应用工程师确认正确值,并要求修正数据表第 5 版中的错误,如果 0.3% 是正确的。我会让你知道应用工程师的答复。 致以最崇高的敬意 约瑟夫 Re: Pressure Sensor MPXM2051GST1 spec 约瑟夫 感谢您的回复。很抱歉给您添麻烦了,但在 MPXM2051G 规范的第 4 版中,线性度被列为 -0.3% 至 +0.3% ,第 4 页,表 3。MPXM2051G规格的修订版1、2和3也是如此。规范的第 4 次修订版附后。 修订版 5 规范的修订历史也未提及对线性度规范的修改。 谢谢您的帮助。 Adam M Re: Pressure Sensor MPXM2051GST1 spec 亲爱的亚当 很遗憾是的。MPXM2051GS 的线性误差如此之大。如果您需要线性误差更大的类似压力表传感器,可以使用MPX2050,它的线性误差为 +/-0.25% 。 请查看此链接,了解最高 115kPa 的其他差压和表压传感器。 致以最崇高的敬意 约瑟夫
查看全文