娇小w搡bbbb搡bbb,《第一次の人妻》,中国成熟妇女毛茸茸,边啃奶头边躁狠狠躁视频免费观看

基于Tiny 6410的內核移植 (NAND FLASH 、UBIFS篇)

發布者:DazzlingGaze最新更新時間:2024-08-12 來源: cnblogs關鍵字:Tiny  內核移植  NAND  FLASH  UBIFS 手機看文章 掃描二維碼
隨時隨地手機看文章

一、環境

1、開發板

Tiny6410  NAND: 2G  RAM: 256M  MLC

2、操作系統

Ubuntu10

3、交叉工具編譯鏈

arm-linux-gcc-4.5.1

 

二、下載內核源碼包

linux-2.6.38

 

三、解壓內核

tar  –jxvf  linux-2.6.38.tar.bz2 

我解壓的的路徑是: 

 

四、NAND FLASH移植

1、修改Makefile

 vim  Makefile

 將約191行改為:   

ARCH  ?   =   arm 

CROSS_COMPILE  ?  =  arm-linux-    

 

2、cp  arch/arm/configs/s3c6400_defconfig  .config

   忽略這一步的話,后面會找不到System Type

 

3、make  menuconfig

 

4、添加交叉工具編譯鏈的目錄

General setup  --->

(/opt/FriendlyARM/toolschain/4.5.1/bin/arm-linux-) Cross-compiler too

  System Type  --->

[*] MINI6410    (其余的可以去掉)

 

這樣編譯出來的內核是可以被uboot引導的,然后是增加nand flash支持

vi arch/arm/mach-s3c64xx/mach-mini6410.c
第117行
struct mtd_partition mini6410_nand_part[] = {
{
.name = 'Bootloader',
.offset = 0,
.size = (4 * 128 *SZ_1K),
.mask_flags = MTD_CAP_NANDFLASH,
},
{
.name = 'Kernel',
.offset = (4 * 128 *SZ_1K),
.size = (5*SZ_1M) ,
.mask_flags = MTD_CAP_NANDFLASH,
},
{
.name = 'File System',
.offset = MTDPART_OFS_APPEND,
.size = MTDPART_SIZ_FULL,
}
}; //update at 2011-8-26 經過測試發現,這里改完后根本不起作用,甚至將整個注釋也無妨,估計分區已經固死在后面的s3c_nand_mlc.fo中

 

 

拷貝友善光盤的NDND FLASH 驅動

drivers/mtd/nand/s3c_nand.c

arch/arm/plat-samsung/include/plat/regs-nand.h

drivers/mtd/nand/s3c_nand_mlc.fo

 

然后修改drivers/mtd/nand/Kconfig和drivers/mtd/nand/Makefile文件

在drivers/mtd/nand/Kconfig  238行增加(注意:進格要用Tab鍵)

 

config MTD_NAND_S3C
tristate 'NAND Flash support for S3C SoC'
depends on (ARCH_S3C64XX || ARCH_S5P64XX || ARCH_S5PC1XX) && MTD_NAND
help
This enables the NAND flash controller on the S3C.

No board specfic support is done by this driver, each board
must advertise a platform_device for the driver to attach.

config MTD_NAND_S3C_DEBUG
bool 'S3C NAND driver debug'
depends on MTD_NAND_S3C
help
Enable debugging of the S3C NAND driver

configMTD_NAND_S3C_HWECC
bool 'S3C NAND Hardware ECC'
depends on MTD_NAND_S3C
help
Enable the use of the S3C's internal ECC generator when
using NAND. Early versions of the chip have had problems with
incorrect ECC generation, and if using these, the default of
software ECC is preferable.

If you lay down a device with the hardware ECC, then you will
currently not be able to switch to software, as there is no
implementation for ECC method used by the S3C


drivers/mtd/nand/Makefile中20行增加
obj-$(CONFIG_MTD_NAND_S3C) += s3c_nand.o

末尾再增加
S3C_NAND_MLC_SRC = $(shell ls drivers/mtd/nand/s3c_nand_mlc.c 2>/dev/null)
ifeq ($(S3C_NAND_MLC_SRC),)
obj-$(CONFIG_MTD_NAND_S3C) += s3c_nand_mlc.fo
else
obj-$(CONFIG_MTD_NAND_S3C) += s3c_nand_mlc.o
endif

然后再make menuconfig
Device Drivers--->
<*> Memory Technology Device (MTD) support --->
[*] MTD partitioning support
[*] Command line partition table parsing
<*> Direct char device access to MTD devices
<*> Caching block device access to MTD devices
<*> NAND Device Support --->
< > NAND Flash support for Samsung S3C SoCs 去掉不要選
<*> NAND Flash support for S3C SoC
[*] S3C NAND Hardware ECC

make zImage

 

五、內核添加UBIFS

1、配置內核支持UBIFS

Device Drivers  --->

<*> Memory Technology Device (MTD) support  --->

<*>   Enable UBI - Unsorted block images  --->

2、配置MTD支持UBI接口

File systems  --->

[*] Miscellaneous filesystems  --->

<*>   UBIFS file system support

3、make

4、下載測試

 

只要出現正常內核分區就說明nand 驅動可以用了。


關鍵字:Tiny  內核移植  NAND  FLASH  UBIFS 引用地址:基于Tiny 6410的內核移植 (NAND FLASH 、UBIFS篇)

上一篇:mini6410 2.6.38移植 USB
下一篇:6410 spi 設備驅動

小廣播
設計資源 培訓 開發板 精華推薦

最新單片機文章
何立民專欄 單片機及嵌入式寶典

北京航空航天大學教授,20余年來致力于單片機與嵌入式系統推廣工作。

 
EEWorld訂閱號

 
EEWorld服務號

 
汽車開發圈

 
機器人開發圈

電子工程世界版權所有 京ICP證060456號 京ICP備10001474號-1 電信業務審批[2006]字第258號函 京公網安備 11010802033920號 Copyright ? 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
主站蜘蛛池模板: 阿坝| 定边县| 荥经县| 稷山县| 维西| 赫章县| 清镇市| 三门县| 奉贤区| 麟游县| 图们市| 绵竹市| 黄骅市| 宣恩县| 武安市| 凤台县| 岳阳县| 桐梓县| 嵩明县| 鄯善县| 抚顺市| 秭归县| 德令哈市| 延吉市| 庄河市| 准格尔旗| 淮北市| 涟水县| 兴化市| 清河县| 呼和浩特市| 苏尼特左旗| 内黄县| 芜湖县| 运城市| 宁河县| 道真| 增城市| 济源市| 新郑市| 池州市|