30 lines
859 B
C
30 lines
859 B
C
|
/* SPDX-License-Identifier: GPL-2.0 */
|
||
|
/*
|
||
|
* Copyright (C) 2022 Xilinx, Inc.
|
||
|
*/
|
||
|
#ifndef _XILINX_MB_MANAGER_H
|
||
|
#define _XILINX_MB_MANAGER_H
|
||
|
|
||
|
# ifndef __ASSEMBLY__
|
||
|
|
||
|
#include <linux/of_address.h>
|
||
|
|
||
|
/*
|
||
|
* When the break vector gets asserted because of error injection, the break
|
||
|
* signal must be blocked before exiting from the break handler, Below api
|
||
|
* updates the manager address and control register and error counter callback
|
||
|
* arguments, which will be used by the break handler to block the break and
|
||
|
* call the callback function.
|
||
|
*/
|
||
|
void xmb_manager_register(uintptr_t phys_baseaddr, u32 cr_val,
|
||
|
void (*callback)(void *data),
|
||
|
void *priv, void (*reset_callback)(void *data));
|
||
|
asmlinkage void xmb_inject_err(void);
|
||
|
|
||
|
# endif /* __ASSEMBLY__ */
|
||
|
|
||
|
/* Error injection offset */
|
||
|
#define XMB_INJECT_ERR_OFFSET 0x200
|
||
|
|
||
|
#endif /* _XILINX_MB_MANAGER_H */
|