summaryrefslogtreecommitdiff
path: root/filesystem/filesystem.go
diff options
context:
space:
mode:
author Android Build Coastguard Worker <android-build-coastguard-worker@google.com> 2025-03-21 20:05:43 -0700
committer Android Build Coastguard Worker <android-build-coastguard-worker@google.com> 2025-03-21 20:05:43 -0700
commit1248ced0cad29018090e65e3762585cdd774e864 (patch)
tree2789f57ad33c7bf8a28df9ded872139adcf05ac7 /filesystem/filesystem.go
parent29e0a00b2a9010b7b30f004fb9f6a2ad7ea20bcb (diff)
parent716fc3438bce5e2018b47cf906195b4f9aecea5c (diff)
Snap for 13256841 from 716fc3438bce5e2018b47cf906195b4f9aecea5c to 25Q2-release
Change-Id: I4c3a8288d87d662237450f7cb929abe4669668ca
Diffstat (limited to 'filesystem/filesystem.go')
-rw-r--r--filesystem/filesystem.go22
1 files changed, 18 insertions, 4 deletions
diff --git a/filesystem/filesystem.go b/filesystem/filesystem.go
index e86ebf4fa..fd1c784ec 100644
--- a/filesystem/filesystem.go
+++ b/filesystem/filesystem.go
@@ -463,6 +463,9 @@ type FilesystemInfo struct {
AvbAlgorithm string
AvbHashAlgorithm string
AvbKey android.Path
+ PartitionName string
+ // HasOrIsRecovery returns true for recovery and for ramdisks with a recovery partition.
+ HasOrIsRecovery bool
}
// FullInstallPathInfo contains information about the "full install" paths of all the files
@@ -720,6 +723,8 @@ func (f *filesystem) GenerateAndroidBuildActions(ctx android.ModuleContext) {
HasFsverity: f.properties.Fsverity.Inputs.GetOrDefault(ctx, nil) != nil,
PropFileForMiscInfo: propFileForMiscInfo,
PartitionSize: f.properties.Partition_size,
+ PartitionName: f.partitionName(),
+ HasOrIsRecovery: f.hasOrIsRecovery(ctx),
}
if proptools.Bool(f.properties.Use_avb) {
fsInfo.UseAvb = true
@@ -1177,10 +1182,6 @@ func (f *filesystem) buildPropFileForMiscInfo(ctx android.ModuleContext) android
if proptools.Bool(f.properties.Use_avb) {
addStr("avb_"+f.partitionName()+"_hashtree_enable", "true")
- if f.properties.Avb_private_key != nil {
- key := android.PathForModuleSrc(ctx, *f.properties.Avb_private_key)
- addStr("avb_"+f.partitionName()+"_key_path", key.String())
- }
addStr("avb_"+f.partitionName()+"_add_hashtree_footer_args", strings.TrimSpace(f.getAvbAddHashtreeFooterArgs(ctx)))
}
@@ -1307,6 +1308,19 @@ func includeFilesInstalledFiles(ctx android.ModuleContext) (ret []depset.DepSet[
return
}
+func (f *filesystem) hasOrIsRecovery(ctx android.ModuleContext) bool {
+ if f.partitionName() == "recovery" {
+ return true
+ }
+ ret := false
+ ctx.VisitDirectDepsWithTag(interPartitionInstallDependencyTag, func(m android.Module) {
+ if fsProvider, ok := android.OtherModuleProvider(ctx, m, FilesystemProvider); ok && fsProvider.PartitionName == "recovery" {
+ ret = true
+ }
+ })
+ return ret
+}
+
func (f *filesystem) buildCpioImage(
ctx android.ModuleContext,
builder *android.RuleBuilder,