summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPedro Alvarez <pedro.alvarez@codethink.co.uk>2015-10-08 22:59:52 (GMT)
committerPedro Alvarez <pedro.alvarez@codethink.co.uk>2015-10-25 21:08:21 (GMT)
commitc16d9ce16828e9e6f5785c5eb02f807723ff95de (patch)
tree7e1a0fdebb9d624cb531a4d135a322a0fe5d8448
parent4ba344339136825374633083648507f54b096d79 (diff)
downloaddefinitions-baserock/pedroalvarez/merge-rpi2.tar.gz
Add rpi2 system and bspbaserock/pedroalvarez/merge-rpi2
Change-Id: I2a89a90a5b0dff9693e14fb42723ebdaf2200d87
-rw-r--r--clusters/rpi2-baseline.morph14
-rw-r--r--clusters/rpi2-gdp.morph14
-rw-r--r--clusters/rpi2.morph19
-rw-r--r--partitioning/rpi13
-rw-r--r--strata/bsp-rpi2.morph28
-rw-r--r--strata/bsp-rpi2/bsp-support@rpi2.morph15
-rw-r--r--strata/bsp-rpi2/linux-firmware@rpi2.morph42
-rw-r--r--strata/bsp-rpi2/linux@rpi2.morph124
-rw-r--r--strata/bsp-rpi2/u-boot@rpi2.morph11
-rw-r--r--systems/build-system-armv7lhf-rpi2.morph56
-rw-r--r--systems/genivi-baseline-system-armv7lhf-rpi2.morph49
11 files changed, 385 insertions, 0 deletions
diff --git a/clusters/rpi2-baseline.morph b/clusters/rpi2-baseline.morph
new file mode 100644
index 0000000..948bd87
--- /dev/null
+++ b/clusters/rpi2-baseline.morph
@@ -0,0 +1,14 @@
+name: ci
+kind: cluster
+systems:
+- morph: systems/genivi-baseline-system-armv7lhf-rpi2.morph
+ deploy:
+ build-system-armv7lhf-rpi2:
+ type: extensions/rawdisk
+ location: /dev/mmcblk1
+ DISK_SIZE: 4G
+ BOOT_DEVICE: /dev/mmcblk0p1
+ ROOT_DEVICE: /dev/mmcblk0p2
+ BOOTLOADER_CONFIG_FORMAT: extlinux
+ BOOTLOADER_INSTALL: none
+ PARTITION_FILE: partitioning/rpi
diff --git a/clusters/rpi2-gdp.morph b/clusters/rpi2-gdp.morph
new file mode 100644
index 0000000..9bacab2
--- /dev/null
+++ b/clusters/rpi2-gdp.morph
@@ -0,0 +1,14 @@
+name: rpi2-gdp
+kind: cluster
+systems:
+- morph: systems/genivi-demo-platform-armv7lhf-rpi2.morph
+ deploy:
+ build-system-armv7lhf-rpi2:
+ type: extensions/rawdisk
+ location: /dev/mmcblk1
+ DISK_SIZE: 4G
+ BOOT_DEVICE: /dev/mmcblk0p1
+ ROOT_DEVICE: /dev/mmcblk0p2
+ BOOTLOADER_CONFIG_FORMAT: extlinux
+ BOOTLOADER_INSTALL: none
+ PARTITION_FILE: partitioning/rpi
diff --git a/clusters/rpi2.morph b/clusters/rpi2.morph
new file mode 100644
index 0000000..3a8cc02
--- /dev/null
+++ b/clusters/rpi2.morph
@@ -0,0 +1,19 @@
+name: ci
+kind: cluster
+description: |
+ Deploy all the systems for CD.
+
+ This cluster morph is for use by the Mason Continuous Delivery pipeline
+ during development.
+systems:
+- morph: systems/build-system-armv7lhf-rpi2.morph
+ deploy:
+ build-system-armv7lhf-rpi2:
+ type: extensions/rawdisk
+ location: build-system-armv7lhf-rpi2.img
+ DISK_SIZE: 4G
+ BOOT_DEVICE: /dev/mmcblk0p1
+ ROOT_DEVICE: /dev/mmcblk0p2
+ BOOTLOADER_CONFIG_FORMAT: extlinux
+ BOOTLOADER_INSTALL: none
+ PARTITION_FILE: partitioning/rpi
diff --git a/partitioning/rpi b/partitioning/rpi
new file mode 100644
index 0000000..2971243
--- /dev/null
+++ b/partitioning/rpi
@@ -0,0 +1,13 @@
+start_offset: 2048
+partition_table_format: mbr
+partitions:
+- description: boot
+ size: 100M
+ fdisk_type: 0x0b
+ filesystem: vfat
+ mountpoint: /boot
+- description: rootfs
+ size: fill
+ fdisk_type: 0x83
+ filesystem: btrfs
+ mountpoint: /
diff --git a/strata/bsp-rpi2.morph b/strata/bsp-rpi2.morph
new file mode 100644
index 0000000..5df18aa
--- /dev/null
+++ b/strata/bsp-rpi2.morph
@@ -0,0 +1,28 @@
+name: bsp-rpi2
+kind: stratum
+description: |
+ Platform-specific chunks for Raspberry Pi 2
+build-depends:
+- morph: strata/core.morph
+- morph: strata/coreutils-common.morph
+chunks:
+- name: bsp-support@rpi2
+ morph: strata/bsp-rpi2/bsp-support@rpi2.morph
+ repo: baserock:baserock/bsp-support
+ ref: baserock/pedroalvarez/rpi
+ unpetrify-ref: master
+- name: linux@rpi2
+ morph: strata/bsp-rpi2/linux@rpi2.morph
+ repo: upstream:linux
+ ref: baserock/pedroalvarez/rpi2-drm-rebased-on-vc4-kms-v3d-rpi2
+ unpetrify-ref: baserock/pedroalvarez/rpi2-drm-rebased-on-vc4-kms-v3d-rpi2
+- name: linux-firmware@rpi2
+ repo: upstream:linux-firmware
+ morph: strata/bsp-rpi2/linux-firmware@rpi2.morph
+ ref: d82d3c1e5eddb811a38513a7e5b33202773f0fff
+ unpetrify-ref: master
+- name: u-boot@rpi2
+ morph: strata/bsp-rpi2/u-boot@rpi2.morph
+ repo: upstream:u-boot
+ ref: f33cdaa4c3da4a8fd35aa2f9a3172f31cc887b35
+ unpetrify-ref: v2015.04
diff --git a/strata/bsp-rpi2/bsp-support@rpi2.morph b/strata/bsp-rpi2/bsp-support@rpi2.morph
new file mode 100644
index 0000000..03fe311
--- /dev/null
+++ b/strata/bsp-rpi2/bsp-support@rpi2.morph
@@ -0,0 +1,15 @@
+name: bsp-support@rpi2
+kind: chunk
+build-system: manual
+install-commands:
+- mkdir -p "$DESTDIR"/boot
+- cp raspberry-pi/* "$DESTDIR"/boot/
+- |
+ cat << EOF > "$DESTDIR"/boot/cmdline.txt
+ dwc_otg.lpm_enable=0 cma=256M console=ttyAMA0,115200 console=tty1 root=/dev/mmcblk0p2 rootfstype=btrfs rootwait rootflags=subvol=systems/default/run
+ EOF
+- |
+ cat << EOF > "$DESTDIR"/boot/config.txt
+ mask_gpu_interrupt0=0x400 # VPU shouldn't handle V3D interrupts
+ avoid_warnings=2 # VPU shouldn't smash our display setup.
+ EOF
diff --git a/strata/bsp-rpi2/linux-firmware@rpi2.morph b/strata/bsp-rpi2/linux-firmware@rpi2.morph
new file mode 100644
index 0000000..c7a3218
--- /dev/null
+++ b/strata/bsp-rpi2/linux-firmware@rpi2.morph
@@ -0,0 +1,42 @@
+name: linux-firmware@rpi2
+kind: chunk
+install-commands:
+- mkdir -p "$DESTDIR"/lib/firmware
+- cp rt73.bin "$DESTDIR"/lib/firmware/rt73.bin
+- cp rt2661.bin "$DESTDIR"/lib/firmware/rt2661.bin
+- cp ar7010_1_1.fw "$DESTDIR"/lib/firmware/ar7010_1_1.fw
+- cp ar9271.fw "$DESTDIR"/lib/firmware/ar9271.fw
+- cp lbtf_usb.bin "$DESTDIR"/lib/firmware/lbtf_usb.bin
+- cp rt3071.bin "$DESTDIR"/lib/firmware/rt3071.bin
+- cp rt2870.bin "$DESTDIR"/lib/firmware/rt2870.bin
+- cp htc_9271.fw "$DESTDIR"/lib/firmware/htc_9271.fw
+#- cp mt7601u.bin "$DESTDIR"/lib/firmware/mt7601u.bin
+- cp rt2561.bin "$DESTDIR"/lib/firmware/rt2561.bin
+#- cp ar9170.fw "$DESTDIR"/lib/firmware/ar9170.fw
+- cp ath3k-1.fw "$DESTDIR"/lib/firmware/ath3k-1.fw
+- cp rt2561s.bin "$DESTDIR"/lib/firmware/rt2561s.bin
+- cp htc_7010.fw "$DESTDIR"/lib/firmware/htc_7010.fw
+- cp ar7010.fw "$DESTDIR"/lib/firmware/ar7010.fw
+- cp rt3290.bin "$DESTDIR"/lib/firmware/rt3290.bin
+- cp ar5523.bin "$DESTDIR"/lib/firmware/ar5523.bin
+- cp rt2860.bin "$DESTDIR"/lib/firmware/rt2860.bin
+
+- cp -r ar3k "$DESTDIR"/lib/firmware/ar3k
+- cp -r ath6k "$DESTDIR"/lib/firmware/ath6k
+- cp -r ath6k/AR6004 "$DESTDIR"/lib/firmware/ath6k/AR6004
+- cp -r ath6k/AR6004/hw1.3 "$DESTDIR"/lib/firmware/ath6k/AR6004/hw1.3
+- cp -r ath6k/AR6004/hw1.2 "$DESTDIR"/lib/firmware/ath6k/AR6004/hw1.2
+- cp -r ath6k/AR6003 "$DESTDIR"/lib/firmware/ath6k/AR6003
+- cp -r ath6k/AR6003/hw1.0 "$DESTDIR"/lib/firmware/ath6k/AR6003/hw1.0
+- cp -r ath6k/AR6003/hw2.1.1 "$DESTDIR"/lib/firmware/ath6k/AR6003/hw2.1.1
+- cp -r ath6k/AR6003/hw2.0 "$DESTDIR"/lib/firmware/ath6k/AR6003/hw2.0
+- cp -r ath6k/AR6003.1 "$DESTDIR"/lib/firmware/ath6k/AR6003.1
+- cp -r ath6k/AR6003.1/hw2.1.1 "$DESTDIR"/lib/firmware/ath6k/AR6003.1/hw2.1.1
+- cp -r RTL8192E "$DESTDIR"/lib/firmware/RTL8192E
+- cp -r brcm "$DESTDIR"/lib/firmware/brcm
+- cp -r rtlwifi "$DESTDIR"/lib/firmware/rtlwifi
+#- cp -r RTL8192SU "$DESTDIR"/lib/firmware/RTL8192SU
+- cp -r rtl_nic "$DESTDIR"/lib/firmware/rtl_nic
+- cp -r libertas "$DESTDIR"/lib/firmware/libertas
+- cp -r mwl8k "$DESTDIR"/lib/firmware/mwl8k
+- cp -r mrvl "$DESTDIR"/lib/firmware/mrvl
diff --git a/strata/bsp-rpi2/linux@rpi2.morph b/strata/bsp-rpi2/linux@rpi2.morph
new file mode 100644
index 0000000..0f856b8
--- /dev/null
+++ b/strata/bsp-rpi2/linux@rpi2.morph
@@ -0,0 +1,124 @@
+name: linux@rpi2
+kind: chunk
+configure-commands:
+- make bcm2709_defconfig
+- scripts/config -d KERNEL_LZO
+- scripts/config -e KERNEL_GZIP
+- scripts/config -e NAMESPACES
+- scripts/config -e PACKET
+- scripts/config -e SATA_AHCI
+- scripts/config -e ATA_GENERIC
+- scripts/config -e HAVE_IDE
+- scripts/config -d BLK_DEV_IDE_SATA
+- scripts/config -e BTRFS_FS
+- scripts/config -e BTRFS_FS_POSIX_ACL
+- scripts/config -e DEVTMPFS
+- scripts/config -e DEVTMPFS_MOUNT
+- scripts/config -e CONFIG_FHANDLE
+- scripts/config -e DEVPTS_MULTIPLE_INSTANCES
+- scripts/config -e CGROUPS
+- scripts/config -e AUTOFS4_FS
+- scripts/config --set-str UEVENT_HELPER_PATH ''
+- scripts/config -e EXT2_FS
+- scripts/config -e EXT2_FS_XATTR
+- scripts/config -e EXT2_FS_POSIX_ACL
+- scripts/config -e EXT2_FS_SECURITY
+- scripts/config -e EXT2_FS_XIP
+- scripts/config -e EXT3_FS
+- scripts/config -d EXT3_DEFAULTS_TO_ORDERED
+- scripts/config -e EXT3_FS_XATTR
+- scripts/config -e EXT3_FS_POSIX_ACL
+- scripts/config -e EXT3_FS_SECURITY
+- scripts/config -e EXT4_FS
+- scripts/config -e EXT4_FS_XATTR
+- scripts/config -e EXT4_FS_POSIX_ACL
+- scripts/config -e EXT4_FS_SECURITY
+- scripts/config -d EXT4_DEBUG
+- scripts/config -e FUSE_FS
+- scripts/config -e OVERLAY_FS
+- scripts/config -e XFS_FS
+- scripts/config -e LIBCRC32C
+- scripts/config -d JBD_DEBUG
+- scripts/config -d JBD2_DEBUG
+- scripts/config -e BLK_DEV_LOOP
+- scripts/config -d BLK_DEV_CRYPTOLOOP
+- scripts/config --set-val BLK_DEV_LOOP_MIN_COUNT 8
+- scripts/config -e DM_SNAPSHOT
+- scripts/config -e IKCONFIG
+- scripts/config -e IKCONFIG_PROC
+- scripts/config -e SECCOMP
+- scripts/config -d DEBUG_STACK_TRACE
+- scripts/config -e NFSD
+- scripts/config -e NFSD_V3
+- scripts/config -e DRM_TEGRA_STAGING
+- scripts/config -m DRM_NOUVEAU
+- scripts/config -e VLAN_8021Q
+- scripts/config -e BRIDGE_VLAN_FILTERING
+- scripts/config -e BLK_DEV_NBD
+- scripts/config -e BRIDGE_NF_EBTABLES
+- scripts/config -e NETFILTER
+- scripts/config -e NETFILTER_ADVANCED
+- scripts/config -e NETFILTER_XT_MATCH_ADDRTYPE
+- scripts/config -e OPENVSWITCH
+- scripts/config -e OPENVSWITCH_VXLAN
+- scripts/config -e CONFIG_OPENVSWITCH_GRE
+- scripts/config -e NET_CLS_BASIC
+- scripts/config -e NET_SCH_INGRESS
+- scripts/config -e NET_ACT_POLICE
+- scripts/config -e NET_IPGRE_DEMUX
+- scripts/config -e NET_SCH_HTB
+- scripts/config -e NET_SCH_HFSC
+- scripts/config -e VXLAN
+- scripts/config -e VETH
+- scripts/config -e IP_NF_MATCH_AH
+- scripts/config -e IP_NF_MATCH_ECN
+- scripts/config -e IP_NF_MATCH_RPFILTER
+- scripts/config -e IP_NF_MATCH_TTL
+- scripts/config -e IP_NF_TARGET_SYNPROXY
+- scripts/config -e IP_NF_TARGET_NETMAP
+- scripts/config -e IP_NF_TARGET_REDIRECT
+- scripts/config -e IP_NF_TARGET_CLUSTERIP
+- scripts/config -e IP_NF_TARGET_ECN
+- scripts/config -e IP_NF_TARGET_TTL
+- scripts/config -e IP_NF_RAW
+- scripts/config -e IP_NF_SECURITY
+- scripts/config -e IP_NF_ARPTABLES
+- scripts/config -e NETFILTER_NETLINK_QUEUE
+- scripts/config -e SCSI_NETLINK
+- scripts/config -e NETFILTER_XT_TARGET_MARK
+- scripts/config -e NETFILTER_XT_SET
+- scripts/config -e IP_SET
+- scripts/config -e IP_SET_BITMAP_IP
+- scripts/config -e IP_SET_BITMAP_IPMAC
+- scripts/config -e IP_SET_BITMAP_PORT
+- scripts/config -e IP_SET_HASH_IP
+- scripts/config -e IP_SET_HASH_IPMARK
+- scripts/config -e IP_SET_HASH_IPPORT
+- scripts/config -e IP_SET_HASH_IPPORTIP
+- scripts/config -e IP_SET_HASH_IPPORTNET
+- scripts/config -e IP_SET_HASH_MAC
+- scripts/config -e IP_SET_HASH_NETPORTNET
+- scripts/config -e IP_SET_HASH_NET
+- scripts/config -e IP_SET_HASH_NETNET
+- scripts/config -e IP_SET_HASH_NETPORT
+- scripts/config -e IP_SET_HASH_NETIFACE
+- scripts/config -e IP_SET_LIST_SET
+- scripts/config -e BOOT_PRINTK_DELAY
+- scripts/config -e DRM_VC4
+- scripts/config -e I2C_BCM2835
+- yes '' | make ARCH=arm oldconfig
+build-commands:
+- make $MAKEFLAGS ARCH=arm zImage dtbs
+- make $MAKEFLAGS modules
+install-commands:
+- mkdir -p "$DESTDIR"/boot/overlays
+- cp arch/arm/boot/zImage "$DESTDIR"/boot/zImage
+- cp arch/arm/boot/dts/*.dtb "$DESTDIR"/boot/.
+- make INSTALL_MOD_PATH="$DESTDIR" modules_install
+- cp arch/arm/boot/dts/overlays/*.dtb* "$DESTDIR"/boot/overlays/
+- cp arch/arm/boot/dts/overlays/README "$DESTDIR"/boot/overlays/
+- scripts/mkknlimg arch/arm/boot/zImage "$DESTDIR"/boot/kernel7.img
+system-integration:
+ linux-rpi2-misc:
+ 00-depmod:
+ - depmod -a $(cd /lib/modules; ls | head -n 1)
diff --git a/strata/bsp-rpi2/u-boot@rpi2.morph b/strata/bsp-rpi2/u-boot@rpi2.morph
new file mode 100644
index 0000000..a674c76
--- /dev/null
+++ b/strata/bsp-rpi2/u-boot@rpi2.morph
@@ -0,0 +1,11 @@
+name: u-boot@rpi2
+kind: chunk
+configure-commands:
+- make ARCH=arm rpi_2_config
+build-commands:
+- make ARCH=arm CROSS_COMPILE=/usr/bin/
+- make ARCH=arm CROSS_COMPILE=/usr/bin/ tools
+install-commands:
+- mkdir -p "$DESTDIR$PREFIX/bin"
+- mkdir -p "$DESTDIR/boot"
+- cp u-boot.bin "$DESTDIR/boot/kernel.img"
diff --git a/systems/build-system-armv7lhf-rpi2.morph b/systems/build-system-armv7lhf-rpi2.morph
new file mode 100644
index 0000000..c83e3d0
--- /dev/null
+++ b/systems/build-system-armv7lhf-rpi2.morph
@@ -0,0 +1,56 @@
+name: build-system-armv7lhf-rpi2
+kind: system
+description: The system that should be used for building all other Baserock systems
+ for ARMv7 little-endian hard-float NVIDIA Jetson TK1 computers.
+arch: armv7lhf
+strata:
+- name: build-essential
+ morph: strata/build-essential.morph
+- name: core
+ morph: strata/core.morph
+- name: foundation
+ morph: strata/foundation.morph
+- name: python2-core
+ morph: strata/python2-core.morph
+- name: bsp-rpi2
+ morph: strata/bsp-rpi2.morph
+- name: tools
+ morph: strata/tools.morph
+- name: python-cliapp
+ morph: strata/python-cliapp.morph
+- name: python-pygobject
+ morph: strata/python-pygobject.morph
+- name: python-wsgi
+ morph: strata/python-wsgi.morph
+- name: morph-utils
+ morph: strata/morph-utils.morph
+- name: nfs
+ morph: strata/nfs.morph
+- name: python-common
+ morph: strata/python-common.morph
+- name: ansible
+ morph: strata/ansible.morph
+- name: cloudinit-support
+ morph: strata/cloudinit-support.morph
+- name: openstack-common
+ morph: strata/openstack-common.morph
+- name: openstack-clients
+ morph: strata/openstack-clients.morph
+- name: devtools
+ morph: strata/devtools.morph
+- name: libsoup-common
+ morph: strata/libsoup-common.morph
+- name: glib-common
+ morph: strata/glib-common.morph
+- name: ostree-core
+ morph: strata/ostree-core.morph
+configuration-extensions:
+- extensions/set-hostname
+- extensions/add-config-files
+- extensions/nfsboot
+- extensions/install-files
+- extensions/distbuild
+- extensions/fstab
+- extensions/mason
+- extensions/cloud-init
+- extensions/install-essential-files
diff --git a/systems/genivi-baseline-system-armv7lhf-rpi2.morph b/systems/genivi-baseline-system-armv7lhf-rpi2.morph
new file mode 100644
index 0000000..8f96323
--- /dev/null
+++ b/systems/genivi-baseline-system-armv7lhf-rpi2.morph
@@ -0,0 +1,49 @@
+name: genivi-baseline-system-armv7lhf-rpi2
+kind: system
+description: A GENIVI baseline system for a Raspberry PI 2
+arch: armv7lhf
+strata:
+- name: build-essential
+ morph: strata/build-essential.morph
+- name: core
+ morph: strata/core.morph
+- name: foundation
+ morph: strata/foundation.morph
+- name: bsp-rpi2
+ morph: strata/bsp-rpi2.morph
+- name: connectivity
+ morph: strata/connectivity.morph
+- name: connman-common
+ morph: strata/connman-common.morph
+- name: audio-bluetooth
+ morph: strata/audio-bluetooth.morph
+- name: glib-common
+ morph: strata/glib-common.morph
+- name: libdrm-common
+ morph: strata/libdrm-common.morph
+- name: multimedia-common
+ morph: strata/multimedia-common.morph
+- name: multimedia-gstreamer
+ morph: strata/multimedia-gstreamer.morph
+- name: genivi
+ morph: strata/genivi.morph
+- name: wayland-generic
+ morph: strata/wayland-generic.morph
+- name: graphics-common
+ morph: strata/graphics-common.morph
+- name: input-common
+ morph: strata/input-common.morph
+- name: mesa-common
+ morph: strata/mesa-common.morph
+- name: x-common
+ morph: strata/x-common.morph
+- name: weston-genivi
+ morph: strata/weston-genivi.morph
+configuration-extensions:
+- extensions/set-hostname
+- extensions/add-config-files
+- extensions/nfsboot
+- extensions/install-files
+- extensions/strip-gplv3
+- extensions/fstab
+- extensions/install-essential-files