日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

linux提高nand速度,linux-2.6.31.1内核支持Nand Flash

發布時間:2025/3/20 linux 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 linux提高nand速度,linux-2.6.31.1内核支持Nand Flash 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

linux-2.6.31.1支持Nand Flash

目的:使NandFlash驅動同時支持64M, 256M或更高容量的NandFlash

將linux內核解壓在/opt目錄下,修改內核源碼文件,添加對Nand Flash的支持

1. 修改arch/arm/plat-s3c24xx/common-smdk.c文件110行:

將static struct mtd_partition smdk_default_nand_part[]結構體的內容替換成下面的

static? struct? mtd_partition??? smdk_default_nand_part[]? =?? {

#if?? defined(CONFIG_64M_NAND)

[0]? =?? {

.name?? =?? "boot",

.offset =?? 0,

.size?? =?? SZ_1M,

},

[1]? =?? {

.name?? =?? "kernel",

.offset =?? SZ_1M???? ?? SZ_128K,

.size?? =?? SZ_4M,

},

[2]? =?? {

.name?? =?? "yaffs2",

.offset =?? SZ_1M???? ?? SZ_128K???? ?? SZ_4M,

.size?? =?? SZ_64M????? -? SZ_4M???? -?? SZ_1M???? -? SZ_128K,

}

#elif? defined(CONFIG_256M_NAND)

[0]? =?? {

.name?? =?? "boot",

.offset =?? 0,

.size?? =?? SZ_1M,

},

[1]? =?? {

.name?? =?? "kernel",

.offset =?? SZ_1M???? ?? SZ_128K,

.size?? =?? SZ_4M,

},

[2] = {

.name?? = "yaffs2",

.offset = SZ_1M SZ_128K SZ_4M,

.size?? = SZ_256M - SZ_4M - SZ_1M - SZ_128K,

}

#endif

};

2. 修改Nand讀寫匹配時間,查芯片資料得到值,改成如下:

static struct s3c2410_platform_nand smdk_nand_info = {

.tacls?? ??? ?= 10,

.twrph0?? ??? ?= 25,

.twrph1?? ??? ?= 10,

.nr_sets?? ?= ARRAY_SIZE(smdk_nand_sets),

.sets?? ??? ?= smdk_nand_sets,

};

3. 修改Kconfig文件,增加NAND類型選擇項。修改driver/mtd/nand/Kconfig文件,在172行增加下面

choice

prompt? "Nand??? Flash? Capacity?? Select"

depends? on?? MTD

config? 64M_NAND

boolean?? "64M??? NAND???? For? TQ-2440"

depends? on?? MTD

config? 256M_NAND

boolean? "256M??? NAND???? For? TQ-2440"

depends?? on?? MTD

endchoice

4. 配置內核支持NandFlash

終端運行make menuconfig打開圖形配置界面

Device Drivers? --->

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

[*] MTD partitioning support

NAND Device Support? --->

NAND Flash support for Samsung S3C SoCs

[*] Samsung S3C NAND Hardware ECC

Nand Flash Capacity Select(256M NAND For TQ-2440)? --->

(X) 256M NAND For TQ-2440

5. 重新編譯內核

#make zImage

重新燒寫內核

啟動時如輸出:

S3C24XX NAND Driver, (c) 2004 Simtec Electronics

s3c24xx-nand s3c2440-nand: Tacls=1, 10ns Twrph0=3 30ns, Twrph1=1 10ns

s3c24xx-nand s3c2440-nand: NAND hardware ECC

NAND device: Manufacturer ID: 0xec, Chip ID: 0xda (Samsung NAND 256MiB 3,3V 8-bit)

Scanning device for bad blocks

Bad eraseblock 1283 at 0x00000a060000

Bad eraseblock 1539 at 0x00000c060000

Bad eraseblock 1618 at 0x00000ca40000

Bad eraseblock 1744 at 0x00000da00000

Creating 3 MTD partitions on "NAND 256MiB 3,3V 8-bit":

0x000000000000-0x000000100000 : "boot"

0x000000120000-0x000000520000 : "kernel"

0x000000520000-0x000010000000 : "yaffs2"

說明驅動配置成功了。

6. 參考資料

天祥電子《linux-2.6.31移植v1.5》

閱讀(2098) | 評論(0) | 轉發(1) |

與50位技術專家面對面20年技術見證,附贈技術全景圖

總結

以上是生活随笔為你收集整理的linux提高nand速度,linux-2.6.31.1内核支持Nand Flash的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。