海思3559kernel移植(一):一路next的默认模式

简介: 安装环境篇过后的sdk包里实际上并没有kernel的源码

前言

 安装环境篇过后的sdk包里实际上并没有kernel的源码,这点和开发说明文档里是有出入的,不过没关系,sdk包里的readme还是给了我们方向

 主要参考两个文档

XXX/Hi3559AV100R001C02SPC020/01.software/board/Hi3559AV100_SDK_V2.0.2.0/osdrv/readme_cn.txt;
 XXX/Hi3559AV100R001C02SPC020/01.software/board/Hi3559AV100_SDK_V2.0.2.0/osdrv/opensource/kernel/readme_cn.txt。

一.源码下载

 1)进入网站:www.kernel.org

 2)选择HTTP协议资源的https://www.kernel.org/pub/选项,进入子页面

 3)选择linux/菜单项,进入子页面

 4)选择kernel/菜单项,进入子页面

 5)选择v4.x/菜单项,进入子页面

 6)下载linux-4.9.37.tar.gz

二.patch补丁

 1)将下载的 linux-4.9.37.tar.gz 存放到 osdrv的opensource/kernel目录中

 2)在linux服务器中进入 osdrv 的根目录,执行如下命令:

make atf

三.配置内核

 步骤 1 手动拷贝.config 文件:

cp arch/arm64/configs/hi3559av100_arm64_xxx_defconfig .config

 (注:当启动介质是eMMC、 UFS、 SPI-Nor Flash或SPI-NAND Flash时, 使用hi3559av100_arm64_big_little_defconfig;当启动介质是NAND Flash时, 使用hi3559av100_arm64_big_little_nand_defconfig)

 步骤 2 用户通过“make menuconfig” 进行内核配置:

make ARCH=arm64 CROSS_COMPILE=aarch64-himix100-linux- menuconfig

 步骤 3 选择需要的模块。

 步骤 4 选择完毕后,保存并退出。

四.编译内核

make ARCH=arm64 CROSS_COMPILE=aarch64-himix100-linux- clean
make ARCH=arm64 CROSS_COMPILE=aarch64-himix100-linux- menuconfig
make ARCH=arm64 CROSS_COMPILE=aarch64-himix100-linux- uImage

五.生成镜像

 进入 osdrv/opensource/arm-trusted-firmware/ arm-trusted-firmware 目录,执行 mk.sh 脚本

cd …/…/arm-trusted-firmware/arm-trusted-firmware
./mk.sh

 当 linux 目录有变更时,需要修改 mk.sh 中内核路径, 使其指向正确的 linux 目录。

 在 osdrv/opensource/ arm-trusted-firmware/arm-trusted-firmware/build/hi3559av100/debug

目录下,生成的 fip.bin 文件就是 ATF+kernel 的镜像 uImage。


相关文章
|
Linux
从零开始写linux字符设备驱动程序(四)(基于友善之臂tiny4412开发板)
从零开始写linux字符设备驱动程序(四)(基于友善之臂tiny4412开发板)
140 0
Linux ALSA驱动之二:声卡的创建流程 下
Linux ALSA驱动之二:声卡的创建流程 下
Linux ALSA驱动之二:声卡的创建流程 下
|
缓存 Linux 芯片
Linux移植:正点原子阿尔法IMX6ULL开发板Linux内核源码移植详细步骤(4.1.15版本内核)(中)
Linux移植:正点原子阿尔法IMX6ULL开发板Linux内核源码移植详细步骤(4.1.15版本内核)(中)
1158 0
Linux移植:正点原子阿尔法IMX6ULL开发板Linux内核源码移植详细步骤(4.1.15版本内核)(中)
|
Linux
从零开始写linux字符设备驱动程序(三)(基于友善之臂tiny4412开发板)
从零开始写linux字符设备驱动程序(三)(基于友善之臂tiny4412开发板)
83 0
|
Linux
从零开始写linux字符设备驱动程序(二)(基于友善之臂tiny4412开发板)
从零开始写linux字符设备驱动程序(二)(基于友善之臂tiny4412开发板)
81 0
|
Ubuntu Linux 网络架构
Linux移植:正点原子阿尔法IMX6ULL开发板Linux内核源码移植详细步骤(4.1.15版本内核)(下)
Linux移植:正点原子阿尔法IMX6ULL开发板Linux内核源码移植详细步骤(4.1.15版本内核)(下)
722 0
|
Ubuntu Linux Shell
Linux移植:正点原子阿尔法IMX6ULL开发板Linux内核源码移植详细步骤(4.1.15版本内核)(上)
Linux移植:正点原子阿尔法IMX6ULL开发板Linux内核源码移植详细步骤(4.1.15版本内核)
559 0
|
Ubuntu Linux 芯片
Linux移植5.4版本内核:正点原子阿尔法IMX6ULL开发板Linux内核源码移植详细步骤(5.4版本内核)
Linux移植5.4版本内核:正点原子阿尔法IMX6ULL开发板Linux内核源码移植详细步骤(5.4版本内核)
1406 0
|
编解码 Ubuntu Linux
linux/鸿蒙开发(基于IMX6ULL)开发 (十三)Framebuffer应用编程
linux/鸿蒙开发(基于IMX6ULL)开发 (十三)Framebuffer应用编程
295 2
linux/鸿蒙开发(基于IMX6ULL)开发 (十三)Framebuffer应用编程
|
中间件 Linux 开发工具
海思3559U-Boot移植(一):一路next的默认模式
Hi3559AV100 单板的 Bootloader 采用 U-boot。当选用的外围芯片的型号与单板上外围芯片的型号不同时,需要修改 U-boot 配置文件,主要包括存储器配置、 管脚复用。sdk包里有uboot的源码,可以进行修改后编译
649 0
海思3559U-Boot移植(一):一路next的默认模式

热门文章

最新文章

下一篇
开通oss服务