Multi Source Translation Content

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

Multi Source Translation Content

讨论

排序依据:
WOAではどんな読者でもサポートできます こんにちは、 WOA で動作するリーダー チップはありますか? Re: Any Reader could support on WOA こんにちは@Tedlai99 大変申し訳ございませんが、WoAをサポートするNFCリーダはございません。
查看全文
AI usage with NXP Data (e.g. Safety Manuals / Reference Manuals) Hello, I could not find anything on AI usage with NXP Data. We want to use AI Models (With enterprise data protection in our case) to search through Safety and Reference Manuals. Is there a AI Usage policy on this data? Kind regards, M.F.
查看全文
Vmcore cannot be decoded Hi, I'm unable to decode the vmcore using "crash vmlinux vmcore" when booting with an embedded initramfs in the kernel. However, the vmcore.dmesg output is fine. I tested with both the original vmlinux and the vmlinux containing initramfs, but both returned "crash: vmlinux: no debugging data available." Could you advise on how to troubleshoot this issue? Thanks. The vmcore decode log and kernel configuration are attached. Re: Vmcore cannot be decoded Would you kindly share you CPU part number and SW version? Thanks
查看全文
SJA1105QEL only use 4port Hi  I want to use SJA1105QEL as ethernet switch of my board. But I only need 4ports of SJA1105QEL.  What should I do with the excess port? Leave it open?
查看全文
s32k148 FlexIO UART Example Code Currently working on S32k148evb board,  Can anyone tell e steps to verify the output of the program FlexIO UART Example Code. How to verify it on development board and by using serial monitor TTL converter? In real tie expression also. Please provide steps.  Re: s32k148 FlexIO UART Example Code Hi @Turtledove, From your other community post, I assume you are using S32DS for ARM with the SDK, is this correct?  You can find the example descriptions under your S32DS installation (C:/NXP/S32DS_ARMv2.2/S32DS/software/S32SDK_S32K1xx_RTM_3.0.0/doc/html_S32K148/flexio_uart_s32k148_group.html). The example uses two instances of the FlexIO UART driver are used to echo the data received from host. Here are the connections and steps to run: The example configures the terminal with these settings: 115200 baud One stop bit No parity No flow control Lastly, as I've mentioned in your other post, for Real-Time Expressions, please refer to this thread: Solved: How do I enable Live View for variables when debugging? - NXP Community. Best regards, Julián
查看全文
CSEc 消去キー CSEc鍵消去で使用されるKDF関数は、与えられた鍵から新しい鍵を生成します。この機能で使用されるマスターEUC鍵はM1-M3でも良いのでしょうか?それとも平文である必要がありますか? Re: CSEc Erasekey どうもありがとう Re: CSEc Erasekey こんにちは@ xiaoweix これはキーであり、M値ではありません。KDF関数のパラメータの命名規則も非常に明確です。M値ではなく、Authkeyです。 Re: CSEc Erasekey @nxp TechSupport Senlent ご返信ありがとうございます。 KDF 関数は、パラメータ AuthKey と Constant を連結し、CSEc モジュールの CSEC_DRV_MPCompress() 圧縮アルゴリズム API を使用して出力 K_out を取得します。 つまり、KDF は接続にプレーンテキストと定数のみを使用でき、暗号テキストと定数は接続に使用できないということですね? ご返信をお待ちしております! Re: CSEc Erasekey こんにちは@ xiaoweix 同じ機能について話しているのかどうかはわかりません。 KDF 関数は、M1 から M5 までの値を計算するために使用されるユーザー定義のユーティリティ関数です。 KDF(AuthKey, Constant, K_out) AuthKey と Constant パラメータはどちらも 16 バイトの入力パラメータであり、K_out は 32 バイトの出力パラメータです。 KDF 関数は、AuthKey パラメータと Constant パラメータを連結し、CSEc モジュールの CSEC_DRV_MPCompress() 関数を使用してデータを圧縮します。 縮小アルゴリズム API は、出力 K_out を取得するために使用されます。 リセットプロセス全体は次のとおりです。 CSEC_DRV_Init(&csec1_State); Res = CSEC_DRV_InitRNG(); Res = CSEC_DRV_DbgChal(Challenge); Res = CalculateDbgAuth(MASTER_ECU_KEY,Challenge,DbgAuth); Res = CSEC_DRV_DbgAuth(DbgAuth); 乱数を初期化するのは誰ですか? 乱数「チャレンジ」を生成します。 ユーザーは、この乱数を MASTER_ECU_KEY および UID とともに使用して、認証要求を返します。 CSEc が認証を確認すると、この関数は NVM メモリに保存されているすべてのキー (実際のキーと期限切れのキー) を削除します。 Re: CSEc Erasekey @nxp TechSupport Senlent は非常に感銘深い返しですが、私も不明な点があり、官方による KDF 関数展開、使用されるのは 36.5.13.28 CMD_MP_COMPRESS このコマンド、パラメータ方向幅 データ IN n * 128 ページの長さ 16 MP_COMPRESS 出力 128 入力されたデータは 128 ビットではなく、1 つでも可能です。このように、M1 ~ M3 をダウンロードして削除し、これを使用してタイムキーを生成し、許可コードを計算し、その後、出力された設定を復元できますか? Re: CSEc Erasekey ご返信ありがとうございます。しかし、いくつか疑問点があります。公式のKDF機能拡張では、バージョン36.5.13.28でパラメータディレクティブの幅を指定するコマンドCMD_MP_COMPRESSが使用されています。 データ IN n * 128 ページの長さ 16 MP_COMPRESS 出力 128 入力データが 128 ビットではなく n ビットである場合、M1 ~ M3 をロードし、一時キーを生成して認証コードを計算して、工場出荷時の設定を復元できますか? Re: CSEc Erasekey こんにちは@xiaoweix まず、キーを個別に消去することはできません。CSEc モジュールの工場出荷時設定リセット コマンドを使用することによってのみ、すべてのキーを消去できます。 それでは、提供されている工場出荷時設定へのリセット コマンドのサンプル プロジェクトを見てみましょう。KDF への入力は M 値ではなく MasterEcuKey であることがわかります。
查看全文
S32G3 – How to flash application with S32 Flash Tool without erasing BSP Linux Hi, I am trying to flash a .bin file generated with S32 Design Studio onto my board. On the SD card I’ve already flashed the Linux BSP, and I’d like to keep it, since I want to use it to visualize the logs of my program (e.g., through UART or a console). However, when I use the Flash Tool and choose Destination = Flash, it seems to overwrite the entire SD, including the BSP. My question is: What is the correct way to flash my .bin application without erasing the existing BSP on the SD card? Is there a specific option or memory region I should select, or should I flash the application to a different location (e.g., RAM or external QSPI/NOR) to preserve Linux? Thanks in advance! Re: S32G3 – How to flash application with S32 Flash Tool without erasing BSP Linux Hello, @MrAlexIV  Thanks for your confirmation. On EVB3, you may try the following: 1. Plug the network cable to the the following interface:   2. Once booted, before transfer the image, set the default interface to eth0 3. Try transferring the image from your PC to the EVB3 via the tftp service. I hope it will help. BR Chenyin Re: S32G3 – How to flash application with S32 Flash Tool without erasing BSP Linux Hi, ok here the following answers: 1) 38.0 2) Yes exactly, it is that board (can't access to a pic rn) 3) I am actually still focusing on it. However, I found a way to run the .elf on my SD, but It is for the A53 cores and not M7, and the example (like the FlexCAN one) are for M7 Re: S32G3 – How to flash application with S32 Flash Tool without erasing BSP Linux Hello, @MrAlexIV  Thanks for your reply. I understand that the previous issue is transfer failure when transferring your image from PC to the board via tftp under u-boot. As a result, I suggest using the gmac0 to transfer the image instead. But from the log you shared, it is in the Linux, I am not sure about your current status. In order for better providing you accurate and direct support, would you mind firstly clarifying the following? 1. The BSP version you used is? 2. From the log, seems the S32G3EVB3 is used, right? if possible, would you mind share me a pic of your board used? 3. May I know if you still focus on the issue raised last Thursday, for dealing with the transfer issue for your M7 binary under uboot? BR Chenyin Re: S32G3 – How to flash application with S32 Flash Tool without erasing BSP Linux When I try to up the eth0, i receive this: root@s32g399aevb3:~# ifconfig lo: flags=73 mtu 65536 inet 127.0.0.1 netmask 255.0.0.0 inet6 ::1 prefixlen 128 scopeid 0x10 loop txqueuelen 1000 (Local Loopback) RX packets 82 bytes 6220 (6.0 KiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 82 bytes 6220 (6.0 KiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 pfe2: flags=4163 mtu 1500 inet 192.168.128.249 netmask 255.255.255.0 broadcast 192.168.128.255 inet6 fe80::201:beff:febe:ef33 prefixlen 64 scopeid 0x20 ether 00:01:be:be:ef:33 txqueuelen 1000 (Ethernet) RX packets 0 bytes 0 (0.0 B) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 17 bytes 1386 (1.3 KiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 device memory 0x46000000-46ffffff root@s32g399aevb3:~# sudo ifconfig eth0 up SIOCSIFFLAGS: No such device root@s32g399aevb3:~# sudo ip link set eth0 up RTNETLINK answers: No such device Re: S32G3 – How to flash application with S32 Flash Tool without erasing BSP Linux Hello, @MrAlexIV  Thanks for your reply. Gmac is the eth0 in the uboot, commonly it could be directly used by default? if you have issues, would you mind providing us your setup?and the logs during your operation? Which BSP you are working with? which kind of S32G board? BR Chenyin  Re: S32G3 – How to flash application with S32 Flash Tool without erasing BSP Linux Thank you again, I was trying to use GMAC0 but I could not see the interface. I had a eth0, but I could not set it UP. Do I need to do something in particular? Thanks.      Re: S32G3 – How to flash application with S32 Flash Tool without erasing BSP Linux Hello, @MrAlexIV  Thanks for your reply. I suggest using the GMAC0 to transfer the binary instead of PFEX, since PFE may need additional configuration to have it functional under u-boot. BR Chenyin Re: S32G3 – How to flash application with S32 Flash Tool without erasing BSP Linux Hi, thank you for your response. I am trying to get the bin in my u-boot via tftp. I am having some issues tho, in particular I receive this messgae:  => tftp ${loadaddr} FlexCAN_Ip_Example_S32G399A_M7_blob2.bin Attached to pfe0 Using eth_pfeng device TFTP from server 192.168.128.244; our IP address is 192.168.128.249 Filename 'FlexCAN_Ip_Example_S32G399A_M7_blob2.bin'. Load address: 0x80000000 Loading: * ARP Retry count exceeded; starting again I started the server on my pc (192.128.168.244) In u-boot I applied this configuration: setenv ipaddr 192.168.128.249 setenv serverip 192.168.128.244 setenv netmask  255.255.255.0 setenv gatewayip 192.168.128.1 setenv ethaddr 00:04:9F:09:6D:07 (since I connected my ethernet cable to PFE_MAC2) I can't even ping 192.168.128.244 and yes, I disabled the firewall Re: S32G3 – How to flash application with S32 Flash Tool without erasing BSP Linux Hello, @MrAlexIV  Thanks for your reply. Not sure how you starting the M core application via Linux. A possible way is firstly flashed the full BSP to the SD card, then boot the board directly; Secondly, stopped in u-boot, and then use network connection to transfer your M core image to the DDR(or flash the M core application to the QSPI/eMMC in advance before boot, and in uboot, load it from QSPI to the DDR); After it, use the uboot to run the M7 application, next, to boot with your Linux.  BR Chenyin Re: S32G3 – How to flash application with S32 Flash Tool without erasing BSP Linux Hi,  It is a M7 cortex. Any method is appreciated actually, I just want to flash my bin in a way that I can see the logs via Linux. At the moment, if I flags the bin on the SD card, I can't access while it is running (via Putty), so I flashed the BSP Linux on the SD and now I can access even when the SD is running. Any solution is appreciated. My final goal is to read the logs of my application, through Linux  Re: S32G3 – How to flash application with S32 Flash Tool without erasing BSP Linux Hello, @MrAlexIV  Thanks for your post. May I know if the bin file is used for running on M core or A cores? how and where could it be executed/called from your design? May I know if you would like to only use the flash tool to flash it to your SD card, or other method could be acceptable? BR Chenyin
查看全文
Android イメージを i.MX 8M Mini EVK にフラッシュ中に進行が停止する こんにちは。SO、カスタム タブレットに Android 9 をフラッシュしようとしています。使用したボードは i.MX 8M Mini EVK で、これに Android 9 をフラッシュするように先輩から指示されました。フラッシュするためにできることはすべてやったのですが、 [ =========100%===================] SDP: boot -f u-boot-imx8mm-evk-uuu.imx.link そして、それ以上の応答はありません。これを解決する方法はありますか?ありがとう。ああ、フラッシュ方法にもUUUを使いました 追加情報: 間違ったイメージを誤ってインストールした後、私のデバイスもブートループに陥っていますが、それでもSDPにはアクセスできます。 PS D:\プラットフォーム-tools> .\uuu_imx_android_flash.bat -f imx8mm -tos -e このスクリプトは uuu 1.2.135 バージョンで検証されていますので、このバージョンに合わせてください。 dtboがサポートされています デュアルスロットをサポート u-boot-imx8mm-trusty.imxをbootloader0のパーティションにフラッシュするための行を生成する gptのパーティションにpartition-table.imgをフラッシュするための行を生成します。 dtbo-imx8mm.img を dtbo_a のパーティションにフラッシュするための行を生成します。 boot.img を boot_a のパーティションにフラッシュするための行を生成します。 system.img を system_a のパーティションにフラッシュするための行を生成します。 vendor.img を vendor_a のパーティションにフラッシュするための行を生成します。 vbmeta-imx8mm.img を vbmeta_a のパーティションにフラッシュするための行を生成します。 dtbo-imx8mm.img を dtbo_b のパーティションにフラッシュするための行を生成します。 boot.img を boot_b のパーティションにフラッシュするための行を生成します。 system.img を system_b のパーティションにフラッシュするための行を生成します。 vendor.img を vendor_b のパーティションにフラッシュするための行を生成します。 vbmeta-imx8mm.img を vbmeta_b のパーティションにフラッシュするための行を生成します。 uuu スクリプトが生成されました。生成された uuu スクリプトを使用して uuu の呼び出しを開始します。 nxp imx チップ用の uuu (ユニバーサル アップデート ユーティリティ) -- libuuu_1.5.201-0-g727fc2b 成功 0 失敗 0 1:1- 1/ 1 [=================100%====================] SDP: ブート -f u-boot-imx8mm-evk-uuu.imx.link Android i.MX 8M | i.MX 8M ミニ | i.MX 8M ナノ Re: Progress stuck while flashing an android image to i.MX 8M Mini EVK こんにちは、 ここで停止した場合、シリアル ログにエラーが表示されます。 よろしくお願いします、 志明
查看全文
lwip_FreeRTOS_s32k396' example project and failure I'm currently using the S32K396 MCU with a raw TCP client implementation, which works fine. However, my module supplier requires me to switch to lwIP with FreeRTOS. After importing the 'lwip_FreeRTOS_s32k396' example project and flashing it to my K396 board, the program enters the vPortEnterCritical() function when executing prvPortStartFirstTask(). How can I resolve this issues S32DS versioln  3.5 RTD version 4.0 lwip version 1.0.4 freeRTOS version 4.0  Re: lwip_FreeRTOS_s32k396' example project and failure Hello @zhangzhixing , Initialize the variable uxCriticalNesting to 0 serves to several important purposes: System starts outside of any critical section At system startup, no critical sections have been entered yet. Initializing uxCriticalNesting to 0 reflects this clean state and ensures that interrupts are enabled by default. Per-task context tracking Each task in FreeRTOS maintains its own uxCriticalNesting value as part of its Task Control Block (TCB). This value is saved and restored during context switches to preserve the correct interrupt state per task. Ensures system stability Setting a non-zero value at initialization could result in interrupts being unintentionally disabled, leading to unexpected behavior or system hangs. A zero value guarantees that the scheduler and interrupt handling start in a consistent and safe state. In lwIP examples (especially when using the threaded API or raw API), proper interrupt and critical section management is essential. Starting with uxCriticalNesting = 0 ensures that the network stack and scheduler operate reliably from the beginning Best regards, Pavel Re: lwip_FreeRTOS_s32k396' example project and failure Hello @zhangzhixing , I apologize for delayed response caused my workload. The board was successfully brought up without any issues. However, a few minor adjustments to the project are necessary: Peripherals > Pins: The TX_CLK signal did not have a specified direction — it has been set to Input. I also selected Fastest settings as the initial option. Peripherals > Managed SDK Components: The Pins driver component was missing and has been added. Clock settings: Configuration is correct — the FXOS 40 MHz clock matches the crystal used on the board. PHY initialization: The call to Eth_T_InitPhys(); in device.c was commented out, as it is not required. The TJA1103 PHY relies solely on pin strapping for basic configuration. I use TJA1103-SDBR board - TJA1103 needs to be in rev-RMII mode to generate clock on TXC -> added jumper 2-3 to CONFIG4 Update: To improve behavior after power up, comment all rows with PIT in device.c (PIT is not used in this example): // IntCtrl_Ip_InstallHandler(PIT0_IRQn, PIT_0_ISR, NULL_PTR); // IntCtrl_Ip_SetPriority(PIT0_IRQn, 4); // IntCtrl_Ip_EnableIrq(PIT0_IRQn) // Pit_Ip_Init(PIT_INST, &PIT_0_InitConfig_PB_VS_0); // Pit_Ip_InitChannel(PIT_INST, PIT_0_CH_0); // Pit_Ip_EnableChannelInterrupt(PIT_INST, CH_0); // PitPeriod = Clock_Ip_GetClockFrequency(PIT0_CLK) / 1000; // Pit_Ip_StartChannel(PIT_INST, CH_0, PitPeriod); Best regards, Pavel Re: lwip_FreeRTOS_s32k396' example project and failure I didn't add any code, but this issue occurred when I just compiled, downloaded, and debugged the lwip_FreeRTOS_s32k396 project. there is another question: why setting uxCriticalNesting to 0 ,
查看全文
S32K WDG こんにちは。質問があります。S32K312チップのウォッチドッグモジュールには、タイムアウト後の応答方法が2つあります。1つ目は、タイムアウトが発生するたびにリセットを生成する方法です。2つ目は、最初のタイムアウト時に割り込みを生成し、2回目のタイムアウト時にリセットを生成する方法です。最初のタイムアウト期間は、設定したウォッチドッグタイマーのことだと理解しているのですが、2回目のタイムアウト期間が何を指すのか分かりません。ご回答いただけますでしょうか?ご返信をお待ちしております。 Re: S32K WDG こんにちは@夏超さん これは同じタイムアウトです。 これについては、S32K3xx リファレンス マニュアルの第 66 章「ソフトウェア ウォッチドッグ タイマー (SWT)」で詳しく説明されています。 NXP は、HW を構成するために使用できる 2 つの RTD ドライバ SWT_Ip と MCAL WDG を提供しています。 何かご質問がございましたら、お気軽にお問い合わせください。 よろしくお願いします。 ダニエル
查看全文
FlexSPI NORフラッシュブートの問題 こんにちは、 カスタム ボードには IMXRT1176 があり、MX25L6433F NOR フラッシュが FlexSPI1 ポート A、セカンダリ ピン グループ経由でコネクテッドされています。FLEXSPI_PIN_GROUP_SEL ヒューズが切れて、セカンダリ ピン グループが有効になります。 私たちのアプリケーションは、OCRAM から実行するためのリンカー スクリプトを使用して SRAM (OCRAM) から実行すると実行されます。 別のリンカー スクリプトとリンクして ResetISR を 'XIP' フラッシュ セクションに配置すると、ResetISR が実行されないように見えます。 イメージにコンパイルされた FCB と IVT が、アドレス 0x30000400 と 0x30001000 に配置されています。 エントリ ポイントは 0x300020ad で、これは ResetISR です。 % arm-none-eabi-readelf -Wl MIMXRT1176_Project.elf Elf file type is EXEC (Executable file) Entry point 0x300020ad There are 15 program headers, starting at offset 52 Program Headers: Type Offset VirtAddr PhysAddr FileSiz MemSiz Flg Align EXIDX 0x005000 0x20240000 0x30002560 0x00098 0x00098 R 0x4 LOAD 0x001000 0x30000000 0x30000000 0x02148 0x02148 R E 0x1000 LOAD 0x004000 0x00000000 0x30002148 0x00418 0x00418 R E 0x1000 LOAD 0x005000 0x20240000 0x30002560 0x00098 0x00098 R 0x1000 LOAD 0x0050a0 0x202400a0 0x300025f8 0x9e658 0x9e658 R E 0x1000 LOAD 0x0a3800 0x202de800 0x300a0c50 0x1de20 0x1de20 RW 0x1000 LOAD 0x0c2000 0x20340000 0x300bea70 0x00080 0x00080 RW 0x1000 LOAD 0x0c2620 0x202fc620 0x300beaf0 0x054f8 0x054f8 RW 0x1000 LOAD 0x000000 0x20000000 0x300c3fe8 0x00000 0x64000 RW 0x1000 LOAD 0x000000 0x20064000 0x300c3fe8 0x00000 0x02000 RW 0x1000 LOAD 0x000b20 0x20301b20 0x300c3fe8 0x00000 0x1ec60 RW 0x1000 LOAD 0x000780 0x20320780 0x300c3fe8 0x00000 0x007ec RW 0x1000 LOAD 0x000f6c 0x20320f6c 0x300c3fe8 0x00000 0x00010 RW 0x1000 LOAD 0x000080 0x20340080 0x300c3fe8 0x00000 0x0a580 RW 0x1000 LOAD 0x000000 0x20360000 0x300c3fe8 0x00000 0x18000 RW 0x1000 Section to Segment mapping: Segment Sections... 00 .ARM.exidx 01 .boot_hdr .xip 02 .startup 03 .ARM.exidx 04 .text 05 .data_RAM3 06 .data_RAM5 07 .data .got .got.plt 08 .noinit 09 .heap2stackfill 10 .bss 11 NonCacheable 12 .heap 13 .noinit_RAM5 14 .noinit_RAM7 不思議なことに、マップ ファイルでは ResetISR が 0x300020ac に表示されていますが、エントリ ポイントと FCB は 0x300020ad に設定されています... この違いはサム ビットによって生じているのでしょうか。 イメージは JFlash を使用してフラッシュに書き込まれ、検証されます。 ボードをリセットしても何も起こりません。UART には何もないので、コードは実行されていません。NXP セキュア プロビジョニング ツールを使用して接続CAN。これは、フラッシュ ブートが失敗し、ブートローダ ROM がまだ実行中であることを示しています。 デバッガーをアタッチしようとすると(またはデバッガー内からイメージを実行しようとすると)、次のメッセージが表示されます。 PC は 0x2230C8 に設定されています。そのメモリ アドレスは認識できません。ITCM より上で DTCM より下にあるようです。それはROMアドレスですか?あるいはブートローダーが無効な場所にジャンプしたのでしょうか? これをデバッグする方法を何かご存知ですか? ありがとうございます キーラン。     Re: FlexSPI NOR flash boot issue はい、 0x300020acと0x300020adの違いはThumbビットによるものです。ARM Cortex-Mは、Thumbモードを示すためにアドレスの最下位ビットを使用します。IVTのエントリポイントは、実際のResetISRアドレスと一致する必要があります。さらに、FCBがセカンダリピングループと一致していることを確認してください。   BR、 オマール
查看全文
auth_cntr は戻り値を提供する必要がありますか? OEM_Open モードで i.mx93 を使用して、無効に署名されたコンテナーの検出を検証していました。 u-bootの「\include\configs\imx93_evk.h」のコードauth_cntr が環境内の「if ステートメント」で使用できる値を返すことを意味します。 "auth_os=auth_cntr ${cntr_addr}\0" \ "mmcboot=echo Booting from mmc ...; " \ "run mmcargs; " \ "if test ${sec_boot} = yes; then " \ "if run auth_os; then " \ "run boot_os; " \ "else " \ "echo ERR: failed to authenticate; " \ "fi; " \ .... 「if run auth_os; then」というチェックは、コンテナ検証の成功が戻り値として利用できるという印象を与えます。 ただし、テストでは、有効な署名付きコンテナーと無効な署名付きコンテナーの両方で、結果は常に「0」になることが示されています。ahab_status コマンドは、無効な署名済みコンテナを検証した後、エラーを報告します。 これは OEM_Open デバイスでは予想される動作ですか?あるいはimx93_evk.hファイルは存在しない何かを暗示していますか? Security Yocto Project Re: Should auth_cntr provide a return value? 結果値は、auth_cntr コマンドの実行に関する情報のみを報告し、コンテナー自体が本物かどうかは報告しないようです。 OEM_Open シナリオでは、コンテナーが本物でない場合でも「run boot_os」が実行される可能性があります。 OEM_Closed シナリオの場合、auth_cntr を呼び出すとすぐに再起動されるSO、if ステートメントは完了しません。 Re: Should auth_cntr provide a return value? セクション<10.9ガイドの「セキュリティ リファレンス デザイン」が役立つかもしれません。 よろしくお願いします。 Harvey Re: Should auth_cntr provide a return value? 私は i.MX93 ベースのボード上で yocto scarthgap ベースのイメージを実行しており、かなり古い 2022.04 u-boot を実行しています (現時点では)。 アイデアとしては、Ahab コンテナをいくつか用意するというものでした。 - 1番目のコンテナ: ELE、DDR FW、SPL - 2番目のコンテナ: ATF、OP-TEE、U-Boot - 3番目のコンテナ: カーネル - 4番目のコンテナ: dtb - ....n番目 すべてのコンテナは信頼チェーンを介して検証されます。1 番目は ROM の検証から始まり、2 番目は SPL、3 番目、4 番目は u-boot で、さらに追加のコンテナが検証されます。 u-boot の 3 番目と 4 番目のコンテナを確認するには、auth_cntr コマンドを使用します。その結果は ahab_status 経由で提供されます。ただし、これを bootcmd に追加して、各コンテナを検証し、障害発生時に停止するか回復モードに移行できるようにするというアイデアでした。 SO質問なのですが、自動化/スクリプト化された実装で auth_cntr をCAN使用すればよいのでしょうか?または、コード自体にこれらの手順/検証を追加し、これらのチェックを処理するカスタム コマンドを呼び出す方が、より適切/通常の方法でしょうか? Re: Should auth_cntr provide a return value? auth_os はカーネルとDTBで構築されたコンテナを検証します。ahab_status は検証された内容を報告するだけです。 どのバージョンの BSP をテストしていますか? また、どのような AHAB イベント情報をテストしていますか? よろしくお願いいたします。 Harvey
查看全文
S32K36x の ADC 対応インスタンス NXPについて: AVNET お問い合わせ: Norm Siegel デバイス: S32K36x こんにちは、チームの皆さん リファレンスマニュアルの表 270. 構成とサポートされるインスタンスによると、 「ADC_0/ADC_1/ADC_2 は S32K36x では使用できません」ということを報告します。 ただし、ピンツール(RTD 6.0.0)このような ADC インスタンスにピンを割り当てることができます。 Adc_Sar_IpドライバのAdc ハードウェア ユニットには、ADC_0/ADC_1/ADC_2 が適切に含まれていません。 Bctu_IpドライバのADC ターゲット マスクは、ユーザーが ADC_0/ADC_1/ADC_2 を選択した場合にエラー/警告を生成する必要があります。 ぜひフィードバックをお寄せください。 ご協力をよろしくお願いいたします。 良い1日を! よろしくお願いします、 レオナルド RTD Re: ADC supported instances for S32K36x こんにちは@_Leo_ 、 RTD 開発チームは、この問題が RTD ドライバ のバグであることを確認しました。チケットID: ARTD-196382 よろしくお願いいたします。 ダン Re: ADC supported instances for S32K36x SDADC でも同じ問題が発生します。リファレンス マニュアルによると、「SDADC_2/SDADC_3 は S32K36x では使用できません」 。しかし、Config Tools ではそれらの使用が許可されているようです。
查看全文
IW612 中的双拓扑结构 你好 我正在尝试在自定义板上测试双拓扑 操作系统Linux Arch: armv7l GNU/Linux 内核6.6.48 堆栈 BlueZ v5.78 我有 3 个设备 A、B 和 C,A 是自定义板,B 和移动设备,C 是 Matter 设备 当 A 处于外设模式且 B 与之连接(活动连接)时,处于中心模式的 A 无法与 C 通信。 我在 btmon 中看到以下日志 @ MGMT Event: Connect Failed (0x000d) plen 8 {0x0002} [hci0] 87.249139 LE Address: 24:EE:9A:34:85:27 (OUI 24-EE-9A) Status: Disconnected (0x0e) @ MGMT Event: Connect Failed (0x000d) plen 8 {0x0001} [hci0] 87.249139 LE Address: 24:EE:9A:34:85:27 (OUI 24-EE-9A) Status: Disconnected (0x0e) 0x000d 表示因资源有限而拒绝连接 (参考:控制器错误代码) 是因为固件/内核配置问题吗?另外,请告诉我是否有任何示例可以进行测试 附上完整的 btmon 日志以供参考 __出席 Re: Dual Topology in IW612 你好@Christine_Li、 谢谢,我们会跟进的。 此致, Eldho K K __出席 Re: Dual Topology in IW612 嗨,@eldhokk 经过内部讨论,我们的 WCS CAS 团队将继续为您提供更好的支持。因此,我也将把此案分配给我们的同事。 我看到我们的同事已经就案件与您进行了沟通:00723608. 与我们相比,我们的 WCS CAS 团队可以为您提供更高效的支持。 希望你能理解我们。 顺祝商祺! Christine。 Re: Dual Topology in IW612 嗨,@eldhokk 感谢您的回复。 好吧,我理解你的担忧。我将继续在本地进行尝试,并与我的美国同事进行内部沟通,让他了解您的担忧。 对于您的项目方,同时您也是我们的大客户,具有较高的支持优先级,更好的方式是我们的 CAS 团队为您提供支持。但正如你所说,这对你来说至关重要,我仍不会放弃在我这边尝试繁殖。 一旦有任何更新,我会通知你们。 顺祝商祺! Christine。 Re: Dual Topology in IW612 嗨,@Christine_Li、 是的,你说得对。 但我们还没有收到他们的任何回复,因为这是一个关键问题,我希望美国团队或你们的团队能更快做出回应。 此外,请随时合并或继续此案。 谢谢  Eldho K K Re: Dual Topology in IW612 你好,@eldhokk 感谢您提供的详细信息。 我查过了,您提到的病例现在正由我们的美国同事处理:Kaluvagunta Divakar,他是我们 CAS 团队的 FAE 同事。 我还检查了您与此案有关的项目。您的项目历史案例也将由我们 CAS 团队的同事处理。 在这个案子上,你还需要我的支持吗?您介意我将这个案例与您创建的案例合并吗? 顺祝商祺! Christine。 Re: Dual Topology in IW612 嗨,@Christine_Li、 回答您的问题 测试设置: 外围设备角色-运行 GATT 服务器并连接设备 B 的设备 A(控制器)(支持 NRF 连接的智能手机) 中心角色-设备 C(通过 NRF 连接运行 Gatt 服务器的智能手机),然后尝试将设备 A 连接到 C。 是的,我们使用的是 IW612。 平台是基于 STM32MP 131 的自定义板: Firmware used is: SD-WLAN-UART-BT-SPI-OT-Zigbee-DualPAN-IW612-LNX_6_12_3-IMX8-18.99.3.p23.20-18.99.3.p23.20-MM6X18505.p23-GPL . 此外,还有一个向 nxp 支持中心提出的案例https://support.nxp.com/s/case/500Tg00000NEvMK 谢谢! Eldho K K __出席 __出席 Re: Dual Topology in IW612 嗨,@eldhokk 我查看了您提供的 btmon.log 日志、是的,你是对的,连接失败的代码是0x000d。 为了更好地了解您的测试环境,能否请您提供更多有关测试的详细信息? 就像 1.测试步骤(提供更多细节,我可以尝试在本地重现。) 2.IW612 模块? 3.您的主机平台(I.MX8 系列?) 4.IW612 驱动程序版本和 FW 版本? 顺祝商祺! Christine。 Re: Dual Topology in IW612 嗨,@eldhokk 感谢您为我们创建案例。 我会检查给定的日志并进行内部讨论。一旦有任何更新,我会通知你们。 顺祝商祺! Christine。
查看全文
IMX8QM 未使用電源および信号ストラッピング こんにちは、 IMX8QM プロセッサ用のカスタム ボードを設計しています。このプロジェクトには、HDMI、LVDS、MIPI-CSI、MIPI-DSI、PCIe などの未使用のハードウェア ブロックがいくつかあります。未使用の電力と信号のストラップについて確認したいと思います。 たとえば、IMX8HWDG 表 47 によれば、 HDMI-RXが使用されない場合は、以下に示す電源ピンをグランドに接続する必要があります。 VDD_HDMI_RX0_1P8 ---> GND VDD_HDMI_RX0_LDO0_1P0_CAP ---> GND VDD_HDMI_RX0_LDO1_1P0_CAP ---> GND VDD_HDMI_RX0_VH_RX_3P3 ---> GND 表 48 を見ると、HDMI-RX を使用しない場合、信号ピンは以下のようにコネクテッドする必要があります。 HDMI_RX0_ARC_P/N ---> 未接続のままにする HDMI_RX0_CEC ---> 未接続のままにする HDMI_RX0_HPD ---> 未接続のままにする HDMI_RX0_MON_5V ---> 未接続のままにする HDMI_RX0_CLK_P/N ---> GND HDMI_RX0_DATAx_P/N ---> GND HDMI_RX0_REXT ---> GND HDMI-RXブロックには問題はありません。 ただし、 LVDSと MIPI-CSI または MIPI-DSI ブロックについては混乱が生じることがあります。表47によれば、LVDS電源ピンは10kΩの抵抗でGNDにコネクテッドする必要があります。 VDD_LVDS0_1P0 ---> 10 kΩ(グランド間) VDD_LVDS0_1P8 ---> 10 kΩ(グランド間) VDD_LVDS1_1P0 ---> 10 kΩ(グランド間) VDD_LVDS1_1P8 ---> 10 kΩ(グランド間) ハードウェアデザインガイドの78ページに、10 kΩの接地を推奨する注記があります。 すべてのボールは、1 つの 10 kΩ 抵抗を介して 1 つのグループとしてコネクテッドしてグランドにプルダウンすることも、複数の 10 kΩ 抵抗を介して複数のグループとして (ボール マップの位置に応じて) コネクテッドしてグランドにプルダウンすることもCANます。関連する電源に電力が供給されていない場合は、信号ボールを接続しないままにCAN。 質問 1: これらの説明に従って、VDD_LVDS0_1P0 (ボール AV36) と VDD_LVDS1_1P0 (ボール AW35) を短絡し、10k 抵抗 1 つだけでグランドに接続しました。データシートによれば、これらの電源ピンはグループ 1 (同じグループ内) にあります。これは安全ですか?下記に画像を添付しました。 表48には、LVDSブロックの未使用信号ピンに関する別の注意事項があります。 すべてのボールは、1 つの 10 kΩ 抵抗を介して 1 つのグループとしてコネクテッドしてグランドにプルダウンすることも、複数の 10 kΩ 抵抗を介して複数のグループとして (ボール マップの位置に応じて) コネクテッドしてグランドにプルダウンすることもできます。このソリューションは、各 I/O グループに関連付けられたすべての電源ドメインがオフになっているか、接地されている場合にのみ適用できます。一部のドメインに電源が供給されたままの場合、それらのドメインに含まれる未使用の I/O は、浮いた状態のままにするか、各信号を独自の 10 kΩ 抵抗を介して個別にグランドに接続する必要があります。 未使用の電源ピンに関する注記には、電源が供給されていないハードウェア ブロックの未使用の信号ピンは、LVDS では未接続のままにCAN。しかし、上記の注記には、電源ピンが供給されていない場合に信号ピンを未接続のままにしておくという情報は記載されていません。 質問 2: LVDS 電源ピンを 10K でグランドに接続する場合、LVDS 信号ピンを未接続のままにしておくことは安全ですか?下記に画像を添付しました。 質問 3: LVDS の例のみを示しました。これらの配線を MIPI-CSI および MIPI-DSI ブロックにCAN適用しますか? このプロジェクトのハードウェアデザインを完了するにはあなたの助けが必要です。 よろしくお願いいたします。 イブラヒム i.MX8 i.MX 8ファミリ | i.MX 8QuadMax (8QM) | 8QuadPlus Re: IMX8QM Unused Power and Signal Strapping ご返信ありがとうございます。以下のように配線します。 各トレースを配線し、各グループに抵抗器を配置するのは困難です。いずれにせよ、どちらの方法の方が安全か、それを実行する必要があります。 再度、感謝します。 イブラヒム Re: IMX8QM Unused Power and Signal Strapping こんにちは、 1. はい、安全です。 2. いいえ、各グループまたは信号は 10k 抵抗を使用してグランドに接続する必要があります。 3. はい、LVDS 信号と MIPI 信号のガイドラインは似ています。 よろしくお願いいたします。
查看全文
IMX8MP HDMI 1024x600 resolution Hello, I have a custom imx8mp board which direct HDMI video output and it works fine with 1920x1080 display. I need to configure a custom HDMI resolution 1024x600@60 with pixel clock 40000000. Display: https://www.lcdwiki.com/10.1inch_HDMI_Display-H Thank you for support. Re: IMX8MP HDMI 1024x600 resolution Hello, I found a solution that worked for my case. I generated a custom EDID using this tool: https://github.com/akatrevorjay/edid-generator.git then I copied it to /lib/firmware/edid In the kernel config I enabled: CONFIG_DRM_LOAD_EDID_FIRMWARE=y CONFIG_DRM_IMX_HDMI=m And finally, I added these parameters to the cmdline: drm.edid_firmware=HDMI-A-1:edid/1024x600.bin video=HDMI-A-1:1024x600-16@60 Thank you for support Re: IMX8MP HDMI 1024x600 resolution Hi. No this resolution is not standard you will have to do the change. Regards Re: IMX8MP HDMI 1024x600 resolution Hello,   in linux version 6.12 the file has this format:   }, { .pixclk = 63500000, .pll_div_regs = { 0x69, 0x74, 0x89, 0x08, 0x80, 0x40 }, }, { .pixclk = 67500000, .pll_div_regs = { 0x54, 0x52, 0x87, 0x03, 0x80, 0x40 }, }, {   Can you help me to add patch in this file? Do I need to add any modifications in the kernel command line? Re: IMX8MP HDMI 1024x600 resolution Hello, is not an standar resolution, so please check it, for 1080x720, try the patch as below --- a/drivers/phy/freescale/phy-fsl-samsung-hdmi.c +++ b/drivers/phy/freescale/phy-fsl-samsung-hdmi.c @@ -324,6 +324,15 @@ const struct phy_config samsung_phy_pll_cfg[] = { 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xE0, 0x83, 0x0F, 0x3E, 0xF8, 0x00, 0x00, }, + }, { + 65000000, { + 0x00, 0xD1, 0x51, 0x58, 0x8D, 0x04, 0x9A, 0x57, + 0x4F, 0x30, 0x33, 0x65, 0x10, 0xBE, 0x24, 0x80, + 0x6C, 0xF2, 0x67, 0x00, 0x10, 0x85, 0x30, 0x3A, + 0x74, 0x8F, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, + 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0xE0, 0x83, 0x0F, 0x3E, 0xF8, 0x00, 0x00, + }, }, { 67500000, { 0x00, 0xD1, 0x54, 0x52, 0x87, 0x03, 0x80, 0x40, -- Regards Re: IMX8MP HDMI 1024x600 resolution Can you help me to add these parameters in the table samsung_phy_pll_cfg? My linux-imx version is lf-6.12.y. Thank you for support. Re: IMX8MP HDMI 1024x600 resolution Hello, This isn't a standard resolution can be supported by current bsp, I need to generate timings parameters by tools, so please add these parameters in the table samsung_phy_pll_cfg of drivers/phy/freescale/phy-fsl-samsung-hdmi.c  Depend of your pixel clock, can be workable. Regards Re: IMX8MP HDMI 1024x600 resolution what's the samsung_phy_pll_cfg setting for 77MHZ pixel clock? Also could you please post the correct register setting in the imx8mp user manual? Is the imx8mp and imx8mm the same on HDMI?
查看全文
imx8mp 路由器环回,导致 NETDEV WATCHDOG RESET 且无法恢复 mac  你好,请问我们的 A 板和 B 板是否同时连接到交换机,然后 A-B 双向 ping,交换机由于操作不当(网线两端都连接到交换机)、内核出现问题(直接重启或调试卡住等)而出现环网,详细日志在附件中。 [ 314.850236] ------------[ cut here ]------------ [ 314.854871] NETDEV WATCHDOG: ens3 (fec): transmit queue 0 timed out 3384 ms [ 314.861910] WARNING: CPU:0 PID: 15 at net/sched/sch_generic.c:525 dev_watchdog+0x234/0x23c [ 314.870271] Modules linked in: [ 314.873329] CPU:0 PID: 15 Comm: ksoftirqd/0 Not tainted 6.6.3-g9d3450dbcab9-dirty#71 [314.881246] 硬件名称:恩智浦 i.mx8mPlus 开发板 (DT) [314.886555] pstate:60000005(nzCV daif-PAN-UAO-TCO-DIT-SSBS BTYPE=--) [314.893516] 电脑:dev_watchdog+0x234/0x23c [314.897528] lr:dev_watchdog+0x23c [314.897528] lr:dev_watchdog+0x23c [314.897528] lr:dev_watchdog+0x23c [314.dog+0x234/0x23c [314.901538] sp:fff8000823e3c20 [314.904850] x29:ffff8000823e3c20 x28:00000000000100 x27:fff8000823e3c0 [314.911989] x26:fff8000820d69c0 x25:00000000000 0000000d38 x24:ffff8000820d6000 [314.919128] x23:00000000000000 x22:ffff0000055503dc x21:fff000005550000 [314.926266] x20: ffff00000589c400 x19:fff000005550488 x18:00000000000006 [314.933404] x17:ffff8000821b62e8 x16:0000000073e4d9ea x15:fff8000823e3640 [314.940541] x14:00000000000000 x13:fff8000820ff820fa 0da0 x12:0000000000000672 [314.947679] x11:0000000000000226 x10: ffff800082148da0 x9: ffff8000820f0da0 [314.954818] x8:00000000fffff x7: fff800082148da0 x6:80000000ffff000 [314.954818] x8:00000000fffff x7: fff800082148da0 x6:80000000ffff000 [314.954818] x7: fff800082148da0 x6:80014.961956] x5:00000000000000 x4:00000000000000 x3:00000000000000 [314.969093] x2:00000000000000 x1:00000000000000 x0: fff00000412d880 i.MX8ULP Linux 回复: imx8mp router loopback, causing NETDEV WATCHDOG to reset and unable to restore the mac Hi, 最佳的方法是交换机侧设置防御,一般都有这种功能,可以参考这个: https://www.cisco.com/c/zh_cn/support/docs/smb/switches/cisco-250-series-smart-switches/smb5794-enable-loopback-detection-on-a-switch.html 当然也可以在驱动层添加广播检测统计,但是目前fec驱动不支持这项功能。 你可以通过一个脚本在用户层监测广播,如果出现大量广播,就把网卡down掉。 Best Regards, Zhiming 回复: imx8mp router loopback, causing NETDEV WATCHDOG to reset and unable to restore the mac Hi @yrj  这个问题更多得是和交换机有关,建议通过交换机的环路检测功能解决环网问题。 Best Regards, Zhiming 回复: imx8mp router loopback, causing NETDEV WATCHDOG to reset and unable to restore the mac 内核版本是:6.6.3
查看全文
セキュア キー レジストリを含むページを見つけるにはどうすればよいですか? こんにちは、 https://community.nxp.com/t5/NXP-Designs-Knowledge-Base/S32G-Host-Secure-Debug-with-Lauterbach-tool/ta-p/1729248 上記の情報に基づいて、UID と ADKP のペアを登録したいのですが、構成設定が見つかりません。 よろしくお願いします、 ジェフ・ファン Re: How can I find the page that includes the Secure Keys Registry? こんにちは@Jeff-CF-Huang 、 返信が遅くなり申し訳ございません。また、最初にご要望を正しく理解できなかったこともお詫び申し上げます。問題はコマンドラインの使用にあるようですが、次の手順に従って S32DS にセキュア キーを登録できるはずです。 これにより、必要なビューが開きます。 ただし、スマート カードが必要です。スマート カードをお持ちでない場合は、添付のプレゼンテーションを確認してください。 あなたのリクエストを正しく理解したかどうかをお知らせください。 Re: How can I find the page that includes the Secure Keys Registry? こんにちは、アレハンドロさん。 CMM スクリプトを実行する前に、キー ペア (UID + ADPK) を volcano に登録する必要があります。 現時点では、volcano を実行するときにこの問題が頻繁に発生します。 パスワード方法は Volcano がなくても正常に機能しますが、チャレンジ レスポンス方法では応答コードを生成するために Volcano が必要なため、問題が発生します。 よろしくお願いします、 ジェフ・ファン Re: How can I find the page that includes the Secure Keys Registry? こんにちは@Jeff-CF-Huang 、 私の理解では、ドキュメントのこの部分では、cmm スクリプトを変更するだけでよいと記載されています。 また、火山を手動で実行する必要はありません。 なぜ手動で火山を実行する必要があるのですか? よろしくお願いします。 Re: How can I find the page that includes the Secure Keys Registry? こんにちは、アレハンドロさん。 追加情報をありがとうございます。 現在、S32 デバッガーの代わりに TRACE32 を使用しています。 C:\T32\demo\arm\hardware\s32g2\s32g-vnp-evb\s32g-vnp-evb-m7 にあるスクリプト s32g-vnp-evb_sieve_sram_challenge_response.cmm を実行しました。 しかし、volkano を使用してキーを登録しようとすると、エラーが発生します。 よろしくお願いします、 ジェフ・ファン Re: How can I find the page that includes the Secure Keys Registry? こんにちは@Jeff-CF-Huang 、 最初に共有したドキュメントでは、セキュリティ保護されたデバイスをデバッグするために S32DS を構成する方法の詳細が説明されていないようです。詳細については次の投稿を確認してください。 S32デバッガとS32を使用したS32DS IDEsからの安全なデバッグ方法 これらの手順を実行する際に問題が発生した場合はお知らせください。 Re: How can I find the page that includes the Secure Keys Registry? こんにちは、A lejandroさん はい、おっしゃった手順に従いました。 現在、Secure Keys ページで ADKP を登録しようとしています。 ただし、セキュア キー レジストリ ページに「使用可能なスマート カードが検出されませんでした」というメッセージが表示されるという問題が発生しています。 これをどう解決したらよいかわかりません。   よろしくお願いします、 ジェフ・ファン Re: How can I find the page that includes the Secure Keys Registry? こんにちは@Jeff-CF-Huang 、 お問い合わせいただきありがとうございます。返信が遅くなり申し訳ございません。あなたの質問については、ADKP を S32G チップにフラッシュする手順を探しているものと想定しています。そのためには、HSE FW をダウンロードし、それぞれの HSE サービスに電話する必要があります。参考までに、HSE デモ アプリをCAN確認してください。どちらも次の手順に従って見つけるCAN。 - www.nxp.com/にアクセスし、アカウントにログインします。 - 「マイアカウント」をクリックし、 「ソフトウェアライセンスとサポート」をクリックします。 -アカウントの表示をクリック - すべての製品を含む次のようなページが表示されます。 - このパスをたどってください車載ソフトウェア - S32G 標準ソフトウェア>車載ソフトウェア - S32G - HSE ファームウェア -次に、設定に応じて、興味のあるバージョンを選択します。 - たとえば、 S32G2 用の HSE FW 0.2.64.0 SR リリースの場合、FW とデモ アプリの両方をダウンロードCAN。 実行すると、インストール ディレクトリ内のすべてのファイルが見つかります。 他にご質問がございましたらお知らせください  
查看全文
UART経由のBCM4345C5搭載i.MX 6ULLでのBluetooth初期化失敗 お問い合わせの概要 当社のカスタム i.MX 6ULL ボードで継続的に発生する不安定な Bluetooth 初期化エラーについて、公式のガイダンスを求めています。このシステムでは、UART3 (ttymxc2) 経由でコネクテッド Synaptics BCM4345C5 モジュールを使用します。ファームウェアのダウンロードは断続的にしか成功せず、徹底的なデバッグにもかかわらず安定した動作を実現できませんでした。この問題の核心は、UART インターフェースの pinctrl 構成に関連しているようです。 システム環境 プロセッサ: NXP i.MX 6ULL Bluetoothモジュール: Synaptics BCM4345C5 インターフェース: ハードウェアフロー制御 (RTS/CTS) を備えた UART3 (ttymxc2) オペレーティングシステム: Yocto ベースのカスタム Linux BlueZ バージョン: 5.64 ファームウェアローダー: brcm_patchram_plus 問題の説明 HCD ファームウェアをロードしようとすると、さまざまな予期しない障害が発生します。 brcm_patchram_plus が無期限にハングするか、HCI リセット コマンドを繰り返し送信します。 カーネル ログには、コマンド tx タイムアウトとフレーム再構成失敗 (-84) エラーが表示され、データ破損を示しています。 まれにダウンロードが完了したように見える場合、hci0 インターフェースは null BD アドレス (00:00:00:00:00:00) を報告し、DOWN のままになります。 トラブルシューティングの手順と主な結果 広範囲にわたるソフトウェアおよびハードウェア レベルのデバッグを実行しました。さまざまなボー レート、ファームウェア ローダー オプション、スクリプト ロジック (マルチステージ リセットや有効な BD アドレスの監視を含む) をテストしましたが、成功しませんでした。 調査の結果、UART ピンの異なる pinctrl 値によって障害の症状が大幅に変化することから、これはハードウェア レベルのシグナリングの問題であることが確認されました。 0x1b0b0: (TX/RX) & 0x130b0 (RTS/CTS): この非標準の混合構成は、断続的に動作する唯一の設定でした。 0x1b0b0 (すべてのピン): データ破損が発生しました (tx タイムアウト)。 0x170b1 (すべてのピン): ファームウェアのダウンロードが完全に停止しました。 Synapticsからの重要な情報: 私たちのハードウェアデザインでは、Synaptics から「UART ライン上のプルアップ抵抗を削除する」という直接の指示を受けました。これは、BCM4345C5 モジュールが外部プルアップで動作することを目的としていないことを強く示唆しています。 この新しい情報により、i.MX 6ULL の内部プルアップ抵抗器を有効にした以前の pinctrl テストが根本的に間違っており、信号の競合 (「ダブル プルアップ」状態) を引き起こした可能性が高いと考えられます。 NXPサポートへの質問 1. 「プルアップなし」デザインの pinctrl: Synaptics からの外部プルアップ抵抗なしで動作するための要件を考慮すると、i.MX 6ULL UART ピンに公式に推奨される pinctrl 値は何ですか?すべての内部プルアップ/プルダウン機能を無効にして、ピンを実質的に High-Z またはキーパー状態に設定する構成が必要です。 2. 推奨される初期化シーケンス: このハードウェアの組み合わせに必要な、文書化されていない特定の初期化シーケンス (電源、GPIO リセット、stty 構成の正確なタイミングなど) が欠落している可能性がありますか? 再開まで今しばらくお待ちください。 Re: Bluetooth Initialization Failure on i.MX 6ULL with BCM4345C5 via UART こんにちは@saintlee1107 ! 特定の要件に基づいて適切なレジスタ値を計算する方法を説明します。 要約すると、次の行は SoC の 2 つのレジスタを構成します。 MX6UL_PAD_UART3_TX_DATA__UART3_DCE_TX 0x1b0b0 1)MX6UL_PAD_UART3_TX_DATA__UART3_DCE_TX: This defines the pin multiplexing (pinmux) configuration, assigning the UART3 transmit function to the corresponding pad. 2)0x1b0b0: This hexadecimal value sets the electrical characteristics of the pad, including pull-up/down resistors, drive strength, speed, and other parameters. 内部プルアップまたはプルダウン抵抗を無効にするには、構成値のビット 12 をクリアします。 Wi-Fi モジュールに合わせたより正確な設定については、 i.MX6UL リファレンス マニュアルを参照してください。これを使用して、次のレジスタの適切な値を計算します。 SW_PAD_CTL_PAD_UART3_TX_DATA SW_PAD_CTL_PAD_UART3_RX_DATA SW_PAD_CTL_PAD_UART3_CTS_B SW_PAD_CTL_PAD_UART3_RTS_B よろしくお願いいたします! チャビラ Re: Bluetooth Initialization Failure on i.MX 6ULL with BCM4345C5 via UART こんにちは、チャビラさん。 早急なご対応ありがとうございます。UART3 の現在のデバイス ツリー構成は次のとおりです。 pinctrl_uart3: uart3grp { fsl、ピン = < MX6UL_PAD_UART3_TX_DATA__UART3_DCE_TX 0x1b0b0 MX6UL_PAD_UART3_RX_DATA__UART3_DCE_RX 0x1b0b0 MX6UL_PAD_UART3_RTS_B__UART3_DCE_RTS 0x130b0 MX6UL_PAD_UART3_CTS_B__UART3_DCE_CTS 0x130b0 >; }; 参考までに、完全な DTS ファイルを添付しました。 これは、TX/RX に 0x1b0b0、RTS/CTS に 0x130b0 を使用する混合構成です。この構成では、Bluetooth の初期化は断続的にしか機能しません。 他にもいくつかの構成を試しました。 すべてのピンが0x1b0b0に設定され、データが破損しました すべてのピンが0x170b1に設定されています - ファームウェアのダウンロードが完全に停止しました すべてのピンが0x1b0a0に設定されています - 駆動力が低下しましたが、それでも失敗しました Synaptics からは「UART ライン上のプルアップ抵抗を削除する」ようにアドバイスされているため、内部のプルアップ/プルダウン抵抗を完全に無効にする pinctrl 値が必要です。 内部のプルアップ/プルダウン抵抗を無効にするための適切な pinctrl 値を推奨していただけますか? ありがとう。 Re: Bluetooth Initialization Failure on i.MX 6ULL with BCM4345C5 via UART こんにちは@saintlee1107 ! NXP サポートにお問い合わせいただきありがとうございます。 内部プルアップ抵抗とプルダウン抵抗は、使用しているデバイス ツリー内で直接構成されます。 これらの抵抗を無効にするためにデバイス ツリーを変更するお手伝いをさせていただきます。現在のデバイスツリーまたは関連セクションを共有していただけますか? よろしくお願いします、 チャビラ
查看全文
配备 BCM4345C5 的 i.MX 6ULL 通过 UART 出现蓝牙初始化失败 询问摘要 我们正在为自定义 i.MX 6ULL 板上持续不稳定的蓝牙初始化失败寻求官方指导。系统使用一个通过 UART3(ttymxc2)连接的 Synaptics BCM4345C5 模块。固件下载只是间歇性成功,尽管进行了大量调试,我们仍无法实现稳定运行。问题的核心似乎与 UART 接口的 pinctrl 配置有关。 系统环境 处理器:NXP i.MX 6ULL 蓝牙模块:Synaptics BCM4345C5 接口:UART3 (ttymxc2),带硬件流量控制(RTS/CTS) 操作系统:基于 Yocto 的定制 Linux BlueZ 版本:5.64 固件加载器:brcm_patchram_plus 问题描述尝试加载 HCD 固件 时,我们会遇到一系列不可预测的故障: brcm_patchram_plus 无限期挂起或反复发送 HCI RESET 命令。 内核日志显示命令 tx 超时和帧重组失败 (-84) 错误,表明数据损坏。 在极少数情况下,下载似乎已经完成,但 hci0 接口报告的 BD 地址(00:00:00:00:00:00:00:00:00)为空,并保持 DOWN 状态。 故障排除步骤和主要发现 我们进行了大量的软件和硬件级调试。我们已经测试了各种波特率、固件加载器选项和脚本逻辑(包括多阶段 RESET 和监控有效的 BD 地址),但没有成功。 我们的调查证实这是一个硬件级信号问题,因为 UART 引脚的不同 pinctrl 值会极大地改变故障症状: 0x1b0b0:(TX/RX)& 0x130b0(RTS/CTS):这种非标准混合配置是唯一能间歇工作的设置。 0x1b0b0(所有引脚):导致数据损坏(tx 超时)。 0x170b1(所有引脚):导致固件下载完全停止。 来自 Synaptics 的重要信息: 我们收到了来自 Synaptics 的直接指导:",为我们的硬件设计移除 UART 线路" 上的上拉电阻。这强烈表明,BCM4345C5 模块不打算使用外部上拉。 这一新信息使我们相信,我们之前启用 i.MX 6ULL 内部上拉电阻器的 pinctrl 测试从根本上是不正确的,很可能会造成信号争用("双上拉" 条件)。 有关恩智浦支持的问题 1. 用于"No Pull-up" 设计的 pinctrl:鉴于 Synaptics 要求在无外部上拉电阻的情况下工作,官方推荐的 i.MX 6ULL UART 引脚 pinctrl 值是多少?我们需要的配置是禁用所有内部上拉/下拉功能,有效地将引脚设置为高 Z 或保持状态。 2。推荐的初始化顺序:这种硬件组合是否需要一个具体的、未记录的初始化顺序(例如,电源的精确时间、GPIO RESET 和 stty 配置),而我们可能会遗漏? 感谢您的支持。 Re: Bluetooth Initialization Failure on i.MX 6ULL with BCM4345C5 via UART 嗨,@saintlee1107! 我将解释如何根据您的具体要求计算适当的寄存器值。 总之,下面一行配置 SoC 的两个寄存器: MX6UL_PAD_UART3_TX_DATA__UART3_DCE_TX 0x1b0b0 1)MX6UL_PAD_UART3_TX_DATA__UART3_DCE_TX: This defines the pin multiplexing (pinmux) configuration, assigning the UART3 transmit function to the corresponding pad. 2)0x1b0b0: This hexadecimal value sets the electrical characteristics of the pad, including pull-up/down resistors, drive strength, speed, and other parameters. 要禁用内部上拉或下拉电阻,请清除配置值的第 12 位。 要为您的Wi-Fi模块量身定制更准确的配置,请参阅 i.MX6UL 参考手册。用它来计算下列寄存器的相应值: sw_pad_ctl_pad_uart3_tx_data sw_pad_ctl_pad_uart3_rx_data sw_pad_ctl_pad_uart3_cts_b sw_pad_ctl_pad_uart3_rts_b 顺祝商祺! 查维拉 Re: Bluetooth Initialization Failure on i.MX 6ULL with BCM4345C5 via UART 您好,Chavira, 感谢您的及时回复。以下是我们当前 UART3 的设备树配置: pinctrl_uart3:uart3grp { fsl、引脚 =< MX6UL_PAD_UART3_TX_DATA__UART3_DCE_TX 0x1b0b0 MX6UL_PAD_UART3_RX_DATA__UART3_DCE_RX 0x1b0b0 MX6UL_PAD_UART3_RTS_B__UART3_DCE_RTS 0x130b0 MX6UL_PAD_UART3_CTS_B__UART3_DCE_CTS 0x130b0 > ; }; 我附上了我们完整的 DTS 文件供你参考。 这是一种混合配置,TX/RX 使用 0x1b0b0,RTS/CTS 使用 0x130b0。在这种配置下,蓝牙初始化只能间歇性地工作。 我们还尝试了其他几种配置: 所有引脚均设置为 0x1b0b0 - 导致数据损坏 所有引脚均设置为 0x170b1 - 固件下载完全停止 所有引脚均设置为 0x1b0a0 - 降低驱动器强度,但仍失败 由于 Synaptics 建议我们"移除 UART 线路上的上拉电阻,因此" 我们需要一个能完全禁用内部上拉/下拉电阻的 pinctrl 值。 能否请您推荐禁用内部上拉/下拉电阻的适当 pinctrl 值? 谢谢。 Re: Bluetooth Initialization Failure on i.MX 6ULL with BCM4345C5 via UART 你好@saintlee1107! 感谢您联系恩智浦支持中心! 内部上拉和下拉电阻直接在您使用的设备树中配置。 我很乐意协助你修改设备树以禁用这些电阻。你能分享一下你当前的设备树或相关部分吗? 致以最崇高的敬意, Chavira
查看全文