summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--grapeboard_support_lsdk-1712.patch326
1 files changed, 326 insertions, 0 deletions
diff --git a/grapeboard_support_lsdk-1712.patch b/grapeboard_support_lsdk-1712.patch
new file mode 100644
index 0000000..c1c27ed
--- /dev/null
+++ b/grapeboard_support_lsdk-1712.patch
@@ -0,0 +1,326 @@
+diff --git a/configs/build_lsdk.cfg b/configs/build_lsdk.cfg
+index a3cf0ed..671ff60 100644
+--- a/configs/build_lsdk.cfg
++++ b/configs/build_lsdk.cfg
+@@ -7,10 +7,10 @@ GIT_REPOSITORY_URL="https://github.com/qoriq-open-source"
+ lsdk_version=1712
+
+ # set default components to be built automatically
+-CONFIG_BUILD_RCW=y
+-CONFIG_BUILD_UBOOT=y
+-CONFIG_BUILD_UEFI=y
+-CONFIG_BUILD_PPA=y
++CONFIG_BUILD_RCW=n
++CONFIG_BUILD_UBOOT=n
++CONFIG_BUILD_UEFI=n
++CONFIG_BUILD_PPA=n
+ CONFIG_BUILD_LINUX=y
+ CONFIG_BUILD_RESTOOL=y
+ CONFIG_BUILD_FLIB=y
+@@ -37,16 +37,18 @@ CONFIG_BUILD_CRCONF=y
+ CONFIG_BUILD_EDGESCALE_EDS=n
+ CONFIG_BUILD_EDS_KUBELET=n
+ CONFIG_BUILD_EDS_PUPPET=n
++CONFIG_BUILD_RTL8723BU=y
+
+ # default machines list
+-CONFIG_MACHINE_LS1012ARDB=y
+-CONFIG_MACHINE_LS1012AFRDM=y
+-CONFIG_MACHINE_LS1021ATWR=y
+-CONFIG_MACHINE_LS1043ARDB=y
+-CONFIG_MACHINE_LS1046ARDB=y
+-CONFIG_MACHINE_LS1088ARDB=y
+-CONFIG_MACHINE_LS2088ARDB=y
++CONFIG_MACHINE_LS1012ARDB=n
++CONFIG_MACHINE_LS1012AFRDM=n
++CONFIG_MACHINE_LS1021ATWR=n
++CONFIG_MACHINE_LS1043ARDB=n
++CONFIG_MACHINE_LS1046ARDB=n
++CONFIG_MACHINE_LS1088ARDB=n
++CONFIG_MACHINE_LS2088ARDB=n
+ CONFIG_MACHINE_LA1575ARDB=n
++CONFIG_MACHINE_GRAPEBOARD=y
+
+ # default build option
+ BUILD_GUESTRFS=y
+@@ -69,7 +71,7 @@ fbdockerimgversion=16.04
+
+ # component repository list
+ firmware_repo_list="u-boot rcw rcw-bin qoriq-uefi-binary qoriq-fm-ucode mc-utils qoriq-mc-binary ppa-generic qoriq-qe-ucode qoriq-firmware-cortina qoriq-engine-pfe-bin"
+-linux_repo_list="linux cryptodev-linux lttng-modules"
++linux_repo_list="linux cryptodev-linux lttng-modules rtl8723bu"
+ apps_repo_list="restool flib fmlib fmc openssl odp ofp dpdk ovs-dpdk gpp-aioptool cst aiopsl ptpd ceetm qbman_userspace eth-config crconf optee_os optee_client optee_test edgescale-eds eds-kubelet eds-puppet"
+
+ # default git tree and branch
+@@ -78,8 +80,8 @@ default_linux_tree=linux
+
+ # linux config list
+ BUILD_DUAL_KERNEL=y
+-linux_config_list_arm64="defconfig lsdk.config"
+-linux_config_list_arm32v8="multi_v7_defconfig multi_v7_lpae.config multi_v8.config lsdk.config"
++linux_config_list_arm64="defconfig lsdk.config grapeboard_wireless.config"
++linux_config_list_arm32v8="multi_v7_defconfig multi_v7_lpae.config multi_v8.config lsdk.config grapeboard_wireless.config"
+ linux_config_list_arm32v7="multi_v7_defconfig multi_v7_lpae.config lsdk.config"
+
+ # uefi machine list
+@@ -107,11 +109,15 @@ qoriq_engine_pfe_bin_url=https://github.com/nxp/qoriq-engine-pfe-bin.git
+ qoriq_engine_pfe_bin_tag=LSDK-17.12
+
+ # linux git tree
+-linux_tag=LSDK-17.12-V4.9
++linux_url=http://git.scalys.com/lsdk/linux
++linux_branch=grapeboard-proto
++# url will be changed on final release
+ secondary_linux_tag=LSDK-17.12-V4.4
+ cryptodev_linux_tag=LSDK-17.12
+ lttng_modules_url=git://git.lttng.org/lttng-modules.git
+ lttng_modules_tag=v2.10.2
++rtl8723bu_url=https://github.com/lwfinger/rtl8723bu.git
++rtl8723bu_branch=master
+
+ # apps git tree
+ restool_tag=LSDK-17.12
+diff --git a/manifest/grapeboard.manifest b/manifest/grapeboard.manifest
+new file mode 100755
+index 0000000..a5d9bcd
+--- /dev/null
++++ b/manifest/grapeboard.manifest
+@@ -0,0 +1,39 @@
++# [general]
++machine=grapeboard
++
++# [firmware images]
++rcw_qspi=null
++rcw_qspi_sec=null
++uboot_qspiboot=null
++uboot_qspiboot_sec=null
++secureboot_headers_qspi=null
++uefi_norboot=null
++uefi_sdboot=null
++uefi_env=null
++ppa=build/firmware/ppa/soc-ls1012/ppa.itb
++pfe_fw=build/firmware/engine-pfe-bin/ls1012a/u-boot/pfe_fw_sbl.itb
++pfe_kernel=build/firmware/engine-pfe-bin/ls1012a/slow_path/ppfe*.elf
++fman_ucode=null
++qe_firmware=null
++phy_firmware=null
++dpaa2_mc_fw=null
++dpaa2_mc_dpc=null
++dpaa2_mc_dpl=null
++rtl8723bu_fw=build/linux/linux/arm64/lib/firmware/rtl_bt/rtl8723b_fw.bin
++
++# [linux, dtb, rfs]
++kernel_img=build/linux/kernel/arm64/Image
++kernel_uimg=build/linux/kernel/arm64/uImage
++kernel_vmlinux=build/linux/kernel/arm32/vmlinux
++device_tree=build/linux/kernel/arm64/grapeboard.dtb
++ramdiskrfs=build/images/ramdisk_rootfs_arm64.ext4.gz.uboot
++kernelrfs_continuous=yes
++
++# [distro autoboot script]
++uboot_scr=null
++bootscript_dec=null
++
++distroboot=null
++
++# [secure boot scripts in cst]
++qspi_script=scripts/platforms/ls104x_1012_qspi.sh
+diff --git a/packages/apt-packages/additional_packages_list_full_grapeboard b/packages/apt-packages/additional_packages_list_full_grapeboard
+new file mode 100644
+index 0000000..e98cd53
+--- /dev/null
++++ b/packages/apt-packages/additional_packages_list_full_grapeboard
+@@ -0,0 +1,22 @@
++# full additional package list
++
++additional_packages_list="apt git gcc vim ethtool wget ftp make makedev
++ build-essential gdb u-boot-tools device-tree-compiler python python-dev
++ zip libxml2-dev libsensors4-dev libssl-dev libedit-dev liblzma-dev tree
++ binutils-dev autoconf automake dh-autoreconf libnuma-dev libpcap-dev lxc
++ gdb bc qemu-kvm libvirt-bin virt-manager bridge-utils libtool lm-sensors
++ libncurses5-dev bison libelf-dev curl docker.io libcunit1-dev python-pip
++ iperf netperf flex autotools-dev openssh-server openssh-client hugepages
++ tcpdump vlan ifenslave linux-tools-generic blktrace tftp-hpa tftpd-hpa
++ strace debootstrap sysfsutils cpufrequtils iozone3 fio mdadm vsftpd telnet
++ ipsec-tools lmbench sysstat in.telnetd watchdog glibc-locale rdate lxd
++ initramfs-tools libtclap-dev i2c-tools mtd-utils dosfstools lttng-tools
++ net-tools xterm can-utils bluez iw wpasupplicant"
++
++
++# install extrinsic package needed by user but unavailable from official ubuntu
++extrinsic_packages_list=""
++
++
++# setup source packages depended by some custom components.
++source_packages_list="iproute2"
+diff --git a/packages/installer/linux_arm32.its b/packages/installer/linux_arm32.its
+index e85769c..7e88acd 100644
+--- a/packages/installer/linux_arm32.its
++++ b/packages/installer/linux_arm32.its
+@@ -88,6 +88,15 @@
+ compression = "none";
+ load = <0x9ffe0000>;
+ };
++
++ grapeboard-dtb {
++ description = "Flattened Device Tree blob";
++ data = /incbin/("../../build/linux/kernel/arm32/grapeboard.dtb");
++ type = "flat_dt";
++ arch = "arm";
++ compression = "none";
++ load = <0x9ffe0000>;
++ };
+ };
+
+ configurations {
+@@ -125,5 +134,12 @@
+ fdt = "ls1012afrdm-dtb";
+ ramdisk = "initrd-installer";
+ };
++
++ grapeboard {
++ description = "Boot Linux kernel";
++ kernel = "kernel-v8";
++ fdt = "grapeboard-dtb";
++ ramdisk = "initrd-installer";
++ };
+ };
+ };
+diff --git a/packages/installer/linux_arm64.its b/packages/installer/linux_arm64.its
+index 5b5d507..dc19b1a 100644
+--- a/packages/installer/linux_arm64.its
++++ b/packages/installer/linux_arm64.its
+@@ -129,6 +129,19 @@
+ algo = "crc32";
+ };
+ };
++
++ grapeboard-dtb {
++ description = "grapeboard-dtb";
++ data = /incbin/("../../build/linux/kernel/arm64/grapeboard.dtb");
++ type = "flat_dt";
++ arch = "arm64";
++ os = "linux";
++ compression = "none";
++ load = <0x90000000>;
++ hash@1 {
++ algo = "crc32";
++ };
++ };
+ };
+
+ configurations {
+@@ -181,5 +194,12 @@
+ fdt = "ls1012afrdm-dtb";
+ };
+
++ grapeboard {
++ description = "config for grapeboard";
++ kernel = "kernel";
++ ramdisk = "initrd-installer";
++ fdt = "grapeboard-dtb";
++ };
++
+ };
+ };
+diff --git a/packages/linux/Makefile b/packages/linux/Makefile
+index 00067e1..ff65d31 100644
+--- a/packages/linux/Makefile
++++ b/packages/linux/Makefile
+@@ -10,7 +10,9 @@ include $(TOPDIR)/include/repo.mk
+
+ LINUX_REPO_LIST = $(KERNEL_TREE) cryptodev-linux
+
+-all: setup-repo build-linux
++
++
++all: setup-repo build-linux rtl8723bu
+
+ setup-repo:
+ @$(call fetch-git-tree,$(KERNEL_TREE))
+@@ -44,11 +46,12 @@ ifeq ($(CONFIG_BUILD_LINUX), y)
+ freescale/fsl-ls1046a-rdb-sdk.dtb freescale/fsl-ls1012a-rdb.dtb \
+ freescale/fsl-ls1012a-frdm.dtb -C $(KERNEL_PATH) O=$$opdir; fi && \
+ if [ $(DESTARCH) = arm64 ]; then cp $$opdir/arch/$$locarch/boot/Image* \
+- $(TOPDIR)/build/linux/$(KERNEL_TREE)/$(DESTARCH); fi && \
++ $(TOPDIR)/build/linux/$(KERNEL_TREE)/$(DESTARCH) && \
++ mkimage -A $(DESTARCH) -O linux -T kernel -C gzip -a 0x80080000 -e 0x80080000 -n Linux -d $(TOPDIR)/build/linux/$(KERNEL_TREE)/$(DESTARCH)/Image.gz $(TOPDIR)/build/linux/$(KERNEL_TREE)/$(DESTARCH)/uImage; fi && \
+ if [ $(DESTARCH) = arm32 ]; then cp $$opdir/arch/$$locarch/boot/uImage \
+ $(TOPDIR)/build/linux/$(KERNEL_TREE)/$(DESTARCH)/uImage.$$extname; \
+ cp $$opdir/arch/$$locarch/boot/zImage $(TOPDIR)/build/linux/$(KERNEL_TREE)/$(DESTARCH)/zImage.$$extname; fi && \
+- ls $$opdir/arch/$$locarch/boot/dts/$$dtbstr | grep -E 'rdb|frdm|twr|qds' | xargs -I {} cp {} \
++ ls $$opdir/arch/$$locarch/boot/dts/$$dtbstr | grep -E 'rdb|frdm|twr|qds|grapeboard' | xargs -I {} cp {} \
+ $(TOPDIR)/build/linux/$(KERNEL_TREE)/$(DESTARCH) && \
+ if [ $(DESTARCH) = arm32 ]; then rm -f $(TOPDIR)/build/linux/$(KERNEL_TREE)/arm32/fsl-ls2*.dtb; fi && \
+ cd $(TOPDIR)/build/linux/$(KERNEL_TREE)/$(DESTARCH) && if [ -f fsl-ls1043a-rdb-sdk.dtb ]; then \
+@@ -99,11 +102,28 @@ ifeq ($(CONFIG_BUILD_LTTNG), y)
+ @if [ ! -d $(TOPDIR)/build/linux/kernel/$(DESTARCH) ]; then cd $(TOPDIR) && \
+ flex-builder -c linux -a $(DESTARCH) -f $(CONFIGLIST) && cd -; fi && \
+ cd lttng-modules && echo -e "\nBuilding LTTng modules ..." && \
+- $(MAKE) KERNELDIR=$(KERNEL_PATH) && \
++ $(MAKE) KERNELDIR=$(KERNEL_PATH) && \l
+ $(MAKE) KERNELDIR=$(KERNEL_PATH) modules_install && \
+ echo build LTTng modules done!
+ endif
+
++.PHONY: rtl8723bu
++rtl8723bu:
++ifeq ($(CONFIG_BUILD_RTL8723BU), y)
++ @$(call fetch-git-tree,rtl8723bu)
++ @$(call fetch-git-tree,$(KERNEL_TREE))
++ @if [ ! -d $(TOPDIR)/build/linux/kernel/$(DESTARCH) ]; then cd $(TOPDIR) && \
++ flex-builder -c linux -a $(DESTARCH) -f $(CONFIGLIST) && cd -; fi && \
++ echo -e "\nBuilding RTL8723BU module ..." && \
++ sed -i 's/EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE/#EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE/g' rtl8723bu/Makefile && \
++ cd rtl8723bu && \
++ curbrch=`cd $(KERNEL_PATH) && git branch -v | grep '^*' | cut -d' ' -f2` && \
++ $(MAKE) KSRC=$(TOPDIR)/build/linux/$(KERNEL_TREE)/$(DESTARCH)/output/$$curbrch && \
++ $(MAKE) -C $(TOPDIR)/build/linux/$(KERNEL_TREE)/$(DESTARCH)/output/$$curbrch M=$(TOPDIR)/packages/linux/rtl8723bu modules_install && \
++ install rtl8723b_fw.bin -D $(TOPDIR)/build/linux/$(KERNEL_TREE)/$(DESTARCH)/lib/firmware/rtl_bt/rtl8723b_fw.bin && \
++ echo build and installed RTL8723BU module+firmware done!
++endif
++
+
+ repo_fetch:
+ @echo -e "\nfetch linux repositories ..."
+diff --git a/tools/flex-builder b/tools/flex-builder
+index 5a70197..6d2b25c 100755
+--- a/tools/flex-builder
++++ b/tools/flex-builder
+@@ -805,7 +805,7 @@ merge_components() {
+ fi
+
+ #install PFE firmware to $RFSDIR/lib/firmware
+- if [ $CONFIG_MACHINE_LS1012ARDB = y -o $CONFIG_MACHINE_LS1012AFRDM = y ]; then
++ if [ $CONFIG_MACHINE_LS1012ARDB = y -o $CONFIG_MACHINE_LS1012AFRDM = y -o $CONFIG_MACHINE_GRAPEBOARD = y ]; then
+ if [ ! -f $TOPDIR/build/firmware/qoriq-engine-pfe-bin/ls1012a/slow_path/ppfe_class_ls1012a.elf ]; then
+ flex-builder -c qoriq-engine-pfe-bin
+ fi
+@@ -816,6 +816,27 @@ merge_components() {
+ tar cvzf $TOPDIR/build/images/linux-lib-firmware.tgz firmware
+ cd $TOPDIR
+ fi
++
++ #install RTL8723BU firmware to $RFSDIR/lib/firmware/
++ if [ $CONFIG_MACHINE_GRAPEBOARD = y ]; then
++ if [ ! -f $TOPDIR/build/linux/linux/arm64/lib/firmware/rtl_bt/rtl8723b_fw.bin ]; then
++ flex-builder -c linux -a arm64 -m grapeboard
++ fi
++ sudo mkdir -p $RFSDIR/lib/firmware/rtl_bt
++ . $TOPDIR/manifest/grapeboard.manifest
++ sudo cp -f $TOPDIR/$rtl8723bu_fw $RFSDIR/lib/firmware/rtl_bt/
++ fi
++
++
++ #install kernel, and dtb to $RFSDIR/boot/
++ if [ $CONFIG_MACHINE_GRAPEBOARD = y ]; then
++ if [ ! -f $TOPDIR/build/linux/kernel/$DESTARCH/grapeboard.dtb -o ! -f $TOPDIR/build/linux/kernel/$DESTARCH/uImage ]; then
++ flex-builder -c linux -a arm64 -m grapeboard
++ fi
++ sudo mkdir -p $RFSDIR/boot/
++ sudo cp -f $TOPDIR/build/linux/kernel/$DESTARCH/uImage $RFSDIR/boot/
++ sudo cp -f $TOPDIR/build/linux/kernel/$DESTARCH/grapeboard.dtb $RFSDIR/boot/
++ fi
+
+ if [ -f $TOPDIR/build/linux/kernel/$DESTARCH/perf ]; then
+ sudo cp -f $TOPDIR/build/linux/kernel/$DESTARCH/perf $RFSDIR/usr/bin