Lines Matching full:chip

74 #define CHIP_SET_CLE(chip) { chip = chip; }  argument
75 #define CHIP_CLR_CLE(chip) {} argument
76 #define CHIP_SET_ALE(chip) {} argument
77 #define CHIP_CLR_ALE(chip) {} argument
78 #define CHIP_SET_NCS(chip) {} argument
79 #define CHIP_CLR_NCS(chip) {} argument
80 #define CHIP_BUSY(chip) {} argument
81 #define CHIP_READY(chip) {} argument
82 #define WRITE_COMMAND(chip, cmd) {} argument
83 #define WRITE_DATA_ADDR(chip, block, page, offset) {} argument
84 #define WRITE_ERASE_ADDR(chip, block) {} argument
85 #define WRITE_DATA(chip, data, len) {} argument
86 #define READ_DATA(chip, data, len) {} argument
106 struct my_nand_chip *chip = (struct my_nand_chip *) dev->attr->_private; in nand_read_page() local
108 CHIP_CLR_NCS(chip); in nand_read_page()
110 CHIP_SET_CLE(chip); in nand_read_page()
111 WRITE_COMMAND(chip, NAND_CMD_READ0); in nand_read_page()
112 CHIP_CLR_CLE(chip); in nand_read_page()
113 CHIP_SET_ALE(chip); in nand_read_page()
114 WRITE_DATA_ADDR(chip, block, page, 0); in nand_read_page()
115 CHIP_CLR_ALE(chip); in nand_read_page()
116 READ_DATA(chip, data, data_len); in nand_read_page()
123 CHIP_SET_CLE(chip); in nand_read_page()
124 WRITE_COMMAND(chip, NAND_CMD_READOOB); in nand_read_page()
125 CHIP_CLR_CLE(chip); in nand_read_page()
126 CHIP_SET_ALE(chip); in nand_read_page()
127 WRITE_DATA_ADDR(chip, block, page, dev->attr->page_data_size); in nand_read_page()
128 CHIP_CLR_ALE(chip); in nand_read_page()
129 READ_DATA(chip, spare, spare_len); in nand_read_page()
137 CHIP_SET_CLE(chip); in nand_read_page()
138 WRITE_COMMAND(chip, NAND_CMD_READOOB); in nand_read_page()
139 CHIP_CLR_CLE(chip); in nand_read_page()
140 CHIP_SET_ALE(chip); in nand_read_page()
141 WRITE_DATA_ADDR(chip, block, page, dev->attr->page_data_size + attr->block_status_offs); in nand_read_page()
142 CHIP_CLR_ALE(chip); in nand_read_page()
143 READ_DATA(chip, &val, 1); in nand_read_page()
150 CHIP_SET_NCS(chip); in nand_read_page()
161 struct my_nand_chip *chip = (struct my_nand_chip *) dev->attr->_private; in nand_write_page() local
163 CHIP_CLR_NCS(chip); in nand_write_page()
166 CHIP_SET_CLE(chip); in nand_write_page()
167 WRITE_COMMAND(chip, NAND_CMD_READ0); in nand_write_page()
168 WRITE_COMMAND(chip, NAND_CMD_SEQIN); in nand_write_page()
169 CHIP_CLR_CLE(chip); in nand_write_page()
170 CHIP_SET_ALE(chip); in nand_write_page()
171 WRITE_DATA_ADDR(chip, block, page, 0); in nand_write_page()
172 CHIP_CLR_ALE(chip); in nand_write_page()
173 CHIP_BUSY(chip); in nand_write_page()
174 WRITE_DATA(chip, data, data_len); in nand_write_page()
178 CHIP_SET_CLE(chip); in nand_write_page()
179 WRITE_COMMAND(chip, NAND_CMD_PAGEPROG); in nand_write_page()
180 WRITE_COMMAND(chip, NAND_CMD_STATUS); in nand_write_page()
181 CHIP_CLR_CLE(chip); in nand_write_page()
182 CHIP_READY(chip); in nand_write_page()
183 READ_DATA(chip, &val, 1); in nand_write_page()
193 CHIP_SET_CLE(chip); in nand_write_page()
194 WRITE_COMMAND(chip, NAND_CMD_READOOB); in nand_write_page()
195 WRITE_COMMAND(chip, NAND_CMD_SEQIN); in nand_write_page()
196 CHIP_CLR_CLE(chip); in nand_write_page()
197 CHIP_SET_ALE(chip); in nand_write_page()
198 WRITE_DATA_ADDR(chip, block, page, dev->attr->page_data_size); in nand_write_page()
199 CHIP_CLR_ALE(chip); in nand_write_page()
200 CHIP_BUSY(chip); in nand_write_page()
202 WRITE_DATA(chip, spare, spare_len); in nand_write_page()
203 CHIP_SET_CLE(chip); in nand_write_page()
204 WRITE_COMMAND(chip, NAND_CMD_PAGEPROG); in nand_write_page()
205 WRITE_COMMAND(chip, NAND_CMD_STATUS); in nand_write_page()
206 CHIP_CLR_CLE(chip); in nand_write_page()
207 CHIP_READY(chip); in nand_write_page()
208 READ_DATA(chip, &val, 1); in nand_write_page()
214 CHIP_SET_CLE(chip); in nand_write_page()
215 WRITE_COMMAND(chip, NAND_CMD_READOOB); in nand_write_page()
216 WRITE_COMMAND(chip, NAND_CMD_SEQIN); in nand_write_page()
217 CHIP_CLR_CLE(chip); in nand_write_page()
218 CHIP_SET_ALE(chip); in nand_write_page()
219 WRITE_DATA_ADDR(chip, block, page, dev->attr->page_data_size + attr->block_status_offs); in nand_write_page()
220 CHIP_CLR_ALE(chip); in nand_write_page()
221 CHIP_BUSY(chip); in nand_write_page()
223 WRITE_DATA(chip, &val, 1); in nand_write_page()
224 CHIP_SET_CLE(chip); in nand_write_page()
225 WRITE_COMMAND(chip, NAND_CMD_PAGEPROG); in nand_write_page()
226 WRITE_COMMAND(chip, NAND_CMD_STATUS); in nand_write_page()
227 CHIP_CLR_CLE(chip); in nand_write_page()
228 CHIP_READY(chip); in nand_write_page()
229 READ_DATA(chip, &val, 1); in nand_write_page()
234 CHIP_SET_NCS(chip); in nand_write_page()
242 struct my_nand_chip *chip = (struct my_nand_chip *) dev->attr->_private; in nand_erase_block() local
244 CHIP_CLR_NCS(chip); in nand_erase_block()
246 CHIP_SET_CLE(chip); in nand_erase_block()
247 WRITE_COMMAND(chip, NAND_CMD_ERASE1); in nand_erase_block()
248 CHIP_CLR_CLE(chip); in nand_erase_block()
249 CHIP_SET_ALE(chip); in nand_erase_block()
250 WRITE_ERASE_ADDR(chip, blcok); in nand_erase_block()
251 CHIP_CLR_ALE(chip); in nand_erase_block()
252 CHIP_SET_CLE(chip); in nand_erase_block()
253 WRITE_COMMAND(chip, NAND_CMD_ERASE2); in nand_erase_block()
254 WRITE_COMMAND(chip, NAND_CMD_STATUS); in nand_erase_block()
255 CHIP_CLR_CLE(chip); in nand_erase_block()
256 CHIP_READY(chip); in nand_erase_block()
257 READ_DATA(chip, &val, 1); in nand_erase_block()
259 CHIP_SET_NCS(chip); in nand_erase_block()
270 struct my_nand_chip *chip = (struct my_nand_chip *) dev->attr->_private; in nand_init_flash() local
272 if (!chip->inited) { in nand_init_flash()
273 // setup chip I/O address, setup NAND flash controller ... etc. in nand_init_flash()
274 // chip->IOR_ADDR = 0xF0000000 in nand_init_flash()
275 // chip->IOW_ADDR = 0xF0000000 in nand_init_flash()
276 chip->inited = U_TRUE; in nand_init_flash()
284 struct my_nand_chip *chip = (struct my_nand_chip *) dev->attr->_private; in nand_release_flash() local
286 chip = chip; in nand_release_flash()
335 static void init_nand_chip(struct my_nand_chip *chip) in init_nand_chip() argument
337 // init chip IO address, etc. in init_nand_chip()