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 ...
随机推荐
- mysql学习笔记五 —— MHA
MySQL_MHA ABB(主从复制)-->MHA(实现mysql高可用.读写分离.脚本控制vip飘逸)-->haproxy(对slave集群实现分发,负载均衡)-->keepali ...
- python之多线程举例
# 多线程举例 from threading import Thread from threading import current_thread class messager(Thread): de ...
- C# 之抽象类和抽象方法
概述:abstract 关键字 抽象类不能被实例化,抽象方法不能有方法体,抽象类中的所有抽象方法必须在子类中重写(override ),一个抽象类可以同时包含抽象方法和非抽象方法. abstract ...
- python 模块之-sys
python 模块 sys import sys sys.argv # 参数,第一个参数是脚本的文件明,自定义参数为数组的第二个 sys.argv[1] sys.version # ...
- BZOJ2794[Poi2012]Cloakroom——离线+背包
题目描述 有n件物品,每件物品有三个属性a[i], b[i], c[i] (a[i]<b[i]).再给出q个询问,每个询问由非负整数m, k, s组成,问是否能够选出某些物品使得:1. 对于每个 ...
- MVC 多submit
直接上代码 3种情况: 第一种,由于form已经可以支持多个了.所以我们分成2个form来提交,submit会根据自己所在的form来提交当前表单的内容 @using (Html.BeginForm( ...
- codeforces 1B Spreadsheets
In the popular spreadsheets systems (for example, in Excel) the following numeration of columns is u ...
- 【题解】Atcoder ARC#96 F-Sweet Alchemy
首先,我们发现每一个节点所选择的次数不好直接算,因为要求一个节点被选择的次数大于等于父亲被选择的次数,且又要小于等于父亲被选择的次数 \(+D\).既然如此,考虑一棵差分的树,规定每一个节点被选择的次 ...
- Leetcode 268.缺失数字 By Python
给定一个包含 0, 1, 2, ..., n 中 n 个数的序列,找出 0 .. n 中没有出现在序列中的那个数. 示例 1: 输入: [3,0,1] 输出: 2 示例 2: 输入: [9,6,4,2 ...
- oracle导出导入数据库
一.给空表分配空间: 这一步一定要做,否则空表不能导出. 首先连接你要导出的库,在该库上执行以下sql: select 'alter table '||table_name||' allocate e ...