X-Git-Url: https://review.openocd.org/gitweb?p=openocd.git;a=blobdiff_plain;f=src%2Fflash%2Fnor%2Fnon_cfi.c;fp=src%2Fflash%2Fnor%2Fnon_cfi.c;h=795f60da188a75487fbf6cdc169f43d6c3aa57e9;hp=b6739043ce969704199e2a1a9fdd4252f2a0efbc;hb=32ede8fa21fecb68d404b25251ec29ce5e8e6505;hpb=e105915a4a1ca8f5c80d25b0a79728bc16f306b1 diff --git a/src/flash/nor/non_cfi.c b/src/flash/nor/non_cfi.c index b6739043ce..795f60da18 100644 --- a/src/flash/nor/non_cfi.c +++ b/src/flash/nor/non_cfi.c @@ -454,13 +454,19 @@ static struct non_cfi non_cfi_flashes[] = { void cfi_fixup_non_cfi(struct flash_bank *bank) { + unsigned int mask; struct cfi_flash_bank *cfi_info = bank->driver_priv; struct non_cfi *non_cfi = non_cfi_flashes; + if(cfi_info->x16_as_x8) + mask = 0xFF; + else + mask = 0xFFFF; + for (non_cfi = non_cfi_flashes; non_cfi->mfr; non_cfi++) { if ((cfi_info->manufacturer == non_cfi->mfr) - && (cfi_info->device_id == non_cfi->id)) + && (cfi_info->device_id == (non_cfi->id & mask))) { break; }