Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Fields
onenand_chip Struct Reference

#include <onenand.h>

Data Fields

void __iomembase
 
unsigned dies
 
unsigned boundary [MAX_DIES]
 
loff_t diesize [MAX_DIES]
 
unsigned int chipsize
 
unsigned int device_id
 
unsigned int version_id
 
unsigned int technology
 
unsigned int density_mask
 
unsigned int options
 
unsigned int erase_shift
 
unsigned int page_shift
 
unsigned int page_mask
 
unsigned int writesize
 
unsigned int bufferram_index
 
struct onenand_bufferram bufferram [MAX_BUFFERRAM]
 
int(* command )(struct mtd_info *mtd, int cmd, loff_t address, size_t len)
 
int(* wait )(struct mtd_info *mtd, int state)
 
int(* bbt_wait )(struct mtd_info *mtd, int state)
 
void(* unlock_all )(struct mtd_info *mtd)
 
int(* read_bufferram )(struct mtd_info *mtd, int area, unsigned char *buffer, int offset, size_t count)
 
int(* write_bufferram )(struct mtd_info *mtd, int area, const unsigned char *buffer, int offset, size_t count)
 
unsigned short(* read_word )(void __iomem *addr)
 
void(* write_word )(unsigned short value, void __iomem *addr)
 
void(* mmcontrol )(struct mtd_info *mtd, int sync_read)
 
int(* chip_probe )(struct mtd_info *mtd)
 
int(* block_markbad )(struct mtd_info *mtd, loff_t ofs)
 
int(* scan_bbt )(struct mtd_info *mtd)
 
int(* enable )(struct mtd_info *mtd)
 
int(* disable )(struct mtd_info *mtd)
 
struct completion complete
 
int irq
 
spinlock_t chip_lock
 
wait_queue_head_t wq
 
flstate_t state
 
unsigned charpage_buf
 
unsigned charoob_buf
 
int subpagesize
 
struct nand_ecclayoutecclayout
 
voidbbm
 
voidpriv
 
unsigned int ongoing
 

Detailed Description

struct onenand_chip - OneNAND Private Flash Chip Data : [BOARDSPECIFIC] address to access OneNAND : [INTERN][FLEX-ONENAND] number of dies on chip : [INTERN][FLEX-ONENAND] Boundary of the dies : [INTERN][FLEX-ONENAND] Size of the dies : [INTERN] the size of one chip for multichip arrays FIXME For Flex-OneNAND, chipsize holds maximum possible device size ie when all blocks are considered MLC : [INTERN] device ID : chip density, used for DDP devices : [INTERN] version ID : [BOARDSPECIFIC] various chip options. They can partly be set to inform onenand_scan about : [INTERN] number of address bits in a block : [INTERN] number of address bits in a page : [INTERN] a page per block mask : [INTERN] a real page size : [INTERN] BufferRAM index : [INTERN] BufferRAM info : [REPLACEABLE] hardware specific function for read short : [REPLACEABLE] hardware specific function for write short : [REPLACEABLE] hardware specific function for writing commands to the chip : [REPLACEABLE] hardware specific function for wait on ready : [REPLACEABLE] hardware specific function for bbt wait on ready : [REPLACEABLE] hardware specific function for unlock all : [REPLACEABLE] hardware specific function for BufferRAM Area : [REPLACEABLE] hardware specific function for BufferRAM Area : [REPLACEABLE] hardware specific function for read register of OneNAND : [REPLACEABLE] hardware specific function for write register of OneNAND : sync burst read function : [REPLACEABLE] hardware specific function for chip probe : function to mark a block as bad : [REPLACEALBE] hardware specific function for scanning Bad block Table : [INTERN] spinlock used to protect access to this structure and the chip : [INTERN] wait queue to sleep on if a OneNAND operation is in progress : [INTERN] the current state of the OneNAND device : [INTERN] page main data buffer : [INTERN] page oob data buffer : [INTERN] holds the subpagesize : [REPLACEABLE] the default ecc placement scheme : [REPLACEABLE] pointer to Bad Block Management : [OPTIONAL] pointer to private chip date

Definition at line 87 of file onenand.h.

Field Documentation

void __iomem* base

Definition at line 88 of file onenand.h.

void* bbm

Definition at line 139 of file onenand.h.

int(* bbt_wait)(struct mtd_info *mtd, int state)

Definition at line 109 of file onenand.h.

int(* block_markbad)(struct mtd_info *mtd, loff_t ofs)

Definition at line 119 of file onenand.h.

unsigned boundary[MAX_DIES]

Definition at line 90 of file onenand.h.

Definition at line 105 of file onenand.h.

unsigned int bufferram_index

Definition at line 104 of file onenand.h.

spinlock_t chip_lock

Definition at line 127 of file onenand.h.

Definition at line 118 of file onenand.h.

unsigned int chipsize

Definition at line 92 of file onenand.h.

Definition at line 107 of file onenand.h.

struct completion complete

Definition at line 124 of file onenand.h.

unsigned int density_mask

Definition at line 96 of file onenand.h.

unsigned int device_id

Definition at line 93 of file onenand.h.

unsigned dies

Definition at line 89 of file onenand.h.

loff_t diesize[MAX_DIES]

Definition at line 91 of file onenand.h.

int(* disable)(struct mtd_info *mtd)

Definition at line 122 of file onenand.h.

struct nand_ecclayout* ecclayout

Definition at line 137 of file onenand.h.

int(* enable)(struct mtd_info *mtd)

Definition at line 121 of file onenand.h.

unsigned int erase_shift

Definition at line 99 of file onenand.h.

int irq

Definition at line 125 of file onenand.h.

void(* mmcontrol)(struct mtd_info *mtd, int sync_read)

Definition at line 117 of file onenand.h.

unsigned int ongoing

Definition at line 149 of file onenand.h.

unsigned char* oob_buf

Definition at line 131 of file onenand.h.

unsigned int options

Definition at line 97 of file onenand.h.

unsigned char* page_buf

Definition at line 130 of file onenand.h.

unsigned int page_mask

Definition at line 101 of file onenand.h.

unsigned int page_shift

Definition at line 100 of file onenand.h.

Definition at line 141 of file onenand.h.

int(* read_bufferram)(struct mtd_info *mtd, int area, unsigned char *buffer, int offset, size_t count)

Definition at line 111 of file onenand.h.

unsigned short(* read_word)(void __iomem *addr)

Definition at line 115 of file onenand.h.

int(* scan_bbt)(struct mtd_info *mtd)

Definition at line 120 of file onenand.h.

Definition at line 129 of file onenand.h.

int subpagesize

Definition at line 136 of file onenand.h.

unsigned int technology

Definition at line 95 of file onenand.h.

void(* unlock_all)(struct mtd_info *mtd)

Definition at line 110 of file onenand.h.

unsigned int version_id

Definition at line 94 of file onenand.h.

int(* wait)(struct mtd_info *mtd, int state)

Definition at line 108 of file onenand.h.

Definition at line 128 of file onenand.h.

int(* write_bufferram)(struct mtd_info *mtd, int area, const unsigned char *buffer, int offset, size_t count)

Definition at line 113 of file onenand.h.

void(* write_word)(unsigned short value, void __iomem *addr)

Definition at line 116 of file onenand.h.

unsigned int writesize

Definition at line 102 of file onenand.h.


The documentation for this struct was generated from the following file: