/*
 *
 * (C) COPYRIGHT 2015-2016 ARM Limited. All rights reserved.
 *
 * This program is free software and is provided to you under the terms of the
 * GNU General Public License version 2 as published by the Free Software
 * Foundation, and any use by you of this program is subject to the terms
 * of such GNU licence.
 *
 * A copy of the licence is included with the program, and can also be obtained
 * from Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
 * Boston, MA  02110-1301, USA.
 *
 */



/* AUTOMATICALLY GENERATED FILE. If you want to amend the issues/features,
 * please update base/tools/hwconfig_generator/hwc_{issues,features}.py
 * For more information see base/tools/hwconfig_generator/README
 */

#ifndef _BASE_HWCONFIG_ISSUES_H_
#define _BASE_HWCONFIG_ISSUES_H_

enum base_hw_issue {
	BASE_HW_ISSUE_5736,
	BASE_HW_ISSUE_6367,
	BASE_HW_ISSUE_6398,
	BASE_HW_ISSUE_6402,
	BASE_HW_ISSUE_6787,
	BASE_HW_ISSUE_7027,
	BASE_HW_ISSUE_7144,
	BASE_HW_ISSUE_7304,
	BASE_HW_ISSUE_8073,
	BASE_HW_ISSUE_8186,
	BASE_HW_ISSUE_8215,
	BASE_HW_ISSUE_8245,
	BASE_HW_ISSUE_8250,
	BASE_HW_ISSUE_8260,
	BASE_HW_ISSUE_8280,
	BASE_HW_ISSUE_8316,
	BASE_HW_ISSUE_8381,
	BASE_HW_ISSUE_8394,
	BASE_HW_ISSUE_8401,
	BASE_HW_ISSUE_8408,
	BASE_HW_ISSUE_8443,
	BASE_HW_ISSUE_8456,
	BASE_HW_ISSUE_8564,
	BASE_HW_ISSUE_8634,
	BASE_HW_ISSUE_8778,
	BASE_HW_ISSUE_8791,
	BASE_HW_ISSUE_8833,
	BASE_HW_ISSUE_8879,
	BASE_HW_ISSUE_8896,
	BASE_HW_ISSUE_8975,
	BASE_HW_ISSUE_8986,
	BASE_HW_ISSUE_8987,
	BASE_HW_ISSUE_9010,
	BASE_HW_ISSUE_9418,
	BASE_HW_ISSUE_9423,
	BASE_HW_ISSUE_9435,
	BASE_HW_ISSUE_9510,
	BASE_HW_ISSUE_9566,
	BASE_HW_ISSUE_9630,
	BASE_HW_ISSUE_10127,
	BASE_HW_ISSUE_10327,
	BASE_HW_ISSUE_10410,
	BASE_HW_ISSUE_10471,
	BASE_HW_ISSUE_10472,
	BASE_HW_ISSUE_10487,
	BASE_HW_ISSUE_10607,
	BASE_HW_ISSUE_10632,
	BASE_HW_ISSUE_10676,
	BASE_HW_ISSUE_10682,
	BASE_HW_ISSUE_10684,
	BASE_HW_ISSUE_10797,
	BASE_HW_ISSUE_10817,
	BASE_HW_ISSUE_10821,
	BASE_HW_ISSUE_10883,
	BASE_HW_ISSUE_10931,
	BASE_HW_ISSUE_10946,
	BASE_HW_ISSUE_10959,
	BASE_HW_ISSUE_10969,
	BASE_HW_ISSUE_10984,
	BASE_HW_ISSUE_10995,
	BASE_HW_ISSUE_11012,
	BASE_HW_ISSUE_11020,
	BASE_HW_ISSUE_11024,
	BASE_HW_ISSUE_11035,
	BASE_HW_ISSUE_11042,
	BASE_HW_ISSUE_11051,
	BASE_HW_ISSUE_T76X_26,
	BASE_HW_ISSUE_T76X_1909,
	BASE_HW_ISSUE_T76X_1963,
	BASE_HW_ISSUE_T76X_3086,
	BASE_HW_ISSUE_T76X_3542,
	BASE_HW_ISSUE_T76X_3556,
	BASE_HW_ISSUE_T76X_3700,
	BASE_HW_ISSUE_T76X_3793,
	BASE_HW_ISSUE_T76X_3953,
	BASE_HW_ISSUE_T76X_3960,
	BASE_HW_ISSUE_T76X_3964,
	BASE_HW_ISSUE_T76X_3966,
	BASE_HW_ISSUE_TMIX_7891,
	BASE_HW_ISSUE_TMIX_7940,
	BASE_HW_ISSUE_TMIX_8042,
	BASE_HW_ISSUE_TMIX_8133,
	BASE_HW_ISSUE_TMIX_8138,
	BASE_HW_ISSUE_TMIX_8206,
	GPUCORE_1619,
	BASE_HW_ISSUE_END
};

static const enum base_hw_issue base_hw_issues_generic[] = {
	BASE_HW_ISSUE_END
};

