Created
December 12, 2013 14:24
-
-
Save alanyih/7928678 to your computer and use it in GitHub Desktop.
How to boot using device tree
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
How to boot using device tree | |
https://github.com/raspberrypi/linux/wiki/How-to-boot-using-device-tree | |
Table of Contents | |
Bootloader Configuration | |
Kernel | |
Configuration | |
Device Tree | |
Bootloader Configuration | |
Use these config.txt parameters: | |
device_tree=bcm2835.dtb | |
device_tree_address=0x100 | |
kernel_address=0x8000 | |
disable_commandline_tags=1 | |
init_uart_baud=115200 | |
init_uart_clock=3000000 | |
init_emmc_clock=50000000 | |
Kernel | |
Build a kernel from lp0/rpi-linear | |
Copy arch/arm/boot/zImage to kernel.img | |
Run make dtbs | |
Configuration | |
Device Drivers | |
|- Misc devices | |
| `- Broadcom VideoCore Mailbox Support | |
|- Character devices | |
| `- Serial drivers | |
| `- ARM AMBA PL011 serial port support | |
| `- Support for console on AMBA serial port | |
|- Network device support | |
| `- USB Network Adapters | |
| `- Multi-purpose USB Networking Framework | |
| `- SMSC LAN95XX based USB 2.0 10/100 ethernet devices | |
|- I2C support | |
| `- I2C Hardware Bus support | |
| `- BCM2708 BSC | |
|- SPI support | |
| `- BCM2708 SPI controller driver (SPI0) | |
|- Pin controllers | |
| |- Support pin multiplexing controllers | |
| `- Broadcom BCM2708 GPIO pin controller driver | |
|- GPIO Support | |
| `- Broadcom VideoCore Doorbell Support | |
|- Watchdog Timer Support | |
| `- BCM2708 Watchdog | |
|- Voltage and Current Regulator Support | |
| `- Broadcom VideoCore regulator | |
|- Graphics support | |
| |- Support for frame buffer devices | |
| | `- BCM2708 framebuffer support | |
| `- Bootup logo | |
| `- 224-color Raspberry Pi logo | |
|- DMA Engine support | |
| `- BCM2708 DMA support | |
|- MMC/SD/SDIO card support | |
| |- Secure Digital Host Controller Interface support | |
| `- SDHCI platform and OF driver helper | |
| `- Broadcom BCM2708 SDHCI support | |
| `- DMA support on BCM2708 SDHCI (NEW) | |
|- LED Support | |
| |- LED Class Support | |
| `- LED Trigger support | |
| `- LED Default ON Trigger | |
Device Tree | |
Until Issue #24 is completed you need to manually configure the device tree file | |
Using ftdput from git://git.jdl.com/software/dtc.git: | |
fdtput arch/arm/boot/bcm2835-rpi-b.dtb /system revision 2 | |
fdtput -t x arch/arm/boot/bcm2835-rpi-b.dtb /system serial 0 0 | |
fdtput -t hhx arch/arm/boot/bcm2835-rpi-b.dtb /axi/usb/hub/ethernet mac-address 02 00 00 00 00 00 | |
fdtput arch/arm/boot/bcm2835-rpi-b.dtb /display broadcom,width 1920 | |
fdtput arch/arm/boot/bcm2835-rpi-b.dtb /display broadcom,height 1200 | |
fdtput arch/arm/boot/bcm2835-rpi-b.dtb /display broadcom,depth 16 | |
fdtput -t x arch/arm/boot/bcm2835-rpi-b.dtb /axi/dma broadcom,channels 783c | |
If you want to use 192MB instead of the default 128MB: | |
(echo -ne "\x00\x00\x00\x00\x0c\x00\x00\x00"; echo -e "\x00\x00\x00\x00\x04\x00\x00\x00") \ | |
| dd conv=notrunc bs=8 count=2 seek=5 of=arch/arm/boot/bcm2835-rpi-b.dtb | |
Copy arch/arm/boot/bcm2835-rpi-b.dtb to bcm2835.dtb | |
Last edited by spartacus06, a year ago |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment