Lines Matching refs:extp
118 static void cfi_tell_features(struct cfi_pri_intelext *extp) in cfi_tell_features() argument
121 printk(" Extended Query version %c.%c\n", extp->MajorVersion, extp->MinorVersion); in cfi_tell_features()
122 printk(" Feature/Command Support: %4.4X\n", extp->FeatureSupport); in cfi_tell_features()
123 printk(" - Chip Erase: %s\n", extp->FeatureSupport&1?"supported":"unsupported"); in cfi_tell_features()
124 printk(" - Suspend Erase: %s\n", extp->FeatureSupport&2?"supported":"unsupported"); in cfi_tell_features()
125 printk(" - Suspend Program: %s\n", extp->FeatureSupport&4?"supported":"unsupported"); in cfi_tell_features()
126 printk(" - Legacy Lock/Unlock: %s\n", extp->FeatureSupport&8?"supported":"unsupported"); in cfi_tell_features()
127 printk(" - Queued Erase: %s\n", extp->FeatureSupport&16?"supported":"unsupported"); in cfi_tell_features()
128 printk(" - Instant block lock: %s\n", extp->FeatureSupport&32?"supported":"unsupported"); in cfi_tell_features()
129 printk(" - Protection Bits: %s\n", extp->FeatureSupport&64?"supported":"unsupported"); in cfi_tell_features()
130 printk(" - Page-mode read: %s\n", extp->FeatureSupport&128?"supported":"unsupported"); in cfi_tell_features()
131 printk(" - Synchronous read: %s\n", extp->FeatureSupport&256?"supported":"unsupported"); in cfi_tell_features()
132 printk(" - Simultaneous operations: %s\n", extp->FeatureSupport&512?"supported":"unsupported"); in cfi_tell_features()
133 …printk(" - Extended Flash Array: %s\n", extp->FeatureSupport&1024?"supported":"unsupported"… in cfi_tell_features()
135 if (extp->FeatureSupport & (1<<i)) in cfi_tell_features()
139 printk(" Supported functions after Suspend: %2.2X\n", extp->SuspendCmdSupport); in cfi_tell_features()
140 …printk(" - Program after Erase Suspend: %s\n", extp->SuspendCmdSupport&1?"supported":"unsuppor… in cfi_tell_features()
142 if (extp->SuspendCmdSupport & (1<<i)) in cfi_tell_features()
146 printk(" Block Status Register Mask: %4.4X\n", extp->BlkStatusRegMask); in cfi_tell_features()
147 printk(" - Lock Bit Active: %s\n", extp->BlkStatusRegMask&1?"yes":"no"); in cfi_tell_features()
148 printk(" - Lock-Down Bit Active: %s\n", extp->BlkStatusRegMask&2?"yes":"no"); in cfi_tell_features()
150 if (extp->BlkStatusRegMask & (1<<i)) in cfi_tell_features()
153 printk(" - EFA Lock Bit: %s\n", extp->BlkStatusRegMask&16?"yes":"no"); in cfi_tell_features()
154 printk(" - EFA Lock-Down Bit: %s\n", extp->BlkStatusRegMask&32?"yes":"no"); in cfi_tell_features()
156 if (extp->BlkStatusRegMask & (1<<i)) in cfi_tell_features()
161 extp->VccOptimal >> 4, extp->VccOptimal & 0xf); in cfi_tell_features()
162 if (extp->VppOptimal) in cfi_tell_features()
164 extp->VppOptimal >> 4, extp->VppOptimal & 0xf); in cfi_tell_features()
173 struct cfi_pri_intelext *extp = cfi->cmdset_priv; in fixup_convert_atmel_pri() local
178 extp->FeatureSupport = cpu_to_le32(extp->FeatureSupport); in fixup_convert_atmel_pri()
179 extp->BlkStatusRegMask = cpu_to_le16(extp->BlkStatusRegMask); in fixup_convert_atmel_pri()
180 extp->ProtRegAddr = cpu_to_le16(extp->ProtRegAddr); in fixup_convert_atmel_pri()
182 memcpy(&atmel_pri, extp, sizeof(atmel_pri)); in fixup_convert_atmel_pri()
183 memset((char *)extp + 5, 0, sizeof(*extp) - 5); in fixup_convert_atmel_pri()
202 extp->FeatureSupport = features; in fixup_convert_atmel_pri()
225 struct cfi_pri_intelext *extp = cfi->cmdset_priv; in fixup_intel_strataflash() local
229 extp->SuspendCmdSupport &= ~1; in fixup_intel_strataflash()
280 struct cfi_pri_intelext *extp = cfi->cmdset_priv; in fixup_LH28F640BF() local
292 extp->FeatureSupport &= ~512; in fixup_LH28F640BF()
371 struct cfi_pri_intelext *extp) in cfi_fixup_major_minor() argument
374 cfi->id == PF38F4476 && extp->MinorVersion == '3') in cfi_fixup_major_minor()
375 extp->MinorVersion = '1'; in cfi_fixup_major_minor()
382 struct cfi_pri_intelext *extp; in read_pri_intelext() local
384 unsigned int extp_size = sizeof(*extp); in read_pri_intelext()
387 extp = (struct cfi_pri_intelext *)cfi_read_pri(map, adr, extp_size, "Intel/Sharp"); in read_pri_intelext()
388 if (!extp) in read_pri_intelext()
391 cfi_fixup_major_minor(cfi, extp); in read_pri_intelext()
393 if (extp->MajorVersion != '1' || in read_pri_intelext()
394 (extp->MinorVersion < '0' || extp->MinorVersion > '5')) { in read_pri_intelext()
396 "version %c.%c.\n", extp->MajorVersion, in read_pri_intelext()
397 extp->MinorVersion); in read_pri_intelext()
398 kfree(extp); in read_pri_intelext()
403 extp->FeatureSupport = le32_to_cpu(extp->FeatureSupport); in read_pri_intelext()
404 extp->BlkStatusRegMask = le16_to_cpu(extp->BlkStatusRegMask); in read_pri_intelext()
405 extp->ProtRegAddr = le16_to_cpu(extp->ProtRegAddr); in read_pri_intelext()
407 if (extp->MinorVersion >= '0') { in read_pri_intelext()
411 extra_size += (extp->NumProtectionFields - 1) * in read_pri_intelext()
415 if (extp->MinorVersion >= '1') { in read_pri_intelext()
418 if (extp_size < sizeof(*extp) + extra_size) in read_pri_intelext()
420 extra_size += extp->extra[extra_size - 1]; in read_pri_intelext()
423 if (extp->MinorVersion >= '3') { in read_pri_intelext()
428 if (extp_size < sizeof(*extp) + extra_size) in read_pri_intelext()
430 nb_parts = extp->extra[extra_size - 1]; in read_pri_intelext()
433 if (extp->MinorVersion >= '4') in read_pri_intelext()
438 rinfo = (struct cfi_intelext_regioninfo *)&extp->extra[extra_size]; in read_pri_intelext()
440 if (extp_size < sizeof(*extp) + extra_size) in read_pri_intelext()
447 if (extp->MinorVersion >= '4') in read_pri_intelext()
450 if (extp_size < sizeof(*extp) + extra_size) { in read_pri_intelext()
452 extp_size = sizeof(*extp) + extra_size; in read_pri_intelext()
453 kfree(extp); in read_pri_intelext()
464 return extp; in read_pri_intelext()
503 struct cfi_pri_intelext *extp; in cfi_cmdset_0001() local
505 extp = read_pri_intelext(map, adr); in cfi_cmdset_0001()
506 if (!extp) { in cfi_cmdset_0001()
512 cfi->cmdset_priv = extp; in cfi_cmdset_0001()
518 cfi_tell_features(extp); in cfi_cmdset_0001()
521 if(extp->SuspendCmdSupport & 1) { in cfi_cmdset_0001()
664 struct cfi_pri_intelext *extp = cfi->cmdset_priv; in cfi_intelext_partition_fixup() local
677 if (extp && extp->MajorVersion == '1' && extp->MinorVersion >= '3' in cfi_intelext_partition_fixup()
678 && extp->FeatureSupport & (1 << 9)) { in cfi_intelext_partition_fixup()
685 offs = (extp->NumProtectionFields - 1) * in cfi_intelext_partition_fixup()
689 offs += extp->extra[offs+1]+2; in cfi_intelext_partition_fixup()
692 numregions = extp->extra[offs]; in cfi_intelext_partition_fixup()
696 if (extp->MinorVersion >= '4') in cfi_intelext_partition_fixup()
703 rinfo = (struct cfi_intelext_regioninfo *)&extp->extra[offs]; in cfi_intelext_partition_fixup()
714 if (extp->MinorVersion >= '4') { in cfi_intelext_partition_fixup()
716 prinfo = (struct cfi_intelext_programming_regioninfo *)&extp->extra[offs]; in cfi_intelext_partition_fixup()
2083 struct cfi_pri_intelext *extp = cfi->cmdset_priv; in do_xxlock_oneblock() local
2121 mdelay = (!extp || !(extp->FeatureSupport & (1 << 5))) ? 1500 : 0; in do_xxlock_oneblock()
2280 struct cfi_pri_intelext *extp = cfi->cmdset_priv; in cfi_intelext_otp_walk() local
2291 if (!extp || !(extp->FeatureSupport & 64) || !extp->NumProtectionFields) in cfi_intelext_otp_walk()
2312 otp = (struct cfi_intelext_otpinfo *)&extp->extra[0]; in cfi_intelext_otp_walk()
2316 reg_prot_offset = extp->ProtRegAddr; in cfi_intelext_otp_walk()
2318 reg_fact_size = 1 << extp->FactProtRegSize; in cfi_intelext_otp_walk()
2320 reg_user_size = 1 << extp->UserProtRegSize; in cfi_intelext_otp_walk()
2394 if (++field == extp->NumProtectionFields) in cfi_intelext_otp_walk()
2487 struct cfi_pri_intelext *extp = cfi->cmdset_priv; in cfi_intelext_suspend() local
2493 && extp && (extp->FeatureSupport & (1 << 5))) in cfi_intelext_suspend()
2581 struct cfi_pri_intelext *extp = cfi->cmdset_priv; in cfi_intelext_resume() local
2604 && extp && (extp->FeatureSupport & (1 << 5))) in cfi_intelext_resume()