static const enum base_hw_issue base_hw_issues_t60x_r0p0_15dev0[] = {
	BASE_HW_ISSUE_6367,
	BASE_HW_ISSUE_6398,
	BASE_HW_ISSUE_6402,
	BASE_HW_ISSUE_6787,
	BASE_HW_ISSUE_7027,
	BASE_HW_ISSUE_7144,
	BASE_HW_ISSUE_7304,
	BASE_HW_ISSUE_8073,
	BASE_HW_ISSUE_8186,
	BASE_HW_ISSUE_8215,
	BASE_HW_ISSUE_8245,
	BASE_HW_ISSUE_8250,
	BASE_HW_ISSUE_8260,
	BASE_HW_ISSUE_8280,
	BASE_HW_ISSUE_8316,
	BASE_HW_ISSUE_8381,
	BASE_HW_ISSUE_8394,
	BASE_HW_ISSUE_8401,
	BASE_HW_ISSUE_8408,
	BASE_HW_ISSUE_8443,
	BASE_HW_ISSUE_8456,
	BASE_HW_ISSUE_8564,
	BASE_HW_ISSUE_8634,
	BASE_HW_ISSUE_8778,
	BASE_HW_ISSUE_8791,
	BASE_HW_ISSUE_8833,
	BASE_HW_ISSUE_8896,
	BASE_HW_ISSUE_8975,
	BASE_HW_ISSUE_8986,
	BASE_HW_ISSUE_8987,
	BASE_HW_ISSUE_9010,
	BASE_HW_ISSUE_9418,
	BASE_HW_ISSUE_9423,
	BASE_HW_ISSUE_9435,
	BASE_HW_ISSUE_9510,
	BASE_HW_ISSUE_9566,
	BASE_HW_ISSUE_9630,
	BASE_HW_ISSUE_10410,
	BASE_HW_ISSUE_10471,
	BASE_HW_ISSUE_10472,
	BASE_HW_ISSUE_10487,
	BASE_HW_ISSUE_10607,
	BASE_HW_ISSUE_10632,
	BASE_HW_ISSUE_10676,
	BASE_HW_ISSUE_10682,
	BASE_HW_ISSUE_10684,
	BASE_HW_ISSUE_10883,
	BASE_HW_ISSUE_10931,
	BASE_HW_ISSUE_10946,
	BASE_HW_ISSUE_10969,
	BASE_HW_ISSUE_10984,
	BASE_HW_ISSUE_10995,
	BASE_HW_ISSUE_11012,
	BASE_HW_ISSUE_11020,
	BASE_HW_ISSUE_11035,
	BASE_HW_ISSUE_11051,
	BASE_HW_ISSUE_T76X_1909,
	BASE_HW_ISSUE_T76X_3964,
	GPUCORE_1619,
	BASE_HW_ISSUE_END
};

static const enum base_hw_issue base_hw_issues_t60x_r0p0_eac[] = {
	BASE_HW_ISSUE_6367,
	BASE_HW_ISSUE_6402,
	BASE_HW_ISSUE_6787,
	BASE_HW_ISSUE_7027,
	BASE_HW_ISSUE_7304,
	BASE_HW_ISSUE_8408,
	BASE_HW_ISSUE_8564,
	BASE_HW_ISSUE_8778,
	BASE_HW_ISSUE_8975,
	BASE_HW_ISSUE_9010,
	BASE_HW_ISSUE_9418,
	BASE_HW_ISSUE_9423,
	BASE_HW_ISSUE_9435,
	BASE_HW_ISSUE_9510,
	BASE_HW_ISSUE_10410,
	BASE_HW_ISSUE_10471,
	BASE_HW_ISSUE_10472,
	BASE_HW_ISSUE_10487,
	BASE_HW_ISSUE_10607,
	BASE_HW_ISSUE_10632,
	BASE_HW_ISSUE_10676,
	BASE_HW_ISSUE_10682,
	BASE_HW_ISSUE_10684,
	BASE_HW_ISSUE_10883,
	BASE_HW_ISSUE_10931,
	BASE_HW_ISSUE_10946,
	BASE_HW_ISSUE_10969,
	BASE_HW_ISSUE_11012,
	BASE_HW_ISSUE_11020,
	BASE_HW_ISSUE_11035,
	BASE_HW_ISSUE_11051,
	BASE_HW_ISSUE_T76X_1909,
	BASE_HW_ISSUE_T76X_3964,
	BASE_HW_ISSUE_END
};

