blob: 67d20712cb48f67ace0091e836725abd324d9c40 [file] [log] [blame]
Thomas Gleixnerd2912cb2019-06-04 10:11:33 +02001/* SPDX-License-Identifier: GPL-2.0-only */
Linus Torvalds1da177e2005-04-16 15:20:36 -07002/*
3 * linux/include/asm/setup.h
4 *
5 * Copyright (C) 1997-1999 Russell King
6 *
Linus Torvalds1da177e2005-04-16 15:20:36 -07007 * Structure passed to kernel to tell it about the
Mauro Carvalho Chehabdc7a12b2019-04-14 15:51:10 -03008 * hardware it's running on. See Documentation/arm/setup.rst
Linus Torvalds1da177e2005-04-16 15:20:36 -07009 * for more info.
10 */
11#ifndef __ASMARM_SETUP_H
12#define __ASMARM_SETUP_H
13
David Howellscb8db5d2012-10-12 13:05:52 +010014#include <uapi/asm/setup.h>
Adrian Bunk7d1362c2006-12-06 20:40:38 -080015
Adrian Bunk7d1362c2006-12-06 20:40:38 -080016
David Rientjesb91d8a12007-05-11 16:18:55 -070017#define __tag __used __attribute__((__section__(".taglist.init")))
Adrian Bunk7d1362c2006-12-06 20:40:38 -080018#define __tagtable(tag, fn) \
Russell Kingc1f2d992011-07-05 23:59:56 +010019static const struct tagtable __tagtable_##fn __tag = { tag, fn }
Adrian Bunk7d1362c2006-12-06 20:40:38 -080020
Magnus Damm6a5014a2013-10-22 17:53:16 +010021extern int arm_add_memory(u64 start, u64 size);
Grant Likely93c02ab2011-04-28 14:27:21 -060022extern void early_print(const char *str, ...);
23extern void dump_machine_table(void);
Grant Likely9eb8f672011-04-28 14:27:20 -060024
Ivaylo Dimitrov6e0306a2016-01-01 12:46:27 +010025#ifdef CONFIG_ATAGS_PROC
26extern void save_atags(const struct tag *tags);
27#else
28static inline void save_atags(const struct tag *tags) { }
29#endif
30
Linus Torvalds1da177e2005-04-16 15:20:36 -070031#endif