summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Hendricks <dhendrix@chromium.org>2012-12-27 15:11:27 -0800
committerRonald G. Minnich <rminnich@gmail.com>2013-01-03 06:41:55 +0100
commitd3c7530908463537c38d84d47d0c29a3bc5dac63 (patch)
treefa82ef53d6be7bf48f454d6e1f85cf8bfaf1106f
parent8583ac390a23a09c4bf75b3b9a9f2294d0523d87 (diff)
import SPL files for board_i2c_{claim,release}_bus()
This imports SPL (second phase loader) files from U-Boot. Most of the content of these files will eventually go away since they're fairly U-Boot specific. For now they are here to make Jenkins happy. Change-Id: Ib3a365ecb9dc304b20f7c1c06665aad2c0c53e69 Signed-off-by: David Hendricks <dhendrix@chromium.org> Reviewed-on: http://review.coreboot.org/2081 Tested-by: build bot (Jenkins) Reviewed-by: Hung-Te Lin <hungte@chromium.org>
-rw-r--r--src/cpu/samsung/exynos5-common/spl.h4
-rw-r--r--src/mainboard/google/snow/smdk5250_spl.c30
2 files changed, 32 insertions, 2 deletions
diff --git a/src/cpu/samsung/exynos5-common/spl.h b/src/cpu/samsung/exynos5-common/spl.h
index afa9a8e909..439e1b0383 100644
--- a/src/cpu/samsung/exynos5-common/spl.h
+++ b/src/cpu/samsung/exynos5-common/spl.h
@@ -91,4 +91,8 @@ struct spl_machine_param *spl_get_machine_params(void);
*/
void spl_early_init(void);
+/* FIXME(dhendrix): for early i2c init */
+void board_i2c_release_bus(int node);
+int board_i2c_claim_bus(int node);
+
#endif /* __ASM_ARCH_EXYNOS_SPL_H__ */
diff --git a/src/mainboard/google/snow/smdk5250_spl.c b/src/mainboard/google/snow/smdk5250_spl.c
index 204e41106b..0dbd4e1165 100644
--- a/src/mainboard/google/snow/smdk5250_spl.c
+++ b/src/mainboard/google/snow/smdk5250_spl.c
@@ -24,8 +24,7 @@
#define SIGNATURE 0xdeadbeef
/* Parameters of early board initialization in SPL */
-static struct spl_machine_param machine_param
- __attribute__((section(".machine_param"))) = {
+static struct spl_machine_param machine_param = {
.signature = SIGNATURE,
.version = 1,
.params = "vmubfasirMw",
@@ -65,6 +64,18 @@ struct spl_machine_param *spl_get_machine_params(void)
return &machine_param;
}
+#if 0
+int board_get_revision(void)
+{
+ struct spl_machine_param *params = spl_get_machine_params();
+ unsigned gpio[CONFIG_BOARD_REV_GPIO_COUNT];
+
+ gpio[0] = params->board_rev_gpios & 0xffff;
+ gpio[1] = params->board_rev_gpios >> 16;
+ return gpio_decode_number(gpio, CONFIG_BOARD_REV_GPIO_COUNT);
+}
+#endif
+
int board_wakeup_permitted(void)
{
struct spl_machine_param *param = spl_get_machine_params();
@@ -76,3 +87,18 @@ int board_wakeup_permitted(void)
return !is_bad_wake;
}
+
+/*
+ * TODO(sjg@chromium.org):
+ * Declared there here for SPL, since there is no core i2c subsystem and
+ * cmd_i2c.c is not included.
+ */
+void board_i2c_release_bus(int node)
+{
+}
+
+int board_i2c_claim_bus(int node)
+{
+ /* EC is not allowed to touch the bus until we enter U-Boot */
+ return 0;
+}