static const enum base_hw_issue base_hw_issues_t60x_r0p1[] = {
	BASE_HW_ISSUE_6367,
	BASE_HW_ISSUE_6402,
	BASE_HW_ISSUE_6787,
	BASE_HW_ISSUE_7027,
	BASE_HW_ISSUE_7304,
	BASE_HW_ISSUE_8408,
	BASE_HW_ISSUE_8564,
	BASE_HW_ISSUE_8778,
	BASE_HW_ISSUE_8975,
	BASE_HW_ISSUE_9010,
	BASE_HW_ISSUE_9435,
	BASE_HW_ISSUE_9510,
	BASE_HW_ISSUE_10410,
	BASE_HW_ISSUE_10471,
	BASE_HW_ISSUE_10472,
	BASE_HW_ISSUE_10487,
	BASE_HW_ISSUE_10607,
	BASE_HW_ISSUE_10632,
	BASE_HW_ISSUE_10676,
	BASE_HW_ISSUE_10682,
	BASE_HW_ISSUE_10684,
	BASE_HW_ISSUE_10883,
	BASE_HW_ISSUE_10931,
	BASE_HW_ISSUE_10946,
	BASE_HW_ISSUE_11012,
	BASE_HW_ISSUE_11020,
	BASE_HW_ISSUE_11035,
	BASE_HW_ISSUE_11051,
	BASE_HW_ISSUE_T76X_1909,
	BASE_HW_ISSUE_T76X_1963,
	BASE_HW_ISSUE_T76X_3964,
	BASE_HW_ISSUE_END
};

static const enum base_hw_issue base_hw_issues_t62x_r0p1[] = {
	BASE_HW_ISSUE_6402,
	BASE_HW_ISSUE_9435,
	BASE_HW_ISSUE_10127,
	BASE_HW_ISSUE_10327,
	BASE_HW_ISSUE_10410,
	BASE_HW_ISSUE_10471,
	BASE_HW_ISSUE_10472,
	BASE_HW_ISSUE_10487,
	BASE_HW_ISSUE_10607,
	BASE_HW_ISSUE_10632,
	BASE_HW_ISSUE_10676,
	BASE_HW_ISSUE_10682,
	BASE_HW_ISSUE_10684,
	BASE_HW_ISSUE_10817,
	BASE_HW_ISSUE_10821,
	BASE_HW_ISSUE_10883,
	BASE_HW_ISSUE_10931,
	BASE_HW_ISSUE_10946,
	BASE_HW_ISSUE_10959,
	BASE_HW_ISSUE_11012,
	BASE_HW_ISSUE_11020,
	BASE_HW_ISSUE_11024,
	BASE_HW_ISSUE_11035,
	BASE_HW_ISSUE_11042,
	BASE_HW_ISSUE_11051,
	BASE_HW_ISSUE_T76X_1909,
	BASE_HW_ISSUE_T76X_1963,
	BASE_HW_ISSUE_END
};

static const enum base_hw_issue base_hw_issues_t62x_r1p0[] = {
	BASE_HW_ISSUE_6402,
	BASE_HW_ISSUE_9435,
	BASE_HW_ISSUE_10471,
	BASE_HW_ISSUE_10472,
	BASE_HW_ISSUE_10684,
	BASE_HW_ISSUE_10821,
	BASE_HW_ISSUE_10883,
	BASE_HW_ISSUE_10931,
	BASE_HW_ISSUE_10946,
	BASE_HW_ISSUE_10959,
	BASE_HW_ISSUE_11012,
	BASE_HW_ISSUE_11020,
	BASE_HW_ISSUE_11024,
	BASE_HW_ISSUE_11042,
	BASE_HW_ISSUE_11051,
	BASE_HW_ISSUE_T76X_1909,
	BASE_HW_ISSUE_T76X_1963,
	BASE_HW_ISSUE_T76X_3964,
	BASE_HW_ISSUE_END
};

static const enum base_hw_issue base_hw_issues_t62x_r1p1[] = {
	BASE_HW_ISSUE_6402,
	BASE_HW_ISSUE_9435,
	BASE_HW_ISSUE_10471,
	BASE_HW_ISSUE_10472,
	BASE_HW_ISSUE_10684,
	BASE_HW_ISSUE_10821,
	BASE_HW_ISSUE_10883,
	BASE_HW_ISSUE_10931,
	BASE_HW_ISSUE_10946,
	BASE_HW_ISSUE_10959,
	BASE_HW_ISSUE_11012,
	BASE_HW_ISSUE_11042,
	BASE_HW_ISSUE_11051,
	BASE_HW_ISSUE_T76X_1909,
	BASE_HW_ISSUE_T76X_1963,
	BASE_HW_ISSUE_END
};

static const enum base_hw_issue base_hw_issues_t76x_r0p0[] = {
	BASE_HW_ISSUE_9435,
	BASE_HW_ISSUE_10821,
	BASE_HW_ISSUE_10883,
	BASE_HW_ISSUE_10946,
	BASE_HW_ISSUE_11020,
	BASE_HW_ISSUE_11024,
	BASE_HW_ISSUE_11042,
	BASE_HW_ISSUE_11051,
	BASE_HW_ISSUE_T76X_26,
	BASE_HW_ISSUE_T76X_1909,
	BASE_HW_ISSUE_T76X_1963,
	BASE_HW_ISSUE_T76X_3086,
	BASE_HW_ISSUE_T76X_3542,
	BASE_HW_ISSUE_T76X_3556,
	BASE_HW_ISSUE_T76X_3700,
	BASE_HW_ISSUE_T76X_3793,
	BASE_HW_ISSUE_T76X_3953,
	BASE_HW_ISSUE_T76X_3960,
	BASE_HW_ISSUE_T76X_3964,
	BASE_HW_ISSUE_T76X_3966,
	BASE_HW_ISSUE_TMIX_7891,
	BASE_HW_ISSUE_END
};

