pi Domo is now compiling

This commit is contained in:
2016-11-18 22:54:49 +01:00
parent eb0cb9b037
commit 6c92722606
20 changed files with 672 additions and 39 deletions

View File

@@ -1,5 +1,5 @@
# #
# Main rules for Mozart3 targets. # Main rules for raspberry board targets.
# #
# #

View File

@@ -13,13 +13,13 @@ function error {
set -e set -e
trap error ERR trap error ERR
echo "==> Mozart3 post-build:" echo "==> Raspberry post-build:"
echo "AW_STAGING: ${AW_STAGING}" echo "BR_STAGING: ${BR_STAGING}"
echo "AW_PROJECT: " ${AW_PROJECT} echo "BR_PROJECT: " ${BR_PROJECT}
# Generate uboot scripts # Generate uboot scripts
for cmd_file in `ls ${AW_PROJECT}/uboot/*.cmd` for cmd_file in `ls ${BR_PROJECT}/uboot/*.cmd`
do do
echo "uboot script: $cmd_file" echo "uboot script: $cmd_file"
# Get file name without extention. # Get file name without extention.
@@ -30,8 +30,8 @@ done
# Copy the overlay of the target. # Copy the overlay of the target.
if [ -d ${PROJECT}/ovl ]; then if [ -d ${PROJECT}/ovl ]; then
mkdir -p ${AW_STAGING}/buildroot/target/usr/local/ mkdir -p ${BR_STAGING}/buildroot/target/usr/local/
cp -a ${AW_PROJECT}/ovl/* ${AW_STAGING}/buildroot/target/ cp -a ${BR_PROJECT}/ovl/* ${BR_STAGING}/buildroot/target/
fi fi
# Finaly apply post build script of the target if the script exist. # Finaly apply post build script of the target if the script exist.

View File

@@ -12,7 +12,7 @@ function error {
set -e set -e
trap error ERR trap error ERR
echo "==> Mozart3 post-image:" echo "==> Domo post-image:"
if [ -e ${PROJECT}/configs/genimage.config ]; then if [ -e ${PROJECT}/configs/genimage.config ]; then
echo "We will generate sdcard image." echo "We will generate sdcard image."

View File

@@ -1,4 +1,4 @@
menu "Awox Audio Software" menu "Domo"
source "$BR2_EXTERNAL/Domo.in"
endmenu endmenu # Domo

View File

@@ -1,30 +1,30 @@
BR2_EXTERNAL ?= $(AW_PROJECT)/../../bsp/buildroot_external/ BR2_EXTERNAL ?= $(BR_PROJECT)/../../bsp/buildroot_external/
BR_ENV = BR2_EXTERNAL=$(BR2_EXTERNAL) O=$(AW_STAGING)/buildroot/ WORKSPACE_DIR=$(AW_STAGING) BUILDS_ROOT=$(AW_LOCAL_BUILDS_ROOT) BOARD=$(AW_BOARD) PROJECT=$(AW_PROJECT) BR_ENV = BR2_EXTERNAL=$(BR2_EXTERNAL) O=$(BR_STAGING)/buildroot/ WORKSPACE_DIR=$(BR_STAGING) BUILDS_ROOT=$(BR_LOCAL_BUILDS_ROOT) BOARD=$(BR_BOARD) PROJECT=$(BR_PROJECT)
buildroot.menuconfig: buildroot.config buildroot.menuconfig: buildroot.config
$(MAKE) $(BR_ENV) -C $(AW_PROJECT)/../../bsp/buildroot/ menuconfig $(MAKE) $(BR_ENV) -C $(BR_PROJECT)/../../bsp/buildroot/ menuconfig
cmp -s $(AW_STAGING)/buildroot/.config $(AW_PROJECT)/configs/buildroot.config; \ cmp -s $(BR_STAGING)/buildroot/.config $(BR_PROJECT)/configs/buildroot.config; \
if test $$? -ne 0; then echo "Config Files has changed......"; \ if test $$? -ne 0; then echo "Config Files has changed......"; \
cp $(AW_STAGING)/buildroot/.config $(AW_PROJECT)/configs/buildroot.config; \ cp $(BR_STAGING)/buildroot/.config $(BR_PROJECT)/configs/buildroot.config; \
fi fi
buildroot: buildroot.config buildroot: buildroot.config
$(MAKE) $(BR_ENV) -C $(AW_PROJECT)/../../bsp/buildroot/ $(MAKE) $(BR_ENV) -C $(BR_PROJECT)/../../bsp/buildroot/
buildroot.shell: buildroot.config buildroot.shell: buildroot.config
$(eval export $(BR_ENV)) $(eval export $(BR_ENV))
cd $(AW_STAGING)/buildroot/; $(BR_ENV) bash cd $(BR_STAGING)/buildroot/; $(BR_ENV) bash
buildroot.config: buildroot.config:
@mkdir -p $(AW_STAGING)/buildroot/ @mkdir -p $(BR_STAGING)/buildroot/
ifeq ("$(wildcard $(AW_STAGING)/buildroot/.config)","") ifeq ("$(wildcard $(BR_STAGING)/buildroot/.config)","")
@cp $(AW_PROJECT)/configs/buildroot.config $(AW_STAGING)/buildroot/.config @cp $(BR_PROJECT)/configs/buildroot.config $(BR_STAGING)/buildroot/.config
else else
cmp -s $(AW_PROJECT)/configs/buildroot.config $(AW_STAGING)/buildroot/.config; \ cmp -s $(BR_PROJECT)/configs/buildroot.config $(BR_STAGING)/buildroot/.config; \
if test $$? -ne 0; then echo "Config Files has changed......"; \ if test $$? -ne 0; then echo "Config Files has changed......"; \
cp $(AW_PROJECT)/configs/buildroot.config $(AW_STAGING)/buildroot/.config; \ cp $(BR_PROJECT)/configs/buildroot.config $(BR_STAGING)/buildroot/.config; \
fi fi
endif endif

View File

@@ -1,9 +1,9 @@
msg: msg:
@echo "Building $(AW_PROJECT_NAME) Firmware." @echo "Building $(BR_PROJECT_NAME) Firmware."
clean: clean:
rm -rf $(AW_STAGING) rm -rf $(BR_STAGING)
export DEBUG ?= 0 export DEBUG ?= 0
@@ -19,5 +19,5 @@ BUILD_TYPE := Release
endif endif
export BUILD_TYPE export BUILD_TYPE
export AW_LOCAL_BUILDS_ROOT ?= $(AW_PROJECT)/../../_builds export BR_LOCAL_BUILDS_ROOT ?= $(BR_PROJECT)/../../_builds
export AW_STAGING ?= $(AW_LOCAL_BUILDS_ROOT)/$(AW_PROJECT_NAME)$(BUILD_DIR)/ export BR_STAGING ?= $(BR_LOCAL_BUILDS_ROOT)/$(BR_PROJECT_NAME)$(BUILD_DIR)/

View File

@@ -2,13 +2,13 @@
# Entry point for the project. # Entry point for the project.
# Define the target. # Define the target.
export AW_PROJECT:=$(shell pwd) export BR_PROJECT:=$(shell pwd)
export AW_PROJECT_NAME:=pi_domo export BR_PROJECT_NAME:=pi_domo
export AW_BOARD:=$(shell pwd)/../../bsp/board/raspberrypi/ export BR_BOARD:=$(shell pwd)/../../bsp/board/raspberrypi/
include $(AW_BOARD)/main.mk include $(BR_BOARD)/main.mk
install: install:
cp $(AW_STAGING)/buildroot/images/zImage /tftpboot/ cp $(BR_STAGING)/buildroot/images/zImage /tftpboot/
cp $(AW_STAGING)/buildroot/images/rootfs.cpio.uboot /tftpboot/ cp $(BR_STAGING)/buildroot/images/rootfs.cpio.uboot /tftpboot/

View File

@@ -1,6 +1,6 @@
# #
# Automatically generated file; DO NOT EDIT. # Automatically generated file; DO NOT EDIT.
# Buildroot 2016.08.1-g2cd9a2e-dirty Configuration # Buildroot 2016.08.1-gebc3c8f-dirty Configuration
# #
BR2_HAVE_DOT_CONFIG=y BR2_HAVE_DOT_CONFIG=y
BR2_HOST_GCC_AT_LEAST_4_6=y BR2_HOST_GCC_AT_LEAST_4_6=y
@@ -282,8 +282,8 @@ BR2_TOOLCHAIN_HAS_ATOMIC=y
BR2_ROOTFS_SKELETON_DEFAULT=y BR2_ROOTFS_SKELETON_DEFAULT=y
# BR2_ROOTFS_SKELETON_CUSTOM is not set # BR2_ROOTFS_SKELETON_CUSTOM is not set
# BR2_ROOTFS_MERGED_USR is not set # BR2_ROOTFS_MERGED_USR is not set
BR2_TARGET_GENERIC_HOSTNAME="quartetIII" BR2_TARGET_GENERIC_HOSTNAME="Domo"
BR2_TARGET_GENERIC_ISSUE="Welcome to QuartetIII" BR2_TARGET_GENERIC_ISSUE="Welcome to Domo"
BR2_TARGET_GENERIC_PASSWD_MD5=y BR2_TARGET_GENERIC_PASSWD_MD5=y
# BR2_TARGET_GENERIC_PASSWD_SHA256 is not set # BR2_TARGET_GENERIC_PASSWD_SHA256 is not set
# BR2_TARGET_GENERIC_PASSWD_SHA512 is not set # BR2_TARGET_GENERIC_PASSWD_SHA512 is not set
@@ -316,9 +316,9 @@ BR2_GENERATE_LOCALE=""
# BR2_TARGET_TZ_INFO is not set # BR2_TARGET_TZ_INFO is not set
BR2_ROOTFS_USERS_TABLES="" BR2_ROOTFS_USERS_TABLES=""
BR2_ROOTFS_OVERLAY="$(BOARD)/ovl/" BR2_ROOTFS_OVERLAY="$(BOARD)/ovl/"
BR2_ROOTFS_POST_BUILD_SCRIPT="$(AW_BOARD)/scripts/post-build.sh" BR2_ROOTFS_POST_BUILD_SCRIPT="$(BR_BOARD)/scripts/post-build.sh"
BR2_ROOTFS_POST_FAKEROOT_SCRIPT="" BR2_ROOTFS_POST_FAKEROOT_SCRIPT=""
BR2_ROOTFS_POST_IMAGE_SCRIPT="$(AW_BOARD)/scripts/post-image.sh" BR2_ROOTFS_POST_IMAGE_SCRIPT="$(BR_BOARD)/scripts/post-image.sh"
BR2_ROOTFS_POST_SCRIPT_ARGS="" BR2_ROOTFS_POST_SCRIPT_ARGS=""
# #

View File

@@ -9,7 +9,7 @@ image boot.vfat {
"config.txt", "config.txt",
"dev.scr", "dev.scr",
"rpi-firmware/fixup.dat", "rpi-firmware/fixup.dat",
"pi_QuartetIII.dtb", "pi_Domo.dtb",
"rootfs.cpio.uboot", "rootfs.cpio.uboot",
"rpi-firmware/start.elf", "rpi-firmware/start.elf",
"u-boot.bin", "u-boot.bin",

Binary file not shown.

View File

@@ -0,0 +1,523 @@
/ {
#address-cells = <0x00000001>;
#size-cells = <0x00000001>;
interrupt-parent = <0x00000001>;
compatible = "brcm,bcm2708";
model = "Raspberry Pi Model B+";
chosen {
bootargs = [00];
};
aliases {
audio = "/soc/audio";
aux = "/soc/aux@0x7e215004";
sound = "/soc/sound";
soc = "/soc";
dma = "/soc/dma@7e007000";
intc = "/soc/interrupt-controller@7e00b200";
watchdog = "/soc/watchdog@7e100000";
random = "/soc/rng@7e104000";
mailbox = "/soc/mailbox@7e00b800";
gpio = "/soc/gpio@7e200000";
uart0 = "/soc/uart@7e201000";
sdhost = "/soc/sdhost@7e202000";
i2s = "/soc/i2s@7e203000";
spi0 = "/soc/spi@7e204000";
i2c0 = "/soc/i2c@7e205000";
uart1 = "/soc/uart@7e215040";
spi1 = "/soc/spi@7e215080";
spi2 = "/soc/spi@7e2150C0";
mmc = "/soc/mmc@7e300000";
i2c1 = "/soc/i2c@7e804000";
i2c2 = "/soc/i2c@7e805000";
usb = "/soc/usb@7e980000";
leds = "/soc/leds";
fb = "/soc/fb";
vchiq = "/soc/vchiq";
thermal = "/soc/thermal";
clocks = "/clocks";
};
memory {
device_type = "memory";
reg = <0x00000000 0x00000000>;
};
soc {
compatible = "simple-bus";
#address-cells = <0x00000001>;
#size-cells = <0x00000001>;
ranges = <0x7e000000 0x20000000 0x01000000>;
phandle = <0x00000022>;
dma@7e007000 {
compatible = "brcm,bcm2835-dma";
reg = <0x7e007000 0x00000f00>;
interrupts = <0x00000001 0x00000010 0x00000001 0x00000011 0x00000001 0x00000012 0x00000001 0x00000013 0x00000001 0x00000014 0x00000001 0x00000015 0x00000001 0x00000016 0x00000001 0x00000017 0x00000001 0x00000018 0x00000001 0x00000019 0x00000001 0x0000001a 0x00000001 0x0000001b>;
#dma-cells = <0x00000001>;
brcm,dma-channel-mask = <0x00000f35>;
phandle = <0x00000006>;
};
interrupt-controller@7e00b200 {
compatible = "brcm,bcm2835-armctrl-ic";
reg = <0x7e00b200 0x00000200>;
interrupt-controller;
#interrupt-cells = <0x00000002>;
phandle = <0x00000001>;
};
mailbox@7e00b800 {
compatible = "brcm,bcm2835-mbox";
reg = <0x7e00b880 0x00000040>;
interrupts = <0x00000000 0x00000001>;
#mbox-cells = <0x00000000>;
phandle = <0x00000012>;
};
watchdog@7e100000 {
compatible = "brcm,bcm2835-pm-wdt";
reg = <0x7e100000 0x00000028>;
status = "okay";
phandle = <0x0000001f>;
};
cprman@7e101000 {
compatible = "brcm,bcm2835-cprman";
#clock-cells = <0x00000001>;
reg = <0x7e101000 0x00002000>;
clocks = <0x00000002>;
status = "disabled";
phandle = <0x00000023>;
};
rng@7e104000 {
compatible = "brcm,bcm2835-rng";
reg = <0x7e104000 0x00000010>;
status = "okay";
phandle = <0x00000020>;
};
gpio@7e200000 {
compatible = "brcm,bcm2835-gpio";
reg = <0x7e200000 0x000000b4>;
interrupts = <0x00000002 0x00000011 0x00000002 0x00000012>;
gpio-controller;
#gpio-cells = <0x00000002>;
interrupt-controller;
#interrupt-cells = <0x00000002>;
phandle = <0x00000009>;
sdhost_pins {
brcm,pins = <0x00000030 0x00000031 0x00000032 0x00000033 0x00000034 0x00000035>;
brcm,function = <0x00000004>;
phandle = <0x00000007>;
};
spi0_pins {
brcm,pins = <0x00000009 0x0000000a 0x0000000b>;
brcm,function = <0x00000004>;
phandle = <0x0000000a>;
};
spi0_cs_pins {
brcm,pins = <0x00000008 0x00000007>;
brcm,function = <0x00000001>;
phandle = <0x0000000b>;
};
i2c0 {
brcm,pins = <0x00000000 0x00000001>;
brcm,function = <0x00000004>;
phandle = <0x0000000c>;
};
i2c1 {
brcm,pins = <0x00000002 0x00000003>;
brcm,function = <0x00000004>;
phandle = <0x00000011>;
};
i2s {
brcm,pins = <0x00000012 0x00000013 0x00000014 0x00000015>;
brcm,function = <0x00000004>;
phandle = <0x00000008>;
};
};
uart@7e201000 {
compatible = "arm,pl011", "arm,primecell";
reg = <0x7e201000 0x00001000>;
interrupts = <0x00000002 0x00000019>;
clocks = <0x00000003 0x00000004>;
clock-names = "uartclk", "apb_pclk";
arm,primecell-periphid = <0x00241011>;
status = "okay";
phandle = <0x00000015>;
};
sdhost@7e202000 {
compatible = "brcm,bcm2835-sdhost";
reg = <0x7e202000 0x00000100>;
interrupts = <0x00000002 0x00000018>;
clocks = <0x00000005>;
dmas = <0x00000006 0x0000000d>;
dma-names = "rx-tx";
brcm,overclock-50 = <0x00000000>;
brcm,pio-limit = <0x00000001>;
status = "okay";
pinctrl-names = "default";
pinctrl-0 = <0x00000007>;
bus-width = <0x00000004>;
phandle = <0x00000021>;
};
i2s@7e203000 {
compatible = "brcm,bcm2835-i2s";
reg = <0x7e203000 0x00000024 0x7e101098 0x00000008>;
dmas = <0x00000006 0x00000002 0x00000006 0x00000003>;
dma-names = "tx", "rx";
status = "disabled";
#sound-dai-cells = <0x00000000>;
pinctrl-names = "default";
pinctrl-0 = <0x00000008>;
phandle = <0x00000017>;
};
spi@7e204000 {
compatible = "brcm,bcm2835-spi";
reg = <0x7e204000 0x00001000>;
interrupts = <0x00000002 0x00000016>;
clocks = <0x00000005>;
#address-cells = <0x00000001>;
#size-cells = <0x00000000>;
status = "disabled";
dmas = <0x00000006 0x00000006 0x00000006 0x00000007>;
dma-names = "tx", "rx";
cs-gpios = <0x00000009 0x00000008 0x00000001 0x00000009 0x00000007 0x00000001>;
pinctrl-names = "default";
pinctrl-0 = <0x0000000a 0x0000000b>;
phandle = <0x00000018>;
spidev@0 {
compatible = "spidev";
reg = <0x00000000>;
#address-cells = <0x00000001>;
#size-cells = <0x00000000>;
spi-max-frequency = <0x0007a120>;
phandle = <0x00000024>;
};
spidev@1 {
compatible = "spidev";
reg = <0x00000001>;
#address-cells = <0x00000001>;
#size-cells = <0x00000000>;
spi-max-frequency = <0x0007a120>;
phandle = <0x00000025>;
};
};
i2c@7e205000 {
compatible = "brcm,bcm2708-i2c";
reg = <0x7e205000 0x00001000>;
interrupts = <0x00000002 0x00000015>;
clocks = <0x00000005>;
#address-cells = <0x00000001>;
#size-cells = <0x00000000>;
status = "disabled";
pinctrl-names = "default";
pinctrl-0 = <0x0000000c>;
clock-frequency = <0x000186a0>;
phandle = <0x00000019>;
};
pwm@7e20c000 {
compatible = "brcm,bcm2835-pwm";
reg = <0x7e20c000 0x00000028>;
clocks = <0x0000000d>;
#pwm-cells = <0x00000002>;
status = "disabled";
phandle = <0x00000026>;
};
aux@0x7e215004 {
compatible = "brcm,bcm2835-aux";
#clock-cells = <0x00000001>;
reg = <0x7e215000 0x00000008>;
clocks = <0x00000005>;
status = "disabled";
phandle = <0x0000000f>;
};
uart@7e215040 {
compatible = "brcm,bcm2835-aux-uart", "ns16550";
reg = <0x7e215040 0x00000040>;
interrupts = <0x00000001 0x0000001d>;
clocks = <0x0000000e>;
reg-shift = <0x00000002>;
no-loopback-test;
status = "disabled";
phandle = <0x00000016>;
};
spi@7e215080 {
compatible = "brcm,bcm2835-aux-spi";
reg = <0x7e215080 0x00000040 0x7e215000 0x00000008>;
interrupts = <0x00000001 0x0000001d>;
clocks = <0x0000000f 0x00000001>;
#address-cells = <0x00000001>;
#size-cells = <0x00000000>;
status = "disabled";
phandle = <0x00000027>;
};
spi@7e2150C0 {
compatible = "brcm,bcm2835-aux-spi";
reg = <0x7e2150c0 0x00000040 0x7e215000 0x00000008>;
interrupts = <0x00000001 0x0000001d>;
clocks = <0x0000000f 0x00000002>;
#address-cells = <0x00000001>;
#size-cells = <0x00000000>;
status = "disabled";
phandle = <0x00000028>;
};
mmc@7e300000 {
compatible = "brcm,bcm2835-mmc";
reg = <0x7e300000 0x00000100>;
interrupts = <0x00000002 0x0000001e>;
clocks = <0x00000010>;
dmas = <0x00000006 0x0000000b>;
dma-names = "rx-tx";
brcm,overclock-50 = <0x00000000>;
status = "disabled";
phandle = <0x00000029>;
};
i2c@7e804000 {
compatible = "brcm,bcm2708-i2c";
reg = <0x7e804000 0x00001000>;
interrupts = <0x00000002 0x00000015>;
clocks = <0x00000005>;
#address-cells = <0x00000001>;
#size-cells = <0x00000000>;
status = "disabled";
pinctrl-names = "default";
pinctrl-0 = <0x00000011>;
clock-frequency = <0x000186a0>;
phandle = <0x0000001a>;
};
i2c@7e805000 {
compatible = "brcm,bcm2708-i2c";
reg = <0x7e805000 0x00001000>;
interrupts = <0x00000002 0x00000015>;
clocks = <0x00000005>;
#address-cells = <0x00000001>;
#size-cells = <0x00000000>;
status = "disabled";
clock-frequency = <0x000186a0>;
phandle = <0x0000001b>;
};
smi@7e600000 {
compatible = "brcm,bcm2835-smi";
reg = <0x7e600000 0x00000044 0x7e1010b0 0x00000008>;
interrupts = <0x00000002 0x00000010>;
brcm,smi-clock-source = <0x00000006>;
brcm,smi-clock-divisor = <0x00000004>;
dmas = <0x00000006 0x00000004>;
dma-names = "rx-tx";
status = "disabled";
phandle = <0x0000002a>;
};
usb@7e980000 {
compatible = "brcm,bcm2708-usb";
reg = <0x7e980000 0x00010000 0x7e006000 0x00001000>;
interrupts = <0x00000002 0x00000000 0x00000001 0x00000009>;
phandle = <0x0000002b>;
};
firmware {
compatible = "raspberrypi,bcm2835-firmware";
mboxes = <0x00000012>;
phandle = <0x00000013>;
};
power {
compatible = "raspberrypi,bcm2835-power";
firmware = <0x00000013>;
#power-domain-cells = <0x00000001>;
phandle = <0x0000002c>;
};
leds {
compatible = "gpio-leds";
phandle = <0x0000002d>;
act {
label = "led0";
linux,default-trigger = "mmc0";
gpios = <0x00000009 0x0000002f 0x00000000>;
phandle = <0x0000001c>;
};
pwr {
label = "led1";
linux,default-trigger = "input";
gpios = <0x00000009 0x00000023 0x00000000>;
phandle = <0x0000001d>;
};
};
fb {
compatible = "brcm,bcm2708-fb";
firmware = <0x00000013>;
status = "okay";
phandle = <0x0000002e>;
};
vchiq {
compatible = "brcm,bcm2835-vchiq";
reg = <0x7e00b840 0x0000000f>;
interrupts = <0x00000000 0x00000002>;
cache-line-size = <0x00000020>;
firmware = <0x00000013>;
phandle = <0x00000014>;
};
thermal {
compatible = "brcm,bcm2835-thermal";
firmware = <0x00000013>;
phandle = <0x0000002f>;
};
audio {
compatible = "brcm,bcm2835-audio";
brcm,pwm-channels = <0x00000008>;
status = "disabled";
phandle = <0x0000001e>;
};
sound {
status = "disabled";
phandle = <0x00000030>;
};
timer@7e003000 {
compatible = "brcm,bcm2835-system-timer";
reg = <0x7e003000 0x00001000>;
interrupts = <0x00000001 0x00000000 0x00000001 0x00000001 0x00000001 0x00000002 0x00000001 0x00000003>;
clock-frequency = <0x000f4240>;
};
arm-pmu {
compatible = "arm,arm1176-pmu";
};
gpiomem {
compatible = "brcm,bcm2835-gpiomem";
reg = <0x7e200000 0x00001000>;
status = "okay";
};
};
clocks {
compatible = "simple-bus";
#address-cells = <0x00000001>;
#size-cells = <0x00000000>;
phandle = <0x00000031>;
clock@0 {
compatible = "fixed-clock";
reg = <0x00000000>;
#clock-cells = <0x00000000>;
clock-output-names = "core";
clock-frequency = <0x0ee6b280>;
phandle = <0x00000005>;
};
clock@1 {
compatible = "fixed-clock";
reg = <0x00000001>;
#clock-cells = <0x00000000>;
clock-output-names = "mmc";
clock-frequency = <0x0ee6b280>;
phandle = <0x00000010>;
};
clock@2 {
compatible = "fixed-clock";
reg = <0x00000002>;
#clock-cells = <0x00000000>;
clock-output-names = "uart0_pclk";
clock-frequency = <0x002dc6c0>;
phandle = <0x00000003>;
};
clock@3 {
compatible = "fixed-clock";
reg = <0x00000003>;
#clock-cells = <0x00000000>;
clock-output-names = "apb_pclk";
clock-frequency = <0x07829b80>;
phandle = <0x00000004>;
};
clock@4 {
compatible = "fixed-clock";
reg = <0x00000004>;
#clock-cells = <0x00000000>;
clock-output-names = "pwm";
clock-frequency = <0x05f5e100>;
phandle = <0x0000000d>;
};
clock@5 {
compatible = "fixed-factor-clock";
reg = <0x00000005>;
clocks = <0x00000005>;
#clock-cells = <0x00000000>;
clock-div = <0x00000001>;
clock-mult = <0x00000002>;
phandle = <0x0000000e>;
};
clock@6 {
compatible = "fixed-clock";
reg = <0x00000006>;
#clock-cells = <0x00000000>;
clock-output-names = "osc";
clock-frequency = <0x0124f800>;
phandle = <0x00000002>;
};
};
__overrides__ {
cache_line_size = [00 00 00 14 63 61 63 68 65 2d 6c 69 6e 65 2d 73 69 7a 65 3a 30 00];
uart0 = [00 00 00 15 73 74 61 74 75 73 00];
uart0_clkrate = [00 00 00 03 63 6c 6f 63 6b 2d 66 72 65 71 75 65 6e 63 79 3a 30 00];
uart1 = [00 00 00 16 73 74 61 74 75 73 00];
i2s = [00 00 00 17 73 74 61 74 75 73 00];
spi = [00 00 00 18 73 74 61 74 75 73 00];
i2c0 = [00 00 00 19 73 74 61 74 75 73 00];
i2c1 = [00 00 00 1a 73 74 61 74 75 73 00];
i2c2_iknowwhatimdoing = [00 00 00 1b 73 74 61 74 75 73 00];
i2c0_baudrate = [00 00 00 19 63 6c 6f 63 6b 2d 66 72 65 71 75 65 6e 63 79 3a 30 00];
i2c1_baudrate = [00 00 00 1a 63 6c 6f 63 6b 2d 66 72 65 71 75 65 6e 63 79 3a 30 00];
i2c2_baudrate = [00 00 00 1b 63 6c 6f 63 6b 2d 66 72 65 71 75 65 6e 63 79 3a 30 00];
core_freq = [00 00 00 05 63 6c 6f 63 6b 2d 66 72 65 71 75 65 6e 63 79 3a 30 00];
act_led_gpio = <0x0000001c 0x6770696f 0x733a3400>;
act_led_activelow = <0x0000001c 0x6770696f 0x733a3800>;
act_led_trigger = [00 00 00 1c 6c 69 6e 75 78 2c 64 65 66 61 75 6c 74 2d 74 72 69 67 67 65 72 00];
pwr_led_gpio = <0x0000001d 0x6770696f 0x733a3400>;
pwr_led_activelow = <0x0000001d 0x6770696f 0x733a3800>;
pwr_led_trigger = [00 00 00 1d 6c 69 6e 75 78 2c 64 65 66 61 75 6c 74 2d 74 72 69 67 67 65 72 00];
audio = [00 00 00 1e 73 74 61 74 75 73 00];
watchdog = [00 00 00 1f 73 74 61 74 75 73 00];
random = [00 00 00 20 73 74 61 74 75 73 00];
sd_overclock = <0x00000021 0x6272636d 0x2c6f7665 0x72636c6f 0x636b2d35 0x303a3000>;
sd_force_pio = <0x00000021 0x6272636d 0x2c666f72 0x63652d70 0x696f3f00>;
sd_pio_limit = [00 00 00 21 62 72 63 6d 2c 70 69 6f 2d 6c 69 6d 69 74 3a 30 00];
sd_debug = [00 00 00 21 62 72 63 6d 2c 64 65 62 75 67 00];
};
__symbols__ {
soc = "/soc";
dma = "/soc/dma@7e007000";
intc = "/soc/interrupt-controller@7e00b200";
mailbox = "/soc/mailbox@7e00b800";
watchdog = "/soc/watchdog@7e100000";
cprman = "/soc/cprman@7e101000";
random = "/soc/rng@7e104000";
gpio = "/soc/gpio@7e200000";
sdhost_pins = "/soc/gpio@7e200000/sdhost_pins";
spi0_pins = "/soc/gpio@7e200000/spi0_pins";
spi0_cs_pins = "/soc/gpio@7e200000/spi0_cs_pins";
i2c0_pins = "/soc/gpio@7e200000/i2c0";
i2c1_pins = "/soc/gpio@7e200000/i2c1";
i2s_pins = "/soc/gpio@7e200000/i2s";
uart0 = "/soc/uart@7e201000";
sdhost = "/soc/sdhost@7e202000";
i2s = "/soc/i2s@7e203000";
spi0 = "/soc/spi@7e204000";
spidev0 = "/soc/spi@7e204000/spidev@0";
spidev1 = "/soc/spi@7e204000/spidev@1";
i2c0 = "/soc/i2c@7e205000";
pwm = "/soc/pwm@7e20c000";
aux = "/soc/aux@0x7e215004";
uart1 = "/soc/uart@7e215040";
spi1 = "/soc/spi@7e215080";
spi2 = "/soc/spi@7e2150C0";
mmc = "/soc/mmc@7e300000";
i2c1 = "/soc/i2c@7e804000";
i2c2 = "/soc/i2c@7e805000";
smi = "/soc/smi@7e600000";
usb = "/soc/usb@7e980000";
firmware = "/soc/firmware";
power = "/soc/power";
leds = "/soc/leds";
act_led = "/soc/leds/act";
pwr_led = "/soc/leds/pwr";
fb = "/soc/fb";
vchiq = "/soc/vchiq";
thermal = "/soc/thermal";
audio = "/soc/audio";
sound = "/soc/sound";
clocks = "/clocks";
clk_core = "/clocks/clock@0";
clk_mmc = "/clocks/clock@1";
clk_uart0 = "/clocks/clock@2";
clk_apb_p = "/clocks/clock@3";
clk_pwm = "/clocks/clock@4";
clk_uart1 = "/clocks/clock@5";
clk_osc = "/clocks/clock@6";
};
};

7
projects/pi_domo/dts/build.sh Executable file
View File

@@ -0,0 +1,7 @@
# Dump the final dtb file for the PI B+ used for the Pi_QuartetIII target.
#
#../../../../../_builds/pi_QuartetIII-release/cross/usr/bin/fdtdump bcm2708-rpi-b-plus.dtb > bcm2708-rpi-b-plus.dti
#
../../../_builds/pi_domo-release/cross/usr/bin/dtc -O dtb -o pi_Domo.dtb pi_Domo.dts

Binary file not shown.

View File

@@ -0,0 +1,20 @@
/dts-v1/;
/include/ "bcm2708-rpi-b-plus.dti"
/ {
soc {
mmc {
status = "okay";
};
audio {
status = "okay";
};
i2s {
status = "okay";
};
i2c {
status = "okay";
};
};
};

View File

@@ -0,0 +1,2 @@
# MTD device name Device offset Env. size Flash sector size Number of sectors
/boot/uboot.env 0x0000 0x4000 0x4000

22
projects/pi_domo/post-build.sh Executable file
View File

@@ -0,0 +1,22 @@
#!/bin/bash
# Catch Postbuild Error
function error {
echo "Postbuild Failed."
exit 1;
}
set -e
trap error ERR
echo "==> POSTBUILD:"
echo "BR_STAGING: ${BR_STAGING}"
echo "BR_PROJECT: " ${BR_PROJECT}
cp -a ${BR_PROJECT}/configs/config.txt ${BR_STAGING}/buildroot/images/
cp -a ${BR_PROJECT}/dts/pi_Domo.dtb ${BR_STAGING}/buildroot/images/
cp -a ${BR_STAGING}/buildroot/images/uboot-env.bin ${BR_STAGING}/buildroot/images/uboot.env

View File

@@ -0,0 +1,8 @@
mmc dev 0
fatload mmc 0:1 ${kernel_addr_r} zImage
fatload mmc 0:1 ${fdt_addr_r} bcm2708-rpi-b-plus.dtb
fatload mmc 0:1 ${ramdisk_addr_r} rootfs.cpio.uboot
setenv mmc_freq 'sdhci-bcm2708.emmc_clock_freq=250000000 sdhci-bcm2708.enable_llm=0'
setenv bootargs ${mmc_freq} console=ttyAMA0,115200
bootz ${kernel_addr_r} ${ramdisk_addr_r} ${fdt_addr_r}
#smsc95xx.macaddr=${ethaddr}

View File

@@ -0,0 +1,9 @@
usb start
mmc dev 0
fatload mmc 0:1 ${kernel_addr_r} zImage
fatload mmc 0:1 ${fdt_addr_r} pi_QuartetIII.dtb
dhcp ${ramdisk_addr_r} rootfs.cpio.uboot
setenv mmc_freq 'sdhci-bcm2708.emmc_clock_freq=250000000 sdhci-bcm2708.enable_llm=0'
setenv usb_args 'dwc_otg.lpm_enable=0 dwc_otg.speed=1 dwc_otg.fiq_fix_enable=1'
setenv bootargs ${usb_args} ${mmc_freq} console=ttyAMA0,115200
bootz ${kernel_addr_r} ${ramdisk_addr_r} ${fdt_addr_r}

View File

@@ -0,0 +1,33 @@
arch=arm
baudrate=115200
board=rpi
board_name=Model B+
board_rev=0x10
board_rev_scheme=0
board_revision=0x10
stderr=serial
stdin=serial
stdout=serial
boot_prefixes=/ /boot/
boot_scripts=boot.scr boot.scr.uimg
boot_targets=fel mmc0 mmc1
bootcmd=run distro_bootcmd
distro_bootcmd=for target in ${boot_targets}; do run bootcmd_${target}; done
bootcmd_fel=if test -n ${fel_booted} && test -n ${fel_scriptaddr}; then echo '(FEL boot)'; source ${fel_scriptaddr}; fi
bootcmd_mmc0=setenv devnum 0; run mmc_boot
bootcmd_mmc1=setenv devnum 1; run mmc_boot
mmc_boot=if mmc dev ${devnum}; then setenv devtype mmc; run scan_dev_for_boot_part; fi
scan_dev_for_boot_part=part list ${devtype} ${devnum} -bootable devplist; env exists devplist || setenv devplist 1; for distro_bootpart in ${devplist}; do if fstype ${devtype} ${devnum}:${distro_bootpart} bootfstype; then run scan_dev_for_boot; fi; done
scan_dev_for_boot=echo Scanning ${devtype} ${devnum}:${distro_bootpart}...; for prefix in ${boot_prefixes}; do run scan_dev_for_scripts; done;
scan_dev_for_scripts=for script in ${boot_scripts}; do if test -e ${devtype} ${devnum}:${distro_bootpart} ${prefix}${script}; then echo Found U-Boot script ${prefix}${script}; run boot_a_script; echo SCRIPT FAILED: continuing...; fi; done
boot_a_script=load ${devtype} ${devnum}:${distro_bootpart} ${scriptaddr} ${prefix}${script}; source ${scriptaddr}
console=ttyS0,115200
scriptaddr=0x43100000
fdt_addr_r=0x43000000
kernel_addr_r=0x42000000
ramdisk_addr_r=0x43300000
dev=run dev_boot
dev_boot=mmc dev 0; fatload mmc 0:1 ${scriptaddr} dev.scr; source ${scriptaddr}
update=run update_scr
update_scr=mmc dev 0; fatload mmc 0:1 ${scriptaddr} update.scr; source ${scriptaddr}
is_configured=0

View File

@@ -0,0 +1,9 @@
usb start
dhcp ${kernel_addr_r} zImage
fatwrite mmc 0:1 ${fileaddr} zImage ${filesize}
tftp ${fdt_addr_r} bcm2708-rpi-b.dtb
fatwrite mmc 0:1 ${fileaddr} bcm2708-rpi-b-plus.dtb ${filesize}
tftp ${ramdisk_addr_r} rootfs.cpio.uboot
fatwrite mmc 0:1 ${fileaddr} rootfs.cpio.uboot ${filesize}
setenv bootargs console=ttyAMA0,115200
bootz ${kernel_addr_r} ${ramdisk_addr_r} ${fdt_addr_r}