] (kernel_init+0x0/0x284) from [] (do_exit+0x0/0x710)

Code: e24dd00c e2505000 e1a07001 e1a06002 (0a000019)

---[ end trace 119d4c116316149b ]---

Kernel panic - not syncing: Attempted to kill init!

可以看到内核是启动起来了!但是还文件系统等还没完全启动,所以还需要进行修改!

4:添加内核对yaffs2的支持

上面可以看到,没有对yaffs2文件系统的支持,现在就添加yaffs2的支持

4.1解压yaffs2文件包

# tar -xzvf yaffs2.tar.gz

# ls

2.6.24.at91.2-exp.patch.gz  2.6.24-at91.patch.gz  linux-2.6.24  linux-2.6.24.tar.bz2  yaffs2  yaffs2.tar.gz

# cd linux-2.6.24/fs

# mkdir yaffs

# pwd

/workdir/atmel/at91sam9260/kernel/linux-2.6.24/fs/yaffs

# cp ../../../yaffs/*.h .

# cp ../../../yaffs/*.c .

# ls

devextras.h        yaffs_fs.c            yaffs_mtdif1.h  yaffs_nandemul2k.h   yaffs_qsort.c         yportenv.h

moduleconfig.h     yaffs_getblockinfo.h  yaffs_mtdif2.c  yaffs_nand.h         yaffs_qsort.h

yaffs_checkptrw.c  yaffs_guts.c          yaffs_mtdif2.h  yaffs_packedtags1.c  yaffs_tagscompat.c

yaffs_checkptrw.h  yaffs_guts.h          yaffs_mtdif.c   yaffs_packedtags1.h  yaffs_tagscompat.h

yaffs_ecc.c        yaffsinterface.h      yaffs_mtdif.h   yaffs_packedtags2.c  yaffs_tagsvalidity.c

yaffs_ecc.h        yaffs_mtdif1.c        yaffs_nand.c    yaffs_packedtags2.h  yaffs_tagsvalidity.h

# cp ../../../yaffs2/Makefile.kernel .

# ls

devextras.h        yaffs_ecc.h           yaffs_mtdif1.c  yaffs_nand.c         yaffs_packedtags2.h   yaffs_tagsvalidity.h

Makefile.kernel    yaffs_fs.c            yaffs_mtdif1.h  yaffs_nandemul2k.h   yaffs_qsort.c         yportenv.h

moduleconfig.h     yaffs_getblockinfo.h  yaffs_mtdif2.c  yaffs_nand.h         yaffs_qsort.h

yaffs_checkptrw.c  yaffs_guts.c          yaffs_mtdif2.h  yaffs_packedtags1.c  yaffs_tagscompat.c

yaffs_checkptrw.h  yaffs_guts.h          yaffs_mtdif.c   yaffs_packedtags1.h  yaffs_tagscompat.h

yaffs_ecc.c        yaffsinterface.h      yaffs_mtdif.h   yaffs_packedtags2.c  yaffs_tagsvalidity.c

# mv Makefile.kernel Makefile

# ls

devextras.h        yaffs_ecc.h           yaffs_mtdif1.c  yaffs_nand.c         yaffs_packedtags2.h   yaffs_tagsvalidity.h

Makefile           yaffs_fs.c            yaffs_mtdif1.h  yaffs_nandemul2k.h   yaffs_qsort.c         yportenv.h

moduleconfig.h     yaffs_getblockinfo.h  yaffs_mtdif2.c  yaffs_nand.h         yaffs_qsort.h

yaffs_checkptrw.c  yaffs_guts.c          yaffs_mtdif2.h  yaffs_packedtags1.c  yaffs_tagscompat.c

yaffs_checkptrw.h  yaffs_guts.h          yaffs_mtdif.c   yaffs_packedtags1.h  yaffs_tagscompat.h

yaffs_ecc.c        yaffsinterface.h      yaffs_mtdif.h   yaffs_packedtags2.c  yaffs_tagsvalidity.c

# pwd

/workdir/atmel/at91sam9260/kernel/linux-2.6.24/fs/yaffs2

# cp ../../../yaffs2/Kconfig .

# cd ..

# pwd

/workdir/atmel/at91sam9260/kernel/linux-2.6.24/fs

119行开始:

obj-$(CONFIG_OCFS2_FS)  += ocfs2/

obj-$(CONFIG_GFS2_FS)           += gfs2/

obj-$(CONFIG_YAFFS_FS)           += yaffs/

# vim Kconfig

修改2119行:

endif # NETWORK_FILESYSTEMS

source "fs/yaffs2/Kconfig"

if BLOCK

menu "Partition Types"

# make distclean

# make at91sam9260ek_defconfig

# make menuconfig

修改配置,去选择支持yaffs!

Device Drivers --> Memory Technology Device(MTD) support

File Systems --> YAFFS2 file system support

Autoselect yaffs2 format

Disable lazy loading

Turn off wide tnodes

Kernel Features --> Use the ARM EABI to compile the kernel

Allow ole ABI binaries to run with this kernel

# make uImage

# pwd

/workdir/atmel/at91sam9260/kernel/yaffs2/utils

# ls

