qemu

FORK: QEMU emulator
git clone https://git.neptards.moe/neptards/qemu.git
Log | Files | Refs | Submodules | LICENSE

versatile.rst (1963B)


      1 Arm Versatile boards (``versatileab``, ``versatilepb``)
      2 =======================================================
      3 
      4 The Arm Versatile baseboard is emulated with the following devices:
      5 
      6 -  ARM926E, ARM1136 or Cortex-A8 CPU
      7 
      8 -  PL190 Vectored Interrupt Controller
      9 
     10 -  Four PL011 UARTs
     11 
     12 -  SMC 91c111 Ethernet adapter
     13 
     14 -  PL110 LCD controller
     15 
     16 -  PL050 KMI with PS/2 keyboard and mouse.
     17 
     18 -  PCI host bridge. Note the emulated PCI bridge only provides access
     19    to PCI memory space. It does not provide access to PCI IO space. This
     20    means some devices (eg. ne2k_pci NIC) are not usable, and others (eg.
     21    rtl8139 NIC) are only usable when the guest drivers use the memory
     22    mapped control registers.
     23 
     24 -  PCI OHCI USB controller.
     25 
     26 -  LSI53C895A PCI SCSI Host Bus Adapter with hard disk and CD-ROM
     27    devices.
     28 
     29 -  PL181 MultiMedia Card Interface with SD card.
     30 
     31 Booting a Linux kernel
     32 ----------------------
     33 
     34 Building a current Linux kernel with ``versatile_defconfig`` should be
     35 enough to get something running. Nowadays an out-of-tree build is
     36 recommended (and also useful if you build a lot of different targets).
     37 In the following example $BLD points to the build directory and $SRC
     38 points to the root of the Linux source tree. You can drop $SRC if you
     39 are running from there.
     40 
     41 .. code-block:: bash
     42 
     43   $ make O=$BLD -C $SRC ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- versatile_defconfig
     44   $ make O=$BLD -C $SRC ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf-
     45 
     46 You may want to enable some additional modules if you want to boot
     47 something from the SCSI interface::
     48 
     49   CONFIG_PCI=y
     50   CONFIG_PCI_VERSATILE=y
     51   CONFIG_SCSI=y
     52   CONFIG_SCSI_SYM53C8XX_2=y
     53 
     54 You can then boot with a command line like:
     55 
     56 .. code-block:: bash
     57 
     58   $ qemu-system-arm -machine type=versatilepb \
     59       -serial mon:stdio \
     60       -drive if=scsi,driver=file,filename=debian-buster-armel-rootfs.ext4 \
     61       -kernel zImage \
     62       -dtb versatile-pb.dtb  \
     63       -append "console=ttyAMA0 ro root=/dev/sda"