162306a36Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0-only */ 262306a36Sopenharmony_ci/* 362306a36Sopenharmony_ci * Copyright (C) 2004, 2007-2010, 2011-2012 Synopsys, Inc. (www.synopsys.com) 462306a36Sopenharmony_ci */ 562306a36Sopenharmony_ci#ifndef __ASM_ARC_SETUP_H 662306a36Sopenharmony_ci#define __ASM_ARC_SETUP_H 762306a36Sopenharmony_ci 862306a36Sopenharmony_ci 962306a36Sopenharmony_ci#include <linux/types.h> 1062306a36Sopenharmony_ci#include <uapi/asm/setup.h> 1162306a36Sopenharmony_ci 1262306a36Sopenharmony_ci#define COMMAND_LINE_SIZE 256 1362306a36Sopenharmony_ci 1462306a36Sopenharmony_ci/* 1562306a36Sopenharmony_ci * Data structure to map a ID to string 1662306a36Sopenharmony_ci * Used a lot for bootup reporting of hardware diversity 1762306a36Sopenharmony_ci */ 1862306a36Sopenharmony_cistruct id_to_str { 1962306a36Sopenharmony_ci int id; 2062306a36Sopenharmony_ci const char *str; 2162306a36Sopenharmony_ci}; 2262306a36Sopenharmony_ci 2362306a36Sopenharmony_ciextern int root_mountflags, end_mem; 2462306a36Sopenharmony_ci 2562306a36Sopenharmony_civoid setup_processor(void); 2662306a36Sopenharmony_civoid __init setup_arch_memory(void); 2762306a36Sopenharmony_cilong __init arc_get_mem_sz(void); 2862306a36Sopenharmony_ci 2962306a36Sopenharmony_ci/* Helpers used in arc_*_mumbojumbo routines */ 3062306a36Sopenharmony_ci#define IS_AVAIL1(v, s) ((v) ? s : "") 3162306a36Sopenharmony_ci#define IS_DISABLED_RUN(v) ((v) ? "" : "(disabled) ") 3262306a36Sopenharmony_ci#define IS_USED_RUN(v) ((v) ? "" : "(not used) ") 3362306a36Sopenharmony_ci#define IS_USED_CFG(cfg) IS_USED_RUN(IS_ENABLED(cfg)) 3462306a36Sopenharmony_ci#define IS_AVAIL2(v, s, cfg) IS_AVAIL1(v, s), IS_AVAIL1(v, IS_USED_CFG(cfg)) 3562306a36Sopenharmony_ci#define IS_AVAIL3(v, v2, s) IS_AVAIL1(v, s), IS_AVAIL1(v, IS_DISABLED_RUN(v2)) 3662306a36Sopenharmony_ci 3762306a36Sopenharmony_ciextern void arc_mmu_init(void); 3862306a36Sopenharmony_ciextern int arc_mmu_mumbojumbo(int cpu_id, char *buf, int len); 3962306a36Sopenharmony_ci 4062306a36Sopenharmony_ciextern void arc_cache_init(void); 4162306a36Sopenharmony_ciextern int arc_cache_mumbojumbo(int cpu_id, char *buf, int len); 4262306a36Sopenharmony_ci 4362306a36Sopenharmony_ciextern void __init handle_uboot_args(void); 4462306a36Sopenharmony_ci 4562306a36Sopenharmony_ci#endif /* __ASMARC_SETUP_H */ 46