.partitions = eilian240_nand_part,
.flash_bbt = 1, /* we use u-boot to create a BBT */
},
};
static struct s3c2410_platform_nand eilian240_nand_info __initdata = {
.tacls = 20,
.twrph0 = 60,
.twrph1 = 20,
.nr_sets = ARRAY_SIZE(eilian240_nand_sets),
.sets = eilian240_nand_sets,
.ignore_unset_ecc = 1,
};
将nand flash 设备注册到系统中
static struct platform_device *eilian240_devices[] __initdata = {
&s3c_device_ohci,
&s3c_device_lcd,
&s3c_device_wdt,
&s3c_device_i2c0,
&s3c_device_iis,
&s3c_device_nand,
};
传入eilian240_nand_info结构体初始化参数到内核中去
static void __init eilian240_machine_init(void)
{
s3c24xx_fb_set_platdata(&eilian240_fb_info);
s3c_i2c0_set_platdata(NULL);
s3c_nand_set_platdata(&eilian240_nand_info);
platform_add_devices(eilian240_devices, ARRAY_SIZE(eilian240_devices));
// smdk_machine_init();
}
加入必要的头文件
/*********nand*****/
#include
#include
#include
#include
#include
/*********nand*****/
保存退出
h)编译测试
root@bootloader:/home/eilian/development/Linux/linux-2.6.39# make uImage
等待很久!!!!!!!!
Kernel: arch/arm/boot/Image is ready
AS arch/arm/boot/compressed/head.o
GZIP arch/arm/boot/compressed/piggy.gzip
AS arch/arm/boot/compressed/piggy.gzip.o
CC arch/arm/boot/compressed/misc.o
CC arch/arm/boot/compressed/decompress.o
SHIPPED arch/arm/boot/compressed/lib1funcs.S
AS arch/arm/boot/compressed/lib1funcs.o
LD arch/arm/boot/compressed/vmlinux
OBJCOPY arch/arm/boot/zImage
Kernel: arch/arm/boot/zImage is ready
UIMAGE arch/arm/boot/uImage
Image Name: Linux-2.6.39
Created: Fri Dec 2 02:55:06 2011
Image Type: ARM Linux Kernel Image (uncompressed)
Data Size: 2144304 Bytes = 2094.05 kB = 2.04 MB
Load Address: 30008000
Entry Point: 30008000
Image arch/arm/boot/uImage is ready
root@bootloader:/home/eilian/development/Linux/linux-2.6.39# cparch/arm/boot/uImage /tftpboot
下载uImage到板子上运行
打开超级终端(我这已经将uboot烧入到NANDFLASH)
/*********************************************************************************************************************************
关注上面深蓝色字体哈。。是否发现点什么。。。