Linuxでは、NANDフラッシュは、キーデータ構造の説明を駆動します

S3C2410独自のデータ構造

  1. s3c2410_nand_set

構造体s3c2410_nand_set {

int型nr_chips; / *チップ数* /

int型nr_partitions; / *パーティションの数* /

文字*名; / *セット名* /

int型nr_map; / *また、チップ* /構造体mtd_partitionパーティションの物理的な数に根本的な論理、パーティションの/ *リスト* /

}。

 

  1. s3c2410_platform_and

構造体s3c2410_platform_nand {

/ * * /ナノ秒で、コントローラのすべての時間をタイミング情報を

 

int型tacls; / * CLE / ALE時間から* / int型twrph0のにnWE /にnOEに効果的な; / *にnWE /にnOE効果的な時間* /

int型twrph1; / *にnWE /にnOE非アクティブ時にCLE / ALEから解放* /

 

int型nr_sets; / * / *の数を設定します

構造体s3c2410_nand_setセット; / *セットリスト* /

 

/ *アクティブセット選択チップ数* /

無効(* select_chip)(構造体s3c2410_nand_set、int型のチップ);

}。

 

  1. でドライバ/ MTD / NAND / s3c2410.cでs3c2410_nand_mtd、構造体s3c2410_nand_mtd {

構造体mtd_info MTD; / * MTD情報* /

構造体nand_chipチップ; / * NANDフラッシュチップの情報* /構造体設定s3c2410_nand_set; / * NANDフラッシュセット* /構造体s3c2410_nand_info *情報; / * NANDフラッシュ情報* / int型scan_res。

}。

 

  1. s3c2410_nand_info

構造体s3c2410_nand_info {

/ * MTD情報* /

構造体nand_hw_controlコントローラ; / *ハードウェアコントローラ* /構造体s3c2410_nand_mtd *のMTD; / * MTDデバイステーブル* /構造体s3c2410_platform_nandプラットフォーム; / * NAND型プラットフォームデバイス* /

 

 

/* 機器情報 */

 

構造体デバイス

*デバイス;

/ *ポインタデバイス* /

構造体のリソース

*エリア;

/ *ポインタリソース* /

構造体CLK

* CLK;

/ * NANDフラッシュクロック* /

無効IOMEM

int型

* regsは、

mtd_count;

/ *ベースアドレスレジスタ(論理アドレスマップ)* /

/ * MTD番号* /

unsigned char型

is_s3c2440;

 

}。

 

 

 

 

  1. 構造体CLK在アーチ/アーム/ machs3c2410 / clock.h中構造体CLK {

構造体LIST_HEADリスト; / *クロックノードリスト* /構造体モジュール*所有者; / *表示モジュール* /構造体のCLK *親; / *親ノード* /

constのchar *名; / *名前* /

int型のID; / *数* /

使用atomic_t; / *ユーザー数* / unsigned long型率; / *クロック・レート* / unsigned long型ctrlbit; / *制御ビット* /

INT(*イネーブル)(構造体のCLK *、INTイネーブル); / *クロック開く方法* /

}。

おすすめ

転載: www.cnblogs.com/fanweisheng/p/11106197.html