static const enum base_hw_issue base_hw_issues_t76x_r0p1[] = {
	BASE_HW_ISSUE_9435,
	BASE_HW_ISSUE_10821,
	BASE_HW_ISSUE_10883,
	BASE_HW_ISSUE_10946,
	BASE_HW_ISSUE_11020,
	BASE_HW_ISSUE_11024,
	BASE_HW_ISSUE_11042,
	BASE_HW_ISSUE_11051,
	BASE_HW_ISSUE_T76X_26,
	BASE_HW_ISSUE_T76X_1909,
	BASE_HW_ISSUE_T76X_1963,
	BASE_HW_ISSUE_T76X_3086,
	BASE_HW_ISSUE_T76X_3542,
	BASE_HW_ISSUE_T76X_3556,
	BASE_HW_ISSUE_T76X_3700,
	BASE_HW_ISSUE_T76X_3793,
	BASE_HW_ISSUE_T76X_3953,
	BASE_HW_ISSUE_T76X_3960,
	BASE_HW_ISSUE_T76X_3964,
	BASE_HW_ISSUE_T76X_3966,
	BASE_HW_ISSUE_TMIX_7891,
	BASE_HW_ISSUE_END
};

static const enum base_hw_issue base_hw_issues_t76x_r0p1_50rel0[] = {
	BASE_HW_ISSUE_9435,
	BASE_HW_ISSUE_10821,
	BASE_HW_ISSUE_10883,
	BASE_HW_ISSUE_10946,
	BASE_HW_ISSUE_11042,
	BASE_HW_ISSUE_11051,
	BASE_HW_ISSUE_T76X_26,
	BASE_HW_ISSUE_T76X_1909,
	BASE_HW_ISSUE_T76X_1963,
	BASE_HW_ISSUE_T76X_3086,
	BASE_HW_ISSUE_T76X_3542,
	BASE_HW_ISSUE_T76X_3556,
	BASE_HW_ISSUE_T76X_3700,
	BASE_HW_ISSUE_T76X_3793,
	BASE_HW_ISSUE_T76X_3953,
	BASE_HW_ISSUE_T76X_3960,
	BASE_HW_ISSUE_T76X_3964,
	BASE_HW_ISSUE_T76X_3966,
	BASE_HW_ISSUE_TMIX_7891,
	BASE_HW_ISSUE_END
};

static const enum base_hw_issue base_hw_issues_t76x_r0p2[] = {
	BASE_HW_ISSUE_9435,
	BASE_HW_ISSUE_10821,
	BASE_HW_ISSUE_10883,
	BASE_HW_ISSUE_10946,
	BASE_HW_ISSUE_11020,
	BASE_HW_ISSUE_11024,
	BASE_HW_ISSUE_11042,
	BASE_HW_ISSUE_11051,
	BASE_HW_ISSUE_T76X_26,
	BASE_HW_ISSUE_T76X_1909,
	BASE_HW_ISSUE_T76X_1963,
	BASE_HW_ISSUE_T76X_3086,
	BASE_HW_ISSUE_T76X_3542,
	BASE_HW_ISSUE_T76X_3556,
	BASE_HW_ISSUE_T76X_3700,
	BASE_HW_ISSUE_T76X_3793,
	BASE_HW_ISSUE_T76X_3953,
	BASE_HW_ISSUE_T76X_3960,
	BASE_HW_ISSUE_T76X_3964,
	BASE_HW_ISSUE_T76X_3966,
	BASE_HW_ISSUE_TMIX_7891,
	BASE_HW_ISSUE_END
};

static const enum base_hw_issue base_hw_issues_t76x_r0p3[] = {
	BASE_HW_ISSUE_9435,
	BASE_HW_ISSUE_10821,
	BASE_HW_ISSUE_10883,
	BASE_HW_ISSUE_10946,
	BASE_HW_ISSUE_11042,
	BASE_HW_ISSUE_11051,
	BASE_HW_ISSUE_T76X_26,
	BASE_HW_ISSUE_T76X_1909,
	BASE_HW_ISSUE_T76X_1963,
	BASE_HW_ISSUE_T76X_3086,
	BASE_HW_ISSUE_T76X_3542,
	BASE_HW_ISSUE_T76X_3556,
	BASE_HW_ISSUE_T76X_3700,
	BASE_HW_ISSUE_T76X_3793,
	BASE_HW_ISSUE_T76X_3953,
	BASE_HW_ISSUE_T76X_3960,
	BASE_HW_ISSUE_T76X_3964,
	BASE_HW_ISSUE_T76X_3966,
	BASE_HW_ISSUE_TMIX_7891,
	BASE_HW_ISSUE_END
};

