imx: initialize and use generic timer on i.MX 6UL/ULL
The i.MX 6UL/ULL feature a Cortex-A7 CPU which suppor the ARM generic timer. This change makes use of the ARM generic timer in U-Boot. This is crucial to make the ARM generic timers usable in Linux since timer_init() initalizes the system counter module, which is necessary to use the generic timers CP15 registers. Signed-off-by: Stefan Agner <stefan.agner@toradex.com> Reviewed-by: Fabio Estevam <fabio.estevam@nxp.com>
This commit is contained in:
parent
23b6a131fd
commit
46718353b2
@ -291,6 +291,7 @@
|
||||
#endif
|
||||
#define IP2APB_TZASC1_BASE_ADDR (AIPS2_OFF_BASE_ADDR + 0x50000)
|
||||
#if (defined(CONFIG_MX6UL) || defined(CONFIG_MX6ULL))
|
||||
#define SCTR_BASE_ADDR (AIPS2_OFF_BASE_ADDR + 0x5C000)
|
||||
#define QSPI0_BASE_ADDR (AIPS2_OFF_BASE_ADDR + 0x60000)
|
||||
#define UART6_BASE_ADDR (AIPS2_OFF_BASE_ADDR + 0x7C000)
|
||||
#elif defined(CONFIG_MX6SX)
|
||||
|
@ -22,7 +22,6 @@ endif
|
||||
ifeq ($(SOC),$(filter $(SOC),mx7))
|
||||
obj-y += cpu.o
|
||||
obj-$(CONFIG_SYS_I2C_MXC) += i2c-mxv7.o
|
||||
obj-$(CONFIG_SYSCOUNTER_TIMER) += syscounter.o
|
||||
endif
|
||||
ifeq ($(SOC),$(filter $(SOC),mx6 mx7))
|
||||
obj-y += cache.o init.o
|
||||
@ -31,6 +30,7 @@ obj-$(CONFIG_IMX_VIDEO_SKIP) += video.o
|
||||
obj-$(CONFIG_IMX_RDC) += rdc-sema.o
|
||||
obj-$(CONFIG_IMX_BOOTAUX) += imx_bootaux.o
|
||||
obj-$(CONFIG_SECURE_BOOT) += hab.o
|
||||
obj-$(CONFIG_SYSCOUNTER_TIMER) += syscounter.o
|
||||
endif
|
||||
ifeq ($(SOC),$(filter $(SOC),mx7ulp))
|
||||
obj-y += cache.o
|
||||
|
@ -9,7 +9,7 @@ config MX6_SMP
|
||||
|
||||
config MX6
|
||||
select ARM_ERRATA_743622 if !MX6UL && !MX6ULL
|
||||
select GPT_TIMER
|
||||
select GPT_TIMER if !MX6UL && !MX6ULL
|
||||
bool
|
||||
default y
|
||||
imply CMD_FUSE
|
||||
@ -54,6 +54,7 @@ config MX6UL
|
||||
select HAS_CAAM
|
||||
select SYS_L2CACHE_OFF
|
||||
select ROM_UNIFIED_SECTIONS
|
||||
select SYSCOUNTER_TIMER
|
||||
bool
|
||||
|
||||
config MX6UL_LITESOM
|
||||
@ -76,6 +77,7 @@ config MX6UL_OPOS6UL
|
||||
config MX6ULL
|
||||
select SYS_L2CACHE_OFF
|
||||
select ROM_UNIFIED_SECTIONS
|
||||
select SYSCOUNTER_TIMER
|
||||
bool
|
||||
|
||||
config MX6_DDRCAL
|
||||
|
@ -7,7 +7,10 @@
|
||||
#ifndef __MX6_COMMON_H
|
||||
#define __MX6_COMMON_H
|
||||
|
||||
#if !(defined(CONFIG_MX6UL) || defined(CONFIG_MX6ULL))
|
||||
#if (defined(CONFIG_MX6UL) || defined(CONFIG_MX6ULL))
|
||||
#define CONFIG_SC_TIMER_CLK 8000000 /* 8Mhz */
|
||||
#define COUNTER_FREQUENCY CONFIG_SC_TIMER_CLK
|
||||
#else
|
||||
#ifndef CONFIG_SYS_L2CACHE_OFF
|
||||
#define CONFIG_SYS_L2_PL310
|
||||
#define CONFIG_SYS_PL310_BASE L2_PL310_BASE
|
||||
|
Loading…
Reference in New Issue
Block a user