Adam Shih | 33aa771 | 2022-08-30 11:54:49 +0800 | [diff] [blame] | 1 | # Dauntless |
Adam Shih | d7aa396 | 2022-08-22 13:50:54 +0800 | [diff] [blame] | 2 | BOARD_VENDOR_SEPOLICY_DIRS += device/google/gs-common/dauntless/sepolicy |
Tommy Chiu | 1d50676 | 2024-10-09 05:05:34 +0000 | [diff] [blame] | 3 | ifneq ($(wildcard vendor/google_nos),) |
Adam Shih | 33aa771 | 2022-08-30 11:54:49 +0800 | [diff] [blame] | 4 | PRODUCT_SOONG_NAMESPACES += vendor/google_nos/init/dauntless |
| 5 | |
| 6 | PRODUCT_PACKAGES += \ |
| 7 | citadeld \ |
| 8 | citadel_updater \ |
ChengYou Ho | df8d456 | 2022-09-16 20:35:56 +0000 | [diff] [blame] | 9 | android.hardware.weaver-service.citadel \ |
ChengYou Ho | 9699b14 | 2022-09-02 17:33:52 +0000 | [diff] [blame] | 10 | android.hardware.authsecret-service.citadel \ |
ChengYou Ho | abfb0ba | 2022-09-15 16:13:00 +0000 | [diff] [blame] | 11 | android.hardware.oemlock-service.citadel \ |
Adam Shih | 33aa771 | 2022-08-30 11:54:49 +0800 | [diff] [blame] | 12 | init_citadel \ |
| 13 | android.hardware.strongbox_keystore.xml \ |
| 14 | android.hardware.security.keymint-service.citadel \ |
| 15 | dump_gsc.sh |
| 16 | |
| 17 | # USERDEBUG ONLY: Install test packages |
| 18 | PRODUCT_PACKAGES_DEBUG += citadel_integration_tests \ |
| 19 | pwntest \ |
| 20 | nugget_targeted_tests \ |
Tommy Chiu | ddcf9b4 | 2024-01-31 22:51:46 +0800 | [diff] [blame] | 21 | CitadelProvision \ |
| 22 | nugget_aidl_test_weaver |
Tommy Chiu | 15ed5c6 | 2024-08-29 07:06:10 +0000 | [diff] [blame] | 23 | |
| 24 | # Assign default value for RELEASE_GOOGLE_DAUNTLESS_DIR if no trunk flags support |
| 25 | RELEASE_GOOGLE_DAUNTLESS_DIR ?= vendor/google_nos/prebuilts/dauntless |
| 26 | |
| 27 | # The production Dauntless firmware will be of flavors evt and d3m2. |
| 28 | # There are also several flavors of pre-release chips. Each flavor |
| 29 | # (production and pre-release) requires the firmware to be signed differently. |
| 30 | DAUNTLESS_FIRMWARE_SIZE := 1048576 |
| 31 | |
| 32 | # The nearly-production Dauntless chips are "proto1.1" |
| 33 | ifneq (,$(wildcard $(RELEASE_GOOGLE_DAUNTLESS_DIR)/proto11.ec.bin)) |
| 34 | ifneq ($(DAUNTLESS_FIRMWARE_SIZE), $(shell stat -c "%s" $(RELEASE_GOOGLE_DAUNTLESS_DIR)/proto11.ec.bin)) |
| 35 | $(error GSC firmware size check fail) |
Tommy Chiu | ddcf9b4 | 2024-01-31 22:51:46 +0800 | [diff] [blame] | 36 | endif |
Tommy Chiu | 15ed5c6 | 2024-08-29 07:06:10 +0000 | [diff] [blame] | 37 | PRODUCT_COPY_FILES += \ |
| 38 | $(RELEASE_GOOGLE_DAUNTLESS_DIR)/proto11.ec.bin:$(TARGET_COPY_OUT_VENDOR)/firmware/dauntless/proto11.ec.bin |
| 39 | $(call dist-for-goals,droid,$(RELEASE_GOOGLE_DAUNTLESS_DIR)/proto11.ec.bin) |
| 40 | else |
| 41 | $(error GSC firmware not found in $(RELEASE_GOOGLE_DAUNTLESS_DIR)) |
| 42 | endif |
| 43 | |
| 44 | # The production Dauntless chips are "evt" |
| 45 | ifneq (,$(wildcard $(RELEASE_GOOGLE_DAUNTLESS_DIR)/evt.ec.bin)) |
| 46 | ifneq ($(DAUNTLESS_FIRMWARE_SIZE), $(shell stat -c "%s" $(RELEASE_GOOGLE_DAUNTLESS_DIR)/evt.ec.bin)) |
| 47 | $(error GSC firmware size check fail) |
| 48 | endif |
| 49 | PRODUCT_COPY_FILES += \ |
| 50 | $(RELEASE_GOOGLE_DAUNTLESS_DIR)/evt.ec.bin:$(TARGET_COPY_OUT_VENDOR)/firmware/dauntless/evt.ec.bin |
| 51 | $(call dist-for-goals,droid,$(RELEASE_GOOGLE_DAUNTLESS_DIR)/evt.ec.bin) |
| 52 | else |
| 53 | $(error GSC firmware not found in $(RELEASE_GOOGLE_DAUNTLESS_DIR)) |
| 54 | endif |
| 55 | |
| 56 | # New 2023 production Dauntless chips are "d3m2" |
| 57 | ifneq (,$(wildcard $(RELEASE_GOOGLE_DAUNTLESS_DIR)/d3m2.ec.bin)) |
| 58 | ifneq ($(DAUNTLESS_FIRMWARE_SIZE), $(shell stat -c "%s" $(RELEASE_GOOGLE_DAUNTLESS_DIR)/d3m2.ec.bin)) |
| 59 | $(error GSC firmware size check fail) |
| 60 | endif |
| 61 | PRODUCT_COPY_FILES += \ |
| 62 | $(RELEASE_GOOGLE_DAUNTLESS_DIR)/d3m2.ec.bin:$(TARGET_COPY_OUT_VENDOR)/firmware/dauntless/d3m2.ec.bin |
| 63 | $(call dist-for-goals,droid,$(RELEASE_GOOGLE_DAUNTLESS_DIR)/d3m2.ec.bin) |
| 64 | else |
| 65 | $(error GSC firmware not found in $(RELEASE_GOOGLE_DAUNTLESS_DIR)) |
| 66 | endif |
| 67 | |
| 68 | # Intermediate image artifacts are published, but aren't included in /vendor/firmware/dauntless |
| 69 | # in PRODUCT_COPY_FILES |
| 70 | # This is because intermediate images aren't needed on user devices, but the published artifact |
| 71 | # is useful for flashstation purposes. |
| 72 | |
| 73 | # proto11 chips need an intermediate image prior to upgrading to newever versions of the firmware |
| 74 | ifneq (,$(wildcard vendor/google_nos/prebuilts/dauntless/intermediate_images/proto11_intermediate.ec.bin)) |
| 75 | ifneq ($(DAUNTLESS_FIRMWARE_SIZE), $(shell stat -c "%s" vendor/google_nos/prebuilts/dauntless/intermediate_images/proto11_intermediate.ec.bin)) |
| 76 | $(error GSC firmware size check fail) |
| 77 | endif |
| 78 | $(call dist-for-goals,droid,vendor/google_nos/prebuilts/dauntless/intermediate_images/proto11_intermediate.ec.bin) |
| 79 | endif |
| 80 | # evt chips need an intermediate image prior to upgrading to newever versions of the firmware |
| 81 | ifneq (,$(wildcard vendor/google_nos/prebuilts/dauntless/intermediate_images/evt_intermediate.ec.bin)) |
| 82 | ifneq ($(DAUNTLESS_FIRMWARE_SIZE), $(shell stat -c "%s" vendor/google_nos/prebuilts/dauntless/intermediate_images/evt_intermediate.ec.bin)) |
| 83 | $(error GSC firmware size check fail) |
| 84 | endif |
| 85 | $(call dist-for-goals,droid,vendor/google_nos/prebuilts/dauntless/intermediate_images/evt_intermediate.ec.bin) |
| 86 | endif |
| 87 | # d3m2 chips need an intermediate image prior to upgrading to newever versions of the firmware |
| 88 | ifneq (,$(wildcard vendor/google_nos/prebuilts/dauntless/intermediate_images/d3m2_intermediate.ec.bin)) |
| 89 | ifneq ($(DAUNTLESS_FIRMWARE_SIZE), $(shell stat -c "%s" vendor/google_nos/prebuilts/dauntless/intermediate_images/d3m2_intermediate.ec.bin)) |
| 90 | $(error GSC firmware size check fail) |
| 91 | endif |
| 92 | $(call dist-for-goals,droid,vendor/google_nos/prebuilts/dauntless/intermediate_images/d3m2_intermediate.ec.bin) |
| 93 | endif |
| 94 | |
Tommy Chiu | 1d50676 | 2024-10-09 05:05:34 +0000 | [diff] [blame] | 95 | endif # $(wildcard vendor/google_nos) |