static const enum base_hw_issue base_hw_issues_t76x_r1p0[] = {
	BASE_HW_ISSUE_9435,
	BASE_HW_ISSUE_10821,
	BASE_HW_ISSUE_10883,
	BASE_HW_ISSUE_10946,
	BASE_HW_ISSUE_11042,
	BASE_HW_ISSUE_11051,
	BASE_HW_ISSUE_T76X_1909,
	BASE_HW_ISSUE_T76X_1963,
	BASE_HW_ISSUE_T76X_3086,
	BASE_HW_ISSUE_T76X_3700,
	BASE_HW_ISSUE_T76X_3793,
	BASE_HW_ISSUE_T76X_3953,
	BASE_HW_ISSUE_T76X_3960,
	BASE_HW_ISSUE_T76X_3964,
	BASE_HW_ISSUE_T76X_3966,
	BASE_HW_ISSUE_TMIX_7891,
	BASE_HW_ISSUE_END
};

static const enum base_hw_issue base_hw_issues_t72x_r0p0[] = {
	BASE_HW_ISSUE_6402,
	BASE_HW_ISSUE_9435,
	BASE_HW_ISSUE_10471,
	BASE_HW_ISSUE_10684,
	BASE_HW_ISSUE_10797,
	BASE_HW_ISSUE_10821,
	BASE_HW_ISSUE_10883,
	BASE_HW_ISSUE_10946,
	BASE_HW_ISSUE_11042,
	BASE_HW_ISSUE_11051,
	BASE_HW_ISSUE_T76X_1909,
	BASE_HW_ISSUE_T76X_1963,
	BASE_HW_ISSUE_T76X_3964,
	BASE_HW_ISSUE_END
};

static const enum base_hw_issue base_hw_issues_t72x_r1p0[] = {
	BASE_HW_ISSUE_6402,
	BASE_HW_ISSUE_9435,
	BASE_HW_ISSUE_10471,
	BASE_HW_ISSUE_10684,
	BASE_HW_ISSUE_10797,
	BASE_HW_ISSUE_10821,
	BASE_HW_ISSUE_10883,
	BASE_HW_ISSUE_10946,
	BASE_HW_ISSUE_11042,
	BASE_HW_ISSUE_11051,
	BASE_HW_ISSUE_T76X_1909,
	BASE_HW_ISSUE_T76X_1963,
	BASE_HW_ISSUE_T76X_3964,
	BASE_HW_ISSUE_END
};

static const enum base_hw_issue base_hw_issues_t72x_r1p1[] = {
	BASE_HW_ISSUE_6402,
	BASE_HW_ISSUE_9435,
	BASE_HW_ISSUE_10471,
	BASE_HW_ISSUE_10684,
	BASE_HW_ISSUE_10797,
	BASE_HW_ISSUE_10821,
	BASE_HW_ISSUE_10883,
	BASE_HW_ISSUE_10946,
	BASE_HW_ISSUE_11042,
	BASE_HW_ISSUE_11051,
	BASE_HW_ISSUE_T76X_1909,
	BASE_HW_ISSUE_T76X_1963,
	BASE_HW_ISSUE_T76X_3964,
	BASE_HW_ISSUE_END
};

static const enum base_hw_issue base_hw_issues_model_t72x[] = {
	BASE_HW_ISSUE_5736,
	BASE_HW_ISSUE_6402,
	BASE_HW_ISSUE_9435,
	BASE_HW_ISSUE_10471,
	BASE_HW_ISSUE_10797,
	BASE_HW_ISSUE_11042,
	BASE_HW_ISSUE_11051,
	BASE_HW_ISSUE_T76X_1909,
	BASE_HW_ISSUE_T76X_1963,
	BASE_HW_ISSUE_T76X_3964,
	GPUCORE_1619,
	BASE_HW_ISSUE_END
};

static const enum base_hw_issue base_hw_issues_model_t76x[] = {
	BASE_HW_ISSUE_5736,
	BASE_HW_ISSUE_9435,
	BASE_HW_ISSUE_11020,
	BASE_HW_ISSUE_11024,
	BASE_HW_ISSUE_11042,
	BASE_HW_ISSUE_11051,
	BASE_HW_ISSUE_T76X_1909,
	BASE_HW_ISSUE_T76X_1963,
	BASE_HW_ISSUE_T76X_3086,
	BASE_HW_ISSUE_T76X_3700,
	BASE_HW_ISSUE_T76X_3793,
	BASE_HW_ISSUE_T76X_3964,
	BASE_HW_ISSUE_TMIX_7891,
	GPUCORE_1619,
	BASE_HW_ISSUE_END
};

static const enum base_hw_issue base_hw_issues_model_t60x[] = {
	BASE_HW_ISSUE_5736,
	BASE_HW_ISSUE_6402,
	BASE_HW_ISSUE_8778,
	BASE_HW_ISSUE_9435,
	BASE_HW_ISSUE_10472,
	BASE_HW_ISSUE_10931,
	BASE_HW_ISSUE_11012,
	BASE_HW_ISSUE_11020,
	BASE_HW_ISSUE_11024,
	BASE_HW_ISSUE_11051,
	BASE_HW_ISSUE_T76X_1909,
	BASE_HW_ISSUE_T76X_1963,
	BASE_HW_ISSUE_T76X_3964,
	GPUCORE_1619,
	BASE_HW_ISSUE_END
};

