view sources/targets/armv4l @ 1475:c3b5be048ba4

Commit 1468 was a giant thinko: fix it. (System emulation, not application emulation...)
author Rob Landley <rob@landley.net>
date Thu, 22 Dec 2011 13:29:11 -0600
parents b499abdbcdfa
children 30d9bc95559e
line wrap: on
line source

DESCRIPTION="
ARM v4, little endian, soft float, OABI.

This is a generic low-end arm image that should run on any arm hardware
still in use today (except ARMv7M, which is arm in name only).

The downside is it uses the Old Application Binary Interface, described here:
http://www.linuxfordevices.com/c/a/Linux-For-Devices-Articles/Why-ARMs-EABI-matters/

This instruction set cannot support EABI, which requies the Thumb extensions.
It's sort of the 80286 of the ARM world.
"

KARCH=arm
KERNEL_PATH=arch/${KARCH}/boot/zImage
GCC_FLAGS="--with-float=soft"
BINUTILS_FLAGS=
QEMU_TEST=$KARCH

ROOT=sda
CONSOLE=ttyAMA0

UCLIBC_CONFIG="
TARGET_arm=y
ARCH_WANTS_LITTLE_ENDIAN=y
"

LINUX_CONFIG="

# Processor config

# QEMU patch: http://www.mail-archive.com/qemu-devel@nongnu.org/msg19370.html
# and QEMU option '-cpu arm920t' enable CONFIG_CPU_ARM920T=y which is the
# processor that actually _needs_ this code.  But until then, qemu can only
# emulate an armv5 CPU...

CONFIG_CPU_ARM926T=y
CONFIG_MMU=y

# Versatile board

CONFIG_ARCH_VERSATILE_PB=y
CONFIG_PCI_LEGACY=y
CONFIG_SERIAL_NONSTANDARD=y
CONFIG_SERIAL_AMBA_PL011=y
CONFIG_SERIAL_AMBA_PL011_CONSOLE=y
CONFIG_RTC_DRV_PL031=y
CONFIG_SCSI_SYM53C8XX_2=y
CONFIG_SCSI_SYM53C8XX_DMA_ADDRESSING_MODE=0
CONFIG_SCSI_SYM53C8XX_MMIO=y
"

emulator_command()
{
  echo qemu-system-arm -M versatilepb $(qemu_defaults "$@") \
    -net nic,model=rtl8139 -net user
}