diff options
author | danh-arm <dan.handley@arm.com> | 2016-06-15 15:57:02 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2016-06-15 15:57:02 +0100 |
commit | 50f7101a49d39243cca5942e3a2eb92ab460bd14 (patch) | |
tree | 5f435f90c53dd23ee58bef44846b3aec284e9584 /plat/xilinx/zynqmp/aarch64 | |
parent | f9455cea8c38f36f12c524226ccfae2ed2dabf87 (diff) | |
parent | 2ba6895919546c5b346e49b1390e64b76100e85c (diff) |
Merge pull request #650 from Xilinx/zynqmp-updates
Zynqmp updates
Diffstat (limited to 'plat/xilinx/zynqmp/aarch64')
-rw-r--r-- | plat/xilinx/zynqmp/aarch64/zynqmp_common.c | 24 |
1 files changed, 9 insertions, 15 deletions
diff --git a/plat/xilinx/zynqmp/aarch64/zynqmp_common.c b/plat/xilinx/zynqmp/aarch64/zynqmp_common.c index f89cdce1..1ba301de 100644 --- a/plat/xilinx/zynqmp/aarch64/zynqmp_common.c +++ b/plat/xilinx/zynqmp/aarch64/zynqmp_common.c @@ -28,12 +28,8 @@ * POSSIBILITY OF SUCH DAMAGE. */ -#include <arch_helpers.h> -#include <cci.h> #include <debug.h> -#include <gicv2.h> #include <mmio.h> -#include <plat_arm.h> #include <platform.h> #include <xlat_tables.h> #include "../zynqmp_private.h" @@ -187,11 +183,9 @@ static char *zynqmp_print_silicon_idcode(void) tmp = id; tmp &= ZYNQMP_CSU_IDCODE_XILINX_ID_MASK | - ZYNQMP_CSU_IDCODE_FAMILY_MASK | - ZYNQMP_CSU_IDCODE_REVISION_MASK; + ZYNQMP_CSU_IDCODE_FAMILY_MASK; maskid = ZYNQMP_CSU_IDCODE_XILINX_ID << ZYNQMP_CSU_IDCODE_XILINX_ID_SHIFT | - ZYNQMP_CSU_IDCODE_FAMILY << ZYNQMP_CSU_IDCODE_FAMILY_SHIFT | - ZYNQMP_CSU_IDCODE_REVISION << ZYNQMP_CSU_IDCODE_REVISION_SHIFT; + ZYNQMP_CSU_IDCODE_FAMILY << ZYNQMP_CSU_IDCODE_FAMILY_SHIFT; if (tmp != maskid) { ERROR("Incorrect XILINX IDCODE 0x%x, maskid 0x%x\n", id, maskid); return "UNKN"; @@ -275,13 +269,13 @@ int zynqmp_is_pmu_up(void) return zynqmp_pmufw_present; } -/* - * A single boot loader stack is expected to work on both the Foundation ZYNQMP - * models and the two flavours of the Base ZYNQMP models (AEMv8 & Cortex). The - * SYS_ID register provides a mechanism for detecting the differences between - * these platforms. This information is stored in a per-BL array to allow the - * code to take the correct path.Per BL platform configuration. - */ +unsigned int zynqmp_get_bootmode(void) +{ + uint32_t r = mmio_read_32(CRL_APB_BOOT_MODE_USER); + + return r & CRL_APB_BOOT_MODE_MASK; +} + void zynqmp_config_setup(void) { zynqmp_discover_pmufw(); |