flash/nor/xmc4xxx: Loosen checks for XMC4500
According to Infineon, XMC4500 EES AA13 with date codes before GE212 - as seen on an XMC4500 General App Kit - had a zero SCU_IDCHIP register. Handle this by extending our checks to not error out on zero SCU_IDCHIP and by printing a useful info string in that case. Change-Id: Ic2d641a314627dd5a1ff775a0113999191b95e3d Signed-off-by: Andreas Färber <afaerber@suse.de> Reviewed-on: http://openocd.zylin.com/2751 Tested-by: jenkins Reviewed-by: Paul Fertser <fercerpav@gmail.com> Reviewed-by: Jeff Ciesielski <jeffciesielski@gmail.com>
This commit is contained in:
parent
33b048d456
commit
ed54838ea6
|
@ -341,7 +341,7 @@ static int xmc4xxx_probe(struct flash_bank *bank)
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Make sure this is a XMC4000 family device */
|
/* Make sure this is a XMC4000 family device */
|
||||||
if ((devid & 0xF0000) != 0x40000) {
|
if ((devid & 0xF0000) != 0x40000 && devid != 0) {
|
||||||
LOG_ERROR("Platform ID doesn't match XMC4xxx: 0x%08" PRIx32, devid);
|
LOG_ERROR("Platform ID doesn't match XMC4xxx: 0x%08" PRIx32, devid);
|
||||||
return ERROR_FAIL;
|
return ERROR_FAIL;
|
||||||
}
|
}
|
||||||
|
@ -949,6 +949,13 @@ static int xmc4xxx_get_info_command(struct flash_bank *bank, char *buf, int buf_
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
case 0:
|
||||||
|
/* XMC4500 EES AA13 with date codes before GE212
|
||||||
|
* had zero SCU_IDCHIP
|
||||||
|
*/
|
||||||
|
dev_str = "XMC4500 EES";
|
||||||
|
rev_str = "AA13";
|
||||||
|
break;
|
||||||
case 0x500:
|
case 0x500:
|
||||||
dev_str = "XMC4500";
|
dev_str = "XMC4500";
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue