diff options
author | Vadim Bendebury <vbendeb@chromium.org> | 2014-02-27 13:26:02 -0700 |
---|---|---|
committer | Simon Glass <sjg@chromium.org> | 2014-03-17 20:05:46 -0600 |
commit | 41364f0fbe1e550a3326dd4310e41adec5ce30d7 (patch) | |
tree | b9a35451b58a83eef5cdbc196ebb9bd03a854112 /board/samsung/common | |
parent | 006e73b9cafde9287912c4699091f3b1f07d3f97 (diff) | |
download | u-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.c | 29 |
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; } |