![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
linux系统移植
oqqYuJi12345678
这个作者很懒,什么都没留下…
展开
-
s3c2440 uboot 移植 (四)支持环境变量在nandflash 存储
上一篇调通uboot的网络功能以后,已经可以用来进行引导linux,进行linux的移植了,不过如果环境变量没有保存的话,调试起来有点麻烦,而且后面也需要在uboot 中用到nandflash,所以这边把nandflash调通,当然也是网上东抄下,西抄下,不过还是遇到些小问题。先修改配置文件include\configs\smdk2410.h/*#define CONFIG_ENV_...原创 2019-06-15 11:20:14 · 446 阅读 · 0 评论 -
s3c2440 uboot 移植 (五)uboot 如何引导linux
突然想起来,在移植linux的时候,linux中无法打印出信息的问题,满天下找问题,为了确保uboot没有问题,把uboot的引导过程分析了下:一般会用bootm 引导uImage,uImage是在zImage的基础上,加了一个64字节的头,里面记载了linux内核的一些基本信息,来帮助uboot 加载linux 系统,当时最纠结的一个问题是,我的加载地址是0x31000000,为什...原创 2019-06-15 13:04:41 · 403 阅读 · 0 评论 -
嵌入式linux 系统iptables 编译及安装
1 iptables下载iptables可以从该网站进行下载:https://www.netfilter.org/projects/iptables/downloads.html这里使用的linux内核为3.10版本的,iptables选择iptables-1.4.20iptbales版本的选择一定要和linux版本的发布日期相近,如果差的太多,会导致编译不过2 编译iptab...原创 2020-01-02 21:14:40 · 2145 阅读 · 1 评论 -
s3c2440 linux系统移植(一)分析zImage 自解压程序执行流程
移植完uboot 以后,准备开始linux系统的移植。从网上随便下了个linux3.10版本的软件包。首先在顶层Makefile文件中加入ARCH和CROSS_COMPILE:#ARCH ?= $(SUBARCH)#CROSS_COMPILE ?= $(CONFIG_CROSS_COMPILE:"%"=%)ARCH ?=armCROSS_COMPILE ?=arm-linux...原创 2019-06-15 18:21:19 · 297 阅读 · 0 评论 -
s3c2440 linux系统移植(二)解决系统刚起来,printascii无打印输出
前面分析了linux3.10 kernel zImage 自解压程序的执行流程,接下来看一下解压完image并在跳转到start_kernel c函数入口之前,还做了哪些工作。kernel的第一个链接的文件应该是arch/arm/kernel/head.s入口标号为stext:ENTRY(stext) THUMB( adr r9, BSYM(1f) ) @ Kernel ...原创 2019-06-15 22:53:36 · 481 阅读 · 0 评论 -
s3c2440 linux系统移植(三)从initramfs启动成功
前面可以打印出log信息以后,发现提示信息 unsupported machine id.说明从uboot 传过来的machine id和内核里面的machine id 列表不匹配,但是仔细用调试工具追踪,发现machine id是传下来的,在而且在进入 head.s 文件执行前都是正确的,并没有被覆盖,在单步调试的时候id都是正确的,但实际执行id就是0,没有找到原因。没有办法,直接暴力修...原创 2019-06-30 21:02:24 · 331 阅读 · 1 评论 -
s3c2440 linux系统移植(四)使用ubi作为根文件系统
首先在uboot 里面对nand flash进行分区设置,源文件在/include/configs/smdk2440.h:#define CONFIG_CMD_UBI#define CONFIG_CMD_UBIFS#define CONFIG_CMD_MTDPARTS#define CONFIG_MTD_DEVICE#define CONFIG_MTD_PARTITIONS#d...原创 2019-07-05 22:55:35 · 644 阅读 · 0 评论 -
s3c2440 linux系统移植(五)使用device tree
linux3.10 默认不打开device tree,但现在linux驱动的开发基本都使用device tree来描述device,所以这边也学习下device tree的使用。3.10内核里面没有找到s3c24xx 系列的dts,从高版本的内核中可以找到相关的dts,这边下载了4.19.5的内核,发现里面有s3c24xx 的dts文件,把相关dts,dtsi,以及头文件都拷贝过来,(s3c24...原创 2019-07-10 20:11:36 · 861 阅读 · 0 评论