当前位置: 首页 > article >正文

Linux移植IMX6ULL记录 一:编译源码并支持能顺利进入linux

目录

前言

一、不修改文件进行编译

二、修改设备树文件进行编译


前言

        我用的开发板是100_ask_imx6ull_pro,其自带的linux内核版本linux-4.9.88,然后从linux官网下载过来的linux-4.9.88版本的arch/arm/configs/defconfig和dts设备树文件并没有对imx6ull做适配,即使是用make imx_v6_v7_defconfig,然后make,烧入后的zimage和dtb会导致启动linux一直卡着不动,也没有错误提示。所以果断放弃linux-4.9.88版本。

现在编译使用的linux版本为linux-fslc-5.4-2.1.x-imx。

NXP官网的linux下载地址https://github.com/Freescale/linux-fslc/tree/5.4-2.1.x-imx

一、不修改文件进行编译

首先设置好交叉编译器的环境变量,vim ~/.bashrc然后在末尾添加:

export ARCH=arm
export CROSS_COMPILE=arm-buildroot-linux-gnueabihf-
export PATH="$PATH:/usr/local/arm-buildroot-linux-gnueabihf_sdk-buildroot/bin"

然后执行

make imx_v7_defconfig

make

然后把imx6ull-14x14-evk-emmc.dtb改名100ask_imx6ull-14x14.dtb(因为用的是100 ask自带的烧入工具,并且目前使用的uboot指定了设备树文件为100ask_imx6ull-14x14.dtb),分别烧入zImage和100ask_imx6ull-14x14.dtb,linux内核启动失败,错误如下:

二、修改设备树文件进行编译

从上图可以看到应该是mmc1没有加载到,所以是没有找到emmc存储设备,所以,出现问题就从dts设备树里对emmc的配置入手。

执行vim arch/arm/boot/dts/imx6ull-14x14-evk-emmc.dts,能够看到只有对ushhc2的配置

跟踪代码,发现在arch/arm/boot/dts/imx6ul.dtsi里usdhc2对应着mmc1,所以问题应该是出在usdhc2没有配置对

打开100 ask imx6ull自带能正常启动的Linux-4.9.88内核代码,找到100ask_imx6ull-14x14.dts设备树文件,发现其对usdhc2的配置如下图,发现只是设置了pinctrl-0,并没有设置pinctro-1/2

所以我们修改自己移植的linux-fslc-5.4-2.1.x-imx,打开imx6ull-14x14-evk-emmc.dts

执行vim arch/arm/boot/dts/imx6ull-14x14-evk-emmc.dts

修改如下图:

然后make,重新把imx6ull-14x14-evk-emmc.dtb改名100ask_imx6ull-14x14.dtb,分别烧入zImage和100ask_imx6ull-14x14.dtb,自此linux内核正常启动(如下图),后续就是配置各种硬件的设备树,如LCD,GPIO等等。


http://www.kler.cn/a/403302.html

相关文章:

  • 【Git】工作区、暂存区和版本库
  • 单元测试框架gtest学习(三)—— 事件机制
  • 解决 npm xxx was blocked, reason: xx bad guy, steal env and delete files
  • PW系列工控电脑复制机:效率与精度双重提升
  • 2.7 以太网的 MAC 层
  • 【动手学深度学习Pytorch】2. Softmax回归代码
  • [Unity] 【游戏开发】Unity开发基础1-创建Unity项目:从Unity Hub选择合适的渲染管
  • Unity资源包导入与导出
  • node.js中express的基本了解
  • Eclipse 查找功能深度解析
  • 安卓CameraX的使用
  • C#里实现日期比较
  • 重构代码之删除对参数的赋值
  • Aws云服务使用场景和优势在哪里
  • android中webview加载图片使用的图片资源代理
  • mysql日志写满出现The table ‘xxxx_amazon_order’ is full
  • 高级网络安全——IP 安全(week5)
  • 【STK学习】part2-星座-目标可见性与覆盖性分析
  • C# 高级--反射 详解
  • HarmonyOS(鸿蒙操作系统)