mirror of
https://github.com/commaai/agnos-builder.git
synced 2026-07-11 01:32:09 +08:00
XBL + ABL updates (#102)
* new abl + xbl * fix up weston init * bump fw * update submodules * add devcfg and aop images * update submodule * factory reset is in the ABL now! * bump kernel and abl * revert for now * update fw --------- Co-authored-by: Robbe Derks <robbe.derks@gmail.com>
This commit is contained in:
+1
-1
Submodule agnos-firmware updated: f4c450d90e...cc4fe9ed80
+1
-1
Submodule agnos-kernel-sdm845 updated: fe3db27e13...2b4c01261e
+1
-1
@@ -45,7 +45,7 @@ cp $DIR/agnos-kernel-sdm845/out/arch/arm64/boot/Image.gz-dtb .
|
||||
$TOOLS/mkbootimg \
|
||||
--kernel Image.gz-dtb \
|
||||
--ramdisk /dev/null \
|
||||
--cmdline "console=ttyMSM0,115200n8 earlycon=msm_geni_serial,0xA84000 androidboot.hardware=qcom androidboot.console=ttyMSM0 video=DSI-1:1080x2160@60e mdss_mdp.panel=0:dsi:0:dsi_ss_ea8074_fhd_cmd_display ehci-hcd.park=3 lpm_levels.sleep_disabled=1 service_locator.enable=1 androidboot.selinux=permissive firmware_class.path=/lib/firmware/updates net.ifnames=0 dyndbg=\"\"" \
|
||||
--cmdline "console=ttyMSM0,115200n8 earlycon=msm_geni_serial,0xA84000 androidboot.hardware=qcom androidboot.console=ttyMSM0 video=DSI-1:1080x2160@60e ehci-hcd.park=3 lpm_levels.sleep_disabled=1 service_locator.enable=1 androidboot.selinux=permissive firmware_class.path=/lib/firmware/updates net.ifnames=0 dyndbg=\"\"" \
|
||||
--pagesize 4096 \
|
||||
--base 0x80000000 \
|
||||
--kernel_offset 0x8000 \
|
||||
|
||||
+1
-1
Submodule edk2_tici updated: 00971d64a7...249a31223f
@@ -12,7 +12,19 @@
|
||||
- [ ] factory reset
|
||||
- [ ] user-prompted reset
|
||||
- [ ] corrupt userdata
|
||||
- [ ] finish ABL reset
|
||||
- [ ] color calibration
|
||||
- [ ] clean setup
|
||||
- [ ] cameras
|
||||
- [ ] update works on warm boot
|
||||
|
||||
### ABL
|
||||
|
||||
- [ ] fastboot USB enumeration
|
||||
- [ ] system reset trigger works
|
||||
- [ ] boot time hasn't regressed (3.8s)
|
||||
|
||||
### XBL
|
||||
|
||||
- [ ] display init works in cold and hot temperatures
|
||||
- [ ] boot time hasn't regressed (2.4s)
|
||||
|
||||
@@ -37,6 +37,10 @@ XBL_HASH=$(cat $OTA_JSON | jq -r ".[] | select(.name == \"xbl\") | .hash_raw")
|
||||
echo "Found xbl hash: $XBL_HASH"
|
||||
XBL_CONFIG_HASH=$(cat $OTA_JSON | jq -r ".[] | select(.name == \"xbl_config\") | .hash_raw")
|
||||
echo "Found xbl_config hash: $XBL_CONFIG_HASH"
|
||||
DEVCFG_HASH=$(cat $OTA_JSON | jq -r ".[] | select(.name == \"devcfg\") | .hash_raw")
|
||||
echo "Found devcfg hash: $DEVCFG_HASH"
|
||||
AOP_HASH=$(cat $OTA_JSON | jq -r ".[] | select(.name == \"aop\") | .hash_raw")
|
||||
echo "Found aop hash: $AOP_HASH"
|
||||
|
||||
# Generate token
|
||||
echo "Logging in..."
|
||||
@@ -51,6 +55,8 @@ BOOT_FILE_NAME="boot-$BOOT_HASH.img.xz"
|
||||
ABL_FILE_NAME="abl-$ABL_HASH.img.xz"
|
||||
XBL_FILE_NAME="xbl-$XBL_HASH.img.xz"
|
||||
XBL_CONFIG_FILE_NAME="xbl_config-$XBL_CONFIG_HASH.img.xz"
|
||||
DEVCFG_FILE_NAME="devcfg-$DEVCFG_HASH.img.xz"
|
||||
AOP_FILE_NAME="aop-$AOP_HASH.img.xz"
|
||||
|
||||
echo "Copying system to the cloud..."
|
||||
SYSTEM_CLOUD_PATH="https://$DATA_ACCOUNT.blob.core.windows.net/$DATA_CONTAINER/$SYSTEM_FILE_NAME"
|
||||
@@ -80,9 +86,19 @@ echo "Copying xbl_config to the cloud..."
|
||||
XBL_CONFIG_CLOUD_PATH="https://$DATA_ACCOUNT.blob.core.windows.net/$DATA_CONTAINER/$XBL_CONFIG_FILE_NAME"
|
||||
azcopy cp --overwrite=false $OTA_DIR/$XBL_CONFIG_FILE_NAME "$XBL_CONFIG_CLOUD_PATH?$DATA_SAS_TOKEN"
|
||||
|
||||
echo "Copying devcfg to the cloud..."
|
||||
DEVCFG_CLOUD_PATH="https://$DATA_ACCOUNT.blob.core.windows.net/$DATA_CONTAINER/$DEVCFG_FILE_NAME"
|
||||
azcopy cp --overwrite=false $OTA_DIR/$DEVCFG_FILE_NAME "$DEVCFG_CLOUD_PATH?$DATA_SAS_TOKEN"
|
||||
|
||||
echo "Copying aop to the cloud..."
|
||||
AOP_CLOUD_PATH="https://$DATA_ACCOUNT.blob.core.windows.net/$DATA_CONTAINER/$AOP_FILE_NAME"
|
||||
azcopy cp --overwrite=false $OTA_DIR/$AOP_FILE_NAME "$AOP_CLOUD_PATH?$DATA_SAS_TOKEN"
|
||||
|
||||
echo "Done!"
|
||||
echo " System path: $SYSTEM_CLOUD_PATH"
|
||||
echo " Boot path: $BOOT_CLOUD_PATH"
|
||||
echo " abl path: $ABL_CLOUD_PATH"
|
||||
echo " xbl path: $XBL_CLOUD_PATH"
|
||||
echo " xbl_config path: $XBL_CONFIG_CLOUD_PATH"
|
||||
echo " devcfg path: $DEVCFG_CLOUD_PATH"
|
||||
echo " aop path: $AOP_CLOUD_PATH"
|
||||
|
||||
+59
-1
@@ -15,6 +15,8 @@ BOOT_IMAGE="$OUTPUT_DIR/boot.img"
|
||||
ABL_IMAGE="$FIRMWARE_DIR/abl.bin"
|
||||
XBL_IMAGE="$FIRMWARE_DIR/xbl.bin"
|
||||
XBL_CONFIG_IMAGE="$FIRMWARE_DIR/xbl_config.bin"
|
||||
DEVCFG_IMAGE="$FIRMWARE_DIR/devcfg.bin"
|
||||
AOP_IMAGE="$FIRMWARE_DIR/aop.bin"
|
||||
|
||||
AGNOS_UPDATE_URL=${AGNOS_UPDATE_URL:-https://commadist.azureedge.net/agnosupdate}
|
||||
AGNOS_STAGING_UPDATE_URL=${AGNOS_STAGING_UPDATE_URL:-https://commadist.azureedge.net/agnosupdate-staging}
|
||||
@@ -53,12 +55,22 @@ echo "Hashing xbl_config..."
|
||||
XBL_CONFIG_HASH=$(sha256sum $XBL_CONFIG_IMAGE | cut -c 1-64)
|
||||
XBL_CONFIG_SIZE=$(wc -c < $XBL_CONFIG_IMAGE)
|
||||
|
||||
echo "Hashing devcfg..."
|
||||
DEVCFG_HASH=$(sha256sum $DEVCFG_IMAGE | cut -c 1-64)
|
||||
DEVCFG_SIZE=$(wc -c < $DEVCFG_IMAGE)
|
||||
|
||||
echo "Hashing aop..."
|
||||
AOP_HASH=$(sha256sum $AOP_IMAGE | cut -c 1-64)
|
||||
AOP_SIZE=$(wc -c < $AOP_IMAGE)
|
||||
|
||||
# Compressing
|
||||
SYSTEM_ARCHIVE=$OTA_OUTPUT_DIR/system-$SYSTEM_HASH.img.xz
|
||||
BOOT_ARCHIVE=$OTA_OUTPUT_DIR/boot-$BOOT_HASH.img.xz
|
||||
ABL_ARCHIVE=$OTA_OUTPUT_DIR/abl-$ABL_HASH.img.xz
|
||||
XBL_ARCHIVE=$OTA_OUTPUT_DIR/xbl-$XBL_HASH.img.xz
|
||||
XBL_CONFIG_ARCHIVE=$OTA_OUTPUT_DIR/xbl_config-$XBL_CONFIG_HASH.img.xz
|
||||
DEVCFG_ARCHIVE=$OTA_OUTPUT_DIR/devcfg-$DEVCFG_HASH.img.xz
|
||||
AOP_ARCHIVE=$OTA_OUTPUT_DIR/aop-$AOP_HASH.img.xz
|
||||
|
||||
echo "Compressing system..."
|
||||
xz -vc $SYSTEM_IMAGE > $SYSTEM_ARCHIVE
|
||||
@@ -70,6 +82,10 @@ echo "Compressing xbl..."
|
||||
xz -vc $XBL_IMAGE > $XBL_ARCHIVE
|
||||
echo "Compressing xbl_config..."
|
||||
xz -vc $XBL_CONFIG_IMAGE > $XBL_CONFIG_ARCHIVE
|
||||
echo "Compressing devcfg..."
|
||||
xz -vc $DEVCFG_IMAGE > $DEVCFG_ARCHIVE
|
||||
echo "Compressing aop..."
|
||||
xz -vc $AOP_IMAGE > $AOP_ARCHIVE
|
||||
echo "Creating system casync files"
|
||||
casync make --compression=xz --store $OTA_OUTPUT_DIR/system-$SYSTEM_HASH $OTA_OUTPUT_DIR/system-$SYSTEM_HASH.caibx $SYSTEM_IMAGE_RAW
|
||||
rm $SYSTEM_IMAGE_RAW
|
||||
@@ -118,6 +134,26 @@ tee $OUTPUT_JSON > /dev/null <<EOM
|
||||
"full_check": true,
|
||||
"has_ab": true
|
||||
},
|
||||
{
|
||||
"name": "devcfg",
|
||||
"url": "$AGNOS_UPDATE_URL/devcfg-$DEVCFG_HASH.img.xz",
|
||||
"hash": "$DEVCFG_HASH",
|
||||
"hash_raw": "$DEVCFG_HASH",
|
||||
"size": $DEVCFG_SIZE,
|
||||
"sparse": false,
|
||||
"full_check": true,
|
||||
"has_ab": true
|
||||
},
|
||||
{
|
||||
"name": "aop",
|
||||
"url": "$AGNOS_UPDATE_URL/aop-$AOP_HASH.img.xz",
|
||||
"hash": "$AOP_HASH",
|
||||
"hash_raw": "$AOP_HASH",
|
||||
"size": $AOP_SIZE,
|
||||
"sparse": false,
|
||||
"full_check": true,
|
||||
"has_ab": true
|
||||
},
|
||||
{
|
||||
"name": "system",
|
||||
"url": "$AGNOS_UPDATE_URL/system-$SYSTEM_HASH.img.xz",
|
||||
@@ -176,6 +212,26 @@ tee $OUTPUT_STAGING_JSON > /dev/null <<EOM
|
||||
"full_check": true,
|
||||
"has_ab": true
|
||||
},
|
||||
{
|
||||
"name": "devcfg",
|
||||
"url": "$AGNOS_STAGING_UPDATE_URL/devcfg-$DEVCFG_HASH.img.xz",
|
||||
"hash": "$DEVCFG_HASH",
|
||||
"hash_raw": "$DEVCFG_HASH",
|
||||
"size": $DEVCFG_SIZE,
|
||||
"sparse": false,
|
||||
"full_check": true,
|
||||
"has_ab": true
|
||||
},
|
||||
{
|
||||
"name": "aop",
|
||||
"url": "$AGNOS_STAGING_UPDATE_URL/aop-$AOP_HASH.img.xz",
|
||||
"hash": "$AOP_HASH",
|
||||
"hash_raw": "$AOP_HASH",
|
||||
"size": $AOP_SIZE,
|
||||
"sparse": false,
|
||||
"full_check": true,
|
||||
"has_ab": true
|
||||
},
|
||||
{
|
||||
"name": "system",
|
||||
"url": "$AGNOS_STAGING_UPDATE_URL/system-$SYSTEM_HASH.img.xz",
|
||||
@@ -197,4 +253,6 @@ echo " System hash: $SYSTEM_HASH"
|
||||
echo " Boot hash: $BOOT_HASH"
|
||||
echo " abl hash: $ABL_HASH"
|
||||
echo " xbl hash: $XBL_HASH"
|
||||
echo " xbl_config hash: $XBL_CONFIG_HASH"
|
||||
echo " xbl_config hash: $XBL_CONFIG_HASH"
|
||||
echo " devcfg hash: $DEVCFG_HASH"
|
||||
echo " aop hash: $AOP_HASH"
|
||||
Reference in New Issue
Block a user