Lines Matching defs:cfi
12 #include <linux/mtd/cfi.h>
19 struct cfi_private *cfi);
24 struct cfi_private *cfi;
27 cfi = genprobe_ident_chips(map, cp);
29 if (!cfi)
32 map->fldrv_priv = cfi;
51 kfree(cfi->cfiq);
52 kfree(cfi);
61 struct cfi_private cfi;
67 memset(&cfi, 0, sizeof(cfi));
71 if (!genprobe_new_chip(map, cp, &cfi)) {
82 if (cfi.cfiq->NumEraseRegions == 0) {
84 kfree(cfi.cfiq);
88 cfi.chipshift = cfi.cfiq->DevSize;
90 if (cfi_interleave_is_1(&cfi)) {
92 } else if (cfi_interleave_is_2(&cfi)) {
93 cfi.chipshift++;
94 } else if (cfi_interleave_is_4((&cfi))) {
95 cfi.chipshift += 2;
96 } else if (cfi_interleave_is_8(&cfi)) {
97 cfi.chipshift += 3;
102 cfi.numchips = 1;
108 max_chips = map->size >> cfi.chipshift;
117 kfree(cfi.cfiq);
130 cp->probe_chip(map, i << cfi.chipshift, chip_map, &cfi);
138 retcfi = kmalloc(sizeof(struct cfi_private) + cfi.numchips * sizeof(struct flchip), GFP_KERNEL);
141 kfree(cfi.cfiq);
146 memcpy(retcfi, &cfi, sizeof(cfi));
147 memset(&retcfi->chips[0], 0, sizeof(struct flchip) * cfi.numchips);
149 for (i = 0, j = 0; (j < cfi.numchips) && (i < max_chips); i++) {
153 pchip->start = (i << cfi.chipshift);
166 struct cfi_private *cfi)
177 cfi->interleave = nr_chips;
184 cfi->device_type = type;
186 if (cp->probe_chip(map, 0, NULL, cfi))
202 struct cfi_private *cfi = map->fldrv_priv;
203 __u16 type = primary?cfi->cfiq->P_ID:cfi->cfiq->A_ID;
232 struct cfi_private *cfi = map->fldrv_priv;
233 __u16 type = primary?cfi->cfiq->P_ID:cfi->cfiq->A_ID;