static const enum base_hw_issue base_hw_issues_model_t62x[] = {
	BASE_HW_ISSUE_5736,
	BASE_HW_ISSUE_6402,
	BASE_HW_ISSUE_9435,
	BASE_HW_ISSUE_10472,
	BASE_HW_ISSUE_10931,
	BASE_HW_ISSUE_11012,
	BASE_HW_ISSUE_11020,
	BASE_HW_ISSUE_11024,
	BASE_HW_ISSUE_11042,
	BASE_HW_ISSUE_11051,
	BASE_HW_ISSUE_T76X_1909,
	BASE_HW_ISSUE_T76X_1963,
	BASE_HW_ISSUE_T76X_3964,
	GPUCORE_1619,
	BASE_HW_ISSUE_END
};

static const enum base_hw_issue base_hw_issues_tFRx_r0p1[] = {
	BASE_HW_ISSUE_9435,
	BASE_HW_ISSUE_10821,
	BASE_HW_ISSUE_10883,
	BASE_HW_ISSUE_10946,
	BASE_HW_ISSUE_11051,
	BASE_HW_ISSUE_T76X_1909,
	BASE_HW_ISSUE_T76X_1963,
	BASE_HW_ISSUE_T76X_3086,
	BASE_HW_ISSUE_T76X_3700,
	BASE_HW_ISSUE_T76X_3793,
	BASE_HW_ISSUE_T76X_3953,
	BASE_HW_ISSUE_T76X_3960,
	BASE_HW_ISSUE_T76X_3964,
	BASE_HW_ISSUE_T76X_3966,
	BASE_HW_ISSUE_TMIX_7891,
	BASE_HW_ISSUE_END
};

static const enum base_hw_issue base_hw_issues_tFRx_r0p2[] = {
	BASE_HW_ISSUE_9435,
	BASE_HW_ISSUE_10821,
	BASE_HW_ISSUE_10883,
	BASE_HW_ISSUE_10946,
	BASE_HW_ISSUE_11051,
	BASE_HW_ISSUE_T76X_1909,
	BASE_HW_ISSUE_T76X_1963,
	BASE_HW_ISSUE_T76X_3086,
	BASE_HW_ISSUE_T76X_3700,
	BASE_HW_ISSUE_T76X_3793,
	BASE_HW_ISSUE_T76X_3953,
	BASE_HW_ISSUE_T76X_3964,
	BASE_HW_ISSUE_T76X_3966,
	BASE_HW_ISSUE_TMIX_7891,
	BASE_HW_ISSUE_END
};

static const enum base_hw_issue base_hw_issues_tFRx_r1p0[] = {
	BASE_HW_ISSUE_9435,
	BASE_HW_ISSUE_10821,
	BASE_HW_ISSUE_10883,
	BASE_HW_ISSUE_10946,
	BASE_HW_ISSUE_11051,
	BASE_HW_ISSUE_T76X_1963,
	BASE_HW_ISSUE_T76X_3086,
	BASE_HW_ISSUE_T76X_3700,
	BASE_HW_ISSUE_T76X_3793,
	BASE_HW_ISSUE_T76X_3953,
	BASE_HW_ISSUE_T76X_3966,
	BASE_HW_ISSUE_TMIX_7891,
	BASE_HW_ISSUE_END
};

static const enum base_hw_issue base_hw_issues_tFRx_r2p0[] = {
	BASE_HW_ISSUE_9435,
	BASE_HW_ISSUE_10821,
	BASE_HW_ISSUE_10883,
	BASE_HW_ISSUE_10946,
	BASE_HW_ISSUE_11051,
	BASE_HW_ISSUE_T76X_1963,
	BASE_HW_ISSUE_T76X_3086,
	BASE_HW_ISSUE_T76X_3700,
	BASE_HW_ISSUE_T76X_3793,
	BASE_HW_ISSUE_T76X_3953,
	BASE_HW_ISSUE_T76X_3966,
	BASE_HW_ISSUE_TMIX_7891,
	BASE_HW_ISSUE_END
};

static const enum base_hw_issue base_hw_issues_model_tFRx[] = {
	BASE_HW_ISSUE_5736,
	BASE_HW_ISSUE_9435,
	BASE_HW_ISSUE_11051,
	BASE_HW_ISSUE_T76X_1963,
	BASE_HW_ISSUE_T76X_3086,
	BASE_HW_ISSUE_T76X_3700,
	BASE_HW_ISSUE_T76X_3793,
	BASE_HW_ISSUE_T76X_3964,
	BASE_HW_ISSUE_TMIX_7891,
	GPUCORE_1619,
	BASE_HW_ISSUE_END
};

