author | Xindong Xu <xindong.xu@amlogic.com> | 2018-08-03 09:30:05 (GMT) |
---|---|---|
committer | Xindong Xu <xindong.xu@amlogic.com> | 2018-08-07 08:40:35 (GMT) |
commit | adf9720b924a5d68e05354675cc44bb53b524a15 (patch) | |
tree | 84608e0fd316a3c2e31af1973add7f30637b7f39 | |
parent | b5b4873bd9da116c9914018afdb24a7af56b5d2b (diff) | |
download | braun-adf9720b924a5d68e05354675cc44bb53b524a15.zip braun-adf9720b924a5d68e05354675cc44bb53b524a15.tar.gz braun-adf9720b924a5d68e05354675cc44bb53b524a15.tar.bz2 |
braun: support system as root [10/19]
PD# 170278
support system as root
Change-Id: I0f68f98e367c8094bc15c58de8f13616e154446d
-rw-r--r-- | BoardConfig.mk | 42 | ||||
-rw-r--r-- | Kernel.mk | 6 | ||||
-rw-r--r-- | braun.mk | 81 | ||||
-rw-r--r-- | device.mk | 9 | ||||
-rw-r--r-- | fstab.AB.amlogic | 14 | ||||
-rw-r--r-- | fstab.AB.verity.amlogic | 14 | ||||
-rw-r--r-- | fstab.system.amlogic (renamed from fstab.verity.amlogic) | 6 | ||||
-rw-r--r-- | recovery/recovery.fstab | 4 | ||||
-rw-r--r-- | recovery/recovery_system.fstab | 29 |
9 files changed, 135 insertions, 70 deletions
diff --git a/BoardConfig.mk b/BoardConfig.mk index d070577..329e735 100644 --- a/BoardConfig.mk +++ b/BoardConfig.mk @@ -63,25 +63,59 @@ BOARD_HAVE_FLASHLIGHT := false BOARD_HAVE_HW_JPEGENC := true TARGET_USERIMAGES_USE_EXT4 := true -BOARD_SYSTEMIMAGE_PARTITION_SIZE := 1946157056 BOARD_USERDATAIMAGE_PARTITION_SIZE := 576716800 BOARD_FLASH_BLOCK_SIZE := 4096 BOARD_VENDORIMAGE_FILE_SYSTEM_TYPE := ext4 -BOARD_VENDORIMAGE_PARTITION_SIZE := 268435456 BOARD_USES_VENDORIMAGE := true TARGET_COPY_OUT_VENDOR := vendor -BOARD_ROOT_EXTRA_FOLDERS := odm +ifneq ($(BOARD_BUILD_SYSTEM_ROOT_IMAGE), true) +BOARD_ROOT_EXTRA_FOLDERS += odm +endif + BOARD_ODMIMAGE_FILE_SYSTEM_TYPE := ext4 -BOARD_ODMIMAGE_PARTITION_SIZE := 268435456 BOARD_USES_ODMIMAGE := true +BOARD_USES_METADATA_PARTITION := true + +BOARD_USES_PRODUCTIMAGE := true +BOARD_PRODUCTIMAGE_FILE_SYSTEM_TYPE := ext4 +TARGET_COPY_OUT_PRODUCT := product + +BOARD_DTBIMAGE_PARTITION_SIZE := 262144 +BOARD_BOOTIMAGE_PARTITION_SIZE := 16777216 +BOARD_RECOVERYIMAGE_PARTITION_SIZE := 25165824 +ifeq ($(ANDROID_BUILD_TYPE), 64) +BOARD_SYSTEMIMAGE_PARTITION_SIZE := 1551892480 +BOARD_VENDORIMAGE_PARTITION_SIZE := 268435456 +BOARD_ODMIMAGE_PARTITION_SIZE := 134217728 +BOARD_PRODUCTIMAGE_PARTITION_SIZE := 134217728 +else +BOARD_SYSTEMIMAGE_PARTITION_SIZE := 1342177280 +BOARD_VENDORIMAGE_PARTITION_SIZE := 268435456 +BOARD_ODMIMAGE_PARTITION_SIZE := 134217728 +BOARD_PRODUCTIMAGE_PARTITION_SIZE := 134217728 +endif + +ifneq ($(USE_USB_AS_HOST),true) +BOARD_KERNEL_CMDLINE += --cmdline "otg_device=1" +endif + +ifeq ($(BOARD_BUILD_DISABLED_VBMETAIMAGE), true) +ifeq ($(BOARD_BUILD_SYSTEM_ROOT_IMAGE), true) +BOARD_KERNEL_CMDLINE += --cmdline "root=179:18" +endif +endif TARGET_SUPPORT_USB_BURNING_V2 := true TARGET_AMLOGIC_RES_PACKAGE := device/amlogic/braun/logo_img_files +ifeq ($(BOARD_BUILD_SYSTEM_ROOT_IMAGE), true) +TARGET_RECOVERY_FSTAB := device/amlogic/braun/recovery/recovery_system.fstab +else TARGET_RECOVERY_FSTAB := device/amlogic/braun/recovery/recovery.fstab +endif #BOARD_HAL_STATIC_LIBRARIES := libhealthd.mboxdefault @@ -9,10 +9,6 @@ INSTALLED_KERNEL_TARGET := $(PRODUCT_OUT)/kernel BOARD_MKBOOTIMG_ARGS := --second $(PRODUCT_OUT)/dt.img --kernel_offset $(BOARD_KERNEL_OFFSET) -ifneq ($(USE_USB_AS_HOST),true) -BOARD_MKBOOTIMG_ARGS += --cmdline "otg_device=1" -endif - ifneq ($(TARGET_KERNEL_BUILT_FROM_SOURCE), true) TARGET_PREBUILT_KERNEL := device/amlogic/braun-kernel/Image.gz INSTALLED_BOARDDTB_TARGET := $(PRODUCT_OUT)/dt.img @@ -127,7 +123,7 @@ savekernelconfig: $(KERNEL_OUT) $(KERNEL_CONFIG) build-modules-quick: $(media-modules) -$(INSTALLED_KERNEL_TARGET): $(INTERMEDIATES_KERNEL) | $(ACP) +$(INSTALLED_KERNEL_TARGET): $(INTERMEDIATES_KERNEL) $(PRODUCT_OUT)/dt.img | $(ACP) @echo "Kernel installed" $(transform-prebuilt-to-target) @@ -83,6 +83,15 @@ BOARD_AML_VENDOR_PATH := vendor/amlogic/ampere/ BOARD_WIDEVINE_TA_PATH := vendor/amlogic/ AB_OTA_UPDATER :=true +BUILD_WITH_AVB := true + +ifeq ($(BUILD_WITH_AVB),true) +#BOARD_AVB_ENABLE := true +BOARD_BUILD_DISABLED_VBMETAIMAGE := true +BOARD_AVB_ALGORITHM := SHA256_RSA2048 +BOARD_AVB_KEY_PATH := device/amlogic/common/security/testkey_rsa2048.pem +BOARD_AVB_ROLLBACK_INDEX := 0 +endif ifeq ($(AB_OTA_UPDATER),true) AB_OTA_PARTITIONS := \ @@ -93,10 +102,40 @@ AB_OTA_PARTITIONS := \ TARGET_BOOTLOADER_CONTROL_BLOCK := true TARGET_NO_RECOVERY := true +ifneq ($(BUILD_WITH_AVB),true) TARGET_PARTITION_DTSI := partition_mbox_ab.dtsi else +TARGET_PARTITION_DTSI := partition_mbox_ab_avb.dtsi +endif +else TARGET_NO_RECOVERY := false -TARGET_PARTITION_DTSI := partition_mbox_normal.dtsi + +BOARD_BUILD_SYSTEM_ROOT_IMAGE := true + +ifeq ($(ANDROID_BUILD_TYPE), 64) +TARGET_PARTITION_DTSI := partition_mbox_normal_P_64.dtsi +else +TARGET_PARTITION_DTSI := partition_mbox_normal_P_32.dtsi +endif + +ifneq ($(BUILD_WITH_AVB),true) +TARGET_FIRMWARE_DTSI := firmware_normal.dtsi +else +ifeq ($(BOARD_BUILD_SYSTEM_ROOT_IMAGE), true) +ifeq ($(BOARD_BUILD_DISABLED_VBMETAIMAGE), true) +TARGET_FIRMWARE_DTSI := firmware_system.dtsi +else +TARGET_FIRMWARE_DTSI := firmware_avb_system.dtsi +endif +else +ifeq ($(BOARD_BUILD_DISABLED_VBMETAIMAGE), true) +TARGET_FIRMWARE_DTSI := firmware_normal.dtsi +else +TARGET_FIRMWARE_DTSI := firmware_avb.dtsi +endif +endif +endif + BOARD_CACHEIMAGE_PARTITION_SIZE := 69206016 BOARD_CACHEIMAGE_FILE_SYSTEM_TYPE := ext4 endif @@ -143,7 +182,7 @@ endif # Dm-Verity # ######################################################################### -BUILD_WITH_DM_VERITY := true +#BUILD_WITH_DM_VERITY := true #TARGET_USE_SECURITY_DM_VERITY_MODE_WITH_TOOL := true ifeq ($(TARGET_USE_SECURITY_DM_VERITY_MODE_WITH_TOOL), true) BUILD_WITH_DM_VERITY := true @@ -154,43 +193,19 @@ PRODUCT_PACKAGES += \ fs_mgr \ slideshow endif -ifneq ($(BOARD_USES_RECOVERY_AS_BOOT), true) -ifeq ($(AB_OTA_UPDATER),true) -ifeq ($(BUILD_WITH_DM_VERITY), true) -PRODUCT_COPY_FILES += \ - device/amlogic/braun/fstab.AB.verity.amlogic:root/fstab.amlogic -else -PRODUCT_COPY_FILES += \ - device/amlogic/braun/fstab.AB.amlogic:root/fstab.amlogic -endif -else -ifeq ($(BUILD_WITH_DM_VERITY), true) + +ifeq ($(BOARD_BUILD_SYSTEM_ROOT_IMAGE), true) PRODUCT_COPY_FILES += \ - device/amlogic/braun/fstab.verity.amlogic:root/fstab.amlogic + device/amlogic/braun/fstab.system.amlogic:$(TARGET_COPY_OUT_VENDOR)/etc/fstab.amlogic else +ifneq ($(BOARD_USES_RECOVERY_AS_BOOT), true) PRODUCT_COPY_FILES += \ device/amlogic/braun/fstab.amlogic:root/fstab.amlogic -endif -endif -else -ifeq ($(AB_OTA_UPDATER),true) -ifeq ($(BUILD_WITH_DM_VERITY), true) -PRODUCT_COPY_FILES += \ - device/amlogic/braun/fstab.AB.verity.amlogic:recovery/root/fstab.amlogic -else -PRODUCT_COPY_FILES += \ - device/amlogic/braun/fstab.AB.amlogic:recovery/root/fstab.amlogic -endif -else -ifeq ($(BUILD_WITH_DM_VERITY), true) -PRODUCT_COPY_FILES += \ - device/amlogic/braun/fstab.verity.amlogic:recovery/root/fstab.amlogic else PRODUCT_COPY_FILES += \ device/amlogic/braun/fstab.amlogic:recovery/root/fstab.amlogic endif endif -endif ######################################################################### # @@ -356,6 +371,12 @@ endif # A/B update # ######################################################################### +ifeq ($(BUILD_WITH_AVB),true) +PRODUCT_PACKAGES += \ + bootctrl.avb \ + libavb_user +endif + ifeq ($(AB_OTA_UPDATER),true) PRODUCT_PACKAGES += \ bootctrl.amlogic \ @@ -14,8 +14,15 @@ # limitations under the License. # +ifeq ($(BOARD_BUILD_SYSTEM_ROOT_IMAGE), true) +PRODUCT_COPY_FILES += \ + device/amlogic/common/products/mbox/init.amlogic.system.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/hw/init.amlogic.rc +else +PRODUCT_COPY_FILES += \ + device/amlogic/common/products/mbox/init.amlogic.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/hw/init.amlogic.rc +endif + PRODUCT_COPY_FILES += \ - device/amlogic/common/products/mbox/init.amlogic.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/hw/init.amlogic.rc \ device/amlogic/braun/init.amlogic.usb.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/hw/init.amlogic.usb.rc \ device/amlogic/braun/init.amlogic.board.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/hw/init.amlogic.board.rc diff --git a/fstab.AB.amlogic b/fstab.AB.amlogic deleted file mode 100644 index c1a642a..0000000 --- a/fstab.AB.amlogic +++ b/dev/null @@ -1,14 +0,0 @@ -# Android fstab file. -#<src> <mnt_point> <type> <mnt_flags and options> <fs_mgr_flags> -# The filesystem that contains the filesystem checker binary (typically /system) cannot -# specify MF_CHECK, and must come before any filesystems that do specify MF_CHECK - -/dev/block/platform/d0074000.emmc/misc /misc emmc defaults defaults -/dev/block/data /data ext4 noatime,nosuid,nodev,nodelalloc,nomblk_io_submit,errors=panic wait,check,fileencryption=aes-256-xts,quota,formattable -/devices/*.sd/mmc_host/sd* auto auto defaults voldmanaged=sdcard1:auto,encryptable=userdata -/devices/*dwc3/xhci-hcd.0.auto/usb?/*/host*/target*/block/sd* auto auto defaults voldmanaged=usb:auto,encryptable=userdata -/devices/*dwc3/xhci-hcd.0.auto/usb?/*/host*/target*/block/sr* auto auto defaults voldmanaged=sr0:auto,encryptable=userdata -/dev/block/loop auto loop defaults voldmanaged=loop:auto -# Add for zram. zramsize can be in numeric (byte) , in percent -/dev/block/zram0 /swap_zram0 swap defaults wait,zramsize=524288000 -/dev/block/tee /tee ext4 noatime,nosuid,nodev,nodelalloc,nomblk_io_submit,errors=panic wait,check,formattable diff --git a/fstab.AB.verity.amlogic b/fstab.AB.verity.amlogic deleted file mode 100644 index c1a642a..0000000 --- a/fstab.AB.verity.amlogic +++ b/dev/null @@ -1,14 +0,0 @@ -# Android fstab file. -#<src> <mnt_point> <type> <mnt_flags and options> <fs_mgr_flags> -# The filesystem that contains the filesystem checker binary (typically /system) cannot -# specify MF_CHECK, and must come before any filesystems that do specify MF_CHECK - -/dev/block/platform/d0074000.emmc/misc /misc emmc defaults defaults -/dev/block/data /data ext4 noatime,nosuid,nodev,nodelalloc,nomblk_io_submit,errors=panic wait,check,fileencryption=aes-256-xts,quota,formattable -/devices/*.sd/mmc_host/sd* auto auto defaults voldmanaged=sdcard1:auto,encryptable=userdata -/devices/*dwc3/xhci-hcd.0.auto/usb?/*/host*/target*/block/sd* auto auto defaults voldmanaged=usb:auto,encryptable=userdata -/devices/*dwc3/xhci-hcd.0.auto/usb?/*/host*/target*/block/sr* auto auto defaults voldmanaged=sr0:auto,encryptable=userdata -/dev/block/loop auto loop defaults voldmanaged=loop:auto -# Add for zram. zramsize can be in numeric (byte) , in percent -/dev/block/zram0 /swap_zram0 swap defaults wait,zramsize=524288000 -/dev/block/tee /tee ext4 noatime,nosuid,nodev,nodelalloc,nomblk_io_submit,errors=panic wait,check,formattable diff --git a/fstab.verity.amlogic b/fstab.system.amlogic index 32637b0..56305a2 100644 --- a/fstab.verity.amlogic +++ b/fstab.system.amlogic @@ -6,10 +6,12 @@ /dev/block/misc /misc emmc defaults defaults /dev/block/data /data ext4 noatime,nosuid,nodev,nodelalloc,nomblk_io_submit,errors=panic wait,check,fileencryption=aes-256-xts,quota,formattable /dev/block/cache /cache ext4 noatime,nosuid,nodev,nodelalloc,nomblk_io_submit,errors=panic wait,check,formattable +/dev/block/metadata /metadata ext4 noatime,nosuid,nodev,nodelalloc,nomblk_io_submit,errors=panic wait,check,formattable /devices/*.sd/mmc_host/sd* auto auto defaults voldmanaged=sdcard1:auto,encryptable=userdata /devices/*dwc3/xhci-hcd.0.auto/usb?/*/host*/target*/block/sd* auto auto defaults voldmanaged=usb:auto,encryptable=userdata /devices/*dwc3/xhci-hcd.0.auto/usb?/*/host*/target*/block/sr* auto auto defaults voldmanaged=sr0:auto,encryptable=userdata /dev/block/loop auto loop defaults voldmanaged=loop:auto +/dev/block/param /mnt/vendor/param ext4 noatime,nosuid,nodev,nodelalloc,nomblk_io_submit,errors=panic wait,check,encryptable=footer,quota,formattable # Add for zram. zramsize can be in numeric (byte) , in percent -/dev/block/zram0 /swap_zram0 swap defaults wait,zramsize=524288000 -/dev/block/tee /tee ext4 noatime,nosuid,nodev,nodelalloc,nomblk_io_submit,errors=panic wait,check,formattable +/dev/block/zram0 /mnt/vendor/swap_zram0 swap defaults wait,zramsize=524288000 +/dev/block/tee /mnt/vendor/tee ext4 noatime,nosuid,nodev,nodelalloc,nomblk_io_submit,errors=panic wait,check,formattable diff --git a/recovery/recovery.fstab b/recovery/recovery.fstab index 4c91808..db1f5cf 100644 --- a/recovery/recovery.fstab +++ b/recovery/recovery.fstab @@ -1,12 +1,16 @@ #device mountpoint fstype options flags? (fstab version 2) /dev/block/bootloader /bootloader emmc defaults defaults /dev/block/logo /logo emmc defaults defaults +/dev/block/vbmeta /vbmeta emmc defaults defaults /dev/block/recovery /recovery emmc defaults defaults /dev/block/boot /boot emmc defaults defaults /dev/block/misc /misc emmc defaults defaults /dev/block/system /system ext4 defaults defaults /dev/block/vendor /vendor ext4 defaults defaults /dev/block/odm /odm ext4 defaults defaults +/dev/block/product /product ext4 defaults defaults +/dev/block/metadata /metadata ext4 defaults defaults +/dev/block/tee /tee ext4 defaults defaults /dev/block/cache /cache ext4 defaults defaults /dev/block/data /data ext4 defaults encryptable=footer /dev/block/mmcblk1p1 /sdcard vfat defaults defaults diff --git a/recovery/recovery_system.fstab b/recovery/recovery_system.fstab new file mode 100644 index 0000000..a1cccc7 --- a/dev/null +++ b/recovery/recovery_system.fstab @@ -0,0 +1,29 @@ +#device mountpoint fstype options flags? (fstab version 2) +/dev/block/bootloader /bootloader emmc defaults defaults +/dev/block/logo /logo emmc defaults defaults +/dev/block/vbmeta /vbmeta emmc defaults defaults +/dev/block/recovery /recovery emmc defaults defaults +/dev/block/boot /boot emmc defaults defaults +/dev/block/misc /misc emmc defaults defaults +/dev/block/system / ext4 defaults defaults +/dev/block/vendor /vendor ext4 defaults defaults +/dev/block/odm /odm ext4 defaults defaults +/dev/block/product /product ext4 defaults defaults +/dev/block/metadata /metadata ext4 defaults defaults +/dev/block/tee /tee ext4 defaults defaults +/dev/block/cache /cache ext4 defaults defaults +/dev/block/data /data ext4 defaults encryptable=footer +/dev/block/mmcblk1p1 /sdcard vfat defaults defaults +/dev/block/mmcblk1p2 /sdcard vfat defaults defaults +/dev/block/mmcblk1p3 /sdcard vfat defaults defaults +/dev/block/mmcblk1p4 /sdcard vfat defaults defaults +/dev/block/mmcblk1p5 /sdcard vfat defaults defaults +/dev/block/mmcblk1p6 /sdcard vfat defaults defaults +/dev/block/mmcblk2p1 /sdcard vfat defaults defaults +/dev/block/mmcblk2p2 /sdcard vfat defaults defaults +/dev/block/mmcblk2p3 /sdcard vfat defaults defaults +/dev/block/mmcblk2p4 /sdcard vfat defaults defaults +/dev/block/mmcblk2p5 /sdcard vfat defaults defaults +/dev/block/mmcblk2p6 /sdcard vfat defaults defaults +/dev/block/mmcblk /sdcard vfat defaults defaults +/dev/block/sd## /udisk auto defaults defaults |