summaryrefslogtreecommitdiffstats
path: root/src/soc/qualcomm/ipq806x/include/soc/usbl_if.h
diff options
context:
space:
mode:
authorVadim Bendebury <vbendeb@chromium.org>2015-03-02 11:58:16 -0800
committerPatrick Georgi <pgeorgi@google.com>2015-04-21 08:24:15 +0200
commit90fe5824b124bcb415e3535722e0653505d66cc4 (patch)
tree520a52cc84852adb24acccdc041f7a710b33ff39 /src/soc/qualcomm/ipq806x/include/soc/usbl_if.h
parentd99e08285b478aa0923a8673c6b5e3c39019626d (diff)
downloadcoreboot-90fe5824b124bcb415e3535722e0653505d66cc4.tar.gz
coreboot-90fe5824b124bcb415e3535722e0653505d66cc4.tar.bz2
coreboot-90fe5824b124bcb415e3535722e0653505d66cc4.zip
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 <pgeorgi@chromium.org> Original-Commit-Id: ed39e2bcd793fd490416b407f627b5a9a86b8f78 Original-Change-Id: I1dffbf4559853a818e81ca5fdeff013cf008dd6a Original-Signed-off-by: Vadim Bendebury <vbendeb@chromium.org> Original-Reviewed-on: https://chromium-review.googlesource.com/255143 Original-Reviewed-by: Aaron Durbin <adurbin@chromium.org> Original-Commit-Queue: Vadim Bendebury <vbendeb@gmail.com> Reviewed-on: http://review.coreboot.org/9841 Tested-by: build bot (Jenkins) Reviewed-by: Stefan Reinauer <stefan.reinauer@coreboot.org>
Diffstat (limited to 'src/soc/qualcomm/ipq806x/include/soc/usbl_if.h')
-rw-r--r--src/soc/qualcomm/ipq806x/include/soc/usbl_if.h65
1 files changed, 65 insertions, 0 deletions
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 000000000000..eaa96ff4308b
--- /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 <types.h>
+
+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