1 /* SPDX-License-Identifier: GPL-2.0-only */ 2 /* 3 * Copyright (C) 2004, 2007-2010, 2011-2012 Synopsys, Inc. (www.synopsys.com) 4 */ 5 #ifndef __ASMARC_SETUP_H 6 #define __ASMARC_SETUP_H 7 8 9 #include <linux/types.h> 10 #include <uapi/asm/setup.h> 11 12 #ifdef CONFIG_ARC_PLAT_EZNPS 13 #define COMMAND_LINE_SIZE 2048 14 #else 15 #define COMMAND_LINE_SIZE 256 16 #endif 17 18 /* 19 * Data structure to map a ID to string 20 * Used a lot for bootup reporting of hardware diversity 21 */ 22 struct id_to_str { 23 int id; 24 const char *str; 25 }; 26 27 extern int root_mountflags, end_mem; 28 29 void setup_processor(void); 30 void __init setup_arch_memory(void); 31 long __init arc_get_mem_sz(void); 32 33 /* Helpers used in arc_*_mumbojumbo routines */ 34 #define IS_AVAIL1(v, s) ((v) ? s : "") 35 #define IS_DISABLED_RUN(v) ((v) ? "" : "(disabled) ") 36 #define IS_USED_RUN(v) ((v) ? "" : "(not used) ") 37 #define IS_USED_CFG(cfg) IS_USED_RUN(IS_ENABLED(cfg)) 38 #define IS_AVAIL2(v, s, cfg) IS_AVAIL1(v, s), IS_AVAIL1(v, IS_USED_CFG(cfg)) 39 #define IS_AVAIL3(v, v2, s) IS_AVAIL1(v, s), IS_AVAIL1(v, IS_DISABLED_RUN(v2)) 40 41 #endif /* __ASMARC_SETUP_H */ 42