1/* SPDX-License-Identifier: GPL-2.0+ */
2/*
3 * (C) Copyright 2002-2010
4 * Wolfgang Denk, DENX Software Engineering, wd@denx.de.
5 */
6
7#ifndef	__ASM_GBL_DATA_H
8#define __ASM_GBL_DATA_H
9
10#include <linux/types.h>
11#include <asm/regdef.h>
12
13struct octeon_eeprom_mac_addr {
14	u8 mac_addr_base[6];
15	u8 count;
16};
17
18/* Architecture-specific global data */
19struct arch_global_data {
20#ifdef CONFIG_DYNAMIC_IO_PORT_BASE
21	unsigned long io_port_base;
22#endif
23#ifdef CONFIG_ARCH_ATH79
24	unsigned long id;
25	unsigned long soc;
26	unsigned long rev;
27	unsigned long ver;
28#endif
29#ifdef CONFIG_SYS_CACHE_SIZE_AUTO
30	unsigned short l1i_line_size;
31	unsigned short l1d_line_size;
32#endif
33#ifdef CONFIG_MIPS_L2_CACHE
34	unsigned short l2_line_size;
35#endif
36#ifdef CONFIG_ARCH_MTMIPS
37	unsigned long timer_freq;
38#endif
39#ifdef CONFIG_ARCH_OCTEON
40	struct octeon_eeprom_mac_addr mac_desc;
41#endif
42};
43
44#include <asm-generic/global_data.h>
45
46#define DECLARE_GLOBAL_DATA_PTR     register volatile gd_t *gd asm ("k0")
47
48#endif /* __ASM_GBL_DATA_H */
49