master
rst 63 lines 1.92 KB
Raw
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"