Merge "bluejay: conf: run ufs ffu script after boot complete" into udc-dev
This commit is contained in:
commit
8b30bcd03a
4 changed files with 55 additions and 0 deletions
|
@ -247,3 +247,5 @@ PRODUCT_PRODUCT_PROPERTIES ?= \
|
||||||
PRODUCT_PRODUCT_PROPERTIES += \
|
PRODUCT_PRODUCT_PROPERTIES += \
|
||||||
setupwizard.feature.enable_quick_start_flow_for_debug=true \
|
setupwizard.feature.enable_quick_start_flow_for_debug=true \
|
||||||
|
|
||||||
|
# UFS: the script is used to select the corresponding firmware to run FFU.
|
||||||
|
PRODUCT_PACKAGES += ufs_firmware_update.sh
|
||||||
|
|
27
storage/Android.bp
Normal file
27
storage/Android.bp
Normal file
|
@ -0,0 +1,27 @@
|
||||||
|
//
|
||||||
|
// Copyright (C) 2017 The Android Open Source Project
|
||||||
|
//
|
||||||
|
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
// you may not use this file except in compliance with the License.
|
||||||
|
// You may obtain a copy of the License at
|
||||||
|
//
|
||||||
|
// http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
//
|
||||||
|
// Unless required by applicable law or agreed to in writing, software
|
||||||
|
// distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
// See the License for the specific language governing permissions and
|
||||||
|
// limitations under the License.
|
||||||
|
|
||||||
|
package {
|
||||||
|
default_applicable_licenses: [
|
||||||
|
"//device/google/bluejay:device_google_bluejay_license",
|
||||||
|
],
|
||||||
|
}
|
||||||
|
|
||||||
|
sh_binary {
|
||||||
|
name: "ufs_firmware_update.sh",
|
||||||
|
src: "ufs_firmware_update.sh",
|
||||||
|
init_rc: ["storage.bluejay.rc"],
|
||||||
|
vendor: true,
|
||||||
|
}
|
7
storage/storage.bluejay.rc
Normal file
7
storage/storage.bluejay.rc
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
on property:sys.boot_completed=1
|
||||||
|
# Copy ufs firmware to disk
|
||||||
|
start ufs_firmware_update
|
||||||
|
|
||||||
|
service ufs_firmware_update /vendor/bin/ufs_firmware_update.sh
|
||||||
|
disabled
|
||||||
|
oneshot
|
19
storage/ufs_firmware_update.sh
Executable file
19
storage/ufs_firmware_update.sh
Executable file
|
@ -0,0 +1,19 @@
|
||||||
|
#!/vendor/bin/sh
|
||||||
|
#
|
||||||
|
# The script belongs to the feature of UFS FFU via OTA: go/p23-ffu-ota
|
||||||
|
# Its purpose is to copy the corresponding firmware into partition for UFS FFU.
|
||||||
|
|
||||||
|
ufs_dev="/dev/sys/block/bootdevice"
|
||||||
|
fw_dir="/vendor/firmware"
|
||||||
|
blk_dev="/dev/block/by-name/fips"
|
||||||
|
|
||||||
|
vendor=$(cat ${ufs_dev}/vendor | tr -d "[:space:]")
|
||||||
|
model=$(cat ${ufs_dev}/model | tr -d "[:space:]")
|
||||||
|
rev=$(cat ${ufs_dev}/rev | tr -d "[:space:]")
|
||||||
|
|
||||||
|
file=$(find ${fw_dir} -name "*${vendor}${model}${rev}*" | head -n 1)
|
||||||
|
if [ -n "$file" ]; then
|
||||||
|
# The first 4KB block at fips partition has been occupied, and unused space begins from 4 KB
|
||||||
|
# Refer to: go/pixel-mp-ffu-ota-1p
|
||||||
|
dd if="$file" of=$blk_dev bs=4k seek=1
|
||||||
|
fi
|
Loading…
Add table
Add a link
Reference in a new issue