Skip to content

IMXRT11XX ARM PLL not always valid #69316

Open
@jman168

Description

@jman168

Describe the bug
In the soc_rt11xx.c file the ARM PLL is set to 984MHz which for the MIMXRT1176DVMAA in the NXP EVK is fine, however for the other parts such as the MIMXRT1176AVM8A they only support a core clock of up to 800Mhz and will not function properly if above this. Currently there is no way to set this clock without editing the soc_rt11xx.c file to my knowledge.

To Reproduce
Compile a program for rt1176 and upload to a bard with a MIMXRT1176AVM8A. Specifically in my case the enet1g peripheral would not work unless the core clock was set to ~700Mhz.

Expected behavior
It should work just as it does on the NXP EVK with a MIMXRT1176DVMAA.

Impact
If the clock is not fixed in some way peripherals do not work as expected and the processor is technically operating in unqualified conditions.

Logs and console output
Not really applicable here, all I can say is if the clock isn't set right it doesn't work. It will boot and seem to work fine but weird things won't work such as Ethernet getting random errors.

This is the piece of code in question which is causing the issue. You can see that I changed the loopDivider to 116 which results in a ARM PLL of 696Mhz fixing the issue.
Screenshot from 2024-02-22 00-22-59

Environment (please complete the following information):

  • OS: Linux
  • Zephyr SDK
  • Commit SHA: b6d9b3f

note: Edited MIMXRT1176AVM8A from MIMXRT1171AVM8A (I accidentally typed a 1 instead of a six).

Metadata

Metadata

Assignees

Labels

EnhancementChanges/Updates/Additions to existing featuresplatform: NXPNXP

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions