blob: 2829dd0400f18b405953e2ff61e2996d3c4c7115 [file] [log] [blame]
Bryan Wu2f6f4bc2008-11-18 17:48:21 +08001/*
Mike Frysingeraf5d7fc2009-11-15 18:18:41 -05002 * DO NOT EDIT THIS FILE
3 * This file is under version control at
4 * svn://sources.blackfin.uclinux.org/toolchain/trunk/proc-defs/header-frags/
5 * and can be replaced with that version at any time
6 * DO NOT EDIT THIS FILE
Bryan Wu2f6f4bc2008-11-18 17:48:21 +08007 *
Mike Frysingeraf5d7fc2009-11-15 18:18:41 -05008 * Copyright 2004-2009 Analog Devices Inc.
9 * Licensed under the ADI BSD license.
10 * https://docs.blackfin.uclinux.org/doku.php?id=adi_bsd
Bryan Wu2f6f4bc2008-11-18 17:48:21 +080011 */
12
Mike Frysingera4136472009-05-08 07:40:25 +000013/* This file should be up to date with:
Mike Frysingera200ad22009-06-13 06:37:14 -040014 * - Revision C, 06/12/2009; ADSP-BF512/BF514/BF516/BF518 Blackfin Processor Anomaly List
Bryan Wu2f6f4bc2008-11-18 17:48:21 +080015 */
16
Mike Frysingera4136472009-05-08 07:40:25 +000017/* We plan on not supporting 0.0 silicon, but 0.1 isn't out yet - sorry */
18#if __SILICON_REVISION__ < 0
19# error will not work on BF518 silicon version
20#endif
21
Bryan Wu2f6f4bc2008-11-18 17:48:21 +080022#ifndef _MACH_ANOMALY_H_
23#define _MACH_ANOMALY_H_
24
Mike Frysingera200ad22009-06-13 06:37:14 -040025/* Multi-Issue Instruction with dsp32shiftimm in slot1 and P-reg Store in slot2 Not Supported */
Bryan Wu2f6f4bc2008-11-18 17:48:21 +080026#define ANOMALY_05000074 (1)
27/* Rx.H Cannot Be Used to Access 16-bit System MMR Registers */
28#define ANOMALY_05000122 (1)
29/* False Hardware Error from an Access in the Shadow of a Conditional Branch */
30#define ANOMALY_05000245 (1)
Mike Frysingerc18e99c2009-03-04 17:36:49 +080031/* Incorrect Timer Pulse Width in Single-Shot PWM_OUT Mode with External Clock */
32#define ANOMALY_05000254 (1)
Bryan Wu2f6f4bc2008-11-18 17:48:21 +080033/* Sensitivity To Noise with Slow Input Edge Rates on External SPORT TX and RX Clocks */
34#define ANOMALY_05000265 (1)
35/* False Hardware Errors Caused by Fetches at the Boundary of Reserved Memory */
36#define ANOMALY_05000310 (1)
37/* PPI Underflow Error Goes Undetected in ITU-R 656 Mode */
38#define ANOMALY_05000366 (1)
39/* Lockbox SESR Firmware Does Not Save/Restore Full Context */
40#define ANOMALY_05000405 (1)
41/* Lockbox Firmware Memory Cleanup Routine Does not Clear Registers */
42#define ANOMALY_05000408 (1)
43/* Speculative Fetches Can Cause Undesired External FIFO Operations */
44#define ANOMALY_05000416 (1)
45/* TWI Fall Time (Tof) May Violate the Minimum I2C Specification */
46#define ANOMALY_05000421 (1)
47/* TWI Input Capacitance (Ci) May Violate the Maximum I2C Specification */
48#define ANOMALY_05000422 (1)
49/* Speculative Fetches of Indirect-Pointer Instructions Can Cause False Hardware Errors */
50#define ANOMALY_05000426 (1)
51/* Software System Reset Corrupts PLL_LOCKCNT Register */
Mike Frysingera200ad22009-06-13 06:37:14 -040052#define ANOMALY_05000430 (__SILICON_REVISION__ < 1)
Bryan Wu2f6f4bc2008-11-18 17:48:21 +080053/* Incorrect Use of Stack in Lockbox Firmware During Authentication */
54#define ANOMALY_05000431 (1)
55/* Certain SIC Registers are not Reset After Soft or Core Double Fault Reset */
Mike Frysingera200ad22009-06-13 06:37:14 -040056#define ANOMALY_05000435 (__SILICON_REVISION__ < 1)
Bryan Wu2f6f4bc2008-11-18 17:48:21 +080057/* PORTx_DRIVE and PORTx_HYSTERESIS Registers Read Back Incorrect Values */
Mike Frysingera200ad22009-06-13 06:37:14 -040058#define ANOMALY_05000438 (__SILICON_REVISION__ < 1)
Mike Frysingera4136472009-05-08 07:40:25 +000059/* Preboot Cannot be Used to Alter the PLL_DIV Register */
Mike Frysingera200ad22009-06-13 06:37:14 -040060#define ANOMALY_05000439 (__SILICON_REVISION__ < 1)
Bryan Wu2f6f4bc2008-11-18 17:48:21 +080061/* bfrom_SysControl() Cannot be Used to Write the PLL_DIV Register */
Mike Frysingera200ad22009-06-13 06:37:14 -040062#define ANOMALY_05000440 (__SILICON_REVISION__ < 1)
Bryan Wu2f6f4bc2008-11-18 17:48:21 +080063/* IFLUSH Instruction at End of Hardware Loop Causes Infinite Stall */
64#define ANOMALY_05000443 (1)
65/* Incorrect L1 Instruction Bank B Memory Map Location */
Mike Frysingera200ad22009-06-13 06:37:14 -040066#define ANOMALY_05000444 (__SILICON_REVISION__ < 1)
Mike Frysingerc18e99c2009-03-04 17:36:49 +080067/* Incorrect Default Hysteresis Setting for RESET, NMI, and BMODE Signals */
Mike Frysingera200ad22009-06-13 06:37:14 -040068#define ANOMALY_05000452 (__SILICON_REVISION__ < 1)
Mike Frysingerc18e99c2009-03-04 17:36:49 +080069/* PWM_TRIPB Signal Not Available on PG10 */
Mike Frysingera200ad22009-06-13 06:37:14 -040070#define ANOMALY_05000453 (__SILICON_REVISION__ < 1)
Mike Frysingerc18e99c2009-03-04 17:36:49 +080071/* PPI_FS3 is Driven One Half Cycle Later Than PPI Data */
Mike Frysingera200ad22009-06-13 06:37:14 -040072#define ANOMALY_05000455 (__SILICON_REVISION__ < 1)
73/* False Hardware Error when RETI Points to Invalid Memory */
Mike Frysingera4136472009-05-08 07:40:25 +000074#define ANOMALY_05000461 (1)
Mike Frysingera200ad22009-06-13 06:37:14 -040075/* Synchronization Problem at Startup May Cause SPORT Transmit Channels to Misalign */
76#define ANOMALY_05000462 (1)
Mike Frysingeraf5d7fc2009-11-15 18:18:41 -050077/* Interrupted 32-Bit SPORT Data Register Access Results In Underflow */
78#define ANOMALY_05000473 (1)
79/* TESTSET Instruction Cannot Be Interrupted */
80#define ANOMALY_05000477 (1)
Bryan Wu2f6f4bc2008-11-18 17:48:21 +080081
82/* Anomalies that don't exist on this proc */
Mike Frysingera4136472009-05-08 07:40:25 +000083#define ANOMALY_05000099 (0)
84#define ANOMALY_05000119 (0)
85#define ANOMALY_05000120 (0)
Bryan Wu2f6f4bc2008-11-18 17:48:21 +080086#define ANOMALY_05000125 (0)
Mike Frysingera4136472009-05-08 07:40:25 +000087#define ANOMALY_05000149 (0)
Bryan Wu2f6f4bc2008-11-18 17:48:21 +080088#define ANOMALY_05000158 (0)
Mike Frysingera4136472009-05-08 07:40:25 +000089#define ANOMALY_05000171 (0)
90#define ANOMALY_05000179 (0)
Mike Frysingera200ad22009-06-13 06:37:14 -040091#define ANOMALY_05000182 (0)
Bryan Wu2f6f4bc2008-11-18 17:48:21 +080092#define ANOMALY_05000183 (0)
Graf Yang976119b2009-07-01 07:05:40 +000093#define ANOMALY_05000189 (0)
Bryan Wu2f6f4bc2008-11-18 17:48:21 +080094#define ANOMALY_05000198 (0)
Mike Frysingera200ad22009-06-13 06:37:14 -040095#define ANOMALY_05000202 (0)
Mike Frysingera4136472009-05-08 07:40:25 +000096#define ANOMALY_05000215 (0)
97#define ANOMALY_05000220 (0)
98#define ANOMALY_05000227 (0)
Bryan Wu2f6f4bc2008-11-18 17:48:21 +080099#define ANOMALY_05000230 (0)
Mike Frysingera4136472009-05-08 07:40:25 +0000100#define ANOMALY_05000231 (0)
101#define ANOMALY_05000233 (0)
Mike Frysingera200ad22009-06-13 06:37:14 -0400102#define ANOMALY_05000234 (0)
Mike Frysingera4136472009-05-08 07:40:25 +0000103#define ANOMALY_05000242 (0)
Bryan Wu2f6f4bc2008-11-18 17:48:21 +0800104#define ANOMALY_05000244 (0)
Mike Frysingera4136472009-05-08 07:40:25 +0000105#define ANOMALY_05000248 (0)
106#define ANOMALY_05000250 (0)
Mike Frysingera200ad22009-06-13 06:37:14 -0400107#define ANOMALY_05000257 (0)
Bryan Wu2f6f4bc2008-11-18 17:48:21 +0800108#define ANOMALY_05000261 (0)
109#define ANOMALY_05000263 (0)
110#define ANOMALY_05000266 (0)
111#define ANOMALY_05000273 (0)
Mike Frysingera4136472009-05-08 07:40:25 +0000112#define ANOMALY_05000274 (0)
Mike Frysingeree554be2009-03-03 16:52:55 +0800113#define ANOMALY_05000278 (0)
Mike Frysingera200ad22009-06-13 06:37:14 -0400114#define ANOMALY_05000281 (0)
115#define ANOMALY_05000283 (0)
Bryan Wu2f6f4bc2008-11-18 17:48:21 +0800116#define ANOMALY_05000285 (0)
Mike Frysingera4136472009-05-08 07:40:25 +0000117#define ANOMALY_05000287 (0)
118#define ANOMALY_05000301 (0)
Mike Frysingerc18e99c2009-03-04 17:36:49 +0800119#define ANOMALY_05000305 (0)
Bryan Wu2f6f4bc2008-11-18 17:48:21 +0800120#define ANOMALY_05000307 (0)
121#define ANOMALY_05000311 (0)
122#define ANOMALY_05000312 (0)
Mike Frysingera200ad22009-06-13 06:37:14 -0400123#define ANOMALY_05000315 (0)
Bryan Wu2f6f4bc2008-11-18 17:48:21 +0800124#define ANOMALY_05000323 (0)
125#define ANOMALY_05000353 (0)
Mike Frysingera200ad22009-06-13 06:37:14 -0400126#define ANOMALY_05000357 (0)
Mike Frysingera4136472009-05-08 07:40:25 +0000127#define ANOMALY_05000362 (1)
Bryan Wu2f6f4bc2008-11-18 17:48:21 +0800128#define ANOMALY_05000363 (0)
Graf Yang976119b2009-07-01 07:05:40 +0000129#define ANOMALY_05000364 (0)
Mike Frysingera200ad22009-06-13 06:37:14 -0400130#define ANOMALY_05000371 (0)
Mike Frysingeree554be2009-03-03 16:52:55 +0800131#define ANOMALY_05000380 (0)
Bryan Wu2f6f4bc2008-11-18 17:48:21 +0800132#define ANOMALY_05000386 (0)
Mike Frysingera4136472009-05-08 07:40:25 +0000133#define ANOMALY_05000389 (0)
134#define ANOMALY_05000400 (0)
Yi Libd411b12009-08-05 10:02:14 +0000135#define ANOMALY_05000402 (0)
Mike Frysinger6651ece2009-01-07 23:14:38 +0800136#define ANOMALY_05000412 (0)
137#define ANOMALY_05000432 (0)
Mike Frysinger7dbc3f62009-03-06 00:20:49 +0800138#define ANOMALY_05000447 (0)
139#define ANOMALY_05000448 (0)
Mike Frysingera4136472009-05-08 07:40:25 +0000140#define ANOMALY_05000456 (0)
141#define ANOMALY_05000450 (0)
Mike Frysingera200ad22009-06-13 06:37:14 -0400142#define ANOMALY_05000465 (0)
143#define ANOMALY_05000467 (0)
Mike Frysingeraf5d7fc2009-11-15 18:18:41 -0500144#define ANOMALY_05000474 (0)
145#define ANOMALY_05000475 (0)
Bryan Wu2f6f4bc2008-11-18 17:48:21 +0800146
147#endif