mirror of
https://github.com/brain-hackers/u-boot-brain
synced 2024-08-29 05:18:51 +09:00
![Weijie Gao](/assets/img/avatar_default.png)
SoCs of mtmips can use different CPU frequencies depending on the HW/SW configurations. For example mt7628 uses 580MHz clock if the input xtal frequency is 40MHz, and 575MHz clock if the xtal is 25MHz. Upon cold boot the CPU uses the xtal frequency directly. So hardcoding the timer frequency (half of the CPU frequency) in CONFIG_SYS_MIPS_TIMER_FREQ is not a good idea for this case. This patch adds a mtmips-specific field timer_freq to arch_global_data. This field will be used later in mtmips-specific get_tbclk() to provide accurate timer frequency in different boot stage. Reviewed-by: Stefan Roese <sr@denx.de> Reviewed-by: Daniel Schwierzeck <daniel.schwierzeck@gmail.com> Signed-off-by: Weijie Gao <weijie.gao@mediatek.com>
40 lines
831 B
C
40 lines
831 B
C
/* SPDX-License-Identifier: GPL-2.0+ */
|
|
/*
|
|
* (C) Copyright 2002-2010
|
|
* Wolfgang Denk, DENX Software Engineering, wd@denx.de.
|
|
*/
|
|
|
|
#ifndef __ASM_GBL_DATA_H
|
|
#define __ASM_GBL_DATA_H
|
|
|
|
#include <asm/regdef.h>
|
|
|
|
/* Architecture-specific global data */
|
|
struct arch_global_data {
|
|
#ifdef CONFIG_DYNAMIC_IO_PORT_BASE
|
|
unsigned long io_port_base;
|
|
#endif
|
|
#ifdef CONFIG_ARCH_ATH79
|
|
unsigned long id;
|
|
unsigned long soc;
|
|
unsigned long rev;
|
|
unsigned long ver;
|
|
#endif
|
|
#ifdef CONFIG_SYS_CACHE_SIZE_AUTO
|
|
unsigned short l1i_line_size;
|
|
unsigned short l1d_line_size;
|
|
#endif
|
|
#ifdef CONFIG_MIPS_L2_CACHE
|
|
unsigned short l2_line_size;
|
|
#endif
|
|
#ifdef CONFIG_ARCH_MTMIPS
|
|
unsigned long timer_freq;
|
|
#endif
|
|
};
|
|
|
|
#include <asm-generic/global_data.h>
|
|
|
|
#define DECLARE_GLOBAL_DATA_PTR register volatile gd_t *gd asm ("k0")
|
|
|
|
#endif /* __ASM_GBL_DATA_H */
|