Multi Source Translation Content

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

Multi Source Translation Content

ディスカッション

ソート順:
Unable to remove write protection on NTAG213 after enabling password protection (AUTH0/ACCESS) Hello NXP Team, I am working with NTAG213 tags using the PN7160 NFC controller and the NXP Linux nfcDemoApp. What I have done successfully: I modified the nfcDemoApp (main.c) to enable write-only password protection on NTAG213 by configuring: PWD PACK AUTH0 ACCESS (PROT = 0) The write protection works correctly: Mobile NFC apps cannot write anymore Writing is possible only after sending PWD_AUTH from my application Reset AUTH0 to 0xFF Clear ACCESS Re-write configuration pages I also enabled write protection on another NTAG213 using NXP NFC TagInfo / NFC Tools app, and that also worked as expected. Problem I am facing: Now I am unable to remove the write protection in both cases: Using my own code (nfcDemoApp) Using NXP NFC Tools / TagWriter mobile apps Even after authenticating with the correct password (PWD_AUTH), attempts to: are failing . My understanding: From the NTAG213 datasheet, I understand: PWD_AUTH should allow writing to protected pages during the RF session After authentication, it should be possible to modify AUTH0 and ACCESS NTAG213 does not have permanent lock bits for password protection (unlike lock bytes) However, in practice, I am unable to revert the tag back to an unprotected state. Questions: Is it officially supported to remove or disable password-based write protection on NTAG213 after it has been enabled? Are AUTH0 and ACCESS pages writable after successful PWD_AUTH, or are they permanently protected once set? Is there a recommended sequence to restore NTAG213 to a writable (unprotected) state? Can NXP NFC Tools / TagWriter remove password protection on NTAG213, or is custom raw command handling required? Is full reset (RF session reset / power cycle) required after authentication to modify configuration pages? Any guidance or clarification from the NXP team would be very helpful. Thank you for your support. Best regards, Niranjan Re: Unable to remove write protection on NTAG213 after enabling password protection (AUTH0/ACCESS) I use the RFIDDiscover. It is able to change the settings in configuration page to remove the protection.
記事全体を表示
S32K312、VKMS、Csm_KeyElementGetの出力パラメータを指定する こんにちは、CRT チーム: 元のチケットは次のとおりです: VKMS-HSE-Specify-the-output-parameters-of-Csm-KeyElementGet お客様: 延峰 プロジェクト: VWプロジェクト 弊社のお客様である Yanfeng は、プロジェクトで VKMS HSE FW + S32K312 を使用しています。 VW 車載での VKMS 機能テスト中に、テスト結果の 1 つが理論値と一致しませんでした。現地チームとお客様による初期評価によると、この問題は出力パラメータに関連しているようです。  Csm_KeyElementGet() 。   下の図に示すように、RTD 400P21 内の VKMS デモでも同様の現象が発生しました。         お客様の現在の質問は次のとおりです。   実行後にVkms_u32ResponseLengthの戻り値が3になるのはなぜですか? トレーニングカウンターを取得するには Csm_KeyElementGet(CsmConf_CsmKey_CsmKey_0xF0010002, 0xF0010002U, Vkms_au8Response, &Vkms_u32ResponseLength ); ?   お客様の説明によると、理論的にはこの戻り値は次のようになります。 1つのキーのメタデータが必要な場合: 5 すべてのキーのメタデータが必要な場合: 1+ * 6 確認を手伝っていただけますか? よろしくお願いいたします。 ジェン LIN ボード: S32K312 コンポーネント: HSE FW コンポーネント: セキュリティ暗号 優先度: 中 SWバリアント: カスタム タイプ: 問題 Re: S32K312, VKMS, Specify the output parameters of Csm_KeyElementGet こんにちは、クオンさん。 以下の情報をご覧ください: - S32K3 RTDバージョン: RTD 4.0.0 P21 - プラットフォーム: S32K312 - HSE FW バージョン: 9.2.26.0 - 暗号設定ファイル:チケットに記載されているように、RTDのVKMSデモプロジェクトでテストしてください。 - CsmKey_0xF0010002 には何が保存されており、理論上の期待値はどれくらいですか?チケットに記載されている通り、RTD の VKMS デモプロジェクトでテストを実施しており、CTM は RTD デモの結果を明確にしたいと考えています。 よろしくお願いいたします。 ジェン LIN Re: S32K312, VKMS, Specify the output parameters of Csm_KeyElementGet こんにちは@ZhengLin お客様環境に関する詳細情報を教えていただけますか? - S32K3 RTDバージョン - HSE FWバージョン - 暗号設定ファイル - CsmKey_0xF0010002 には何が格納されていますか? また、予想される理論値はどれくらいですか? Re: S32K312, VKMS, Specify the output parameters of Csm_KeyElementGet こんにちは、クオンさん。 このCASEについて何か最新情報はありますか? よろしくお願いいたします。 ジェン LIN Re: S32K312, VKMS, Specify the output parameters of Csm_KeyElementGet こんにちは、クオンさん。 お客様は、 Audiから提供された文書から以下の理論的な情報を入手しました。この情報は当社と共有できませんが、必要に応じてお客様とのオンライン会議を設定することはできます。 よろしくお願いいたします。 ジェン LIN
記事全体を表示
需要免费的带设计 stdio 的 RTOS - FS32K144HAT0MMHT 我的汽车固件需要 FreeRTOS 和用于 FS32K144HAT0MMHT 的 S32 Design Studio。 Re: Need Free RTOS with Design stdio - FS32K144HAT0MMHT 请创建新的主题或新的支持票据,这与 FreeRTOS 无关。 谢谢! BR,丹尼尔 Re: Need Free RTOS with Design stdio - FS32K144HAT0MMHT 你能否解释一下如何从固件的角度满足 ASIL-B 要求,并具体说明需要为 FS32K144HAT0MMHT 实现的固件元器件或功能? Re: Need Free RTOS with Design stdio - FS32K144HAT0MMHT S32K144 硬件及其功能安全旨在支持最高达到 ASIL B 的 ISO 26262 合规性。但是,这并不意味着 MCU 本身已获得 ASIL B 认证,它是一个可用于 ASIL B 系统的元器件,整个系统只能通过认证。 BR,丹尼尔 Re: Need Free RTOS with Design stdio - FS32K144HAT0MMHT FS32K144HAT0MMHT 数据表中提到的 ASIL B 已准备就绪...附图......我怎样才能获得 ASIL B 认证? ASIL_B.JPG Re: Need Free RTOS with Design stdio - FS32K144HAT0MMHT 没有符合 ASIL-B 标准的图书馆。 汽车软件包 S32K1 — 功能安全外设驱动器 (SPD) 仅包含以下驱动程序: 适用于 S32K1 的 扩展 MCEM 驱动程序 ,版本 1.0.1 https://www.nxp.com/webapp/swlicensing/sso/downloadSoftware.sp?catid=SW32K1-SPD-D&_gl=1*ao7djc*_ga*MTQ0OTI3OTU5MS4xNzY1ODc1NTYx*_ga_WM5LE0KMSH*czE3NjU4NzU1NjAkbzEkZEkdDE3NjU4NzY2MDMkajIxJGwwJGg5MjM4OTU2MDE. 该驱动程序兼容 S 32K1_S32M24x 实时驱动程序 ASR R21-11,版本 2.0.0 P04。 此致, 丹尼尔 Re: Need Free RTOS with Design stdio - FS32K144HAT0MMHT 能否请您指导我如何将ASIL B 评估库导入我的 S32K144 Free RTOS 项目? Re: Need Free RTOS with Design stdio - FS32K144HAT0MMHT 你好,@ARIVALAGAN、 S32K1 FreeRTOS 10.5.1 版本 2.0.0 是 S32K1xx 参考软件的一部分:https://www.nxp.com/webapp/swlicensing/sso/downloadSoftware.sp?catid=SW32K1-REFSW-D 该版本与SW32K1_S32M24x_RTD_4.4_R21-11_2.0.0_D2308兼容。 https://www.nxp.com/webapp/swlicensing/sso/downloadSoftware.sp?catid=SW32K1-RTD44-D 首先将此 RTD 版本安装到S32 Design Studio S32DS 3.5 Update 4 。 此致, 丹尼尔
記事全体を表示
在 i.MX8MP 上使用 TP2860 进行去隔行扫描(已启用 ISI 编织) 你好 我目前正在使用连接到 i.MX8MP 板的 TP2860 解码器。我的输入源是一台 NTSC(720x480i)摄像机。 为了处理隔行扫描信号,我在驱动程序中应用了 ISI 编织补丁。在运行 GStreamer 流水线时,虽然视频输出在大多数情况下看起来正常,但我偶尔会遇到严重的视觉伪影(如附图所示)。 [当前设置& 观察结果] 硬件:i.MX8MP 定制板 + TP2860 输入:NTSC (720x480i) 软件: ISI 编织补丁用于去隔行扫描。 问题:输出间歇性地显示错位线或"combing" 伪影,看起来像是字段同步问题。 假设:我怀疑输入框字段顺序(顶部字段优先/底部字段优先)没有被正确固定,或者在运行期间在 EVEN/ODD 和 ODD/EVEN 之间随机切换。 附图 sjjin89_0-1765869049756.png [问题] 在 i.MX8MP 上使用 ISI 编织方法时,是否有人遇到过类似的字段交换问题? TP2860 中是否有特定的寄存器设置或 ISI 驱动程序中的配置来严格执行字段顺序? 是否建议使用其他补丁或调试步骤来验证 CSI-2 接口上的字段 ID 是否被错误切换? 如果能就如何解决这个间歇性同步问题提出任何见解或建议,我将不胜感激。 顺祝商祺! sjjin Linux 多媒体 Yocto Project Re: de-Interlacing with TP2860 on i.MX8MP (ISI Weaving Enabled) 建议您根据以下链接尝试混合去隔行扫描 https://community.nxp.com/t5/i-MX-Processors-Knowledge-Base/ISL79987-and-adv7180-de-interlace-driver-for-iMX8QXP-boards/ta-p/1124075 并尝试使用 v4l2-ctl 在没有显示器的情况下捕获视频,以检查问题是否已消失 Re: de-Interlacing with TP2860 on i.MX8MP (ISI Weaving Enabled) 你好,joanxie、 感谢您的反馈, 使用 v4l2-ctl 执行帧捕获时,输出为 29.97 fps。 我使用的命令如下: v4l2-ctl -d3 --set-fmt-video=width=720,height=480,pixelformat=YUYV --stream-mmap 此外,您建议改用混合方法,但您提到的补丁似乎是针对 imx8qxp 的。 在 i.MX8MP 上应用此补丁时,是否有任何具体的注意事项或预防措施? 致以最诚挚的问候, sjjin Re: de-Interlacing with TP2860 on i.MX8MP (ISI Weaving Enabled) 嗨 ,@ joanxie 和 @sjjin89 、 我还使用 iMX8MP + TP2860 视频解码器在内核 6.6 上对 PAL/NTSC 隔行扫描摄像机进行流式处理。不过,我也遇到了同样的问题,即串流有时运行正常,但有时会出现奇数/偶数线路抖动或"梳理" 效果不一致的情况。   我试着应用下面链接中的补丁,但它适用于内核版本较旧的 iMX8QXP,与最新内核的摄像头 ISI 驱动程序不匹配: ISL79987 和 adv7180 去隔行驱动程序适用于 iMX8QXP 板   能否就使用最新内核的 iMX8MP 的去隔行扫描和混合方法提供指导? 顺祝商祺! Prashanth K Re: de-Interlacing with TP2860 on i.MX8MP (ISI Weaving Enabled) 你可以使用 v4l2-ctl 捕获视频并将其保存为文件,然后检查文件视频是否稳定,因为我提到的补丁适用于 imx8qxp,但它们使用相同的 ISI IP,你可以参考一下,因为我没有 TVIN 设备可以测试,所以无法在我这边重现这个问题,让我看看我能不能找到或者如何重现这个,任何进一步的信息,我会再和你分享 Re: de-Interlacing with TP2860 on i.MX8MP (ISI Weaving Enabled) 你好@joanxie、 我已使用" L5.4.70_2.3.0_ISL7998x_Patch.7z" 补丁来应用 P2860 视频解码器输出的去隔行扫描 PAL 摄像头的混合方法。但出现"半屏绿色" 问题,如附件所示。 v4l2 日志如下。 ~# v4l2-ctl --device=/dev/video3 --all 驱动程序信息: 驱动程序名称:mxc-isi-cap_v1 卡类型:mxc-isi-cap_v1 总线信息:platform:32e02000.isi:cap_devic 驱动程序版本:6.6.36 功能:0x84201000 视频捕获多平面 流 扩展 Pix 格式 设备容量设备上限:0x04201000 视频捕获多平面流扩展 Pix 格式 优先级:2 格式 视频捕获多平面: 宽度/高度:720/576 像素格式:'YUYV'(YUYV 4:2:2 ) 字段:隔行平面数量:1 标志:色彩空间:sRGB 传输功能 :默认 ycBB CR/HSV 编码:ITU-R 601 量化 :全 范围平面 0:每行字节数: 1440 尺寸图片:829440 裁剪能力视频输出: 边界:左 0,顶部 0,宽度 720,高度 576 默认值:左 0,顶部 0,宽度 720,高度 576 像素长宽度:1/1 选择视频输出:撰写,左 0,顶部 0,顶部 0,高度 576,标记:选择视频输出:compose_default,左 0,宽度 720,高度 576,标志: 精选视频输出:compose_bounds,左 0,顶部 0,宽度 720,高度 576,标记: 用户控制 horizontal_flip 0x00980914 (bool) : default=0 value=0 vertical_flip 0x00980915 (bool) : default=0 value=0 alpha_component 0x00980929 (int) : min=0 max=255 step=1 default=0 value=0 根据补丁中的建议,DTS ISI 条目如下、 &isi_0 { status ="okay"; deinterlace_mode =<4>; ntsc_top =<0> ; cap_device { status ="okay"; }; m2m_device { status ="okay"; }; }; &isi_1 { status ="okay"; deinterlace_blending; ntsc_top =<0> ; cap_device { status ="okay"; }; m2m_device { status ="okay"; }; }; 目前我在 imx8MP 自定义板上使用 6.6 内核。我是否遗漏了与去隔行扫描混合相关的内容? 顺祝商祺! Prashanth K Re: de-Interlacing with TP2860 on i.MX8MP (ISI Weaving Enabled) 很抱歉我的回复晚了,因为正值假期,大部分工程师都在休假,我已将此问题上报给内部团队,请等待回复。
記事全体を表示
i.MXRT1052 で RTC 電力消費を最適化する方法は? こんにちは、NXPさん i.MXRT1052 の iRTC 電力消費を最適化し、リチウム セル バッテリーのサービス時間を延長します。 いくつかヒントを教えていただけますか? ありがとうございました。 追加: 電源モードを SNVS にスイッチで切り替える方法はわかっていますが、最適化する方法の詳細はわかりません。 i.MXRT 105x Re: How to optimize RTC power consumption in i.MXRT1052? こんにちは、ギャビン。 わかった。 ありがとうございました。 Re: How to optimize RTC power consumption in i.MXRT1052? こんにちは@jimmyli 、 NXP MIMXRTシリーズにご興味をお持ちいただきありがとうございます。 結論から言うと、RT1052 の場合、SNVS モードでの通常の消費電力は約 20μA になるはずです。これは MCU の消費電力が最も低いモードです。AN12094では規定の測定値は14μAです。 詳細については、次の 2 つの AN を参照してください。 1. https://www.nxp.com/docs/en/application-note/AN12094.pdf 2. https://www.nxp.com/docs/en/application-note/AN12085.pdf さらに、SDK の power_switch デモでは、さまざまな低電力モードを開始および終了する方法が示されており、良い出発点として役立ちます。さらに、SNVS モードがまだ正しく機能しない場合は、専門家が作成した中国語のチェックリストを使用して各ポイントを確認できます: https://mp.weixin.qq.com/s/11WWaLalcj0WSFHfNUfHdQ よろしくお願いします、 ギャビン
記事全体を表示
如何运行 core-image-tiny-initramfs.cpio.gz(或 ramfs / ramdisk.gz)?从 SD 卡 你好 使用 8Mplus 评估板,我们需要运行 core-image-tiny-initramfs 或 SD 卡中的 ramfs。我可以版本镜像,但找不到正确的uboot命令来使用它。我在其他文章中看到了 core-image-tiny-initramfs.cpio.gz 的参考,但是这些帖子没有列出 uboot 命令。 我试过这些命令: setenv loadramdisk " load mmc 2:2 0x80000000 /启动/ramdisk.gz " setenv ramargs " setenv bootargs ${mmcargs} root=/dev/ram0 rw rootfstype=ext4 ramdisk_size=0x20000000 " setenv ramboot " echo 从 ramdisk 启动...;运行 ramargs;bootz ${loadaddr} 0x80000000 ${fdt_addr_r} " setenv bootcmd " run loadfdt loadramdisk ramboot " 我总是得到错误信息"zimage:Bad magic!" 我怀疑问题出在地址上。根据 imx8mp-evk.dtb 的来源,内存地址应该是有效的,但没有来自 uboot 的信息。 谢谢, Scott i.MX 8M | i.MX 8M Mini | i.MX 8M Nano Re: How to run core-image-tiny-initramfs.cpio.gz (or ramfs / ramdisk.gz) from an SD card 嗨,@goodspeed,@ScottSJ,@kimease、 目前正在开发 i.MX8M Plus EVK 板,并想使用 initramfs (ramfs.img / ramfs.cpio.gz) 启动文件系统作为根文件系统,直接从仅具有启动分区的 SD 卡加载 (FAT32)。 SD 卡不包含单独的根文件系统分区。 当前设置 SD 卡仅包含一个 FAT32 启动分区 FAT32 分区上的文件: 镜像(u-boot+内核) 设备树 Blob (.dtb) initramfs 映像(cpio.gz) 以下是确切的 U-Boot 命令和行为。 使用的 U-Boot 命令 u-boot= > setenv bootargs console=ttymxc1,115200 root=/dev/ram rw u-boot= > fatload mmc 1:1 Image_copy.gz 在${loadaddr} 282 毫秒内读取 13450466 字节 (45.5 MiB/s) u-boot= > fatload mmc 1:1 imx8mp-evk.dtb 在${fdt_addr} 4 毫秒内读取 82784 字节 (19.7 MiB/s) u-boot= > fatload mmc 1:1 core-image-minimal-initramfs-imx8mp-ddr4-evk.cpio.gz 在${ramdisk_addr_r} 264 毫秒内读取 12602736 字节 (45.5 MiB/s) u-boot= >${loadaddr}${ramdisk_addr_r} 启动:${filesize}${fdt_addr}   执行 booti 命令后,内核开始启动,但它不会挂载或使用 initramfs (cpio.gz) 作为根文件系统。 我附上了完整的内核启动日志以供参考。 问题 内核不加载 initramfs (cpio.gz)的可能原因是什么?尽管 U-Boot 已将其正确加载到内存中? 是否有任何支持 initramfs 所需的强制内核配置选项需要我验证? 在 i.MX8M Plus 上使用 initramfs 启动时的 bootargs 配置是否正确,还是需要其他参数? Re: How to run core-image-tiny-initramfs.cpio.gz (or ramfs / ramdisk.gz) from an SD card 我注意到你说过 " 我确实有在 SD 卡上使用常规 rootfs 启动的步骤,但我们需要两个环境 "。 建议您阅读 SWUpdate OTA i.MX8MM EVK_rev3.pdf 第 35 页。 swUpdate OTA i.mx8mm EVK/i.mx8QXP MEK-恩智浦社区 也许这就是你想要的。 1.png Re: How to run core-image-tiny-initramfs.cpio.gz (or ramfs / ramdisk.gz) from an SD card 也许这个演示能帮到你。 它只是一个 u-boot booti 命令。您可以根据内核映像格式(Image、zImage 等)将 booti 改为 bootz。 booti${loadaddr} ${initrd_addr} ${fdt_addr} initrd_addr 是 uramdisk_boot.rootfs.aarch64.img ramdisk 的位置/地址。 在你的情况下,应该是core-image-tiny-initramfs.cpio.gz。 |-- 0001-all-in-spi-demo-lf-5.10.72-2.2.0.patch --- 此演示的补丁文件|-- demo_binary| |-- flash.b0.bin --- b0 引导加载程序| |-- flash.bin --- c0 引导加载程序| |-- Image-imx8qxpc0mek.bin --- Linux 内核| |-- imx8qxp-mek.dtb --- 设备树| |-- uramdisk_boot.rootfs.aarch64.img --- RAM 磁盘| |-- uuu.qspi.all.b0.uuu --- b0 的 uuu 脚本| `-- uuu.qspi.all.uuu --- c0 的 uuu 脚本`-- readme.txt --- 此文件 https://community.nxp.com/t5/i-MX-Processors-Knowledge-Base/all-bootloader-device-tree-Linux-kernel-rootfs-in-spi-nor-demo/ta-p/1663994 Re: How to run core-image-tiny-initramfs.cpio.gz (or ramfs / ramdisk.gz) from an SD card 如果您不知道在哪里可以找到文件,也没关系。如果这是"基本知识" ,应该有相关文档,但我在网上搜索了很多次都没有找到。 我很清楚各种 " 启动 " 命令,也曾在其他平台上使用过它们。我已经查看了源代码和其他启动配置。我在查找 nxp 平台所需的具体数值和参数。这应该在 " core-image-tiny-initramfs " 版本中可用,但我找不到使用该图像的步骤。(我确实有在 SD 卡上使用常规 rootfs 启动的步骤,但我们需要这两个环境。) Re: How to run core-image-tiny-initramfs.cpio.gz (or ramfs / ramdisk.gz) from an SD card 我已经告诉过你! 而且它来自 u-boot 文档。这是一份文件 如果你查看 u-boot 帮助,你可以很容易地找到如何使用 ramdisk。 u-boot=> 帮助 booti booti - 从内存中启动 Linux 内核 “镜像” 格式 用法: booti [addr [initrd [: size]] [fdt]] -启动 Linux “映像” 存储在 “addr” 处自变量 “initrd” 是可选的,用于指定内存中初始化的地址。 可选的参数 ':size' 允许 指定 RAW 初始化文件的大小。 由于启动 Linux 内核需要平面设备树,因此需要 第三个参数来提供设备树 blob 的地址。 要使用设备树 blob 但 没有 initrd 映像启动内核,请使用 '-' 作为 initrd 参数。 如果你查看二进制版本 tar ball 中的 uuu 脚本 “example_kernel_emmc.uuu”,你就会发现如何使用虚拟磁盘。 FB:ucmd setenv fastboot_buffer ${loadaddr} FB:下载 -f _Image FB:ucmd setenv fastboot_buffer ${fdt_addr} FB:下载 -f _板.dtb FB: ucmd setenv fastboot_buffer${initrd_addr} FB: download -f _initramfs.cpio.gz.uboot #FB: ucmd setenv bootargs console=${console},${baudrate} earlycon=${earlycon},${baudrate} FB: acmd${kboot} ${loadaddr} ${initrd_addr} ${fdt_addr} FB:acmd ${kboot} ${loadaddr} ${initrd_addr} ${fdt_addr} u-boot= > 帮助 booti booti - 从内存中启动 Linux 内核“镜像”格式 使用方法: booti [addr [initrd[:size]]] [fdt]].[fdt]] kboot 这里是 booti loadaddr 这里是 addr initrd_addr 这里是 initrd,是 ramdisk,可能是 core-image-tiny-initramfs.cpio.gz 这里的 fdt 是 fdt_addr 还是那句话,我已经把一切都告诉你了!!!.....! "如果没有 initrd 映像,请在 initrd 参数中使用"-"。" 这就是为什么你经常在带有 linux 内核和设备树 dts 的启动命令行中看到 “-” 的原因。 因为大多数情况下不需要 ramdisk。 这只是 u-boot 的基础知识。非常基本。 Re: How to run core-image-tiny-initramfs.cpio.gz (or ramfs / ramdisk.gz) from an SD card 你好 是否有任何文档或信息如何使用所提供的 ramfs 配方? 谢谢, Scott Re: How to run core-image-tiny-initramfs.cpio.gz (or ramfs / ramdisk.gz) from an SD card 如果你查看 u-boot 帮助,你可以很容易地找到如何使用 ramdisk。 u-boot=> 帮助 booti booti - 从内存中启动 Linux 内核 “镜像” 格式 用法: booti [addr [initrd [: size]] [fdt]] -启动 Linux “映像” 存储在 “addr” 处自变量 “initrd” 是可选的,用于指定内存中初始化的地址。 可选的参数 ':size' 允许 指定 RAW 初始化文件的大小。 由于启动 Linux 内核需要平面设备树,因此需要 第三个参数来提供设备树 blob 的地址。 要使用设备树 blob 但 没有 initrd 映像启动内核,请使用 '-' 作为 initrd 参数。 Re: How to run core-image-tiny-initramfs.cpio.gz (or ramfs / ramdisk.gz) from an SD card 你好 谁有答案?是否有使用提供的 core-image-tiny-initramfs 的文档? 谢谢, Scott Re: How to run core-image-tiny-initramfs.cpio.gz (or ramfs / ramdisk.gz) from an SD card 你好 我们需要从单个 uboot 启动多个内核和/或 ramfs。目标可以在 uboot 代码中确定,它可以设置适当的环境变量。我们已经在其他系统上做到了这一点,所以在这里也应该可以做到。 我们已经有了检测和使用不同内核的代码。我们需要采取步骤来启动 ramfs。 谢谢, Scott Re: How to run core-image-tiny-initramfs.cpio.gz (or ramfs / ramdisk.gz) from an SD card 你好 如果你只想版本 uboot,为什么不使用独立的 uboot?有关更多详细信息,请参阅第 3 章 移植 U-启动。 https://www.nxp.com/docs/en/user-guide/IMX_PORTING_GUIDE.pdf 此致
記事全体を表示
LS1043A MSI interrupts Dear Sirs, I am developing a bare metal PCIe Controller (RC) driver for LS1043A, using a LS1043ARDB board. I successfully: - setup all outbound ATUs programming (using LS1043A Linux device tree addresses for system and PCIe addresses and limits). - discover PCIe bus endpoint and setup them (BARs, etc). - setup GIC. - test endpoint legacy interrupts. Now, I am stuck on MSI interrupts. I am using LS1043A PCIe controller #3 (@ 0x3600000h), and an AX99100 serial/parallel device or an I350 ethernet endpoint, both supporting MSI. I setup all MSI capability registers on endpoints, and attempted to deliver the MSI interrupt in two different ways: A) without any inbound ATU, writing in the endpoint MSI address register the address of the SCFG_G2MSIIR register (0x1573000). B) with an inbound ATU, writing in the endpoint MSI address register the PCIe bus address that the inbound ATU maps to 0x1573000 on the system bus. In both cases, no interrupt is delivered to GIC. If I write by CPU to the SCFG_G2MSIIR (0x1573000) I see the proper interrupt (192,187,188,or 189) be delivered depending on the data value I write (0, 1, 2 or 3); therefore, I assume my GIC is properly configured and SCFG is working. What am I missing to have working MSI interrupts from endpoints? Best regards Eco Re: LS1043A MSI interrupts dear Eco56, For MSI interrupts on LS1043A PCIe controller, the proper configuration requires: - The MSI address register in your endpoint devices should point to SCFG_G2MSIIR register (0x1573000) as you've attempted. - Ensure the proper GIC interrupt line is configured for the corresponding PCIe controller #3 (interrupt 192, 187, 188, or 189 as you noted). - The PCIe controller must have MSI capability enabled in its configuration space. - Verify that the inbound ATU window is correctly mapping the PCIe address space to the system memory where SCFG_G2MSIIR (0x1573000) is located. - Ensure the ATU window size is sufficient and properly aligned. - Check that transaction attributes are properly configured (No Snoop and Relaxed Ordering should be set to 0). - For your direct approach without inbound ATU: Since you can write directly to SCFG_G2MSIIR and see interrupts delivered to GIC, your GIC configuration appears correct. Try enabling the Bus Master capability for your endpoints to ensure they can initiate memory write transactions. Also verify that the endpoints' MSI capability registers are properly configured, particularly the MSI Enable bit. BR LFGP Re: LS1043A MSI interrupts Dear Sirs, I'm facing the same problem using the LS1043ARDB, and I believe I’m still missing something on the RC side. I’m testing with PCIe controller #2 (same behavior observed on controller #3). For controller #2 I’m using SCFG_G2MSIIR = 0x1572000. First of all, if I manually write from the CPU to 0x1572000, I correctly receive the MSI interrupt on the GIC, so the SCFG and GIC configuration look fine, as reported in eco56. Also, I am enabling No‑Snoop = 1 and the coherency mapping, as described in the LS1043A documentation. When I program the i350 endpoint to generate MSI: If I don’t configure any inbound iATU, as soon as the device triggers MSI I receive interrupt 160 (PCIe config/error interrupt). This makes me think the MSI Memory Write TLP is reaching the RC, but the RC is not able to translate it properly. (if I use legacy interrupt, it trigger the proper legacy interrupt) If I configure an inbound iATU, the config/error interrupt disappears, but I still don’t receive any MSI on the GIC. This is the inbound iATU configuration:     writel(0x80000000, pcie_rc->dbi + 0x900);       writel(0x00000000, pcie_rc->dbi + 0x904);       writel(0x01570000, pcie_rc->dbi + 0x90C);       writel(0x00000000, pcie_rc->dbi + 0x910);     writel(0x01573FFF, pcie_rc->dbi + 0x914);     writel(0x01570000, pcie_rc->dbi + 0x918);       writel(0x00000000, pcie_rc->dbi + 0x91C);       writel(0x80000000, pcie_rc->dbi + 0x908); With this configuration, I’m defining an inbound memory window that maps the PCIe address range 0x01570000 – 0x01573FFF into the same range on the system bus, so that inbound PCIe Memory Write transactions targeting 0x1572000 (SCFG_G2MSIIR for controller #2) should be translated and forwarded to the SCFG block. With this inbound window enabled, I no longer see the PCIe error interrupt, which seems to confirm that the inbound MSI write is now accepted by the RC. However, I still do not see any MSI interrupt being delivered to the GIC when the endpoint generates MSI. Could you please confirm if this setup is correct, or if there is any additional RC‑side configuration required to get MSI delivered to the GIC? Riccardo
記事全体を表示
受 NFC 保护的 NTAG 问题 你好 我使用的是恩智浦标签 NTP5332,使用定制的移动应用程序通过 NFC 发送命令时,我实际上遇到了问题。在 NFC 方面,我在写入受密码保护的存储区域时遇到了问题。要读取受保护的内存区域,我按照上述命令顺序进行操作,只将密码标识符改为 0x01,并将操作改为读取;在这种情况下,读取操作是成功的。如果取消了防止读写的密码保护,则读取和写入命令可以正常运行。 有人能帮我解决这些问题吗?我是不是发错命令了? 谢谢您的帮助! Re: Problem with NTAG protected in NFC side 你好@NSF 希望你一切顺利。 请确认您要写入的是哪个内存区域(用户内存还是配置内存)? 您的保护指针和相关条件的配置是什么? 您是否对试图写入的区域执行过锁定操作?NFC 锁块配置块的值是多少? 我们建议您使用TapLinx SDK。该SDK为智能手机中的免接触式应用程序开发提供了一些工具。开放式应用程序接口允许开发人员访问恩智浦 NFC 产品组合的所有硬件功能。它为快速、轻松地开发轻量级应用程序提供了一个功能子集。 Eduardo。 Re: Problem with NTAG protected in NFC side 您好, 请尝试在读取和写入时都执行 SET PASSWORD,然后尝试写入程序块。 Eduardo。 Re: Problem with NTAG protected in NFC side 你好@EduardoZamora   感谢您的答复!   以下是 NFC 标签的配置:   reg. 0x1037(配置字节):[0]:0x09;[1]:0x00;[2]:0x5f;[3]:0x00 Reg. 0x103F(设备网络安全配置):[0]:0x45;[1]:0x00;[2]:0xff;[3]:0xff -NFC 网络安全:普通密码 - 从 NFC 的角度看,配置区没有读写保护 - PP_AREA_1:0xFFFF(指向用户内存之外) 注册表 0x1020(读取密码):[0]:0x00; [1]:0x00; [2]:0x00; [3]:0x00 - 读取密码为 0x00000000 注册表 0x1021(写密码):[0]:0x00; [1]:0x00; [2]:0x00; [3]:0x00 - 写入密码为 0x00000000 注册表 0x1058(NFC 保护指针):[0]:0x08; [1]:0x30; [2]:0x00; [3]:0x00 - NFC_PP_AREA_0H: 0x08 - NFC_PPC:0x30(AREA_0-H 受写和读保护;AREA_0-L 不受读和写保护) 注册表 0x100C: [0]:0x00; [1]:0x81; [2]:0x00; [3]:0x00 - NFC_GCH: 0x81 (NFC 密码可通过 READ CONFIG(读取配置)读取和写入。 和 WRITE CONFIG 命令)。   内存组织 0x00 - 0x08 --> NFC_AREA_0_L(不受读写保护) 0x08 - 内存结束 --> NFC_AREA_0_H(读写受保护)   此致, NSF Re: Problem with NTAG protected in NFC side 您好, 有进展吗?我在写入受密码保护的内存区域时也遇到了同样的问题。 顺祝商祺! Re: Problem with NTAG protected in NFC side 您好, 尝试以下顺序: - SELECT NTAG - Get Random Number - SET PASSWORD for PID 01 - SET PASSWORD for PID 02 - Write to register 0x14 Eduardo。 Re: Problem with NTAG protected in NFC side 你好@EduardoZamora 谢谢您的答复。 在我发送的截图中,你可以看到在 SET PASSWORD 命令中,我使用 0x01 读取,0x02 写入。从我运行的测试来看,只有READ命令在读取保护内存区域中有效。为了在写保护的内存区域中写入,我使用了以下命令集: -使用密码标识符 0x02 设置密码;这个命令有效; -例如,在寄存器 0x14 中写入;此命令返回 0x01 0x0F。 根据我进行的这些测试和我在之前的回复中发送的寄存器值,您能在您的终端复制相同的情况吗? 寄存器值或命令中是否存在配置错误? 感谢您的帮助。 NSF
記事全体を表示
FRDM-MCXN947 上の Zephyr + CAN、ビットレートが仕様外 / クロック こんにちは、みんな、 現在、プロジェクト用の新しい SoC を評価中です。このために、FRDM-MCXN947 評価ボードを使用します。これには CAN-FD ポートが含まれます。私は Zephyr / MCXN の初心者ですのでご了承ください。 CAN IP を評価しても、他のデバイスと通信できませんでした。スコープで確認すると、ビットレートが仕様から大きく外れていることがわかりました (118kBit / 125kBit、943kBit / 1000kBit)。これは私のテスト アプリケーションと Zephyr の例 (west flash frdm_mcxn947/mcxn947/cpu0 Zephyr/samples/ドライバ/CAN/babbling/) を使用したものなので、何らかのクロック設定の問題があると考えられます。 関連すると思われる部品を、evaboard (board.c) の一部として見つけました。デバイスツリーnxp_mcxnx4x_common.dtsi #DT_NODE_HAS_STATUS_OKAY(DT_NODELABEL(flexcan0)) の場合 CLOCK_SetClkDiv(kCLOCK_DivFlexcan0Clk、1U); CLOCK_AttachClk(kFRO_HF_to_FLEXCAN0); #endif flexcan0: can@d4000 { 互換性 = "nxp、flexcan"; レジスタ = <0xd4000 0x4000>; 割り込み = <62 0>; 割り込み名 = "common"; クロック = <&syscon MCUX_FLEXCAN0_CLK>; clk-source = <0>; ステータス = "無効"; }; いずれのラベリングも Zephyr OS の一部ではないようです。これを正しく設定する方法についてヒントを教えていただけますか? 助けてくれてありがとう! Re: Zephyr + CAN on FRDM-MCXN947, Bitrate out of spec / Clocks こんにちは@mwagner1 frdm_mcxn947.overlayファイルを追加してみてください &flexcan0 { status = "okay"; clock-frequency = <48000000>; bitrate = <125000>; sample-point = <875>; bus-speed-data = <1000000>; sample-point-data = <750>; }; BR ハリー Re: Zephyr + CAN on FRDM-MCXN947, Bitrate out of spec / Clocks これにより、dt のコンパイル エラーが発生します。 デバイスツリーエラー: /home/user/project/build/Zephyr/zephyr.dts.pre の /soc/peripheral@50000000/can@d4000 に 'clock-frequency' が表示されます。しかし、/home/user/project/zephyr/dts/bindings/can/nxp,flexcan.yaml の 'properties:' では宣言されていません。 以下はコンパイルされますが、ビットレートはまだ間違っています。 &flexcan0 { ステータス = "正常"; // クロック周波数 = <48000000>; ビットレート = <125000>; サンプルポイント = <875>; // バス速度データ = <1000000>; // サンプルポイントデータ = <750>; }; Re: Zephyr + CAN on FRDM-MCXN947, Bitrate out of spec / Clocks こんにちは@mwagner1 申し訳ありませんが、この問題を再現CAN。それは時計の問題だと思います。 社内チームと協議する必要がありますので、何かニュースがあればすぐにお知らせします。 BR ハリー Re: Zephyr + CAN on FRDM-MCXN947, Bitrate out of spec / Clocks ありがとう、これで問題は解決しました。 #DT_NODE_HAS_STATUS_OKAY(DT_NODELABEL(flexcan0)) の場合 CLOCK_SetClkDiv(kCLOCK_DivFlexcan0Clk、3U); CLOCK_AttachClk(kPLL0_to_FLEXCAN0); #endif Re: Zephyr + CAN on FRDM-MCXN947, Bitrate out of spec / Clocks こんにちは@mwagner1 社内チームに確認しました。このビットレート精度の問題はクロック ソースによって発生します。ファイルfrdm_mcxn947/board.c ボードのクロックを設定し、内部 FRO からクロックを供給します。アプリケーションとカスタムボードがこのボードをカスタマイズすることが予想されます。c必要に応じてファイルを変更するには、 Zephyrのクロック設定を参照してください。 。 https://github.com/zephyrproject-rtos/zephyr/pull/98900には、このボードの CAN FD サポートを有効にするオープン プル リクエストもあり、その PR では、必要な精度を実現するために、代わりに PLL0 からクロックするように board.c が変更されています。 参考にして頂ければ幸いです。 BR ハリー
記事全体を表示
Waylandの代わりにi.MX8 X11Libre NXP に触れてからかなり時間が経ちました。新しいプロジェクトを始める前に、Wayland を完全に削除してX11Libreに置き換えるビルド レシピがあるかどうか確認してみようと思いました。現在、多くの/ほとんどの Linux デスクトップ用のパッケージが用意されています。前回、私たちはプロジェクトに NXP 製品を選択しましたが、Wayland が強制されました。そのせいでプロジェクトは失敗しそうになった。それ以来、ウェイランドの状況は改善していない。Qtcでさえこの投稿を非難している https://gitlab.freedesktop.org/wayland/wayland-protocols/-/merge_requests/264 Wayland のひどい機能性を弁解しようとする。 X11Libre のメイン プロジェクト ページはここにあります。 SO、NXP は現在、i.MX8 以降の製品用のツール チェーンを使用して Wayland を完全に削除し、大幅に改善された X11Libre をインストールできるようになっているのでしょうか? もう二度とウェイランドに耐えるつもりはない。別の ARM ベンダーまたはまったく別のモジュールを選択します。 よろしくお願いします!
記事全体を表示
LPCDを動作させる方法 私は pn5180 ボードを持っており、NRF Cockpit を動作させ、NFC カードを読み取ることができます。 LPCD をどうやって動作させるかが知りたいのですが、何らかのガイドラインがあれば教えていただきたいです。 何らかの方法でチップを調整する必要がありますか? LUT などを作成する必要がありますか? 何らかのしきい値を設定したり、自動キャリブレーションを調整したりする必要がありますか? 自動キャリブレーションを試みましたが、うまくいきませんでした... よろしくお願いします! Re: How to get LPCD to work こんにちは@dakhnod あなたの調子が良いといいのですが。 PN5180 評価ボードのクイック スタート ガイドのセクション 4.9 を参照してください。このセクションでは、NFC コックピットを使用して PN5180 LPCD を構成およびテストする方法について説明します。また、次のコミュニティ記事も役立つかもしれません: PN5180 LPCD の構成方法。 よろしくお願いいたします。 エドゥアルド。
記事全体を表示
如果只使用两个通道,i.MX8M-Mini SAI1-TX 支持 768kHz/32 位 IMX8MMRM 第 13.1.1.4 章音频接口列表显示 SAI1-TX 支持 384kHz 32bit x 8 通道。 不过,SAI2-TX 规定的频率为 768kHz 32 位 x 2 个通道。 如果禁用其余通道,请反馈 SAI1-TX 能否处理 768kHz 32 位 x 2 通道。 如果是,请反馈在禁用其余通道的情况下,SAI1-TX 能否处理 768kHz 32 位 x 4 通道。 感谢和问候,克里斯托夫 Re: i.MX8M-Mini SAI1-TX support for 768kHz/32 bit if only using two lanes 根据我们的测试,SAI1 的频率限制为 768kHZ,这意味着可以支持 768Khz、32 位和 2 个通道,但我们只测试了 768khz、16 位和 2 个通道,限制的 BCLK 应该是 49.152 Re: i.MX8M-Mini SAI1-TX support for 768kHz/32 bit if only using two lanes 亲爱的琼 非常感谢你的答复。 请允许我重新提问: 客户是否应将 i.MX8M-Mini 的 SAI1 更改为 SAI2,以支持 768kHz 32bitx 2 通道 I2S? 还是说这样做没有意义,因为 SAI2 在这方面并不比 SAI1 好? 两个端口(SAI1 和 SAI2)上的 I2S BCLK 和 I2S MCLK 频率限制为 49.152MHz。 如果有任何理由说明 SAI2 在这方面优于 SAI1,请与我们分享。 感谢和问候,克里斯托夫
記事全体を表示
S32K348 セットロックコア こんにちは、 回答するのに助けが必要な質問が 3 つあります。ありがとうございます。 1. ロックコアサンプルを提供できますか? 2. CANの機能を確認するにはどうすればいいですか? Re: S32K348 set lockcore こんにちは、 1. ロックコアのサンプルを提供できますか? ロックステッププログラミングの例のことですか? S32K348 にはデュアル Arm Cortex-M7 コアが搭載されていますが、ロックステップで自動的に構成されません。デフォルトでは、非対称または対称マルチプロセッシング モードで実行されます。 ロックステップに切り替えるには、DCF レコード - UTEST_MISC[LOCKSTEP_EN] をプログラムします。 詳細については、リファレンスマニュアルに添付されている DCF クライアント ファイルを参照してください。   プログラミングには、Thread内のこの例を使用できます: C40_Ip_Example_S32K344.zip https://community.nxp.com/t5/S32K/S32K344-ロックステップカーネル/mp/1934901   2. 機能を確認するにはどうすればいいですか? 読み取り専用 GPR On Functional Reset 19 (DCMROF19) レジスタで確認できます。 DCM_GPR ベースアドレス: 402A_C000h DCMROF19-オフセット348時間 petervlna_0-1765179477346.png よろしくお願いいたします。 ピーター
記事全体を表示
错误代码为 102。 我有 S32G-VNP-RDB2 板和 S32 调试探头。 我尝试在版本到示例项目后进行调试。 但调试失败,错误代码如下(错误代码为 102)。 原因可能是什么? youngdae_0-1651127942343.png Re: S32 Debug Probe error code is 102. 嗨 , 当我使用 S32 调试探针时,也出现了同样的问题。 zhipeng_1-1765187216931.png 1.电源正常 2.JTAG 原理图 ↓ zhipeng_0-1765187074548.png 3.SD选择 示意图尝试上拉和下拉 zhipeng_0-1765187679813.png   问题出在哪里?谢谢。       Re: error code is 102. 修复提示 打开或关闭 Windows 防火墙功能 检查代理服务器设置 更改 Windows 适配器设置 对 Windows PC 进行全面扫描 清除 Internet 浏览器 Cookies& 缓存 在 CMD 中清除 DNS 解析器缓存 此致, 雷切尔-戈麦斯 Re: error code is 102. 你好 Youngdae、 从您提供的有限信息中很难确定原因,不过,造成连接问题的一些常见原因如下: 1) S32 调试探头未通电。通常在使用以太网连接时,人们很容易忘记以太网不提供电源。 2) EVB 没有供电。有时需要更改跳线设置,更改跳线设置后应关闭板的电源,但是之后很容易忘记重新打开电源开关。需要注意的是,RDB2 板上的电源开关有 3 个位置,其中只有一个可以正确地为板供电,请检查您选择的开关位置是否正确。 3) JTAG 电缆未完全固定在 S32 调试探设备端或 EVB 端的连接器上。 4) 连接 JTAG 电缆和 S32 调试探测设备的探针尖端未完全固定在 S32 调试探测设备的连接器上。 5) 开发板设置为从 SD 卡启动,SD 卡装有 Linux 电路板支持包并安装到 SD 卡插槽中。Linux 电路板支持包可能会干扰 S32 调试探器与目标的通信。 6) S32 调试探针有特定的电压要求(在随附的 S32 调试探针用户指南中有具体说明)。如果使用的电源与 RDB2 套件中包含的电源不同,则 JTAG 线路上的电压可能不适合 S32 调试探针的使用。 我建议您尝试使用调试配置菜单中的 "测试连接 "按钮,以确认硬件设置和通信设置是否正确。这比仅使用 "调试 "按钮检查连接状态要快得多。 如果您确认了以上所有内容,但仍然无法正常工作,请与我们联系。 顺祝商祺! Mike
記事全体を表示
ARM 2.2用S32DS インストールした Arm 2.2 用の S32DS からインポートしたルーチンをコンパイルできません。利用できる SDKs オプションはなく、拡張機能のマネジメントも開くことができません。ツールチェーンにもエラーが発生しました。IDEs を再インストールしても機能しませんでした。 NXP error.png   Re: S32DS for ARM 2.2 こんにちは@ NanMo1 まず、コンパイル環境がインポートされたプロジェクトで使用される環境と一致していることを確認します。 S32 Design Studio for Arm V2.2 の場合、対応する RTM ドライバ更新パッケージもインストールする必要があります。 https://www.nxp.com/design/design-center/software/automotive-software-and-tools/s32-design-studio-ide/s32-design-studio-for-arm:S32DS-ARM Senlent_0-1765173965652.png Re: S32DS for ARM 2.2 こんにちは@NanMo1 そのような要約文書はありません。 IAR コンパイラ バージョンまたは S32 DS バージョンの要件を確認するには、各バージョンのリリース ノートを読む必要があります。 HOWTO: S32DSプロジェクトをIAR EW(S32K14x/S32K11x)にエクスポートする https://community.nxp.com/t5/S32-Design-Studio-Knowledge-Base/HOWTO-Export-S32DS-Project-to-IAR-EW-S32K14x-S32K11x/ta-p/1122428 Re: S32DS for ARM 2.2 問題は確認されました。それは Windows 11 システムの問題でした。システムをWindows 10にダウングレードし、機能は正常になりました。 また、ツールチェーンについて質問があります。低レベル部分はS32DSで構成したいのですが、開発はIARで行いたいです。S32 プロジェクトを生成した後、それを IAR プロジェクトにエクスポートするにはどうすればよいですか?また、この機能をサポートする S32DS のバージョンと、この機能をサポートする IDE に必要な S32K144 SDK のバージョンを教えてください。
記事全体を表示
エミュレーターは使用できず、TX/RX インジケーター ライトが赤く点滅し続けます。 CodeWarriorエミュレータを使用する際、USBケーブルでコンピュータに接続しました。しかし、エミュレータのTX/RXインジケーターが赤く点滅し続けました。外部接続を確認したところ、正常に動作していることが確認されました。 これは CodeWarrior ドライバーがないからでしょうか? Re: 仿真器无法使用,TX/RX指示灯一直闪烁红灯 CodeWarrior をどのように設定すればよいですか? また、ドキュメントの例はありますか? Re: 仿真器无法使用,TX/RX指示灯一直闪烁红灯 こんにちは@YPKEJI12341さん、 お問い合わせいただきありがとうございます。添付のUSB TAPユーザーガイドをご参照ください。Codewarriorを設定せずにUSB TAPをPCに接続するだけで、赤色のランプが点滅するのは正常です。 Celeste_Liu_0-1765164688396.png BR セレステ Re: 仿真器无法使用,TX/RX指示灯一直闪烁红灯 使用しているチップと、Codewarrior のどのバージョンを使用しているかを教えてください。 通常、新しいプロジェクトを作成するときは、接続設定で「Freescale USB TAP」を選択する必要があります。 Celeste_Liu_0-1765175432601.png 次に、デバッグ構成で対応する構成を行います。 Celeste_Liu_1-1765175542665.png CodeWarrior 内のすべてのドキュメントを検索するには、Help-Search を使用できます。 Celeste_Liu_2-1765175957263.png
記事全体を表示
imx8ULP 独立镜像 我想为 i.MX8ULP 版本一个完整的独立组网 (SA) 可启动映像。 我已经为 i.MX8ULP 下载并版本了 Linux 内核和 U-Boot。 我需要什么额外的元器件,既然 i.MX8ULP 内置了 eMMC,我该如何将 U-Boot、内核和根文件系统闪存到其上? 启动 ROM | 启动配置 | 闪存 Re: IMX8ulp standalone image 是的,我已经阅读了 imx linux 用户指南,但找不到任何链接来下载所有这些依赖项,内核和 rfs 又是怎么回事呢? Re: IMX8ulp standalone image 你好@bajpaia 希望你一切顺利。 对于 i.MX 8ULP EVK,建议使用 imx-mkimage 版本启动映像: 1。将 u-boot.bin 从 u-boot/u-boot.bin 和 u-boot-spl.bin 从 u-boot/spl/u-bootspl.bin 复制到 imx-mkimage/iMX8ULP/。 2。将 bl31.bin 从 Arm Trusted 固件 (imx-atf) 复制到 imx-mkimage/imx8ULP/。 3.将哨兵固件容器 mx8ulpa0-ahab-container.img 的镜像复制到 imx-mkimage/iMX8ULP/。 4.将 uPower 固件镜像 upower.bin 复制到 imx-mkimage/iMX8ULP/。 5.将 Cortex-M33 映像 m33_image.bin 复制到 imx-mkimage/iMX8ULP/。 6.如果使用 OP-TEE,请将 tee.bin 复制到 imx-mkimage/iMX8ULP/。在步骤 2 中复制的 bl31.bin 必须在启用 OP-TEE SPD 的情况下构建。 7.运行 make SOC=iMX8ULP flash_singleboot_m33 生成 flash.bin。 有关信息请参见第 4.5.12 章。如何在独立组网 (SA) 和 4.5.13 中版本 U-Boot 和内核如何使用 i.MX Linux 用户指南 中的 imx-mkimage 版本构建 imx-boot 启动映像。 此外,建议您在修改内核、驱动程序等时使用独立组网 (SA)。 要生成完整镜像,我建议使用Yocto环境 顺祝商祺! 萨拉斯 Re: IMX8ulp standalone image 您好。 这里有指向"依赖项的链接" : U 启动。 mkimage. ATF. 您可以在版本说明表 5 中找到所有依赖关系。 要创建 RFS,强烈建议使用 Yocto 环境。 顺祝商祺! 萨拉斯
記事全体を表示
S32K311 备用 ram 保留 我目前面临的问题是,我需要在睡眠时将一些数据保存在待机内存中,并在通过 IO 唤醒后继续使用这些数据。我发现存储在待机内存中的数据将在醒来后RESET为零。我不知道原因何在? 我在 RM 文档中看到,待机 RAM 中的数据只有在功能 RESET 后才会保留。但是,从通过 IO 唤醒的待机模式开始,IP_SC_RGM-> DES 和 IP_SC_RGM-> FES 的值均为 0。可以看出,MCU-WAKEUP_REASON RESET 既不是破坏性 RESET,或非功能 RESET。当前的问题是,在 MCU-WAKEUP_REASON RESET 退出待机模式后,是否可以保持待机 RAM? 在 RM 图 158 复位序列中,可以看出,退出待机模式后,进入了破坏性 RESET,这意味着退出待机模式后 RAM 中的所有数据都将被清除。 Re: S32K311 standby ram retention 嗨,朱利安、 谢谢您的答复。 我目前正在测试在醒来并退出待机状态后,待机内存将RESET为零。我检测到 IP_SC_RGM ->DES 和 IP_SC_RGM ->FES 的值都为零。还有哪些其他原因可能导致待机内存RESET为零? Re: S32K311 standby ram retention 嗨,@Climber-zhao、 待机内存在唤醒序列后保留。我认为图 158 可能有点误导,因为 K3 设备有两个功能域:RUN & STANDBY功能域。 RUN 功能域中的模块在待机退出时 RESET。待机功能域中的模块不受待机退出的影响并保留其内容。但是,如果通过功能RESET或破坏性RESET事件退出待机状态,则待机功能域模块中的相应翻牌也会被RESET。 请参见表 196。RUN 功能域中存在的逻辑(模块重置状态)。 我认为图 178(开机顺序)更清晰地描述了这一过程: Julin_AragnM_0-1764868775443.png 关于 StandbyRAM,默认启动脚本(取决于 RTD 版本)会初始化 SRAM ECC,无论芯片是来自 POR 还是唤醒事件。如果需要,必须检查之前的RESET原因并初始化 SRAM ECC: Julin_AragnM_1-1764871279605.png 您可以参考低功耗电源管理单元示例: S32K3 低功耗管理 AN 和演示 [RTD400 & 500 MCAL & IP] S32K3 低电源管理单元应用笔记和演示 我也给你发了一条关于低功率演示的私人信息。 致以最诚挚的问候, Julián Re: S32K311 standby ram retention 嗨,@Climber-zhao、 正如我所提到的,无论之前是否RESET,你都可能在启动时清除 RAM。 另一个原因可能是放置不正确。你必须 1.修改链接器文件,将 32KB 备用 RAM(0x2040 0000 ~0x2040 8000)从 int_sram 内存区域中分离出来,并将备用 .bss 文件放置在内存中。和 .data或 .text部分到新区域,并调整链接地址符号,以便在启动过程中进行自定义初始化。 Julin_AragnM_0-1764951246026.png 2. 仅当待机 RAM 处于上电复位状态时才对其进行初始化。 Julin_AragnM_1-1764951266394.png 3.在相关记忆部分使用关键词属性定义变量/函数。 Julin_AragnM_3-1764951280702.png Julin_AragnM_4-1764951288685.png 注意:必须禁用 CM7 CPU 数据缓存 才能使用待机内存区域。或者在 MPU 配置中将待机 RAM(0x2040 0000 ~0x2040 8000)设置为不可缓存。 请参阅之前社区帖子中的 s32k344_rtc_standbyRAM_WKUP 示例以供参考。 致以最诚挚的问候, Julián
記事全体を表示
与 MC33777 安全文件有关的问题 你好 我想在具有完整恩智浦生态系统(AFE、微型、SBC、TPL 等)的电池管理系统板中使用这个元器件。我们有有效的保密协议,我们可以访问这些元器件的任何安全文件,MC33777 除外。登录后,我看到 MC33777 的网页如下。 为什么?一位销售人员说,我们已经获得了整个资产的使用权,但 MC33777 并非如此。 谢谢! robertoschembar_0-1764840509519.png Re: Issue with MC33777 secure documentations 亲爱的罗伯托 您无法访问 MC33777 文档,因为您尚未申请访问权限。请按照用户指南中的说明操作:https://www.nxp.com/docs/en/user-guide/nxp-docstore-migration-guide.pdf 第 8 页,转到右上角的 “我的恩智浦账户”-“个人资料”-“安全访问权限”-获得访问权限-在自由文本字段中指定 MC33777。谢谢。 祝您愉快致以最诚挚的问候 帕夫拉 Re: Issue with MC33777 secure documentations 亲爱的帕夫拉 我已经做过了,但我重复了你描述的程序。我在等待,重复有时会有帮助 Re: Issue with MC33777 secure documentations 亲爱的罗伯托 您不允许查看和打开安全文件内容,因为您的账户因长期未激活而被停用。请注意,您可能需要每隔 30 天重新激活您的安全文件账户。现在我看到你昨天重新激活了,所以我想问题已经解决了。如果有任何问题,请告诉我。谢谢。祝您愉快 顺祝商祺! 帕夫拉 Re: Issue with MC33777 secure documentations 亲爱的帕夫拉 现在没有任何变化。我是否必须使用多因素身份验证才能查看这些安全文件? Re: Issue with MC33777 secure documentations 亲爱的罗伯托 是的,没错,要确保文件安全,您需要设置 MFA。请参阅: https://www.nxp.com/support/support/my-nxp-account-faqs:NXP-ACCOUNT-FAQS MFA 现在对以下用户是强制性的: 已被授予安全访问权限或属于特定用户组或受众。 使用 Flexera 管理软件许可证。 如果您看到启用 MFA 的提示,则表示您的账户需要额外的网络安全层。 感谢您的理解。祝您愉快致以最诚挚的问候 帕夫拉 Re: Issue with MC33777 secure documentations 你好,罗伯托、 对造成的不便深表歉意。如果您说 MC33777 的访问权限已授予,那么您应该可以通过勾选文档部分下的安全按钮,从产品页面 https://www.nxp.com/products/MC33777 获取文件。另一种方法是通过我的恩智浦账户 - 安全资源 - 产品 - MC33777(指南第 11 页:https://www.nxp.com/docs/en/user-guide/nxp-docstore-migration-guide.pdf)。如果仍未成功,请通过电子邮件直接联系安全文件团队:[email protected] 负责团队将详细检查您的安全文件账户设置并提供建议。非常感谢您的耐心等待。祝您愉快致以最诚挚的问候 帕夫拉 Re: Issue with MC33777 secure documentations 亲爱的 Pavla, ,几天前我激活了多因素身份验证,但没有任何变化。 奇怪的是,在 "具有授权访问权限的产品列表 "中,MC33777 出现了,但在我看到的产品页面中却没有安全文件。 能把这些文件发给我吗?
記事全体を表示
如何在 IMX8ULP 的设备树中启用 TPM6 如何配置 imx8ulp 设备树以在 A35 上启用 TPM6,以及从自由运行的振荡器 (FRO) 对 TPM6 进行计时需要哪些设备树设置? i.MX 8 系列 | i.MX 8QuadMax (8QM) | 8QuadPlus i.MX 8M | i.MX 8M Mini | i.MX 8M Nano i.MX8ULP Linux Re: How to enable TPM6 in device tree for IMX8ULP 最初,我按照本帖中的步骤操作,并应用了该解决方案提供的补丁: https://community.nxp.com/t5/i-MX-Processors/i-MX8ULP-linux-clocksource-precision/m-p/2139659/highlight/true 不过,这似乎只允许使用系统振荡器,而不允许使用 FRO。 1) 为 TPM6 配置外设时钟控制器 (PCC4),imx8ulp_bl31_setup.c #if defined(IMX8ULP_TPM_TIMERS) /* config the TPM6 clock with FRODIV2*/ mmio_write_32(IMX_CGC1_BASE + 0x908, 0x3); mmio_write_32(IMX_PCC4_BASE + 0x08, 0x94000000); mmio_write_32(IMX_PCC4_BASE + 0x08, 0xd4000000); #endif 2) 从上面链接的解决方案中修改补丁,使用 frosc_div2,而不是 sosc_div2: From 6db58f97ab7fb7cff89a5386dee7c392f1fdd7cb Mon Sep 17 00:00:00 2001 From: chong feng Date: Thu, 7 Aug 2025 23:17:29 +0530 Subject: [PATCH 1/3] drivers: clk: imx8ulp tpm4, tpm6 fixed clk gate only Add clk imx8ulp tpm6 fixed clock gate only Signed-off-by: Adrian Alonso Reviewed-by: Jacky Bai --- drivers/clk/imx/clk-imx8ulp.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/clk/imx/clk-imx8ulp.c b/drivers/clk/imx/clk-imx8ulp.c index 535b6364ca7e..1abef4c54c2e 100644 --- a/drivers/clk/imx/clk-imx8ulp.c +++ b/drivers/clk/imx/clk-imx8ulp.c @@ -413,7 +413,8 @@ static int imx8ulp_clk_pcc4_init(struct platform_device *pdev) return PTR_ERR(base); clks[IMX8ULP_CLK_FLEXSPI2] = imx8ulp_clk_hw_composite("flexspi2", pcc4_periph_plat_sels, ARRAY_SIZE(pcc4_periph_plat_sels), true, true, true, base + 0x4, 1); - clks[IMX8ULP_CLK_TPM6] = imx8ulp_clk_hw_composite("tpm6", pcc4_periph_bus_sels, ARRAY_SIZE(pcc4_periph_bus_sels), true, true, true, base + 0x8, 1); + // clks[IMX8ULP_CLK_TPM6] = imx8ulp_clk_hw_composite("tpm6", pcc4_periph_bus_sels, ARRAY_SIZE(pcc4_periph_bus_sels), true, true, true, base + 0x8, 1); + // clks[IMX8ULP_CLK_TPM6] = imx_clk_hw_gate_flags("tpm6", "sosc_div2", base + 0x08, 30, CLK_IS_CRITICAL); + clks[IMX8ULP_CLK_TPM6] = imx_clk_hw_gate_flags("tpm6", "frosc_div2", base + 0x08, 30, CLK_IS_CRITICAL); clks[IMX8ULP_CLK_TPM7] = imx8ulp_clk_hw_composite("tpm7", pcc4_periph_bus_sels, ARRAY_SIZE(pcc4_periph_bus_sels), true, true, true, base + 0xc, 1); clks[IMX8ULP_CLK_LPI2C6] = imx8ulp_clk_hw_composite("lpi2c6", pcc4_periph_bus_sels, ARRAY_SIZE(pcc4_periph_bus_sels), true, true, true, base + 0x10, 1); clks[IMX8ULP_CLK_LPI2C7] = imx8ulp_clk_hw_composite("lpi2c7", pcc4_periph_bus_sels, ARRAY_SIZE(pcc4_periph_bus_sels), true, true, true, base + 0x14, 1); -- 2.25.1 3) 更新设备树。 tpm6: tpm@29820000 { compatible = "nxp,tpm-timer"; timer-rating = <410>; status = "okay"; reg = <0x29820000 0x1000>; interrupts = ; clock-names = "ipg", "per"; clocks = <&frosc>, <&frosc>; }; 这些步骤使 linux 时钟摘要显示 TPM6 的时钟频率为 192MHz。这很好,但由于设置了除数 2,频率应为 48MHz。 要在 TPM6 上获得 48MHz 的时钟频率,下一步该怎么做?我需要修改上述任何步骤吗? Re: How to enable TPM6 in device tree for IMX8ULP 你好 要在 A35 内核上为 i.MX8ULP 启用 TPM6 并将其配置为使用自由运行的振荡器 (FRO) 作为其时钟源,您需要对设备树进行特定修改。 ## Device Tree Configuration 1. First, locate the device tree files for the i.MX8ULP in your Linux kernel source directory: - Main path: `arch/arm64/boot/dts/freescale/` 2. Add or modify the TPM6 node in your device tree: ``` tpm6: tpm@2da0000 { compatible = "fsl,imx8ulp-tpm"; reg = ; interrupts = ; clocks = , ; clock-names = "ipg", "per"; assigned-clocks = ; assigned-clock-parents = ; status = "okay"; }; ``` 3. Make sure to reference the TPM6 clock definitions from: - `include/dt-bindings/clock/imx8ulp-clock.h` ## 重要注意事项 -根据 i.MX8ULP 内存映射表,必须可从 A35 内核访问 TPM6 -FRO(自由运行振荡器)必须在 CGC(时钟生成和控制)中正确配置 -您需要根据 i.MX8ULP 参考手册中的方框图(图 6)和内存映射表手动调整设备树 Re: How to enable TPM6 in device tree for IMX8ULP 是的,这些都已核实。您是否可以升级并更详细地回答我的具体问题? Re: How to enable TPM6 in device tree for IMX8ULP 你好 要使用自由运行的振荡器 (FRO) 计时,在设备树中为 A35 内核上的 i.MX8ULP 配置 TPM6,您需要手动修改设备树文件。 你可以参考 i.MX8ULP 设备树绑定来了解时钟定义,网址为:https://github.com/nxp-imx/linux-imx/blob/lf-6.x.y/include/dt-bindings/clock/imx8ulp-clock.h 请参阅 i.MX8ULP 参考手册第 3.2 节(Arm Cortex A35 内核概述),以验证是否可以从 A35 内核访问 TPM6,因为某些外设只能从特定内核访问。   此致
記事全体を表示