Skip to content
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

Add RT700 basic environment support #79376

Open
wants to merge 8 commits into
base: main
Choose a base branch
from

Conversation

lucien-nxp
Copy link
Contributor

support gpio/uart function

@zephyrbot
Copy link
Collaborator

zephyrbot commented Oct 3, 2024

The following west manifest projects have been modified in this Pull Request:

Name Old Revision New Revision Diff
hal_nxp zephyrproject-rtos/hal_nxp@99570ee (master) zephyrproject-rtos/hal_nxp#444 zephyrproject-rtos/hal_nxp#444/files

Note: This message is automatically posted and updated by the Manifest GitHub Action.

@zephyrbot zephyrbot added manifest manifest-hal_nxp DNM This PR should not be merged (Do Not Merge) labels Oct 3, 2024
soc/nxp/common/Kconfig.flexspi_xip Outdated Show resolved Hide resolved
soc/nxp/imxrt/Kconfig Outdated Show resolved Hide resolved
soc/nxp/imxrt/Kconfig Outdated Show resolved Hide resolved
soc/nxp/imxrt/imxrt7xx/Kconfig Outdated Show resolved Hide resolved
soc/nxp/imxrt/imxrt7xx/Kconfig Outdated Show resolved Hide resolved
high-performance numerical tasks such as audio and image processing and supports both fixed-point and
floating-point operations.

Note: Due to board isn't launched, the picture is blank
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe just don't include an image? I'm not aware of a requirement that we actually have one.

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Only release RT700 soc, EVK board don't launch currently. We can't show the board picture currently.

boards/nxp/mimxrt700_evk/mimxrt700_evk_mimxrt798s_cpu0.dts Outdated Show resolved Hide resolved
boards/nxp/mimxrt700_evk/doc/index.rst Outdated Show resolved Hide resolved
boards/nxp/mimxrt700_evk/Kconfig.defconfig Outdated Show resolved Hide resolved
boards/nxp/mimxrt700_evk/doc/mimxrt700_evk.webp Outdated Show resolved Hide resolved
boards/nxp/mimxrt700_evk/mimxrt700_evk-pinctrl.dtsi Outdated Show resolved Hide resolved
boards/nxp/mimxrt700_evk/mimxrt700_evk_mimxrt798s_cpu0.dts Outdated Show resolved Hide resolved
boards/nxp/mimxrt700_evk/mimxrt700_evk_mimxrt798s_cpu0.dts Outdated Show resolved Hide resolved
Comment on lines +75 to +86
config XSPI_CONFIG_BLOCK_OFFSET
hex "XSPI config block offset"
default 0x0
help
XSPI configuration block consists of parameters regarding specific
flash devices including read command sequence, quad mode enablement
sequence (optional), etc. The boot ROM expects XSPI configuration
parameter to be presented in serial nor flash.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

why is this not in dts?

soc/nxp/imxrt/imxrt7xx/Kconfig.soc Outdated Show resolved Hide resolved
@lucien-nxp lucien-nxp force-pushed the add_rt700_baseline_support branch 7 times, most recently from 15b6e02 to 198fc99 Compare October 21, 2024 02:27
boards/nxp/mimxrt700_evk/mimxrt700_evk_mimxrt798s_cpu0.dts Outdated Show resolved Hide resolved
status = "okay";
jedec-id = [c2 81 3a];
erase-block-size = <4096>;
write-block-size = <2>; /* FLASH_MCUX_FLEXSPI_MX25UM51345G_OPI_DTR set */
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This doesn't really need to be present, since we have no enablement for XSPI (so this property won't affect anything)

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, due to the same flash reused on RT700, I only copied the content from RT500. So do you mean I need to remove these information?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

About flexcomm8 set as ok status: I'm sorry I don't know why I added it then(The brain might be down😀)and I have deleted it. Thank you

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, please remove this information- we don't have support for the XSPI in Zephyr yet, so this property won't do anything

boards/nxp/mimxrt700_evk/CMakeLists.txt Outdated Show resolved Hide resolved
boards/nxp/mimxrt700_evk/doc/index.rst Outdated Show resolved Hide resolved
drivers/gpio/gpio_mcux.c Outdated Show resolved Hide resolved
int pinctrl_configure_pins(const pinctrl_soc_pin_t *pins, uint8_t pin_cnt,
uintptr_t reg)
{
for (uint8_t i = 0; i < pin_cnt; i++) {
uint32_t pin_mux = pins[i];
#if defined(CONFIG_SOC_SERIES_IMXRT7XX) && defined(CONFIG_SOC_FAMILY_NXP_IMXRT)
uint8_t port_no = PORT_NO(pin_mux);
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'd prefer to just transition the entire driver to use this macro definition if possible.

soc/nxp/common/Kconfig.xspi_xip Show resolved Hide resolved
soc/nxp/imxrt/imxrt7xx/cm33/flash_clock_setup.c Outdated Show resolved Hide resolved
soc/nxp/imxrt/imxrt7xx/cm33/flash_clock_setup.h Outdated Show resolved Hide resolved
soc/nxp/imxrt/imxrt7xx/cm33/flash_clock_setup.h Outdated Show resolved Hide resolved
soc/nxp/imxrt/imxrt7xx/cm33/soc.c Outdated Show resolved Hide resolved
@lucien-nxp lucien-nxp force-pushed the add_rt700_baseline_support branch 3 times, most recently from abb27c2 to d6fb425 Compare October 24, 2024 02:20
add rt7xx files related to soc
support basic clock enablement
add HAS_MCUX_XSPI/HAS_GLIKEY Kconfig
add common/Kconfig.xspi_xip file

Signed-off-by: Lucien Zhao <[email protected]>
add RT7xx dts files
add iocon/gpio/flexcomm/clock instances in dts

Signed-off-by: Lucien Zhao <[email protected]>
add nxp,imx-xspi-device.yaml
add nxp,imx-xspi-mx25um51345g.yaml
add nxp,imx-xspi.yaml

Signed-off-by: Lucien Zhao <[email protected]>
add more flexcomm instances clock support to adapt
rt700 instances number

add xspi clock support

Signed-off-by: Lucien Zhao <[email protected]>
Due to there is no port on RT7xx soc, update driver to
adapt rt7xx pin mux model(Use IOPCTL_PinMuxSet function
to configure pinmux set)

Signed-off-by: Lucien Zhao <[email protected]>
update gpio driver to adapt rt7xx gpio model:
1. There is no PORT_Type on RT7xx,so set PORT_Type as void
2. Add port_no parameter in gpio_mcux_config to adapt IOPCTL driver
3. Add gpio-port-offest parameter in blinding, it will help map the
   relation between index n and gpio port when some soc have domain
   access attribution.
4. Add code to adapt RT700 GPIO attribute configuration

Signed-off-by: Lucien Zhao <[email protected]>
add files related to mimxrt700_evk board
add gpio/uart function support on board

Signed-off-by: Lucien Zhao <[email protected]>
track rt700 sdk files update PR branch

Signed-off-by: Lucien Zhao <[email protected]>
DerekSnell

This comment was marked as duplicate.

Copy link
Contributor

@DerekSnell DerekSnell left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi @lucien-nxp ,
Thank you for addressing my other feedback. Now I just see 1 simple doc change, but an important one. Thank you

Using LinkServer
----------------

Linkserver is the default runner for this board, and supports the factory
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
Linkserver is the default runner for this board, and supports the factory
The Linkserver runner supports the factory

JLink is the default runner in the PR. We need to correct this.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.