[haiku-commits] haiku: hrev48879 - docs/develop/ports/arm

  • From: kallisti5@xxxxxxxxxxx
  • To: haiku-commits@xxxxxxxxxxxxx
  • Date: Sat, 7 Mar 2015 23:50:58 +0100 (CET)

hrev48879 adds 1 changeset to branch 'master'
old head: ed9321d9f7fc13c28f40921f5bb0aa20f81183f1
new head: 1ac3785a72fd370730575163bf05d2e50f05965f
overview: 
http://cgit.haiku-os.org/haiku/log/?qt=range&q=1ac3785a72fd+%5Eed9321d9f7fc

----------------------------------------------------------------------------

1ac3785a72fd: doc: Update rpi1/rpi2 documentation.

                          [ Alexander von Gluck IV <kallisti5@xxxxxxxxxxx> ]

----------------------------------------------------------------------------

Revision:    hrev48879
Commit:      1ac3785a72fd370730575163bf05d2e50f05965f
URL:         http://cgit.haiku-os.org/haiku/commit/?id=1ac3785a72fd
Author:      Alexander von Gluck IV <kallisti5@xxxxxxxxxxx>
Date:        Sat Mar  7 22:50:51 2015 UTC

----------------------------------------------------------------------------

2 files changed, 98 insertions(+), 14 deletions(-)
.../ports/arm/{raspberry_pi.md => rpi1.md}       | 38 ++++++----
docs/develop/ports/arm/rpi2.md                   | 74 ++++++++++++++++++++

----------------------------------------------------------------------------

diff --git a/docs/develop/ports/arm/raspberry_pi.md 
b/docs/develop/ports/arm/rpi1.md
similarity index 51%
rename from docs/develop/ports/arm/raspberry_pi.md
rename to docs/develop/ports/arm/rpi1.md
index 4f555d5..7729cf1 100644
--- a/docs/develop/ports/arm/raspberry_pi.md
+++ b/docs/develop/ports/arm/rpi1.md
@@ -27,35 +27,45 @@ The Raspberry Pi SD card generally uses the MBR file system 
layout below. Partit
 
 *  bootcode.bin : 2nd stage bootloader
 *  start.elf: The GPU binary firmware image
-*  haiku_loader: Haiku Loader
-*  haiku-floppyboot.tgz: Compressed image with Haiku kernel
-*  config.txt: A configuration file read by the GPU.
+*  config.txt: A configuration file read by the Pi to start u-boot.bin
+*  u-boot.bin: u-boot loader for the Pi 2
+*  bcm2835-rpi-b.dtb: FDT binary for the Raspberry Pi 2
+*  haiku_loader_linux.ub: Haiku Loader
+*  haiku-floppyboot.tgz.ub: Compressed initial ram image with Haiku kernel
 
 ### Optional Files
 
 *  vlls directory: Additional GPU code, e.g. extra codecs.
+*  uEnv.txt: u-boot configuration script to automate boot.
 
 # Compiling
 
-*  Create your work directory `mkdir generated.arm; cd generated.arm`
-*  Build an ARM toolchain using `../configure --build-cross-tools arm 
../../buildtools`
-*  Build our loader using `jam -q -sHAIKU_BOOT_BOARD=raspberry_pi 
-sHAIKU_BOOT_PLATFORM=raspberrypi_arm haiku_loader`
-*  Build our file system using `jam -q -sHAIKU_BOOT_BOARD=raspberry_pi 
-sHAIKU_BOOT_PLATFORM=raspberrypi_arm haiku-floppyboot.tgz`
+*  Create your ARM work directory `mkdir generated.arm; cd generated.arm`
+*  Build an ARM toolchain using `../configure --build-cross-tools arm 
../../buildtools --target-board=rpi1`
+*  Build our loader using `jam -q haiku_loader_linux.ub`
+*  Build our initial ram disk using `jam -q haiku-floppyboot.tgz.ub`
 
 # Booting
 
 1. SOC finds bootcode.bin
 2. bootcode.bin runs start.elf
-2. start.elf reads config.txt and cmdline.txt
-3. start.elf runs specified binary at specified address
+3. start.elf reads config.txt and start u-boot
+4. u-boot.bin starts the Haiku loader
+5. Haiku loader boots Haiku kernel
 
 ## config.txt Options
 