static const enum base_hw_issue base_hw_issues_t86x_r0p2[] = {
	BASE_HW_ISSUE_9435,
	BASE_HW_ISSUE_10821,
	BASE_HW_ISSUE_10883,
	BASE_HW_ISSUE_10946,
	BASE_HW_ISSUE_11051,
	BASE_HW_ISSUE_T76X_1909,
	BASE_HW_ISSUE_T76X_1963,
	BASE_HW_ISSUE_T76X_3086,
	BASE_HW_ISSUE_T76X_3700,
	BASE_HW_ISSUE_T76X_3793,
	BASE_HW_ISSUE_T76X_3953,
	BASE_HW_ISSUE_T76X_3964,
	BASE_HW_ISSUE_T76X_3966,
	BASE_HW_ISSUE_TMIX_7891,
	BASE_HW_ISSUE_END
};

static const enum base_hw_issue base_hw_issues_t86x_r1p0[] = {
	BASE_HW_ISSUE_9435,
	BASE_HW_ISSUE_10821,
	BASE_HW_ISSUE_10883,
	BASE_HW_ISSUE_10946,
	BASE_HW_ISSUE_11051,
	BASE_HW_ISSUE_T76X_1963,
	BASE_HW_ISSUE_T76X_3086,
	BASE_HW_ISSUE_T76X_3700,
	BASE_HW_ISSUE_T76X_3793,
	BASE_HW_ISSUE_T76X_3953,
	BASE_HW_ISSUE_T76X_3966,
	BASE_HW_ISSUE_TMIX_7891,
	BASE_HW_ISSUE_END
};

static const enum base_hw_issue base_hw_issues_t86x_r2p0[] = {
	BASE_HW_ISSUE_9435,
	BASE_HW_ISSUE_10821,
	BASE_HW_ISSUE_10883,
	BASE_HW_ISSUE_10946,
	BASE_HW_ISSUE_11051,
	BASE_HW_ISSUE_T76X_1963,
	BASE_HW_ISSUE_T76X_3086,
	BASE_HW_ISSUE_T76X_3700,
	BASE_HW_ISSUE_T76X_3793,
	BASE_HW_ISSUE_T76X_3953,
	BASE_HW_ISSUE_T76X_3966,
	BASE_HW_ISSUE_TMIX_7891,
	BASE_HW_ISSUE_END
};

static const enum base_hw_issue base_hw_issues_model_t86x[] = {
	BASE_HW_ISSUE_5736,
	BASE_HW_ISSUE_9435,
	BASE_HW_ISSUE_11051,
	BASE_HW_ISSUE_T76X_1963,
	BASE_HW_ISSUE_T76X_3086,
	BASE_HW_ISSUE_T76X_3700,
	BASE_HW_ISSUE_T76X_3793,
	BASE_HW_ISSUE_TMIX_7891,
	GPUCORE_1619,
	BASE_HW_ISSUE_END
};

static const enum base_hw_issue base_hw_issues_t83x_r0p1[] = {
	BASE_HW_ISSUE_9435,
	BASE_HW_ISSUE_10821,
	BASE_HW_ISSUE_10883,
	BASE_HW_ISSUE_10946,
	BASE_HW_ISSUE_11051,
	BASE_HW_ISSUE_T76X_1909,
	BASE_HW_ISSUE_T76X_1963,
	BASE_HW_ISSUE_T76X_3086,
	BASE_HW_ISSUE_T76X_3700,
	BASE_HW_ISSUE_T76X_3793,
	BASE_HW_ISSUE_T76X_3953,
	BASE_HW_ISSUE_T76X_3960,
	BASE_HW_ISSUE_TMIX_7891,
	BASE_HW_ISSUE_END
};

static const enum base_hw_issue base_hw_issues_t83x_r1p0[] = {
	BASE_HW_ISSUE_9435,
	BASE_HW_ISSUE_10821,
	BASE_HW_ISSUE_10883,
	BASE_HW_ISSUE_10946,
	BASE_HW_ISSUE_11051,
	BASE_HW_ISSUE_T76X_1963,
	BASE_HW_ISSUE_T76X_3086,
	BASE_HW_ISSUE_T76X_3700,
	BASE_HW_ISSUE_T76X_3793,
	BASE_HW_ISSUE_T76X_3953,
	BASE_HW_ISSUE_T76X_3960,
	BASE_HW_ISSUE_TMIX_7891,
	BASE_HW_ISSUE_END
};

static const enum base_hw_issue base_hw_issues_model_t83x[] = {
	BASE_HW_ISSUE_5736,
	BASE_HW_ISSUE_9435,
	BASE_HW_ISSUE_11051,
	BASE_HW_ISSUE_T76X_1909,
	BASE_HW_ISSUE_T76X_1963,
	BASE_HW_ISSUE_T76X_3086,
	BASE_HW_ISSUE_T76X_3700,
	BASE_HW_ISSUE_T76X_3793,
	BASE_HW_ISSUE_T76X_3964,
	BASE_HW_ISSUE_TMIX_7891,
	GPUCORE_1619,
	BASE_HW_ISSUE_END
};

