Martin Roth | 239b5df | 2022-07-26 22:18:26 -0600 | [diff] [blame] | 1 | /* SPDX-License-Identifier: GPL-2.0-only */ |
| 2 | |
Eric Biederman | 8ca8d76 | 2003-04-22 19:02:15 +0000 | [diff] [blame] | 3 | #ifndef CPU_CPU_H |
| 4 | #define CPU_CPU_H |
| 5 | |
Elyes Haouas | 35c3ae3b | 2022-10-27 12:25:12 +0200 | [diff] [blame] | 6 | #include <arch/cpu.h> /* IWYU pragma: export */ |
Elyes HAOUAS | 5817c56 | 2020-07-12 09:03:22 +0200 | [diff] [blame] | 7 | #include <stdint.h> |
Eric Biederman | 8ca8d76 | 2003-04-22 19:02:15 +0000 | [diff] [blame] | 8 | |
Arthur Heymans | 6e23da2 | 2022-11-12 16:51:22 +0100 | [diff] [blame] | 9 | void cpu_initialize(void); |
Furquan Shaikh | b1859a6 | 2020-04-30 21:27:47 -0700 | [diff] [blame] | 10 | uintptr_t cpu_get_lapic_addr(void); |
Stefan Reinauer | ac8209a | 2012-04-27 00:39:17 +0200 | [diff] [blame] | 11 | struct bus; |
Felix Held | ff4d6be | 2023-09-12 14:18:49 +0200 | [diff] [blame] | 12 | unsigned int cpu_phys_address_size(void); |
Jeremy Compostella | ba757a7 | 2023-12-20 09:07:04 -0800 | [diff] [blame^] | 13 | unsigned int soc_phys_address_size(void); |
Myles Watson | 7943fe6 | 2009-10-30 02:08:07 +0000 | [diff] [blame] | 14 | |
Kyösti Mälkki | 44da9e2 | 2019-09-27 15:02:32 +0300 | [diff] [blame] | 15 | #if ENV_RAMSTAGE |
Stefan Reinauer | 6a00113 | 2017-07-13 02:20:27 +0200 | [diff] [blame] | 16 | #define __cpu_driver __attribute__((used, __section__(".rodata.cpu_driver"))) |
Kyösti Mälkki | 44da9e2 | 2019-09-27 15:02:32 +0300 | [diff] [blame] | 17 | #else |
| 18 | #define __cpu_driver __attribute__((unused)) |
| 19 | #endif |
| 20 | |
Eric Biederman | c84c190 | 2004-10-14 20:13:01 +0000 | [diff] [blame] | 21 | /** start of compile time generated pci driver array */ |
Aaron Durbin | 0375815 | 2015-09-03 17:23:08 -0500 | [diff] [blame] | 22 | extern struct cpu_driver _cpu_drivers[]; |
Eric Biederman | c84c190 | 2004-10-14 20:13:01 +0000 | [diff] [blame] | 23 | /** end of compile time generated pci driver array */ |
Aaron Durbin | 0375815 | 2015-09-03 17:23:08 -0500 | [diff] [blame] | 24 | extern struct cpu_driver _ecpu_drivers[]; |
Eric Biederman | 8ca8d76 | 2003-04-22 19:02:15 +0000 | [diff] [blame] | 25 | |
| 26 | #endif /* CPU_CPU_H */ |