Multi Source Translation Content

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

Multi Source Translation Content

ディスカッション

ソート順:
IW612 BT 无法启动 我有 IW612(M2-MAYA-W271) 安装在 Verdin iMX95 EVK 上。安装的是 L6.12.3-1.0.0 映像。加载模拟驱动程序和组合固件后,Wifi 可以正常工作。   modprobe moal mod_para=nxp/wifi_mod_para.conf cat /lib/firmware/nxp/wifi_mod_para.conf SDIW612 = { cfg80211_wext=0xf max_vir_bss=1 cal_data_cfg=none ps_mode=1 auto_ds=1 host_mlme=1 fw_name=nxp/sduart_nw61x_v1.bin.se }   但是,英国电信的固件似乎没有响应。 modprobe btnxpuart hciconfig hci0 up [ 147.824667] Bluetooth: hci0: Setting baudrate failed (-110) [ 149.840797] Bluetooth: hci0: Setting wake-up method failed (-110) [ 151.856817] Bluetooth: hci0: Setting Power Save mode failed (-110) [ 152.880918] Bluetooth: hci0: FW already running. [ 154.928780] Bluetooth: hci0: Opcode 0x0c03 failed: -110 [ 167.824775] Bluetooth: hci0: Setting baudrate failed (-110) [ 169.840909] Bluetooth: hci0: Setting wake-up method failed (-110) [ 171.856888] Bluetooth: hci0: Setting Power Save mode failed (-110) [ 173.872779] Bluetooth: hci0: Setting baudrate failed (-110) 我尝试了组合固件和开放源 HCI UART 驱动程序 hciattach /dev/ttyLP4 any 115200 flow ,但没有成功。 您知道如何启用 BT 吗?谢谢。 Re: IW612 BT can't be brought up 亲爱的 @Benjamin_Hu, > > 那么即使在电源RESET期间 BT_15.4_RST 也始终处于高电平状态可以吗? 理论上,这个修改器应该可以正常工作。 因为你说过," 它会导致 BT_15.4_RST 信号 " 上浮空 W_DISABLE2 和 1.7V。 开机时,模块应具有内部开机 RESET 功能,无需通过软件控制 RESET。 此致, 卫东 Re: IW612 BT can't be brought up 谢谢@weidong_sun U-blox 模块波特率为 115200。我在设备树中同时尝试了 115200 和 3M。但这并没有什么不同。 这可能与 M.2 连接器上未连接的W_DISABLE2有关。U-blox 模块上有一个电平转换器,可将 W_DISABLE2 映射到 IW612 的 BT_15.4_RST。 只要钳位,它就会 RESET 蓝牙以及 802.15.4 无线电。由于它未连接,因此主机无法 RESET 它。 不过,U-Blox modue 上还有一个 I2C GPIO 扩展器。扩展器的一个 GPIO 连接到 BT_15.4_RST、太。无论是 W_DISABLE2,主机都能够通过 M.2 连接器上的 I2C RESET BT 和 802.15.4。遗憾的是,M.2 接口上的 I2C 也未连接,这意味着主机无法操作扩展器。它会导致 BT_15.4_RST 上的 W_DISABLE2 和 1.7V 浮空信号 那么,即使在电源 RESET 期间 BT_15.4_RST 也始终处于高电平状态可以吗? Re: IW612 BT can't be brought up 亲爱的 @Benjamin_Hu, 由于恩智浦版本的i.MX95-EVK尚未向大众市场发布,所以我手上没有原理图。我检查了你的 Wifi 模块,它是 M.2 卡,所以你应该在 M.2 KEY E 接口上使用它。 我查看了 L6.12.3_1.0.0 的 Linux 版本说明: =============== 支持 i.MX 93 和 i.MX 95 15x15 EVK 上的 NXP SDIO IW612(使用 Murata LBES5PL2EL 测试)。 =============== 它是村田 2EL M.2 模块。也许这两个 M.2 模块之间存在一些差异。你可以这样试试: 检查 M.2 连接器上的 W_DISABLE1& W_DISABLE2 是否都拉高到高电平,如果没有,请将它们拉高到高电平!或者驱动连接到这 2 个 PIN 的 2 个 GPIO 输出高电平。 [补充] 您还需要确认 u-blox 的默认波特率是否为 3M。 我的 M.2 2EL 模块的默认波特率是 115200。 请试试看 谢谢! 、 卫东 Re: IW612 BT can't be brought up 在设备树中,默认值为 “fw-init-baudrate=3000000”。
記事全体を表示
S32K341 - Issue with Mem_43_INFLS on S32DS3.6.2 and RTD6.0.0 Dear NXP Support/NXP Expert, I am developing a bootloader for S32K341 processor. I have started from an example (Mem_InFls_Example_S32K344). To start, I have modified the memap files in order to put in RAM all the function involved to the pflash job and It worked, BUT I want to work with the original generated files (with an exception of c40 files where, on my understanding, It is necessary to change the pragma declaration). So, I have enabled Mem load access code on job start the erase and write address are placed in the end of the ram zone int_sram : ORIGIN = 0x20400000, LENGTH = 0x00007F00. 1) Is that correct? Or I have to put these pointers in other zone? Below you can find the ramcode section from the map file: 2) Am I missing some function? The issue is an hard fault handler, it is started from: 0x40d2e5 : b.n 0x40d300 ; 0x40d3f3 : b.n 0x40d40e ; basically near the "jump" to the flash driver. 3) Any idea?  I am a little bit stucked. Thanks a lot, Ciancio Re: S32K341 - Issue with Mem_43_INFLS on S32DS3.6.2 and RTD6.0.0 Hi @il_ciancio, Great to hear that it helped This issue likely occurs because the core writes data to SRAM, which is affected by the data cache, if the core would read the data, there would be no issue. However, when the core tries to execute code from that same memory region, it relies on the instruction cache. If the instruction cache hasn’t been properly invalidated or updated, the core may end up fetching uninitialized instructions — executing 0x00 bytes instead of the actual code with 0x1 at LSB. Regards, Daniel Re: S32K341 - Issue with Mem_43_INFLS on S32DS3.6.2 and RTD6.0.0 Remove MPU_ENABLE: this solution doesn't work, but the sram area is cachable, maybe I have to try with a no cachable area. Enable Mem clean cache After Load Access Code: with this solution and the same pointer and the MPU_ENABLE the code works! You get the point, great work, thanks a lot! About the thumb addresses, I am a little bit confused, because the macro MEM_43_INFLS_AC_CALL is compiled with an or with ARM_FAR_CALL2THUMB_CODE_BIT0_U32, so the jump itself should work. Maybe inside the flashdriver there is this issue? By the way, as I wrote, enabling the cache the code is working. I will wait If you have other comments on MEM_43_INFLS_AC_CALL and I'll close the ticket. Thanks a lot and again, great work! Ciancio Re: S32K341 - Issue with Mem_43_INFLS on S32DS3.6.2 and RTD6.0.0 1.  Go to the properties of the project and remove this symbol. 2. This INVSTATE fault is caused by branching to to a non-thumb address - a thumb address has the least significant bit set to 1. And this can be potentially caused by the cache - the core branches to whatever is in the cache. Regards, Daniel   Re: S32K341 - Issue with Mem_43_INFLS on S32DS3.6.2 and RTD6.0.0 I will try both ways, just some questions: is there an api to disable MPU? This can also be (potentially) caused by the Cache (managed by the MPU). ->just for my understanding of the micro, how did you come to this conclusion? do you have any references to this error? thanks a lot and great work! Ciancio Re: S32K341 - Issue with Mem_43_INFLS on S32DS3.6.2 and RTD6.0.0 This can also be (potentially) caused by the Cache (managed by the MPU). MPU can be disabled in the startup code - so you can easily test it. However, you can enable the option below to clean the cache. Re: S32K341 - Issue with Mem_43_INFLS on S32DS3.6.2 and RTD6.0.0 It is related to this: . Lookin to the data stored in the ram the hard fault start from (MEM_43_INFLS_AC_CALL in Mem_43_INFLS_IPW_Erase): IR instruction: 0x40dc05 : b.n 0x40dc20 . Thanks a lot. Re: S32K341 - Issue with Mem_43_INFLS on S32DS3.6.2 and RTD6.0.0 Hi @il_ciancio, In the fault handler, read the Configurable Fault Status Register (CFSR) to determine the cause of the fault. Refer to the official ARM documentation for details: https://developer.arm.com/documentation/dui0646/c/Cortex-M7-Peripherals/System-control-block/Configurable-Fault-Status-Register If the fault is identified as a MemManage fault, inspect the Memory Protection Unit (MPU) configuration for the memory region at address 0x20407E00. Re: S32K341 - Issue with Mem_43_INFLS on S32DS3.6.2 and RTD6.0.0 Thanks for your reply. This is my configuration and via debugger I can see in the RAM area the the Access Code is loaded. The erase/write pointer are not used by the application. What can i check? Thanks Re: S32K341 - Issue with Mem_43_INFLS on S32DS3.6.2 and RTD6.0.0 Hi @il_ciancio, I just tested it with the default Mem_InFls_Example_S32K344 example. I changed the sector to a BLOCK_0 sector. #define EXAMPLE_SECTOR_START_ADDR (0x004F0000U) I saw that these SRAM locations were unused by the application, so I used them: The code is being copied there: And the example works as expected. Can you test it on your side? Thank you, Regards, Daniel
記事全体を表示
S32K14x プロジェクトを S32DS 2018.R1 および SDK 0.8.6 から S32DS 3.6.1 および RTD 3.0 に移行するにはどうすればよいでしょうか? S32K 146 チップを使用して、プロジェクトを S32DS 2016.R1 から S32DS3.6.1 に移行し、SDK 0.8.6 から RTD 3.0 に切り替えようとしています。 S32DS 3.6.1でプロジェクト設定を手動で新しいプロジェクトに転送しています。しかし、ペリフェラルの設定に問題があります。 また、NXP の Web サイトでは、S32DS 3.6.1 および RTD 3.0 用の非 AUTOSAR サンプル プロジェクトは見つかりませんでした。AUTOSAR なしで RTD 3.0 を使用するサンプル プロジェクトがあれば、共有していただけますか?ペリフェラルがどのように構成されているかを確認したいと思います。 これらはDS2018.R1にあったコンポーネントです また、ピンを設定した後、次のエラーが発生しました。 「Ftfc_Fls_Ip_Types.h と StandardTypes.h の AUTOSAR バージョン番号が異なります。」 この問題を解決するにはどうすればCANますか? S32K1 Re: How to migrate S32K14x project from S32DS 2018.R1 and SDK 0.8.6 to S32DS 3.6.1 and RTD 3.0? こんにちは、 SDKs/MCAL から RTD への移行は手動のプロセスであり、残念ながら、それを容易にする自動化ツールはありません。ユーザーは以下を行う必要があります。 1. RTD フレームワークを使用して新しいプロジェクトを作成します。 2. 必要なコンポーネントを追加し、構成ツールを使用して構成します。 3. RTD 構造に合わせて、元のプロジェクトのコードを手動で調整または書き換えます。 参照できる SDK/MCAL から RTD への移行ガイドがあります。 https://www.nxp.com/docs/en/application-note/AN13435.pdf RTD がインストールされている場合は、S32 Design Studio (S32DS) 内に AUTOSAR 以外のサンプル プロジェクトがいくつか見つかります。 これらのサンプルは S32K146 専用のものではないかもしれませんが、参考資料として役立ちます。 BR、ペトル
記事全体を表示
IW612 BT can't be brought up I have IW612 (M2-MAYA-W271) on Verdin iMX95 EVK. It is  L6.12.3-1.0.0 image installed. Wifi works when moal driver and combo firmware are loaded.   modprobe moal mod_para=nxp/wifi_mod_para.conf cat /lib/firmware/nxp/wifi_mod_para.conf SDIW612 = { cfg80211_wext=0xf max_vir_bss=1 cal_data_cfg=none ps_mode=1 auto_ds=1 host_mlme=1 fw_name=nxp/sduart_nw61x_v1.bin.se }   However, BT firmware don't seem to response. modprobe btnxpuart hciconfig hci0 up [ 147.824667] Bluetooth: hci0: Setting baudrate failed (-110) [ 149.840797] Bluetooth: hci0: Setting wake-up method failed (-110) [ 151.856817] Bluetooth: hci0: Setting Power Save mode failed (-110) [ 152.880918] Bluetooth: hci0: FW already running. [ 154.928780] Bluetooth: hci0: Opcode 0x0c03 failed: -110 [ 167.824775] Bluetooth: hci0: Setting baudrate failed (-110) [ 169.840909] Bluetooth: hci0: Setting wake-up method failed (-110) [ 171.856888] Bluetooth: hci0: Setting Power Save mode failed (-110) [ 173.872779] Bluetooth: hci0: Setting baudrate failed (-110) I tried the combo firmware together with open source HCI UART driver hciattach /dev/ttyLP4 any 115200 flow  with no luck.  Do you have any idea how to enable BT? Thanks. Re: IW612 BT can't be brought up Dear @Benjamin_Hu , >>So is it fine that BT_15.4_RST is always high even during power reset? In theory, this mod should work fine. Because you said," It results in floating W_DISABLE2 and 1.7V on BT_15.4_RST signal". When power on, the module should have an internal Power On Reset, don't need to control the reset via software. Regards, weidong Re: IW612 BT can't be brought up Thanks @weidong_sun  U-blox module baud rate is 115200. I tried both 115200 and 3M in device tree. But it made no difference. It may have something to do with the unconnected W_DISABLE2 on M.2 connector. There is a level-shifter on the U-blox module, mapping W_DISABLE2 to BT_15.4_RST of IW612. It will reset Bluetooth as well as 802.15.4 radio as long as it is asserted. Since it is unconnected, the host can't reset it. However, there is also an I2C GPIO expander on the U-Blox modue. One GPIO from expander connects to BT_15.4_RST, too. The host is capable to reset BT and 802.15.4 via the I2C on M.2 connector regardless W_DISABLE2. Unfortunately, the I2C is also unconnected on the M.2 connector, meaning the host can not manipulate the expander. It results in floating W_DISABLE2 and 1.7V on BT_15.4_RST signal.  So is it fine that BT_15.4_RST is always high even during power reset? Re: IW612 BT can't be brought up Dear @Benjamin_Hu , Because i.MX95-EVK of NXP version has not released to Mass Market yet, I don't have the schematic on my hand.  I checked your wifi module, it is M.2 card, so you should use it on M.2 KEY E connector. I checked Linux release note of L6.12.3_1.0.0: =============== Supports the NXP SDIO IW612 (tested with Murata LBES5PL2EL) on i.MX 93 and i.MX 95 15x15 EVK. =============== It is Murata 2EL M.2 module. Maybe there exists a little difference between these 2 M.2 modules . You can try like this: Check if W_DISABLE1 & W_DISABLE2 on M.2 connector are both pulled up to HIGH, if not, pull up them to HIGH, please !  or drive 2 GPIOs connected to these 2 PINs to output HIGH. [Addition] You also need to confirm if the default baud rate is 3M with u-blox.  My M.2 2EL module's default baud rate is 115200. Try it, please! Thanks! Regards, weidong Re: IW612 BT can't be brought up It is 'fw-init-baudrate=3000000 ' by default in device tree.
記事全体を表示
请检查 SpiTimeClk2Cs、SpiTimeCs2Clk 和 SpiTimeCs2CS。 我使用的是 s32k314、s32ds RTD4.0.0。 我正在测试 spi 通信。 但我认为效果不佳。 因此,您是否要检查 SpiTimeClk2Cs、SpiTimeCs2Clk 和 SpiTimeCs2CS? 1. SpiTimeClk2Cs、SpiTimeCs2Clk 和 SpiTimeCs2CS 的含义是什么? 2. 请检查 Spi 配置 SpiTimeClk2Cs、SpiTimeCs2Clk 和 SpiTimeCs2CS 与图片的比较。 3.当使用 GPIO 而不是 PS0 控制 SPI 通信的 CS 引脚时,我希望与正常 SPI 时钟操作的时序一致。我该怎么做?(用 PS0 控制时通信不起作用)。 1) 通过 GPIO 控制 cs 引脚(miso 数据有误。) 2) 通过 PS0 控制 cs 引脚 4. 如何固定 spi 时钟中的这一点? 谢谢帮助 Re: would you check SpiTimeClk2Cs, SpiTimeCs2Clk and SpiTimeCs2CS? @PavelL 当我将 SpiDataShiftEdge 设置为 "尾部 "时,信号源生成在照片的右侧(CPOL(1U)、CPHA(1U)).而当我将 SpiDataShiftEdge 设置为 "Leading "时,信号源生成为图片的左侧(CPOL(1U), CPHA(1U))。 因此,如果要使用 BNO080,我必须设置 CPOL =1、CPHA =1,还必须设置 SpiDataShiftEdge 为前沿,SpiShiftClockIdleLevel 为高电平。对不对? Re: would you check SpiTimeClk2Cs, SpiTimeCs2Clk and SpiTimeCs2CS? @PavelL 你好我回复得太晚了。我做了其他工作。 我还没有解决SPI问题. 总之,我不知道你还记得你的答复。 您回复说我的设置(SpiDataShiftEdge)是错误的,但其他人的引导是正确的。 这是邮政: https://community.nxp.com/t5/S32K/how-is-set-spi-communication-mode/m-p/2117524 那么,什么是正确的? (我很抱歉,这么晚才回复......)。 Re: would you check SpiTimeClk2Cs, SpiTimeCs2Clk and SpiTimeCs2CS? 你好@rlaxortn、 问 1:SpiTimeClk2Cs、SpiTimeCs2Clk 和 SpiTimeCs2Cs 的含义是什么? A1: SpiTimeCs2Clk 与 CS 设置时间 (tcssu) 相对应,即 CS 进入激活状态与第一个 SPI 时钟边沿之间的延迟。 spitimeClk2CS 是指最后一个 SPI 时钟边缘与 CS 处于非活动状态之间的延迟——您的设备未明确指定。 SpiTimeCs2Cs 是两个连续 CS 激活之间的最短时间,即从 CS 进入非激活状态到下一次激活的时间。 问题 2:你会检查 SPI 配置(spitimeClk2cs、spitimecs2clk 和 Spitimecs2CS)并将其与时序图进行比较吗? A2:SpitimeClk2CS、SpitiMecs2CLK 和 SpitiMecs2CS 的值通常可以保持在 1 µs,这对于大多数设备来说是安全的。 但是, SPIDataShiftEdge设置存在一个关键问题——应将其设置为 尾随 设置,因为您的设备(BNO080)要求CPOL = 1,CPH A = 1。 问题 3:当用 GPIO 而不是 PS0 控制 SPI 通信的 CS 引脚时,我希望与正常 SPI 时钟操作的时序一致。我该怎么做?(使用 PS0 控制时,通信不起作用。) A3:如果计时处理得当,应该不会有问题。将 GPIO 用于 CS 时的推荐顺序是 将 CS 拉低 等待 0.5-1 微秒 启动 SPI 传输 等待传输完成 再次等待 0.5-1 微秒 版本 CS HIGH 这模仿了硬件控制的 CS 的行为,并确保了从属设备的时机正确。 问题 3a: 通过 GPIO 控制 CS 引脚会导致不正确的 MISO 数据。 A3a: 如上所述,这可能是由于 SpiDataShiftEdge 设置不正确造成的。请确保将其设置为 TRAILING 以匹配 CPHA = 1。 Q3b:通过 PS0 控制 CS 引脚(硬件控制) A3b:这个设置总体看来是正确的。唯一需要考虑的是 CS 激活之前的初始 CLK 脉冲。但是,由于该脉冲是在 CS 钳位之前发生的,因此它应该是无害的,并且会被从属设备忽略。 问题4:如何修复SPI时钟中的标记点(意外脉冲)? A4:即使 CS 由 LPSPI 模块控制,也会出现类似的脉冲确实是不寻常的。请检查在拉低 CS 和启动 SPI 传输之间执行了哪些代码。任何过早启用 LPSPI 模块或错误配置定时参数的行为都可能导致这种现象。 顺祝商祺! 帕维尔
記事全体を表示
MIPI-CSI Media Pipeline on IMX8M Mini not Working Hi team, I for the life of me, can not get the /dev/media0 node to show up in user space when trying to configure the media pipeline.I am using the Compulab IMX8M Mini SOM on a custom integration board with a YOCTO build for our use case. I am trying to integrate an Allied Vision camera with their Alvium CSI2 Drivers. A main baseline question: if the kernel and device tree are set up correctly, the /dev/media0 node will still show up if the pipeline is configured correctly? Or does a driver need to be loaded for the pipeline to initiated successfully? Because regardless, nothing I do can make the media0 node to show up. At boot time, the camera is not ready to go due to some board setup. Once in user space I (after the power regulators are setup and the camera is ready to go) I rebind the drivers to this output: root@b2qt-imx8mm-lpddr4-evk:/usr/share/BoardSetup-scripts# ./RebindCamera.sh Rebinding AVT camera driver... ./RebindCamera.sh: line 7: echo: write error: No such device [ 43.335322] avt_csi2 0-003c: avt_probe[5107]: /usr/src/debug/avt-csi2/1.2.0+git/avt-csi2.c [ 43.344799] avt_csi2 0-003c: avt_probe[5147]: no powerdown-gpios defined [ 43.351676] avt_csi2 0-003c: avt_probe[5164]: devm_gpiod_get_optional(dev, "reset-gpios" succeeded [ 43.360713] avt_csi2 0-003c: avt_probe[5171]: fwnode_property_present failed to find mipi_csi [ 43.369373] avt_csi2 0-003c: avt_probe[5188]: bcrm_wait_timeout not found, use default value [ 43.377842] avt_csi2 0-003c: avt_probe[5191]: bcrm_wait_timeout set to 3000ms [ 43.385046] avt_csi2 0-003c: avt_csi2_check_mipicfg[4586]: ep_cfg.bus.mipi_csi2.num_data_lanes 1 [ 43.393965] avt_csi2 0-003c: avt_csi2_check_mipicfg[4588]: v4l2_fwnode_ep.nr_of_link_frequencies 2 [ 43.402965] avt_csi2 0-003c: avt_csi2_check_mipicfg[4593]: v4l2_fwnode_ep.link-frequencies 0 value 445500000 [ 43.412824] avt_csi2 0-003c: avt_csi2_check_mipicfg[4593]: v4l2_fwnode_ep.link-frequencies 1 value 891000000 [ 43.422688] avt_csi2 0-003c: avt_probe[5213]: no powerdown-gpios powerdown defined [ 43.430332] avt_csi2 0-003c: avt_probe[5228]: no reset-gpios defined [ 43.436726] avt_csi2 0-003c: avt_reset[2080] [ 43.443043] avt_csi2 0-003c: wait_camera_available[2025]: Waiting for camera to shutdown... [ 44.648643] avt_csi2 0-003c: wait_camera_available[2033]: Waiting for camera to respond to I2C transfers... [ 45.269281] kauditd_printk_skb: 15 callbacks suppressed [ 45.269292] audit: type=1334 audit(1723754849.880:26): prog-id=21 op=UNLOAD [ 46.664540] avt_csi2 0-003c: wait_camera_available[2054]: Heartbeat supported, waiting for heartbeat to become active [ 49.878985] avt_csi2 0-003c: wait_camera_available[2064]: Heartbeat active [ 49.949573] avt_csi2 0-003c: read_cci_registers[748]: regmap_bulk_read(camera->regmap8, cci_cmd_tbl[CCI_REGISTER_LAYOUT_VERSION ].address ret 540 [ 49.969505] avt_csi2 0-003c: cci layout version b: 0x00000100 [ 49.975362] avt_csi2 0-003c: cci layout version a: 0x00010000 [ 49.981170] avt_csi2 0-003c: avt_probe[5285]: read_cci_registers succeeded [ 49.989267] avt_csi2 0-003c: avt_probe[5302]: bcrm_version_check succeeded [ 49.996951] avt_csi2 0-003c: bcrm_get_write_handshake_availibility[704]: BCRM write handshake supported! [ 49.996975] avt_csi2 0-003c: Found camera ALVIUM 1500 C-501c NIR [ 50.014014] avt_csi2 0-003c: avt_probe[5315]: Firmware version: 0.6.0.8c98 ret = 0 [ 50.024773] avt_csi2 0-003c: correct gcprm version [ 50.029887] avt_csi2 0-003c: avt_probe[5353]: INIT_WORK(&camera->bcrm_wrhs_work, bcrm_wrhs_work_func); [ 50.046953] avt_csi2 0-003c: avt_get_sensor_capabilities[4409]: csi clocks [ 50.046953] camera range: 40000000:750000000 Hz [ 50.046953] dts nr_of_link_frequencies 2 [ 50.046953] dts link_frequencies[0] 445500000 Hz [ 50.103673] avt_csi2 0-003c: avt_get_sensor_capabilities[4450]: csi clock read from camera: 443750000 Hz [ 50.113207] avt_csi2 0-003c: avt_get_sensor_capabilities[4454]: get minimal and maximal resolutions [ 50.128752] avt_csi2 0-003c: avt_init_avail_formats[1840]: add MEDIA_BUS_FMT_UYVY8_2X8/V4L2_PIX_FMT_UYVY/MIPI_CSI2_DT_YUV422_8B to list of available formats -1 - 1 [ 50.152546] avt_csi2 0-003c: avt_init_avail_formats[1841]: add MEDIA_BUS_FMT_UYVY8_1X16/V4L2_PIX_FMT_UYVY/MIPI_CSI2_DT_YUV422_8 B to list of available formats -1 - 1 [ 50.167322] avt_csi2 0-003c: avt_init_avail_formats[1842]: add MEDIA_BUS_FMT_YUYV8_1X16/V4L2_PIX_FMT_YUV422P/MIPI_CSI2_DT_YUV42 2_8B to list of available formats -1 - 1 [ 50.182333] avt_csi2 0-003c: avt_init_avail_formats[1843]: add MEDIA_BUS_FMT_YUYV8_2X8/V4L2_PIX_FMT_YUYV/MIPI_CSI2_DT_YUV422_8B to list of available formats -1 - 1 [ 50.197003] avt_csi2 0-003c: avt_init_avail_formats[1844]: add MEDIA_BUS_FMT_VYUY8_2X8/V4L2_PIX_FMT_VYUY/MIPI_CSI2_DT_YUV422_8B to list of available formats -1 - 1 [ 50.211670] avt_csi2 0-003c: avt_init_avail_formats[1849]: add MEDIA_BUS_FMT_RGB888_1X24/V4L2_PIX_FMT_RGB24/MIPI_CSI2_DT_RGB888 to list of available formats -1 - 1 [ 50.226343] avt_csi2 0-003c: avt_init_avail_formats[1850]: add MEDIA_BUS_FMT_RBG888_1X24/V4L2_PIX_FMT_RGB24/MIPI_CSI2_DT_RGB888 to list of available formats -1 - 1 [ 50.241008] avt_csi2 0-003c: avt_init_avail_formats[1851]: add MEDIA_BUS_FMT_BGR888_1X24/V4L2_PIX_FMT_RGB24/MIPI_CSI2_DT_RGB888 to list of available formats -1 - 1 [ 50.255682] avt_csi2 0-003c: avt_init_avail_formats[1852]: add MEDIA_BUS_FMT_RGB888_3X8/V4L2_PIX_FMT_RGB24/MIPI_CSI2_DT_RGB888 to list of available formats -1 - 1 [ 50.270271] avt_csi2 0-003c: avt_init_avail_formats[1856]: add MEDIA_BUS_FMT_SGRBG8_1X8/V4L2_PIX_FMT_SGRBG8/MIPI_CSI2_DT_RAW8 t o list of available formats 1 - 1 [ 50.284685] avt_csi2 0-003c: avt_init_avail_formats[1863]: add MEDIA_BUS_FMT_SGRBG10_1X10/V4L2_PIX_FMT_SGRBG10/MIPI_CSI2_DT_RAW 10 to list of available formats 1 - 1 [ 50.320636] avt_csi2 0-003c: avt_init_controls[3359]: Control Contrast (0x980901) not supported by camera [ 50.357183] avt_csi2 0-003c: avt_init_controls[3359]: Control Sharpness (0x98091b) not supported by camera [ 50.367712] avt_csi2 0-003c: avt_update_sw_ctrl_state[2840]: Software trigger control not found! [ 50.369213] avt_csi2 0-003c: avt_update_sw_ctrl_state[2840]: Software trigger control not found! [ 50.378025] avt_csi2 0-003c: avt_update_sw_ctrl_state[2840]: Software trigger control not found! [ 50.412857] mxc_mipi-csi 32e30000.mipi_csi: Registered sensor subdevice: avt_csi2 0-003c [ 50.429900] avt_csi2 0-003c: camera avt_csi2 0-003c registered [ 50.435940] avt_csi2 0-003c: -> avt_probe[5420]: sysfs group created! (0) [ 50.446676] avt_csi2 0-003c: avt_probe[5442]: probe success ! [ 50.378025] avt_csi2 0-003c: avt_update_sw_ctrl_state[2840]: Software trigger control not found! [ 50.412857] mxc_mipi-csi 32e30000.mipi_csi: Registered sensor subdevice: avt_csi2 0-003c [ 50.429900] avt_csi2 0-003c: camera avt_csi2 0-003c registered [ 50.435940] avt_csi2 0-003c: -> avt_probe[5420]: sysfs group created! (0) [ 50.446676] avt_csi2 0-003c: avt_probe[5442]: probe success ! root@b2qt-imx8mm-lpddr4-evk:/usr/share/BoardSetup-scripts# At this point I would assume the camera is set up and  ready to stream but I cannot get any frames or data in to user space. I use the attached TestStream.sh script: root@b2qt-imx8mm-lpddr4-evk:/usr/share/BoardSetup-scripts# ./TestStream.sh ./TestStream.sh: line 1: amera: command not found === CAMERA STREAMING CONTROL === 1. Check current camera status: [ 76.502724] avt_csi2 0-003c: avt_core_ops_s_power[2156]+: on 1, camera->power_count 0 Format Video Capture:[ 76.511315] mxc_mipi-csi 32e30000.mipi_csi: format not match Width/Height : 0/0 [ 76.519017] avt_csi2 0-003c: avt_core_ops_s_power[2156]+: on 0, camera->power_count 1 Pixel Format : '' Field : Any Bytes per Line : 0 Size Image : 0 Colorspace : Default Tra[ 76.537857] avt_csi2 0-003c: avt_core_ops_s_power[2156]+: on 1, camera->power_count 0 nsfer Function : Default (maps to[ 76.548706] avt_csi2 0-003c: avt_core_ops_s_power[2156]+: on 0, camera->power_count 1 Rec. 709) YCbCr/HSV Encoding: Default (maps to ITU-R 601) Quantization : Default (maps to Full Range) Flags : 2. List available co[ 76.570719] avt_csi2 0-003c: avt_core_ops_s_power[2156]+: on 1, camera->power_count 0 ntrols: 3. List available form[ 76.581151] mxc_mipi-csi 32e30000.mipi_csi: format not match ats: ioctl: VIDIOC_ENUM_FMT Ty[ 76.589396] avt_csi2 0-003c: avt_core_ops_s_power[2156]+: on 0, camera->power_count 1 pe: Video Capture 4. Set a basic format: [ 76.611180] avt_csi2 0-003c: avt_core_ops_s_power[2156]+: on 1, camera->power_count 0 [ 76.619262] mxc_mipi-csi 32e30000.mipi_csi: format not match The pixelformat 'UYVY' is invalid[ 76.625042] avt_csi2 0-003c: avt_core_ops_s_power[2156]+: on 0, camera->power_count 1 5. Check if there's a streaming control: [ 76.647122] avt_csi2 0-003c: avt_core_ops_s_power[2156]+: on 1, camera->power_count 0 [ 76.655283] avt_csi2 0-003c: avt_core_ops_s_power[2156]+: on 0, camera->power_count 1 6. Try to enable streaming (if control exists): [ 76.672441] avt_csi2 0-003c: avt_core_ops_s_power[2156]+: on 1, camera->power_count 0 [ 76.682040] avt_csi2 0-003c: avt_core_ops_s_power[2156]+: on 0, camera->power_count 1 No streaming V4L2 control found [ 76.699454] avt_csi2 0-003c: avt_core_ops_s_power[2156]+: on 1, camera->power_count 0 [ 76.708214] avt_csi2 0-003c: avt_core_ops_s_power[2156]+: on 0, camera->power_count 1 No stream_enable control found 7. Try acquisition start (AVT specific): [ 76.724226] avt_csi2 0-003c: avt_core_ops_s_power[2156]+: on 1, camera->power_count 0 [ 76.733618] avt_csi2 0-003c: avt_core_ops_s_power[2156]+: on 0, camera->power_count 1 No acquisition_start control found 8. Check exposure and gain (make sure they're reasonable): [ 76.749702] avt_csi2 0-003c: avt_core_ops_s_power[2156]+: on 1, camera->power_count 0 [ 76.759271] avt_csi2 0-003c: avt_core_ops_s_power[2156]+: on 0, camera->power_count 1 No exposure control [ 76.775975] avt_csi2 0-003c: avt_core_ops_s_power[2156]+: on 1, camera->power_count 0 [ 76.784748] avt_csi2 0-003c: avt_core_ops_s_power[2156]+: on 0, camera->power_count 1 No gain control 9. Set reasonable exposure/gain if controls exist: [ 76.801835] avt_csi2 0-003c: avt_core_ops_s_power[2156]+: on 1, camera->power_count 0 [ 76.810768] avt_csi2 0-003c: avt_core_ops_s_power[2156]+: on 0, camera->power_count 1 Cannot set exposure [ 76.827415] avt_csi2 0-003c: avt_core_ops_s_power[2156]+: on 1, camera->power_count 0 [ 76.837494] avt_csi2 0-003c: avt_core_ops_s_power[2156]+: on 0, camera->power_count 1 Cannot set gain 10. Try to capture a frame after configuration: ./TestStream.sh: line 47: timeout: command not found ❌ Still no data after streaming configuration 11. Check kernel messages for streaming status: [ 76.784748] avt_csi2 0-003c: avt_core_ops_s_power[2156]+: on 0, camera->power_count 1 [ 76.801835] avt_csi2 0-003c: avt_core_ops_s_power[2156]+: on 1, camera->power_count 0 [ 76.810768] avt_csi2 0-003c: avt_core_ops_s_power[2156]+: on 0, camera->power_count 1 [ 76.827415] avt_csi2 0-003c: avt_core_ops_s_power[2156]+: on 1, camera->power_count 0 [ 76.837494] avt_csi2 0-003c: avt_core_ops_s_power[2156]+: on 0, camera->power_count 1 root@b2qt-imx8mm-lpddr4-evk:/usr/share/BoardSetup-scripts# Now because the format mismatch, I intend to reset change it through media-ctl on the /dev/media0 node. But that doesn't show up. Bellow is the core parts of the DTS that are relevant.  // Define your camera on I2C bus &i2c1 {     /*      * Define the PCAL6416A GPIO expander at I2C address 0x21.      * We give it a label 'gpio_expander' so we can reference it.      */     gpio_expander: pcal6416a@21 {         compatible = "nxp,pcal6416";         reg = <0x21>;         gpio-controller;         #gpio-cells = <2>;     };     alvium: alvium@3c {         compatible = "alliedvision,avt_csi2";         reg = <0x3c>;         status = "okay";         pinctrl-names = "default";         pinctrl-0 = <&pinctrl_alvium_clk>, <&pinctrl_alvium_gpio>; // Attollo Specifc Hardware setup for day cam         power-supply = <&dayCam_step2>;         reset-gpios = <&gpio1 15 GPIO_ACTIVE_LOW>;         clocks = <&clk IMX8MM_CLK_CLKO1>;         clock-names = "csi_mclk";         assigned-clocks = <&clk IMX8MM_CLK_CLKO1>;         assigned-clock-parents = <&clk IMX8MM_CLK_24M>;         assigned-clock-rates = <24000000>;         port {             reg = <0>;             alvium_mipi_ep: endpoint {                 remote-endpoint = <&mipi1_sensor_ep>;                 data-lanes = <2>;                 link-frequencies = /bits/ 64 <445500000 891000000>;                 mipi-csi;             };         };     }; }; &mipi_csi_1 {     status = "okay";     /delete-node/ port;     port {         mipi1_sensor_ep: endpoint@1 {             reg = <1>;             remote-endpoint = <&alvium_mipi_ep>;             data-lanes = <2>;             csis-hs-settle = <13>;             csis-clk-settle = <2>;             csis-wclk;         };         csi1_mipi_ep: endpoint@2 {             reg = <2>;             remote-endpoint = <&csi1_bridge_in>;         };     }; }; &csi1_bridge {     status = "okay";     fsl,mipi-mode;     /delete-node/ port;     port {         csi1_bridge_in: endpoint {             remote-endpoint = <&csi1_mipi_ep>;         };     }; }; / {     dayCam_step1: camPowerEnable {         compatible = "regulator-fixed";         regulator-name = "dayCam-Power-Enable";         gpio = <&gpio_expander 5 GPIO_ACTIVE_HIGH>;          enable-active-high;         regulator-always-on;     };     dayCam_step2: dayCamI2cEnable {         compatible = "regulator-fixed";         regulator-name = "dayCam-i2c-Power-Enable";         vin-supply = <&dayCam_step1>;         gpio = <&gpio4  26 GPIO_ACTIVE_HIGH>;          enable-active-high;         regulator-always-on; //        startup-delay-us = <2600000>; // Wait 100ms     }; }; Please help or ideas would be greatly appropriated.
記事全体を表示
How to connect two PCIe devices on imx8mplus? Hi, Iam new to PICe and Iam working on imx8mplus. I need to connect Muarata wifi module and Hailo8 module on PCIe. How do I interface both with the single available PCIe. Please help ! i.MX 8 Family | i.MX 8QuadMax (8QM) | 8QuadPlus i.MX 8M | i.MX 8M Mini | i.MX 8M Nano Re: How to connect two PCIe devices on imx8mplus? Hi @vivek338! Thank you for contacting NXP Support! Unfortunately, the configuration you're aiming for is not supported. However, you can consider using an SDIO interface to connect a Wi-Fi module as an alternative to PCIe. Best regards, Chavira
記事全体を表示
K32W0xx 電圧リップルの問題 現在、K32W041 には 2 つの問題があります。 Vbatの電圧リップル Vbatの電圧リップル AN12893「DC-DC 機能の使用」に従って、K21W041 の電源デザインを進めました。したがって、適切なデカップリング コンデンサと PCB 設計ルールが必要です。それについては譲歩しません。 Vbat で最大 40mVpp のリップルを測定します。これはチップの DCDC によって発生します。 この波紋を軽減するには、追加の情報が必要です。 どのようなタイプの DCDC レギュレータが使用されていますか? スイッチング電流の値はいくらですか? スイッチング電流はどのように制御されますか? どのようなタイプのフィードバック コントローラが使用されていますか? DCDCのブロック図/アーキテクチャを提供する リップルとスイッチング電流を減らす必要がある HW-Open-Source Re: K32W0xx voltage ripple problems こんにちは、 この問題が EVK でも発生するかどうか確認していただけますか? 調査結果をお知らせください。 よろしくお願いいたします。 アナ・ソフィア Re: K32W0xx voltage ripple problems こんにちは、ソフィアさん。返信ありがとうございます。 あなたがくれたヒントは、私がすでに研究したものです。それが私がこの投稿を始めた理由です。 残念ですが、その情報ではこの投稿の私の質問にはまったく答えられません。 アプリケーションを改善するために DCDC 実装を最適化するには専門家の情報が必要です。 最初の質問への回答がその助けになるでしょう。 🙂 Re: K32W0xx voltage ripple problems こんにちは、 あなたの調子が良いといいのですが。 K32W061/41 の内部 DCDC モジュールは、入力電源電圧を固定出力電圧に変換する降圧コンバータです。 K32W061/41製品ページ> 設計リソース > K32W061製造パッケージにあるK32Wハードウェア設計ユーザーガイドを確認することをお勧めします。 DCDC 負荷電流構成はリファレンス・デザインのインダクタンス値に依存し、アプリケーションの負荷電流に合わせて最適化できます。K32W041A/AM ベースの回路図の DC-DC インダクタは 2.2 μH です。K32W ハードウェア デザイン ユーザーガイドのセクション 4.1 回路図 デザインを参照してください。 関連情報が記載されているセクション 4.9「DC-DC コンポーネント」およびセクション 4.11.2「VDD (無線)、FB、VDD_PMU、VDDE、および VBAT デカップリング」も確認してください。 ユーザー マニュアルのセクション 4.2.1 に、DCDC システム図があります。データシートのセクション 9.2 回路図に、アプリケーション図 - バッテリー駆動ソリューションが記載されています。 これらの推奨事項に従ってボードの回路図を確認するのにご協力いただけますか?K32W061、QN9090、JN5189を使って初めてPCBを正しく構築する最良の方法 よろしくお願いいたします。 ソフィア。
記事全体を表示
DC 打标部件 BUK7K6R2-40EX 恩智浦团队,请告诉我在标记部件上是否可以使用日期代码。 BUK7K6R2-40EX
記事全体を表示
提问关于窗体图标的问题 lv_drivers\display\monitor.c创建窗体的函数window_create中有段代码 iconSurface = SDL_CreateRGBSurfaceFrom(simulator_icon, 32, 32, 16, 32 * 2, 0xf000, 0x0f00, 0x00f0, 0x000f); SDL_SetWindowIcon(m->window, iconSurface); SDL_FreeSurface(iconSurface); 它们的作用应该是显示SDL窗体的图标,但是整个软件找下来也没找到设置这个图标的地方,请问是否固化为 这个图标了?能否修改?怎么修改? PS:我的工作是使用GuiGuider设计在图形化Linux下的可执行程序。 Re: 提问关于窗体图标的问题 Hello @cabbage. Thank you for your post. The code is indeed used to set the SDL window icon, which is the default logo for GuiGuider, and the related image data has been written directly in the source code. The compiled software cannot be modified. The software source code is not provided, so it does not support users to make changes. Just the application code generated by the software can be viewed in the code editor. I hope to help you. BRs. Celeste
記事全体を表示
LS1017 - XSPI_B読み取りエラー NXPサポートチームの皆様、こんにちは。 LS1017 デバイスの XSPI_B インターフェースで読み取りの問題があります。 ハードウェア情報/セットアップ: CPU XSPI_BはマイクロセミFPGAにコネクテッド CPU プラットフォーム周波数 = 400 MHz、CPU 速度 = 1500 MHz --> XSPI Errata A-050568 は適用されません 単一のポイントツーポイント接続(トレース長約70mm、±2mmに一致) DDRモード 50 MHz (100Mbit) LS1017ではIPモードコマンドのみが使用されます DQSはFPGAによって駆動されます - 読み取りストローブ(MCR0[RXCLKSRC]==3) DQS サンプリング ポイントの DLL は次のように設定されます: SLVDLYTARGET=0xF; DLLEN=0x1; OVRDEN=0x0; DLLxCR の他のフィールドはリセット値 (すべてゼロ) として保持されます CS-Signalのみが4.75kのプルアップ抵抗を持っています PCBレベルでの信号整合性のシミュレーションは良好に見える エラー/テスト関数: 最初に、LS1017 (VxWorks オペレーティング システム) 上のテスト機能がランダム パターンを生成し、それを FPGA 内のテスト メモリに 1 回書き込みます。 書き込みトランザクションが完了すると、関数は FPGA テスト メモリからパターンを定期的に読み取り、それを元の値 (読み取りループあたり 512 バイト) と比較します。 添付されているのは、エラーを示すテスト関数のコンソール出力の例です。 テストメモリの内容を5000回読み取って検証してみました。このCASE、最初の 1207 回の実行ではエラーは発生しませんでした。実行 1208 にエラーが含まれていました。 エラーパターンには顕著な特徴があります。 エラーは64バイト整列(=IPコマンド長)で発生します --> (添付の例:オフセット384/64=6) エラーはちょうど64バイト長です(=IPコマンド長) -->(添付の例:オフセット448-384=63 64 個のエラー バイトのうち、2 バイトごとにのみエラーがあります --> DQS の立ち下がりエッジですか? 2番目のバイトが64バイト全体でシフトされているようです オフセット384-391が予想されます: 0x d5 79 23 80 52 56 5e 4d オフセット384-391実際: 0x d5 8a 23 79 52 80 5e 56 他のテスト関数の実行では、エラーは同じ特徴を持ちますが、実行とオフセットが異なります。 私の質問: 過去に同様の読み取り問題を経験したことがありますか リファレンスマニュアルの図 187。DQS は A_SCLK/B_SCLK と位相を合わせて描画されますが、実際には DQS の立ち上がり/立ち下がりエッジはラウンドトリップ時間 + FPGA リードタイムによってシフトされます。(CASEでは8〜10 nsの大きさ)。内部の DQS サンプリング メカニズム / DLL 遅延ラインがどのように機能しているかについて、詳しい情報を提供していただけますか?(例: DLL のタイムベース) データシート表49。パラメータ T/2 を使用したCS 出力ホールド時間/CS 出力遅延の式が含まれています。Tは同じ表で前述したFSCKの期間ですか?FSCK = シリアル ルート クロック?--> このCASE、T=10ns でしょうか? データシート図32.: FlexSPI DDRモード2 = (MCR0[RXCLKSRC]=0x3)? 表48のTFSIDVW値はMCR0[RXCLKSRC]=0x3のDDRモードにも適用されます。 よろしくお願いいたします。 SL QorIQ LS1デバイス Re: LS1017 - XSPI_B read errors こんにちは@Stefan_L このメールがあなたのお元気を願っています。 これは同期の問題かもしれません。 いくつか質問させてください。 セクションの注記を考慮しましたか? 18.5.14.4 サンプリング用のDLL構成: シリアルルートクロックが100MHz未満の場合、DLLは遅延のためシリアルルートクロックの半サイクルにロックすることができません。 遅延チェーンではセル数が制限されます。代わりに、DLL を次のように構成する必要があります。 — オーバーデン=0x1 — OVRDVAL=N; DLL 内の各遅延セルは約 75 ps ~ 225 ps です。DLL遅延チェーンの遅延は(N * Delay_cell_delay)、N は最大値に基づいて設定する必要があります。現在のプロジェクトがサポートしているDDR周波数、N = 17、これは推奨値であることに注意してください。実際のアプリケーションで障害が発生した場合は調整が必要になることがあります。 — DLLxCRの他のフィールドはリセット値(すべてゼロ)のままにしておく必要があります LS1017 からのルート クロック信号の波形を提供していただけますか? QorIQ LS1028A リファレンス マニュアル、Rev. 0、12/2019 のセクション「18.6.6 FPGA デバイスでのアプリケーション」の情報を考慮しましたか? 素晴らしい一日をお過ごしください。 BR、 ヘクトル5世
記事全体を表示
nxp s32k312のHSEファームウェアに問題が発生 当社は NXP S32K312 MCU を使用しており、現在 HSE ファームウェアに問題が発生しています。 1.HSE ステータス レジスタ値が破損しているようです (0x4038C107)。 2.このステータス破損のため、HSE API にアクセスできません。 3.HSE ファームウェアの消去または再フラッシュの試みが失敗しました。 4.MU0_TR1 レジスタまたはメモリに書き込んで消去/リセット コマンドをトリガーすることはできません。 5. デバッガーがコネクテッドされているときに、単一の外部リセット中に複数のソフトウェア リセットが観察されました。 支援の要請: 1.S32K312 の HSE ファームウェアを消去して再フラッシュするための正しい推奨手順を教えてください。 2. 現在の破損状態のために HSE ファームウェアの再フラッシュが不可能な場合、HSE を回復したり、ステータス レジスタの破損を解決したりするには、どのような手順を実行すればよいですか。 3. デバッガーを接続した状態でハードリセットを実行すると、複数のリセットが発生することが知られていますが、これに関する既知の問題や回避策はありますか? 4.破損した HSE ステータス レジスタの問題を解決し、HSE API へのアクセスを回復するにはどうすればよいですか? 私たちが従ったHSEファームウェアのフラッシュのプロセス。 ステップ 1: 提供された PINK ファイルを、IVT なしで、デモ アプリケーションおよびセキュア ブート アプリケーションの ELF ファイルとともにフラッシュしました。 ステップ2:リセット完了 ステップ3: HSE位置0x005d4000とDCMレジスタに??マークが観測される ステップ4: アドレス0x00400000のブートローダーとアドレス0x00442000のアプリケーションを再フラッシュしました。 ステップ5:デバッガをコネクテッドした状態でハードリセットを実行すると、外部リセットコマンドを1つだけ発行したにもかかわらず、ソフトウェア側から複数のリセットがトリガーされることが観察されました。 スクリーンショットは参考としてご覧ください @lukaszadrapaこれらの問題を解決するのを手伝ってください Re: Facing issues with HSE Firmware on nxp s32k312 まあ、こんなことは起こるはずはない。いくつか質問があります。 SBAFのバージョンは何ですか?0x4039_C020 で CAN 読み取ることができます。説明は、HSE FW リファレンス・マニュアル rev. の表 141 に記載されています。2.5. どのバージョンの HSE FW をインストールしましたか?それは AB_SWAP バージョンですか、それとも FULL_MEM バージョンですか? どのようなインストール方法を使用しましたか?フラッシュにアプリケーションがロードされていますか?もしSOなら、クロックはどのように設定されていますか? また、UTEST の HSE 機能フラグがプログラムされると、HSE ファームウェアのフラッシュ内の対応する領域がメモリ マップから永久に削除されることに注意してください。HSE ファームウェアが消去されると、この領域に再度アクセスできなくなります。AB_SWAP バージョンがインストールされているCASEも同様です。このCASE、HSE ファームウェア用に 2 つの領域が予約されており、1 つはアクティブ ブロックに、もう 1 つはパッシブ ブロックにあります。AB_SWAP がインストールされると、HSE OTA フラグが UTEST にプログラムされる。SO、両方の領域が HSE ファームウェア用に永久に予約されます。 Facing issues with HSE Firmware on nxp s32k312 こんにちは、 新しいハードウェア プラットフォームに HSE ファームウェアを再インストールしようとしました。最初、HSE ステータス レジスタには、ビット「0」(HSE ファームウェアの存在を示す) が正しく設定されていることが示されます。ただし、機能リセットを実行すると、このビットはクリアされ、割り当てられたメモリはそのままのように見えても、HSE ファームウェアにアクセスできなくなります。 機能リセット後の HSE ステータス レジスタの予想される動作を明確にしていただけますか?さらに、リセット後も HSE ファームウェアにアクセスできるようにするために推奨されるリセット処理手順は何ですか? Re: Facing issues with HSE Firmware on nxp s32k312 HSE ファームウェア リファレンス マニュアルは、このページの [ドキュメント] -> [セキュア ファイル] セクションからダウンロードできます。 https://www.nxp.com/products/S32K3#ドキュメント 表示されない場合は、アクセス権を要求する必要がある可能性があります。 https://www.nxp.com/support/support/secure-access-rights:SEC-ACCESS MU FSR レジスタ (0x4038C107) の内容に基づくと、HSE ファームウェアは存在しません。つまり、HSE サービスを実行できないということです。最初の回答で書いたように、0x4039_C028 の HSE GPR レジスタを確認してください。ビット 0 がクリアされている場合、HSE ファームウェアはインストールされていません。 ファームウェアをインストールするには、デフォルトの場所、IVT 経由、または MU 経由の 3 つの方法があります。これらはすべて、HSE ファームウェア リファレンス マニュアルに記載されています。 よろしくお願いいたします。 ルーカス Re: Facing issues with HSE Firmware on nxp s32k312 こんにちは、 返信ありがとうございます。 現在、HSEファームウェアを消去できません。以前提案された方法(RAMに0x57を書き込み、TR[1]メカニズムを使用する方法)を試しましたが、メモリの消去は成功しませんでした。さらに、HSEファームウェアAPIが応答せず、期待どおりに動作しません。図に示すように、HSEファームウェアの再インストールで問題が発生しています。 HSE ファームウェアを強制的に消去またはリセットするための代替方法または更新された方法を提供していただけますか? HSEファームウェアリファレンスマニュアルのダウンロード方法 Re: Facing issues with HSE Firmware on nxp s32k312 こんにちは、 返信ありがとうございます。 現在、HSEファームウェアを消去できません。以前提案された方法(0x57をRAMに書き込み、TR[1]メカニズムを使用する)を試しましたが、メモリを消去することはできませんでした。さらに、HSE ファームウェア API が期待どおりに応答または機能しません。HSE ファームウェアの再インストール問題が発生しています。 HSE ファームウェアを強制的に消去またはリセットするための代替方法または更新された方法を提供していただけますか? Re: Facing issues with HSE Firmware on nxp s32k312 こんにちは@Anitha7 これが重要なポイントのようです: 「ステップ 1: 提供された PINK ファイルを、IVT なしで、デモ アプリケーションおよびセキュア ブート アプリケーションの ELF ファイルとともにフラッシュしました。」 「デフォルトのアプリケーション NVM の場所」経由のインストール方法 (IVT でピンク色のファイルへのポインターが定義されていない) は、フラッシュに有効な IVT がない場合にのみ機能します。ピンク色のファイルを 0x400000 にロードし、有効な IVT を持つ他のアプリケーションをフラッシュにロードした場合、HSE ファームウェアはインストールされません。 スクリーンショットによると、0x5D_4000 の領域は HSE ファームウェア用に予約されているため、0x1B00_0000 の HSE 機能フラグはすでにプログラムされています。最も簡単な解決策 - フラッシュ全体 (データ フラッシュを含む) を消去し、0x40_0000 のピンク色のファイルのみをロードします。デバイスをリセットすると、HSE ファームウェアがインストールされます。 次に、0x4039_C028 の HSE GRP レジスタを CAN します。ビット 0 が設定されている場合、HSE ファームウェアがインストールされています。 よろしくお願いいたします。 ルーカス
記事全体を表示
How can TJA1465 determine that the current wake-up cause is a specific frame wake-up I would like to ask the experts, TJA1465 is only configured with WUF. When I perform a specific frame wake-up, how can I determine the current wake-up cause? I can be sure that the CW bit will be set to 1, but there are other messages being sent on the bus, and CW will also be set to 1, which will cause interference. Are there any other ways or registers to determine the wake-up cause Re: How can TJA1465 determine that the current wake-up cause is a specific frame wake-up The two wake-up distinctions are set in advance via CPNC / PNCOK, and he has a wake pin for local wake-ups. The TJA1465 supports remote wake-up via a CAN wake-up pattern (WUP) or selective wake-up via a CAN wake-up frame (WUF). --- So it's wake up with wake pin, configured with CPNC / PNCOK that is selected to wake up, do not configure CPNC / PNCOK to wake up is WUP wake up, explain clearly? Re: How can TJA1465 determine that the current wake-up cause is a specific frame wake-up Thank you very much for your answer. Maybe I didn't describe it clearly. I have already implemented Specific Frame Wake-up (WUF). When the ECU is awakened, I would like to know if there is a way to determine through register setting or other methods that the reason for the wake-up is due to this specific frame, because there are other wake-up sources in the entire network that need to be distinguished Re: How can TJA1465 determine that the current wake-up cause is a specific frame wake-up These two wakeups are still fundamentally different see below, as well as the settings before the wakeup: CAN wake-up pattern (WUP) The CAN wake-up pattern (WUP) is used for two purposes. To activate CAN biasing in CAN Offline mode (transition from CAN offline to CAN OfflineBias) To trigger a CAN wake-up event The following conditions must be met to trigger a wake-up event via a CAN WUP. The CAN transceiver is in CAN Offline or CAN OfflineBias mode CAN wake-up enabled (CWE = 1) CAN wake-up frame detection (WUF) deactivated (CPNC = 0 or PNCOK = 0)   CAN wake-up frame (WUF) CAN partial networking through selective wake-up detection allows a device in a CAN network to be selectively woken up in response to a wake-up frame (WUF) on the CAN bus. Selective wake-up detection uses one of two filtering methods. Identifier-only filtering (PNDM = 0) Identifier + data length code + data mask filtering (PNDM = 1) The following conditions must be met to enable CAN WUF functionality. CAN biasing needs to be activated (CAN OfflineBias, CAN ListenOnly or CAN Active mode). CAN wake-up enabled (CWE = 1) CAN partial networking configuration completed (PNCOK = 1) CAN partial networking enabled (CPNC = 1) No CAN partial networking error detected (CPNERRS = 0)
記事全体を表示
s32k3 uart hello dear NXP team... I have configured the UART0 interrupt receive for s32k311...… I am trying to receive data in callback function but i am not Receiving any data...i dont know whats the issue....please resolve the issue....i have uploaded my project here below. Re: s32k3 uart Hi @leoCR7, The AsyncReceive function enables reception and immediately leaves function. The application has to get the receive status to know when the receive is complete. You can either repeatedly call GetReceiveStatus or use interrupt callback function and use callback events in it. After receiving is completed (defined number of bytes received), you need to call AsyncReceive again to start new reception. However, inside the callback, instead of calling AsyncReceive again, use the Lpuart_Uart_Ip_SetRxBuffer function for continuous reception. You can use AsyncReceive in the end transfer event. You can refer to this example routine: [RTD600 IP] S32K312-EVB Lpuart interrupt echo - NXP Community. It is based on the S32K312, but you can simply copy over the configuration. Best regards, Julián 
記事全体を表示
S32K146 - MBDT - 运行时数据存储& 在电源循环期间保留。 亲爱的恩智浦支持团队 希望这条信息能找到您,祝您一切安好。 我目前正在做一个涉及 S32K146 MCU 的项目,我正在使用 Simulink 来处理 EEPROM 操作。我在数据保留方面遇到了一些问题,一直无法解决,非常希望得到您的指导。 在我的设置中,我试图使用"Flash_EEEWrite" 块将数值存储到 EEPROM 中。我正在轮换重复序列块中的值,并在初始化"Flash_Config" 后写入这些值。为确保正确初始化,我还在执行任何写入操作前添加了 100 毫秒的延迟。 不过,在电源循环后,我写入的值不会被保留。以下是我的观察结果: 当 FLASH_EEEWrite 块的数据类型设置为 uint32_t 时,读回的值始终为 7fff(十六进制)。 当设置为 uint8_t 时,返回值为 82(十六进制)。 无论输入什么,这些值都是恒定的,并不反映我编写的值。 我不确定问题是出在 EEPROM 的配置上,还是出在我使用 Simulink 模块的方式上,又或者是对 FLASH_EEEWrite 模块在这种情况下如何工作的误解上。 我附上了我正在使用的 Simulink 模型,以帮助更清楚地说明设置。 您能否深入了解可能出现的问题,或者我应该遵循的任何建议步骤,以确保在电源循环期间可靠地进行EEPROM写入和保留? 非常感谢你们的时间和支持。如果您能提供任何帮助或建议,我将不胜感激。
記事全体を表示
LS1017 - XSPI_B read errors Hello NXP Support Team, I have a read issue with the XSPI_B interface of the LS1017 device. Hardware Info/Setup: CPU XSPI_B is connected to a microsemi FPGA CPU platform frequency = 400 MHz, CPU speed = 1500 MHz --> XSPI Errata A-050568 is not applicable Single point-to-point connection (tracelength around 70mm, matched to +-2mm) DDR Mode 50 MHz (100Mbit) Only IP-Mode Commands are used for LS1017 DQS is driven by FPGA - provided read strobe(MCR0[RXCLKSRC]==3) DLL for DQS sampling point set to: SLVDLYTARGET=0xF ; DLLEN=0x1 ; OVRDEN=0x0 ; Other fields in DLLxCR kept as reset value (all zero) Only CS-Signal has a 4.75k pullup resistor The simulated signal integrity on PCB level looks fine Error/Test-Funcion: Initially a testfuction on the LS1017 (VxWorks operating system) generates a random pattern and writes it once to the a test memory within the FPGA. After the write transaction has finished the funcion reads the pattern periodically from the FPGA test memory an compares it to the original values (512 Bytes per read loop). Attached you can find an example console output of my test funcion showing the error. I tried to read and verify the test memory content 5000 times. In this case the first 1207 runs showed no errors. Run 1208 contained errors. The error pattern has conspicuous features: Errors occure 64 Byte aligned (=IP-Command length) --> (attached example: offset 384/64=6) Error is exactly 64 Byte long (=IP-Command length) --> (attached example: offset 448-384=63 Within the 64 error bytes only every second byte has errors --> falling edge of DQS? It appers that the second bytes are shifted for the whole 64 bytes Offset 384-391 expected: 0x d5 79 23 80 52 56 5e 4d Offset 384-391 actual: 0x d5 8a 23 79 52 80 5e 56 For other testfuncion runs the errors have the same features, but at different runs + offsets. My Questions: Have you seen similar read issues in the past  In the Reference Manual Figure 187. DQS is drawn in phase with A_SCLK/B_SCLK, but in reality DQS rising/falling edge is shifted by round-trip-time + FPGA lead time. (in our case in the magnitude of 8 to 10 ns). Can you provide more information on how internal DQS sampling mechanism / DLL delay line is working? (e. g. timebase for DLL) Datasheet Table 49. contains a formula for CS output hold time/ CS output delay with the parameter T/2. T is the period of FSCK previous mentioned in the same table? FSCK = serial root clock? --> in our case T=10ns? Datasheet Figure 32.: FlexSPI DDR mode 2 = (MCR0[RXCLKSRC]=0x3)? TFSIDVW Value from Table 48 ist also applicable to DDR mode with MCR0[RXCLKSRC]=0x3 Best regards SL QorIQ LS1 Devices Re: LS1017 - XSPI_B read errors Hello @Stefan_L  Hope this email finds you well, This may be a synchronization issue, I would like to ask you a few questions, Did you consider the note from the section?: 18.5.14.4 DLL configuration for sampling: If serial root clock is lower than 100 MHz, DLL is unable to lock on half cycle of serial root clock because the delay cell number is limited in delay chain. Then DLL should be configured as following instead: — OVRDEN=0x1 — OVRDVAL=N; Each delay cell in DLL is about 75 ps~225 ps. The delay of DLL delay chain is (N * Delay_cell_delay), N should be set based on max. DDR frequency that current project supported, N = 17,please notice this is a recommended value. May need to adjust in real application if facing failure. — Other fields in DLLxCR should be kept as reset value (all zero) Could you please provide us with the root clock signals waveforms from the LS1017? Did you consider the information from the section "18.6.6 Application on FPGA device " from the QorIQ LS1028A Reference Manual, Rev. 0, 12/2019?  Have a great day. BR, Hector V
記事全体を表示
K32W0xx voltage ripple problems We now have problems with two issues with K32W041: Voltage ripple at Vbat Voltage ripple at Vbat We have followed up the power design for the K21W041 according AN12893, Using the DC-DC Feature. So the correct decoupling capacitors, the PCB design rules.  No concessions on that. We measure upto 40mVpp ripple on Vbat.  This is caused by the DCDC of the chip. We need extra information to reduce this ripple. What type of DCDC regulator is used? What is the value of the switching current? How is the switching current controlled? What type of feedback controller is used? Provide an block diagram / architecture of the DCDC We need to reduce the ripple and switching current HW-Open-Source Re: K32W0xx voltage ripple problems Hello, Could you please help us check if this issue is also present on the EVK? Let me know your findings. Best Regards, Ana Sofia, Re: K32W0xx voltage ripple problems Hi Sofia,  thanks for your response. The hints you give, were already studied by me.  Thats the reason, I started this post. Sorry to say,  but that information does not answere any of my questions in this post. I need expert information to optimse the DCDC implementation to improve our application. Answeres to the first questions will help for that.. 🙂 Re: K32W0xx voltage ripple problems Hello, Hope you are doing well. The internal DCDC module in K32W061/41 is a buck converter which converts an input supply voltage to a fixed output voltage. I would recommend checking the K32W Hardware Design User Guide, which can be found under the K32W061/41 Product Page > Design Resources > K32W061 Manufacturing package The DCDC load current configuration depends on the inductance value in reference design and can be optimized to suit the load current of the application, the DC-DC inductor for K32W041A/AM-based schematics is 2.2 μH, see K32W Hardware Design User Guide section 4.1 Schematics design. You could also check sections 4.9 "DC-DC components" and 4.11.2 "VDD (radio), FB, VDD_PMU, VDDE, and VBAT decoupling", which have relevant information. On the User Manual section 4.2.1 you will find the DCDC system diagram. On the Data Sheet section 9.2 Schematic diagram you will find the Application diagram – battery powered solution. Could you help us review the schematics of your board following these recommendations? The best way to build a PCB the first time right with K32W061, QN9090 or JN5189 Best Regards, Sofia.
記事全体を表示
S32K146 - MBDT - Runtime data store & retention during power cycle. Dear NXP Support Team, I hope this message finds you well. I’m currently working on a project involving the S32K146 MCU, and I’m using Simulink to handle EEPROM operations. I’ve encountered some issues with data retention that I haven’t been able to resolve, and I’d really appreciate your guidance. In my setup, I’m trying to store values to EEPROM using the "Flash_EEEWrite" block. I’m rotating values from a Repeating Sequence block and writing them after initializing the "Flash_Config". To ensure proper initialization, I’ve also added a 100ms delay before performing any write operations. However, after a power cycle, the values I’ve written are not retained. Here’s what I’ve observed: When the data type of the FLASH_EEEWrite block is set to  uint32_t, the value read back is consistently 7fff(Hex) When set to uint8_t, the value returned is 82(hex). These values are constant regardless of the input, and do not reflect the values I’m writing. I’m not sure if the issue lies in the configuration of EEPROM, the way I’m using the Simulink blocks, or perhaps a misunderstanding of how the FLASH_EEEWrite block works in this context. I’ve attached the Simulink model I’m working with, in case it helps illustrate the setup more clearly. Would you be able to provide any insight into what might be going wrong, or any recommended steps I should follow to ensure reliable EEPROM writes and retention across power cycles? Thank you very much in advance for your time and support. I really appreciate any help or suggestions you can provide.
記事全体を表示
ボディ図に関する問題点の指摘 lv_drivers\display\monitor.c 作成本体の関数window_create 中の有段代コード iconSurface = SDL_CreateRGBSurfaceFrom(simulator_icon, 32, 32, 16, 32 * 2, 0xf000, 0x0f00, 0x00f0, 0x000f); SDL_SetWindowIcon(m->window, iconSurface); SDL_FreeSurface(アイコンサーフェス); これらの機能は SDL ボディのピクチャを表示することですが、パッケージ全体ではこのピクチャが配置される場所にも到達せず、許可が固定されているかどうかもわかりません。 これは修正できますか? 追伸:私たちの仕事は、GuiGuider を使用して、Linux 上で実行可能なプログラムを構築することです。 Re: 提问关于窗体图标的问题 こんにちは、 @water spinach 、 ご投稿ありがとうございます。このコードは、GuiGuiderのデフォルトロゴであるSDLウィンドウアイコンの設定に使用されています。関連する画像データはソースコードに直接書き込まれています。コンパイルされたソフトウェアは変更できません。 ソフトウェアのソースコードは提供されていないため、ユーザーは変更できません。コードエディターで表示できるのは、ソフトウェアによって生成されたアプリケーションコードのみです。 これが役に立つことを願います。 BR、 セレステ
記事全体を表示
Facing issues with HSE Firmware on nxp s32k312 We are using the NXP S32K312 MCU and currently 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 for Assistance: 1.Could you please provide the correct and recommended 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? Process we followed HSE firmware flashing. step 1:We 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  Please find Screenshots for reference @lukaszadrapa Please help me to resolve these issues Re: Facing issues with HSE Firmware on nxp s32k312 Well, this is not supposed to happen. I have a couple of questions: What is version of your SBAF? You can read it at 0x4039_C020. Description can be found in Table 141 in HSE FW reference manual rev. 2.5. Which version of HSE FW did you installed? And was that AB_SWAP or FULL_MEM version? Which installation method did you use? Is there any application loaded in the flash? If so, how are the clocks configured? And notice that once HSE feature flag in UTEST is programmed, corresponding area in flash for HSE firmware is removed from memory map permanently. If HSE firmware is erased, this area won't be accessible again. The same is valid when AB_SWAP version is installed - in this case, there are two areas reserved for HSE firmware, one in active block, one in passive block. When AB_SWAP is installed, HSE OTA flag is programmed in UTEST, so both areas will be reserved for HSE firmware forever. Facing issues with HSE Firmware on nxp s32k312 Hi, I attempted to reinstall the HSE firmware on a new hardware platform. Initially, the HSE status register shows the bit '0' (indicating the presence of HSE firmware) correctly set. However, after performing a functional reset, this bit is cleared, and I am no longer able to access the HSE firmware — even though the memory allocated for it appears to be intact. Could you please clarify the expected behavior of the HSE status register after a functional reset? Additionally, what are the recommended reset handling steps to ensure the HSE firmware remains accessible post-reset? Re: Facing issues with HSE Firmware on nxp s32k312 The HSE firmware reference manual can be downloaded from this page from Documentation -> Secure files section: https://www.nxp.com/products/S32K3#documentation If it is not visible for your, it may be necessary to request the access rights: https://www.nxp.com/support/support/secure-access-rights:SEC-ACCESS Based on content of MU FSR register (0x4038C107), the HSE firmware is not present. That means you cannot run any HSE services. As I wrote in my first response, check HSE GPR register at 0x4039_C028. If bit 0 is cleared, there's no HSE firmware installed.  There are three methods how to install the firmware - by default location, via IVT or via MU. All of them are described in the HSE firmware reference manual.  Regards, Lukas Re: Facing issues with HSE Firmware on nxp s32k312 Hi, Thanks for the reply. I am currently unable to erase the HSE firmware. I attempted the method suggested previously—writing 0x57 into RAM and using the TR[1] mechanism—but it did not succeed in erasing the memory. Additionally, the HSE firmware APIs are not responding or functioning as expected. I am facing HSE firmware reinstallation issue as shown in figure. Could you please provide an alternative or updated method to forcefully erase or reset the HSE firmware? How to download HSE Firmware Reference Manual Re: Facing issues with HSE Firmware on nxp s32k312 Hi, Thanks for the reply. I am currently unable to erase the HSE firmware. I attempted the method suggested previously—writing 0x57 into RAM and using the TR[1] mechanism—but it did not succeed in erasing the memory. Additionally, the HSE firmware APIs are not responding or functioning as expected. I am facing HSE firmware reinstallation issue. Could you please provide an alternative or updated method to forcefully erase or reset the HSE firmware? Re: Facing issues with HSE Firmware on nxp s32k312 Hi @Anitha7  This seems to be the key point: "step 1:We flashed the provided PINK file without IVT along with the demo application and the secure boot application ELF files." Installation method via "default application NVM location" (no pointer to the pink file is defined in IVT) works only when there's no valid IVT in the flash. If you loaded the pink file to 0x400000 and some other applications with valid IVT to the flash, HSE firmware will not be installed.  According to your screenshots, HSE feature flag at 0x1B00_0000 has been already programmed because area at 0x5D_4000 is reserved for HSE firmware. Easiest solution - erase whole flash (including data flash) and load only the pink file at 0x40_0000. Reset the device and HSE firmware will be installed.  Then you can check HSE GRP register at 0x4039_C028. If bit 0 is set, HSE firmware is installed.  Regards, Lukas
記事全体を表示