]>
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> |
909bd6d9 | 10 | #include <asm/test.h> |
7d95f2a3 | 11 | #include <asm/u-boot-sandbox.h> |
d99a6874 | 12 | |
43bd194c SG |
13 | /* |
14 | * Pointer to initial global data area | |
15 | * | |
16 | * Here we initialize it. | |
17 | */ | |
18 | gd_t *gd; | |
19 | ||
e2d8a714 SG |
20 | /* Add a simple GPIO device */ |
21 | U_BOOT_DEVICE(gpio_sandbox) = { | |
22 | .name = "gpio_sandbox", | |
23 | }; | |
24 | ||
43bd194c SG |
25 | void flush_cache(unsigned long start, unsigned long size) |
26 | { | |
27 | } | |
28 | ||
909bd6d9 JH |
29 | /* system timer offset in ms */ |
30 | static unsigned long sandbox_timer_offset; | |
31 | ||
32 | void sandbox_timer_add_offset(unsigned long offset) | |
33 | { | |
34 | sandbox_timer_offset += offset; | |
35 | } | |
36 | ||
28c860b2 | 37 | unsigned long timer_read_counter(void) |
6994ccf8 | 38 | { |
909bd6d9 | 39 | return os_get_nsec() / 1000 + sandbox_timer_offset * 1000; |
43bd194c SG |
40 | } |
41 | ||
43bd194c SG |
42 | int dram_init(void) |
43 | { | |
a733b06b | 44 | gd->ram_size = CONFIG_SYS_SDRAM_SIZE; |
43bd194c SG |
45 | return 0; |
46 | } | |
86bf601d | 47 | |
7d95f2a3 SG |
48 | #ifdef CONFIG_BOARD_EARLY_INIT_F |
49 | int board_early_init_f(void) | |
50 | { | |
51 | #ifdef CONFIG_VIDEO_SANDBOX_SDL | |
52 | int ret; | |
53 | ||
54 | ret = sandbox_lcd_sdl_early_init(); | |
55 | if (ret) { | |
56 | puts("Could not init sandbox LCD emulation\n"); | |
57 | return ret; | |
58 | } | |
59 | #endif | |
60 | ||
61 | return 0; | |
62 | } | |
63 | #endif | |
64 | ||
86bf601d SG |
65 | #ifdef CONFIG_BOARD_LATE_INIT |
66 | int board_late_init(void) | |
67 | { | |
68 | if (cros_ec_get_error()) { | |
69 | /* Force console on */ | |
70 | gd->flags &= ~GD_FLG_SILENT; | |
71 | ||
72 | printf("cros-ec communications failure %d\n", | |
73 | cros_ec_get_error()); | |
74 | puts("\nPlease reset with Power+Refresh\n\n"); | |
75 | panic("Cannot init cros-ec device"); | |
76 | return -1; | |
77 | } | |
78 | return 0; | |
79 | } | |
80 | #endif |