-    kernel=haiku_loader
-    kernel_address=0x0
-    disable_commandline_tags=1
-    ramfsfile=haiku-floppyboot.tgz
-    ramfsaddr=0x04000000
+    kernel=u-boot.bin
+
+## u-boot startup
+
+These will be condensed and automated long-term via uEnv.txt :-)
+
+* `fatload mmc 0 ${fdt_addr_r} bcm2836-rpi-2-b.dtb`
+* `fdt addr ${fdt_addr_r}`
+* `fatload mmc 0 ${ramdisk_addr_r} haiku-floppyboot.tgz.ub`
+* `fatload mmc 0 ${kernel_addr_r} haiku_loader_linux.ub`
+* `bootm ${kernel_addr_r} ${ramdisk_addr_r} ${fdt_addr_r}`
 
 # Additional Information
 
diff --git a/docs/develop/ports/arm/rpi2.md b/docs/develop/ports/arm/rpi2.md
new file mode 100644
index 0000000..df19f3d
--- /dev/null
+++ b/docs/develop/ports/arm/rpi2.md
@@ -0,0 +1,74 @@
+# Raspberry Pi 2
+* http://raspberrypi.org
+
+# Hardware Information
+
+* ARMv7 Architecture
+* Broadcom BCM2836 (SoC)
+  * Includes Quad ARM1176JZF-S CPU @ 900 MHz
+  * Includes VideoCore IV GPU
+* SD Card Storage
+* 1 GB RAM
+* Video Outputs
+  * HDMI Video Output
+  * Composite Video Output
+* Ethernet
+
+# Setting up the Haiku SD card
+
+The Raspberry Pi SD card generally uses the MBR file system layout below. 
Partition 1 is all that is required to boot an OS.
+
+*  partition 1 -- FAT32, bootable flag, type 'c'
+*  partition 2 -- BeFS, Haiku filesystem, type 'eb'
+
+## Boot Partition
+
+### Required Files
+
+*  bootcode.bin : 2nd stage bootloader
+*  start.elf: The GPU binary firmware image
+*  config.txt: A configuration file read by the Pi to start u-boot.bin
+*  u-boot.bin: u-boot loader for the Pi 2
+*  bcm2836-rpi-2-b.dtb: FDT binary for the Raspberry Pi 2
+*  haiku_loader_linux.ub: Haiku Loader
+*  haiku-floppyboot.tgz.ub: Compressed initial ram image with Haiku kernel
+
+### Optional Files
+
+*  vlls directory: Additional GPU code, e.g. extra codecs.
+*  uEnv.txt: u-boot configuration script to automate boot.
+
+# Compiling
+
+*  Create your ARM work directory `mkdir generated.arm; cd generated.arm`
+*  Build an ARM toolchain using `../configure --build-cross-tools arm 
../../buildtools --target-board=rpi2`
+*  Build our loader using `jam -q haiku_loader_linux.ub`
+*  Build our initial ram disk using `jam -q haiku-floppyboot.tgz.ub`
+
+# Booting
+
+1. SOC finds bootcode.bin
+2. bootcode.bin runs start.elf
+3. start.elf reads config.txt and start u-boot
+4. u-boot.bin starts the Haiku loader
+5. Haiku loader boots Haiku kernel
+
+## config.txt Options
+
+    kernel=u-boot.bin
+
+## u-boot startup
+
+These will be condensed and automated long-term via uEnv.txt :-)
+
+* `fatload mmc 0 ${fdt_addr_r} bcm2836-rpi-2-b.dtb`
+* `fdt addr ${fdt_addr_r}`
+* `fatload mmc 0 ${ramdisk_addr_r} haiku-floppyboot.tgz.ub`
+* `fatload mmc 0 ${kernel_addr_r} haiku_loader_linux.ub`
+* `bootm ${kernel_addr_r} ${ramdisk_addr_r} ${fdt_addr_r}`
+
+# Additional Information
+
+* [Latest Raspberry Pi 
firmware](http://github.com/raspberrypi/firmware/tree/master/boot)
+* [config.txt options](http://www.elinux.org/RPiconfig)
+


Other related posts:

  • » [haiku-commits] haiku: hrev48879 - docs/develop/ports/arm - kallisti5