Blackfin: update handling of anomaly 364 (wrong rev id in BF527-0.1)

This anomaly only applies to the BF527-0.1, not the BF526-0.1, and not any
other revision of the BF527.  So make sure we don't go returning 0xffff
for other cases.

Signed-off-by: Graf Yang <graf.yang@analog.com>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
This commit is contained in:
Graf Yang 2009-07-01 04:08:01 +00:00 committed by Mike Frysinger
parent 532f07ca04
commit 10a5ecd03f

View file

@ -105,23 +105,16 @@ static inline uint32_t __pure bfin_revid(void)
/* Always use CHIPID, to work around ANOMALY_05000234 */ /* Always use CHIPID, to work around ANOMALY_05000234 */
uint32_t revid = (bfin_read_CHIPID() & CHIPID_VERSION) >> 28; uint32_t revid = (bfin_read_CHIPID() & CHIPID_VERSION) >> 28;
#ifdef CONFIG_BF52x #ifdef _BOOTROM_GET_DXE_ADDRESS_TWI
/* ANOMALY_05000357 /*
* ANOMALY_05000364
* Incorrect Revision Number in DSPID Register * Incorrect Revision Number in DSPID Register
*/ */
if (revid == 0) if (ANOMALY_05000364 &&
switch (bfin_read16(_BOOTROM_GET_DXE_ADDRESS_TWI)) { bfin_read16(_BOOTROM_GET_DXE_ADDRESS_TWI) == 0x2796)
case 0x0010: revid = 1;
revid = 0;
break;
case 0x2796:
revid = 1;
break;
default:
revid = 0xFFFF;
break;
}
#endif #endif
return revid; return revid;
} }