The cirros image was rebuilt against the 3.13.0-83 kernel, drivers e1000e, igbvf...
[packages/trusty/cirros-testvm.git] / cirros-testvm / src-cirros / buildroot-2015.05 / board / raspberrypi / readme.txt
diff --git a/cirros-testvm/src-cirros/buildroot-2015.05/board/raspberrypi/readme.txt b/cirros-testvm/src-cirros/buildroot-2015.05/board/raspberrypi/readme.txt
new file mode 100644 (file)
index 0000000..4ead046
--- /dev/null
@@ -0,0 +1,157 @@
+Raspberry Pi
+
+Intro
+=====
+
+These instructions apply to all models of the Raspberry Pi:
+  - the original models A and B,
+  - the "enhanced" models A+ and B+,
+  - the model B2 (aka Raspberry Pi 2).
+
+To be able to use your Raspberry Pi board with the images generated by
+Buildroot, you have to choose whether you will use:
+
+    * Volatile rootfs in RAM (the rootfs is an initramfs) or
+    * Persistent rootfs on the SDCard
+
+Also, a good source of information is http://elinux.org/R-Pi_Hub
+
+How to build it
+===============
+
+Configure Buildroot
+-------------------
+
+The raspberrypi_defconfig configuration is a minimal configuration with
+all that is required to bring the Raspberry Pi up. You should base your
+work on this defconfig:
+
+  $ make raspberrypi_defconfig
+
+Alternatively, if you want to test support for the Device Tree:
+
+  $ make raspberrypi_dt_defconfig
+
+For Raspberry Pi 2 use a different defconfig:
+
+  $ make raspberrypi2_defconfig
+
+If you want to use a persistent rootfs, skip to "Build the rootfs", below.
+
+For a volatile rootfs, you have to slightly adjust the configuration:
+
+  $ make menuconfig
+    * Select "Filesystem images"
+    * Select "initial RAM filesystem linked into linux kernel"
+
+You may also deselect "tar the root filesystem".
+
+Build the rootfs
+----------------
+
+Note: you will need to have access to the network, since Buildroot will
+download the packages' sources.
+
+You may now build your rootfs with:
+
+  $ make
+
+(This may take a while; consider getting yourself a coffee ;-) )
+
+Result of the build
+-------------------
+
+After building, you should obtain this tree:
+
+    output/images/
+    +-- rootfs.tar                              [0]
+    +-- rpi-firmware/
+    |   +-- bcm2708-rpi-b.dtb
+    |   +-- bcm2708-rpi-b-plus.dtb
+    |   +-- bcm2709-rpi-2-b.dtb
+    |   +-- bootcode.bin
+    |   +-- config.txt
+    |   +-- fixup.dat
+    |   `-- start.elf
+    `-- zImage
+
+[0] Note for Volatile: rootfs.tar will only be there if you kept
+    "tar the root filesystem" option selected in "Filesystem images".
+
+Prepare you SDCard
+==================
+
+For more information, visit
+http://elinux.org/RPi_Advanced_Setup#Advanced_SD_card_setup
+
+In summary, your SDCard must have first partition in fat32 and marked bootable.
+
+Create the required partitions:
+  - for a persistent rootfs, 10MiB is enough memory for the boot fat32
+    partition, and a second partition is required for the root filesystem
+  - for a volatile rootfs, 50MiB is required for the boot fat32 partition
+
+Note: You can create any number of partitions you desire, the only requirement
+is that the first partition must be using fat32 and be bootable.
+
+Mount the partitions (adjust 'sdX' to match your SDcard device):
+
+  $ sudo mount /dev/sdX1 /mnt/mountpointboot
+  $ sudo mount /dev/sdX2 /mnt/mountpointroot    (only for persistent rootfs)
+
+Install the binaries to the SDCard
+----------------------------------
+
+At the root of the boot partition, the Raspberry Pi must find the following
+files:
+
+    * bcm2708-rpi-b.dtb         [1]
+    * bcm2708-rpi-b-plus.dtb    [2]
+    * bcm2709-rpi-2-b.dtb       [3]
+    * bootcode.bin
+    * config.txt
+    * fixup.dat
+    * start.elf
+    * zImage
+
+[1] For models A and B
+[2] For models A+ and B+
+[3] For model 2
+
+For example:
+
+ $ cp output/images/rpi-firmware/* /mnt/mountpointboot
+
+If your kernel does *not* have support for the Device Tree, then install
+it with:
+
+ $ cp output/images/zImage /mnt/mountpointboot
+
+If your kernel *does* have support for the Device Tree, then install it
+with:
+
+  $ ./output/host/usr/bin/mkknlimg output/images/zImage /mnt/mountpointboot/zImage
+
+Note: The kernel image file name is defined in config.txt like this:
+kernel=zImage
+
+If you use a volatile rootfs, Skip to "Finish", below. For a persistent
+rootfs, there are further steps to do.
+
+Extract (as root!) the contents of the rootfs.tar archive into the second
+partition you created above:
+
+  $ sudo tar xf ./output/images/rootfs.tar -C /mnt/mountpointroot
+
+Finish
+======
+
+Unmount all the partitions:
+
+  $ sudo umount /mnt/mountpointboot
+  $ sudo umount /mnt/mountpointroot     (only for persistent rootfs)
+
+And eject your SDcard from your computer SDcard reader.
+
+Insert the SDcard into your Raspberry Pi, and power it up. Your new system
+should come up, now.