blob: 3ae68a1b3de62847192e3acb0ca9fb3c4ab36d60 [file] [log] [blame]
David Brazdil0f672f62019-12-10 10:32:29 +00001/* SPDX-License-Identifier: GPL-2.0-only */
Andrew Scullb4b6d4a2019-01-02 15:54:55 +00002/*
3 * linux/include/asm/setup.h
4 *
5 * Copyright (C) 1997-1999 Russell King
6 *
Andrew Scullb4b6d4a2019-01-02 15:54:55 +00007 * Structure passed to kernel to tell it about the
David Brazdil0f672f62019-12-10 10:32:29 +00008 * hardware it's running on. See Documentation/arm/setup.rst
Andrew Scullb4b6d4a2019-01-02 15:54:55 +00009 * for more info.
10 */
11#ifndef __ASMARM_SETUP_H
12#define __ASMARM_SETUP_H
13
14#include <uapi/asm/setup.h>
15
16
Olivier Deprez157378f2022-04-04 15:47:50 +020017#define __tag __used __section(".taglist.init")
Andrew Scullb4b6d4a2019-01-02 15:54:55 +000018#define __tagtable(tag, fn) \
19static const struct tagtable __tagtable_##fn __tag = { tag, fn }
20
21extern int arm_add_memory(u64 start, u64 size);
22extern void early_print(const char *str, ...);
23extern void dump_machine_table(void);
24
25#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
31#endif