diff --git a/lib/sw_apps/zynqmp_pmufw/src/lscript.ld b/lib/sw_apps/zynqmp_pmufw/src/lscript.ld index db241c43..049f0135 100644 --- a/lib/sw_apps/zynqmp_pmufw/src/lscript.ld +++ b/lib/sw_apps/zynqmp_pmufw/src/lscript.ld @@ -166,6 +166,10 @@ _SDA2_BASE_ = __sdata2_start + ((__sbss2_end - __sdata2_start) / 2 ); KEEP (*(.xpbr_serv_ext_tbl)) } > PMU_RAM +.xpbr_serv_ext_tbl 0xffddf6e0: { + KEEP (*(.xpbr_serv_ext_tbl)) +} > ram_cntlr + _end = .; } diff --git a/lib/sw_apps/zynqmp_pmufw/src/xpfw_rom_interface.c b/lib/sw_apps/zynqmp_pmufw/src/xpfw_rom_interface.c new file mode 100644 index 00000000..d3b20589 --- /dev/null +++ b/lib/sw_apps/zynqmp_pmufw/src/xpfw_rom_interface.c @@ -0,0 +1,34 @@ +/* + * Copyright (C) 2015 Xilinx, Inc. All rights reserved. + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * Use of the Software is limited solely to applications: + * (a) running on a Xilinx device, or + * (b) that interact with a Xilinx device through a bus or interconnect. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * XILINX CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, + * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF + * OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + * + * Except as contained in this notice, the name of the Xilinx shall not be used + * in advertising or otherwise to promote the sale, use or other dealings in + * this Software without prior written authorization from Xilinx. + */ + +#include "xpfw_rom_interface.h" + +__attribute__((used, section(".xpbr_serv_ext_tbl"))) + XpbrServHndlr_t XpbrServExtTbl[XPBR_SERV_EXT_TBL_MAX]; diff --git a/lib/sw_apps/zynqmp_pmufw/src/xpfw_rom_interface.h b/lib/sw_apps/zynqmp_pmufw/src/xpfw_rom_interface.h index 83a45ac6..ee626928 100644 --- a/lib/sw_apps/zynqmp_pmufw/src/xpfw_rom_interface.h +++ b/lib/sw_apps/zynqmp_pmufw/src/xpfw_rom_interface.h @@ -49,6 +49,9 @@ * @note: These Identifiers are also used to identify the service mode * error. */ + +#include "xil_types.h" + enum xpbr_serv_ext_id { XPBR_SERV_EXT_TBL_BASE = 0U, /* RESERVED 1U */ @@ -312,6 +315,7 @@ enum xpbr_serv_ext_id { typedef u32 (*XpbrServHndlr_t) (void); extern const XpbrServHndlr_t XpbrServHndlrTbl[XPBR_SERV_EXT_TBL_MAX]; +extern XpbrServHndlr_t XpbrServExtTbl[XPBR_SERV_EXT_TBL_MAX]; static inline u32 XpbrACPU0SleepHandler(void) { diff --git a/lib/sw_apps/zynqmp_pmufw/src/xpfw_version.h b/lib/sw_apps/zynqmp_pmufw/src/xpfw_version.h index 8b01add6..70284836 100644 --- a/lib/sw_apps/zynqmp_pmufw/src/xpfw_version.h +++ b/lib/sw_apps/zynqmp_pmufw/src/xpfw_version.h @@ -1,4 +1,4 @@ #ifndef ZYNQMP_XPFW_VERSION__H_ #define ZYNQMP_XPFW_VERSION__H_ - #define ZYNQMP_XPFW_VERSION "rc1-00006-gdc6ab46" + #define ZYNQMP_XPFW_VERSION "2015.1-swbeta2-7-gaea3444396c3" #endif