Multi Source Translation Content

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Multi Source Translation Content

Discussions

Sort by:
Imx93 evk ONOFFボタンはスタンバイ機能にCAN使用できます。 こんにちは、imx93 evk の ONOFF ボタンは、短押しスタンバイと短押しウェイクアップ機能を再び CAN 実行しますか?どうやってそれを達成するのでしょうか? Re: Imx93 evk ONOFF button can be used for standby function. ああ、残念ですが、すでにお気づきですね。私の返答は無視してください。 Re: Imx93 evk ONOFF button can be used for standby function. @xiang_1001はい、ON/OFF ボタンは GPIO ラインにルーティングされ、さらに PMIC 入力に送られ、ウェイクアップ ソースとして機能するように構成CANます。 デフォルトの BSP の一部として、ONOFF ボタンを短く押すことで、システムを CAN サスペンド状態から復帰させることができます。「 echo mem > /sys/power/state 」を実行してサスペンド状態にしてから、オン/オフ ボタンを 1 回だけ押して復帰させてみることCANます。 または、オン/オフボタンをシステムの「サスペンド」に設定する場合は、次の手順を実行する必要があります。 1. conf ファイルを編集します - /etc/systemd/logind.conf HandlePowerKey変数を「suspend」に設定する 2. systemd-logindを再起動します。 systemctl で systemd-logind を再起動します。 この後、ONOFFボタンを短く押すことでimx93をサスペンド状態にすることができます。 回复: Imx93 evk ONOFF button can be used for standby function. この機能は、/etc /etc/systemd/logind.conf ファイルを変更することで実現されます。
View full article
ex_ecc with -DPTMW_SE05X_Auth=ECKey_PlatfSCP03 I'm using Plug & Trust middleware (v04.05.03) from  github plug-and-trust. Built ex_ecc with CMake flags: -DPTMW_Applet=SE05X_C -DPTMW_HostCrypto=OPENSSL -DPTMW_SE05X_Auth=ECKey_PlatfSCP03 Configured /tmp/SE05X/plain_scp.txt: Running ./ex_ecc /dev/i2c-0 fails with: SE ECDSA Public Key is not Provisioned!!! and sss_session_open failed. Full log: App :INFO :PlugAndTrust_v04.05.03_20240502 App :INFO :Running //tmp/ex_ecc App :INFO :Using PortName='/dev/i2c-0' (CLI) ... App :WARN :Using SCP03 keys from:'/tmp/SE05X/plain_scp.txt' App :ERROR:Unknown key type ... sss :INFO :atr (Len=35) ... sss :INFO :Newer version of Applet Found sss :INFO :Compiled for 0x70200. Got newer 0x70216 ... sss :ERROR:SE ECDSA Public Key is not Provisioned!!! App :ERROR:sss_session_open failed ... How do I provision the ECDSA public key for ECKey_PlatfSCP03 auth? Smart Cards Re: ex_ecc with -DPTMW_SE05X_Auth=ECKey_PlatfSCP03 Hi @carlos_o  Thanks for the previous guidance. I resolved the "SE ECDSA Public Key is not Provisioned" issue with the following steps on SE052F: Set default session login to SSS_HAVE_SE05X_AUTH_PLATFSCP03. Run the se05x_Delete_and_test_provision example to perform AddAttestationKeys and ReInitializeTestSample (all succeeded with kSE05x_Result_SUCCESS). Switch default session login to SSS_HAVE_SE05X_AUTH_ECKEY_PLATFSCP03. After this, ex_sss_boot_open succeeds, and ./ex_ecc /dev/i2c-0 runs without errors. Can you confirm if this workflow:SSS_HAVE_SE05X_AUTH_PLATFSCP03 -->provision --> SSS_HAVE_SE05X_AUTH_ECKEY_PLATFSCP03 is correct and recommended? Re: ex_ecc with -DPTMW_SE05X_Auth=ECKey_PlatfSCP03 Hi @KiteJLKo  Could you try to update to SE-PLUG-TRUST-MW_04.07.01?  Re: ex_ecc with -DPTMW_SE05X_Auth=ECKey_PlatfSCP03 Hi @carlos_o , My Env: yocto Linux  Re: ex_ecc with -DPTMW_SE05X_Auth=ECKey_PlatfSCP03 Hi @KiteJLKo  Could you please provide in which environment are you building the code? (Windows, linux, specific microcontroller)
View full article
IMX8MP uboot でデュアルチャネル LVDS を構成すると、色付きの縦線が表示されます。 背景: 現在、U-BootのLVDSディスプレイはパッチに従って設定されており、1280x800のシングルチャネル画面では正常に表示されます。これに基づき、1920x1080のデュアルチャネルディスプレイが必要となり、以下の設定が実装されています。 1. LVDS 画面パラメータを設定します。 タイミングLVDS: タイミングLVDS { クロック周波数 = <141140000>; hactive = <1920>; vアクティブ = <1080>; hfront-porch = <94>; hback-porch = <92>; hsync-len = <2>; vback-porch = <18>; vフロントポーチ = <16>; vsync-len = <2>; hsync-アクティブ = <1>; vsync-active = <1>; 非アクティブ = <1>; }; 2. レジスタ設定をldbに書き込みます。 //CH1 #CH1_DATA_WIDTH_24BIT を定義します (1 << 7) #define CH1_BIT_MAPPING_JEIDA (1 << 😎 #define CH1_BIT_MAPPING_SPWG (0 << 😎 media_blk_write(priv, LDB_CTRL, LDB_CH0_MODE_EN_TO_DI0 | CH0_DATA_WIDTH_24BIT | CH0_BIT_MAPPING_JEIDA | LDB_CH1_MODE_EN_TO_DI0 | CH1_DATA_WIDTH_24BIT | CH1_BIT_MAPPING_JEIDA); 3. 次の式に従って PLL 値を計算します。 PLL_1443X_RATE(987980000U, 823, 5, 2, 20971), ロゴは表示されているのですが、画面に色のついた縦線が表示されています。何が原因でしょうか?トラブルシューティングにご協力ください。ありがとうございます。ご返信をお待ちしております。 i.MX 8M | i.MX 8M ミニ | i.MX 8M ナノ i.MX8ULP Re: IMX8MP uboot下配置双通道lvds,显示存在彩色竖线 こんにちは@DADAXIN カーネルとU-BootのBMP表示機能が異なるため、BMP表示関連の関数に問題があると思われます。video_bmp_display関数を置き換えてみてください。 int video_bmp_display(struct udevice *dev, ulong bmp_image, int x, int y, bool align) { struct video_priv *priv = dev_get_uclass_priv(dev); int i, j; uchar *start, *fb; struct bmp_image *bmp = map_sysmem(bmp_image, 0); uchar *bmap; unsigned long width, height; unsigned long pwidth = priv->xsize; unsigned colours, bpix, bmp_bpix; enum video_format eformat; struct bmp_color_table_entry *palette; int hdr_size; int ret; if (!bmp || !(bmp->header.signature[0] == 'B' && bmp->header.signature[1] == 'M')) { printf("Error: no valid bmp image at %lx\n", bmp_image); return -EINVAL; } video_bmp_get_info(bmp, &width, &height, &bmp_bpix); hdr_size = get_unaligned_le16(&bmp->header.size); debug("hdr_size=%d, bmp_bpix=%d\n", hdr_size, bmp_bpix); palette = (void *)bmp + 14 + hdr_size; colours = 1 << bmp_bpix; bpix = VNBITS(priv->bpix); eformat = priv->format; if (bpix != 1 && bpix != 8 && bpix != 16 && bpix != 32) { printf("Error: %d bit/pixel mode, but BMP has %d bit/pixel\n", bpix, bmp_bpix); return -EINVAL; } /* * We support displaying 8bpp and 24bpp BMPs on 16bpp LCDs * and displaying 24bpp BMPs on 32bpp LCDs */ if (bpix != bmp_bpix && !(bmp_bpix == 8 && (bpix == 16 || bpix == 24 || bpix == 32)) && !(bmp_bpix == 24 && (bpix == 16 || bpix == 32))) { printf("Error: %d bit/pixel mode, but BMP has %d bit/pixel\n", bpix, colours); return -EPERM; } debug("Display-bmp: %d x %d with %d colours, display %d\n", (int)width, (int)height, (int)colours, 1 << bpix); unsigned long bmp_stride_bytes = ((width * bmp_bpix + 31) / 32) * 4; unsigned long dst_bytes_per_pixel = bpix / 8; if (!dst_bytes_per_pixel) dst_bytes_per_pixel = 1; if (align) { video_splash_align_axis(&x, priv->xsize, width); video_splash_align_axis(&y, priv->ysize, height); } if ((x + width) > pwidth) width = pwidth - x; if ((y + height) > priv->ysize) height = priv->ysize - y; bmap = (uchar *)bmp + get_unaligned_le32(&bmp->header.data_offset); start = (uchar *)(priv->fb + (y + height) * priv->line_length + x * (bpix / 8)); /* Move back to the final line to be drawn (BMP 自下而上存储) */ fb = start - priv->line_length; switch (bmp_bpix) { case 1: case 8: { unsigned long src_bpp_bytes = 1; unsigned long dst_line_bytes = width * (bpix / 8); if (!dst_line_bytes) dst_line_bytes = width; for (i = 0; i < height; ++i) { schedule(); for (j = 0; j < width; j++) { write_pix8(fb, bpix, eformat, palette, bmap); bmap++; fb += (bpix / 8) ? (bpix / 8) : 1; } bmap += bmp_stride_bytes - width * src_bpp_bytes; fb -= dst_line_bytes + priv->line_length; } break; } case 16: if (CONFIG_IS_ENABLED(BMP_16BPP)) { unsigned long src_bpp_bytes = 2; for (i = 0; i < height; ++i) { schedule(); for (j = 0; j < width; j++) { *fb++ = *bmap++; *fb++ = *bmap++; } bmap += bmp_stride_bytes - width * src_bpp_bytes; fb -= width * 2 + priv->line_length; } } break; case 24: if (CONFIG_IS_ENABLED(BMP_24BPP)) { unsigned long src_bpp_bytes = 3; for (i = 0; i < height; ++i) { for (j = 0; j < width; j++) { if (bpix == 16) { /* 16bit 565RGB format */ *(u16 *)fb = ((bmap[2] >> 3) << 11) | ((bmap[1] >> 2) << 5) | (bmap[0] >> 3); bmap += 3; fb += 2; } else if (eformat == VIDEO_X2R10G10B10) { u32 pix; pix = (u32)(*bmap++) << 2U; pix |= (u32)(*bmap++) << 12U; pix |= (u32)(*bmap++) << 22U; *fb++ = pix & 0xff; *fb++ = (pix >> 8) & 0xff; *fb++ = (pix >> 16) & 0xff; *fb++ = pix >> 24; } else if (eformat == VIDEO_RGBA8888) { u32 pix; pix = (u32)(*bmap++) << 8U; /* blue */ pix |= (u32)(*bmap++) << 16U; /* green */ pix |= (u32)(*bmap++) << 24U; /* red */ *fb++ = (pix >> 24) & 0xff; *fb++ = (pix >> 16) & 0xff; *fb++ = (pix >> 8) & 0xff; *fb++ = 0xff; } else { *fb++ = *bmap++; *fb++ = *bmap++; *fb++ = *bmap++; *fb++ = 0; } } bmap += bmp_stride_bytes - width * src_bpp_bytes; fb -= priv->line_length + width * (bpix / 8); } } break; case 32: if (CONFIG_IS_ENABLED(BMP_32BPP)) { unsigned long src_bpp_bytes = 4; for (i = 0; i < height; ++i) { for (j = 0; j < width; j++) { if (eformat == VIDEO_X2R10G10B10) { u32 pix; pix = (u32)(*bmap++) << 2U; pix |= (u32)(*bmap++) << 12U; pix |= (u32)(*bmap++) << 22U; pix |= ((u32)(*bmap++) >> 6) << 30U; *fb++ = pix & 0xff; *fb++ = (pix >> 8) & 0xff; *fb++ = (pix >> 16) & 0xff; *fb++ = pix >> 24; } else if (eformat == VIDEO_RGBA8888) { u32 pix; pix = (u32)(*bmap++) << 8U; /* blue */ pix |= (u32)(*bmap++) << 16U; /* green */ pix |= (u32)(*bmap++) << 24U; /* red */ bmap++; /* alpha (忽略) */ *fb++ = (pix >> 24) & 0xff; *fb++ = (pix >> 16) & 0xff; *fb++ = (pix >> 8) & 0xff; *fb++ = 0xff; /* opacity */ } else { *fb++ = *bmap++; *fb++ = *bmap++; *fb++ = *bmap++; *fb++ = *bmap++; } } bmap += bmp_stride_bytes - width * src_bpp_bytes; fb -= priv->line_length + width * (bpix / 8); } } break; default: break; }; /* Find the position of the top left of the image in the framebuffer */ fb = (uchar *)(priv->fb + y * priv->line_length + x * (bpix / 8)); ret = video_sync_copy(dev, start, fb); if (ret) return log_ret(ret); return video_sync(dev, false); } よろしくお願いします、 志明 Re: IMX8MP uboot下配置双通道lvds,显示存在彩色竖线 こんにちは、@Zhiming おはようございます!仕事が忙しくて返信が遅くなり申し訳ありません。 gateworks.bmp を試してみましたが、表示があまり良くありませんでした。下の logo.png をご覧ください。uboot ドライバを確認したところ、VIDEO_FONT_16X32 の設定オプションが見つかりませんでした。検証として、1920x1080 のロゴ画像を 1280x800 のロゴに変換し、uboot とカーネルの両方に配置しました。uboot のロゴは斜めの角度でギザギザのエッジが表示されましたが、カーネルは問題なく表示されました。この問題についてご報告いただきありがとうございます。 Re: IMX8MP uboot下配置双通道lvds,显示存在彩色竖线 こんにちは@DADAXIN この問題は、ソース素材の解像度に関係しています。ソース素材の解像度を上げると、ギザギザが大幅に軽減されます。添付ファイルのロゴの解像度は296x72ですが、実際の画面の表示領域は296x72ピクセルではないため、引き伸ばされます。同じディレクトリにあるtools/logos/gateworks.bmp(600x93)ファイルを試して、水平方向のギザギザが軽減されるかどうかを確認してください。フォントについては、高解像度画面に適したVIDEO_FONT_16X32オプションを有効にしてみてください。 よろしくお願いします、 志明 Re: IMX8MP uboot下配置双通道lvds,显示存在彩色竖线 こんにちは@DADAXIN 現在使用しているロゴ画像(上記右側のもの)のコピーをアップロードしていただけますか?デュアルチャネル1080pモードでも、デフォルトのNXPロゴは表示されますか? よろしくお願いします、 志明 Re: IMX8MP uboot下配置双通道lvds,显示存在彩色竖线 こんにちは、ご返信ありがとうございます!状況は以下のとおりです。 1. 添付ファイルに示すように、デフォルトの NXP ロゴ表示にもギザギザの外観が現れます。 2. 新しい1920x1080のロゴ画像をインストールしました。U-Bootでは傾いた部分がギザギザに見えますが、残りの部分は正常に表示されます。しかし、カーネルではファイルが大きすぎて表示できません。 3. ロゴ画像を 1280x800 の解像度に変換すると、U-Boot でも同じ効果が維持され、カーネルに正しく表示されます。 4. 1280x800 シングルチャネル画面に切り替えると、uboot とカーネルの両方が正常に表示されます。 シングルチャネル ディスプレイは正常に動作しますが、デュアルチャネル モードでロゴ画像が変更されると、U-Boot が異常表示されます。 Re: IMX8MP uboot下配置双通道lvds,显示存在彩色竖线 こんにちは@DADAXIN ロゴを差し替える前、デフォルトのロゴの表示やフォントに問題はありましたか? 上の画像をよく確認したところ、元の素材自体の解像度が画面と互換性がないようです。高解像度での表示でどうなるかテストできる、より高解像度の画像をお持ちでしょうか? また、カーネル段階で同じロゴ素材が表示された場合にも、このような現象が発生しますか? よろしくお願いします、 志明 Re: IMX8MP uboot下配置双通道lvds,显示存在彩色竖线 早上好、志明 内部コアの lvds レジスタの書き込み;私も uboot で構成を実行しました;しかし結果は改善されませんでした:ロゴの斜部分も存在します;请问その残りの操作は拡張可能です;期待してください! Re: IMX8MP uboot下配置双通道lvds,显示存在彩色竖线 こんにちは@DADAXIN この設定はカーネルの特定の部分に対応していますが、当時はシングルチャネルテストのみが実施されていたため、U-Bootパッチには含まれていません。U-Bootパッチでlvds_ctrlレジスタに値を書き込む必要があります。 https://github.com/nxp-imx/linux-imx/blob/lf-6.12.y/drivers/phy/freescale/phy-fsl-imx8mp-lvds.c#L113 よろしくお願いします、 志明 Re: IMX8MP uboot下配置双通道lvds,显示存在彩色竖线 ご指摘ありがとうございます。ロゴ画像の問題は、フォントとパターンの斜め部分にギザギザ感があるというものです。 Re: IMX8MP uboot下配置双通道lvds,显示存在彩色竖线 こんにちは。U-Boot は対応する PHY ファイル「fsl,imx8mp-lvds-phy」を見つけることができません。レジスタのどこに書き込めばいいのでしょうか? <8MP_LVDS_patch> パッチにもこのドライバファイルは含まれていません。 Re: IMX8MP uboot下配置双通道lvds,显示存在彩色竖线 こんにちは@DADAXIN Linux LVDS PHY ドライバーの設定を参照して、LVDS_CTRL のこれらの 3 つのビットを調整すると、ドライバーの機能が大幅に向上するはずです。 phy_write(phy, priv->devdata->lvds_ctrl, CC_ADJ(0x2) | PRE_EMPH_EN | PRE_EMPH_ADJ(0x3)); よろしくお願いします、 志明 Re: IMX8MP uboot下配置双通道lvds,显示存在彩色竖线 ご返信ありがとうございます!ロゴ画像の縁がギザギザになっています。1280x800のシングルチャンネル画面に切り替えると問題は解決しました。パネルクロックやPLL値をいろいろ調整しても表示は改善されませんでした。何かアドバイスはありますか? Re: IMX8MP uboot下配置双通道lvds,显示存在彩色竖线 こんにちは、 ロゴに何か問題がありますか?テキストだけであれば、LVDSコントローラーではなく、U-Bootのフォント最適化に関係している可能性があります。 よろしくお願いします、 志明 Re: IMX8MP uboot下配置双通道lvds,显示存在彩色竖线 こんにちは。LVDS画面のロゴ表示に問題が発生しています。ロゴの文字がギザギザに表示されてしまいます。どうすれば改善できるでしょうか?ご返信をお待ちしております。 Re: IMX8MP uboot下配置双通道lvds,显示存在彩色竖线 ご指導ありがとうございます。それが問題の核心です。 Re: IMX8MP uboot下配置双通道lvds,显示存在彩色竖线 こんにちは、 コードには次の行が含まれています: val |= CH_EN。ここでは、チャネル0とBIT0のみが有効になっていますが、BIT2も設定する必要があります。 よろしくお願いします、 志明 Re: IMX8MP uboot下配置双通道lvds,显示存在彩色竖线 こんにちは。ご返信ありがとうございます。LDB_CH1_MODE_EN_TO_DI0 を LDB_CH1_MODE_EN_TO_DI1 に変更しても、表示効果は変わりませんでした。 Re: IMX8MP uboot下配置双通道lvds,显示存在彩色竖线 こんにちは@DADAXIN LDB_CH1_MODE_EN_TO_DI0 を LDB_CH1_MODE_EN_TO_DI1 に変更してみてください。 よろしくお願いします、 志明 Re: IMX8MP uboot下配置双通道lvds,显示存在彩色竖线 こんにちは、志明 感激の逆行および問題の発生、最近の動作はより混雑しており、逆行はより混雑しています;私たちは代替操作を実行しました 1、現在 5.10.72 对应的 uboot2021 バージョン、変更後の会議には video_format 定義がありません;しかし、現在 6.6.52 对应的 uboot2024 バージョンは有ります、私もこの部分の構成: +++ b/include/video.h @@ -56,6 +56,15 @@ 列挙型 video_log2_bpp { ビデオ_BPP32、 }; + +列挙型ビデオフォーマット { + ビデオ_不明、 + ビデオ_RGBA8888、 + ビデオ_X8B8G8R8、 + ビデオ_X8R8G8B8、 + ビデオ_X2R10G10B10、 +}; + 2、もう一つの輖译、この一部の错、不明確怎么解决; 希望は你のもう一つの回帰を得ることができます、感谢! Re: IMX8MP uboot下配置双通道lvds,显示存在彩色竖线 こんにちは@DADAXIN @Zhiming_Liu こんにちは。私もあなたと同じ問題(エイリアスされたテキスト)を抱えています。この関数(video_bmp_display)を変更した後、表示が乱れるのはなぜか教えていただけますか?他に何か変更しましたか?
View full article
Kinetis (.. /45/47/43;MCX W71/72/70) & MCX W23 Power 我的 工具(包括本地化) 本页专用于 Kinetis(KW35/KW38/KW45/KW47)和 MCX Wx(MCX W71/72 & MCX W23)Power 我的 工具。 它将帮助您估算应用(汽车或物联网)的功耗,并评估解决方案的电池寿命。 本页包含 2 个专用的电源配置工具: 1.'One 连接 Power Profiling Tool' 包括: 新增:基于仿真的KW43(汽车)和 MCX W70(工业物联网)产品独立组网 (SA)。 KW3x/KW4x(汽车)和 MCX W7x(工业物联网)产品独立组网 (SA)。 MCX W23 (IIoT) 产品独立组网 \\(SA\\)。 K32W0/QN9090、KW41、QN9080 产品独立组网 (SA)。 MCX W71 & W72 独立组网 \\(SA\\) 产品 (IIoT)。 新增:基于仿真的独立组网 (SA) (IIoT) 的 MCX W70 产品。 BLE 802.15.4 物质& ZED SmartFob应用程序(汽车): BLE/KW45 + UWB Ranger4 + SE + 运动传感器 新产品:BLE/KW47 + UWB Ranger5 + SE + 运动传感器 2.CCC CS 应用程序(汽车) 1。'One Connectivity 电源分析工具' 概述: 安装文件可在 OneConnectivityPowerProfilingtool_SDK_26_03.ZIP 文件中。文件中。 请按照快速启动说明使用该工具。 要使用最新版本更新工具,只需下载 ZIP 中的 source_file.txt。 新增:One Connectivity 电源配置工具中提供适用于 BLE (KW45/47) 和 UWB (Ranger4/5) 的 Smart Fob 应用程序(汽车)   概述: 2.KW43 CCC CS 本地化 应用(汽车) 该工具基于 R&D 设计人员提供的模拟数据。 有关功耗和低功耗应用笔记,请参阅产品页面。以下是一些直接链接,以方便您使用: BLE AN14554 Kinetis KW47 蓝牙 LE 功率我的分析 版本.pdf AN14739 MCX W72 低功耗蓝牙我的分析 Rev2.0.pdf Kinetis KW45 和 K32W1 蓝牙 LE 功耗分析 MCX W71 蓝牙 LE 功耗分析 AN14659:MCX W23 低功耗蓝牙功耗分析|恩智浦半导体 CS AN14628_KW47_CCC_CS_Power_Profile_estimator tool_release.pdf 802.15.4 AN14841 MCX W72 802.15.4 Matter 和 Zigbee 电源我的 analysis.pdf 电源管理 KW45/K32W148-电源管理单元硬件 MCXW71 - 电源管理单元硬件 请找到这个重要链接,使用 KW45/MCX W71 或 KW47/MCX W72 版本 PCB,以及所有与无线电性能和无线电认证 (CE/FCC/IC) 相关的内容: 使用KW45版本 PCB 的最佳方式(汽车配件...-恩智浦社区 首次成功设计 KW47(汽车级)或 MCX W72(物联网 / 工业级)PCB 的最佳方法 产品:K32W0 产品:K32W1 产品:KW 34|35|36 产品:KW 37|38|39 产品:KW41Z |31Z |21Z 产品:QN9080|SIP 产品:QN9090|30 Re: Kinetis (KW35/38/KW45 & K32W1/MCX W71) Power Profile Tools (including Localization) 嗨,埃弗雷特、 密码的设置是为了避免在太多细节上出现变化或竞争对手的基准。 很抱歉给您带来不便,但这是不可能的。 Re: Kinetis (KW35/38/KW45 & K32W1/MCX W71) Power Profile Tools (including Localization) 你好,克里斯托夫-梅纳德。 @christophe_menard能否提供Sheet 保护 密码 ,非常感谢。
View full article
GHS マルチデバッガ - マイクロコントローラの POR 後に再開しない こんにちは。私は Renasas E1 デバッガーと GHS マルチ デバッガーを使用しています。マイクロコントローラの電源をオフにして再びオンにすると、デバッガー ウィンドウが停止します。デバッグのために再開する必要があります。これに対する解決策を提供してください。セッションを再開するためにソフトウェアを再度フラッシュせずにこれを行うことは可能ですか。 Re: GHS Multi debugger - Not resuming after Microcontroller POR こんにちは@danielmartynek 、 私はルネサスRH850 - RH850/C1M-A2を使用しています よろしくお願い申し上げます。 Re: GHS Multi debugger - Not resuming after Microcontroller POR こんにちは@Lokesh_0109さん、 MCU部分を指定してください。 よろしくお願い申し上げます。
View full article
S32K WDG 您好,有个问题想请教一下。对于S32K312芯片的看门狗模块,超时过后可以配置成两种回应方式。第一种是对于任何超时,产生复位。第二种方式,是第一次超时产生中断,第二次超时产生复位。我理解的是,第一次超时的时间是我们设置的喂狗时间,但我不知道第二次超时的时间是指什么时间。想请您帮忙解答一下。期待您的回复! Re: S32K WDG 你好@夏超、 这是相同的超时。 S32K3xx 参考手册第 66 章软件监视程序定时器 (SWT) 对此进行了详细解释。 恩智浦提供了两个 RTD 驱动程序 SWT_Ip 和 MCAL WDG,您可以使用它们来配置硬件。 如果您有任何具体问题,请告诉我、 此致问候 丹尼尔
View full article
ADC supported instances for S32K36x Company: AVNET Contact Name: Norm Siegel Device: S32K36x Hi team, Just to report that according with Table 270. Configuration and supported instances of reference manual, "ADC_0/ADC_1/ADC_2 are not available in S32K36x". However, Pins Tool (RTD 6.0.0) allows to assign pins to such ADC instances. Adc Hardware Unit of Adc_Sar_Ip driver properly do not include ADC_0/ADC_1/ADC_2. Adc Target Mask of Bctu_Ip driver should generate an error/warning when user select ADC_0/ADC_1/ADC_2. Please share your feedback about it. Thank you in advance for your help. Have a nice day! Best Regards, Leonardo RTD Re: ADC supported instances for S32K36x Hello @_Leo_, The RTD dev team confirmed this issue is a bug of RTD driver. The ticket ID: ARTD-196382 Best regards, Dan Re: ADC supported instances for S32K36x Same issue for SDADC, according to reference manual "SDADC_2/SDADC_3 are not available in S32K36x". But Config Tools seems to allow their usage.
View full article
i.MX8MQ の Jailhouse ハイパーバイザーの Inmate セル作成に関する問題 拝啓、 NXP i.MX 8MQ EVK ボードの Jailhouse 経由でカスタム (E-call) Inmate Linux デモ セルを作成しようとしています。 実行したすべての手順は、添付の「NXP_Jailhouse_Ticket.txt」に追加されています。ファイル。 直面している問題:- コンパイルに問題が発生しています。 linux-inmate-demo.c をコンパイルする方法ファイルと.oを生成するおよび.cellファイル? 適切な.bbを作成する方法linux-inmate-demo.c をコンパイルするためのファイルファイルと.oを生成するおよび.cellファイルをコピーして最終画像に追加しますか? カスタム刑務所の囚人セルを作成するためのアプリケーションノートをご提供ください または 同じ解決策が記載されている以前の NXP コミュニティ チケットへのリンクはありますか? また、上記の手順について訂正し、解決策を提供してください。 i.MX8ULP Re: Issue with Jailhouse hypervisor Inmate cell Creation for i.MX8MQ 受刑者がインターネットにアクセスできるようにネットワークを設定する方法については、以下を参照してください。セットで USB ネットまたは eth ネットを使用するように更新する必要があります。 ネットワークを使用して2台目のLinuxのネットワークを設定する方法 Linuxが最初に起動した後 sysctl -w net.ipv4.ip_forward=1 sysctl -p /etc/sysctl.conf ルートセルが有効になった後 iptables -A 転送 -i eth1 -j 受け入れる iptables -A FORWARD -o eth1 -j ACCEPT iptables -t nat -A ポストルーティング -o eth0 -j マスカレード 2回目のLinux起動後 ifconfig eth1または2 192.168.1.4最初のLinuxルートセル ifconfig eth0 192.168.1.52番目のLinux囚人セル 「ip route 192.168.1.4 経由でデフォルトを追加2番目のLinux用の「dev eth0」 「ipルート 10.193.100.0/24 を追加192.168.1.4経由2番目のLinux用の「dev eth0」 これで、「mount -t nfs 10.193.108.xx:/ホーム/xxx/nfs」と実行できるようになります。/分" 手順3と4で、ネットワークに応じて10.193.xx.xxを自分のものに更新します。 よろしくお願いします。 彭。 Re: Issue with Jailhouse hypervisor Inmate cell Creation for i.MX8MQ こんにちは、ペンさん。 サポートありがとうございます。ルート セルから受刑者セルに 'scp' をコピーできるようになりました。 基本的に、私たちは Inmate セル側で MQTT を使用して E-call アプリケーションを維持したいと考えています。 ルートから受刑者セルまで読み取り/書き込み共有メモリを共有できます。また、お客様のご提案どおりに、ルート/受刑者セルに静的 IP を付与することもできます。 ここで、ルート セルから受信したデータをクラウドに送信するために、受刑者セルにインターネット接続が必要になります。 Quectel EC25 モジュールを USB ポート経由で NXP i.MX8MQ ボードにコネクテッドしました。 ルートセルデータのIFCONFIG: 」 ifconfig eth0: flags=-28669 mtu 1500 イーサ 00:04:9f:05:a5:9c txqueuelen 1000 (イーサネット) RXパケット 0 バイト 0 (0.0 B) RXエラー 0 ドロップ 0 オーバーラン 0 フレーム 0 送信パケット 0 バイト 0 (0.0 B) 送信エラー 0 ドロップ 0 オーバーラン 0 キャリア 0 衝突 0 eth1: flags=-28605 mtu 16384 inet 192.168.0.3 ネットマスク 255.255.255.0ブロードキャスト 192.168.0.255 inet6 fe80::88f0:a7ff:fe40:2407 プレフィックス長 64 スコープID 0x20 ether 8a:f0:a7:40:24:07 txqueuelen 1000 (イーサネット) RXパケット 41 バイト 7030 (6.8 KiB) RXエラー 0 ドロップ 0 オーバーラン 0 フレーム 0 送信パケット 71 バイト 18812 (18.3 KiB) 送信エラー 0 ドロップ 0 オーバーラン 0 キャリア 0 衝突 0 lo: flags=73 mtu 65536 inet 127.0.0.1 ネットマスク 255.0.0.0 inet6 ::1 プレフィックス長 128 スコープID 0x10 loop txqueuelen 1000 (ローカルループバック) RXパケット 103 バイト 9268 (9.0 KiB) RXエラー 0 ドロップ 0 オーバーラン 0 フレーム 0 送信パケット 103 バイト 9268 (9.0 KiB) 送信エラー 0 ドロップ 0 オーバーラン 0 キャリア 0 衝突 0 usb0: flags=-28605 mtu 1500 inet 192.168.225.39ネットマスク 255.255.255.0ブロードキャスト 192.168.225.255 inet6 2401:4900:4bb5:e7a7:609f:c3ff:fe2c:903b プレフィックス長 64 スコープID 0x0 inet6 fe80::609f:c3ff:fe2c:903b プレフィックス長 64 スコープID 0x20 ether 62:9f:c3:2c:90:3b txqueuelen 1000 (イーサネット) RXパケット 84バイト 7614 (7.4 KiB) RXエラー 0 ドロップ 0 オーバーラン 0 フレーム 0 送信パケット 117 バイト 13860 (13.5 KiB) 送信エラー 0 ドロップ 0 オーバーラン 0 キャリア 0 衝突 0 「 ご覧のとおり、ROOT セル側でインターネット接続が確立されています。 以下はPINGコマンドの出力です 」 root@imx8mqevk:/ホーム ping 8.8.8.8 PING 8.8.8.8 (8.8.8.8) 56(84) バイトのデータ。 8.8.8.8 からの 64 バイト: icmp_seq=1 ttl=114 time=193 ms 8.8.8.8 からの 64 バイト: icmp_seq=2 ttl=114 time=68.9MS 8.8.8.8 からの 64 バイト: icmp_seq=3 ttl=114 time=62.8MS 8.8.8.8 からの 64 バイト: icmp_seq=4 ttl=114 time=68.5 ms 8.8.8.8 からの 64 バイト: icmp_seq=5 ttl=114 time=66.5 ms 8.8.8.8 からの 64 バイト: icmp_seq=6 ttl=114 time=78.6 ms 8.8.8.8 からの 64 バイト: icmp_seq=7 ttl=114 time=71.0MS 」 現在、私は Inmate セルでインターネットの問題に直面しています。IFCONFIG ログは以下のとおりです。 」 root@imx8mqevk:~ ifconfig eth0 リンクカプセル化:イーサネット HWaddr 6E:58:98:59:01:A0 inetアドレス:192.168.0.4放送:192.168.0.255マスク:255.255.255.0 inet6 アドレス: fe80::6c58:98ff:fe59:1a0/64 スコープ:リンク アップブロードキャスト 実行中 マルチキャスト MTU:16384 メトリック:1 RXパケット:184 エラー:0 ドロップ:0 オーバーラン:0 フレーム:0 送信パケット:65 エラー:0 ドロップ:0 オーバーラン:0 キャリア:0 衝突:0 トランザクション数:1000 RX バイト:78814 (76.9 KiB) TX バイト:14002 (13.6 KiB) lo リンクカプセル化:ローカルループバック inetアドレス:127.0.0.1マスク:255.0.0.0 inet6 アドレス: ::1/128 スコープ:ホスト アップループバック実行中 MTU:65536 メトリック:1 RXパケット:22 エラー:0 ドロップ:0 オーバーラン:0 フレーム:0 送信パケット:22 エラー:0 ドロップ:0 オーバーラン:0 キャリア:0 衝突:0 トランザクション数:1000 RX バイト:3897 (3.8 KiB) TX バイト:3897 (3.8 KiB) 」 また、ルートセル側での IP 転送も試しました。 受刑者の独房に外部ネットワークへのアクセスを許可するには: 根細胞内 エコー 1 > /proc/sys/net/ipv4/ip_forward iptables -A FORWARD -i eth1 -o usb0 -j ACCEPT iptables -A FORWARD -i usb0 -o eth1 -j ACCEPT iptables -t nat -A ポストルーティング -o usb0 -j マスカレード 」 上記のコマンドを実行すると、以下のログが出力されます。 」 root@imx8mqevk:/ホーム iptables -t nat -A POSTROUTING -o usb0 -j MASQUERADE [ 1869.738194] 監査: タイプ=1325 監査(1755848821.593:11):テーブル=nat ファミリ=2 エントリ=7 op=xt_replace pid=713 comm="iptables" root@imx8mqevk:/ホーム [ 1869.749806] 監査: タイプ=1300 監査(1755848821.593:11):アーチ = c00000b7 syscall = 208 成功 = はい exit = 0 a0 = 4 a1 = 0 a2 = 40 a3 = aaaafd66a400 items = 0 ppid = 607 pid = 713 auid = 4294967295 uid = 0 gid = 0 euid = 0 suid = 0 fsuid = 0 egid = 0 sgid = 0 fsgid=0 tty=ttymxc0 ses=4294967295 comm="iptables" exe="/usr/sbin/xtables-legacy-multi" key=(null) [ 1869.779649] 監査: タイプ=1327 監査(1755848821.593:11):proctitle=69707461626C6573002D74006E6174002D4100504F5354524F5554494E47002D6F0075736230002D6A004D415351554552414445" 」 ルートセルからDmesgログも出力します 」 [ 71.141601]刑務所セル「ecall-linux-inmate-demo」を作成しました [ 77.822386]IPv6: ADDRCONF(NETDEV_CHANGE): eth1: リンクが準備完了になりました [ 206.451703]監査: タイプ=1325 監査(1755847158.198:4):テーブル=nat ファミリ=2 エントリ=0 op=xt_register pid=651 comm="iptables" [ 206.463131]監査: タイプ=1300 監査(1755847158.198:4):Arch=c00000b7 syscall=209 success=yes exit=0 a0=4 a1=0 a2=40 a3=ffffe78d01c0 items=0 ppid=607 pid=651 auid=4294967295 uid=0 gid=0 euid=0 suid=0 fsuid=0 egid=0 sgid=0 fsgid=0 tty=ttymxc0 ses=4294967295 comm="iptables" exe="/usr/sbin/xtables-legacy-multi" key=(null) [ 206.493176]監査: タイプ=1327 監査(1755847158.198:4):proctitle=69707461626C6573002D74006E6174002D4100504F5354524F5554494E47002D6F0065746830002D6A004D415351554552414445 [ 206.508268]監査: タイプ=1325 監査(1755847158.202:5):テーブル=nat ファミリ=2 エントリ=5 op=xt_replace pid=651 comm="iptables" [ 206.519201]監査: タイプ=1300 監査(1755847158.202:5):arch=c00000b7 syscall=208 成功=はい 終了=0 a0=4 a1=0 a2=40 a3=aaaabb51c230 項目=0 ppid=607 pid=651 auid=4294967295 uid=0 gid=0 euid=0 suid=0 fsuid=0 egid=0 sgid=0 fsgid=0 tty=ttymxc0 ses=4294967295 comm="iptables" exe="/usr/sbin/xtables-legacy-multi" キー=(null) [ 206.547353]監査: タイプ=1327 監査(1755847158.202:5):proctitle=69707461626C6573002D74006E6174002D4100504F5354524F5554494E47002D6F0065746830002D6A004D415351554552414445 [ 217.506636]監査: タイプ=1325 監査(1755847169.257:6):テーブル=nat ファミリ=2 エントリ=6 op=xt_replace pid=657 comm="iptables" [ 217.517791]監査: タイプ=1300 監査(1755847169.257:6):arch=c00000b7 syscall=208 成功=はい 終了=0 a0=4 a1=0 a2=40 a3=aaaaec783230 項目=0 ppid=607 pid=657 auid=4294967295 uid=0 gid=0 euid=0 suid=0 fsuid=0 egid=0 sgid=0 fsgid=0 tty=ttymxc0 ses=4294967295 comm="iptables" exe="/usr/sbin/xtables-legacy-multi" キー=(null) [ 217.547639]監査: タイプ=1327 監査(1755847169.257:6):proctitle=69707461626C6573002D74006E6174002D4100504F5354524F5554494E47002D6F0075736230002D6A004D415351554552414445 [ 294.389911]監査: タイプ=1325 監査(1755847246.146:7):テーブル=フィルター ファミリ=2 エントリ=0 op=xt_register pid=659 comm="iptables" [ 294.401564]監査: タイプ=1300 監査(1755847246.146:7):arch=c00000b7 syscall=209 success=yes exit=0 a0=4 a1=0 a2=40 a3=fffff5707410 items=0 ppid=607 pid=659 auid=4294967295 uid=0 gid=0 euid=0 suid=0 fsuid=0 egid=0 sgid=0 fsgid=0 tty=ttymxc0 ses=4294967295 comm="iptables" exe="/usr/sbin/xtables-legacy-multi" key=(null) [ 294.431369]監査: タイプ=1327 監査(1755847246.146:7):proctitle=69707461626C6573002D4100464F5257415244002D690065746831002D6F0075736230002D6A00414343455054 [ 294.445250]監査: タイプ=1325 監査(1755847246.150:8):テーブル=フィルター ファミリ=2 エントリ=4 op=xt_replace pid=659 comm="iptables" [ 294.456430]監査: タイプ=1300 監査(1755847246.150:8):Arch=c00000b7 syscall=208 success=yes exit=0 a0=4 a1=0 a2=40 a3=aaaaeb8d3950 items=0 ppid=607 pid=659 auid=4294967295 uid=0 gid=0 euid=0 suid=0 fsuid=0 egid=0 sgid=0 fsgid=0 tty=ttymxc0 ses=4294967295 comm="iptables" exe="/usr/sbin/xtables-legacy-multi" key=(null) [ 294.484541]監査: タイプ=1327 監査(1755847246.150:8):proctitle=69707461626C6573002D4100464F5257415244002D690065746831002D6F0075736230002D6A00414343455054 [ 314.598783]監査: タイプ=1325 監査(1755847266.267:9):テーブル=フィルター ファミリ=2 エントリ=5 op=xt_replace pid=662 comm="iptables" [ 314.610726]監査: タイプ=1300 監査(1755847266.267:9):Arch=c00000b7 syscall=208 success=yes exit=0 a0=4 a1=0 a2=40 a3=aaaac05eaac0 items=0 ppid=607 pid=662 auid=4294967295 uid=0 gid=0 euid=0 suid=0 fsuid=0 egid=0 sgid=0 fsgid=0 tty=ttymxc0 ses=4294967295 comm="iptables" exe="/usr/sbin/xtables-legacy-multi" key=(null) [ 314.640305]監査: タイプ=1327 監査(1755847266.267:9):proctitle=69707461626C6573002D4100464F5257415244002D690075736230002D6F0065746831002D6A00414343455054 [ 849.488680]監査: タイプ=1006 監査(1755847801.267:10):pid=671 uid=0 old-auid=4294967295 auid=0 tty=(none) old-ses=4294967295 ses=3 res=1 [ 849.501588]監査: タイプ=1300 監査(1755847801.267:10):アーチ = c00000b7 syscall = 64 success = はい exit = 1 a0 = 3 a1 = ffffc0aa76a0 a2 = 1 a3 = ffff83653020 items = 0 ppid = 238 pid = 671 auid = 0 uid = 0 gid = 0 euid = 0 suid = 0 fsuid = 0 egid = 0 sgid = 0 fsgid = 0 tty=(なし) ses=3 comm="crond" exe="/usr/sbin/crond" key=(null) [ 849.527425]監査: タイプ=1327 監査(1755847801.267:10):proctitle=2F7573722F7362696E2F63726F6E64002D6E [ 1869.738194] 監査: タイプ=1325 監査(1755848821.593:11):テーブル=nat ファミリ=2 エントリ=7 op=xt_replace pid=713 comm="iptables" [ 1869.749806] 監査: タイプ=1300 監査(1755848821.593:11):アーチ = c00000b7 syscall = 208 成功 = はい exit = 0 a0 = 4 a1 = 0 a2 = 40 a3 = aaaafd66a400 items = 0 ppid = 607 pid = 713 auid = 4294967295 uid = 0 gid = 0 euid = 0 suid = 0 fsuid = 0 egid = 0 sgid = 0 fsgid=0 tty=ttymxc0 ses=4294967295 comm="iptables" exe="/usr/sbin/xtables-legacy-multi" key=(null) [ 1869.779649] 監査: タイプ=1327 監査(1755848821.593:11):proctitle=69707461626C6573002D74006E6174002D4100504F5354524F5554494E47002D6F0075736230002D6A004D415351554552414445 「 CAN 受刑者の独房における上記のインターネット問題の解決にご協力いただけますか? Re: Issue with Jailhouse hypervisor Inmate cell Creation for i.MX8MQ Linux で「root」または「inmate」を実行すると、セグメント エラーが発生します。 2 つの Linux 間で ivshmem をテストするには、次のようにします。 ルートセル内: ivshmem-demo -d /dev/uio0 -t 2 囚人セル内: ivshmem-demo -d /dev/uio0 -t 0 すると、2 つのセル間の通信が表示されます。 ivshmem-demo のソースコードは imx-jailhouse/tools/demos/ivshmem-demo.c にあります。 受刑者セルにファイルをコピーする方法については、受刑者Linuxが起動した後、 囚人房内: ifconfig eth0 192.168.0.4 ルートセル内: ifconfig eth0 192.168.0.3 次に、scp を使用して、ルートから inmate にファイルをコピーできます。 または、ルート セルで ip forward を構成して、受刑者が外部ネットワークにアクセスできるようにすることもできます。 Re: Issue with Jailhouse hypervisor Inmate cell Creation for i.MX8MQ こんにちは、ペンさん。 ご返信ありがとうございます。cell.c をコンパイルできるようになりました。コードと生成された.cellファイル。 「 カスタム ecall-inmate-linux-demo セルが正常に作成され、ecall-inmate-linux-demo ゲストが起動して実行されています。 Linuxホスト root imx8mqevk:~監獄セルリスト ID 名前 状態 割り当てられたCPU 故障したCPU 0 imx8mq 実行中 0-1 1 ecall-inmate-linux-demo が 2-3 で実行中 ecall-inmate-linux-demo ゲスト 「 通信には /dev/uio0 デバイス ノードを使用しています。 いくつかの Python コードを試したところ、ルート セルでの書き込み/送信は成功しました。同時に、Linux デモの囚人セルには何も受信できません。 その後、Cプログラミングコードに移行し、「ivshmem_common.h」を添付しました。'ivshmem_inmate.c','ivshmem_root.c' および Makefile。 バイナリを生成するために以下のコマンドを使用します ソース /opt/fsl-imx-wayland/5.15-kirkstone/environment-setup-armv8a-poky-Linux エクスポート CROSS_COMPILE=aarch64-poky-Linux- KDIR=/ホーム/オートモーティブ/yocto_imx_Linux/build/tmp/work-shared/imx8mqevk/kernel-build-artifacts CC="aarch64-poky-Linux-gcc --sysroot=$SDKTARGETSYSROOT" ARCH=arm64 CROSS_COMPILE=aarch64-poky-Linux- を作成します。 aarch64-poky-Linux-gcc --sysroot=/opt/fsl-imx-wayland/5.15-kirkstone/sysroots/armv8a-poky-Linux -Wall -O2 -o root ivshmem_root.c デスクトップ側では、上記のコマンドを使用して、imx8mq ツール チェーンを使用してコンパイルしました。 生成されたバイナリを Linux inmate デモ セルにコピーします。 ルート セル側へのコピーは成功しましたが、Inmate Linux デモ セルでコピーまたはコンパイルする手順がわかりません。 CAN あなたは私に同じことをする方法を教えていただけますか? NXP ドキュメント「UG10163」、名前「iMX_Linux_user_guide_LF6.12.20_2.0.0」を参照しています。 この Linux デモ インメイト セルを使用するための実用的なサンプル コードとユーザーガイドが必要です。SO、ルート セルからデータ (JSON や文字列/バイナリなどのバンドル データ) を送信し、その逆に Linux インメイト デモ セルからデータを受信します。 ありがとう、 スミット Re: Issue with Jailhouse hypervisor Inmate cell Creation for i.MX8MQ SO私の理解では、コンパイルの問題があるということです。 NXP にはリポジトリがあります: https://github.com/nxp-imx/imx-jailhouse なぜセル ファイルを自分で構築しようとしているのか理解できません。make を使用するだけで jailhouse とすべてのセル ファイルを構築するのは非常に簡単です。Simense リポジトリを使用している場合でも、ドキュメントには次のように記載されています。 make [KDIR=/path/to/kernel/objects] そして、すべてを構築するという私の命令: . /opt/fsl-imx-internal-xwayland/6.12-styhead/environment-setup-armv8a-poky-linux エクスポート CROSS_COMPILE=aarch64-poky-linux- CFLAGSの設定を解除する LDFLAGSを解除します KDIR=$HOME/linux/linux-lts-nxp を CC="aarch64-poky-linux-gcc --sysroot=$SDKTARGETSYSROOT" に設定し、ARCH=arm64 CROSS_COMPILE=aarch64-poky-linux- Re: Issue with Jailhouse hypervisor Inmate cell Creation for i.MX8MQ 親愛なるPENG様 ご提案ありがとうございます。 まだ問題が続いています。詳細は以下の通りです。 .cell を作成するためのフローファイル (Jailhouse Inmate バイナリ)、SDKs コンパイル コマンド: ツールチェーン環境のセットアップ: ソース /opt/fsl-imx-wayland/5.15-kirkstone/environment-setup-armv8a-poky-linux パス bash: /opt/fsl-imx-wayland/5.15-kirkstone/sysroots/x86_64-pokysdk-Linux/usr/bin:/opt/fsl-imx-wayland/5.15-kirkstone/sysroots/x86_64-pokysdk-Linux/usr/sbin:/opt/fsl-imx-wayland/5.15-kirkstone/sysroots/x86_64-pokysdk-Linux/bin:/opt/fsl-imx-wayland/5.15-kirkstone/sysroots/x86_64-pokysdk-Linux/sbin:/opt/fsl-imx-wayland/5.15-kirkstone/sysroots/x86_64-pokysdk-Linux/usr/bin/../x86 _64-pokysdk-Linux/bin:/opt/fsl-imx-wayland/5.15-kirkstone/sysroots/x86_64-pokysdk-Linux/usr/bin/aarch64-poky-Linux:/opt/fsl-imx-wayland/5.15-kirkstone/sysroots/x86_64-pokysdk-Linux/usr/bin/aarch64-poky-Linux-musl:/ホーム/オートモーティブ/.local/bin:/ホーム/オートモーティブ/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/snap/bin: そのようなファイルまたはディレクトリはありません aarch64-poky-Linux-gcc -c -I/ホーム/オートモーティブ/jailhouse/hypervisor/include -I/ホーム/オートモーティブ/jailhouse/hypervisor/arch/arm64/include -I/ホーム/オートモーティブ/jailhouse/include -nostdlib -nostartfiles -ffreestanding ecall-inmate-Linux-demo.c -o ecall-inmate-Linux-demo.o 注意: Jailhouse ヘッダー ファイルはツール チェーンの一部ではないSO、Seimens (github バージョン) から Jailhouse フォルダーに別途ダウンロードしました。コンパイルにはヘッダー ファイル inmate-linux-demo.cell を使用しました。.cには変更を加えていないファイル。 テスト目的でデフォルトのものを使用しました。 ステップ1: .oをリンクしてフラットなELFファイルを作成する aarch64-poky-linux-ld \ -Tテキスト=0x0 \ -nostdlib \ -o ecall-inmate-linux-demo.elf \ ecall-inmate-linux-demo.o -Ttext=0x0 は .text を配置しますフラットバイナリレイアウトのアドレス 0x0 のセクション。 -nostdlib は標準 C ライブラリのリンクを防止します (囚人には必要ありません)。 ステップ2: ELFを生のバイナリ.cellに変換する aarch64-poky-linux-objcopy \ -O バイナリ \ ecall-inmate-linux-demo.elf \ ecall-inmate-linux-demo.cell 結果を確認します。 ファイル ecall-inmate-linux-demo.cell 印刷されたメッセージ: ecall-inmate-linux-demo.cell: データ デフォルトの imx8mq.cell と imx8mq-linux-demo.cell を削除しました 'imx8mq.cell と imx8mq-linux-demo.cell' を生成しましたファイルはターゲットフォルダにプッシュされます: '/usr/share/jailhouse/cells' その後、生成されたimx8mq.cellでJailhouseを有効にすると、以下のエラーが発生します。 / jailhouse で /usr/share/jailhouse/cells/imx8mq.cell を有効にする [ 2533.385877] jailhouse: システム構成ではありません JAILHOUSE_ENABLE: 無効な引数 問題を解決するためのガイダンスと、可能であればユーザーガイド/アプリケーションノートまたは Makefile/適切な GCC コマンドを提供してください。 makefile を添付します (上記のすべてのコマンドが含まれています) コンピレーション、 作る aarch64-poky-Linux-gcc -nostdlib -nostartfiles -ffreestanding -I/ホーム/オートモーティブ/jailhouse/hypervisor/include -I/ホーム/オートモーティブ/jailhouse/hypervisor/arch/arm64/include -I/ホーム/オートモーティブ/jailhouse/include -c imx8mq.c-o imx8mq.o aarch64-poky-linux-ld -Ttext=0x0 -nostdlib -o imx8mq.elf imx8mq.o aarch64-poky-Linux-ld:警告: エントリシンボル _start が見つかりません。デフォルトは 00000000000000000 です aarch64-poky-Linux-objcopy -O バイナリ imx8mq.elf imx8mq.cell .elfを生成しました、.cell、.o。 次のコマンドでファイル形式を検証しました: ファイル imx8mq.elf imx8mq.elf:ELF 64 ビット LSB 実行ファイル、ARM aarch64、バージョン 1 (SYSV)、静的リンク、ストリップなし ファイル imx8mq.o imx8mq.o:ELF 64 ビット LSB 再配置可能、ARM aarch64、バージョン 1 (SYSV)、ストリップなし ファイル imx8mq.cell imx8mq.セル:データ サポートありがとうございます。 スミット Re: Issue with Jailhouse hypervisor Inmate cell Creation for i.MX8MQ ところで: これは間違っている 「バッシュ PYTHONPATH=/ホーム/オートモーティブ/yocto_imx_Linux/build/tmp/work/x86_64-Linux/jailhouse-native/0.12-r0/image/usr/share/jailhouse/tools をエクスポートします。 エクスポート C_INCLUDE_PATH=/ホーム/オートモーティブ/yocto_imx_Linux/build/tmp/work/x86_64-linux/jailhouse-native/0.12-r0/image/usr/include/jailhouse      /ホーム/オートモーティブ/yocto_imx_Linux/build/tmp/work/x86_64-Linux/jailhouse-native/0.12-r0/image/usr/bin/jailhouse-cell-Linux \      /ホーム/オートモーティブ/yocto_imx_Linux/build/tmp/work/armv8a-poky-Linux/jailhouse-ecall/1.0-r0/ecall-inmate-Linux-demo.c\ -o ecall-inmate-linux-demo.cell セルは jailhouse-cell-linux ではなく GCC によってコンパイルされます。 Re: Issue with Jailhouse hypervisor Inmate cell Creation for i.MX8MQ 私はYoctoについてあまり知識がありません。私のビルド コマンドを共有します: . /opt/fsl-imx-internal-xwayland/6.12-styhead/environment-setup-armv8a-poky-linux KDIR=$HOME/linux/linux-lts-nxp CC="aarch64-poky-linux-gcc --sysroot=$SDKTARGETSYSROOT" ARCH=arm64 CROSS_COMPILE=aarch64-poky-linux- V=1 を作成します。 次にセルが構築されます。 5.10も同様のはずです。 コンパイルしたセル ファイルも共有してください。jailhouse-cell-linux がセルでエラーを報告する理由を調べさせてください。 Re: Issue with Jailhouse hypervisor Inmate cell Creation for i.MX8MQ 彭凡様 状態テーブル、RW セクション、および入出力セクションに関するご回答で提供された、i.MX 8MQ 上の Jailhouse の IVSHMEM メモリ領域に関する貴重なご指導に感謝いたします。皆様のご提案をセル構成に取り入れましたが、i.MX 8MQ EVK ボード上で Yocto 5.15 Kirkstone (Linux 5.15.71-2.2.0) を使用してカスタム E-Call 受刑者セルを作成しようとすると、依然としてコンパイル エラーが発生します。以下に、問題の詳細な概要、解決に向けた取り組み、および現在の状況を示します。この問題の解決に役立つ具体的な参考資料、アプリケーションノート、その他のガイダンスなどをご提供いただければ幸いです。 問題の概要 私たちは、カスタムE-Call受刑者セル構成(最初は `imx8mq-linux-demo.c` に基づいて、`jailhouse-cell-linux` ツールを使用して、簡略化された `ecall-inmate-linux-demo.c` を使用します。`jailhouse-ecall.bb` の `do_compile` タスク中にコンパイルが失敗します。次のエラーのあるレシピ: 「 エラー: jailhouse-ecall-1.0-r0do_compile: 実行エラー('/ホーム/オートモーティブ/yocto_imx_Linux/build/tmp/work/armv8a-poky-Linux/jailhouse-ecall/1.0-r0/temp/run.do_compile.225085', 1, なし, なし) ログデータは次のとおりです: デバッグ: シェル関数 do_compile を実行しています セル構成ではありません: /ホーム/オートモーティブ/yocto_imx_Linux/build/tmp/work/armv8a-poky-Linux/jailhouse-ecall/1.0-r0/imx8mq-Linux-demo.c 警告: シェル コマンドから終了コード 1 が返されました。 エラー: タスク (/ホーム/オートモーティブ/yocto_imx_linux/sources/meta-ecall/recipes-jailhouse/jailhouse-cells/jailhouse-ecall.bb:do_compile) が終了コード '1' で失敗しました 「 このエラーは、`jailhouse-cell-linux` がセル構成ファイルを有効なものとして認識していないことを示します。解決するために何度も試みましたが、問題は解決しません。 解決に向けた取り組みの詳細 コミュニティからのフィードバックと試行錯誤に基づいて、Yocto レシピ、セル構成、環境にいくつかの更新を加えました。主な取り組みの概要は次のとおりです。 1. 初期設定とエラー: - `jailhouse-ecall.bb` から始めました`imx8mq-linux-demo.c` を使用するそして `jailhouse-native.bb`Siemens Jailhouse フォーク (`git://github.com/siemens/jailhouse.git;branch=master;SRCREV=e57d1eff`) に基づいています。 - `pyjailhouse` モジュールが見つからないことと、`jailhouse-cell-linux` コマンド構文が正しくないこと (例: `-I` を `CELLCONFIG` と誤って解釈する) に関連するエラーが発生しました。 2. レシピの更新: - jailhouse-native.bb: - 当初はヘッダーのインストールが不足していた(`jailhouse/types.h`、`jailhouse/cell-config.h` を参照してください。更新内容: 「ビットベイク インストール -d ${D} ${includedir} /jailhouse cp -r ${S} /include/jailhouse/*.h ${D} ${includedir} /jailhouse/ 「 - i.MX 8MQ の互換性のために `jailhouse_0.12.bb` と整合させるために、NXP Jailhouse フォーク (`git://source.codeaurora.org/external/imx/imx-jailhouse.git;branch=imx_5.4.47_2.2.0;SRCREV=8bbe203`) に切り替えました。 - `pyjailhouse` のインストールと `python3-native` の依存関係を確保しました。 - jailhouse-ecall.bb: - 無効な '/dev/null' 引数を削除し、適切な構文を使用することで 'jailhouse-cell-Linux' コマンドを修正しました。 「ビットベイク ${STAGING_BINDIR_NATIVE} /jailhouse-cell-Linux \ ${S} /ecall-inmate-Linux-demo.c\ -o ${S} /ecall-inmate-linux-demo.cell 「 - E-Call ユースケースに重点を置くために、`imx8mq-linux-demo.c` ではなく `ecall-inmate-linux-demo.c` を使用するように 'SRC_URI' を更新しました。 - ヘッダーと Python モジュールが確実に見つかるよう、「export C_INCLUDE_PATH」と「PYTHONPATH」を追加しました。 3. セル構成の更新: - 'imx8mq-linux-demo.c' をベースに簡略化した 'ecall-inmate-linux-demo.c'そしてIVSHMEMのガイダンス: - 状態テーブル: `0xbfdf0000`、4 KB、読み取り専用。 - RW セクション: `0xbfdf1000`、64 KB、読み取り/書き込み。 - ルート出力: `0xbfdfa000`、8 KB、読み取り/書き込み。 - ルート入力: `0xbfdfc000`、8 KB、読み取り専用。 - UART1 (`0x30860000`)、RAM (`0xc0000000`、256 MB)、通信領域 (`0x80000000`) が含まれています。 - 解析の問題を回避するために、複雑なマクロ (例: `JAILHOUSE_SHMEM_NET_REGIONS`) を削除しました。 - 構成スニペットの例: 「.c」 .mem_regions= { /* IVSHMEM 状態テーブル */ { .phys_start= 0xbfdf0000, .virt_start= 0xbfdf0000, 。サイズ= 0x1000, .フラグ= JAILHOUSE_MEM_READ | JAILHOUSE_MEM_ROOTSHARED、 }, /* IVSHMEM RWセクション */ { .phys_start= 0xbfdf1000, .virt_start= 0xbfdf1000, 。サイズ= 0x10000, .フラグ= JAILHOUSE_MEM_READ | JAILHOUSE_MEM_WRITE | JAILHOUSE_MEM_ROOTSHARED、 }, /* IVSHMEM ルート出力 */ { .phys_start= 0xbfdfa000, .virt_start= 0xbfdfa000, 。サイズ= 0x2000, .フラグ= JAILHOUSE_MEM_READ | JAILHOUSE_MEM_WRITE | JAILHOUSE_MEM_ROOTSHARED、 }, /* IVSHMEM ルート入力 */ { .phys_start= 0xbfdfc000, .virt_start= 0xbfdfc000, 。サイズ= 0x2000, .フラグ= JAILHOUSE_MEM_READ | JAILHOUSE_MEM_ROOTSHARED、 }, ... } 「 4. 依存関係とレイヤー構成: - `bblayers.conf` に `meta-ecall` と `meta-freescale` を追加しました。 - `local.conf` を更新しました: 「会議 IMAGE_INSTALL:append = " jailhouse jailhouse-ecall python3" DISTRO_FEATURES:append = " jailhouse 仮想化" 「 - `jailhouse_0.12.bb` がターゲット展開に NXP フォークを使用していることを確認しました。 - `python3-native`、`pyjailhouse`、およびヘッダーがネイティブ sysroot (` ${STAGING_DIR_NATIVE} /usr/share/jailhouse/tools/pyjailhouse/`、` ${STAGING_DIR_NATIVE} /usr/include/jailhouse/`) にインストールされていることを確認しました。 5. 手動テスト: - 手動でテストされた `jailhouse-cell-Linux`: 「バッシュ export PYTHONPATH=/ホーム/オートモーティブ/yocto_imx_Linux/build/tmp/work/x86_64-Linux/jailhouse-native/0.12-r0/image/usr/share/jailhouse/tools export C_INCLUDE_PATH=/ホーム/オートモーティブ/yocto_imx_Linux/build/tmp/work/x86_64-Linux/jailhouse-native/0.12-r0/image/usr/include/jailhouse /ホーム/オートモーティブ/yocto_imx_Linux/build/tmp/work/x86_64-Linux/jailhouse-native/0.12-r0/image/usr/bin/jailhouse-cell-Linux \ /ホーム/オートモーティブ/yocto_imx_Linux/build/tmp/work/armv8a-poky-Linux/jailhouse-ecall/1.0-r0/ecall-inmate-Linux-demo.c\ -o ecall-inmate-linux-demo.cell 「 - 同じエラー: 「セル構成ではありません」。 - 検証済みの sysroot コンテンツ: `pyjailhouse` モジュール、ヘッダー、および `jailhouse-cell-linux` が存在します。 現在の状況 - 次の場合も「セル構成ではありません」というエラーが続く: - `jailhouse-cell-linux` 構文を修正しました。 - セル構成の簡素化。 - `jailhouse-native.bb` を NXP フォークに合わせます。 - ヘッダーと `pyjailhouse` がインストールされていることを確認します。 - 他のレシピ (`jailhouse-native`、`jailhouse`) は正常にコンパイルされ、問題は `jailhouse-ecall.bb` とセル構成の解析に固有のものであることが示されています。 ご質問とガイダンスのリクエスト 1. このエラーは、NXP Jailhouse フォーク (`imx_5.4.47_2.2.0`) とセル構成のバージョンの不一致が原因である可能性がありますか?このフォークの `jailhouse-cell-linux` には特定の要件がありますか? 2. Yocto 5.15 Kirkstone を使用して i.MX 8MQ でカスタム Jailhouse 受刑者セルを作成するためのアプリケーション ノートまたはユーザー ガイドはありますか?このプラットフォームの詳細なドキュメントは見つかりませんでした。 3. `jailhouse-cell-linux` が複雑な構成 (IVSHMEM 領域など) を解析する際に既知の問題はありますか?構成をさらに簡素化する必要がありますか? 4. `jailhouse-ecall.bb` の参照を提供できますか?i.MX 8MQ 用の `.cell` ファイルをコンパイルするためのレシピまたは例はありますか? 5. i.MX 8MQ 上の Jailhouse に必要な特定の U-Boot またはカーネル構成が不足している可能性はありますか? 6. カスタム レシピ/BB レイヤーの Jailhouse 依存関係の問題を解決するにはどうすればよいですか? 添付ファイル(参考) - `jailhouse-ecall.bb`:E-Callセルのレシピを更新しました。 - `jailhouse-native.bb`:ヘッダー付きの NXP フォークに更新されました。 - `ecall-inmate-linux-demo.c`: IVSHMEM 領域を使用した簡素化された構成。 - `imx8mq-linux-demo.c`:オリジナル構成(参考) - 詳細なコンパイル ログ (必要な場合は、共有方法を確認してください)。 私たちは、E-Call 受刑者セルの展開と共有メモリ通信のテストを進めるために、この問題を解決したいと考えています。私たちのアプローチに関するご意見、参考資料、修正などがあれば、ぜひお知らせください。 サポートありがとうございます! よろしくお願いします、 スミット 注: 応答の改善や詳細ログの生成についてサポートが必要な場合はお知らせください。 Re: Issue with Jailhouse hypervisor Inmate cell Creation for i.MX8MQ こんにちは、Bio_TICFSLさん あなたの github リンクで、5.15 Kirkstone へのリンクがいくつか見つかりました: https://github.com/NXP/meta-nxp-harpoon/blob/imx-linux-kirkstone/recipes-extended/jailhouse/jailhouse_%25.bbappend https://github.com/NXP/meta-nxp-harpoon/tree/imx-linux-kirkstone NXP i.MX8MQ ボードに役立ちますか? ありがとう、 スミット Re: Issue with Jailhouse hypervisor Inmate cell Creation for i.MX8MQ いくつかヒントを挙げてみましょう: 1. ドキュメント/inter-cell-communication.md では、メモリの配置方法について説明します。 各セルには、ivshmem 用の次の領域が必要です。 - 状態テーブルを保持するための読み取り専用領域(通常は1ページの大きさ) - すべてのピアが読み取り/書き込み可能な1つの領域 - ピアごとに1つの出力領域があり、そのうちの1つに対してのみ読み取り/書き込み可能 2. i.MX8MQへ /* IVHSMEM 共有メモリ領域 00:00.0*/ { .phys_start= 0xbfdf0000, .virt_start= 0xbfdf0000, 。サイズ= 0x1000, .フラグ= JAILHOUSE_MEM_READ、===> これは状態テーブルです。 }, { .phys_start= 0xbfdf1000, .virt_start= 0xbfdf1000, 。サイズ= 0x9000, .フラグ= JAILHOUSE_MEM_READ | JAILHOUSE_MEM_WRITE 、 ===> これは RW セクションです。これをコミュニケーションにCANます。あるいはこれを拡大します。 }, { .phys_start= 0xbfdfa000, .virt_start= 0xbfdfa000, 。サイズ= 0x2000, .フラグ= JAILHOUSE_MEM_READ | JAILHOUSE_MEM_WRITE 、 ==> これはルート入出力です }, { .phys_start= 0xbfdfc000, .virt_start= 0xbfdfc000, 。サイズ= 0x2000, .フラグ= JAILHOUSE_MEM_READ, ==> これはルート入力です }, { .phys_start= 0xbfdfe000、 .virt_start= 0xbfdfe000、 。サイズ= 0x2000, .フラグ= JAILHOUSE_MEM_READ, ==> これはルート入力です これは、imx8mq-inmate-linux.c のレイアウトと同様です。 RW と INPUT/OUTPUT SECTION を設定できますが、State セクションには触れないでください。 INPUT/OUTPUT の場合、複数の領域を定義すると、各領域のサイズは同じである必要があります。 よろしくお願いします。 彭。 Re: Issue with Jailhouse hypervisor Inmate cell Creation for i.MX8MQ こんにちは、 MX8MQには監獄はありませんが、MX8Mと同じファミリなので、githubをベースとするか、6.6.36を使用することができます。BSP。 よろしくお願いします。 Re: Issue with Jailhouse hypervisor Inmate cell Creation for i.MX8MQ こんにちは、Bio_TICFSL 早速のご返信ありがとうございます。 i.MX NXP 8MQ EVKボード「i.MX 8MQuad」を使用しているため、 部品番号「TDA6637」。 SO、現在、Linux Yocto 5.15 Kirkstone ' 5.15.71-2.2.0 ' をフラッシュしました。 しかし、「 NXP Harpoon Jailhouse 統合」に対する返信では、「 i.MX Linux Yocto Project BSP 6.6.36-2.1.0 Harpoon v3 リリース」が必要です。 i.MX 8MQボードでは5.15 Kirkstone Imageまでサポートされており、Harpoonユーザーガイド「UG10170」に記載されています。 Github リンク ' https://github.com/NXP/meta-nxp-harpoon/tree/imx-linux-scarthgap' このリリースでは次のボードがテストされました。 NXP i.MX 8MMini LPDDR4 EVK (imx8mm-lpddr4-evk) NXP i.MX 8MNano LPDDR4 EVK (imx8mn-lpddr4-evk) NXP i.MX 8MPlus LPDDR4 EVK (imx8mp-lpddr4-evk) i.MX 8MQ については触れられていませんが、当社のボードに特定の刑務所ソリューションを提供できますか、または囚人用の独房を作成するための他の可能性を提案できますか? サポートありがとうございます。 ありがとう、 スミット Re: Issue with Jailhouse hypervisor Inmate cell Creation for i.MX8MQ こんにちは、 bbappend レシピを通じて、NXP Harpoon Jailhouse 統合と同様のアプローチに従うことCAN。 例を参照してください: meta-nxp-harpoon/recipes-extended/jailhouse/jailhouse-imx_%.bbappend at imx-linux-scarthgap · NXP/me... ユーザーガイド: https://www.nxp.com/docs/en/user-guide/Harpoon_USERS_GUIDE.pdf よろしくお願いします。 Re: Issue with Jailhouse hypervisor Inmate cell Creation for i.MX8MQ @ペン [email protected] 上記のチケットで説明されているように、私たちが直面しているカスタム Jailhouse セルの作成問題に対する解決策を提案していただけますか? サポートありがとうございます。 さらに詳しい情報が必要な場合はお知らせください。
View full article
BLE data loss we are using multiple kw45 board to send data over BLE to UI application and as we increasing frequency and number of bytes of data transfer, there is large BLE packet loss in central windows UI application. Please let me know what may be the reasons for data loss and how to resolve this issue. Communication & Control(I3C | I2C | SPI | FlexCAN | Ethernet | FlexIO) Development Board Re: BLE data loss Hello, Hope you are doing well. What example are you using as a base? Have you seen this behavior when using board to board setup? How are you testing it? How are you measuring this loss? Regards, Ricardo
View full article
Corruption on HSE Status Register Images below for reference using S32K312 and facing issues with the HSE firmware: 1.The HSE status register value appears corrupted (0x4038C107). 2.Unable to access HSE APIs due to this status corruption. 3.Attempts to erase or reflash the HSE firmware have failed. 4.Writing to MU0_TR1 register or memory to trigger erase/reset commands does not work. 5.Observed multiple software resets during a single external reset when debugger is connected. Request: 1.Could you please provide the correct procedure to erase and reflash the HSE firmware on the S32K312? 2.If reflashing the HSE firmware is not possible due to the current corrupted state, what steps can be taken to recover the HSE or resolve the status register corruption? 3.Any known issues or workarounds for the multiple resets observed during hard reset with debugger attached? 4.How can I resolve the corrupted HSE status register issue and regain access to the HSE APIs? Procedure followed during HSE firmware flashing: step 1: flashed the provided PINK file without IVT along with the demo application and the secure boot application ELF files. step2: Reset done Step3: Observed "??" marks at HSE locations 0x005d4000 and DCM registers Step4: We reflashed our bootloader at address 0x00400000 and the application at address 0x00442000 Step5: When performing a hard reset with the debugger connected, we observed multiple resets triggered from the software side, despite issuing only a single external reset command
View full article
POWER構成でのS32K3動作モード POWER 構成における S32K3 の動作モード。これらの動作モードの違いは何ですか。 Re: S32K3 operating mode in POWER configuration こんにちは@alan_yu 、 ロジック パーティションとは、MC_ME の単一パーティションによって制御される SoC ブロックを指します。各 MC_ME パーティションは、MC_ME パーティション プロセス ハードウェアを使用して一連のロジック機能を制御します。 CAN 46.1.3章を参照してください。パーティションの場合: はい、POWER 構成は問題ないようです。 よろしくお願いします、 ジュリアン Re: S32K3 operating mode in POWER configuration もう 1 つの問題は、McuPartition0Config - McuPartition2Config の意味が何なのかということです。これは、異なるコアを意味しますか? 下の写真はS32K312での私の設定です。大丈夫そうですか? Re: S32K3 operating mode in POWER configuration こんにちは@Julián_AragónM 、 お返事ありがとうございます。これは私にとって非常に役に立ちました。 私は S32K312 を使用していますが、1コアです。SO、MCU をスタンバイ状態にしたい場合は、 「STANDBY」動作モードを選択するだけで済みます。そうですよね? そして、問題が発生しました。GPIO を使用してウェイクアップすると、MCU は約 10 秒後に正常に動作します。何が問題なのでしょうか?    Re: S32K3 operating mode in POWER configuration こんにちは@alan_yu 、 第41.1.6章S32K3XX リファレンス マニュアルでは、動作電力モードについて説明しています。2つだけあります:走る モードとスタンバイ モード。   ただし、ドライバは遷移と高速/通常のウェイクアップの手順を分離できます。STANDBY を呼び出すと、ドライバはSOC_PREPARE_STANDBY、SOC_STANDBY、およびCORE_STANDBYを実行しますが、すべてのモードを個別に呼び出すこともできます。   たとえば、SOC をRUNモードで実行し、1 つのコアだけがCORE_STANDBYを呼び出すと、WFI で 1 つのコアが停止します。   MCU は、通常のウェイクアップではなく、FAST ウェイクアップでウェイクアップできます。第 41.2 章では、 FASTとNORMAL STANDBY の終了について説明します。   その他のオプションについては、 RTD_MCU_UM.pdfで説明されています。   どのようなステップが分割されているかを知るには、ソース コードを確認することをお勧めします。以下の低電力の例をCAN参照できます。 S32K3 パワーマネージメント AN とデモ - NXPコミュニティ [RTD400 & 500 MCAL & IP] S32K3 パワーマネージメント AN とデモ - NXPコミュニティ よろしくお願いします、 ジュリアン
View full article
iMXRT1170 提高性能 在MIMXRT1170-EVKB上,我们正在评估处理器的处理能力。 目前,我们从 freertos_hello_cm7 项目示例开始创建了一个测试应用程序。 我们的测试处理内存位于 SRAM_OC1 和 SRAM_OC2,因为我们需要多达 700KB 的内存来进行处理。 %% 我们猜测是内存出现了瓶颈。 我们已经验证了高速缓存是否正常工作,因为禁用高速缓存后,处理时间缩短了 x10。 有没有人提供一些提示,说明需要验证哪些事项,或者需要以不同于 freeRTOS 基本示例的方式进行配置,以改进结果? > Re: iMXRT1170 improve performances 遗憾的是,无法在 RT1170 上将这两个区域几乎连成一体。 BR, Omar Re: iMXRT1170 improve performances 在对该文件和其他文件进行分析后,我们进行了一些测量。 首先,我们做了一个进行大量内存访问的示例处理。 使用内存160kB 如果放在 DTC 中,我们得到的处理时间比放在 OCRAM 中要长 50% 。 如果我们使用 200KB 的内存来处理一部分数据,那么将内存放置在 DTC 中的处理时间比 OCRAM 长 80% 。 结果还是没有达到预期效果,因此我们仍在对配置进行深入研究。 有一个新问题:DTC 内存位于 0x20000000,而 OCRAM 位于 0x20200000。有没有办法让它们实际上是毗连的,这样我们就可以在同一个虚拟空间中分配所有内存,而且一部分内存将位于快速内存库中,另一部分内存将位于慢速内存库中? Re: iMXRT1170 improve performances OCRAM 的性能明显低于 TCM,使用高速缓存后性能会有所提高,但似乎并没有明显改善。 为了提高性能,可以将 DTCM 用于存储关键数据,如果 DTCM 的空间不够,可以将其重新定位:AN12077:使用 i.MX RT FlexRAM — 应用笔记 BR, Omar
View full article
MIMXRT1166およびW9812G6KB SDRAMエラー MIMXRT1166 と W9812G6KB SDRAM を 166 MHz で使用するカスタム ボードがあります。SDRAMCRx 設定を SDRAM データシートで要求されている特定の値に合わせるように DCD を構成しました。DQS ピンはボード上で配線されていません。 私のアプリケーションは Zephyr を使用しており、SDRAM はデータとアプリケーションのヒープ/スタックに利用されています。数分間実行すると、アプリケーションがクラッシュし、さまざまなエラー メッセージが表示されます。 [00:08:10.517,000] os: ***** USAGE FAULT ***** [00:08:10.525,000] os: Illegal use of the EPSR [00:18:33.709,000] os: ***** USAGE FAULT ***** [00:18:33.717,000] os: Attempt to execute undefined instruction [00:01:58.470,000] os: ***** USAGE FAULT ***** [00:01:58.478,000] os: Unaligned memory access パターンを書き込んでそれをチェックするベアメタル アプリケーションを実行して SDRAM をテストしたところ、問題なく何時間も実行できました。 SEMC パラメータの調整に多くの時間を費やしましたが、成功しませんでした。私の知る限りでは、間違った値がスタックからポップされていますが、クラッシュは毎回異なる場所で発生し、そのパターンを見つけることができません。 私はこの問題の追跡に多くの時間を費やしてきましたので、どんな指摘でも本当に感謝します。 Re: MIMXRT1166 and W9812G6KB SDRAM errors こんにちは@tbonkers 、 それはわかってよかったです!ご質問がございましたらお気軽にお問い合わせください。 すてきな一日を、 カン --------------------------------------------------------------------------------- 注記: - この投稿があなたの質問への回答である場合は、「正解としてマーク」ボタンをクリックしてください。ありがとう! - Threadは最後の投稿から7週間フォローされます。それ以降の返信は無視されます。 後ほど関連する質問がある場合は、新しいThreadを開いて、閉じたThreadを参照してください。 --------------------------------------------------------------------------------- Re: MIMXRT1166 and W9812G6KB SDRAM errors こんにちは@Kan_Liさん ファームウェアが原因であるという手がかりがあります。これまでは Zephyr v3.7.1 LTS を使用していましたが、昨日 Zephyr v4.2.99 に切り替え、2 つのボードを一晩稼働させたままにしましたが、問題なく稼働しました。 ご協力ありがとうございます。 Re: MIMXRT1166 and W9812G6KB SDRAM errors こんにちは@tbonkers 、 添付のパッチは SDRAM ストレス テスト用のコードです。任意のフォルダーでこのパッチを使用して「git apply」コマンドを使用すると、ソース ファイルをプロジェクトに含めることができます。 お役に立てれば幸いです。 すてきな一日を、 カン --------------------------------------------------------------------------------- 注記: - この投稿があなたの質問への回答である場合は、「正解としてマーク」ボタンをクリックしてください。ありがとう! - Threadは最後の投稿から7週間フォローされます。それ以降の返信は無視されます。 後ほど関連する質問がある場合は、新しいThreadを開いて、閉じたThreadを参照してください。 --------------------------------------------------------------------------------- Re: MIMXRT1166 and W9812G6KB SDRAM errors こんにちは@Kan_Liさん SDRAM を使用しないアプリケーションを実行している場合、エラーは表示されません。データに OCRAM を使用して、パターンを SDRAM に書き込み/読み取りするテストを行いましたが、問題なく動作したSO、問題は SDRAM に関連していると結論付けることができると思います。 SDRAM を別のチップ (ISSI) に変更しましたが、問題は解決しません。読み取りテストと書き込みテストは合格しているので、これがハードウェア/ルーティングの問題であるとはまだ 100% CAN確信できません。問題をさらに切り分けるためにどのようなテストを実行すればよいかについて、何かアイデアはありますか? Re: MIMXRT1166 and W9812G6KB SDRAM errors こんにちは@tbonkers 、 情報ありがとうございます!データとヒープ/スタックを SRAM などの別の場所に置くことは可能ですか? 問題が解決しない場合は、根本的な原因が SDRAM ではなくアプリケーション側にあることを意味します。 すてきな一日を、 カン --------------------------------------------------------------------------------- 注記: - この投稿があなたの質問への回答である場合は、「正解としてマーク」ボタンをクリックしてください。ありがとう! - Threadは最後の投稿から7週間フォローされます。それ以降の返信は無視されます。 後ほど関連する質問がある場合は、新しいThreadを開いて、閉じたThreadを参照してください。 --------------------------------------------------------------------------------- Re: MIMXRT1166 and W9812G6KB SDRAM errors こんにちは@Kan_Liさん DCD ファイルを更新しても変化はなく、クラッシュは引き続き発生します。 Re: MIMXRT1166 and W9812G6KB SDRAM errors こんにちは@tbonkers 、 情報ありがとうございます!DCD ファイルは専門家によって確認され、更新されました。添付ファイルから入手してください。 お役に立てれば幸いです。 すてきな一日を、 カン --------------------------------------------------------------------------------- 注記: - この投稿があなたの質問への回答である場合は、「正解としてマーク」ボタンをクリックしてください。ありがとう! - Threadは最後の投稿から7週間フォローされます。それ以降の返信は無視されます。 後ほど関連する質問がある場合は、新しいThreadを開いて、閉じたThreadを参照してください。 --------------------------------------------------------------------------------- Re: MIMXRT1166 and W9812G6KB SDRAM errors こんにちは@Kan_Li 、回路図を見ていただきありがとうございます。 DCD は SEMC の初期化にのみ使用し、アプリケーションからは SEMC には触れません。添付の dcd.c ファイルを参照してください。 Re: MIMXRT1166 and W9812G6KB SDRAM errors こんにちは@tbonkers 、 シェアしていただきありがとうございます!SDRAM 回路図は私と専門家によって二重チェックされましたが、問題は見つかりませんでした。DCD ファイルも共有していただくことは可能でしょうか?アプリケーション コードでも SEMC を初期化しましたか?宜しくお願い致します。 すてきな一日を、 カン --------------------------------------------------------------------------------- 注記: - この投稿があなたの質問への回答である場合は、「正解としてマーク」ボタンをクリックしてください。ありがとう! - Threadは最後の投稿から7週間フォローされます。それ以降の返信は無視されます。 後ほど関連する質問がある場合は、新しいThreadを開いて、閉じたThreadを参照してください。 --------------------------------------------------------------------------------- Re: MIMXRT1166 and W9812G6KB SDRAM errors こんにちは@Kan_Liさん 以下は SDRAM の回路図です。 Re: MIMXRT1166 and W9812G6KB SDRAM errors こんにちは@tbonkers 、 ご説明ありがとうございます!レビューのために回路図の一部を共有していただくことは可能でしょうか?特に RT と SDRAM 間の接続に関して。 すてきな一日を、 カン --------------------------------------------------------------------------------- 注記: - この投稿があなたの質問への回答である場合は、「正解としてマーク」ボタンをクリックしてください。ありがとう! - Threadは最後の投稿から7週間フォローされます。それ以降の返信は無視されます。 後ほど関連する質問がある場合は、新しいThreadを開いて、閉じたThreadを参照してください。 --------------------------------------------------------------------------------- Re: MIMXRT1166 and W9812G6KB SDRAM errors こんにちは@Kan_Liさん コードは EPSR の読み取りまたは書き込みを試行せず、アプリケーションは XIP モードで実行されます。EVK にはアクセスできませんが、別の SDRAM チップを使用する以前のボード リビジョンがあり、アプリケーションは問題なく実行されます。これは、SDRAM の構成ミスまたはハードウェアの問題を示しています。 例外はほとんどの場合異なり、異なる場所で発生します。次に例を示します。 [00:26:09.898,000] os: ***** MPU FAULT ***** [00:26:09.906,000] os: Instruction Access Violation [00:26:09.914,000] os: r0/a1: 0x00000001 r1/a2: 0x80101c60 r2/a3: 0x80101c60 [00:26:09.925,000] os: r3/a4: 0x80101c60 r12/ip: 0x8012b4bc r14/lr: 0x300335ad [00:26:09.936,000] os: xpsr: 0x20000246 [00:26:09.943,000] os: s[ 0]: 0x80101c60 s[ 1]: 0x800026c4 s[ 2]: 0x00000000 s[ 3]: 0x3005c74c [00:26:09.955,000] os: s[ 4]: 0x3005c730 s[ 5]: 0x30031fef s[ 6]: 0x80082460 s[ 7]: 0x00072300 [00:26:09.968,000] os: s[ 8]: 0x00000038 s[ 9]: 0x3000debb s[10]: 0x8012b4c8 s[11]: 0x3000a52f [00:26:09.981,000] os: s[12]: 0x00000000 s[13]: 0xfffffffd s[14]: 0xaaaaaaab s[15]: 0xaaaaaaab [00:26:09.993,000] os: fpscr: 0xaabaaaaa [00:26:10.000,000] os: Faulting instruction address (r15/pc): 0x80101c60 [00:26:10.010,000] os: >>> ZEPHYR FATAL ERROR 20: Unknown error on CPU 0 [00:26:10.020,000] os: Fault during interrupt handling [00:26:10.029,000] os: Current thread: 0x80101c60 (lvgl_handler_tid) [00:26:10.039,000] os: Halting system PC は SDRAM を指していますが、アプリケーションは SDRAM から機能を実行することは想定されていないため、これは奇妙です。一部のレジスタには 0xaaaaaaab という疑わしい値が含まれていますが、これは Zephyr がスタックを 0xaaaaaaaa パターンで埋めるため、スタック汚染を意味している可能性があります。 DCD ファイル内の SDRAM タイミング パラメータを変更すると、エラーの頻度が増加する傾向があります。この場合も、SDRAM に問題があると考えられますが、正確な理由を特定CANません。 SDRAM 速度を下げてみましたが、クラッシュはまだ発生します。私が気づいたもう 1 つの点は、SEMC_INTR の AXIBUSERR が設定されていることです。これは、ベア メタル アプリケーションの実行時には発生しません。 Re: MIMXRT1166 and W9812G6KB SDRAM errors こんにちは@tbonkers 、 アプリ コードから EPSR レジスタの読み取り/書き込みを試行していますか?特にこのレジスタのTビットは重要です。Tビットが0のときに命令を実行しようとすると、エラーまたはロックアップが発生します。未定義命令の問題もこれが原因で、非整列メモリアクセスの問題もこれが原因であるのではないかと考えます。 カスタム ボードを使用しており、プロジェクトは XIP モードで実行されていると想定していますか?RT1160EVK もお持ちかどうかはわかりませんが、お持ちの場合は、EVK でアプリケーション コードを試して、結果が同じかどうかを確認してください。そうすることで、根本的な原因がハードウェアかソフトウェアかを特定するのに役立ちます。 すてきな一日を、 カン --------------------------------------------------------------------------------- 注記: - この投稿があなたの質問への回答である場合は、「正解としてマーク」ボタンをクリックしてください。ありがとう! - Threadは最後の投稿から7週間フォローされます。それ以降の返信は無視されます。 後ほど関連する質問がある場合は、新しいThreadを開いて、閉じたThreadを参照してください。 ---------------------------------------------------------------------------------
View full article
关于 imx8mm 单核心 dtsi 的一点困惑 我正在做一个类似的项目,所以我需要彻底弄清楚这个问题。我有点搞不清楚谁是对的,因为我看到恩智浦工程师的答案似乎完全错了,但标注为正确的答案却不是恩智浦工程师的。那么,谁的答案是正确的呢?我们倾向于相信恩智浦的工程师更熟悉他们的代码。 https://community.nxp.com/t5/i-MX-Processors/dtsi-for-imx8mm-single-core/td-p/2165973 i.MX 8M | i.MX 8M Mini | i.MX 8M Nano Re: A little confused about dtsi for imx8mm single core 另外,我还想知道解释。 Re: A little confused about dtsi for imx8mm single core 推荐的方法是从 Linux 设备树中删除相应的节点。 虽然 U-Boot 可以检测芯片型号及其可用功能,但禁用设备树中的节点可确保 Linux 内核不会尝试访问不支持的元器件。这尤其重要,因为帖子中提到的源与U-启动有关,而不是与内核有关。 Re: A little confused about dtsi for imx8mm single core @Chavira请解释一下你说的话。 I have provided the appropriate recommendations tailored to your specific case. Regarding the BSP, it is functioning as expected. 1>> U-Boot does not modify the Linux Device Tree at runtime. Once the Linux kernel is loaded, U-Boot no longer has control over the Device Tree. It seems there's some confusion here. The Linux device tree and the U-Boot device tree are two distinct entities, each serving different purposes in the boot process. The document you're referring to specifically modifies the U-Boot device tree, not the one used by the Linux kernel. Please double check your references, the U-Boot device tree is not the same as the Linux device tree, and changes made to one do not automatically apply to the other. Re: A little confused about dtsi for imx8mm single core 嗨,@hogole、 我已根据您的具体情况提出了适当的建议。 关于电路板支持包,它正在按预期运行。 请注意,社区对所有成员开放,欢迎他们根据自己的经验做出贡献。欢迎您修改和调整社区开发的解决方案,以更好地满足您的需求。 如果您在使用我们的电路板支持包时遇到任何问题,请随时在论坛中打开新话题,以便我们进一步为您提供帮助。 致以最崇高的敬意, Chavira Re: A little confused about dtsi for imx8mm single core @Chavira 我们已经部署了许多 8MM 产品,并且该代码已经存在了很长时间,一直支持最新的电路板支持包。如果在运行时基于 8MM 熔丝 自动修改设备树时出现问题,那么我们需要考虑升级我们当前的产品。这是一个非常困难的决定,既费时又费钱。 因此,我们需要一个明确的答案:恩智浦BSP版本中的这部分电路板支持包代码是否存在潜在问题?为什么在基于熔丝自动配置 Linux 设备树核心数的情况下,仍然需要在编译时修改 Linux 设备树吗? https://github.com/nxp-imx/uboot-imx/blob/lf-5.10.72-2.2.3/arch/arm/mach-imx/imx8m/soc.c static int disable_cpu_nodes(void *blob, u32 disabled_cores) { static const char * const nodes_path[] = { "/cpus/cpu@1", "/cpus/cpu@2", "/cpus/cpu@3", }; u32 i = 0; int rc; int nodeoff; if (disabled_cores > 3) return -EINVAL; i = 3 - disabled_cores; for (; i < 3; i++) { nodeoff = fdt_path_offset(blob, nodes_path[i]); if (nodeoff < 0) continue; /* Not found, skip it */ debug("Found %s node\n", nodes_path[i]); rc = fdt_del_node(blob, nodeoff); if (rc < 0) { printf("Unable to delete node %s, err=%s\n", nodes_path[i], fdt_strerror(rc)); } else { printf("Delete node %s\n", nodes_path[i]); } } Re: A little confused about dtsi for imx8mm single core @Chavira 这是你的建议: 请仔细检查您的参考资料,U-Boot 设备树与 Linux 设备树不同,对其中一个设备树所做的更改不会自动应用于另一个。 现在我仔细检查参考并使用不同的颜色来突出显示: u-启动 运行时修改 Linux 设备树 (dtb) u-boot 启动时修改 Linux 设备树 (dtb) https://community.nxp.com/t5/i-MX-Processors-Knowledge-Base/u-boot-runtime-modify-Linux-device-tree-dtb/ta-p/1347212 Re: A little confused about dtsi for imx8mm single core @Chavira 从一开始到现在,我们一直在讨论 u-boot 如何修改 Linux 设备树,并且从未讨论过 u-boot 本身的设备树。 以下代码还使用 u-boot 来修改 Linux 设备树。 https://github.com/nxp-imx/uboot-imx/blob/lf-5.10.72-2.2.3/arch/arm/mach-imx/imx8m/soc.c static int disable_cpu_nodes(void *blob, u32 disabled_cores) { static const char * const nodes_path[] = { "/cpus/cpu@1", "/cpus/cpu@2", "/cpus/cpu@3", }; u32 i = 0; int rc; int nodeoff; if (disabled_cores > 3) return -EINVAL; i = 3 - disabled_cores; for (; i < 3; i++) { nodeoff = fdt_path_offset(blob, nodes_path[i]); if (nodeoff < 0) continue; /* Not found, skip it */ debug("Found %s node\n", nodes_path[i]); rc = fdt_del_node(blob, nodeoff); if (rc < 0) { printf("Unable to delete node %s, err=%s\n", nodes_path[i], fdt_strerror(rc)); } else { printf("Delete node %s\n", nodes_path[i]); } } 我再次强调,我从未讨论过u-boot的设备树。 Re: A little confused about dtsi for imx8mm single core @Chavira 我们讨论的是 u-boot 修改 Linux 设备树,而不是修改 u-boot 设备树。 而且 https://github.com/nxp-imx/uboot-imx/blob/lf-5.10.72-2.2.3/arch/arm/mach-imx/imx8m/soc.c 的代码与 启动 fdt 命令的作用相同。 在 u- 启动 运行时修改 Linux 设备树 (dtb) 是使用 u- 启动 命令修改 Linux 设备树。 https://community.nxp.com/t5/i-MX-Processors-Knowledge-Base/u-boot-runtime-modify-Linux-device-tree-dtb/ta-p/1347212 从第 8 页到第 11 页,可以清楚地看到 u-boot 修改 Linux 设备树并启动到 Linux。 Re: A little confused about dtsi for imx8mm single core 嗨,@hogole、 看来这里有些混乱。 Linux 设备树和 U-Boot 引导设备树是两个不同的实体,每个实体在启动过程中都有不同的用途。你所指的文档专门修改了 U-Boot 引导设备树,而不是 Linux 内核使用的设备树。 请仔细检查您的参考,U-Boot 设备树与 Linux 设备树不同,对其中一个设备树所做的更改不会自动应用于另一个。 Re: A little confused about dtsi for imx8mm single core 有几点我仍然感到困惑。 Chavira,这是你的回复: 1>> U-启动 在运行时不会修改 Linux 设备树。 一旦加载 Linux 内核,U-Boot 就无法再控制设备树了。 你确定 u-boot 无法修改 Linux 设备树吗? a. u-boot 有 fdt 命令可以修改 Linux 设备树。 您的同事也有这方面的文件。 以下是文档: u-boot 运行时修改 Linux 设备树 (dtb) https://community.nxp.com/t5/i-MX-Processors-Knowledge-Base/u-boot-runtime-modify-Linux-device-tree-dtb/ta-p/1347212 b. arch/Arm/mach-imx/imx8m/soc.c 使用与 u-boot 启动 fdt 命令相同的 API。 c. u-boot 不应该准备 Linux 运行时环境吗?任何操作,包括修改 Linux 设备树,都必须在 Linux 启动之前进行。 在 u-boot 加载了 Linux 设备之后,但是 Linux 还没有启动,它不能修改 Linux 设备树吗? 最简单的问题是:"disable_cpu_nodes" API 函数是在 Linux 启动之前还是之后执行的? 我们确实需要恩智浦澄清这些问题,因为这与我们实际运行的项目相关。 能否请您查看一下源代码? https://github.com/nxp-imx/uboot-imx/blob/lf-5.10.72-2.2.3/arch/arm/mach-imx/imx8m/soc.c const nodes_path 这里不是 Linux 设备树节点? static int disable_cpu_nodes(void *blob, u32 disabled_cores) { static const char * const nodes_path[] = { "/cpus/cpu@1", "/cpus/cpu@2", "/cpus/cpu@3", }; u32 i = 0; int rc; int nodeoff; if (disabled_cores > 3) return -EINVAL; i = 3 - disabled_cores; for (; i < 3; i++) { nodeoff = fdt_path_offset(blob, nodes_path[i]); if (nodeoff < 0) continue; /* Not found, skip it */ debug("Found %s node\n", nodes_path[i]); rc = fdt_del_node(blob, nodeoff); if (rc < 0) { printf("Unable to delete node %s, err=%s\n", nodes_path[i], fdt_strerror(rc)); } else { printf("Delete node %s\n", nodes_path[i]); } } Re: A little confused about dtsi for imx8mm single core 你好@hogole、 1>> U-Boot 在运行时不会修改 Linux 设备树。 一旦加载 Linux 内核,U-Boot 就无法再控制设备树了。 2>> U-启动 检测 SoC 模型以避免使用不可用的资源,例如缺少 CPU 内核、GPU、NPU 等。此检测有助于防止系统在启动期间出现不稳定。 3 > > Linux 设备树对 U-Boot 的源代码或行为没有影响。 每个环境都独立使用自己的设备树。 4 > > t无需修改 U-启动 的源代码即可调整 Linux 使用的内核数量。 U-Boot 充当系统的引导加载程序,包括自动检测机制,以避免使用不可用的外围设备,这有助于防止 SoC 在启动期间出现故障。但是,一旦加载了 Linux 内核,它就完全依赖于设备树来了解哪些硬件资源可用。 如果设备树声明了 4 个 CPU 内核,但硬件只有 1 或 2 个,Linux 将尝试在不存在的内核上初始化和安排任务。这种不匹配可能导致内核慌乱或系统崩溃等严重问题。因此,在启动 Linux 之前,必须确保设备树准确反映实际的硬件配置。 核心配置应直接在传递给 Linux 内核的设备树中处理。 Re: A little confused about dtsi for imx8mm single core 我保存了该页面的快照,以防止像以前那样,回复意外消失。 Re: A little confused about dtsi for imx8mm single core @Chavira 1.此问题涉及 U-Boot 在运行时修改 Linux 设备树。你提到的启动过程似乎与我们目前正在讨论的话题没有直接关系,对吗? 2。如果 U-Boot 启动代码已经在运行时根据熔丝指示的内核数量自动更新 Linux 设备树,那么为什么还需要在编译时修改设备树呢? 3.如果我们在编译时修改Linux设备树,这会干扰U-Boot根据熔丝设置对核心数量的运行时调整吗? 4。既然恩智浦发布的电路板支持包中的U-Boot代码已经包含了根据熔丝指示的内核数量在运行时自动更新Linux设备树的逻辑,那么为什么恩智浦支持工程师从一开始就没有向我们提及这一点呢? 这是否意味着 U-启动 代码的这一部分可能存在问题? Re: A little confused about dtsi for imx8mm single core 今天有更新吗?问题的原因找到了吗?为什么我的回复不见了?可以恢复吗? Re: A little confused about dtsi for imx8mm single core 我的帖子怎么不见了?社区管理员能否检查一下问题出在哪里? Re: A little confused about dtsi for imx8mm single core 谢谢 Re: A little confused about dtsi for imx8mm single core 嗨,@hogole、 负责检测芯片型号的 U-启动 代码运行正常,没有任何错误。因此,我们不建议对 U-启动 进行任何修改,因为这些修改是不必要的。 不过,Linux 内核是独立运行的,为确保配置正确,我们建议移除已知无法运行的 CPU 节点。这有助于防止系统出现潜在的错误行为或不稳定性。 在这种情况下,两种方法都是有效的。 请参考以下方框图以了解启动过程: 顺祝商祺! 查维拉 Re: A little confused about dtsi for imx8mm single core 你的回答让我更加困惑。你是说 BSP 中自动检测内核数量的代码是错误的吗?您的意思是我需要修改 DTS 文件以移除核心节点吗? 如果电路板支持包中自动检测内核数量的代码是正确的,恩智浦工程师为什么会建议修改DTS文件以删除核心节点? 哪一个是正确的? Re: A little confused about dtsi for imx8mm single core 嗨,@hogole、 推荐的方法是从设备树中删除相应的节点。 虽然 U-Boot 可以检测芯片型号及其可用功能,但禁用设备树中的节点可确保 Linux 内核不会尝试访问不支持的元器件。这尤其重要,因为帖子中提到的源与U-启动有关,而不是与内核有关。 请注意,这是一个公共社区,欢迎大家分享自己的经验。不过,我们强烈建议您遵循官方建议,以确保稳定性和兼容性。 致以最崇高的敬意, Chavira Re: A little confused about dtsi for imx8mm single core 一周过去了。恩智浦能否考虑回答我的疑问,以便我对目前正在进行的 iMX8MM 项目充满信心?我们需要恩智浦的专业支持。 Re: A little confused about dtsi for imx8mm single core 我相信这个社区的很多人都会同意我的观点。我们都相信恩智浦工程师的回答。如果让我们投票,绝大多数人肯定会考虑恩智浦工程师的答案。 Re: A little confused about dtsi for imx8mm single core 另外,我还想知道解释。 Re: A little confused about dtsi for imx8mm single core 另外,我还想知道解释。 Re: A little confused about dtsi for imx8mm single core 另外,我还想知道解释。 Re: A little confused about dtsi for imx8mm single core 另外,我还想知道解释。 Re: A little confused about dtsi for imx8mm single core 另外,我还想知道解释。 Re: A little confused about dtsi for imx8mm single core 另外,我还想知道解释。 Re: A little confused about dtsi for imx8mm single core 另外,我还想知道解释。 Re: A little confused about dtsi for imx8mm single core 另外,我还想知道解释。 Re: A little confused about dtsi for imx8mm single core 另外,我还想知道解释。 Re: A little confused about dtsi for imx8mm single core 另外,我还想知道解释。 Re: A little confused about dtsi for imx8mm single core 另外,我还想知道解释。 Re: A little confused about dtsi for imx8mm single core 另外,我还想知道解释。 Re: A little confused about dtsi for imx8mm single core 另外,我还想知道解释。 Re: A little confused about dtsi for imx8mm single core 另外,我还想知道解释。 Re: A little confused about dtsi for imx8mm single core 另外,我还想知道解释。 Re: A little confused about dtsi for imx8mm single core 另外,我还想知道解释。 Re: A little confused about dtsi for imx8mm single core 另外,我还想知道解释。 Re: A little confused about dtsi for imx8mm single core 另外,我还想知道解释。 Re: A little confused about dtsi for imx8mm single core 另外,我还想知道解释。 Re: A little confused about dtsi for imx8mm single core 另外,我还想知道解释。 Re: A little confused about dtsi for imx8mm single core 另外,我还想知道解释。 Re: A little confused about dtsi for imx8mm single core 另外,我还想知道解释。 Re: A little confused about dtsi for imx8mm single core 另外,我还想知道解释。 Re: A little confused about dtsi for imx8mm single core 另外,我还想知道解释。 Re: A little confused about dtsi for imx8mm single core 另外,我还想知道解释。 Re: A little confused about dtsi for imx8mm single core 另外,我还想知道解释。 Re: A little confused about dtsi for imx8mm single core 另外,我还想知道解释。 Re: A little confused about dtsi for imx8mm single core 另外,我还想知道解释。 Re: A little confused about dtsi for imx8mm single core 另外,我还想知道解释。 Re: A little confused about dtsi for imx8mm single core 另外,我还想知道解释。 Re: A little confused about dtsi for imx8mm single core 另外,我还想知道解释。 Re: A little confused about dtsi for imx8mm single core 另外,我还想知道解释。 Re: A little confused about dtsi for imx8mm single core 另外,我还想知道解释。 Re: A little confused about dtsi for imx8mm single core 另外,我还想知道解释。 Re: A little confused about dtsi for imx8mm single core 另外,我还想知道解释。 Re: A little confused about dtsi for imx8mm single core 另外,我还想知道解释。 Re: A little confused about dtsi for imx8mm single core 最终的解释是什么? Re: A little confused about dtsi for imx8mm single core 最终的解释是什么? Re: A little confused about dtsi for imx8mm single core 最终的解释是什么? Re: A little confused about dtsi for imx8mm single core 最后的结论是什么?
View full article
启动时间不到一秒?了解详情 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 希望您的平台能够在不到一秒的时间内启动...您的客户有此要求吗?即使在某些情况下这还不够快……我们也会讨论如何提高启动性能。向专家学习如何设计和优化从启动 ROM、启动加载程序到操作系统和应用程序的启动过程。 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 希望您的平台能够在不到一秒的时间内启动...您的客户有此要求吗?即使在某些情况下这还不够快……我们也会讨论如何提高启动性能。向专家学习如何设计和优化从启动 ROM、启动加载程序到操作系统和应用程序的启动过程。
View full article
基于OpenIL Baremetal框架的核间通信应用开发 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 本文档介绍了使用 NXP Layerscape 平台的 OpenIL Baremetal 框架架构,描述了如何运行示例裸机项目以及基于 OpenIL Baremetal 框架的核间通信应用程序开发。核间通信(ICC)应用程序在 Linux 核(主)和 Baremetal 核(从)上运行,通过 SGI 核间中断和共享内存块提供核之间的数据传输。 QorIQ Layerscape 平台的 Baremetal Framework 架构。 运行裸机二进制文件 基于裸机框架的核间通信(ICC)应用开发 运行 ICC 演示应用程序
View full article
下一代 NFC_Tech Days Lyon & Strasbourg_May 2016-02.pdf <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
View full article
PN7642 - Basic RF power limitation using DPC RF power regulation is a critical factor in the development of NFC devices, as it directly influences performance, reliability, and compliance with industry standards. There are three main reasons for this:  If the PN7642 VUP current exceeds the limit given by the product Data sheet, the PN7642 can be damaged. If too high RF power is radiated from the antenna, there exists a risk for NFC Cards. Too high RF power might lead to exceeding a given RF limit (NFC Forum, ISO, EMVCo). NXP provides comprehensive documentation on Dynamic Power Control for the PN7642 and PN5190. Designers are expected to adhere to these guidelines, especially when aiming for compliance with standards such as EMVCo. PN5190 Dynamic Power Control Quick Calibration and TxShaping Demo Automatic DPC Calibration for PN7642 and PN5190 However, if the user's design is intended for infrastructure applications, such as a smart lock. At a minimum, Dynamic Power Control (DPC) should be enabled to serve as a current limiter. The evaluation can be done with the help of NFC Cockpit.  1// Start DPC Calibration  "Press" Start DPC Calibration  "Press" Load protocol  Make sure that the DPC is "Enabled" 2// Adjust current reduction table  Set all entries to "0" Write into EEPROM 3// Set the "Target" current Use approx. the same current as "TxLDO Values"  The limit may be set higher, e.g., to 300 mA, if the purpose is solely to provide overcurrent protection for the IC. Save to EEPROM Restart the board (Close port -> Press VEN->Open port)   4// Check the power regulation  Start DPC Calibration  Place a card or any metal object in the antenna's proximity  Observe VDDPA and "TxLDO" current  The current should stay around the given target  The VDDPA will drop once the antenna is loaded  5// Set a minimum VDDPA in DPC  In the case that the current is still too high, a user can define a minimum VDDPA that is used for the DPC regulation. By default, this value is set to 2.2V. The user can decrease it up to 1.5V.  In that case, NXP also recommends disabling the RDOn control.  Note: The User has to consider the "DPC_TXLDO_MAX_DROPOUT" parameter, which defines the maximum voltage drop on TXLDO. By default, it is set to 3.6 V. That means if the user wants to use the minimum VDDPA 1.5 V, then the maximum TXLDO input shall not exceed 5.1 V. This feature protects the TXLDO from overheating.  Once the evaluation is done, the customer shall program the following EEPROM entries in their application. For more info, see PN7642 Product Data sheet.  DPC_CONFIG (Address: 0x0068) -> example: enabled -> 0x01 DPC_TARGET_CURRENT (Address: 0x0069) -> example: 229 mA -> 0xE5 DPC_TXLDO_MAX_DROPOUT (Addresses: 0x0073 - 0x0074) -> example: 3.6 V -> 0x10,0x0E DPC_TXLDOVDDPALow (Address: 0x006F) -> example: 1.5 V -> 0x00 DPC_HYSTERESIS_LOADING (Address: 0x006B) -> example: 20 mA -> 0x14 DPC_HYSTERESIS_UNLOADING (Address: 0x006E) -> example: 10 mA - 0x0A DPC lookup table entries (Addresses: 0x007D - 0x0125) -> example: for current limitation only -> all 0x00 If a user does not want to use a maximum range of VDDPA during DPC (5.7V), e.g., their system uses a 3.3V supply domain. Then, the maximum VDDPA in DPC can be limited by the following EEPROM settings:  TXLDO_VDDPA_MAX_RDR (Address: 0x0007)-> example: 3.0 V -> 0x0F Note: TXLDO has approx. 0.3V voltage drop. Always set this parameter 0.3V lower. Once this is done, the user has to check the "TxLDO" current and adjust the target current accordingly. In this case, to approximately 150 mA. If you don´t change it, the DPC starts to limit the power around 229 mA, as has been set in a previous step.  NFC Controller Solutions
View full article
How to Enable PCIe WiFi into i.MX6 Android Release? Overview The purpose of this doument is to introduce how to enable PCIe WiFi into i.MX6 Android release. Environment Setup Hardware: i.MX6 SABRE-SD board Software: Android Jelly Bean 4.2 Software Configurations The source codes of Intel PCIe WiFi have been integrated for i.MX6 SABRE-SD board into i.MX6 Android release. However it's disabled by default. To enable it for i.MX6 SABRE-SD board, you can do the following: Change BOARD_WLAN_VENDOR to INTEL in device/fsl board configuration files. For example, diff --git a/sabresd_6dq/BoardConfig.mk b/sabresd_6dq/BoardConfig.mk index 9c8a32d..912e752 100755 --- a/sabresd_6dq/BoardConfig.mk +++ b/sabresd_6dq/BoardConfig.mk @@ -11,7 +11,7 @@ TARGET_BOOTLOADER_BOARD_NAME := SABRESD PRODUCT_MODEL := SABRESD-MX6DQ # Wifi -BOARD_WLAN_VENDOR                       := ATHEROS +BOARD_WLAN_VENDOR                       := INTEL # for atheros vendor ifeq ($(BOARD_WLAN_VENDOR),ATHEROS) BOARD_WLAN_DEVICE                       := ar6003 @@ -30,6 +30,7 @@ WIFI_COMPAT_MODULE_ARG                         := "" endif #for intel vendor ifeq ($(BOARD_WLAN_VENDOR),INTEL) +BOARD_WLAN_DEVICE                       := INTEL BOARD_HOSTAPD_PRIVATE_LIB               ?= private_lib_driver_cmd BOARD_WPA_SUPPLICANT_PRIVATE_LIB        ?= private_lib_driver_cmd WPA_SUPPLICANT_VERSION                  := VER_0_8_X After changing BOARD_WLAN_VENDOR as "INTEL", the following files will be compiled for intel WiFi: device/fsl-proprietary/pcie-wifi/ external/wpa_supplicant_8 hardware/imx/wlan/intel/ hardware/libhardware_legacy/wifi/wifi_intel.c Enable PCIe WiFi driver in kernel_imx by running "make menuconfig" command: Select "System Type -> Freescale MXC Implementations -> PCI Express support" as "*" Select "Networking support -> Wireless ->  cfg80211 - wireless configuration API" as "*". Then select "Networking support -> Wireless -> Generic IEEE 802.11 Networking Stack (mac80211)" as "*" Select "Device Drivers ->  Network device support -> Wireless LAN -> Intel Wireless WiFi 4965AGN (iwl4965)" as "*" Then run "make" command to build kernel. The followings are the dependencies files to enable above configuration: Kernel configuration: * -> System Type -> Freescale MXC Implementations Select the PCI Express support. Then config intel WIFI driver: Generic IEEE 802.11 Networking Stack (mac80211) used by WIFI devices Symbol: MAC80211 [=y] Type : tristate Prompt: Generic IEEE 802.11 Networking Stack (mac80211) Defined at net/mac80211/Kconfig:1 Depends on: NET [=y] && WIRELESS [=y] && CFG80211 [=y] Location: -> Networking support (NET [=y]) -> Wireless (WIRELESS [=y]) Intel iwl4965 or iwl6300 card driver Symbol: IWL4965 [=y] Type : tristate Prompt: Intel Wireless WiFi 4965AGN (iwl4965) Defined at drivers/net/wireless/iwlegacy/Kconfig:65 Depends on: NETDEVICES [=y] && WLAN [=y] && PCI [=y] && MAC80211 [=y] Location: -> Device Drivers -> Network device support (NETDEVICES [=y]) Then you can follow up the instructions into Android User guide to build Android image. Known Limitation PCIe low power mode is not supported according to BSP release note. So when building in PCIe, the system suspend/resume should be disabled now. Android i.MX6DL i.MX6Dual i.MX6Quad Re: How to Enable PCIe WiFi into i.MX6 Android Release? Hi Sandesh      can you tell me the changes?thank Re: How to Enable PCIe WiFi into i.MX6 Android Release? HI Ross      can you upload the doc? thanks~ Re: How to Enable PCIe WiFi into i.MX6 Android Release? Dear Sir, I tried to load iwlagn.ko, and i got those log when WIFI ON: D/WifiService( 2578): setWifiEnabled: true pid=2831, uid=1000 W/WifiHW  ( 2578): is_wifi_driver_loaded W/WifiHW  ( 2578): got module patch /system/lib/modules/iwlagn.ko E/WifiStateMachine( 2578): Failed to reload STA firmware java.lang.IllegalArgumentException: command '12 softap fwreload wlan0 STA' failed with '501 12 SoftAP command has failed' W/CommandListener( 2209): Failed to retrieve HW addr for wlan0 (No such device) D/CommandListener( 2209): Setting iface cfg E/WifiStateMachine( 2578): Unable to change interface settings: java.lang.IllegalStateException: command '14 interface setcfg wlan0 0.0.0.0 0 down' failed with '400 14 Failed to set address (No such device)' D/WifiMonitor( 2578): startMonitoring(wlan0) with mConnected = false E/WifiHW  ( 2578): Unable to open connection to supplicant on "/data/misc/wifi/sockets/wlan0": No such file or directory D/BluetoothAdapter( 2831): 1102399976: getState() :  mService = null. Returning STATE_OFF D/Tethering( 2578): sendTetherStateChangedBroadcast 1, 0, 0 I/wpa_supplicant( 3398): Successfully initialized wpa_supplicant D/Tethering( 2578): InitialState.processMessage what=4 D/Tethering( 2578): sendTetherStateChangedBroadcast 0, 0, 0 E/WifiHW  ( 2578): Supplicant not running, cannot connect E/WifiHW  ( 2578): Supplicant not running, cannot connect E/WifiHW  ( 2578): Supplicant not running, cannot connect E/WifiHW  ( 2578): Supplicant not running, cannot connect E/WifiHW  ( 2578): Supplicant not running, cannot connect E/WifiMonitor( 2578): startMonitoring(wlan0) failed! E/WifiStateMachine( 2578): Failed to setup control channel, restart supplicant W/WifiHW  ( 2578): is_wifi_driver_loaded W/WifiHW  ( 2578): is_wifi_driver_loaded return 0 E/WifiStateMachine( 2578): Failed to reload STA firmware java.lang.IllegalArgumentException: command '17 softap fwreload wlan0 STA' failed with '501 17 SoftAP command has failed' D/CommandListener( 2209): Setting iface cfg D/CommandListener( 2209): Trying to bring down wlan0 E/WifiMonitor( 2578): startMonitor called with unknown iface=wlan0 D/BluetoothAdapter( 2831): 1102399976: getState() :  mService = null. Returning STATE_OFF I/wpa_supplicant( 3416): Successfully initialized wpa_supplicant But wifi still not work. Any suggestions for it ? Re: How to Enable PCIe WiFi into i.MX6 Android Release? Dear Sir, We are using i.MX6DL with Android 4.4.2 kitkat. WiFi module: Intel Wifi Link 5100  Model:512AN_HMW  When trying to turn on wifi , it shows: D/WifiService( 2625): setWifiEnabled: true pid=2943, uid=1000 W/WifiHW  ( 2625): got module patch /system/lib/modules/iwlagn.ko E/WifiStateMachine( 2625): Failed to load driver Any suggestions for it ? Re: How to Enable PCIe WiFi into i.MX6 Android Release? Dear Sir, Our customer would like to use WiFi module: Intel Wifi Link 5100  Model:512AN_HMW  on Android 4.4 system. Could you any suggestion for it? Re: How to Enable PCIe WiFi into i.MX6 Android Release? Everyone, It should be noted that this process will not work with the Intel 3160 due to its support of P2P (I have never tried using the Intel 4965, don't have that part on hand in any case). We also have had trouble with P2P with the Atheros 9k (AR9462 part), but finally got basic Wifi functionality working. In general, I have been very disappointed with Wifi support in the JellyBean 4.3 BSP. What would be nice to see is a patch released to upgrade  the wpa_supplicant to 2.1 stable (February 2014 release I think). Michael Robbeloth Re: How to Enable PCIe WiFi into i.MX6 Android Release? Sandesh, Thank you, yes I did. One of our engineers got our SX-PCEAN+ card (9280 based) working with the v3.0.35 Ubuntu BSP. Re: How to Enable PCIe WiFi into i.MX6 Android Release? Ross, Did you find solution to bringup wifi on Ath9K PCIe card? we modified the changes in hardware/imx/wlan/atheros/compat-wireless/Android.mk to bringup WiFi feature. Re: How to Enable PCIe WiFi into i.MX6 Android Release? Hi Xiaoli, Is there support for the Atheros AR9K family and what would the differences be in the above instructions to build JB for a AR9K PCIe card? I have two i.MX6 customers asking how to do this (one is Android JB and one is Linux). I plan on sharing your excellent document but wondered if you could share anything specific to the Atheros 9K family. Thanks..>Andy Re: How to Enable PCIe WiFi into i.MX6 Android Release? The attachment is some patches  to enable intel 4965 wifi card with android 4.2.2 on sabresd 6q.You can take it as a reference. Re: How to Enable PCIe WiFi into i.MX6 Android Release? Hi Xiaoli, I followed your instruction to build JB 4.2.2 with Intel mini-PCIe wifi support but got the error messages below. I was able to build ICS with the same configuration, strange. make: *** No rule to make target `out/target/product/sabresd_6dq/obj/STATIC_LIBRARIES/private_lib_driver_cmd_intermediates/export_includes', needed by `out/target/product/sabresd_6dq/obj/EXECUTABLES/hostapd_intermediates/import_includes'.  Stop.
View full article
使用 i.MX28 添加对新型 NAND 的支持——NAND 分析 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 本页介绍如何确定 NAND 驱动程序中使用的 NAND 时序参数。这与可能使用的任何操作系统无关。 分析NAND数据表 我们使用电子表格来捕获和分析 NAND 特性。该电子表格[附加到此 wiki 页面|使用 i.MX28 添加对新 NAND 的支持 - Nand 分析^nand_analysis_template.xls]。 我们分析一个 NAND,如下所述。 我们必须有 NAND 数据表才能进行分析。 将*分析电子表格*复制到一个新文件名,其中包含正在分析的 NAND 的确切零件编号。 填写分析电子表格的第 1 页(“封面”)。 接下来处理第 3 张表: 基本特征。 其他表。 如果 NAND 是数据表中列出的某个系列之一,则使用一个电子表格来分析整个系列。您可以使用“类似”行来查找家庭的其他成员。如果需要,添加更多行。 大多数 NAND 都有异步接口,因此不涉及简单的时钟频率。相反,存在各种设置时间、保持时间和输出延迟,这意味着 NAND 的 I/O 速率受到限制。电子表格比较了 NAND 的时序规格,以查看设置、保持和输出时间的总和是否短于最小读取周期或写入周期时间。该电子表格专门用于 STMP378x/i.MX233/i.mx28 中的 Nand 控制器芯片,因此电子表格执行时序计算,目的是得出这些 CPU 的时序参数 *TSU*、*TDS* 和 *TDH*。如果在计算完所有时间之后,TDS 和/或 TDH 量 {color:#ff0000} 变为红色{color},则计算出的 TDS 和/或 TDH 对于 NAND 的指定周期时间来说太短。在这种情况下: 您必须在软件中增加其中一个或两个。 在分析电子表格中的某处写下您选择的值的注释,但不要弄乱自动计算。 记录闪存如何表示工厂标记的坏块。(有些使用块的第一页,有些使用最后一页,等等)将其与此[当前坏块标记方法超集[ http://wiki.freescale.net/display/PSGSW/Storage+Media%2C+Flash+Bad+Block+Marks ]进行比较用于检测任何闪存工厂坏块。 实例分析 NAND 数据表和分析的示例可以在 [Hynix NAND 页面 | http://wiki.freescale.net/display/PSGSW/Hynix+NAND+Flash+Documents ] 上找到。 i.MX2x 回复:使用 i.MX28 添加对新 NAND 的支持–NAND 分析 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 你好,谢谢你的信息。由于某些原因,链接不起作用。您能否提供分析电子表格的新链接?谢谢,马克
View full article