linux4.10.8 内核移植(三)---裁剪内核
一、裁剪内核
1.1 第一次修改
现在的内核大小为2.8M左右,要裁剪到2.0M以下,毕竟给内核分区就只有2.0M。


这两个设备我们没有,裁剪掉。
进入make menuconfig中,搜索mousedev:

进入里面按需要进行裁剪。

搜索 lp:

hostname修改:

文件系统再此修改:

去掉如下选项:



再次进入device driver,-》input device->touch creen
配置上

去掉:

修改完后,保存。然后编译执行,查看uImage的大小

裁剪出来的大小为2.66M,还得继续裁剪。
1.2 第二次修改
查看.config文件,查看哪些能修改的。

NETworking support->bluetooth
蓝牙设备,我们的开发板上没有蓝牙,去掉

device driver->network device support

无线WIFI也不支持,去掉。

这个去不掉,放那里了。
编译

根本没减少多少,只能现在内核自带属性越来越多了。只能修改分区了。
修改两个分区,u-boot分区和linux里面的分区。
二、修改分区
2.1 修改u-boot分区
u-boot 的分区在 include/configs/jz2440.h 中修改,修改为4M大小

编译,然后下载。使用openjtag下载

分区:

删除原有的分区:
mtdparts delall
新建分区:mtdparts default

分区已经建立好。
2.2 内核修改
Mach-mini2440.c (arch\arm\mach-s3c24xx)

编译。
烧写文件系统进去:
nfs 192.168.0.192:/home/ubuntu/work/nfs_root/fs_mini.yaffs2
nand erase.part rootfs
nand write.yaffs $filesize
set bootargs console=ttySAC0, root=/dev/mtdblock3
烧写内核,此次就直接烧写进nand中了
nfs 192.168.0.192:/home/ubuntu/work/nfs_root/uImage
nand erase.part kernel
nand write kernel
u-boot中要设置启动参数:
set 'nand read 30000000 kernel;bootm 30000000'
set bootargs console=ttySAC0, root=/dev/mtdblock3
正常启动。
四、制作补丁
内核补丁制作:
cp .config config_jz2440
make distclean
cd ..
mv linux-4.10. linux-4.10.8_jz2440
tar -jxvf linux-4.10..tar.gz
diff -urN linux-4.10. linux-4.10.8_jz2440 > linux-4.10.8_jz2440.patch

打补丁:
cd linux-4.10.
patch -p1 < ../linux-4.10.8_jz2440.patch
linux4.10.8 内核移植(三)---裁剪内核的更多相关文章
- linux4.10.8 内核移植(一)---环境搭建及适配单板。
一.环境搭建 源码包下载:git clone https://www.kernel.org/pub/linux/kernel/v4.x/linux-4.10.8.tar.gz 或者直接去kernel. ...
- 【转】 linux内核移植和驱动添加(三)
原文网址:http://blog.chinaunix.net/uid-29589379-id-4708909.html 原文地址:linux内核移植和驱动添加(三) 作者:genehang 四,LED ...
- 小白自制Linux开发板 三. Linux内核与文件系统移植
上一篇完成了uboot的移植,但是想要愉快的在开发板上玩耍还需要移植Linux内核和文件系统. 1.Linux内核 事实上对于F1C100S/F1C200S,Linux官方源码已经对licheepi ...
- 2.移植3.4内核-支持烧写yaffs2,裁剪内核并制作补丁
在上章-制作文件系统,并使内核成功启动jffs2文件系统了 本章主要内容如下: 1)使内核支持yaffs2文件系统 2)裁剪内核 3)制作内核补丁 1.首先获取yaffs2源码(参考git命令使用详解 ...
- 基于tiny4412的Linux内核移植 -- 设备树的展开
作者信息 作者: 彭东林 邮箱:pengdonglin137@163.com QQ:405728433 平台简介 开发板:tiny4412ADK + S700 + 4GB Flash 要移植的内核版本 ...
- 18.17 U-Boot+内核移植
18.17.1 移植U-Boot-2012.04.08 1.下载.建立source insight工程.编译.烧写.如果无运行分析原因. $ .tar.bz2 $ cd u-boot- $ make ...
- 基于tiny4412的Linux内核移植 -- 设备树的展开【转】
转自:https://www.cnblogs.com/pengdonglin137/p/5248114.html#_lab2_3_1 阅读目录(Content) 作者信息 平台简介 摘要 正文 一.根 ...
- linux内核(二)内核移植(DM365-DM368开发攻略——linux-2.6.32的移植)
一.介绍linux-2.6.32: Linux-2.6.32的网上介绍:增添了虚拟化内存 de-duplicacion.重写了 writeback 代码.改进了 Btrfs 文件系统.添加了 ATI ...
- 【转】 linux内核移植和网卡驱动(二)
原文网址:http://blog.chinaunix.net/uid-29589379-id-4708911.html 一,内核移植步骤: 1, 修改顶层目录下的Makefile ARCH ...
随机推荐
- Window安装Redis并设置为开机启动
一.下载windows版本的Redis 去官网找了很久,发现原来在官网上可以下载的windows版本的,现在官网以及没有下载地址,只能在github上下载,官网只提供linux版本的下载 官网下载地址 ...
- HTMl Dom操作
訪問: getElementById():帶回指定id的所有元素 getElementByTagName():帶回指定標籤名的所有的元素 getElementByClassName():帶回指定類型名 ...
- String在内存中如何存储(Java)
JDK1.8中JVM把String常量池移入了堆中,同时取消了“永久代”,改用元空间代替(Metaspace)java中对String对象特殊对待,所以在heap区域分成了两块,一块是字符串常量池(S ...
- BZOJ3653谈笑风生——可持久化线段树+dfs序
题目描述 设T 为一棵有根树,我们做如下的定义: ? 设a和b为T 中的两个不同节点.如果a是b的祖先,那么称“a比b不知道 高明到哪里去了”. ? 设a 和 b 为 T 中的两个不同节点.如果 a ...
- 最短路径——SPFA算法
一.前提引入 我们学过了Bellman-Ford算法,现在又要提出这个SPFA算法,为什么呢? 考虑一个随机图(点和边随机生成),除了已确定最短路的顶点与尚未确定最短路的顶点之间的边,其它的边所做的都 ...
- C# SFTP
最近需要通过SFTP来获取文件. 下面是我整理的相关信息. 以下只是大致代码,大家看看就行了. 我的是window service.每天会去下载文件. 1 下载 Renci.SshNet 通过 nu ...
- day25 初始面向对象
类 有具体规范,无具体值对象 有具体的值 dict 类d = {"":""} 对象 自定义一个类格式: class 类名: # 可以跟()或者不跟 属性 = ' ...
- MT【89】三棱锥的体积公式
评:已知对棱的距离以及此对棱边长,夹角就可以求出该三棱锥的体积.这把三棱锥的放到平行六面体里的做法是非常常见的.
- LOJ #2721. 「NOI2018」屠龙勇士(set + exgcd)
题意 LOJ #2721. 「NOI2018」屠龙勇士 题解 首先假设每条龙都可以打死,每次拿到的剑攻击力为 \(ATK\) . 这个需要支持每次插入一个数,查找比一个 \(\le\) 数最大的数(或 ...
- 集成Android免费语音合成功能(在线、离线、离在线融合)
集成Android免费语音合成功能(在线.离线.离在线融合),有这一篇文章就够了(离线)集成Android免费语音合成功能(在线.离线.离在线融合),有这一篇文章就够了(离在线融合) 转眼间,大半年没 ...