Lines Matching refs:map
41 struct map_info *map, struct cfi_private *cfi) in cfi_build_cmd_addr() argument
43 unsigned bankwidth = map_bankwidth(map); in cfi_build_cmd_addr()
67 map_word cfi_build_cmd(u_long cmd, struct map_info *map, struct cfi_private *cfi) in cfi_build_cmd() argument
78 if (map_bankwidth_is_large(map)) { in cfi_build_cmd()
80 words_per_bus = (map_bankwidth(map)) / wordwidth; // i.e. normally 1 in cfi_build_cmd()
82 wordwidth = map_bankwidth(map); in cfi_build_cmd()
86 chip_mode = map_bankwidth(map) / cfi_interleave(cfi); in cfi_build_cmd()
87 chips_per_word = wordwidth * cfi_interleave(cfi) / map_bankwidth(map); in cfi_build_cmd()
97 onecmd = cpu_to_cfi16(map, cmd); in cfi_build_cmd()
100 onecmd = cpu_to_cfi32(map, cmd); in cfi_build_cmd()
130 unsigned long cfi_merge_status(map_word val, struct map_info *map, in cfi_merge_status() argument
141 if (map_bankwidth_is_large(map)) { in cfi_merge_status()
143 words_per_bus = (map_bankwidth(map)) / wordwidth; // i.e. normally 1 in cfi_merge_status()
145 wordwidth = map_bankwidth(map); in cfi_merge_status()
149 chip_mode = map_bankwidth(map) / cfi_interleave(cfi); in cfi_merge_status()
150 chips_per_word = wordwidth * cfi_interleave(cfi) / map_bankwidth(map); in cfi_merge_status()
179 res = cfi16_to_cpu(map, res); in cfi_merge_status()
182 res = cfi32_to_cpu(map, res); in cfi_merge_status()
198 struct map_info *map, struct cfi_private *cfi, in cfi_send_gen_cmd() argument
202 uint32_t addr = base + cfi_build_cmd_addr(cmd_addr, map, cfi); in cfi_send_gen_cmd()
203 val = cfi_build_cmd(cmd, map, cfi); in cfi_send_gen_cmd()
206 *prev_val = map_read(map, addr); in cfi_send_gen_cmd()
208 map_write(map, val, addr); in cfi_send_gen_cmd()
214 int __xipram cfi_qry_present(struct map_info *map, __u32 base, in cfi_qry_present() argument
221 qry[0] = cfi_build_cmd('Q', map, cfi); in cfi_qry_present()
222 qry[1] = cfi_build_cmd('R', map, cfi); in cfi_qry_present()
223 qry[2] = cfi_build_cmd('Y', map, cfi); in cfi_qry_present()
225 val[0] = map_read(map, base + osf*0x10); in cfi_qry_present()
226 val[1] = map_read(map, base + osf*0x11); in cfi_qry_present()
227 val[2] = map_read(map, base + osf*0x12); in cfi_qry_present()
229 if (!map_word_equal(map, qry[0], val[0])) in cfi_qry_present()
232 if (!map_word_equal(map, qry[1], val[1])) in cfi_qry_present()
235 if (!map_word_equal(map, qry[2], val[2])) in cfi_qry_present()
242 int __xipram cfi_qry_mode_on(uint32_t base, struct map_info *map, in cfi_qry_mode_on() argument
245 cfi_send_gen_cmd(0xF0, 0, base, map, cfi, cfi->device_type, NULL); in cfi_qry_mode_on()
246 cfi_send_gen_cmd(0x98, 0x55, base, map, cfi, cfi->device_type, NULL); in cfi_qry_mode_on()
247 if (cfi_qry_present(map, base, cfi)) in cfi_qry_mode_on()
251 cfi_send_gen_cmd(0xF0, 0, base, map, cfi, cfi->device_type, NULL); in cfi_qry_mode_on()
252 cfi_send_gen_cmd(0xFF, 0, base, map, cfi, cfi->device_type, NULL); in cfi_qry_mode_on()
253 cfi_send_gen_cmd(0x98, 0x55, base, map, cfi, cfi->device_type, NULL); in cfi_qry_mode_on()
254 if (cfi_qry_present(map, base, cfi)) in cfi_qry_mode_on()
257 cfi_send_gen_cmd(0xF0, 0, base, map, cfi, cfi->device_type, NULL); in cfi_qry_mode_on()
258 cfi_send_gen_cmd(0x98, 0x555, base, map, cfi, cfi->device_type, NULL); in cfi_qry_mode_on()
259 if (cfi_qry_present(map, base, cfi)) in cfi_qry_mode_on()
262 cfi_send_gen_cmd(0xF0, 0, base, map, cfi, cfi->device_type, NULL); in cfi_qry_mode_on()
263 cfi_send_gen_cmd(0xAA, 0x5555, base, map, cfi, cfi->device_type, NULL); in cfi_qry_mode_on()
264 cfi_send_gen_cmd(0x55, 0x2AAA, base, map, cfi, cfi->device_type, NULL); in cfi_qry_mode_on()
265 cfi_send_gen_cmd(0x98, 0x5555, base, map, cfi, cfi->device_type, NULL); in cfi_qry_mode_on()
266 if (cfi_qry_present(map, base, cfi)) in cfi_qry_mode_on()
269 cfi_send_gen_cmd(0xF0, 0, base, map, cfi, cfi->device_type, NULL); in cfi_qry_mode_on()
270 cfi_send_gen_cmd(0xAA, 0x555, base, map, cfi, cfi->device_type, NULL); in cfi_qry_mode_on()
271 cfi_send_gen_cmd(0x55, 0x2AA, base, map, cfi, cfi->device_type, NULL); in cfi_qry_mode_on()
272 cfi_send_gen_cmd(0x98, 0x555, base, map, cfi, cfi->device_type, NULL); in cfi_qry_mode_on()
273 if (cfi_qry_present(map, base, cfi)) in cfi_qry_mode_on()
280 void __xipram cfi_qry_mode_off(uint32_t base, struct map_info *map, in cfi_qry_mode_off() argument
283 cfi_send_gen_cmd(0xF0, 0, base, map, cfi, cfi->device_type, NULL); in cfi_qry_mode_off()
284 cfi_send_gen_cmd(0xFF, 0, base, map, cfi, cfi->device_type, NULL); in cfi_qry_mode_off()
288 cfi_send_gen_cmd(0xF0, 0, base, map, cfi, cfi->device_type, NULL); in cfi_qry_mode_off()
293 __xipram cfi_read_pri(struct map_info *map, __u16 adr, __u16 size, const char* name) in cfi_read_pri() argument
295 struct cfi_private *cfi = map->fldrv_priv; in cfi_read_pri()
315 cfi_qry_mode_on(base, map, cfi); in cfi_read_pri()
319 cfi_read_query(map, base+((adr+i)*ofs_factor)); in cfi_read_pri()
323 cfi_qry_mode_off(base, map, cfi); in cfi_read_pri()
326 (void) map_read(map, base); in cfi_read_pri()
338 struct map_info *map = mtd->priv; in cfi_fixup() local
339 struct cfi_private *cfi = map->fldrv_priv; in cfi_fixup()
355 struct map_info *map = mtd->priv; in cfi_varsize_frob() local
356 struct cfi_private *cfi = map->fldrv_priv; in cfi_varsize_frob()
413 ret = (*frob)(map, &cfi->chips[chipnum], adr, size, thunk); in cfi_varsize_frob()