-
Notifications
You must be signed in to change notification settings - Fork 5.2k
[bsp][nxp][imx] WIP: Add FRDM-i.MX91 bsp #10570
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
base: master
Are you sure you want to change the base?
Conversation
A核芯片,请启用MMU,外设都做ioremap,谢谢。 |
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.
请添加此BSP的CI看护
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.
正确姿势不应该重写这个文件吧?
|
||
group = DefineGroup('Applications', src, depend = [''], CPPPATH = CPPPATH) | ||
|
||
list = os.listdir(cwd) |
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.
这块多余的代码请删除
return ; | ||
} | ||
|
||
int main(void) |
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.
main函数应该在 applications/main.c
中
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.
Pull Request Overview
This PR adds a new BSP (Board Support Package) for the NXP FRDM-i.MX91 development board, introducing support for the i.MX91 SoC with ARM Cortex-A55 architecture.
Key Changes:
- Adds complete BSP structure for i.MX91 platform including toolchain configuration, memory management, and device drivers
- Implements UART1 driver support with IOMUX configuration for serial communication
- Provides basic board initialization with timer, interrupt handling, and memory mapping setup
Reviewed Changes
Copilot reviewed 22 out of 22 changed files in this pull request and generated 11 comments.
Show a summary per file
File | Description |
---|---|
rtconfig.py | Toolchain configuration for ARM Cortex-A with GCC compiler settings |
rtconfig.h | RT-Thread configuration header with i.MX91-specific settings |
link.lds | Linker script defining memory layout and sections for i.MX91 |
drivers/serial.* | UART driver implementation and header |
drivers/iomux/* | Pin multiplexing configuration for UART interfaces |
drivers/board.* | Board initialization and hardware abstraction |
applications/* | Application startup code and initialization |
build files | SCons build system configuration and Kconfig files |
/* Automatically generated file; DO NOT EDIT. */ | ||
/* RT-Thread Configuration */ | ||
|
||
#define BOARD_IMX6UL |
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.
This macro definition is incorrect for the i.MX91 BSP. It should be '#define BOARD_IMX91' to match the actual hardware platform being supported.
#define BOARD_IMX6UL | |
#define BOARD_IMX91 |
Copilot uses AI. Check for mistakes.
rt_hw_interrupt_mask(irq_id); | ||
} | ||
|
||
#endif /* __IMX6UL_H__ */ |
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.
The header guard comment is incorrect. It should be '/* IMX91_H */' to match the actual header guard defined at the top of the file.
#endif /* __IMX6UL_H__ */ | |
#endif /* __IMX91_H__ */ |
Copilot uses AI. Check for mistakes.
|
||
#include "iomux_config.h" | ||
|
||
// Function to configure iomux for i.MX6SL board MCIMX6SLEVK rev. B. |
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.
The comment references the wrong board. It should mention i.MX91 board instead of 'i.MX6SL board MCIMX6SLEVK rev. B.' to accurately reflect the target hardware.
// Function to configure iomux for i.MX6SL board MCIMX6SLEVK rev. B. | |
// Function to configure IOMUX for i.MX91 board. |
Copilot uses AI. Check for mistakes.
#define CONFIG_MX6 | ||
#define CONFIG_MX6UL |
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.
This macro definition is incorrect for i.MX91. It should be '#define CONFIG_MX91' or similar to match the actual SoC family.
#define CONFIG_MX6 | |
#define CONFIG_MX6UL | |
#define CONFIG_MX91 |
Copilot uses AI. Check for mistakes.
#define CONFIG_MX6 | ||
#define CONFIG_MX6UL |
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.
This macro definition is incorrect for i.MX91. It should be '#define CONFIG_MX91' or similar to match the actual SoC being supported.
#define CONFIG_MX6 | |
#define CONFIG_MX6UL | |
#define CONFIG_MX91 |
Copilot uses AI. Check for mistakes.
return uart5_iomux_config(); | ||
|
||
case HW_UART7: | ||
return uart5_iomux_config(); | ||
|
||
case HW_UART8: | ||
return uart5_iomux_config(); |
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.
Incorrect function call for UART7 case. It should call 'uart7_iomux_config()' instead of 'uart5_iomux_config()'.
return uart5_iomux_config(); | |
case HW_UART7: | |
return uart5_iomux_config(); | |
case HW_UART8: | |
return uart5_iomux_config(); | |
return uart6_iomux_config(); | |
case HW_UART7: | |
return uart7_iomux_config(); | |
case HW_UART8: | |
return uart8_iomux_config(); |
Copilot uses AI. Check for mistakes.
return uart5_iomux_config(); | ||
|
||
case HW_UART8: | ||
return uart5_iomux_config(); |
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.
Incorrect function call for UART8 case. It should call 'uart8_iomux_config()' instead of 'uart5_iomux_config()'.
return uart5_iomux_config(); | |
return uart8_iomux_config(); |
Copilot uses AI. Check for mistakes.
* | ||
* Change Logs: | ||
* Date Author Notes | ||
* 2025-07-12 BruceOu the first verion |
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.
Spelling error: 'verion' should be 'version'.
* 2025-07-12 BruceOu the first verion | |
* 2025-07-12 BruceOu the first version |
Copilot uses AI. Check for mistakes.
* | ||
* Change Logs: | ||
* Date Author Notes | ||
* 2025-07-12 BruceOu The first verion |
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.
Spelling error: 'verion' should be 'version'.
* 2025-07-12 BruceOu The first verion | |
* 2025-07-12 BruceOu The first version |
Copilot uses AI. Check for mistakes.
* | ||
* Change Logs: | ||
* Date Author Notes | ||
* 2025-07-12 BruceOu The first verion |
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.
Spelling error: 'verion' should be 'version'.
* 2025-07-12 BruceOu The first verion | |
* 2025-07-12 BruceOu The first version |
Copilot uses AI. Check for mistakes.
拉取/合并请求描述:(PR description)
为什么提交这份PR (why to submit this PR)
添加 NXP FRDM-i.MX91 开发板的 BSP
你的解决方案是什么 (what is your solution)
新增imx91目录
请提供验证的bsp和config (provide the config and bsp)
当前拉取/合并请求的状态 Intent for your PR
必须选择一项 Choose one (Mandatory):
代码质量 Code Quality:
我在这个拉取/合并请求中已经考虑了 As part of this pull request, I've considered the following:
#if 0
代码,不包含已经被注释了的代码 All redundant code is removed and cleaned up