diff --git a/lib/system/generic/xlnx/CMakeLists.txt b/lib/system/generic/xlnx/CMakeLists.txt index 4f595bdd..af02c7e1 100644 --- a/lib/system/generic/xlnx/CMakeLists.txt +++ b/lib/system/generic/xlnx/CMakeLists.txt @@ -8,4 +8,8 @@ collect (PROJECT_LIB_HEADERS sys.h) collect (PROJECT_LIB_SOURCES irq.c) -# vim: expandtab:ts=2:sw=2:smartindent +include(CheckSymbolExists) +check_symbol_exists(SDT "bspconfig.h" HAS_SYSTEM_DT) +if (HAS_SYSTEM_DT) + collect (PROJECT_LIB_HEADERS sys_devicetree.h) +endif() diff --git a/lib/system/generic/xlnx/sys.h b/lib/system/generic/xlnx/sys.h index c144c3ee..0b352de6 100644 --- a/lib/system/generic/xlnx/sys.h +++ b/lib/system/generic/xlnx/sys.h @@ -1,5 +1,6 @@ /* * Copyright (c) 2015, Xilinx Inc. and Contributors. All rights reserved. + * Copyright (C) 2023, Advanced Micro Devices, Inc. * * SPDX-License-Identifier: BSD-3-Clause */ @@ -28,6 +29,10 @@ #include #include +#ifdef SDT +#include +#endif + #ifndef __METAL_GENERIC_XLNX_SYS__H__ #define __METAL_GENERIC_XLNX_SYS__H__ diff --git a/lib/system/generic/xlnx/sys_devicetree.h b/lib/system/generic/xlnx/sys_devicetree.h new file mode 100644 index 00000000..ee9d6c16 --- /dev/null +++ b/lib/system/generic/xlnx/sys_devicetree.h @@ -0,0 +1,25 @@ +/* + * Copyright (c) 2022-2023 Advanced Micro Devices, Inc. All Rights Reserved. + * + * SPDX-License-Identifier: BSD-3-Clause + */ + +/* + * @file generic/xlnx/sys_devicetree.h + * @brief Xilinx-AMD Specific symbols for System Device Tree Flow + */ + +#ifndef __METAL_GENERIC_SYS_XLNX_SYS_DEVICETREE_H__ +#define __METAL_GENERIC_SYS_XLNX_SYS_DEVICETREE_H__ + +/* The Xilinx-AMD System Device Tree (SDT) Flow BSP provides this file. */ +#include "bspconfig.h" + +#ifndef XPAR_SCUGIC_0_DEVICE_ID +#define XPAR_SCUGIC_0_DEVICE_ID XPAR_SCUGIC_SINGLE_DEVICE_ID +#endif + +#ifndef XPAR_SCUGIC_0_DIST_BASEADDR +#define XPAR_SCUGIC_0_DIST_BASEADDR XPAR_SCUGIC_DIST_BASEADDR +#endif +#endif /* __METAL_GENERIC_SYS_XLNX_SYS_DEVICETREE_H__ */