-
Notifications
You must be signed in to change notification settings - Fork 7.7k
Develop/imx943 netc #93399
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
Draft
JiafeiPan
wants to merge
38
commits into
zephyrproject-rtos:main
Choose a base branch
from
nxp-upstream:develop/imx943-netc
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Draft
Develop/imx943 netc #93399
JiafeiPan
wants to merge
38
commits into
zephyrproject-rtos:main
from
nxp-upstream:develop/imx943-netc
+1,312
−141
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
GIC redistributor on Some platform are connected to a non-coherent downstream interconnect, it need to use Non-cahable and Non-shareable access atttributes to access external memory. And also flush the data cache after CPU update related memory. Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
Add DMA noncoherent support on GICv3 ITS driver. Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
For RDbase used by its command, When GITS_TYPER.PTA = 1, physicall address is used, the RDbase field consist of bits[51:16] of the address, so need to left shift the address by 16 bits. But when GITS_TYPER.PTA = 0, PE number is used, no need to shit anymore. Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
GIC v3 ITS is initialized in pre-kernel stage in which sleep function can't work yet, so use busy delay in pre-kernel stage and use sleep delay in post-kernel stage. Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
Enlarge the memory size to 10M bytes as it is not enough if run some networking application. Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
Added dts node for GIC v3 ITS. Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
In case of ITS is enabled, need to include LPI in the total number of irq. Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
GIC redistribute on i.MX 95 is DMA noncoherent, so enable CONFIG_GIC_V3_RDIST_DMA_NONCOHERENT. Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
GIC ITS depends on kernel heap, so move GIC initialize to be behind of heap which initialization priority is CONFIG_KERNEL_INIT_PRIORITY_OBJECTS (it is 30 by default). MU mailbox and SCMI objects depend on GIC, so set their init priority to be same with GIC, the initialization sequence decided by the dts dependency although they use the same init priority. Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
Add imx95_evk support, as hardware limication, it only has 832 LPIs. Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
Tmp patch to depend on hal_nxp PR 571. Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
It could use GIC ITS as MSI controller on Cortex-A Core, so added GIC ITS MSI support for NETC drivers. Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
Add NETC block driver, it could do some block memory region MMIO mapping and also so dome block initialization, moved some netc related configuration form board_init() to block driver so that it could be reused between different platforms, although some configuration is different for different platform, but put all NETC related code in the same driver to make it easier to be maintained. Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
Added MMIO memory mapping for NETC MDIO driver. Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
In order to support MMU mapping on Cortex-A core, added MMIO mapping support in imx_netc_psi driver. Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
i.MX 95 has no NETC switch, so disable it on this platform. Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
As reg property is not used by the driver and there is no proper address could be assigned to it, so remove it. Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
Update NETC device nodes according to NETC driver update: 1. Added NETC block control device node to handle block control initialization in netc block driver. 2. Added "nxp,imx-netc" compatible for netc driver. 3. Added all memory region in MMIO reg propertiy to let driver to handle MMIO mapping for all memory region. Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
Update NETC device nodes according to NETC driver update: 1. Added "nxp,imx-netc" compatible. 2. Added all memory region in MMIO reg propertiy to let driver to handle MMIO mapping for all memory region. Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
Update NETC device nodes according to NETC driver update: 1. Added "nxp,imx-netc" compatible for netc driver. 2. Added all memory region in MMIO reg propertiy to let driver to handle MMIO mapping for all memory region. Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
Added NETC dts nodes in imx95_evk A55 platform. Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
Added SCMI power dts node. Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
Power up NETCMIX and configure netc clock in soc_init(). Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
Removed overlay and enabled these nodes in board dts directly as it is not be valid unless CONFIG_NETWORKING is enabled. Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
Added NETC PSI0 support on the i.MX 95 EVK board for A55 platform. Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
The issue is caused by default stack size 1500 bytes of NET_RX_STACK_SIZE is to small for ARM64 platform, then the stack of net_rx thread is overflow and break the net_mgmt thread's stack, as a result net_mgmt thread is crashed. So this patch will enlarge all the stack size of net stack threads. Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
Add i.MX 95 EVK A55 support for zperf sample. Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
Added dts node for GIC v3 ITS, enabled LPI interrupts, and enabled GIC ITS driver on the SoC. Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
Enlarge the memory size to 10M bytes as it is not enough if run some networking application. Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
GIC ITS depends on kernel heap, so move GIC initialize to be behind of heap which initialization priority is CONFIG_KERNEL_INIT_PRIORITY_OBJECTS which is 30 by default. MU mailbox and SCMI objects depend on GIC, so set their init priority to be same with GIC, the initialization sequence decided by the dts dependency although they use the same init priority. Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
Add imx943_evk support, as hardware limication, it only has 832 LPIs. Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
Add NETCMIX block initialization for i.MX 943. Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
Added SCMI power dts node. Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
Power up NETCMIX and configure netc clock in soc_init(). Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
Added NETC related device nodes in SoC dts. Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
Enabled NETC support on i.MX 943 A55 platform. Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
Configure heap memory size to be enough for GIC ITS. Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
Moved armv8-a cache driver from mcux-sdk to mcux-sdk-ng. Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
The following west manifest projects have changed revision in this Pull Request:
⛔ DNM label due to: 1 project with PR revision Note: This message is automatically posted and updated by the Manifest GitHub Action. |
|
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
DNM (manifest)
This PR should not be merged (controlled by action-manifest)
manifest
manifest-hal_nxp
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Based on #92585
Depends on zephyrproject-rtos/hal_nxp#578