diff options
author | Nicolas Dechesne <nicolas.dechesne@linaro.org> | 2017-02-24 15:02:13 +0100 |
---|---|---|
committer | Nicolas Dechesne <nicolas.dechesne@linaro.org> | 2017-02-27 16:09:43 +0100 |
commit | 4613258ab0e744b4a92d65619fc77e8614d48a2b (patch) | |
tree | 8f91c3071ab872fd832d7ce647d5bb0c5198aecb /lt-qcom-bootloader | |
parent | f5f9c7ce5336417f9059f85bcdbc941be855e279 (diff) |
lt-qcom*: major cleanup in all the jobs
* removed all 'tracking' jobs, they are not used well for now, we will recreate
them in a better and more useful way later, when testing is in place
* rename all images job to start with lt-qcom-debian-images-xxx
* rename all bootloader jobs to start with lt-qcom-bootloader
* moved all helper scripts in common folder, they will be factorized later
Change-Id: I92f5bfae9dd880ec3fca3e095473fbbf82c926a7
Signed-off-by: Nicolas Dechesne <nicolas.dechesne@linaro.org>
Diffstat (limited to 'lt-qcom-bootloader')
-rw-r--r-- | lt-qcom-bootloader/dragonboard410c/builders.sh | 132 | ||||
-rw-r--r-- | lt-qcom-bootloader/dragonboard820c/build-info.txt | 5 | ||||
-rw-r--r-- | lt-qcom-bootloader/dragonboard820c/builders.sh | 98 |
3 files changed, 235 insertions, 0 deletions
diff --git a/lt-qcom-bootloader/dragonboard410c/builders.sh b/lt-qcom-bootloader/dragonboard410c/builders.sh new file mode 100644 index 0000000000..cbe7f9b43a --- /dev/null +++ b/lt-qcom-bootloader/dragonboard410c/builders.sh @@ -0,0 +1,132 @@ +#!/bin/bash +set -ex + +sudo apt-get update +sudo apt-get install -y zip gdisk + +# download the firmware packages +wget -q ${QCOM_LINUX_FIRMWARE} +wget -q ${QCOM_ANDROID_FIRMWARE} +wget -q ${QCOM_ANDROID_FIRMWARE_OLD} +echo "${QCOM_LINUX_FIRMWARE_MD5} $(basename ${QCOM_LINUX_FIRMWARE})" > MD5 +echo "${QCOM_ANDROID_FIRMWARE_MD5} $(basename ${QCOM_ANDROID_FIRMWARE})" >> MD5 +echo "${QCOM_ANDROID_FIRMWARE_OLD_MD5} $(basename ${QCOM_ANDROID_FIRMWARE_OLD})" >> MD5 +md5sum -c MD5 + +unzip -j -d bootloaders-android $(basename ${QCOM_ANDROID_FIRMWARE}) +unzip -j -d bootloaders-android-old $(basename ${QCOM_ANDROID_FIRMWARE_OLD}) +unzip -j -d bootloaders-linux $(basename ${QCOM_LINUX_FIRMWARE}) "*/bootloaders-linux/*" + +# Get the Android compiler +git clone ${LK_GCC_GIT} --depth 1 -b ${LK_GCC_REL} android-gcc + +# get the signing tools +git clone --depth 1 https://git.linaro.org/landing-teams/working/qualcomm/signlk.git + +# Build all needed flavors of LK +git clone --depth 1 ${LK_GIT_LINARO} -b ${LK_GIT_REL_SD_RESCUE} lk_sdrescue +git clone --depth 1 ${LK_GIT_LINARO} -b ${LK_GIT_REL_SD_BOOT} lk_sd_boot +git clone --depth 1 ${LK_GIT_LINARO} -b ${LK_GIT_REL_EMMC_BOOT} lk_emmc_boot + +for lk in lk_sdrescue lk_sd_boot lk_emmc_boot; do + echo "Building LK in : $lk" + cd $lk + git log -1 + make -j4 msm8916 EMMC_BOOT=1 TOOLCHAIN_PREFIX=${WORKSPACE}/android-gcc/bin/arm-eabi- + mv build-msm8916/emmc_appsboot.mbn build-msm8916/emmc_appsboot_unsigned.mbn + ../signlk/signlk.sh -i=./build-msm8916/emmc_appsboot_unsigned.mbn -o=./build-msm8916/emmc_appsboot.mbn -d + cd - +done + +mkdir -p out/dragonboard410c_sdcard_rescue \ + out/dragonboard410c_bootloader_sd_linux \ + out/dragonboard410c_bootloader_emmc_linux \ + out/dragonboard410c_bootloader_emmc_android + +# get license.txt file +wget https://git.linaro.org/landing-teams/working/qualcomm/lt-docs.git/blob_plain/HEAD:/license/license.txt + +# bootloader_emmc_linux +cp -a license.txt \ + dragonboard410c/linux/flashall \ + lk_emmc_boot/build-msm8916/emmc_appsboot.mbn \ + bootloaders-linux/{NON-HLOS.bin,rpm.mbn,sbl1.mbn,tz.mbn,tz-psci.mbn,hyp.mbn} \ + out/dragonboard410c_bootloader_emmc_linux + +# no need to set the eMMC size here. Fastboot will patch the last partition and grow it until last sector +sudo ./mksdcard -x -g -o gpt.img -p dragonboard410c/linux/partitions.txt +sudo sgdisk -bgpt.bin gpt.img +./mkgpt -d -i gpt.bin -o out/dragonboard410c_bootloader_emmc_linux/gpt_both0.bin + +# bootloader_emmc_android +cp -a license.txt \ + dragonboard410c/android/flashall \ + dragonboard410c/android/emmc_appsboot.mbn \ + bootloaders-android-old/sbl1.mbn \ + bootloaders-android/{NON-HLOS.bin,rpm.mbn,tz.mbn,hyp.mbn} \ + out/dragonboard410c_bootloader_emmc_android + +# no need to set the eMMC size here. Fastboot will patch the last partition and grow it until last sector +sudo ./mksdcard -x -g -o gpt.img -p dragonboard410c/android/partitions.txt +sudo sgdisk -bgpt.bin gpt.img +./mkgpt -d -i gpt.bin -o out/dragonboard410c_bootloader_emmc_android/gpt_both0.bin + +# bootloader_sd_linux +cp -a license.txt \ + lk_sd_boot/build-msm8916/emmc_appsboot.mbn \ + bootloaders-linux/{NON-HLOS.bin,rpm.mbn,sbl1.mbn,tz.mbn,tz-psci.mbn,hyp.mbn} \ + out/dragonboard410c_bootloader_sd_linux + +# sdcard_rescue +cp -a license.txt out/dragonboard410c_sdcard_rescue +sudo ./mksdcard -x -p dragonboard410c/linux/sdrescue.txt \ + -o out/dragonboard410c_sdcard_rescue/db410c_sd_rescue.img \ + -i lk_sdrescue/build-msm8916/ \ + -i bootloaders-linux/ + +# Create MD5SUMS file +for i in dragonboard410c_sdcard_rescue dragonboard410c_bootloader_sd_linux \ + dragonboard410c_bootloader_emmc_linux dragonboard410c_bootloader_emmc_android; do + (cd out/$i && md5sum * > MD5SUMS.txt) +done + +# Final preparation of archives for publishing +mkdir out2 +zip -rj out2/dragonboard410c_sdcard_rescue-${BUILD_NUMBER}.zip out/dragonboard410c_sdcard_rescue +zip -rj out2/dragonboard410c_bootloader_emmc_linux-${BUILD_NUMBER}.zip out/dragonboard410c_bootloader_emmc_linux +zip -rj out2/dragonboard410c_bootloader_emmc_android-${BUILD_NUMBER}.zip out/dragonboard410c_bootloader_emmc_android +zip -rj out2/dragonboard410c_bootloader_sd_linux-${BUILD_NUMBER}.zip out/dragonboard410c_bootloader_sd_linux + +# Create MD5SUMS file +(cd out2 && md5sum * > MD5SUMS.txt) + +# Build information +cat > out2/HEADER.textile << EOF + +h4. Bootloaders for Dragonboard 410c + +This page provides the bootloaders packages for the Dragonboard 410c. There are several packages: +* *sdcard_rescue* : an SD card image that can be used to boot from SD card, and rescue a board when the onboard eMMC is empty or corrupted +* *bootloader_emmc_linux* : includes the bootloaders and partition table (GPT) used when booting Linux images from onboard eMMC +* *bootloader_emmc_android* : includes the bootloaders and partition table (GPT) used when booting Android images from onboard eMMC +* *bootloader_sd_linux* : includes the bootloaders and partition table (GPT) used when booting Linux images from SD card + +Build description: +* Build URL: "$BUILD_URL":$BUILD_URL +* Proprietary bootloaders can be found on "Qualcomm Developer Network":https://developer.qualcomm.com/hardware/dragonboard-410c/tools +* Android proprietary bootloaders package: $(basename ${QCOM_ANDROID_FIRMWARE}) +* Linux proprietary bootloaders package: $(basename ${QCOM_LINUX_FIRMWARE}) +* Little Kernel (LK) source code: +** "SD rescue boot":$LK_GIT_LINARO/shortlog/refs/heads/$LK_GIT_REL_SD_RESCUE +** "SD Linux boot":$LK_GIT_LINARO/shortlog/refs/heads/$LK_GIT_REL_SD_BOOT +** "eMMC Linux boot":$LK_GIT_LINARO/shortlog/refs/heads/$LK_GIT_REL_EMMC_BOOT +* Tools version: "$GIT_COMMIT":$GIT_URL/commit/$GIT_COMMIT +EOF + +# Publish +test -d ${HOME}/bin || mkdir ${HOME}/bin +wget -q https://git.linaro.org/ci/publishing-api.git/blob_plain/HEAD:/linaro-cp.py -O ${HOME}/bin/linaro-cp.py +time python ${HOME}/bin/linaro-cp.py \ + --server ${PUBLISH_SERVER} \ + --link-latest \ + out2 snapshots/dragonboard410c/linaro/rescue/${BUILD_NUMBER} diff --git a/lt-qcom-bootloader/dragonboard820c/build-info.txt b/lt-qcom-bootloader/dragonboard820c/build-info.txt new file mode 100644 index 0000000000..7e5e8b2d40 --- /dev/null +++ b/lt-qcom-bootloader/dragonboard820c/build-info.txt @@ -0,0 +1,5 @@ +Format-Version: 0.5 + +Files-Pattern: * +License-Type: protected +Auth-Groups: employees, qualcomm-lcb diff --git a/lt-qcom-bootloader/dragonboard820c/builders.sh b/lt-qcom-bootloader/dragonboard820c/builders.sh new file mode 100644 index 0000000000..96d758dcb2 --- /dev/null +++ b/lt-qcom-bootloader/dragonboard820c/builders.sh @@ -0,0 +1,98 @@ +#!/bin/bash + +sudo apt-get update +sudo apt-get install -y zip gdisk + +set -ex + +# download the firmware packages +wget -q ${QCOM_LINUX_FIRMWARE} +echo "${QCOM_LINUX_FIRMWARE_MD5} $(basename ${QCOM_LINUX_FIRMWARE})" > MD5 +md5sum -c MD5 + +unzip -j -d bootloaders-linux $(basename ${QCOM_LINUX_FIRMWARE}) "*/bootloaders-linux/*" +unzip -j -d bootloaders-sdboot $(basename ${QCOM_LINUX_FIRMWARE}) "*/bootloaders-sdboot/*" + +# Get the Android compiler +git clone ${LK_GCC_GIT} --depth 1 -b ${LK_GCC_REL} android-gcc + +# get the signing tools +git clone --depth 1 https://git.linaro.org/landing-teams/working/qualcomm/signlk.git + +# Build all needed flavors of LK +git clone --depth 1 ${LK_GIT_LINARO} -b ${LK_GIT_REL_SD_RESCUE} lk_sdrescue +git clone --depth 1 ${LK_GIT_LINARO} -b ${LK_GIT_REL_UFS_BOOT} lk_ufs_boot + +for lk in lk_sdrescue lk_ufs_boot; do + echo "Building LK in : $lk" + cd $lk + git log -1 + make -j4 msm8996 EMMC_BOOT=1 VERIFIED_BOOT=1 TOOLCHAIN_PREFIX=${WORKSPACE}/android-gcc/bin/arm-eabi- + mv build-msm8996/emmc_appsboot.mbn build-msm8996/emmc_appsboot_unsigned.mbn + ../signlk/signlk.sh -i=./build-msm8996/emmc_appsboot_unsigned.mbn -o=./build-msm8996/emmc_appsboot.mbn -d + cd - +done + +mkdir -p out/dragonboard820c_sdcard_rescue \ + out/dragonboard820c_bootloader_ufs_linux + +# get license.txt file +wget https://git.linaro.org/landing-teams/working/qualcomm/lt-docs.git/blob_plain/HEAD:/license/license.txt + +# bootloader_ufs_linux +cp -a license.txt \ + dragonboard820c/linux/flashall \ + lk_ufs_boot/build-msm8996/emmc_appsboot.mbn \ + bootloaders-linux/gpt_both*.bin \ + bootloaders-linux/{cmnlib64.mbn,cmnlib.mbn,devcfg.mbn,hyp.mbn,keymaster.mbn,pmic.elf,rpm.mbn,sbc_1.0.bin,tz.mbn,xbl.elf} \ + out/dragonboard820c_bootloader_ufs_linux + +# sdcard_rescue +cp -a license.txt out/dragonboard820c_sdcard_rescue +sudo ./mksdcard -x -p dragonboard820c/sdrescue.txt \ + -o out/dragonboard820c_sdcard_rescue/db820c_sd_rescue.img \ + -i lk_sdrescue/build-msm8996/ \ + -i bootloaders-sdboot/ \ + -i bootloaders-linux/ + +# Create MD5SUMS file +for i in out/dragonboard820c_*; do + (cd $i && md5sum * > MD5SUMS.txt) +done + +# Final preparation of archives for publishing +mkdir out2 +zip -rj out2/dragonboard820c_sdcard_rescue-${BUILD_NUMBER}.zip out/dragonboard820c_sdcard_rescue +zip -rj out2/dragonboard820c_bootloader_ufs_linux-${BUILD_NUMBER}.zip out/dragonboard820c_bootloader_ufs_linux + +# Create MD5SUMS file +(cd out2 && md5sum * > MD5SUMS.txt) + +# Build information +cat > out2/HEADER.textile << EOF + +h4. Bootloaders for Dragonboard 820c + +This page provides the bootloaders packages for the Dragonboard 820c. There are several packages: +* *sdcard_rescue* : an SD card image that can be used to boot from SD card, and rescue a board when the onboard eMMC is empty or corrupted +* *bootloader_ufs_linux* : includes the bootloaders and partition table (GPT) used when booting Linux images from onboard eMMC + +Build description: +* Build URL: "$BUILD_URL":$BUILD_URL +* Proprietary bootloaders are not published yet, and not available widely +* Linux proprietary bootloaders package: $(basename ${QCOM_LINUX_FIRMWARE}) +* Little Kernel (LK) source code: +** "SD rescue boot":$LK_GIT_LINARO/shortlog/refs/heads/$LK_GIT_REL_SD_RESCUE +** "UFS Linux boot":$LK_GIT_LINARO/shortlog/refs/heads/$LK_GIT_REL_UFS_BOOT +* Tools version: "$GIT_COMMIT":$GIT_URL/commit/$GIT_COMMIT +EOF + +# Publish +test -d ${HOME}/bin || mkdir ${HOME}/bin +wget -q https://git.linaro.org/ci/publishing-api.git/blob_plain/HEAD:/linaro-cp.py -O ${HOME}/bin/linaro-cp.py +wget -q https://git.linaro.org/ci/job/configs.git/blob_plain/HEAD:/lt-qcom-bootloader/dragonboard820c/build-info.txt -O BUILD-INFO.txt +time python ${HOME}/bin/linaro-cp.py \ + --server ${PUBLISH_SERVER} \ + --build-info BUILD-INFO.txt \ + --link-latest \ + out2 snapshots/dragonboard820c/linaro/rescue/${BUILD_NUMBER} |