1 /* SPDX-License-Identifier: GPL-2.0 */ 2 /* 3 * This file is subject to the terms and conditions of the GNU General Public 4 * License. See the file COPYING in the main directory of this archive 5 * for more details. 6 * 7 * Copyright (C) 2020 Loongson Technology Co., Ltd. 8 */ 9 #ifndef _ASM_BOOTINFO_H 10 #define _ASM_BOOTINFO_H 11 12 #include <linux/types.h> 13 #include <asm/setup.h> 14 15 const char *get_system_type(void); 16 17 extern void memblock_init(void); 18 extern void detect_memory_region(phys_addr_t start, phys_addr_t sz_min, phys_addr_t sz_max); 19 20 extern void early_init(void); 21 extern void init_environ(void); 22 extern void platform_init(void); 23 extern void plat_mem_setup(void); 24 extern int __init init_numa_memory(void); 25 26 struct loongson_board_info { 27 int bios_size; 28 const char *bios_vendor; 29 const char *bios_version; 30 const char *bios_release_date; 31 const char *board_name; 32 const char *board_vendor; 33 }; 34 35 struct loongson_system_configuration { 36 int nr_cpus; 37 int nr_nodes; 38 int nr_io_pics; 39 int boot_cpu_id; 40 int cores_per_node; 41 int cores_per_package; 42 const char *cpuname; 43 u64 suspend_addr; 44 }; 45 46 extern u64 efi_system_table; 47 extern struct loongson_board_info b_info; 48 extern struct loongson_system_configuration loongson_sysconf; 49 extern unsigned long fw_arg0, fw_arg1, fw_arg2; 50 51 #endif /* _ASM_BOOTINFO_H */ 52