██╗███╗ ███╗██╗ ██╗ ███████╗ ██████╗ ██████╗ ██████╗ ███████╗
██║████╗ ████║╚██╗██╔╝ ██╔════╝██╔═══██╗██╔══██╗██╔════╝ ██╔════╝
██║██╔████╔██║ ╚███╔╝ █████╗█████╗ ██║ ██║██████╔╝██║ ███╗█████╗
██║██║╚██╔╝██║ ██╔██╗ ╚════╝██╔══╝ ██║ ██║██╔══██╗██║ ██║██╔══╝
██║██║ ╚═╝ ██║██╔╝ ██╗ ██║ ╚██████╔╝██║ ██║╚██████╔╝███████╗
╚═╝╚═╝ ╚═╝╚═╝ ╚═╝ ╚═╝ ╚═════╝ ╚═╝ ╚═╝ ╚═════╝ ╚══════╝
面向 NXP i.MX6ULL 的嵌入式 Linux 开发工坊 —— 从工具链到驱动的完整学习路径
5分钟配置完成,跨平台支持
- ✅ 预装 ARM GNU Toolchain 15.2.rel1 和所有依赖
- ✅ 无需配置工具链 PATH,无需担心版本冲突
- ✅ 国内优化版本(Dockerfile.cn)加速下载
- ✅ 支持烧录和网络启动(USB/NFS)
- ✅ WSL2 深度友好 —— Mirrored 网络模式,Windows 用户无需双系统
详细文档: Docker 开发环境指南 | WSL2 配置教程
紧跟上游,学习最新内核技术
- 📦 NXP BSP 轨道 —— 基于 6.12.3,稳定可靠
- 🚀 Mainline 轨道 —— 基于 7.0rc,紧跟上游最新特性
- 🔄 完整的迁移指南和对比分析
114 篇教程,从入门到实战
工具链 → U-Boot → 内核 → Rootfs → 驱动开发 → 实战项目
每一步都有详细的文档和实战示例,不再是"这里略去一万字"的坑人教程。
在线阅读: https://awesome-embedded-learning-studio.github.io/imx-forge/
持续更新,内容不断完善
- 🆕 系统驱动教程 —— 从硬件实现到驱动实战,一点不落下!
- 📝 43+ 篇驱动相关教程 —— 涵盖字符设备、设备树、内核模块等。
- ✅ CI/CD 完善 —— 自动化构建测试,确保代码质量。
IMX-Forge 支持 Docker 和 WSL2 + Docker 两种开发环境:
跨平台支持,5 分钟配置完成,开箱即用。
git clone --recurse-submodules https://github.com/Awesome-Embedded-Learning-Studio/imx-forge.git
cd imx-forge/docker && docker build -t imx-forge:latest . && cd ..
docker run -it --rm -v $(pwd):/workspace imx-forge:latest
./scripts/release-all.sh无需双系统,Windows 下原生开发体验。支持 Mirrored 网络模式直接访问开发板,USB 设备直通用于烧录和串口调试。
📖 详细配置指南: QUICK_START.md
| 阶段 | 主题 | 内容 | 状态 |
|---|---|---|---|
| 0️⃣ | Docker 基础 | Docker 基础知识与 IMX-Forge 开发指南 | ✅ |
| 1️⃣ | 工具链 | ARM GNU Toolchain 15.2 安装与配置 | ✅ |
| 2️⃣ | U-Boot | U-Boot 原理、编译、移植、Logo 定制 | ✅ |
| 3️⃣ | 内核开发 | 设备树、内核配置、驱动开发、网络启动 | ✅ |
| 4️⃣ | Rootfs | BusyBox、inittab、NFS 挂载、应用集成 | ✅ |
| 5️⃣ | 驱动开发 | 字符设备、设备树、pinctrl/gpio 子系统 | 正在持续更新 |
| 6️⃣ | 实战演练 | 完整系统构建与调试 | ✅ |
| 板卡 | 芯片 | 状态 |
|---|---|---|
| 正点原子阿尔法 | i.MX6ULL | ✅ 完整支持 |
其他开发板(如野火等)欢迎提交 PR!
项目通过 GitHub Actions 实现自动化构建测试:
- 组件构建验证 —— 每次提交自动检测变更并触发相关组件构建
- 智能缓存 —— 使用 ccache 加速构建
- 多轨支持 —— 同时验证 U-Boot、Linux NXP BSP、Linux Mainline、BusyBox
我们欢迎各种形式的贡献!
完整贡献指南: CONTRIBUTING.md
快速开始:
补丁命名规范:
[linux-imx]前缀 —— NXP BSP 轨道补丁[mainline]前缀 —— 上游内核轨道补丁[uboot]前缀 —— U-Boot 补丁
感谢所有为本项目做出贡献的开发者!
MIT LICENSE —— 详见 LICENSE
若补丁源自 GPL 授权的 linux-imx 或 NXP U-Boot,则保留其原始 GPL-2.0 许可证。
- 快速开始: QUICK_START.md
- 教程目录: document/tutorial/
- 项目规划: document/todo/todo.md
- 问题反馈: GitHub Issues