summaryrefslogtreecommitdiff
path: root/board/samsung/common
diff options
context:
space:
mode:
authorVadim Bendebury <vbendeb@chromium.org>2014-02-27 13:26:02 -0700
committerSimon Glass <sjg@chromium.org>2014-03-17 20:05:46 -0600
commit41364f0fbe1e550a3326dd4310e41adec5ce30d7 (patch)
treeb9a35451b58a83eef5cdbc196ebb9bd03a854112 /board/samsung/common
parent006e73b9cafde9287912c4699091f3b1f07d3f97 (diff)
downloadu-boot-41364f0fbe1e550a3326dd4310e41adec5ce30d7.tar.gz
cros_ec: Move EC interface into common library
Add a common library for obtaining access to the Chrome OS EC. This is used by boards which need to talk to the EC. Reviewed-by: Vadim Bendebury <vbendeb@google.com> Tested-by: Vadim Bendebury <vbendeb@google.com> Signed-off-by: Vadim Bendebury <vbendeb@chromium.org> Signed-off-by: Simon Glass <sjg@chromium.org>
Diffstat (limited to 'board/samsung/common')
-rw-r--r--board/samsung/common/board.c29
1 files changed, 3 insertions, 26 deletions
diff --git a/board/samsung/common/board.c b/board/samsung/common/board.c
index cd873bc56d..3866495259 100644
--- a/board/samsung/common/board.c
+++ b/board/samsung/common/board.c
@@ -26,13 +26,6 @@
DECLARE_GLOBAL_DATA_PTR;
-struct local_info {
- struct cros_ec_dev *cros_ec_dev; /* Pointer to cros_ec device */
- int cros_ec_err; /* Error for cros_ec, 0 if ok */
-};
-
-static struct local_info local;
-
#if defined CONFIG_EXYNOS_TMU
/* Boot Time Thermal Analysis for SoC temperature threshold breach */
static void boot_temp_check(void)
@@ -144,22 +137,6 @@ int board_early_init_f(void)
}
#endif
-struct cros_ec_dev *board_get_cros_ec_dev(void)
-{
- return local.cros_ec_dev;
-}
-
-#ifdef CONFIG_CROS_EC
-static int board_init_cros_ec_devices(const void *blob)
-{
- local.cros_ec_err = cros_ec_init(blob, &local.cros_ec_dev);
- if (local.cros_ec_err)
- return -1; /* Will report in board_late_init() */
-
- return 0;
-}
-#endif
-
#if defined(CONFIG_POWER)
#ifdef CONFIG_POWER_MAX77686
static int pmic_reg_update(struct pmic *p, int reg, uint regval)
@@ -384,12 +361,12 @@ int board_late_init(void)
{
stdio_print_current_devices();
- if (local.cros_ec_err) {
+ if (cros_ec_get_error()) {
/* Force console on */
gd->flags &= ~GD_FLG_SILENT;
printf("cros-ec communications failure %d\n",
- local.cros_ec_err);
+ cros_ec_get_error());
puts("\nPlease reset with Power+Refresh\n\n");
panic("Cannot init cros-ec device");
return -1;
@@ -401,7 +378,7 @@ int board_late_init(void)
int arch_early_init_r(void)
{
#ifdef CONFIG_CROS_EC
- if (board_init_cros_ec_devices(gd->fdt_blob)) {
+ if (cros_ec_board_init()) {
printf("%s: Failed to init EC\n", __func__);
return 0;
}