mirror of
https://xff.cz/git/u-boot/
synced 2025-09-01 16:52:14 +02:00
arch: m68k: Add QEMU specific RAMBAR workaround
The QEMU emulation of m68k does not support RAMBAR accesses, add Kconfig option which inhibits those accesses, so that U-Boot can be started in m68k QEMU for CI testing purpopses until QEMU emulation improves. Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
This commit is contained in:
committed by
Angelo Dureghello
parent
56c3aa9ab9
commit
94f9401812
@@ -198,8 +198,17 @@ source "board/freescale/m5373evb/Kconfig"
|
|||||||
source "board/sysam/amcore/Kconfig"
|
source "board/sysam/amcore/Kconfig"
|
||||||
source "board/sysam/stmark2/Kconfig"
|
source "board/sysam/stmark2/Kconfig"
|
||||||
|
|
||||||
|
config M68K_QEMU
|
||||||
|
bool "Build with workarounds for incomplete QEMU emulation"
|
||||||
|
default n
|
||||||
|
help
|
||||||
|
QEMU 8.x currently does not implement RAMBAR accesses and
|
||||||
|
DMA timers. Enable this option for U-Boot CI purposes only
|
||||||
|
to skip the RAMBAR accesses.
|
||||||
|
|
||||||
config MCFTMR
|
config MCFTMR
|
||||||
bool "Use DMA timer"
|
bool "Use DMA timer"
|
||||||
default y
|
default y if !M68K_QEMU
|
||||||
|
default n if M68K_QEMU
|
||||||
|
|
||||||
endmenu
|
endmenu
|
||||||
|
@@ -98,7 +98,7 @@ _start:
|
|||||||
nop
|
nop
|
||||||
move.w #0x2700,%sr
|
move.w #0x2700,%sr
|
||||||
|
|
||||||
#if defined(CONFIG_M5208)
|
#if defined(CONFIG_M5208) && !defined(CONFIG_M68K_QEMU)
|
||||||
/* Initialize RAMBAR: locate SRAM and validate it */
|
/* Initialize RAMBAR: locate SRAM and validate it */
|
||||||
move.l #(CFG_SYS_INIT_RAM_ADDR + CFG_SYS_INIT_RAM_CTRL), %d0
|
move.l #(CFG_SYS_INIT_RAM_ADDR + CFG_SYS_INIT_RAM_CTRL), %d0
|
||||||
movec %d0, %RAMBAR1
|
movec %d0, %RAMBAR1
|
||||||
@@ -120,7 +120,7 @@ _start:
|
|||||||
movec %d0, %RAMBAR0
|
movec %d0, %RAMBAR0
|
||||||
#endif /* CONFIG_M5272 || CONFIG_M5249 || CONFIG_M5253 */
|
#endif /* CONFIG_M5272 || CONFIG_M5249 || CONFIG_M5253 */
|
||||||
|
|
||||||
#if defined(CONFIG_M5282) || defined(CONFIG_M5271)
|
#if (defined(CONFIG_M5282) || defined(CONFIG_M5271)) && !defined(CONFIG_M68K_QEMU)
|
||||||
/* set MBAR address + valid flag */
|
/* set MBAR address + valid flag */
|
||||||
move.l #(CFG_SYS_MBAR + 1), %d0
|
move.l #(CFG_SYS_MBAR + 1), %d0
|
||||||
move.l %d0, 0x40000000
|
move.l %d0, 0x40000000
|
||||||
|
Reference in New Issue
Block a user