static const enum base_hw_issue base_hw_issues_t82x_r0p0[] = {
	BASE_HW_ISSUE_9435,
	BASE_HW_ISSUE_10821,
	BASE_HW_ISSUE_10883,
	BASE_HW_ISSUE_10946,
	BASE_HW_ISSUE_11051,
	BASE_HW_ISSUE_T76X_1909,
	BASE_HW_ISSUE_T76X_1963,
	BASE_HW_ISSUE_T76X_3086,
	BASE_HW_ISSUE_T76X_3700,
	BASE_HW_ISSUE_T76X_3793,
	BASE_HW_ISSUE_T76X_3953,
	BASE_HW_ISSUE_T76X_3960,
	BASE_HW_ISSUE_T76X_3964,
	BASE_HW_ISSUE_TMIX_7891,
	BASE_HW_ISSUE_END
};

static const enum base_hw_issue base_hw_issues_t82x_r0p1[] = {
	BASE_HW_ISSUE_9435,
	BASE_HW_ISSUE_10821,
	BASE_HW_ISSUE_10883,
	BASE_HW_ISSUE_10946,
	BASE_HW_ISSUE_11051,
	BASE_HW_ISSUE_T76X_1909,
	BASE_HW_ISSUE_T76X_1963,
	BASE_HW_ISSUE_T76X_3086,
	BASE_HW_ISSUE_T76X_3700,
	BASE_HW_ISSUE_T76X_3793,
	BASE_HW_ISSUE_T76X_3953,
	BASE_HW_ISSUE_T76X_3960,
	BASE_HW_ISSUE_TMIX_7891,
	BASE_HW_ISSUE_END
};

static const enum base_hw_issue base_hw_issues_t82x_r1p0[] = {
	BASE_HW_ISSUE_9435,
	BASE_HW_ISSUE_10821,
	BASE_HW_ISSUE_10883,
	BASE_HW_ISSUE_10946,
	BASE_HW_ISSUE_11051,
	BASE_HW_ISSUE_T76X_1963,
	BASE_HW_ISSUE_T76X_3086,
	BASE_HW_ISSUE_T76X_3700,
	BASE_HW_ISSUE_T76X_3793,
	BASE_HW_ISSUE_T76X_3953,
	BASE_HW_ISSUE_T76X_3960,
	BASE_HW_ISSUE_TMIX_7891,
	BASE_HW_ISSUE_END
};

static const enum base_hw_issue base_hw_issues_model_t82x[] = {
	BASE_HW_ISSUE_5736,
	BASE_HW_ISSUE_9435,
	BASE_HW_ISSUE_11051,
	BASE_HW_ISSUE_T76X_1909,
	BASE_HW_ISSUE_T76X_1963,
	BASE_HW_ISSUE_T76X_3086,
	BASE_HW_ISSUE_T76X_3700,
	BASE_HW_ISSUE_T76X_3793,
	BASE_HW_ISSUE_TMIX_7891,
	GPUCORE_1619,
	BASE_HW_ISSUE_END
};

static const enum base_hw_issue base_hw_issues_tMIx_r0p0_05dev0[] = {
	BASE_HW_ISSUE_9435,
	BASE_HW_ISSUE_10682,
	BASE_HW_ISSUE_10821,
	BASE_HW_ISSUE_T76X_3700,
	BASE_HW_ISSUE_T76X_3953,
	BASE_HW_ISSUE_TMIX_7891,
	BASE_HW_ISSUE_TMIX_8042,
	BASE_HW_ISSUE_TMIX_8133,
	BASE_HW_ISSUE_TMIX_8138,
	BASE_HW_ISSUE_END
};

static const enum base_hw_issue base_hw_issues_tMIx_r0p0[] = {
	BASE_HW_ISSUE_9435,
	BASE_HW_ISSUE_10682,
	BASE_HW_ISSUE_10821,
	BASE_HW_ISSUE_T76X_3700,
	BASE_HW_ISSUE_TMIX_7891,
	BASE_HW_ISSUE_TMIX_7940,
	BASE_HW_ISSUE_TMIX_8042,
	BASE_HW_ISSUE_TMIX_8133,
	BASE_HW_ISSUE_TMIX_8138,
	BASE_HW_ISSUE_TMIX_8206,
	BASE_HW_ISSUE_END
};

static const enum base_hw_issue base_hw_issues_model_tMIx[] = {
	BASE_HW_ISSUE_5736,
	BASE_HW_ISSUE_9435,
	BASE_HW_ISSUE_T76X_3700,
	BASE_HW_ISSUE_TMIX_7891,
	BASE_HW_ISSUE_TMIX_7940,
	BASE_HW_ISSUE_TMIX_8042,
	BASE_HW_ISSUE_TMIX_8133,
	BASE_HW_ISSUE_TMIX_8138,
	BASE_HW_ISSUE_TMIX_8206,
	GPUCORE_1619,
	BASE_HW_ISSUE_END
};

#endif /* _BASE_HWCONFIG_ISSUES_H_ */
