init zumapro from zuma sha 4daedb8feb4d4

Bug: 272725898
Change-Id: I1e1ab5d15e7f4b2b59e28f2e52e07cd7e12f25b3
This commit is contained in:
Robin Peng 2023-03-28 10:19:48 +00:00
parent 30795fccb8
commit dec234f475
264 changed files with 17032 additions and 0 deletions

33
storage/Android.bp Normal file
View file

@ -0,0 +1,33 @@
//
// 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 {
// See: http://go/android-license-faq
// A large-scale-change added 'default_applicable_licenses' to import
// all of the 'license_kinds' from "//device/google/zumapro:device_google_zumapro_license"
// to get the below license kinds:
// SPDX-license-identifier-Apache-2.0
default_applicable_licenses: [
"//device/google/zumapro:device_google_zumapro_license",
],
}
sh_binary {
name: "ufs_firmware_update.sh",
src: "ufs_firmware_update.sh",
init_rc: ["storage.zumapro.rc"],
vendor: true,
}

View 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

17
storage/ufs_firmware_update.sh Executable file
View file

@ -0,0 +1,17 @@
#!/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/ufs_internal"
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
dd if="$file" of=$blk_dev bs=4k
fi