-
Notifications
You must be signed in to change notification settings - Fork 8.4k
i.MX RT700 DSP support #79954
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
i.MX RT700 DSP support #79954
Conversation
|
The following west manifest projects have changed revision in this Pull Request:
✅ All manifest checks OK Note: This message is automatically posted and updated by the Manifest GitHub Action. |
9f51a11 to
2e37183
Compare
|
The twister tests are failing because the CI is using zephyr_sdk 0.16.8 which doesn't include the hifi1 and hifi4 toolchain for imxrt700. Locally I used zephyr-sdk-0.16.9-rc2 which had the 2 toolchain. I see now that 0.17.0 was released. |
Yes, I have this on my list :) |
428022c to
f5d3313
Compare
f5d3313 to
c29c286
Compare
|
Changes since previous version:
|
| config LOG | ||
| default n |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
log defaults to n anyway?
|
|
||
| MEMORY | ||
| { | ||
| vector_reset_text : |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
zephyr uses tab indents for code
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Most linker script files use spaces, with only a few (such as mips) using tabs. Therefore, I’ve kept the linker scripts for hifi1 and hifi4 formatted with spaces.
If you strongly prefer tabs, I can update them, but in my opinion, this approach aligns with Zephyr’s current formatting.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Seems there is a mix of space and tabs in different files, will allow
| CONFIG_GEN_ISR_TABLES=y | ||
| CONFIG_GEN_IRQ_VECTOR_TABLE=n | ||
| CONFIG_XTENSA_SMALL_VECTOR_TABLE_ENTRY=y | ||
| CONFIG_NXP_IMXRT_BOOT_HEADER=n |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
why are these not at soc level?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
moved them to soc (in Kconfig.defconfig) but some are with default n since they are defined with default y - see CONFIG_GEN_IRQ_VECTOR_TABLE and CONFIG_NXP_IMXRT_BOOT_HEADER
| config SYS_CLOCK_HW_CYCLES_PER_SEC | ||
| default 325000000 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
why doesn't this come from a dts property?
|
|
||
| MEMORY | ||
| { | ||
| vector_reset_text : |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
as above
| CONFIG_GEN_ISR_TABLES=y | ||
| CONFIG_GEN_IRQ_VECTOR_TABLE=n | ||
| CONFIG_XTENSA_SMALL_VECTOR_TABLE_ENTRY=y | ||
| CONFIG_NXP_IMXRT_BOOT_HEADER=n |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
as abpve
| .. code-block:: shell | ||
| $ west build -b mimxrt700_evk/mimxrt798s/hifi1 samples/hello_world | ||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
there is a
.. zephyr-app-commands::
:tool: west
for this
|
|
||
| .. code-block:: shell | ||
| $ west build -b mimxrt700_evk/mimxrt798s/hifi4 samples/hello_world |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
as above
Update Xtensa hal to support NXP i.MXRT700 DSP cores. Signed-off-by: Iuliana Prodan <[email protected]>
The i.MX RT700 has a compute subsystem which includes a primary ARM Cortex-M33 running at 325 MHz and Cadence Tensilica HiFi4 DSP. Here, we add support for the HiFi4 core. Signed-off-by: Iuliana Prodan <[email protected]>
Add a basic device tree for the HiFi4 DSP from NXP i.MXRT700. Signed-off-by: Iuliana Prodan <[email protected]>
Add board support for the HiFi4 DSP core from NXP i.MXRT700. Signed-off-by: Iuliana Prodan <[email protected]>
The i.MX RT700 has an ultra-low power Sense Subsystem which includes an ARM Cortex-M33 and Cadence Tensilica HiFi 1 DSP. Here, we add support for the HiFi1 core. Signed-off-by: Iuliana Prodan <[email protected]>
Add a basic device tree for the HiFi1 DSP from NXP i.MXRT700. Signed-off-by: Iuliana Prodan <[email protected]>
Add board support for the HiFi1 DSP core from NXP i.MXRT700. Signed-off-by: Iuliana Prodan <[email protected]>
f703885 to
df62609
Compare
Add documentation for the two HiFi1 and HiFi4 DSP cores from i.MXRT700. Signed-off-by: Iuliana Prodan <[email protected]>
df62609 to
b9f85bb
Compare
|
Removing the DNM tag since the Zephyr bot tagged it using an old tag. |
The i.MX RT700 has a Compute Subsystem which includes a primary ARM Cortex-M33 running at 325 MHz and Cadence Tensilica HiFi 4 DSP.
It also features an ultra-low power Sense Subsystem which includes a second ARM Cortex-M33 and Cadence Tensilica HiFi 1 DSP.
This pull request adds the soc and board support for the two HiFi cores.