blob: 7cac77ebe671ca372501ff44d97572d7acd0a1b7 [file] [log] [blame]
Jeenu Viswambharand5ec3672017-01-03 11:01:51 +00001/*
Roberto Vargas05712702018-02-12 12:36:17 +00002 * Copyright (c) 2017-2018, ARM Limited and Contributors. All rights reserved.
Jeenu Viswambharand5ec3672017-01-03 11:01:51 +00003 *
dp-armfa3cf0b2017-05-03 09:38:09 +01004 * SPDX-License-Identifier: BSD-3-Clause
Jeenu Viswambharand5ec3672017-01-03 11:01:51 +00005 */
6
Antonio Nino Diaz9fe40fd2018-10-25 17:11:02 +01007#ifndef ERRATA_REPORT_H
8#define ERRATA_REPORT_H
Jeenu Viswambharand5ec3672017-01-03 11:01:51 +00009
Julius Werner53456fc2019-07-09 13:49:11 -070010#ifndef __ASSEMBLER__
Jeenu Viswambharand5ec3672017-01-03 11:01:51 +000011
12#include <arch.h>
13#include <arch_helpers.h>
Antonio Nino Diaze0f90632018-12-14 00:18:21 +000014#include <lib/spinlock.h>
15#include <lib/utils_def.h>
Jeenu Viswambharand5ec3672017-01-03 11:01:51 +000016
17#if DEBUG
18void print_errata_status(void);
19#else
20static inline void print_errata_status(void) {}
21#endif
22
Roberto Vargas05712702018-02-12 12:36:17 +000023void errata_print_msg(unsigned int status, const char *cpu, const char *id);
24int errata_needs_reporting(spinlock_t *lock, uint32_t *reported);
25
Julius Werner53456fc2019-07-09 13:49:11 -070026#endif /* __ASSEMBLER__ */
Jeenu Viswambharand5ec3672017-01-03 11:01:51 +000027
28/* Errata status */
29#define ERRATA_NOT_APPLIES 0
30#define ERRATA_APPLIES 1
31#define ERRATA_MISSING 2
32
Antonio Nino Diaz9fe40fd2018-10-25 17:11:02 +010033#endif /* ERRATA_REPORT_H */