Makefile  mkyaffs2image.c  mkyaffsimage.c

# make

# ls

Makefile       mkyaffs2image.c  mkyaffsimage    mkyaffsimage.o  yaffs_ecc.o          yaffs_packedtags2.o   yaffs_tagsvalidity.o

mkyaffs2image  mkyaffs2image.o  mkyaffsimage.c  yaffs_ecc.c     yaffs_packedtags2.c  yaffs_tagsvalidity.c

然后将这个"mkyaffs2image"目录添加到环境变量里面去!

# cd ../../../../

# ls

AT91Bootstrap  crosstool  filesyetem  kernel  setenv-9260  Source Insight Workdir  u-boot

然后就得到支持yaffs2的内核了!

arm9260 linux编译,at91sam9260-linux建立最小系统相关推荐

  1. spdlog linux编译出错,Linux下编写Makefile引入第三方库

    Linux下编写Makefile引入第三方库 前言:一直在使用CmakaList 生成Makefile文件,其实很少去写Makefile,但是最近帮朋友处理了一个Makefile引入第三方库的问题,就 ...

  2. arm9260 linux编译,at91sam9260 开发环境的建立

    Linux内核命令行有6个环境变量.如果即将达到或者已经超过了的话root=参数会没有传进去启动时会引发panics错误. 所以去看uboot的参数传递,没有! 现在去看下u-boot 配置内核 : ...

  3. linux编译blas,Linux系统CentOS 6.8上yum安装BLAS库

    Linux系统CentOS 6.8上yum安装BLAS库 BLAS是一个广泛应用到科学计算软件上面的库文件,在CentOS的软件库中已经有该软件的软件包,我们可以直接使用yum来安装. 1.1.查询C ...

  4. linux 编译openmp,Linux 系统中OpenMP

    转自:http://hi.baidu.com/linzch/blog/item/db3252fb6227c01e6c22eb21.html *怎么在Linux上运行OpenMP程序? > 只需要 ...

  5. linux 编译配置文件,Linux程序源码编译安装的configure配置详解

    Linux环境下,如果通过源代码编译安装程序的简单过程可以 描述为:./configure-->make-->make install.其中./configure配置脚本功能就是对你的系统 ...

  6. linux 编译.sh,Linux内核编译步骤

    linux系统内核编译步骤: 1,启动系统,引导linux系统,并以root用户名登录到linux系统. 2,准备内核源码,下载源码压缩包,并复制到目录/usr/src下. 3,建立编译链接,首先新内 ...

  7. linux编译ace,Linux下编译ACE

    操作系统:Centos4.7 ACE版本:ACE-6.0.2 安装过程: 下载ACE-6.0.2.tar.gz. 下载完成后将其解压tar -zxvf ACE-6.0.2.tar.gz用户登陆目录.我 ...

  8. linux编译blas,Linux下安装BLAS,CBLAS,LAPACK

    1.下载 BLAS,CBLAS:http://www.netlib.org/blas/ LAPACK:http://www.netlib.org/lapack/ 2.上传 将下载好的三个压缩文件上传到 ...

  9. linux编译准备,Linux 下编译指南

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 首先,我们需要获取最新的源码. 使用如下命令即可: git clone -b master --depth=1 https://github.com/Cl ...

最新文章

  1. 2440启动代码分析
  2. php socket 不能用,PHP无法用Socket方式连接MySQ
  3. iOS 使用符号断点定位警告约束警告-[LayoutConstraints] Unable to simultaneously satisfy constrai...
  4. 新手必看:揭秘德州扑克概率表
  5. php打印出前一天时间戳,使用php 获取时间今天明天昨天时间戳的详解
  6. pandas 设置多重索引_pandas dataframe多重索引常用操作
  7. Apache Flink Meetup 8.7 深圳站改为线上
  8. symbolicatecrash App Bug 分析工具
  9. JAVA计算机毕业设计在线购书商城系统Mybatis+源码+数据库+lw文档+系统+调试部署
  10. C++实现一个基于mfc的学生信息管理系统
  11. FatFs- 通用FAT文件系统模块
  12. APKTOOL打包方法
  13. P5167 xtq的神笔
  14. 怎么实现EDIUS中“老电影”特效的制作
  15. 自然人如何开发票-以广西为例
  16. 【docker 安装-环境初始化】
  17. 菜鸟修行之路----项目实战:微人事项目之项目概述
  18. 结构体的定义、初始化
  19. 安装mathtype时找不到文件mathpage.wil
  20. 简易数据库学习环境的搭建

热门文章

  1. pythonforandroid下载中文_通过python-for-android打包apk-Go语言中文社区
  2. Android编程规范
  3. ES6中的(...)运算符详细学习
  4. python读取csv求平均数_利用Python读取CSV文件并计算某一列的均值和方差
  5. 喜欢玩王者荣耀的有福了,用 Python 获取英雄皮肤壁纸
  6. 【问】SQL 2000数据库管理sa的密码怎么修改?
  7. 2022虎年全新头像框制作微信小程序源码下载
  8. LOL UVALive - 8521 —— 状压DP
  9. 老程序员被裁怎么办?他选择成为了自由职业者
  10. 我为什么all in了mfers