From 90fe5824b124bcb415e3535722e0653505d66cc4 Mon Sep 17 00:00:00 2001 From: Vadim Bendebury Date: Mon, 2 Mar 2015 11:58:16 -0800 Subject: ipq808x: add uber sbl parameter definitions This describes the structure of the information passed through a pointer by uber-sbl to be processed by the coreboot bootblock. BRANCH=storm BUG=chrome-os-partner:30623 TEST=with the rest of the patches applied observed uber-sbl information added to the coreboot console log. Change-Id: If04c4ee0ccfda3df45bd22eb576aaa5b51f1c4b5 Signed-off-by: Patrick Georgi Original-Commit-Id: ed39e2bcd793fd490416b407f627b5a9a86b8f78 Original-Change-Id: I1dffbf4559853a818e81ca5fdeff013cf008dd6a Original-Signed-off-by: Vadim Bendebury Original-Reviewed-on: https://chromium-review.googlesource.com/255143 Original-Reviewed-by: Aaron Durbin Original-Commit-Queue: Vadim Bendebury Reviewed-on: http://review.coreboot.org/9841 Tested-by: build bot (Jenkins) Reviewed-by: Stefan Reinauer --- src/soc/qualcomm/ipq806x/include/soc/usbl_if.h | 65 ++++++++++++++++++++++++++ 1 file changed, 65 insertions(+) create mode 100644 src/soc/qualcomm/ipq806x/include/soc/usbl_if.h (limited to 'src/soc') diff --git a/src/soc/qualcomm/ipq806x/include/soc/usbl_if.h b/src/soc/qualcomm/ipq806x/include/soc/usbl_if.h new file mode 100644 index 0000000000..eaa96ff430 --- /dev/null +++ b/src/soc/qualcomm/ipq806x/include/soc/usbl_if.h @@ -0,0 +1,65 @@ +/* + * This file is part of the coreboot project. + * Copyright (C) 2015 The Linux Foundation. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. The name of the author may not be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#ifndef __SOC_QUALCOMM_IPQ806X_INCLUDE_SOC_USBL_IF_H__ +#define __SOC_QUALCOMM_IPQ806X_INCLUDE_SOC_USBL_IF_H__ + +#include + +typedef struct { + u32 time_stamp; + char msg[27]; + u8 type; + +} boot_log_entry; + +typedef struct { + u32 num_log_entries; + boot_log_entry *log; +} sbl_ro_info; + +typedef struct { + u32 start_magic; + u32 num; + char *version; + sbl_ro_info info[2]; + /* + * The two addresses below can be used for communicating with the RPM + * (passing it the starting address of the program to execute and + * triggering the jump to the program). Presently these addresses are + * hardcodeded in firmware source code. + */ + u32 *rpm_jump_trigger; + u32 *rpm_entry_addr_ptr; + u32 end_magic; +} uber_sbl_shared_info; + +#define UBER_SBL_SHARED_INFO_START_MAGIC 0x5552504d // URPM +#define UBER_SBL_SHARED_INFO_END_MAGIC 0x554b5254 // UKRT + +#endif -- cgit v1.2.3