44 lines
856 B
C
44 lines
856 B
C
/*
|
|
* Copyright (c) 2015, Xilinx Inc. and Contributors. All rights reserved.
|
|
*
|
|
* SPDX-License-Identifier: BSD-3-Clause
|
|
*/
|
|
|
|
/*
|
|
* @file generic/zynq7/sys.h
|
|
* @brief generic zynq7 system primitives for libmetal.
|
|
*/
|
|
|
|
#ifndef __METAL_GENERIC_SYS__H__
|
|
#error "Include metal/sys.h instead of metal/generic/@PROJECT_MACHINE@/sys.h"
|
|
#endif
|
|
|
|
#include "xscugic.h"
|
|
|
|
#ifndef __METAL_GENERIC_ZYNQ7_SYS__H__
|
|
#define __METAL_GENERIC_ZYNQ7_SYS__H__
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
#ifdef METAL_INTERNAL
|
|
|
|
static inline void sys_irq_enable(unsigned int vector)
|
|
{
|
|
XScuGic_EnableIntr(XPAR_SCUGIC_0_DIST_BASEADDR, vector);
|
|
}
|
|
|
|
static inline void sys_irq_disable(unsigned int vector)
|
|
{
|
|
XScuGic_DisableIntr(XPAR_SCUGIC_0_DIST_BASEADDR, vector);
|
|
}
|
|
|
|
#endif /* METAL_INTERNAL */
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#endif /* __METAL_GENERIC_ZYNQ7_SYS__H__ */
|