summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAmit Pundir <amit.pundir@linaro.org>2019-04-23 14:42:59 +0530
committerAmit Pundir <amit.pundir@linaro.org>2020-04-02 10:47:58 +0530
commitef6c89f3000ce05ebdc18c211ae8a21766da25c3 (patch)
tree93f49f8512b2de64bd0aaacb1367e75adb1578d5
parentfa0fa16c0c7a2a85a33ebd8f92ec8022f12fed1e (diff)
downloaddragonboard410c-db410c.tar.gz
db410c: Add support for AOSP on Dragonboard db410c (32bit only build)db410c
Change-Id: Ib40e5ab38fd29c3b5fbcdfa80b7824eba3aa7f99 Signed-off-by: Amit Pundir <amit.pundir@linaro.org>
-rw-r--r--Android.mk2
-rw-r--r--AndroidProducts.mk2
-rw-r--r--BoardConfigCommon.mk8
-rw-r--r--db410c.mk10
-rw-r--r--db410c/Android.mk28
-rw-r--r--db410c/BoardConfig.mk33
-rw-r--r--db410c/device.mk38
-rw-r--r--db410c/firmware/Android.mk12
-rw-r--r--db410c/firmware/NOTICE206
-rw-r--r--db410c/firmware/WCNSS_qcom_wlan_nv.binbin0 -> 31723 bytes
-rw-r--r--db410c/firmware/device.mk19
-rw-r--r--db410c/firmware/md5sums12
-rw-r--r--db410c/firmware/qcom/Android.mk11
-rw-r--r--db410c/firmware/qcom/a300_pfp.fwbin0 -> 1156 bytes
-rw-r--r--db410c/firmware/qcom/a300_pm4.fwbin0 -> 9220 bytes
-rw-r--r--db410c/firmware/wcnss.b00bin0 -> 436 bytes
-rw-r--r--db410c/firmware/wcnss.b01bin0 -> 6824 bytes
-rw-r--r--db410c/firmware/wcnss.b02bin0 -> 13064 bytes
-rw-r--r--db410c/firmware/wcnss.b04bin0 -> 61440 bytes
-rw-r--r--db410c/firmware/wcnss.b06bin0 -> 3333020 bytes
-rw-r--r--db410c/firmware/wcnss.b09bin0 -> 52 bytes
-rw-r--r--db410c/firmware/wcnss.b10bin0 -> 655360 bytes
-rw-r--r--db410c/firmware/wcnss.b11bin0 -> 44044 bytes
-rw-r--r--db410c/firmware/wcnss.mdtbin0 -> 7260 bytes
-rw-r--r--db410c/fstab.db410c7
-rw-r--r--db410c/fstab.ramdisk2
-rw-r--r--db410c/init.db410c.rc57
-rw-r--r--db845c/BoardConfig.mk8
-rw-r--r--db845c/device.mk5
-rw-r--r--device-common.mk5
-rw-r--r--installer/db410c/LICENSE38
-rw-r--r--installer/db410c/MD5SUMS.txt10
-rw-r--r--installer/db410c/NON-HLOS.binbin0 -> 15451648 bytes
-rw-r--r--installer/db410c/README19
-rw-r--r--installer/db410c/emmc_appsboot.mbnbin0 -> 546072 bytes
-rwxr-xr-xinstaller/db410c/flash-all-aosp.sh51
-rw-r--r--installer/db410c/flashall26
-rw-r--r--installer/db410c/gpt_both0.binbin0 -> 34304 bytes
-rw-r--r--installer/db410c/hyp.mbnbin0 -> 61440 bytes
-rw-r--r--installer/db410c/rpm.mbnbin0 -> 154804 bytes
-rw-r--r--installer/db410c/sbc_1.0_8016.binbin0 -> 420 bytes
-rw-r--r--installer/db410c/sbl1.mbnbin0 -> 258576 bytes
-rw-r--r--installer/db410c/tz.mbnbin0 -> 601216 bytes
-rw-r--r--pixel3_mainline/BoardConfig.mk8
-rw-r--r--pixel3_mainline/device.mk8
-rw-r--r--sepolicy/file_contexts1
-rw-r--r--sepolicy/genfs_contexts1
47 files changed, 613 insertions, 14 deletions
diff --git a/Android.mk b/Android.mk
index 12ec650..0e070a2 100644
--- a/Android.mk
+++ b/Android.mk
@@ -20,7 +20,7 @@
# to only building on ARM if they include assembly. Individual makefiles
# are responsible for having their own logic, for fine-grained control.
-ifneq ($(filter db845c pixel3_mainline, $(TARGET_BOARD_PLATFORM)),)
+ifneq ($(filter db410c db845c pixel3_mainline, $(TARGET_BOARD_PLATFORM)),)
LOCAL_PATH := $(call my-dir)
diff --git a/AndroidProducts.mk b/AndroidProducts.mk
index 84cf20f..b69f6c0 100644
--- a/AndroidProducts.mk
+++ b/AndroidProducts.mk
@@ -10,9 +10,11 @@
#
PRODUCT_MAKEFILES := \
+ $(LOCAL_DIR)/db410c.mk \
$(LOCAL_DIR)/db845c.mk \
$(LOCAL_DIR)/pixel3_mainline.mk
COMMON_LUNCH_CHOICES := \
+ db410c-userdebug \
db845c-userdebug \
pixel3_mainline-userdebug
diff --git a/BoardConfigCommon.mk b/BoardConfigCommon.mk
index 11ffba8..5cfd60e 100644
--- a/BoardConfigCommon.mk
+++ b/BoardConfigCommon.mk
@@ -36,14 +36,6 @@ BOARD_SYSTEMIMAGE_FILE_SYSTEM_TYPE := ext4
TARGET_USERIMAGES_USE_EXT4 := true
TARGET_COPY_OUT_VENDOR := vendor
BOARD_VENDORIMAGE_FILE_SYSTEM_TYPE := ext4
-TARGET_COPY_OUT_SYSTEM_EXT := system_ext
-BOARD_SYSTEM_EXTIMAGE_FILE_SYSTEM_TYPE := ext4
-BOARD_USES_METADATA_PARTITION := true
-# Super partition
-TARGET_USE_DYNAMIC_PARTITIONS := true
-BOARD_BUILD_SUPER_IMAGE_BY_DEFAULT := true
-BOARD_SUPER_PARTITION_GROUPS := db_dynamic_partitions
-BOARD_DB_DYNAMIC_PARTITIONS_PARTITION_LIST := system vendor system_ext
# Enable Treble
PRODUCT_FULL_TREBLE := true
diff --git a/db410c.mk b/db410c.mk
new file mode 100644
index 0000000..ef660c8
--- /dev/null
+++ b/db410c.mk
@@ -0,0 +1,10 @@
+# Inherit the full_base and device configurations
+$(call inherit-product, $(SRC_TARGET_DIR)/product/go_defaults_512.mk)
+$(call inherit-product, device/linaro/dragonboard/db410c/device.mk)
+$(call inherit-product, device/linaro/dragonboard/device-common.mk)
+$(call inherit-product, $(SRC_TARGET_DIR)/product/full_base.mk)
+
+# Product overrides
+PRODUCT_NAME := db410c
+PRODUCT_DEVICE := db410c
+PRODUCT_BRAND := Android
diff --git a/db410c/Android.mk b/db410c/Android.mk
new file mode 100644
index 0000000..1648f44
--- /dev/null
+++ b/db410c/Android.mk
@@ -0,0 +1,28 @@
+#
+# Copyright (C) 2015 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.
+#
+
+# WARNING: Everything listed here will be built on ALL platforms,
+# including x86, the emulator, and the SDK. Modules must be uniquely
+# named (liblights.panda), and must build everywhere, or limit themselves
+# to only building on ARM if they include assembly. Individual makefiles
+# are responsible for having their own logic, for fine-grained control.
+
+LOCAL_PATH := $(call my-dir)
+
+# if some modules are built directly from this directory (not subdirectories),
+# their rules should be written here.
+
+include $(call all-makefiles-under,$(LOCAL_PATH))
diff --git a/db410c/BoardConfig.mk b/db410c/BoardConfig.mk
new file mode 100644
index 0000000..bbf9d82
--- /dev/null
+++ b/db410c/BoardConfig.mk
@@ -0,0 +1,33 @@
+include device/linaro/dragonboard/BoardConfigCommon.mk
+
+# Primary Arch
+TARGET_ARCH := arm
+TARGET_ARCH_VARIANT := armv8-a
+TARGET_CPU_VARIANT := cortex-a53
+TARGET_CPU_ABI := armeabi-v7a
+TARGET_CPU_ABI2 := armeabi
+
+# Secondary Arch
+TARGET_2ND_ARCH :=
+TARGET_2ND_ARCH_VARIANT :=
+TARGET_2ND_CPU_VARIANT :=
+TARGET_2ND_CPU_ABI :=
+TARGET_2ND_CPU_ABI2 :=
+
+# Board Information
+TARGET_BOOTLOADER_BOARD_NAME := db410c
+TARGET_BOARD_PLATFORM := db410c
+
+# Kernel/boot.img Configuration
+TARGET_NO_KERNEL := false
+BOARD_KERNEL_BASE := 0x80008000
+BOARD_MKBOOTIMG_ARGS := --ramdisk_offset 0x0
+BOARD_KERNEL_CMDLINE := earlycon firmware_class.path=/vendor/firmware/ androidboot.hardware=db410c
+BOARD_KERNEL_CMDLINE += init=/init androidboot.boot_devices=soc/7824900.sdhci printk.devkmsg=on
+
+# Image Configuration
+BOARD_BOOTIMAGE_PARTITION_SIZE := 67108864 #64M
+BOARD_SYSTEMIMAGE_PARTITION_SIZE := 1288491008
+BOARD_USERDATAIMAGE_PARTITION_SIZE := 5653544960
+BOARD_VENDORIMAGE_PARTITION_SIZE := 69206016 #66M
+BOARD_FLASH_BLOCK_SIZE := 512
diff --git a/db410c/device.mk b/db410c/device.mk
new file mode 100644
index 0000000..f0f7098
--- /dev/null
+++ b/db410c/device.mk
@@ -0,0 +1,38 @@
+#
+# Copyright (C) 2014 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.
+#
+
+PRODUCT_COPY_FILES := \
+ $(LOCAL_PATH)/fstab.ramdisk:$(TARGET_COPY_OUT_RAMDISK)/fstab.db410c \
+ $(LOCAL_PATH)/fstab.ramdisk:$(TARGET_COPY_OUT_RAMDISK)/etc/fstab.db410c \
+ $(LOCAL_PATH)/fstab.db410c:$(TARGET_COPY_OUT_VENDOR)/etc/init/fstab.db410c \
+ $(LOCAL_PATH)/init.db410c.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/init.db410c.rc \
+ device/linaro/dragonboard-kernel/db410c-amt-5.2.gz-dtb:kernel \
+ device/linaro/dragonboard/init.common.usb.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/init.db410c.usb.rc \
+ device/linaro/dragonboard/common.kl:$(TARGET_COPY_OUT_VENDOR)/usr/keylayout/db410c.kl
+
+# Dalvik/ART Heap Configuration
+PRODUCT_PROPERTY_OVERRIDES := \
+ dalvik.vm.heapstartsize=8m \
+ dalvik.vm.heapgrowthlimit=96m \
+ dalvik.vm.heapsize=32m \
+ dalvik.vm.heaptargetutilization=0.75 \
+ dalvik.vm.heapminfree=512k \
+ dalvik.vm.heapmaxfree=8m
+
+# Build generic Audio HAL
+PRODUCT_PACKAGES := audio.primary.db410c
+
+$(call inherit-product, $(LOCAL_PATH)/firmware/device.mk)
diff --git a/db410c/firmware/Android.mk b/db410c/firmware/Android.mk
new file mode 100644
index 0000000..27d56f7
--- /dev/null
+++ b/db410c/firmware/Android.mk
@@ -0,0 +1,12 @@
+LOCAL_PATH := $(call my-dir)
+
+include device/linaro/dragonboard/utils.mk
+
+# Firmware files copied from
+# http://builds.96boards.org/releases/dragonboard410c/qualcomm/firmware/linux-board-support-package-r1032.1.1.zip
+firmware_files_wlan := \
+ WCNSS_qcom_wlan_nv.bin
+
+$(foreach f, $(firmware_files_wlan), $(call add-qcom-firmware, $(f), $(TARGET_OUT_VENDOR)/firmware/wlan/prima))
+
+include $(call all-makefiles-under,$(LOCAL_PATH))
diff --git a/db410c/firmware/NOTICE b/db410c/firmware/NOTICE
new file mode 100644
index 0000000..faacf9c
--- /dev/null
+++ b/db410c/firmware/NOTICE
@@ -0,0 +1,206 @@
+PLEASE READ THIS LICENSE AGREEMENT ("AGREEMENT") CAREFULLY. THIS AGREEMENT IS
+A BINDING LEGAL AGREEMENT ENTERED INTO BY AND BETWEEN YOU (OR IF YOU ARE
+ENTERING INTO THIS AGREEMENT ON BEHALF OF AN ENTITY, THEN THE ENTITY THAT YOU
+REPRESENT) AND QUALCOMM TECHNOLOGIES, INC. ("QTI" "WE" "OUR" OR "US"). THIS IS
+THE AGREEMENT THAT APPLIES TO YOUR USE OF THE DESIGNATED AND/OR LINKED
+APPLICATIONS, THE ENCLOSED QUALCOMM TECHNOLOGIES' MATERIALS, INCLUDING RELATED
+DOCUMENTATION AND ANY UPDATES OR IMPROVEMENTS THEREOF
+(COLLECTIVELY, "MATERIALS"). BY USING OR COMPLETING THE INSTALLATION OF THE
+MATERIALS, YOU ARE ACCEPTING THIS AGREEMENT AND YOU AGREE TO BE BOUND BY ITS
+TERMS AND CONDITIONS. IF YOU DO NOT AGREE TO THESE TERMS, QTI IS UNWILLING TO
+AND DOES NOT LICENSE THE MATERIALS TO YOU. IF YOU DO NOT AGREE TO THESE TERMS
+YOU MUST DISCONTINUE THE INSTALLATION PROCESS AND YOU MAY NOT USE THE MATERIALS
+OR RETAIN ANY COPIES OF THE MATERIALS. ANY USE OR POSSESSION OF THE MATERIALS
+BY YOU IS SUBJECT TO THE TERMS AND CONDITIONS SET FORTH IN THIS AGREEMENT.
+
+1. RIGHT TO USE DELIVERABLES; RESTRICTIONS.
+
+ 1.1 License. Subject to the terms and conditions of this Agreement,
+ including, without limitation, the restrictions, conditions, limitations and
+ exclusions set forth in this Agreement, QTI hereby grants to you a
+ nonexclusive, limited license under QTI's copyrights to: (i) install and use
+ the Materials; and (ii) to reproduce and redistribute the binary code portions
+ of the Materials (the "Redistributable Binary Code"). You may make and use a
+ reasonable number of copies of any documentation.
+
+ 1.2 Redistribution Restrictions. Distribution of the Redistributable Binary
+ Code is subject to the following restrictions: (i) Redistributable Binary Code
+ may only be distributed in binary format and may not be distributed in source
+ code format:; (ii) the Redistributable Binary Code may only operate in
+ conjunction with platforms incorporating Qualcomm Technologies, Inc. chipsets;
+ (iii) redistribution of the Redistributable Binary Code must include the .txt
+ file setting forth the terms and condition of this Agreement; (iv) you may not
+ use Qualcomm Technologies' or its affiliates or subsidiaries name, logo or
+ trademarks; and (v) copyright, trademark, patent and any other notices that
+ appear on the Materials may not be removed or obscured.
+
+ 1.3 Additional Restrictions. Except as expressly permitted by this Agreement,
+ you shall have no right to sublicense, transfer or otherwise disclose the
+ Materials to any third party. You shall not reverse engineer, reverse
+ assemble, reverse translate, decompile or reduce to source code form any
+ portion of the Materials provided in object code form or executable form.
+ Except for the purposes expressly permitted in this Agreement, You shall not
+ use the Materials for any other purpose. QTI (or its licensors) shall retain
+ title and all ownership rights in and to the Materials and any alterations,
+ modifications (including all derivative works), translations or adaptations
+ made of the Materials, and all copies thereof, and nothing herein shall be
+ deemed to grant any right to You under any of QTI's or its affiliates'
+ patents. You shall not subject the Materials to any third party license
+ terms (e.g., open source license terms). You shall not use the Materials for
+ the purpose of identifying or providing evidence to support any potential
+ patent infringement claim against QTI, its affiliates, or any of QTI's or
+ QTI's affiliates' suppliers and/or direct or indirect customers. QTI hereby
+ reserves all rights not expressly granted herein.
+
+ 1.4 Third Party Software and Materials. The Software may contain or link to
+ certain software and/or materials that are written or owned by third parties.
+ Such third party code and materials may be licensed under separate or
+ different terms and conditions and are not licensed to you under the terms of
+ this Agreement. You agree to comply with all terms and conditions imposed on
+ you in the applicable third party licenses. Such terms and conditions may
+ impose certain obligations on you as a condition to the permitted use of such
+ third party code and materials. QTI does not represent or warrant that such
+ third party licensors have or will continue to license or make available their
+ code and materials to you.
+
+ 1.5 Feedback. QTI may from time to time receive suggestions, feedback or
+ other information from You regarding the Materials. Any suggestions, feedback
+ or other disclosures received from You are and shall be entirely voluntary on
+ the part of You. Notwithstanding any other term in this Agreement, QTI shall
+ be free to use suggestions, feedback or other information received from You,
+ without obligation of any kind to You. The Parties agree that all inventions,
+ product improvements, and modifications conceived of or made by QTI that are
+ based, either in whole or in part, on ideas, feedback, suggestions, or
+ recommended improvements received from You are the exclusive property of QTI,
+ and all right, title and interest in and to any such inventions, product
+ improvements, and modifications will vest solely in QTI.
+
+ 1.6 No Technical Support. QTI is under no obligation to provide any form of
+ technical support for the Materials, and if QTI, in its sole discretion,
+ chooses to provide any form of support or information relating to the
+ Materials, such support and information shall be deemed confidential and
+ proprietary to QTI.
+
+2. WARRANTY DISCLAIMER. YOU EXPRESSLY ACKNOWLEDGE AND AGREE THAT THE USE OF
+THE MATERIALS IS AT YOUR SOLE RISK. THE MATERIALS AND TECHNICAL SUPPORT, IF
+ANY, ARE PROVIDED "AS IS" AND WITHOUT WARRANTY OF ANY KIND, WHETHER EXPRESS OR
+IMPLIED. QTI ITS LICENSORS AND AFFILIATES MAKE NO WARRANTIES, EXPRESS OR
+IMPLIED, WITH RESPECT TO THE MATERIALS OR ANY OTHER INFORMATION OR DOCUMENTATION
+PROVIDED UNDER THIS AGREEMENT, INCLUDING BUT NOT LIMITED TO ANY WARRANTY OF
+MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE OR AGAINST INFRINGEMENT, OR
+ANY EXPRESS OR IMPLIED WARRANTY ARISING OUT OF TRADE USAGE OR OUT OF A COURSE OF
+DEALING OR COURSE OF PERFORMANCE. NOTHING CONTAINED IN THIS AGREEMENT SHALL BE
+CONSTRUED AS (I) A WARRANTY OR REPRESENTATION BY QTI, ITS LICENSORS OR
+AFFILIATES AS TO THE VALIDITY OR SCOPE OF ANY PATENT, COPYRIGHT OR OTHER
+INTELLECTUAL PROPERTY RIGHT OR (II) A WARRANTY OR REPRESENTATION BY QTI THAT ANY
+MANUFACTURE OR USE WILL BE FREE FROM INFRINGEMENT OF PATENTS, COPYRIGHTS OR
+OTHER INTELLECTUAL PROPERTY RIGHTS OF OTHERS, AND IT SHALL BE THE SOLE
+RESPONSIBILITY OF YOU TO MAKE SUCH DETERMINATION AS IS NECESSARY WITH RESPECT TO
+THE ACQUISITION OF LICENSES UNDER PATENTS AND OTHER INTELLECTUAL PROPERTY OF
+THIRD PARTIES.
+
+3. NO OTHER LICENSES OR INTELLECTUAL PROPERTY RIGHTS. Neither this Agreement,
+nor any act by QTI or any of its affiliates pursuant to this Agreement or
+relating to the Materials (including, without limitation, the provision by QTI
+or its affiliates of the Materials), shall provide to You any license or any
+other rights whatsoever under any patents, trademarks, trade secrets, copyrights
+or any other intellectual property of QTI or any of its affiliates, except for
+the copyright rights expressly licensed under this Agreement. You understand and
+agree that:
+
+ (i) Neither this Agreement, nor delivery of the Materials, grants any right to
+ practice, or any other right at all with respect to, any patent of QTI or any
+ of its affiliates; and
+
+ (ii) A separate license agreement from QUALCOMM Incorporated is needed to use
+ or practice any patent of QUALCOMM Incorporated. You agree not to contend in
+ any context that, as a result of the provision or use of the Materials, either
+ QTI or any of its affiliates has any obligation to extend, or You or any other
+ party has obtained any right to, any license, whether express or implied, with
+ respect to any patent of QTI or any of its affiliates for any purpose.
+
+4. TERMINATION. This Agreement shall be effective upon acceptance, or access or
+use of the Materials (whichever occurs first) by You and shall continue until
+terminated. You may terminate the Agreement at any time by deleting and
+destroying all copies of the Materials and all related information in Your
+possession or control. This Agreement terminates immediately and automatically,
+with or without notice, if You fail to comply with any provision hereof.
+Additionally, QTI may at any time terminate this Agreement, without cause, upon
+notice to You. Upon termination You must, to the extent possible, delete or
+destroy all copies of the Materials in Your possession and the license granted
+to You in this Agreement shall terminate. Sections 1.2 through 10 shall survive
+the termination of this Agreement. In the event that any restrictions,
+conditions, limitations are found to be either invalid or unenforceable, the
+rights granted to You in Section 1 (License) shall be null, void and ineffective
+from the Effective Date, and QTI shall also have the right to terminate this
+Agreement immediately, and with retroactive effect to the effective date.
+
+5. LIMITATION OF LIABILITY. IN NO EVENT SHALL QTI, QTI's AFFILIATES OR ITS
+LICENSORS BE LIABLE TO YOU FOR ANY INCIDENTAL, CONSEQUENTIAL OR SPECIAL DAMAGES,
+INCLUDING BUT NOT LIMITED TO ANY LOST PROFITS, LOST SAVINGS, OR OTHER INCIDENTAL
+DAMAGES, ARISING OUT OF THE USE OR INABILITY TO USE, OR THE DELIVERY OR FAILURE
+TO DELIVER, ANY OF THE DELIVERABLES, OR ANY BREACH OF ANY OBLIGATION UNDER THIS
+AGREEMENT, EVEN IF QTI HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
+THE FOREGOING LIMITATION OF LIABILITY SHALL REMAIN IN FULL FORCE AND EFFECT
+REGARDLESS OF WHETHER YOUR REMEDIES HEREUNDER ARE DETERMINED TO HAVE FAILED OF
+THEIR ESSENTIAL PURPOSE. THE ENTIRE LIABILITY OF QTI, QTI's AFFILIATES AND ITS
+LICENSORS, AND THE SOLE AND EXCLUSIVE REMEDY OF YOU, FOR ANY CLAIM OR CAUSE OF
+ACTION ARISING HEREUNDER (WHETHER IN CONTRACT, TORT, OR OTHERWISE) SHALL NOT
+EXCEED US$50.
+
+6. INDEMNIFICATION. You agree to indemnify and hold harmless QTI and its
+officers, directors, employees and successors and assigns against any and all
+third party claims, demands, causes of action, losses, liabilities, damages,
+costs and expenses, incurred by QTI (including but not limited to costs of
+defense, investigation and reasonable attorney's fees) arising out of, resulting
+from or related to: (i) any breach of this Agreement by You; and (ii) your acts,
+omissions, products and services. If requested by QTI, You agree to defend QTI
+in connection with any third party claims, demands, or causes of action
+resulting from, arising out of or in connection with any of the foregoing.
+
+7. ASSIGNMENT. You shall not assign this Agreement or any right or interest
+under this Agreement, nor delegate any obligation to be performed under this
+Agreement, without QTI's prior written consent. For purposes of this Section 7,
+an "assignment" by You under this Section shall be deemed to include, without
+limitation, any merger, consolidation, sale of all or substantially all of its
+assets, or any substantial change in the management or control of You.
+Any attempted assignment in contravention of this Section 9 shall be void.
+QTI may freely assign this Agreement or delegate any or all of its rights and
+obligations hereunder to any third party.
+
+8. COMPLIANCE WITH LAWS; APPLICABLE LAW. You agree to comply with all
+applicable local, international and national laws and regulations and with U.S.
+Export Administration Regulations, as they apply to the subject matter of this
+Agreement. This Agreement is governed by the laws of the State of California,
+excluding California's choice of law rules.
+
+9. CONTRACTING PARTIES. If the Materials are downloaded on any computer owned
+by a corporation or other legal entity, then this Agreement is formed by and
+between QTI and such entity. The individual accepting the terms of this
+Agreement represents and warrants to QTI that they have the authority to bind
+such entity to the terms and conditions of this Agreement.
+
+10. MISCELLANEOUS PROVISIONS. This Agreement, together with all exhibits
+attached hereto, which are incorporated herein by this reference, constitutes
+the entire agreement between QTI and You and supersedes all prior negotiations,
+representations and agreements between the parties with respect to the subject
+matter hereof. No addition or modification of this Agreement shall be effective
+unless made in writing and signed by the respective representatives of QTI and
+You. The restrictions, limitations, exclusions and conditions set forth in this
+Agreement shall apply even if QTI or any of its affiliates becomes aware of or
+fails to act in a manner to address any violation or failure to comply
+therewith. You hereby acknowledge and agree that the restrictions, limitations,
+conditions and exclusions imposed in this Agreement on the rights granted in
+this Agreement are not a derogation of the benefits of such rights. You further
+acknowledges that, in the absence of such restrictions, limitations, conditions
+and exclusions, QTI would not have entered into this Agreement with You. Each
+party shall be responsible for and shall bear its own expenses in connection
+with this Agreement. If any of the provisions of this Agreement are determined
+to be invalid, illegal, or otherwise unenforceable, the remaining provisions
+shall remain in full force and effect. This Agreement is entered into solely
+in the English language, and if for any reason any other language version is
+prepared by any party, it shall be solely for convenience and the English
+version shall govern and control all aspects. If You are located in the
+province of Quebec, Canada, the following applies: The Parties hereby confirm
+they have requested this Agreement and all related documents be prepared
+in English.
diff --git a/db410c/firmware/WCNSS_qcom_wlan_nv.bin b/db410c/firmware/WCNSS_qcom_wlan_nv.bin
new file mode 100644
index 0000000..9a8f174
--- /dev/null
+++ b/db410c/firmware/WCNSS_qcom_wlan_nv.bin
Binary files differ
diff --git a/db410c/firmware/device.mk b/db410c/firmware/device.mk
new file mode 100644
index 0000000..a725e1e
--- /dev/null
+++ b/db410c/firmware/device.mk
@@ -0,0 +1,19 @@
+# Display
+PRODUCT_PACKAGES := \
+ a300_pfp.fw \
+ a300_pm4.fw
+
+# WCNSS
+PRODUCT_PACKAGES += \
+ WCNSS_qcom_wlan_nv.bin
+
+PRODUCT_COPY_FILES := \
+ $(LOCAL_PATH)/wcnss.b00:$(TARGET_COPY_OUT_VENDOR)/firmware/wcnss.b00 \
+ $(LOCAL_PATH)/wcnss.b01:$(TARGET_COPY_OUT_VENDOR)/firmware/wcnss.b01 \
+ $(LOCAL_PATH)/wcnss.b02:$(TARGET_COPY_OUT_VENDOR)/firmware/wcnss.b02 \
+ $(LOCAL_PATH)/wcnss.b04:$(TARGET_COPY_OUT_VENDOR)/firmware/wcnss.b04 \
+ $(LOCAL_PATH)/wcnss.b06:$(TARGET_COPY_OUT_VENDOR)/firmware/wcnss.b06 \
+ $(LOCAL_PATH)/wcnss.b09:$(TARGET_COPY_OUT_VENDOR)/firmware/wcnss.b09 \
+ $(LOCAL_PATH)/wcnss.b10:$(TARGET_COPY_OUT_VENDOR)/firmware/wcnss.b10 \
+ $(LOCAL_PATH)/wcnss.b11:$(TARGET_COPY_OUT_VENDOR)/firmware/wcnss.b11 \
+ $(LOCAL_PATH)/wcnss.mdt:$(TARGET_COPY_OUT_VENDOR)/firmware/wcnss.mdt
diff --git a/db410c/firmware/md5sums b/db410c/firmware/md5sums
new file mode 100644
index 0000000..9686522
--- /dev/null
+++ b/db410c/firmware/md5sums
@@ -0,0 +1,12 @@
+25aa81977303142bdc4490efad16138b ./a300_pfp.fw
+d657cacd951742d9bbbe74224347cffe ./a300_pm4.fw
+edfb7b8bbee0a2dc78558b8594ec135b ./wcnss.b00
+dac878bfa8cdb5cf8de6776d634b48a2 ./wcnss.b01
+c4216be929039eaa8d30998d3772c157 ./wcnss.b02
+9a6f0a39e5b13acf604a5b8f268a4b51 ./wcnss.b04
+21eb90b0c2bf47dfeb9d218aa7eba217 ./wcnss.b06
+469aa816010c9c8639a9176f625189af ./wcnss.b09
+157e39521e47ad1c923a94edd69ad59c ./wcnss.b10
+b4a8fbd96861b952bdc84192ae1ad2c7 ./wcnss.b11
+7b79f0524166cf8f31827f836f32dd45 ./wcnss.mdt
+b0676e9b460c3b28bf8d136a7425ecde ./WCNSS_qcom_wlan_nv.bin
diff --git a/db410c/firmware/qcom/Android.mk b/db410c/firmware/qcom/Android.mk
new file mode 100644
index 0000000..01fa9d9
--- /dev/null
+++ b/db410c/firmware/qcom/Android.mk
@@ -0,0 +1,11 @@
+LOCAL_PATH := $(call my-dir)
+
+include device/linaro/dragonboard/utils.mk
+
+# Firmware files copied from
+# http://builds.96boards.org/releases/dragonboard410c/qualcomm/firmware/linux-board-support-package-r1032.1.1.zip
+firmware_files_display := \
+ a300_pfp.fw \
+ a300_pm4.fw
+
+$(foreach f, $(firmware_files_display), $(call add-qcom-firmware, $(f), $(TARGET_OUT_VENDOR)/firmware/qcom/))
diff --git a/db410c/firmware/qcom/a300_pfp.fw b/db410c/firmware/qcom/a300_pfp.fw
new file mode 100644
index 0000000..5522677
--- /dev/null
+++ b/db410c/firmware/qcom/a300_pfp.fw
Binary files differ
diff --git a/db410c/firmware/qcom/a300_pm4.fw b/db410c/firmware/qcom/a300_pm4.fw
new file mode 100644
index 0000000..840e5a9
--- /dev/null
+++ b/db410c/firmware/qcom/a300_pm4.fw
Binary files differ
diff --git a/db410c/firmware/wcnss.b00 b/db410c/firmware/wcnss.b00
new file mode 100644
index 0000000..57d439f
--- /dev/null
+++ b/db410c/firmware/wcnss.b00
Binary files differ
diff --git a/db410c/firmware/wcnss.b01 b/db410c/firmware/wcnss.b01
new file mode 100644
index 0000000..74ec547
--- /dev/null
+++ b/db410c/firmware/wcnss.b01
Binary files differ
diff --git a/db410c/firmware/wcnss.b02 b/db410c/firmware/wcnss.b02
new file mode 100644
index 0000000..5ea194c
--- /dev/null
+++ b/db410c/firmware/wcnss.b02
Binary files differ
diff --git a/db410c/firmware/wcnss.b04 b/db410c/firmware/wcnss.b04
new file mode 100644
index 0000000..271ad3c
--- /dev/null
+++ b/db410c/firmware/wcnss.b04
Binary files differ
diff --git a/db410c/firmware/wcnss.b06 b/db410c/firmware/wcnss.b06
new file mode 100644
index 0000000..80efe30
--- /dev/null
+++ b/db410c/firmware/wcnss.b06
Binary files differ
diff --git a/db410c/firmware/wcnss.b09 b/db410c/firmware/wcnss.b09
new file mode 100644
index 0000000..6048a30
--- /dev/null
+++ b/db410c/firmware/wcnss.b09
Binary files differ
diff --git a/db410c/firmware/wcnss.b10 b/db410c/firmware/wcnss.b10
new file mode 100644
index 0000000..6817491
--- /dev/null
+++ b/db410c/firmware/wcnss.b10
Binary files differ
diff --git a/db410c/firmware/wcnss.b11 b/db410c/firmware/wcnss.b11
new file mode 100644
index 0000000..e67e575
--- /dev/null
+++ b/db410c/firmware/wcnss.b11
Binary files differ
diff --git a/db410c/firmware/wcnss.mdt b/db410c/firmware/wcnss.mdt
new file mode 100644
index 0000000..2d7d516
--- /dev/null
+++ b/db410c/firmware/wcnss.mdt
Binary files differ
diff --git a/db410c/fstab.db410c b/db410c/fstab.db410c
new file mode 100644
index 0000000..2014d77
--- /dev/null
+++ b/db410c/fstab.db410c
@@ -0,0 +1,7 @@
+# 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
+LABEL=data /data ext4 discard,noauto_da_alloc,data=ordered,user_xattr,barrier=1 wait
+# Ext sdcard on db410c
+/devices/platform/soc/7864900.sdhci/mmc_host/mmc* auto auto defaults voldmanaged=sdcard1:auto,encryptable=userdata
diff --git a/db410c/fstab.ramdisk b/db410c/fstab.ramdisk
new file mode 100644
index 0000000..139fba6
--- /dev/null
+++ b/db410c/fstab.ramdisk
@@ -0,0 +1,2 @@
+/dev/block/platform/soc/7824900.sdhci/by-name/system /system ext4 ro,errors=panic wait,first_stage_mount
+/dev/block/platform/soc/7824900.sdhci/by-name/cache /vendor ext4 ro,errors=panic wait,first_stage_mount
diff --git a/db410c/init.db410c.rc b/db410c/init.db410c.rc
new file mode 100644
index 0000000..715a8bd
--- /dev/null
+++ b/db410c/init.db410c.rc
@@ -0,0 +1,57 @@
+import init.${ro.hardware}.usb.rc
+import init.${ro.hardware}.power.rc
+
+on fs
+ mount_all /vendor/etc/init/fstab.${ro.hardware}
+ swapon_all /vendor/etc/init/fstab.${ro.hardware}
+
+on init
+ # For legacy support
+ # See storage config details at http://source.android.com/tech/storage/
+ # since /storage is mounted on post-fs in init.rc
+ symlink /sdcard /storage/sdcard0
+
+ # Initialize cpusets to boot-time values
+ write /dev/cpuset/foreground/cpus 0-3
+ write /dev/cpuset/background/cpus 0-3
+ write /dev/cpuset/system-background/cpus 0-3
+ write /dev/cpuset/top-app/cpus 0-3
+
+on early-boot
+ mount debugfs debugfs /sys/kernel/debug
+ chmod 755 /sys/kernel/debug
+ chmod 755 /sys/kernel/debug/sync
+ chown graphics graphics /sys/kernel/debug/sync/sw_sync
+ chmod 777 /sys/kernel/debug/sync/sw_sync
+ chown graphics graphics /sys/kernel/debug/sync/info
+
+on zygote-start
+ mkdir /data/vendor/wifi 0770 wifi wifi
+ mkdir /data/vendor/wifi/wpa 0770 wifi wifi
+ mkdir /data/vendor/wifi/wpa/sockets 0770 wifi wifi
+
+on property:sys.boot_completed=1
+ # update cpuset now that processors are up
+ # Foreground should contain most cores (3 is reserved for top-app)
+ write /dev/cpuset/foreground/cpus 0-2
+
+ # top-app gets all cpus (including reserved #3)
+ write /dev/cpuset/top-app/cpus 0-3
+
+ #background contains a small subset (generally one little core)
+ write /dev/cpuset/background/cpus 0
+
+ # add system-background cpuset, a new cpuset for system services
+ # that should not run on larger cores
+ # system-background is for system tasks that should only run on
+ # little cores, not on bigs to be used only by init
+ write /dev/cpuset/system-background/cpus 0-1
+
+service wpa_supplicant /vendor/bin/hw/wpa_supplicant \
+ -Dnl80211 -g@android:wpa_wlan0
+ interface android.hardware.wifi.supplicant@1.0::ISupplicant default
+ interface android.hardware.wifi.supplicant@1.1::ISupplicant default
+ socket wpa_wlan0 dgram 660 wifi wifi
+ class main
+ disabled
+ oneshot
diff --git a/db845c/BoardConfig.mk b/db845c/BoardConfig.mk
index 3c925b3..68df7c7 100644
--- a/db845c/BoardConfig.mk
+++ b/db845c/BoardConfig.mk
@@ -17,7 +17,15 @@ BOARD_KERNEL_CMDLINE += init=/init androidboot.boot_devices=soc/1d84000.ufshc pr
BOARD_BOOTIMAGE_PARTITION_SIZE := 67108864 #64M
BOARD_USERDATAIMAGE_PARTITION_SIZE := 21474836480 #20G
BOARD_FLASH_BLOCK_SIZE := 512
+TARGET_COPY_OUT_SYSTEM_EXT := system_ext
+BOARD_SYSTEM_EXTIMAGE_FILE_SYSTEM_TYPE := ext4
+BOARD_USES_METADATA_PARTITION := true
+
# Super partition
+TARGET_USE_DYNAMIC_PARTITIONS := true
+BOARD_BUILD_SUPER_IMAGE_BY_DEFAULT := true
+BOARD_SUPER_PARTITION_GROUPS := db_dynamic_partitions
+BOARD_DB_DYNAMIC_PARTITIONS_PARTITION_LIST := system vendor system_ext
BOARD_SUPER_PARTITION_SIZE := 10737418240 #10G
BOARD_DB_DYNAMIC_PARTITIONS_SIZE := 10737418240 #10G
BOARD_SUPER_PARTITION_METADATA_DEVICE := super
diff --git a/db845c/device.mk b/db845c/device.mk
index be50f51..9fdbdb6 100644
--- a/db845c/device.mk
+++ b/db845c/device.mk
@@ -17,6 +17,11 @@
# setup dalvik vm configs
$(call inherit-product, frameworks/native/build/tablet-10in-xhdpi-2048-dalvik-heap.mk)
+# Dynamic partitions
+PRODUCT_BUILD_SUPER_PARTITION := true
+PRODUCT_USE_DYNAMIC_PARTITIONS := true
+PRODUCT_USE_DYNAMIC_PARTITION_SIZE :=true
+
PRODUCT_COPY_FILES := \
$(DB845C_KERNEL_DIR)/Image.gz:kernel \
$(DB845C_KERNEL_DIR)/sdm845-db845c.dtb:dtb.img \
diff --git a/device-common.mk b/device-common.mk
index 7be64f9..a572fc8 100644
--- a/device-common.mk
+++ b/device-common.mk
@@ -29,11 +29,6 @@ PRODUCT_OTA_ENFORCE_VINTF_KERNEL_REQUIREMENTS := false
# vndk
PRODUCT_PACKAGES := vndk-sp
-# Dynamic partitions
-PRODUCT_BUILD_SUPER_PARTITION := true
-PRODUCT_USE_DYNAMIC_PARTITIONS := true
-PRODUCT_USE_DYNAMIC_PARTITION_SIZE := true
-
# HACK: Avoid usb crash
PRODUCT_PRODUCT_PROPERTIES := \
persist.adb.nonblocking_ffs=0 \
diff --git a/installer/db410c/LICENSE b/installer/db410c/LICENSE
new file mode 100644
index 0000000..c84ecd8
--- /dev/null
+++ b/installer/db410c/LICENSE
@@ -0,0 +1,38 @@
+PLEASE READ THIS LICENSE AGREEMENT (“AGREEMENT”) CAREFULLY. THIS AGREEMENT IS A BINDING LEGAL AGREEMENT ENTERED INTO BY AND BETWEEN YOU (OR IF YOU ARE ENTERING INTO THIS AGREEMENT ON BEHALF OF AN ENTITY, THEN THE ENTITY THAT YOU REPRESENT) AND QUALCOMM TECHNOLOGIES, INC. (“QTI” “WE” “OUR” OR “US”). THIS IS THE AGREEMENT THAT APPLIES TO YOUR USE OF THE DESIGNATED AND/OR LINKED APPLICATIONS, THE ENCLOSED QUALCOMM TECHNOLOGIES’ MATERIALS, INCLUDING RELATED DOCUMENTATION AND ANY UPDATES OR IMPROVEMENTS THEREOF (COLLECTIVELY, “MATERIALS”). BY USING OR COMPLETING THE INSTALLATION OF THE MATERIALS, YOU ARE ACCEPTING THIS AGREEMENT AND YOU AGREE TO BE BOUND BY ITS TERMS AND CONDITIONS. IF YOU DO NOT AGREE TO THESE TERMS, QTI IS UNWILLING TO AND DOES NOT LICENSE THE MATERIALS TO YOU. IF YOU DO NOT AGREE TO THESE TERMS YOU MUST DISCONTINUE THE INSTALLATION PROCESS AND YOU MAY NOT USE THE MATERIALS OR RETAIN ANY COPIES OF THE MATERIALS. ANY USE OR POSSESSION OF THE MATERIALS BY YOU IS SUBJECT TO THE TERMS AND CONDITIONS SET FORTH IN THIS AGREEMENT.
+
+1. RIGHT TO USE DELIVERABLES; RESTRICTIONS.
+
+ 1.1 License. Subject to the terms and conditions of this Agreement, including, without limitation, the restrictions, conditions, limitations and exclusions set forth in this Agreement, QTI hereby grants to you a nonexclusive, limited license under QTI’s copyrights to: (i) install and use the Materials; and (ii) to reproduce and redistribute the binary code portions of the Materials (the “Redistributable Binary Code”). You may make and use a reasonable number of copies of any documentation.
+
+ 1.2 Redistribution Restrictions. Distribution of the Redistributable Binary Code is subject to the following restrictions: (i) Redistributable Binary Code may only be distributed in binary format and may not be distributed in source code format:; (ii) the Redistributable Binary Code may only operate in conjunction with platforms incorporating Qualcomm Technologies, Inc. chipsets; (iii) redistribution of the Redistributable Binary Code must include the .txt file setting forth the terms and condition of this Agreement; (iv) you may not use Qualcomm Technologies’ or its affiliates or subsidiaries name, logo or trademarks; and (v) copyright, trademark, patent and any other notices that appear on the Materials may not be removed or obscured.
+
+ 1.3 Additional Restrictions. Except as expressly permitted by this Agreement, you shall have no right to sublicense, transfer or otherwise disclose the Materials to any third party. You shall not reverse engineer, reverse assemble, reverse translate, decompile or reduce to source code form any portion of the Materials provided in object code form or executable form. Except for the purposes expressly permitted in this Agreement, You shall not use the Materials for any other purpose. QTI (or its licensors) shall retain title and all ownership rights in and to the Materials and any alterations, modifications (including all derivative works), translations or adaptations made of the Materials, and all copies thereof, and nothing herein shall be deemed to grant any right to You under any of QTI's or its affiliates’ patents. You shall not subject the Materials to any third party license terms (e.g., open source license terms). You shall not use the Materials for the purpose of identifying or providing evidence to support any potential patent infringement claim against QTI, its affiliates, or any of QTI’s or QTI’s affiliates’ suppliers and/or direct or indirect customers. QTI hereby reserves all rights not expressly granted herein.
+
+ 1.4 Third Party Software and Materials. The Software may contain or link to certain software and/or materials that are written or owned by third parties. Such third party code and materials may be licensed under separate or different terms and conditions and are not licensed to you under the terms of this Agreement. You agree to comply with all terms and conditions imposed on you in the applicable third party licenses. Such terms and conditions may impose certain obligations on you as a condition to the permitted use of such third party code and materials. QTI does not represent or warrant that such third party licensors have or will continue to license or make available their code and materials to you.
+
+ 1.5 Feedback. QTI may from time to time receive suggestions, feedback or other information from You regarding the Materials. Any suggestions, feedback or other disclosures received from You are and shall be entirely voluntary on the part of You. Notwithstanding any other term in this Agreement, QTI shall be free to use suggestions, feedback or other information received from You, without obligation of any kind to You. The Parties agree that all inventions, product improvements, and modifications conceived of or made by QTI that are based, either in whole or in part, on ideas, feedback, suggestions, or recommended improvements received from You are the exclusive property of QTI, and all right, title and interest in and to any such inventions, product improvements, and modifications will vest solely in QTI.
+
+ 1.6 No Technical Support. QTI is under no obligation to provide any form of technical support for the Materials, and if QTI, in its sole discretion, chooses to provide any form of support or information relating to the Materials, such support and information shall be deemed confidential and proprietary to QTI.
+
+2. WARRANTY DISCLAIMER. YOU EXPRESSLY ACKNOWLEDGE AND AGREE THAT THE USE OF THE MATERIALS IS AT YOUR SOLE RISK. THE MATERIALS AND TECHNICAL SUPPORT, IF ANY, ARE PROVIDED "AS IS" AND WITHOUT WARRANTY OF ANY KIND, WHETHER EXPRESS OR IMPLIED. QTI ITS LICENSORS AND AFFILIATES MAKE NO WARRANTIES, EXPRESS OR IMPLIED, WITH RESPECT TO THE MATERIALS OR ANY OTHER INFORMATION OR DOCUMENTATION PROVIDED UNDER THIS AGREEMENT, INCLUDING BUT NOT LIMITED TO ANY WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE OR AGAINST INFRINGEMENT, OR ANY EXPRESS OR IMPLIED WARRANTY ARISING OUT OF TRADE USAGE OR OUT OF A COURSE OF DEALING OR COURSE OF PERFORMANCE. NOTHING CONTAINED IN THIS AGREEMENT SHALL BE CONSTRUED AS (I) A WARRANTY OR REPRESENTATION BY QTI, ITS LICENSORS OR AFFILIATES AS TO THE VALIDITY OR SCOPE OF ANY PATENT, COPYRIGHT OR OTHER INTELLECTUAL PROPERTY RIGHT OR (II) A WARRANTY OR REPRESENTATION BY QTI THAT ANY MANUFACTURE OR USE WILL BE FREE FROM INFRINGEMENT OF PATENTS, COPYRIGHTS OR OTHER INTELLECTUAL PROPERTY RIGHTS OF OTHERS, AND IT SHALL BE THE SOLE RESPONSIBILITY OF YOU TO MAKE SUCH DETERMINATION AS IS NECESSARY WITH RESPECT TO THE ACQUISITION OF LICENSES UNDER PATENTS AND OTHER INTELLECTUAL PROPERTY OF THIRD PARTIES.
+
+3. NO OTHER LICENSES OR INTELLECTUAL PROPERTY RIGHTS. Neither this Agreement, nor any act by QTI or any of its affiliates pursuant to this Agreement or relating to the Materials (including, without limitation, the provision by QTI or its affiliates of the Materials), shall provide to You any license or any other rights whatsoever under any patents, trademarks, trade secrets, copyrights or any other intellectual property of QTI or any of its affiliates, except for the copyright rights expressly licensed under this Agreement. You understand and agree that:
+
+ (i) Neither this Agreement, nor delivery of the Materials, grants any right to practice, or any other right at all with respect to, any patent of QTI or any of its affiliates; and
+
+ (ii) A separate license agreement from QUALCOMM Incorporated is needed to use or practice any patent of QUALCOMM Incorporated. You agree not to contend in any context that, as a result of the provision or use of the Materials, either QTI or any of its affiliates has any obligation to extend, or You or any other party has obtained any right to, any license, whether express or implied, with respect to any patent of QTI or any of its affiliates for any purpose.
+
+4. TERMINATION. This Agreement shall be effective upon acceptance, or access or use of the Materials (whichever occurs first) by You and shall continue until terminated. You may terminate the Agreement at any time by deleting and destroying all copies of the Materials and all related information in Your possession or control. This Agreement terminates immediately and automatically, with or without notice, if You fail to comply with any provision hereof. Additionally, QTI may at any time terminate this Agreement, without cause, upon notice to You. Upon termination You must, to the extent possible, delete or destroy all copies of the Materials in Your possession and the license granted to You in this Agreement shall terminate. Sections 1.2 through 10 shall survive the termination of this Agreement. In the event that any restrictions, conditions, limitations are found to be either invalid or unenforceable, the rights granted to You in Section 1 (License) shall be null, void and ineffective from the Effective Date, and QTI shall also have the right to terminate this Agreement immediately, and with retroactive effect to the effective date.
+
+5. LIMITATION OF LIABILITY. IN NO EVENT SHALL QTI, QTI’s AFFILIATES OR ITS LICENSORS BE LIABLE TO YOU FOR ANY INCIDENTAL, CONSEQUENTIAL OR SPECIAL DAMAGES, INCLUDING BUT NOT LIMITED TO ANY LOST PROFITS, LOST SAVINGS, OR OTHER INCIDENTAL DAMAGES, ARISING OUT OF THE USE OR INABILITY TO USE, OR THE DELIVERY OR FAILURE TO DELIVER, ANY OF THE DELIVERABLES, OR ANY BREACH OF ANY OBLIGATION UNDER THIS AGREEMENT, EVEN IF QTI HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. THE FOREGOING LIMITATION OF LIABILITY SHALL REMAIN IN FULL FORCE AND EFFECT REGARDLESS OF WHETHER YOUR REMEDIES HEREUNDER ARE DETERMINED TO HAVE FAILED OF THEIR ESSENTIAL PURPOSE. THE ENTIRE LIABILITY OF QTI, QTI’s AFFILIATES AND ITS LICENSORS, AND THE SOLE AND EXCLUSIVE REMEDY OF YOU, FOR ANY CLAIM OR CAUSE OF ACTION ARISING HEREUNDER (WHETHER IN CONTRACT, TORT, OR OTHERWISE) SHALL NOT EXCEED US$50.
+
+6. INDEMNIFICATION. You agree to indemnify and hold harmless QTI and its officers, directors, employees and successors and assigns against any and all third party claims, demands, causes of action, losses, liabilities, damages, costs and expenses, incurred by QTI (including but not limited to costs of defense, investigation and reasonable attorney’s fees) arising out of, resulting from or related to: (i) any breach of this Agreement by You; and (ii) your acts, omissions, products and services. If requested by QTI, You agree to defend QTI in connection with any third party claims, demands, or causes of action resulting from, arising out of or in connection with any of the foregoing.
+
+7. ASSIGNMENT. You shall not assign this Agreement or any right or interest under this Agreement, nor delegate any obligation to be performed under this Agreement, without QTI’s prior written consent. For purposes of this Section 7, an “assignment” by You under this Section shall be deemed to include, without limitation, any merger, consolidation, sale of all or substantially all of its assets, or any substantial change in the management or control of You. Any attempted assignment in contravention of this Section 9 shall be void. QTI may freely assign this Agreement or delegate any or all of its rights and obligations hereunder to any third party.
+
+8. COMPLIANCE WITH LAWS; APPLICABLE LAW. You agree to comply with all applicable local, international and national laws and regulations and with U.S. Export Administration Regulations, as they apply to the subject matter of this Agreement. This Agreement is governed by the laws of the State of California, excluding California’s choice of law rules.
+
+9. CONTRACTING PARTIES. If the Materials are downloaded on any computer owned by a corporation or other legal entity, then this Agreement is formed by and between QTI and such entity. The individual accepting the terms of this Agreement represents and warrants to QTI that they have the authority to bind such entity to the terms and conditions of this Agreement.
+
+10. MISCELLANEOUS PROVISIONS. This Agreement, together with all exhibits attached hereto, which are incorporated herein by this reference, constitutes the entire agreement between QTI and You and supersedes all prior negotiations, representations and agreements between the parties with respect to the subject matter hereof. No addition or modification of this Agreement shall be effective unless made in writing and signed by the respective representatives of QTI and You. The restrictions, limitations, exclusions and conditions set forth in this Agreement shall apply even if QTI or any of its affiliates becomes aware of or fails to act in a manner to address any violation or failure to comply therewith. You hereby acknowledge and agree that the restrictions, limitations, conditions and exclusions imposed in this Agreement on the rights granted in this Agreement are not a derogation of the benefits of such rights. You further acknowledges that, in the absence of such restrictions, limitations, conditions and exclusions, QTI would not have entered into this Agreement with You. Each party shall be responsible for and shall bear its own expenses in connection with this Agreement. If any of the provisions of this Agreement are determined to be invalid, illegal, or otherwise unenforceable, the remaining provisions shall remain in full force and effect. This Agreement is entered into solely in the English language, and if for any reason any other language version is prepared by any party, it shall be solely for convenience and the English version shall govern and control all aspects. If You are located in the province of Quebec, Canada, the following applies: The Parties hereby confirm they have requested this Agreement and all related documents be prepared in English.
+
diff --git a/installer/db410c/MD5SUMS.txt b/installer/db410c/MD5SUMS.txt
new file mode 100644
index 0000000..67fc1e7
--- /dev/null
+++ b/installer/db410c/MD5SUMS.txt
@@ -0,0 +1,10 @@
+53c68b114113fcd36143e0e9e0e002cf emmc_appsboot.mbn
+39292e63f2a4adb783732ac2e38e3fb1 flashall
+b995e96e5a8154365822e2c8faab6643 gpt_both0.bin
+0f649991e7f4180e89ca04d3d730e245 hyp.mbn
+4d087ee0965cb059f1b2f9429e166f64 LICENSE
+f14672ae7a00e0513643dedd31d5d097 NON-HLOS.bin
+6e17f48a647d3b688444d370896c0c59 rpm.mbn
+a86a456f8b1a7351ba24e9635706176f sbc_1.0_8016.bin
+88dd6fd7df87ee0f5ac5fc06c29fc2f8 sbl1.mbn
+8f7e2fca53e86669cc99d8b3ae957e9d tz.mbn
diff --git a/installer/db410c/NON-HLOS.bin b/installer/db410c/NON-HLOS.bin
new file mode 100644
index 0000000..143b001
--- /dev/null
+++ b/installer/db410c/NON-HLOS.bin
Binary files differ
diff --git a/installer/db410c/README b/installer/db410c/README
new file mode 100644
index 0000000..3b699b3
--- /dev/null
+++ b/installer/db410c/README
@@ -0,0 +1,19 @@
+These instructions will help you in flashing the prebuilt bootloader
+and AOSP images(built from sources) on db410c.
+
+To flash the bootloader or AOSP images, first boot into fastboot mode.
+Connect a USB Micro-B cable to the OTG port and your HOST device.
+Now boot into fastboot mode by pressing and holding S4 button on
+db410c while switching "ON" the power and wait for following message
+
+“fastboot: processing commands”
+
+on the serial console on startup. Run the flash-all-aosp.sh script on
+your Host device to flash boot and AOSP files using fastboot. It
+assumes that you have already build db410c AOSP images locally, or are
+flashing factory images.
+
+$ ./flash-all-aosp.sh
+
+Follow detailed flashing and board recovery instructions here
+ https://www.96boards.org/documentation/consumer/dragonboard410c/installation/linux-fastboot.md.html
diff --git a/installer/db410c/emmc_appsboot.mbn b/installer/db410c/emmc_appsboot.mbn
new file mode 100644
index 0000000..7e35318
--- /dev/null
+++ b/installer/db410c/emmc_appsboot.mbn
Binary files differ
diff --git a/installer/db410c/flash-all-aosp.sh b/installer/db410c/flash-all-aosp.sh
new file mode 100755
index 0000000..b66f939
--- /dev/null
+++ b/installer/db410c/flash-all-aosp.sh
@@ -0,0 +1,51 @@
+#!/bin/sh
+
+INSTALLER_DIR="`dirname ${0}`"
+
+# for cases that don't run "lunch db410c-userdebug"
+if [ -z "${ANDROID_BUILD_TOP}" ]; then
+ ANDROID_BUILD_TOP=${INSTALLER_DIR}/../../../../../
+ ANDROID_PRODUCT_OUT="${ANDROID_BUILD_TOP}/out/target/product/db410c"
+fi
+
+if [ ! -d "${ANDROID_PRODUCT_OUT}" ]; then
+ echo "error in locating out directory, check if it exist"
+ exit
+fi
+
+echo "android out dir:${ANDROID_PRODUCT_OUT}"
+
+# Flash Bootloader firmware files
+fastboot flash partition "${INSTALLER_DIR}"/gpt_both0.bin
+fastboot flash hyp "${INSTALLER_DIR}"/hyp.mbn
+fastboot flash modem "${INSTALLER_DIR}"/NON-HLOS.bin
+fastboot flash rpm "${INSTALLER_DIR}"/rpm.mbn
+fastboot flash sbl1 "${INSTALLER_DIR}"/sbl1.mbn
+fastboot flash tz "${INSTALLER_DIR}"/tz.mbn
+fastboot flash aboot "${INSTALLER_DIR}"/emmc_appsboot.mbn
+fastboot flash cdt "${INSTALLER_DIR}"/sbc_1.0_8016.bin
+
+# Android (for some reasons) have bak partition with duplicate..
+fastboot flash sbl1bak "${INSTALLER_DIR}"/sbl1.mbn
+fastboot flash hypbak "${INSTALLER_DIR}"/hyp.mbn
+fastboot flash rpmbak "${INSTALLER_DIR}"/rpm.mbn
+fastboot flash tzbak "${INSTALLER_DIR}"/tz.mbn
+fastboot flash abootbak "${INSTALLER_DIR}"/emmc_appsboot.mbn
+
+# Erase AOSP partition images (not sure if we need to do that explicitly)
+fastboot erase boot
+fastboot erase recovery
+fastboot erase system
+fastboot erase userdata
+fastboot erase cache
+fastboot erase devinfo
+fastboot erase persist
+fastboot erase sec
+
+# Flash AOSP images
+fastboot reboot-bootloader
+fastboot flash system "${ANDROID_PRODUCT_OUT}"/system.img
+fastboot flash cache "${ANDROID_PRODUCT_OUT}"/vendor.img
+fastboot flash userdata "${ANDROID_PRODUCT_OUT}"/userdata.img
+fastboot flash boot "${ANDROID_PRODUCT_OUT}"/boot.img
+fastboot reboot
diff --git a/installer/db410c/flashall b/installer/db410c/flashall
new file mode 100644
index 0000000..69c3ec4
--- /dev/null
+++ b/installer/db410c/flashall
@@ -0,0 +1,26 @@
+#!/bin/sh
+
+fastboot flash partition gpt_both0.bin
+fastboot flash hyp hyp.mbn
+fastboot flash modem NON-HLOS.bin
+fastboot flash rpm rpm.mbn
+fastboot flash sbl1 sbl1.mbn
+fastboot flash tz tz.mbn
+fastboot flash aboot emmc_appsboot.mbn
+fastboot flash cdt sbc_1.0_8016.bin
+
+# Android (for some reasons) have bak partition with duplicate..
+fastboot flash sbl1bak sbl1.mbn
+fastboot flash hypbak hyp.mbn
+fastboot flash rpmbak rpm.mbn
+fastboot flash tzbak tz.mbn
+fastboot flash abootbak emmc_appsboot.mbn
+
+fastboot erase boot
+fastboot erase recovery
+fastboot erase system
+fastboot erase userdata
+fastboot erase cache
+fastboot erase devinfo
+fastboot erase persist
+fastboot erase sec
diff --git a/installer/db410c/gpt_both0.bin b/installer/db410c/gpt_both0.bin
new file mode 100644
index 0000000..602fe4b
--- /dev/null
+++ b/installer/db410c/gpt_both0.bin
Binary files differ
diff --git a/installer/db410c/hyp.mbn b/installer/db410c/hyp.mbn
new file mode 100644
index 0000000..bc3188e
--- /dev/null
+++ b/installer/db410c/hyp.mbn
Binary files differ
diff --git a/installer/db410c/rpm.mbn b/installer/db410c/rpm.mbn
new file mode 100644
index 0000000..0dfb26a
--- /dev/null
+++ b/installer/db410c/rpm.mbn
Binary files differ
diff --git a/installer/db410c/sbc_1.0_8016.bin b/installer/db410c/sbc_1.0_8016.bin
new file mode 100644
index 0000000..26c44b8
--- /dev/null
+++ b/installer/db410c/sbc_1.0_8016.bin
Binary files differ
diff --git a/installer/db410c/sbl1.mbn b/installer/db410c/sbl1.mbn
new file mode 100644
index 0000000..f16f167
--- /dev/null
+++ b/installer/db410c/sbl1.mbn
Binary files differ
diff --git a/installer/db410c/tz.mbn b/installer/db410c/tz.mbn
new file mode 100644
index 0000000..dd54dff
--- /dev/null
+++ b/installer/db410c/tz.mbn
Binary files differ
diff --git a/pixel3_mainline/BoardConfig.mk b/pixel3_mainline/BoardConfig.mk
index 03fce75..03fe9ca 100644
--- a/pixel3_mainline/BoardConfig.mk
+++ b/pixel3_mainline/BoardConfig.mk
@@ -8,7 +8,15 @@ TARGET_BOARD_PLATFORM := pixel3_mainline
BOARD_BOOTIMAGE_PARTITION_SIZE := 0x04000000
BOARD_USERDATAIMAGE_PARTITION_SIZE := 10737418240
BOARD_FLASH_BLOCK_SIZE := 131072
+TARGET_COPY_OUT_SYSTEM_EXT := system_ext
+BOARD_SYSTEM_EXTIMAGE_FILE_SYSTEM_TYPE := ext4
+BOARD_USES_METADATA_PARTITION := true
+
# Super partition
+TARGET_USE_DYNAMIC_PARTITIONS := true
+BOARD_BUILD_SUPER_IMAGE_BY_DEFAULT := true
+BOARD_SUPER_PARTITION_GROUPS := db_dynamic_partitions
+BOARD_DB_DYNAMIC_PARTITIONS_PARTITION_LIST := system vendor system_ext
BOARD_SUPER_PARTITION_SIZE := 2952790016
BOARD_DB_DYNAMIC_PARTITIONS_SIZE := 2952790016
BOARD_SUPER_PARTITION_METADATA_DEVICE := system_b
diff --git a/pixel3_mainline/device.mk b/pixel3_mainline/device.mk
index aab118b..0b82ebb 100644
--- a/pixel3_mainline/device.mk
+++ b/pixel3_mainline/device.mk
@@ -18,6 +18,11 @@
# setup dalvik vm configs
$(call inherit-product, frameworks/native/build/phone-xhdpi-2048-dalvik-heap.mk)
+# Dynamic partitions
+PRODUCT_BUILD_SUPER_PARTITION := true
+PRODUCT_USE_DYNAMIC_PARTITIONS := true
+PRODUCT_USE_DYNAMIC_PARTITION_SIZE :=true
+
PRODUCT_COPY_FILES := \
device/linaro/dragonboard/fstab.ramdisk.common:$(TARGET_COPY_OUT_RAMDISK)/fstab.pixel3_mainline \
device/linaro/dragonboard/fstab.ramdisk.common:$(TARGET_COPY_OUT_VENDOR)/etc/fstab.pixel3_mainline \
@@ -28,3 +33,6 @@ PRODUCT_COPY_FILES := \
# Build generic Audio HAL
PRODUCT_PACKAGES := audio.primary.pixel3_mainline
+
+# Copy firmware files
+$(call inherit-product-if-exists, device/linaro/dragonboard/db845c/firmware/device.mk)
diff --git a/sepolicy/file_contexts b/sepolicy/file_contexts
index 81edb8c..263b326 100644
--- a/sepolicy/file_contexts
+++ b/sepolicy/file_contexts
@@ -4,6 +4,7 @@
/dev/dri/renderD128 u:object_r:gpu_device:s0
/dev/ttyMSM0 u:object_r:console_device:s0
+/sys/devices/platform/soc/1a00000.mdss u:object_r:sysfs_gpu:s0
/sys/devices/platform/soc/ae00000.mdss u:object_r:sysfs_gpu:s0
/sys/devices/platform/soc/c440000.spmi/spmi-0/0-00/c440000.spmi:pmic@0:rtc@6000/rtc u:object_r:sysfs_rtc:s0
diff --git a/sepolicy/genfs_contexts b/sepolicy/genfs_contexts
index 0816df9..54103ad 100644
--- a/sepolicy/genfs_contexts
+++ b/sepolicy/genfs_contexts
@@ -1,3 +1,4 @@
+genfscon sysfs /devices/platform/soc/1a00000.mdss u:object_r:sysfs_gpu:s0
genfscon sysfs /devices/platform/soc/ae00000.mdss u:object_r:sysfs_gpu:s0
genfscon sysfs /devices/platform/soc/c440000.spmi/spmi-0/0-00/c440000.spmi:pmic@0:rtc@6000 u:object_r:sysfs_rtc:s0