]>
Commit | Line | Data |
---|---|---|
43bd194c SG |
1 | /* |
2 | * Copyright (c) 2011 The Chromium OS Authors. | |
1a459660 | 3 | * SPDX-License-Identifier: GPL-2.0+ |
43bd194c SG |
4 | */ |
5 | ||
6 | #include <common.h> | |
86bf601d | 7 | #include <cros_ec.h> |
e2d8a714 | 8 | #include <dm.h> |
d99a6874 | 9 | #include <os.h> |
7d95f2a3 | 10 | #include <asm/u-boot-sandbox.h> |
d99a6874 | 11 | |
43bd194c SG |
12 | /* |
13 | * Pointer to initial global data area | |
14 | * | |
15 | * Here we initialize it. | |
16 | */ | |
17 | gd_t *gd; | |
18 | ||
e2d8a714 SG |
19 | /* Add a simple GPIO device */ |
20 | U_BOOT_DEVICE(gpio_sandbox) = { | |
21 | .name = "gpio_sandbox", | |
22 | }; | |
23 | ||
43bd194c SG |
24 | void flush_cache(unsigned long start, unsigned long size) |
25 | { | |
26 | } | |
27 | ||
28c860b2 | 28 | unsigned long timer_read_counter(void) |
6994ccf8 | 29 | { |
28c860b2 | 30 | return os_get_nsec() / 1000; |
43bd194c SG |
31 | } |
32 | ||
43bd194c SG |
33 | int dram_init(void) |
34 | { | |
a733b06b | 35 | gd->ram_size = CONFIG_SYS_SDRAM_SIZE; |
43bd194c SG |
36 | return 0; |
37 | } | |
86bf601d | 38 | |
7d95f2a3 SG |
39 | #ifdef CONFIG_BOARD_EARLY_INIT_F |
40 | int board_early_init_f(void) | |
41 | { | |
42 | #ifdef CONFIG_VIDEO_SANDBOX_SDL | |
43 | int ret; | |
44 | ||
45 | ret = sandbox_lcd_sdl_early_init(); | |
46 | if (ret) { | |
47 | puts("Could not init sandbox LCD emulation\n"); | |
48 | return ret; | |
49 | } | |
50 | #endif | |
51 | ||
52 | return 0; | |
53 | } | |
54 | #endif | |
55 | ||
86bf601d SG |
56 | int arch_early_init_r(void) |
57 | { | |
58 | #ifdef CONFIG_CROS_EC | |
59 | if (cros_ec_board_init()) { | |
60 | printf("%s: Failed to init EC\n", __func__); | |
61 | return 0; | |
62 | } | |
63 | #endif | |
64 | ||
65 | return 0; | |
66 | } | |
67 | ||
68 | #ifdef CONFIG_BOARD_LATE_INIT | |
69 | int board_late_init(void) | |
70 | { | |
71 | if (cros_ec_get_error()) { | |
72 | /* Force console on */ | |
73 | gd->flags &= ~GD_FLG_SILENT; | |
74 | ||
75 | printf("cros-ec communications failure %d\n", | |
76 | cros_ec_get_error()); | |
77 | puts("\nPlease reset with Power+Refresh\n\n"); | |
78 | panic("Cannot init cros-ec device"); | |
79 | return -1; | |
80 | } | |
81 | return 0; | |
82 | } | |
83 | #endif |