Commit 60ea7fa3df9a734448a3e0252e1dcbda801ad1ac
0 parents
Exists in
master
and in
1 other branch
Embedian Android Oreo O8.1.0_r14 patch support for SMARC-iMX8M
Showing 56 changed files with 3036 additions and 0 deletions Inline Diff
- .gitignore
- MODULE_LICENSE_APACHE2
- NOTICE
- common/EmbPathConfig.mk
- imx8/AndroidProducts.mk
- imx8/etc/ota.conf
- imx8/init.recovery.freescale.rc
- imx8/smarc_mx8m.mk
- imx8/smarc_mx8m_drm.mk
- imx8/vendorsetup.sh
- scripts/install.sh
- scripts/platform/bt/vnd_smarc_mx8m.txt
- scripts/platform/build/make.git/0001-core-Makefile-avoid-referring-PRODUCT_MANUFACTURER-i.patch
- scripts/platform/vendor/embedian/i2c-tools.git/0001-fix-i2c-tools-build-with-Android.patch
- scripts/platform/vendor/embedian/imx-mkimage.git/0001-smarc-imx8m-add-preliminary-support.patch
- scripts/platform/vendor/nxp-opensource/imx.git/0001-embedian-added-support-sgtl5000-codec.patch
- scripts/sh/smarc-mksdcard.sh
- smarc_mx8m/AndroidBoard.mk
- smarc_mx8m/AndroidTee.mk
- smarc_mx8m/AndroidUboot.mk
- smarc_mx8m/BoardConfig.mk
- smarc_mx8m/app_whitelist.xml
- smarc_mx8m/audio_effects.conf
- smarc_mx8m/audio_policy_configuration.xml
- smarc_mx8m/audio_policy_configuration_drm.xml
- smarc_mx8m/bluetooth/bdroid_buildcfg.h
- smarc_mx8m/build_id.mk
- smarc_mx8m/compatibility_matrix.xml
- smarc_mx8m/fstab-f2fs.freescale
- smarc_mx8m/fstab.freescale
- smarc_mx8m/init.freescale.emmc.rc
- smarc_mx8m/init.freescale.sd.rc
- smarc_mx8m/init.imx8mq.drm.rc
- smarc_mx8m/init.imx8mq.rc
- smarc_mx8m/init.rc
- smarc_mx8m/init.usb.rc
- smarc_mx8m/manifest.xml
- smarc_mx8m/overlay/frameworks/base/core/res/res/drawable-nodpi/default_wallpaper.png
- smarc_mx8m/overlay/frameworks/base/core/res/res/drawable-sw600dp-nodpi/default_wallpaper.png
- smarc_mx8m/overlay/frameworks/base/core/res/res/drawable-sw720dp-nodpi/default_wallpaper.png
- smarc_mx8m/overlay/frameworks/base/core/res/res/values/config.xml
- smarc_mx8m/overlay/frameworks/base/core/res/res/xml/power_profile.xml
- smarc_mx8m/overlay/frameworks/base/packages/SettingsProvider/res/values/defaults.xml
- smarc_mx8m/overlay/frameworks/base/packages/SystemUI/res/values/dimens.xml
- smarc_mx8m/overlay/packages/apps/Settings/res/values/bools.xml
- smarc_mx8m/overlay/packages/apps/Settings/res/values/config.xml
- smarc_mx8m/overlay/packages/apps/Settings/res/values/strings.xml
- smarc_mx8m/required_hardware.xml
- smarc_mx8m/seccomp/mediacodec-seccomp.policy
- smarc_mx8m/seccomp/mediaextractor-seccomp.policy
- smarc_mx8m/sepolicy/file_contexts
- smarc_mx8m/sepolicy_drm/mediadrmserver.te
- smarc_mx8m/sepolicy_drm/netd.te
- smarc_mx8m/sepolicy_drm/shell.te
- smarc_mx8m/sepolicy_drm/tee.te
- smarc_mx8m/ueventd.freescale.rc
.gitignore
File was created | 1 | .* | |
2 | !.gitignore | ||
3 | *.o | ||
4 |
NOTICE
File was created | 1 | ||
2 | Copyright (C) 2008-2015 The Android Open Source Project | ||
3 | Copyright (C) 2011-2016 Freescale Semiconductor, Inc. | ||
4 | Copyright 2017-2018 NXP | ||
5 | |||
6 | Licensed under the Apache License, Version 2.0 (the "License"); | ||
7 | you may not use this file except in compliance with the License. | ||
8 | |||
9 | Unless required by applicable law or agreed to in writing, software | ||
10 | distributed under the License is distributed on an "AS IS" BASIS, | ||
11 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | ||
12 | See the License for the specific language governing permissions and | ||
13 | limitations under the License. | ||
14 | |||
15 | |||
16 | Apache License | ||
17 | Version 2.0, January 2004 | ||
18 | http://www.apache.org/licenses/ | ||
19 | |||
20 | TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION | ||
21 | |||
22 | 1. Definitions. | ||
23 | |||
24 | "License" shall mean the terms and conditions for use, reproduction, | ||
25 | and distribution as defined by Sections 1 through 9 of this document. | ||
26 | |||
27 | "Licensor" shall mean the copyright owner or entity authorized by | ||
28 | the copyright owner that is granting the License. | ||
29 | |||
30 | "Legal Entity" shall mean the union of the acting entity and all | ||
31 | other entities that control, are controlled by, or are under common | ||
32 | control with that entity. For the purposes of this definition, | ||
33 | "control" means (i) the power, direct or indirect, to cause the | ||
34 | direction or management of such entity, whether by contract or | ||
35 | otherwise, or (ii) ownership of fifty percent (50%) or more of the | ||
36 | outstanding shares, or (iii) beneficial ownership of such entity. | ||
37 | |||
38 | "You" (or "Your") shall mean an individual or Legal Entity | ||
39 | exercising permissions granted by this License. | ||
40 | |||
41 | "Source" form shall mean the preferred form for making modifications, | ||
42 | including but not limited to software source code, documentation | ||
43 | source, and configuration files. | ||
44 | |||
45 | "Object" form shall mean any form resulting from mechanical | ||
46 | transformation or translation of a Source form, including but | ||
47 | not limited to compiled object code, generated documentation, | ||
48 | and conversions to other media types. | ||
49 | |||
50 | "Work" shall mean the work of authorship, whether in Source or | ||
51 | Object form, made available under the License, as indicated by a | ||
52 | copyright notice that is included in or attached to the work | ||
53 | (an example is provided in the Appendix below). | ||
54 | |||
55 | "Derivative Works" shall mean any work, whether in Source or Object | ||
56 | form, that is based on (or derived from) the Work and for which the | ||
57 | editorial revisions, annotations, elaborations, or other modifications | ||
58 | represent, as a whole, an original work of authorship. For the purposes | ||
59 | of this License, Derivative Works shall not include works that remain | ||
60 | separable from, or merely link (or bind by name) to the interfaces of, | ||
61 | the Work and Derivative Works thereof. | ||
62 | |||
63 | "Contribution" shall mean any work of authorship, including | ||
64 | the original version of the Work and any modifications or additions | ||
65 | to that Work or Derivative Works thereof, that is intentionally | ||
66 | submitted to Licensor for inclusion in the Work by the copyright owner | ||
67 | or by an individual or Legal Entity authorized to submit on behalf of | ||
68 | the copyright owner. For the purposes of this definition, "submitted" | ||
69 | means any form of electronic, verbal, or written communication sent | ||
70 | to the Licensor or its representatives, including but not limited to | ||
71 | communication on electronic mailing lists, source code control systems, | ||
72 | and issue tracking systems that are managed by, or on behalf of, the | ||
73 | Licensor for the purpose of discussing and improving the Work, but | ||
74 | excluding communication that is conspicuously marked or otherwise | ||
75 | designated in writing by the copyright owner as "Not a Contribution." | ||
76 | |||
77 | "Contributor" shall mean Licensor and any individual or Legal Entity | ||
78 | on behalf of whom a Contribution has been received by Licensor and | ||
79 | subsequently incorporated within the Work. | ||
80 | |||
81 | 2. Grant of Copyright License. Subject to the terms and conditions of | ||
82 | this License, each Contributor hereby grants to You a perpetual, | ||
83 | worldwide, non-exclusive, no-charge, royalty-free, irrevocable | ||
84 | copyright license to reproduce, prepare Derivative Works of, | ||
85 | publicly display, publicly perform, sublicense, and distribute the | ||
86 | Work and such Derivative Works in Source or Object form. | ||
87 | |||
88 | 3. Grant of Patent License. Subject to the terms and conditions of | ||
89 | this License, each Contributor hereby grants to You a perpetual, | ||
90 | worldwide, non-exclusive, no-charge, royalty-free, irrevocable | ||
91 | (except as stated in this section) patent license to make, have made, | ||
92 | use, offer to sell, sell, import, and otherwise transfer the Work, | ||
93 | where such license applies only to those patent claims licensable | ||
94 | by such Contributor that are necessarily infringed by their | ||
95 | Contribution(s) alone or by combination of their Contribution(s) | ||
96 | with the Work to which such Contribution(s) was submitted. If You | ||
97 | institute patent litigation against any entity (including a | ||
98 | cross-claim or counterclaim in a lawsuit) alleging that the Work | ||
99 | or a Contribution incorporated within the Work constitutes direct | ||
100 | or contributory patent infringement, then any patent licenses | ||
101 | granted to You under this License for that Work shall terminate | ||
102 | as of the date such litigation is filed. | ||
103 | |||
104 | 4. Redistribution. You may reproduce and distribute copies of the | ||
105 | Work or Derivative Works thereof in any medium, with or without | ||
106 | modifications, and in Source or Object form, provided that You | ||
107 | meet the following conditions: | ||
108 | |||
109 | (a) You must give any other recipients of the Work or | ||
110 | Derivative Works a copy of this License; and | ||
111 | |||
112 | (b) You must cause any modified files to carry prominent notices | ||
113 | stating that You changed the files; and | ||
114 | |||
115 | (c) You must retain, in the Source form of any Derivative Works | ||
116 | that You distribute, all copyright, patent, trademark, and | ||
117 | attribution notices from the Source form of the Work, | ||
118 | excluding those notices that do not pertain to any part of | ||
119 | the Derivative Works; and | ||
120 | |||
121 | (d) If the Work includes a "NOTICE" text file as part of its | ||
122 | distribution, then any Derivative Works that You distribute must | ||
123 | include a readable copy of the attribution notices contained | ||
124 | within such NOTICE file, excluding those notices that do not | ||
125 | pertain to any part of the Derivative Works, in at least one | ||
126 | of the following places: within a NOTICE text file distributed | ||
127 | as part of the Derivative Works; within the Source form or | ||
128 | documentation, if provided along with the Derivative Works; or, | ||
129 | within a display generated by the Derivative Works, if and | ||
130 | wherever such third-party notices normally appear. The contents | ||
131 | of the NOTICE file are for informational purposes only and | ||
132 | do not modify the License. You may add Your own attribution | ||
133 | notices within Derivative Works that You distribute, alongside | ||
134 | or as an addendum to the NOTICE text from the Work, provided | ||
135 | that such additional attribution notices cannot be construed | ||
136 | as modifying the License. | ||
137 | |||
138 | You may add Your own copyright statement to Your modifications and | ||
139 | may provide additional or different license terms and conditions | ||
140 | for use, reproduction, or distribution of Your modifications, or | ||
141 | for any such Derivative Works as a whole, provided Your use, | ||
142 | reproduction, and distribution of the Work otherwise complies with | ||
143 | the conditions stated in this License. | ||
144 | |||
145 | 5. Submission of Contributions. Unless You explicitly state otherwise, | ||
146 | any Contribution intentionally submitted for inclusion in the Work | ||
147 | by You to the Licensor shall be under the terms and conditions of | ||
148 | this License, without any additional terms or conditions. | ||
149 | Notwithstanding the above, nothing herein shall supersede or modify | ||
150 | the terms of any separate license agreement you may have executed | ||
151 | with Licensor regarding such Contributions. | ||
152 | |||
153 | 6. Trademarks. This License does not grant permission to use the trade | ||
154 | names, trademarks, service marks, or product names of the Licensor, | ||
155 | except as required for reasonable and customary use in describing the | ||
156 | origin of the Work and reproducing the content of the NOTICE file. | ||
157 | |||
158 | 7. Disclaimer of Warranty. Unless required by applicable law or | ||
159 | agreed to in writing, Licensor provides the Work (and each | ||
160 | Contributor provides its Contributions) on an "AS IS" BASIS, | ||
161 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or | ||
162 | implied, including, without limitation, any warranties or conditions | ||
163 | of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A | ||
164 | PARTICULAR PURPOSE. You are solely responsible for determining the | ||
165 | appropriateness of using or redistributing the Work and assume any | ||
166 | risks associated with Your exercise of permissions under this License. | ||
167 | |||
168 | 8. Limitation of Liability. In no event and under no legal theory, | ||
169 | whether in tort (including negligence), contract, or otherwise, | ||
170 | unless required by applicable law (such as deliberate and grossly | ||
171 | negligent acts) or agreed to in writing, shall any Contributor be | ||
172 | liable to You for damages, including any direct, indirect, special, | ||
173 | incidental, or consequential damages of any character arising as a | ||
174 | result of this License or out of the use or inability to use the | ||
175 | Work (including but not limited to damages for loss of goodwill, | ||
176 | work stoppage, computer failure or malfunction, or any and all | ||
177 | other commercial damages or losses), even if such Contributor | ||
178 | has been advised of the possibility of such damages. | ||
179 | |||
180 | 9. Accepting Warranty or Additional Liability. While redistributing | ||
181 | the Work or Derivative Works thereof, You may choose to offer, | ||
182 | and charge a fee for, acceptance of support, warranty, indemnity, | ||
183 | or other liability obligations and/or rights consistent with this | ||
184 | License. However, in accepting such obligations, You may act only | ||
185 | on Your own behalf and on Your sole responsibility, not on behalf | ||
186 | of any other Contributor, and only if You agree to indemnify, | ||
187 | defend, and hold each Contributor harmless for any liability | ||
188 | incurred by, or claims asserted against, such Contributor by reason | ||
189 | of your accepting any such warranty or additional liability. | ||
190 | |||
191 | END OF TERMS AND CONDITIONS | ||
192 | |||
193 |
common/EmbPathConfig.mk
File was created | 1 | # config.mk | |
2 | # | ||
3 | # Product-specific compile-time definitions. | ||
4 | # | ||
5 | |||
6 | IMX_MKIMAGE_PATH := vendor/embedian | ||
7 | KERNEL_IMX_PATH := vendor/embedian | ||
8 | UBOOT_IMX_PATH := vendor/embedian | ||
9 |
imx8/AndroidProducts.mk
File was created | 1 | #Copyright (C) 2008 The Android Open Source Project | |
2 | # | ||
3 | # Licensed under the Apache License, Version 2.0 (the "License"); | ||
4 | # you may not use this file except in compliance with the License. | ||
5 | # You may obtain a copy of the License at | ||
6 | # | ||
7 | # http://www.apache.org/licenses/LICENSE-2.0 | ||
8 | # | ||
9 | # Unless required by applicable law or agreed to in writing, software | ||
10 | # distributed under the License is distributed on an "AS IS" BASIS, | ||
11 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | ||
12 | # See the License for the specific language governing permissions and | ||
13 | # limitations under the License. | ||
14 | # | ||
15 | |||
16 | # | ||
17 | # This file should set PRODUCT_MAKEFILES to a list of product makefiles | ||
18 | # to expose to the build system. LOCAL_DIR will already be set to | ||
19 | # the directory containing this file. | ||
20 | # | ||
21 | # This file may not rely on the value of any variable other than | ||
22 | # LOCAL_DIR; do not use any conditionals, and do not look up the | ||
23 | # value of any variable that isn't set in this file or in a file that | ||
24 | # it includes. | ||
25 | # | ||
26 | |||
27 | # Copied from build/target/product/AndroidProducts.mk | ||
28 | |||
29 | PRODUCT_MAKEFILES := \ | ||
30 | $(LOCAL_DIR)/smarc_mx8m.mk \ | ||
31 | $(LOCAL_DIR)/smarc_mx8m_drm.mk \ | ||
32 |
imx8/etc/ota.conf
File was created | 1 | server=10.192.224.178 | |
2 | port=10888 | ||
3 | ota_folder_suffix=oreo | ||
4 |
imx8/init.recovery.freescale.rc
File was created | 1 | import init.${ro.hardware}.${ro.boot.storage_type}.rc | |
2 | on init | ||
3 | # disable cursor blink for fbcon, if no splash screen support | ||
4 | write /sys/class/graphics/fbcon/cursor_blink 0 | ||
5 | |||
6 | mkdir /config 0500 root root | ||
7 | # mount the configfs on /config | ||
8 | mount configfs none /config mode=0755 | ||
9 | mkdir /config/usb_gadget/g1 | ||
10 | write /config/usb_gadget/g1/idProduct 0x4ee7 | ||
11 | write /config/usb_gadget/g1/idVendor 0x18d1 | ||
12 | mkdir /config/usb_gadget/g1/configs/b.1 | ||
13 | mkdir /config/usb_gadget/g1/configs/b.1/strings/0x409 | ||
14 | write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "adb" | ||
15 | mkdir /config/usb_gadget/g1/functions/ffs.adb | ||
16 | mkdir /config/usb_gadget/g1/strings/0x409 | ||
17 | write /config/usb_gadget/g1/strings/0x409/serialnumber ${ro.serialno} | ||
18 | write /config/usb_gadget/g1/strings/0x409/manufacturer ${ro.product.manufacturer} | ||
19 | write /config/usb_gadget/g1/strings/0x409/product ${ro.product.model} | ||
20 | |||
21 | on property:sys.usb.ffs.ready=1 | ||
22 | rm /config/usb_gadget/g1/configs/b.1/f1 | ||
23 | symlink /config/usb_gadget/g1/functions/ffs.adb /config/usb_gadget/g1/configs/b.1/f1 | ||
24 | write /config/usb_gadget/g1/UDC "ci_hdrc.0" | ||
25 |
imx8/smarc_mx8m.mk
File was created | 1 | # This is a Embedian Android Reference Design platform based on SMARC-iMX8M Modules | |
2 | # It will inherit from FSL core product which in turn inherit from Google generic | ||
3 | |||
4 | -include device/fsl/common/imx_path/ImxPathConfig.mk | ||
5 | -include device/embedian/common/EmbPathConfig.mk | ||
6 | $(call inherit-product, device/fsl/imx8/imx8.mk) | ||
7 | |||
8 | ifneq ($(wildcard device/embeian/smarc_mx8m/fstab_nand.freescale),) | ||
9 | $(shell touch device/embedian/smarc_mx8m/fstab_nand.freescale) | ||
10 | endif | ||
11 | |||
12 | ifneq ($(wildcard device/embedian/smarc_mx8m/fstab.freescale),) | ||
13 | $(shell touch device/embedian/smarc_mx8m/fstab.freescale) | ||
14 | endif | ||
15 | |||
16 | # Overrides | ||
17 | TARGET_KERNEL_DEFCONF := smarcimx8m_android_defconfig | ||
18 | PRODUCT_MANUFACTURER := embedian | ||
19 | PRODUCT_NAME := smarc_mx8m | ||
20 | PRODUCT_DEVICE := smarc_mx8m | ||
21 | |||
22 | PRODUCT_FULL_TREBLE_OVERRIDE := true | ||
23 | |||
24 | PRODUCT_COPY_FILES += \ | ||
25 | device/embedian/smarc_mx8m/init.rc:root/init.freescale.rc \ | ||
26 | device/embedian/smarc_mx8m/init.imx8mq.rc:root/init.freescale.imx8mq.rc \ | ||
27 | device/embedian/smarc_mx8m/init.usb.rc:root/init.freescale.usb.rc | ||
28 | |||
29 | # Audio | ||
30 | USE_XML_AUDIO_POLICY_CONF := 1 | ||
31 | PRODUCT_COPY_FILES += \ | ||
32 | device/embedian/smarc_mx8m/audio_effects.conf:$(TARGET_COPY_OUT_VENDOR)/etc/audio_effects.conf \ | ||
33 | device/embedian/smarc_mx8m/audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_configuration.xml \ | ||
34 | frameworks/av/services/audiopolicy/config/a2dp_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/a2dp_audio_policy_configuration.xml \ | ||
35 | frameworks/av/services/audiopolicy/config/r_submix_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/r_submix_audio_policy_configuration.xml \ | ||
36 | frameworks/av/services/audiopolicy/config/usb_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/usb_audio_policy_configuration.xml \ | ||
37 | frameworks/av/services/audiopolicy/config/default_volume_tables.xml:$(TARGET_COPY_OUT_VENDOR)/etc/default_volume_tables.xml \ | ||
38 | frameworks/av/services/audiopolicy/config/audio_policy_volumes.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_volumes.xml \ | ||
39 | |||
40 | # GPU files | ||
41 | |||
42 | PRODUCT_COPY_FILES += device/embedian/smarc_mx8m/init.freescale.sd.rc:root/init.freescale.sd.rc | ||
43 | PRODUCT_COPY_FILES += device/embedian/smarc_mx8m/init.freescale.emmc.rc:root/init.freescale.emmc.rc | ||
44 | |||
45 | DEVICE_PACKAGE_OVERLAYS := device/embedian/smarc_mx8m/overlay | ||
46 | |||
47 | PRODUCT_CHARACTERISTICS := tablet | ||
48 | |||
49 | PRODUCT_AAPT_CONFIG += xlarge large tvdpi hdpi xhdpi | ||
50 | |||
51 | PRODUCT_COPY_FILES += \ | ||
52 | frameworks/native/data/etc/android.hardware.audio.output.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.audio.output.xml \ | ||
53 | frameworks/native/data/etc/android.hardware.touchscreen.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.touchscreen.xml \ | ||
54 | frameworks/native/data/etc/android.hardware.touchscreen.multitouch.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.touchscreen.multitouch.xml \ | ||
55 | frameworks/native/data/etc/android.hardware.touchscreen.multitouch.distinct.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.touchscreen.multitouch.distinct.xml \ | ||
56 | frameworks/native/data/etc/android.hardware.screen.portrait.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.screen.portrait.xml \ | ||
57 | frameworks/native/data/etc/android.hardware.screen.landscape.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.screen.landscape.xml \ | ||
58 | frameworks/native/data/etc/android.software.app_widgets.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.app_widgets.xml \ | ||
59 | frameworks/native/data/etc/android.software.voice_recognizers.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.voice_recognizers.xml \ | ||
60 | frameworks/native/data/etc/android.software.backup.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.backup.xml \ | ||
61 | frameworks/native/data/etc/android.software.print.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.print.xml \ | ||
62 | frameworks/native/data/etc/android.software.device_admin.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.device_admin.xml \ | ||
63 | frameworks/native/data/etc/android.software.managed_users.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.managed_users.xml \ | ||
64 | frameworks/native/data/etc/android.hardware.wifi.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.xml \ | ||
65 | frameworks/native/data/etc/android.hardware.wifi.direct.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.direct.xml \ | ||
66 | frameworks/native/data/etc/android.software.sip.voip.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.sip.voip.xml \ | ||
67 | frameworks/native/data/etc/android.hardware.usb.host.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.usb.host.xml \ | ||
68 | frameworks/native/data/etc/android.hardware.usb.accessory.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.usb.accessory.xml \ | ||
69 | frameworks/native/data/etc/android.hardware.camera.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.xml \ | ||
70 | frameworks/native/data/etc/android.hardware.camera.front.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.front.xml \ | ||
71 | frameworks/native/data/etc/android.hardware.ethernet.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.ethernet.xml \ | ||
72 | frameworks/native/data/etc/android.hardware.vulkan.version-1_0_3.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.vulkan.version-1_0_3.xml \ | ||
73 | frameworks/native/data/etc/android.hardware.vulkan.level-0.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.vulkan.level-0.xml \ | ||
74 | frameworks/native/data/etc/android.hardware.bluetooth_le.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.bluetooth_le.xml \ | ||
75 | device/embedian/smarc_mx8m/required_hardware.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/required_hardware.xml \ | ||
76 | |||
77 | PRODUCT_COPY_FILES += \ | ||
78 | $(FSL_PROPRIETARY_PATH)/fsl-proprietary/gpu-viv/lib64/egl/egl.cfg:$(TARGET_COPY_OUT_VENDOR)/lib64/egl/egl.cfg \ | ||
79 | $(FSL_PROPRIETARY_PATH)/fsl-proprietary/gpu-viv/lib/egl/egl.cfg:$(TARGET_COPY_OUT_VENDOR)/lib/egl/egl.cfg | ||
80 | |||
81 | # HWC2 HAL | ||
82 | PRODUCT_PACKAGES += \ | ||
83 | android.hardware.graphics.composer@2.1-impl \ | ||
84 | android.hardware.graphics.composer@2.1-service | ||
85 | |||
86 | # Gralloc HAL | ||
87 | PRODUCT_PACKAGES += \ | ||
88 | android.hardware.graphics.mapper@2.0-impl \ | ||
89 | android.hardware.graphics.allocator@2.0-impl \ | ||
90 | android.hardware.graphics.allocator@2.0-service | ||
91 | |||
92 | # RenderScript HAL | ||
93 | PRODUCT_PACKAGES += \ | ||
94 | android.hardware.renderscript@1.0-impl | ||
95 | |||
96 | PRODUCT_PACKAGES += \ | ||
97 | libEGL_VIVANTE \ | ||
98 | libGLESv1_CM_VIVANTE \ | ||
99 | libGLESv2_VIVANTE \ | ||
100 | gralloc_viv.imx8 \ | ||
101 | libGAL \ | ||
102 | libGLSLC \ | ||
103 | libVSC \ | ||
104 | libg2d \ | ||
105 | libgpuhelper \ | ||
106 | libSPIRV_viv \ | ||
107 | libvulkan_VIVANTE \ | ||
108 | vulkan.imx8 \ | ||
109 | gatekeeper.imx8 | ||
110 | |||
111 | PRODUCT_PACKAGES += \ | ||
112 | Launcher3 | ||
113 | |||
114 | PRODUCT_PACKAGES += \ | ||
115 | android.hardware.audio@2.0-impl \ | ||
116 | android.hardware.audio@2.0-service \ | ||
117 | android.hardware.audio.effect@2.0-impl \ | ||
118 | android.hardware.power@1.0-impl \ | ||
119 | android.hardware.power@1.0-service \ | ||
120 | android.hardware.light@2.0-impl \ | ||
121 | android.hardware.light@2.0-service | ||
122 | |||
123 | # imx8 sensor HAL libs. | ||
124 | #PRODUCT_PACKAGES += \ | ||
125 | # android.hardware.sensors@1.0-impl \ | ||
126 | # android.hardware.sensors@1.0-service \ | ||
127 | # sensors.imx8 | ||
128 | |||
129 | # Usb HAL | ||
130 | PRODUCT_PACKAGES += \ | ||
131 | android.hardware.usb@1.1-service.imx | ||
132 | |||
133 | # Bluetooth HAL | ||
134 | PRODUCT_PACKAGES += \ | ||
135 | android.hardware.bluetooth@1.0-impl \ | ||
136 | android.hardware.bluetooth@1.0-service | ||
137 | |||
138 | # WiFi HAL | ||
139 | PRODUCT_PACKAGES += \ | ||
140 | android.hardware.wifi@1.0-service \ | ||
141 | wifilogd \ | ||
142 | wificond | ||
143 | |||
144 | # Qcom WiFi Firmware | ||
145 | PRODUCT_COPY_FILES += \ | ||
146 | external/qca-linux/1CQ/nvm_tlv_3.2.bin:vendor/firmware/nvm_tlv_3.2.bin \ | ||
147 | external/qca-linux/1CQ/board.bin:vendor/firmware/ath10k/QCA6174/hw3.0/board.bin \ | ||
148 | external/linux-firmware/qca/rampatch_00130302.bin:vendor/firmware/rampatch_tlv_3.2.tlv \ | ||
149 | external/linux-firmware/ath10k/QCA6174/hw3.0/board.bin:vendor/firmware/ath10k/QCA6174/hw3.0/board.bin \ | ||
150 | external/linux-firmware/ath10k/QCA6174/hw3.0/board-2.bin:vendor/firmware/ath10k/QCA6174/hw3.0/board-2.bin \ | ||
151 | external/linux-firmware/ath10k/QCA6174/hw3.0/firmware-4.bin:vendor/firmware/ath10k/QCA6174/hw3.0/firmware-4.bin | ||
152 | |||
153 | # Keymaster HAL | ||
154 | PRODUCT_PACKAGES += \ | ||
155 | android.hardware.keymaster@3.0-impl \ | ||
156 | android.hardware.keymaster@3.0-service | ||
157 | |||
158 | # DRM HAL | ||
159 | TARGET_ENABLE_MEDIADRM_64 := true | ||
160 | PRODUCT_PACKAGES += \ | ||
161 | android.hardware.drm@1.0-impl \ | ||
162 | android.hardware.drm@1.0-service | ||
163 | |||
164 | # new gatekeeper HAL | ||
165 | PRODUCT_PACKAGES += \ | ||
166 | android.hardware.gatekeeper@1.0-impl \ | ||
167 | android.hardware.gatekeeper@1.0-service | ||
168 | |||
169 | ifneq ($(BUILD_TARGET_FS),ubifs) | ||
170 | PRODUCT_PROPERTY_OVERRIDES += \ | ||
171 | ro.internel.storage_size=/sys/block/mmcblk0/size \ | ||
172 | ro.frp.pst=/dev/block/by-name/presistdata | ||
173 | endif | ||
174 | |||
175 | # ro.product.first_api_level indicates the first api level the device has commercially launched on. | ||
176 | PRODUCT_PROPERTY_OVERRIDES += \ | ||
177 | ro.product.first_api_level=26 | ||
178 | |||
179 | PRODUCT_PACKAGES += \ | ||
180 | libg1 \ | ||
181 | libhantro \ | ||
182 | libcodec | ||
183 | |||
184 |
imx8/smarc_mx8m_drm.mk
File was created | 1 | # This is a FSL Android Reference Design platform based on i.MX8MQ board | |
2 | # It will inherit from FSL core product which in turn inherit from Google generic | ||
3 | |||
4 | PRODUCT_IMX_DRM := true | ||
5 | |||
6 | # copy drm specific files before inherit smarc_mx8m.mk, otherwise copy is ignored | ||
7 | PRODUCT_COPY_FILES += \ | ||
8 | device/embedian/smarc_mx8m/audio_policy_configuration_drm.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_configuration.xml \ | ||
9 | device/embedian/smarc_mx8m/init.imx8mq.rc:root/init.freescale.imx8mq.main.rc \ | ||
10 | device/embedian/smarc_mx8m/init.imx8mq.drm.rc:root/init.freescale.imx8mq.rc \ | ||
11 | |||
12 | |||
13 | $(call inherit-product, $(TOPDIR)device/fsl/imx8/optee-packages.mk) | ||
14 | $(call inherit-product, $(TOPDIR)device/embedian/imx8/smarc_mx8m.mk) | ||
15 | |||
16 | # Overrides | ||
17 | TARGET_KERNEL_DEFCONF := smarcimx8m_android_drm_defconfig | ||
18 | PRODUCT_NAME := smarc_mx8m_drm | ||
19 | PRODUCT_MANUFACTURER := embedian | ||
20 | PRODUCT_DEVICE := smarc_mx8m | ||
21 | |||
22 | CFG_SECURE_DATA_PATH ?= y | ||
23 | CFG_TEE_SDP_MEM_BASE := 0xcc000000 | ||
24 | CFG_TEE_SDP_MEM_SIZE := 0x02000000 | ||
25 | DECRYPTED_BUFFER_START := $(CFG_TEE_SDP_MEM_BASE) | ||
26 | DECRYPTED_BUFFER_LEN := $(CFG_TEE_SDP_MEM_SIZE) | ||
27 | DECODED_BUFFER_START := 0xCE000000 | ||
28 | DECODED_BUFFER_LEN := 0x30000000 | ||
29 | |||
30 | # Exoplayer | ||
31 | PRODUCT_PACKAGES += \ | ||
32 | exoplayer \ | ||
33 | |||
34 | # Playready | ||
35 | PRODUCT_COPY_FILES += \ | ||
36 | vendor/nxp/drm_artifacts/playready/Samples/devcert.dat:$(TARGET_COPY_OUT_VENDOR)/playready/devcert.dat \ | ||
37 | vendor/nxp/drm_artifacts/playready/Samples/priv.dat:$(TARGET_COPY_OUT_VENDOR)/playready/priv.dat \ | ||
38 | vendor/nxp/drm_artifacts/playready/ta/82dbae9c-9ce0-47e0-a1cb4048cfdb84aa.ta:$(TARGET_OUT)/system/lib/optee_armtz/82dbae9c-9ce0-47e0-a1cb4048cfdb84aa.ta \ | ||
39 | vendor/nxp/drm_artifacts/playready/bgroupcert.dat:$(TARGET_COPY_OUT_VENDOR)/playready/bgroupcert.dat \ | ||
40 | vendor/nxp/drm_artifacts/playready/zgpriv_protected.dat:$(TARGET_COPY_OUT_VENDOR)/playready/zgpriv_protected.dat \ | ||
41 | vendor/nxp/drm_artifacts/playready/optee_playready_test:$(TARGET_OUT)/system/bin/optee_playready_test | ||
42 | |||
43 | ifneq ($(CFG_BUILD_DRM_FROM_SOURCES),y) | ||
44 | PRODUCT_COPY_FILES += \ | ||
45 | vendor/nxp/drm_artifacts/playready/libdrmplayreadyplugin.so:$(TARGET_OUT)/vendor/lib64/mediadrm/libdrmplayreadyplugin.so | ||
46 | endif | ||
47 | |||
48 | ifneq ($(CFG_BUILD_DRM_FROM_SOURCES),y) | ||
49 | # Widevine | ||
50 | PRODUCT_COPY_FILES += \ | ||
51 | vendor/nxp/drm_artifacts/widevine/lib/liboemcrypto.so:$(TARGET_COPY_OUT_VENDOR)/lib/liboemcrypto.so \ | ||
52 | vendor/nxp/drm_artifacts/widevine/lib/libwvdrmengine.so:$(TARGET_COPY_OUT_VENDOR)/lib/mediadrm/libwvdrmengine.so \ | ||
53 | vendor/nxp/drm_artifacts/widevine/lib/libvtswidevine.so:$(TARGET_COPY_OUT_VENDOR)/lib/drm-vts-test-libs/libvtswidevine.so \ | ||
54 | vendor/nxp/drm_artifacts/widevine/lib64/liboemcrypto.so:$(TARGET_COPY_OUT_VENDOR)/lib64/liboemcrypto.so \ | ||
55 | vendor/nxp/drm_artifacts/widevine/lib64/libwvdrmengine.so:$(TARGET_COPY_OUT_VENDOR)/lib64/mediadrm/libwvdrmengine.so \ | ||
56 | vendor/nxp/drm_artifacts/widevine/lib64/libvtswidevine.so:$(TARGET_COPY_OUT_VENDOR)/lib64/drm-vts-test-libs/libvtswidevine.so \ | ||
57 | vendor/nxp/drm_artifacts/widevine/ta/706f6574-7765-6469-77656e6942656665.ta:$(TARGET_OUT)/system/lib/optee_armtz/706f6574-7765-6469-77656e6942656665.ta | ||
58 | endif | ||
59 |
imx8/vendorsetup.sh
File was created | 1 | add_lunch_combo smarc_mx8m-eng | |
2 | add_lunch_combo smarc_mx8m-userdebug | ||
3 | add_lunch_combo smarc_mx8m_drm-eng | ||
4 | add_lunch_combo smarc_mx8m_drm-userdebug | ||
5 |
scripts/install.sh
File was created | 1 | #!/bin/bash | |
2 | # | ||
3 | # install | ||
4 | # | ||
5 | # This script must be run from the Android main directory. | ||
6 | # embedian/install must be at ~/o810_130_8m_build | ||
7 | # | ||
8 | # Embedian SMARC-iMX8M patches for Android 8.1.0 1.3.0 8M | ||
9 | |||
10 | set -e | ||
11 | #set -x | ||
12 | |||
13 | SCRIPT_NAME=${0##*/} | ||
14 | readonly SCRIPT_VERSION="0.1" | ||
15 | |||
16 | #### Exports Variables #### | ||
17 | #### global variables #### | ||
18 | readonly ABSOLUTE_FILENAME=$(readlink -e "$0") | ||
19 | readonly ABSOLUTE_DIRECTORY=$(dirname ${ABSOLUTE_FILENAME}) | ||
20 | readonly SCRIPT_POINT=${ABSOLUTE_DIRECTORY} | ||
21 | readonly SCRIPT_START_DATE=$(date +%Y%m%d) | ||
22 | readonly ANDROID_DIR="${SCRIPT_POINT}/../../.." | ||
23 | |||
24 | readonly BASE_BRANCH_NAME="base_o8.1.0_1.3.0_8m" | ||
25 | |||
26 | ## git variables get from base script! | ||
27 | readonly _EXTPARAM_BRANCH="o8.1.0_1.3.0_8m-ga-smarc01" | ||
28 | |||
29 | ## dirs ## | ||
30 | readonly EMBEDIAN_PATCHS_DIR="${SCRIPT_POINT}/platform" | ||
31 | readonly EMBEDIAN_SH_DIR="${SCRIPT_POINT}/sh" | ||
32 | VENDOR_BASE_DIR=${ANDROID_DIR}/vendor/embedian | ||
33 | |||
34 | |||
35 | # print error message | ||
36 | # p1 - printing string | ||
37 | function pr_error() { | ||
38 | echo ${2} "E: $1" | ||
39 | } | ||
40 | |||
41 | # print warning message | ||
42 | # p1 - printing string | ||
43 | function pr_warning() { | ||
44 | echo ${2} "W: $1" | ||
45 | } | ||
46 | |||
47 | # print info message | ||
48 | # p1 - printing string | ||
49 | function pr_info() { | ||
50 | echo ${2} "I: $1" | ||
51 | } | ||
52 | |||
53 | # print debug message | ||
54 | # p1 - printing string | ||
55 | function pr_debug() { | ||
56 | echo ${2} "D: $1" | ||
57 | } | ||
58 | |||
59 | # test existing brang in git repo | ||
60 | # p1 - git folder | ||
61 | # p2 - branch name | ||
62 | function is_branch_exist() | ||
63 | { | ||
64 | local D="${1}" | ||
65 | local B="${2}" | ||
66 | local B_found | ||
67 | local HERE | ||
68 | |||
69 | if [ \( ! -d "${D}" \) -o \( -z "${B}" \) ]; then | ||
70 | echo false | ||
71 | return | ||
72 | fi | ||
73 | |||
74 | HERE=${PWD} | ||
75 | cd "${D}" > /dev/null | ||
76 | |||
77 | # Check branch | ||
78 | git branch 2>&1 > /dev/null | ||
79 | if [ ${?} -ne 0 ]; then | ||
80 | echo false | ||
81 | cd ${HERE} > /dev/null | ||
82 | return | ||
83 | fi | ||
84 | B_found=$(git branch | grep -w "${B}") | ||
85 | if [ -z "${B_found}" ]; then | ||
86 | echo false | ||
87 | else | ||
88 | echo true | ||
89 | fi | ||
90 | |||
91 | cd ${HERE} > /dev/null | ||
92 | return | ||
93 | } | ||
94 | |||
95 | ############### main code ############## | ||
96 | pr_info "Script version ${SCRIPT_VERSION} (g:20160527)" | ||
97 | |||
98 | # disable NXP kernel Android.mk | ||
99 | cd ${ANDROID_DIR} > /dev/null | ||
100 | mv vendor/nxp-opensource/kernel_imx/drivers/staging/greybus/tools/Android.mk vendor/nxp-opensource/kernel_imx/drivers/staging/greybus/tools/Android.mk__ | ||
101 | |||
102 | # make a copy of NXP imx-mkimage | ||
103 | cp -r vendor/nxp-opensource/imx-mkimage ${VENDOR_BASE_DIR} | ||
104 | |||
105 | pr_info "###############################" | ||
106 | pr_info "# Misc. external repositories #" | ||
107 | pr_info "###############################" | ||
108 | |||
109 | pr_info "clone ${VENDOR_BASE_DIR}/can-utils" | ||
110 | git clone https://github.com/linux-can/can-utils.git ${VENDOR_BASE_DIR}/can-utils | ||
111 | cd ${VENDOR_BASE_DIR}/can-utils > /dev/null | ||
112 | git checkout 791890542ac1ce99131f36435e72af5635afc2fa -b ${BASE_BRANCH_NAME} | ||
113 | |||
114 | pr_info "clone ${VENDOR_BASE_DIR}/i2c-tools" | ||
115 | git clone https://github.com/Hashcode/i2c-tools.git ${VENDOR_BASE_DIR}/i2c-tools | ||
116 | cd ${VENDOR_BASE_DIR}/i2c-tools > /dev/null | ||
117 | git checkout 4aea42526b73eed33f811ce4b894df5d545e4d57 -b ${BASE_BRANCH_NAME} | ||
118 | |||
119 | pr_info "###########################" | ||
120 | pr_info "# Apply framework patches #" | ||
121 | pr_info "###########################" | ||
122 | cd ${EMBEDIAN_PATCHS_DIR} > /dev/null | ||
123 | git_array=$(find * -type d | grep '.git') | ||
124 | cd - > /dev/null | ||
125 | |||
126 | for _ddd in ${git_array} | ||
127 | do | ||
128 | _git_p=$(echo ${_ddd} | sed 's/.git//g') | ||
129 | cd ${ANDROID_DIR}/${_git_p}/ > /dev/null | ||
130 | |||
131 | pr_info "Apply patches for this git: \"${_git_p}/\"" | ||
132 | |||
133 | git checkout -b ${_EXTPARAM_BRANCH} || { | ||
134 | pr_warning "Branch ${_EXTPARAM_BRANCH} is present!" | ||
135 | }; | ||
136 | |||
137 | git am ${EMBEDIAN_PATCHS_DIR}/${_ddd}/* | ||
138 | |||
139 | cd - > /dev/null | ||
140 | done | ||
141 | |||
142 | pr_info "#######################" | ||
143 | pr_info "# Copy bluetooth vendor file #" | ||
144 | pr_info "#######################" | ||
145 | cp ${EMBEDIAN_PATCHS_DIR}/bt/vnd_smarc_mx8m.txt ${ANDROID_DIR}/hardware/qcom/bt/msm8992/libbt-vendor/include/ | ||
146 | |||
147 | pr_info "#####################" | ||
148 | pr_info "# Done #" | ||
149 | pr_info "#####################" | ||
150 | |||
151 | pr_info "#######################" | ||
152 | pr_info "# Copy shell utilites #" | ||
153 | pr_info "#######################" | ||
154 | cp -r ${EMBEDIAN_SH_DIR}/* ${ANDROID_DIR}/ | ||
155 | |||
156 | pr_info "#####################" | ||
157 | pr_info "# Done #" | ||
158 | pr_info "#####################" | ||
159 | |||
160 | exit 0 | ||
161 |
scripts/platform/bt/vnd_smarc_mx8m.txt
File was created | 1 | BT_HS_UART_DEVICE = "/dev/ttymxc2" | |
2 | FW_PATCHFILE_LOCATION = "/vendor/firmware/" | ||
3 | BT_WAKE_VIA_USERIAL_IOCTL = TRUE | ||
4 | LPM_IDLE_TIMEOUT_MULTIPLE = 5 | ||
5 | SCO_USE_I2S_INTERFACE = TRUE | ||
6 | BTVND_DBG = FALSE | ||
7 | BTHW_DBG = TRUE | ||
8 | VNDUSERIAL_DBG = FALSE | ||
9 | UPIO_DBG = FALSE | ||
10 |
scripts/platform/build/make.git/0001-core-Makefile-avoid-referring-PRODUCT_MANUFACTURER-i.patch
File was created | 1 | From d69372943135c2fc4d8394956a58533e36ac59c3 Mon Sep 17 00:00:00 2001 | |
2 | From: Eric Lee <eric.lee@embedian.com> | ||
3 | Date: Mon, 7 May 2018 11:21:39 +0200 | ||
4 | Subject: [PATCH] avoid referring PRODUCT_MANUFACTURER in emmc/sd init | ||
5 | |||
6 | --- | ||
7 | core/Makefile | 6 +++--- | ||
8 | 1 file changed, 3 insertions(+), 3 deletions(-) | ||
9 | |||
10 | diff --git a/core/Makefile b/core/Makefile | ||
11 | index 16654dd..d21ddd2 100644 | ||
12 | --- a/core/Makefile | ||
13 | +++ b/core/Makefile | ||
14 | @@ -1236,8 +1236,8 @@ define build-recoveryimage-target | ||
15 | $(hide) rm -f $(TARGET_RECOVERY_ROOT_OUT)/init*.rc | ||
16 | $(hide) cp -f $(recovery_initrc) $(TARGET_RECOVERY_ROOT_OUT)/ | ||
17 | $(hide) cp $(TARGET_ROOT_OUT)/init.recovery.*.rc $(TARGET_RECOVERY_ROOT_OUT)/ || true # Ignore error when the src file doesn't exist. | ||
18 | - $(hide) cp $(TARGET_ROOT_OUT)/init.$(PRODUCT_MANUFACTURER).sd.rc $(TARGET_RECOVERY_ROOT_OUT)/ || true # Ignore error when the src file doesn't exist. | ||
19 | - $(hide) cp $(TARGET_ROOT_OUT)/init.$(PRODUCT_MANUFACTURER).emmc.rc $(TARGET_RECOVERY_ROOT_OUT)/ || true # Ignore error when the src file doesn't exist. | ||
20 | + $(hide) cp $(TARGET_ROOT_OUT)/init.*.sd.rc $(TARGET_RECOVERY_ROOT_OUT)/ || true # Ignore error when the src file doesn't exist. | ||
21 | + $(hide) cp $(TARGET_ROOT_OUT)/init.*.emmc.rc $(TARGET_RECOVERY_ROOT_OUT)/ || true # Ignore error when the src file doesn't exist. | ||
22 | $(hide) mkdir -p $(TARGET_RECOVERY_ROOT_OUT)/res | ||
23 | $(hide) rm -rf $(TARGET_RECOVERY_ROOT_OUT)/res/* | ||
24 | $(hide) cp -rf $(recovery_resources_common)/* $(TARGET_RECOVERY_ROOT_OUT)/res | ||
25 | @@ -1423,7 +1423,7 @@ $(TARGET_KERNEL_CONFIGURE): $(KERNEL_IMX_PATH)/kernel_imx/arch/$(TARGET_ARCH)/co | ||
26 | install -D $(KERNEL_CONFIGURE) $(TARGET_KERNEL_CONFIGURE) | ||
27 | |||
28 | ifeq ($(TARGET_ARCH),arm64) | ||
29 | -DTS_ADDITIONAL_PATH := freescale | ||
30 | +DTS_ADDITIONAL_PATH := $(PRODUCT_MANUFACTURER) | ||
31 | else | ||
32 | DTS_ADDITIONAL_PATH := | ||
33 | endif | ||
34 | -- | ||
35 | 2.7.4 | ||
36 | |||
37 |
scripts/platform/vendor/embedian/i2c-tools.git/0001-fix-i2c-tools-build-with-Android.patch
File was created | 1 | From 55898b2da24a1f81d0f2e443309e63b565b1c873 Mon Sep 17 00:00:00 2001 | |
2 | From: Eric Lee <eric.lee@embedian.com> | ||
3 | Date: Mon, 22 Apr 2017 14:04:28 +0200 | ||
4 | Subject: [PATCH] fix i2c-tools build with Android | ||
5 | |||
6 | --- | ||
7 | Android.mk | 2 +- | ||
8 | 1 file changed, 1 insertion(+), 1 deletion(-) | ||
9 | |||
10 | diff --git a/Android.mk b/Android.mk | ||
11 | index 090f6c0..bb44211 100644 | ||
12 | --- a/Android.mk | ||
13 | +++ b/Android.mk | ||
14 | @@ -4,7 +4,7 @@ include $(CLEAR_VARS) | ||
15 | |||
16 | LOCAL_MODULE_TAGS := eng | ||
17 | LOCAL_C_INCLUDES += $(LOCAL_PATH) $(LOCAL_PATH)/include | ||
18 | -LOCAL_SRC_FILES := tools/i2cbusses.c tools/util.c | ||
19 | +LOCAL_SRC_FILES := tools/i2cbusses.c tools/util.c lib/smbus.c | ||
20 | LOCAL_MODULE := i2c-tools | ||
21 | include $(BUILD_STATIC_LIBRARY) | ||
22 | |||
23 | -- | ||
24 | 2.7.4 | ||
25 | |||
26 |
scripts/platform/vendor/embedian/imx-mkimage.git/0001-smarc-imx8m-add-preliminary-support.patch
File was created | 1 | From dc60556b7da19349712efe0ba570dbf7c511a537 Mon Sep 17 00:00:00 2001 | |
2 | From: Eric Lee <eric.lee@embedian.com> | ||
3 | Date: Mon, 7 May 2018 11:38:16 +0200 | ||
4 | Subject: [PATCH] smarc-imx8m: add preliminary support | ||
5 | |||
6 | --- | ||
7 | iMX8M/soc.mak | 4 ++-- | ||
8 | 1 file changed, 2 insertions(+), 2 deletions(-) | ||
9 | |||
10 | diff --git a/iMX8M/soc.mak b/iMX8M/soc.mak | ||
11 | index e3003de..5c6efec 100644 | ||
12 | --- a/iMX8M/soc.mak | ||
13 | +++ b/iMX8M/soc.mak | ||
14 | @@ -58,7 +58,7 @@ u-boot-atf-tee.bin: u-boot.bin bl31.bin tee.bin | ||
15 | clean: | ||
16 | @rm -f $(MKIMG) $(DCD_CFG) .imx8mq_dcd.cfg.cfgtmp.d u-boot-atf.bin u-boot-atf-tee.bin u-boot-spl-ddr.bin u-boot.itb u-boot.its u-boot-ddr3l.itb u-boot-ddr3l.its u-boot-spl-ddr3l.bin u-boot-ddr4.itb u-boot-ddr4.its u-boot-spl-ddr4.bin $(OUTIMG) | ||
17 | |||
18 | -dtbs = fsl-imx8mq-evk.dtb | ||
19 | +dtbs = fsl-smarcimx8mq.dtb | ||
20 | u-boot.itb: $(dtbs) | ||
21 | ./mkimage_fit_atf.sh $(dtbs) > u-boot.its | ||
22 | ./mkimage_uboot -E -p 0x3000 -f u-boot.its u-boot.itb | ||
23 | @@ -107,7 +107,7 @@ nightly : | ||
24 | @$(WGET) -q $(SERVER)/$(DIR)/$(FW_DIR)/bl31-imx8mq.bin -O bl31.bin | ||
25 | @$(WGET) -q $(SERVER)/$(DIR)/$(FW_DIR)/u-boot-spl.bin-imx8mqevk-sd -O u-boot-spl.bin | ||
26 | @$(WGET) -q $(SERVER)/$(DIR)/$(FW_DIR)/u-boot-nodtb.bin -O u-boot-nodtb.bin | ||
27 | - @$(WGET) -q $(SERVER)/$(DIR)/$(FW_DIR)/fsl-imx8mq-evk.dtb -O fsl-imx8mq-evk.dtb | ||
28 | + @$(WGET) -q $(SERVER)/$(DIR)/$(FW_DIR)/fsl-smarcimx8mq.dtb -O fsl-smarcimx8mq.dtb | ||
29 | @$(WGET) -q $(SERVER)/$(DIR)/$(FW_DIR)/signed_hdmi_imx8m.bin -O signed_hdmi_imx8m.bin | ||
30 | @$(WGET) -q $(SERVER)/$(DIR)/$(FW_DIR)/mkimage_uboot -O mkimage_uboot | ||
31 | |||
32 | -- | ||
33 | 2.7.4 | ||
34 | |||
35 |
scripts/platform/vendor/nxp-opensource/imx.git/0001-embedian-added-support-sgtl5000-codec.patch
File was created | 1 | From 0e4082bc6a6a8b30d02cae4f5102f9a2855b7f0a Mon Sep 17 00:00:00 2001 | |
2 | From: Eric Lee <eric.lee@embedian.com> | ||
3 | Date: Tue, 26 Mar 2019 18:01:31 +0800 | ||
4 | Subject: [PATCH] Add SGTL5000 Android Config | ||
5 | |||
6 | --- | ||
7 | alsa/config_sgtl5000.h | 63 ++++++++++++++++++++++++++++++++++++++++++++++++++ | ||
8 | alsa/tinyalsa_hal.c | 3 +++ | ||
9 | 2 files changed, 66 insertions(+) | ||
10 | create mode 100644 alsa/config_sgtl5000.h | ||
11 | |||
12 | diff --git a/alsa/config_sgtl5000.h b/alsa/config_sgtl5000.h | ||
13 | new file mode 100644 | ||
14 | index 0000000..799a005 | ||
15 | --- /dev/null | ||
16 | +++ b/alsa/config_sgtl5000.h | ||
17 | @@ -0,0 +1,63 @@ | ||
18 | +/* | ||
19 | + * Copyright (C) 2011 The Android Open Source Project | ||
20 | + * | ||
21 | + * Licensed under the Apache License, Version 2.0 (the "License"); | ||
22 | + * you may not use this file except in compliance with the License. | ||
23 | + * You may obtain a copy of the License at | ||
24 | + * | ||
25 | + * http://www.apache.org/licenses/LICENSE-2.0 | ||
26 | + * | ||
27 | + * Unless required by applicable law or agreed to in writing, software | ||
28 | + * distributed under the License is distributed on an "AS IS" BASIS, | ||
29 | + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | ||
30 | + * See the License for the specific language governing permissions and | ||
31 | + * limitations under the License. | ||
32 | + */ | ||
33 | +/* Copyright (C) 2012 Freescale Semiconductor, Inc. */ | ||
34 | + | ||
35 | +#ifndef ANDROID_INCLUDE_IMX_CONFIG_SGTL5000_H | ||
36 | +#define ANDROID_INCLUDE_IMX_CONFIG_SGTL5000_H | ||
37 | + | ||
38 | +#include "audio_hardware.h" | ||
39 | + | ||
40 | +/* ALSA cards for IMX, these must be defined according different board / kernel config*/ | ||
41 | +static struct audio_card sgtl5000_card = { | ||
42 | + .name = "sgtl5000-audio", | ||
43 | + .driver_name = "sgtl5000-audio", | ||
44 | + .supported_out_devices = (AUDIO_DEVICE_OUT_EARPIECE | | ||
45 | + AUDIO_DEVICE_OUT_SPEAKER | | ||
46 | + AUDIO_DEVICE_OUT_WIRED_HEADSET | | ||
47 | + AUDIO_DEVICE_OUT_WIRED_HEADPHONE | | ||
48 | + AUDIO_DEVICE_OUT_ANLG_DOCK_HEADSET | | ||
49 | + AUDIO_DEVICE_OUT_DGTL_DOCK_HEADSET | | ||
50 | + AUDIO_DEVICE_OUT_ALL_SCO | | ||
51 | + AUDIO_DEVICE_OUT_DEFAULT), | ||
52 | + .supported_in_devices = ( | ||
53 | + AUDIO_DEVICE_IN_COMMUNICATION | | ||
54 | + AUDIO_DEVICE_IN_AMBIENT | | ||
55 | + AUDIO_DEVICE_IN_BUILTIN_MIC | | ||
56 | + AUDIO_DEVICE_IN_WIRED_HEADSET | | ||
57 | + AUDIO_DEVICE_IN_BACK_MIC | | ||
58 | + AUDIO_DEVICE_IN_ALL_SCO | | ||
59 | + AUDIO_DEVICE_IN_DEFAULT), | ||
60 | + .defaults = NULL, | ||
61 | + .bt_output = NULL, | ||
62 | + .speaker_output = NULL, | ||
63 | + .hs_output = NULL, | ||
64 | + .earpiece_output = NULL, | ||
65 | + .vx_hs_mic_input = NULL, | ||
66 | + .mm_main_mic_input = NULL, | ||
67 | + .vx_main_mic_input = NULL, | ||
68 | + .mm_hs_mic_input = NULL, | ||
69 | + .vx_bt_mic_input = NULL, | ||
70 | + .mm_bt_mic_input = NULL, | ||
71 | + .card = 0, | ||
72 | + .out_rate = 0, | ||
73 | + .out_channels = 0, | ||
74 | + .out_format = 0, | ||
75 | + .in_rate = 0, | ||
76 | + .in_channels = 0, | ||
77 | + .in_format = 0, | ||
78 | +}; | ||
79 | + | ||
80 | +#endif /* ANDROID_INCLUDE_IMX_CONFIG_HDMI_H */ | ||
81 | diff --git a/alsa/tinyalsa_hal.c b/alsa/tinyalsa_hal.c | ||
82 | index 5db4f72..b59470a 100644 | ||
83 | --- a/alsa/tinyalsa_hal.c | ||
84 | +++ b/alsa/tinyalsa_hal.c | ||
85 | @@ -53,6 +53,7 @@ | ||
86 | #include "config_cdnhdmi.h" | ||
87 | #include "config_ak4458.h" | ||
88 | #include "config_ak5558.h" | ||
89 | +#include "config_sgtl5000.h" | ||
90 | #include "control.h" | ||
91 | #include "pcm_ext.h" | ||
92 | #include "config_xtor.h" | ||
93 | @@ -105,6 +106,7 @@ | ||
94 | #define PRODUCT_DEVICE_IMX "imx" | ||
95 | #define PRODUCT_DEVICE_AUTO "sabreauto" | ||
96 | #define SUPPORT_CARD_NUM 14 | ||
97 | +#define SUPPORT_CARD_NUM 15 | ||
98 | |||
99 | /*"null_card" must be in the end of this array*/ | ||
100 | struct audio_card *audio_card_list[SUPPORT_CARD_NUM] = { | ||
101 | @@ -116,6 +118,7 @@ struct audio_card *audio_card_list[SUPPORT_CARD_NUM] = { | ||
102 | &cs42888_card, | ||
103 | &wm8960_card, | ||
104 | &sii902x_card, | ||
105 | + &sgtl5000_card, | ||
106 | &rpmsg_card, | ||
107 | &wm8524_card, | ||
108 | &cdnhdmi_card, | ||
109 | -- | ||
110 | 2.7.4 | ||
111 | |||
112 |
scripts/sh/smarc-mksdcard.sh
File was created | 1 | #!/bin/bash | |
2 | # Meant to be called by install_android.sh | ||
3 | set -e | ||
4 | |||
5 | blue_underlined_bold_echo() | ||
6 | { | ||
7 | echo -e "\e[34m\e[4m\e[1m$@\e[0m" | ||
8 | } | ||
9 | |||
10 | blue_bold_echo() | ||
11 | { | ||
12 | echo -e "\e[34m\e[1m$@\e[0m" | ||
13 | } | ||
14 | |||
15 | red_bold_echo() | ||
16 | { | ||
17 | echo -e "\e[31m\e[1m$@\e[0m" | ||
18 | } | ||
19 | |||
20 | # Partition sizes in MiB | ||
21 | BOOTLOAD_RESERVE=8 | ||
22 | BOOT_ROM_SIZE=32 | ||
23 | SYSTEM_ROM_SIZE=1536 | ||
24 | MISC_SIZE=4 | ||
25 | METADATA_SIZE=2 | ||
26 | PRESISTDATA_SIZE=1 | ||
27 | VENDOR_ROM_SIZE=112 | ||
28 | FBMISC_SIZE=1 | ||
29 | VBMETA_SIZE=1 | ||
30 | |||
31 | help() { | ||
32 | |||
33 | bn=`basename $0` | ||
34 | echo " usage $bn <option> device_node" | ||
35 | echo | ||
36 | echo " options:" | ||
37 | echo " -h displays this help message" | ||
38 | echo " -s only get partition size" | ||
39 | echo " -f soc_name flash android image." | ||
40 | } | ||
41 | |||
42 | # Parse command line | ||
43 | moreoptions=1 | ||
44 | node="na" | ||
45 | soc_name="showoptions" | ||
46 | cal_only=0 | ||
47 | |||
48 | while [ "$moreoptions" = 1 -a $# -gt 0 ]; do | ||
49 | case $1 in | ||
50 | -h) help; exit ;; | ||
51 | -s) cal_only=1 ;; | ||
52 | -f) soc_name=$2; shift;; | ||
53 | *) moreoptions=0; node=$1 ;; | ||
54 | esac | ||
55 | [ "$moreoptions" = 0 ] && [ $# -gt 2 ] && help && exit | ||
56 | [ "$moreoptions" = 1 ] && shift | ||
57 | done | ||
58 | |||
59 | imagesdir="out/target/product/smarc_mx8m" | ||
60 | |||
61 | img_prefix="boot-" | ||
62 | img_search_str="ls ${imagesdir}/${img_prefix}* | grep sd" | ||
63 | img_list=() | ||
64 | |||
65 | # generate options list | ||
66 | for img in $(eval $img_search_str) | ||
67 | do | ||
68 | img=$(basename $img .img) | ||
69 | img=${img#${img_prefix}} | ||
70 | img_list+=($img) | ||
71 | done | ||
72 | |||
73 | # check for dtb | ||
74 | if [[ $soc_name != "showoptions" ]] && [[ ! ${img_list[@]} =~ $soc_name ]] ; then | ||
75 | echo; red_bold_echo "ERROR: invalid dtb $soc_name" | ||
76 | soc_name=showoptions | ||
77 | fi | ||
78 | |||
79 | if [[ $soc_name == "showoptions" ]] ; then | ||
80 | PS3='Please choose your configuration: ' | ||
81 | select opt in "${img_list[@]}" | ||
82 | do | ||
83 | if [[ -z "$opt" ]] ; then | ||
84 | echo invalid option | ||
85 | continue | ||
86 | else | ||
87 | soc_name=$opt | ||
88 | break | ||
89 | fi | ||
90 | done | ||
91 | fi | ||
92 | |||
93 | bootimage_file="boot-${soc_name}.img" | ||
94 | vbmeta_file="vbmeta-${soc_name}.img" | ||
95 | systemimage_file="system.img" | ||
96 | systemimage_raw_file="system_raw.img" | ||
97 | vendorimage_file="vendor.img" | ||
98 | vendorimage_raw_file="vendor_raw.img" | ||
99 | |||
100 | block=`basename $node` | ||
101 | part="" | ||
102 | if [[ $block == mmcblk* ]] ; then | ||
103 | part="p" | ||
104 | fi | ||
105 | |||
106 | if [[ "${soc_name}" = *"mx8m"* ]]; then | ||
107 | bootloader_offset=33 | ||
108 | bootloader_file="boot-fsl-smarcimx8mq.imx" | ||
109 | fi | ||
110 | |||
111 | echo "${soc_name} bootloader offset is: ${bootloader_offset}" | ||
112 | echo "${soc_name} bootloader is: ${bootloader_file}" | ||
113 | |||
114 | # Get total device size | ||
115 | seprate=100 | ||
116 | total_size=`sfdisk -s ${node}` | ||
117 | total_size=`expr ${total_size} \/ 1024` | ||
118 | boot_rom_sizeb=`expr ${BOOTLOAD_RESERVE} + ${BOOT_ROM_SIZE} \* 2` | ||
119 | extend_size=`expr ${SYSTEM_ROM_SIZE} \* 2 + ${MISC_SIZE} + ${METADATA_SIZE} + ${PRESISTDATA_SIZE} + ${VENDOR_ROM_SIZE} \* 2 + ${FBMISC_SIZE} + ${VBMETA_SIZE} \* 2 + ${seprate}` | ||
120 | data_size=`expr ${total_size} - ${boot_rom_sizeb} - ${extend_size}` | ||
121 | |||
122 | # Echo partitions | ||
123 | cat << EOF | ||
124 | TOTAL : ${total_size} MiB | ||
125 | U-BOOT (on eMMC) : ${BOOTLOAD_RESERVE} MiB | ||
126 | BOOT_A : ${BOOT_ROM_SIZE} MiB | ||
127 | BOOT_B : ${BOOT_ROM_SIZE} MiB | ||
128 | SYSTEM_A : ${SYSTEM_ROM_SIZE} MiB | ||
129 | SYSTEM_B : ${SYSTEM_ROM_SIZE} MiB | ||
130 | MISC : ${MISC_SIZE} MiB | ||
131 | METADATA : ${METADATA_SIZE} MiB | ||
132 | PRESISTDATA : ${PRESISTDATA_SIZE} MiB | ||
133 | VENDOR_A : ${VENDOR_ROM_SIZE} MiB | ||
134 | VENDOR_B : ${VENDOR_ROM_SIZE} MiB | ||
135 | USERDATA : ${data_size} MiB | ||
136 | FBMISC : ${FBMISC_SIZE} MiB | ||
137 | VBMETA_A : ${VBMETA_SIZE} MiB | ||
138 | VBMETA_B : ${VBMETA_SIZE} MiB | ||
139 | EOF | ||
140 | |||
141 | echo | ||
142 | |||
143 | if [[ $cal_only == 1 ]] ; then | ||
144 | exit 0 | ||
145 | fi | ||
146 | |||
147 | function check_images | ||
148 | { | ||
149 | if [[ ! -b $node ]] ; then | ||
150 | red_bold_echo "ERROR: \"$node\" is not a block device" | ||
151 | exit 1 | ||
152 | fi | ||
153 | |||
154 | if [[ ! -f ${imagesdir}/${bootloader_file} ]] ; then | ||
155 | red_bold_echo "ERROR: U-Boot image does not exist" | ||
156 | exit 1 | ||
157 | fi | ||
158 | |||
159 | if [[ ! -f ${imagesdir}/${bootimage_file} ]] ; then | ||
160 | red_bold_echo "ERROR: boot image does not exist" | ||
161 | exit 1 | ||
162 | fi | ||
163 | |||
164 | if [[ ! -f ${imagesdir}/${systemimage_file} ]] ; then | ||
165 | red_bold_echo "ERROR: system image does not exist" | ||
166 | exit 1 | ||
167 | fi | ||
168 | |||
169 | if [[ ! -f ${imagesdir}/${vendorimage_file} ]] ; then | ||
170 | red_bold_echo "ERROR: vendor image does not exist" | ||
171 | exit 1 | ||
172 | fi | ||
173 | |||
174 | if [[ ! -f ${imagesdir}/${vbmeta_file} ]] ; then | ||
175 | red_bold_echo "ERROR: vbmeta image does not exist" | ||
176 | exit 1 | ||
177 | fi | ||
178 | } | ||
179 | |||
180 | function delete_device | ||
181 | { | ||
182 | echo | ||
183 | blue_underlined_bold_echo "Deleting current partitions" | ||
184 | for partition in ${node}* | ||
185 | do | ||
186 | if [[ ${partition} = ${node} ]] ; then | ||
187 | # skip base node | ||
188 | continue | ||
189 | fi | ||
190 | if [[ ! -b ${partition} ]] ; then | ||
191 | red_bold_echo "ERROR: \"${partition}\" is not a block device" | ||
192 | exit 1 | ||
193 | fi | ||
194 | dd if=/dev/zero of=${partition} bs=1M count=1 2> /dev/null || true | ||
195 | done | ||
196 | sync | ||
197 | |||
198 | ((echo d; echo 1; echo d; echo 2; echo d; echo 3; echo d; echo w) | fdisk $node &> /dev/null) || true | ||
199 | sync | ||
200 | |||
201 | sgdisk -Z $node | ||
202 | sync | ||
203 | |||
204 | dd if=/dev/zero of=$node bs=1M count=8 | ||
205 | sync; sleep 1 | ||
206 | } | ||
207 | |||
208 | function create_parts | ||
209 | { | ||
210 | echo | ||
211 | blue_underlined_bold_echo "Creating Android partitions" | ||
212 | |||
213 | sgdisk -n 1:${BOOTLOAD_RESERVE}M:+${BOOT_ROM_SIZE}M -c 1:"boot_a" -t 1:8300 $node | ||
214 | sgdisk -n 2:0:+${BOOT_ROM_SIZE}M -c 2:"boot_b" -t 2:8300 $node | ||
215 | sgdisk -n 3:0:+${SYSTEM_ROM_SIZE}M -c 3:"system_a" -t 3:8300 $node | ||
216 | sgdisk -n 4:0:+${SYSTEM_ROM_SIZE}M -c 4:"system_b" -t 4:8300 $node | ||
217 | sgdisk -n 5:0:+${MISC_SIZE}M -c 5:"misc" -t 5:8300 $node | ||
218 | sgdisk -n 6:0:+${METADATA_SIZE}M -c 6:"metadata" -t 6:8300 $node | ||
219 | sgdisk -n 7:0:+${PRESISTDATA_SIZE}M -c 7:"presistdata" -t 7:8300 $node | ||
220 | sgdisk -n 8:0:+${VENDOR_ROM_SIZE}M -c 8:"vendor_a" -t 8:8300 $node | ||
221 | sgdisk -n 9:0:+${VENDOR_ROM_SIZE}M -c 9:"vendor_b" -t 9:8300 $node | ||
222 | sgdisk -n 10:0:+${data_size}M -c 10:"userdata" -t 10:8300 $node | ||
223 | sgdisk -n 11:0:+${FBMISC_SIZE}M -c 11:"fbmisc" -t 11:8300 $node | ||
224 | sgdisk -n 12:0:+${VBMETA_SIZE}M -c 12:"vbmeta_a" -t 12:8300 $node | ||
225 | sgdisk -n 13:0:+${VBMETA_SIZE}M -c 13:"vbmeta_b" -t 13:8300 $node | ||
226 | |||
227 | sync; sleep 2 | ||
228 | |||
229 | for i in `cat /proc/mounts | grep "${node}" | awk '{print $2}'`; do umount $i; done | ||
230 | hdparm -z $node | ||
231 | sync; sleep 3 | ||
232 | |||
233 | # backup the GPT table to last LBA. | ||
234 | echo -e 'r\ne\nY\nw\nY\nY' | gdisk $node | ||
235 | sync; sleep 1 | ||
236 | sgdisk -p $node | ||
237 | } | ||
238 | |||
239 | function install_bootloader | ||
240 | { | ||
241 | echo | ||
242 | blue_underlined_bold_echo "Installing booloader" | ||
243 | |||
244 | dd if=${imagesdir}/${bootloader_file} of=$node bs=1k seek=${bootloader_offset}; sync | ||
245 | } | ||
246 | |||
247 | function format_android | ||
248 | { | ||
249 | echo | ||
250 | blue_underlined_bold_echo "Erasing presistdata partition" | ||
251 | dd if=/dev/zero of=${node}${part}7 bs=1M count=${PRESISTDATA_SIZE} conv=fsync | ||
252 | blue_underlined_bold_echo "Erasing fbmisc partition" | ||
253 | dd if=/dev/zero of=${node}${part}11 bs=1M count=${FBMISC_SIZE} conv=fsync | ||
254 | blue_underlined_bold_echo "Erasing misc partition" | ||
255 | dd if=/dev/zero of=${node}${part}5 bs=1M count=${MISC_SIZE} conv=fsync | ||
256 | blue_underlined_bold_echo "Erasing metadata partition" | ||
257 | dd if=/dev/zero of=${node}${part}6 bs=1M count=${METADATA_SIZE} conv=fsync | ||
258 | blue_underlined_bold_echo "Formating userdata partition" | ||
259 | mkfs.ext4 -F ${node}${part}10 -Ldata | ||
260 | sync; sleep 1 | ||
261 | } | ||
262 | |||
263 | function install_android | ||
264 | { | ||
265 | echo | ||
266 | blue_underlined_bold_echo "Installing Android boot image: $bootimage_file" | ||
267 | dd if=${imagesdir}/${bootimage_file} of=${node}${part}1 | ||
268 | dd if=${imagesdir}/${bootimage_file} of=${node}${part}2 | ||
269 | sync | ||
270 | |||
271 | echo | ||
272 | blue_underlined_bold_echo "Installing Android system image: $systemimage_file" | ||
273 | if [[ -f ${imagesdir}/${systemimage_raw_file} ]] ; then | ||
274 | rm ${imagesdir}/${systemimage_raw_file} 2> /dev/null | ||
275 | fi | ||
276 | out/host/linux-x86/bin/simg2img ${imagesdir}/${systemimage_file} ${imagesdir}/${systemimage_raw_file} | ||
277 | dd if=${imagesdir}/${systemimage_raw_file} of=${node}${part}3 | ||
278 | dd if=${imagesdir}/${systemimage_raw_file} of=${node}${part}4 | ||
279 | sync; | ||
280 | |||
281 | echo | ||
282 | blue_underlined_bold_echo "Installing Android vendor image: $vendorimage_file" | ||
283 | if [[ -f ${imagesdir}/${vendorimage_raw_file} ]] ; then | ||
284 | rm ${imagesdir}/${vendorimage_raw_file} 2> /dev/null | ||
285 | fi | ||
286 | out/host/linux-x86/bin/simg2img ${imagesdir}/${vendorimage_file} ${imagesdir}/${vendorimage_raw_file} | ||
287 | dd if=${imagesdir}/${vendorimage_raw_file} of=${node}${part}8 | ||
288 | dd if=${imagesdir}/${vendorimage_raw_file} of=${node}${part}9 | ||
289 | sync; | ||
290 | |||
291 | echo | ||
292 | blue_underlined_bold_echo "Installing Android vbmeta image: $vbmeta_file" | ||
293 | dd if=${imagesdir}/${vbmeta_file} of=${node}${part}12 | ||
294 | dd if=${imagesdir}/${vbmeta_file} of=${node}${part}13 | ||
295 | sync; | ||
296 | |||
297 | sleep 1 | ||
298 | } | ||
299 | |||
300 | function finish | ||
301 | { | ||
302 | echo | ||
303 | errors=0 | ||
304 | for partition in ${node}* | ||
305 | do | ||
306 | if [[ ! -b ${partition} ]] ; then | ||
307 | red_bold_echo "ERROR: \"${partition}\" is not a block device" | ||
308 | errors=$((errors+1)) | ||
309 | fi | ||
310 | done | ||
311 | |||
312 | if [[ ${errors} = 0 ]] ; then | ||
313 | blue_bold_echo "Android installed successfully" | ||
314 | else | ||
315 | red_bold_echo "Android installation failed" | ||
316 | fi | ||
317 | exit ${errors} | ||
318 | } | ||
319 | |||
320 | check_images | ||
321 | |||
322 | umount ${node}${part}* 2> /dev/null || true | ||
323 | |||
324 | #Stop Udev for block devices while partitioning in progress | ||
325 | #/etc/init.d/udev stop | ||
326 | |||
327 | delete_device | ||
328 | create_parts | ||
329 | install_bootloader | ||
330 | format_android | ||
331 | install_android | ||
332 | finish | ||
333 | |||
334 | #Start Udev back before exit | ||
335 | #/etc/init.d/udev restart | ||
336 | |||
337 |
smarc_mx8m/AndroidBoard.mk
File was created | 1 | LOCAL_PATH := $(call my-dir) | |
2 | |||
3 | include $(FSL_PROPRIETARY_PATH)/fsl-proprietary/media-profile/media-profile.mk | ||
4 | include $(FSL_PROPRIETARY_PATH)/fsl-proprietary/sensor/fsl-sensor.mk | ||
5 | include device/embedian/smarc_mx8m/AndroidUboot.mk | ||
6 | include device/embedian/smarc_mx8m/AndroidTee.mk | ||
7 |
smarc_mx8m/AndroidTee.mk
File was created | 1 | # uboot.imx in android combine scfw.bin and uboot.bin | |
2 | MAKE += SHELL=/bin/bash | ||
3 | |||
4 | define build_uboot_w_tee | ||
5 | $(MAKE) -C bootable/bootloader/arm-trusted-firmware/ -B CROSS_COMPILE=aarch64-linux-android- PLAT=imx8mq V=1 SPD=opteed DECRYPTED_BUFFER_START=$(DECRYPTED_BUFFER_START) DECRYPTED_BUFFER_LEN=$(DECRYPTED_BUFFER_LEN) DECODED_BUFFER_START=$(DECODED_BUFFER_START) DECODED_BUFFER_LEN=$(DECODED_BUFFER_LEN) bl31; \ | ||
6 | cp bootable/bootloader/arm-trusted-firmware/build/imx8mq/release/bl31.bin $(IMX_MKIMAGE_PATH)/imx-mkimage/iMX8M/.;\ | ||
7 | aarch64-linux-android-objcopy -O binary out/target/product/smarc_mx8m/optee/arm-plat-imx/core/tee.elf $(IMX_MKIMAGE_PATH)/imx-mkimage/iMX8M/tee.bin; \ | ||
8 | $(MAKE) -C $(IMX_MKIMAGE_PATH)/imx-mkimage/ clean; \ | ||
9 | $(MAKE) -C $(IMX_MKIMAGE_PATH)/imx-mkimage/ SOC=iMX8M flash_hdmi_spl_uboot; \ | ||
10 | cp $(IMX_MKIMAGE_PATH)/imx-mkimage/iMX8M/flash.bin $(PRODUCT_OUT)/u-boot-$(strip $(2)).imx; | ||
11 | endef | ||
12 | |||
13 | |||
14 |
smarc_mx8m/AndroidUboot.mk
File was created | 1 | # uboot.imx in android combine scfw.bin and uboot.bin | |
2 | MAKE += SHELL=/bin/bash | ||
3 | |||
4 | define build_uboot | ||
5 | cp out/target/product/smarc_mx8m/obj/BOOTLOADER_OBJ/u-boot-nodtb.$(strip $(1)) $(IMX_MKIMAGE_PATH)/imx-mkimage/iMX8M/.; \ | ||
6 | cp out/target/product/smarc_mx8m/obj/BOOTLOADER_OBJ/spl/u-boot-spl.bin $(IMX_MKIMAGE_PATH)/imx-mkimage/iMX8M/.; \ | ||
7 | cp out/target/product/smarc_mx8m/obj/BOOTLOADER_OBJ/tools/mkimage $(IMX_MKIMAGE_PATH)/imx-mkimage/iMX8M/mkimage_uboot; \ | ||
8 | cp out/target/product/smarc_mx8m/obj/BOOTLOADER_OBJ/arch/arm/dts/fsl-smarcimx8mq.dtb $(IMX_MKIMAGE_PATH)/imx-mkimage/iMX8M/.; \ | ||
9 | cp $(FSL_PROPRIETARY_PATH)/fsl-proprietary/uboot-firmware/imx8m/signed_hdmi_imx8m.bin $(IMX_MKIMAGE_PATH)/imx-mkimage/iMX8M/.; \ | ||
10 | cp $(FSL_PROPRIETARY_PATH)/fsl-proprietary/uboot-firmware/imx8m/lpddr4_pmu_train_1d_dmem.bin $(IMX_MKIMAGE_PATH)/imx-mkimage/iMX8M/.; \ | ||
11 | cp $(FSL_PROPRIETARY_PATH)/fsl-proprietary/uboot-firmware/imx8m/lpddr4_pmu_train_1d_imem.bin $(IMX_MKIMAGE_PATH)/imx-mkimage/iMX8M/.; \ | ||
12 | cp $(FSL_PROPRIETARY_PATH)/fsl-proprietary/uboot-firmware/imx8m/lpddr4_pmu_train_2d_dmem.bin $(IMX_MKIMAGE_PATH)/imx-mkimage/iMX8M/.; \ | ||
13 | cp $(FSL_PROPRIETARY_PATH)/fsl-proprietary/uboot-firmware/imx8m/lpddr4_pmu_train_2d_imem.bin $(IMX_MKIMAGE_PATH)/imx-mkimage/iMX8M/.; \ | ||
14 | cp $(FSL_PROPRIETARY_PATH)/fsl-proprietary/uboot-firmware/imx8m/bl31.bin $(IMX_MKIMAGE_PATH)/imx-mkimage/iMX8M/.; \ | ||
15 | $(MAKE) -C $(IMX_MKIMAGE_PATH)/imx-mkimage/ clean; \ | ||
16 | $(MAKE) -C $(IMX_MKIMAGE_PATH)/imx-mkimage/ SOC=iMX8M flash_hdmi_spl_uboot; \ | ||
17 | cp $(IMX_MKIMAGE_PATH)/imx-mkimage/iMX8M/flash.bin $(PRODUCT_OUT)/u-boot-$(strip $(2)).imx; | ||
18 | endef | ||
19 | |||
20 | |||
21 |
smarc_mx8m/BoardConfig.mk
File was created | 1 | # | |
2 | # Product-specific compile-time definitions. | ||
3 | # | ||
4 | |||
5 | include device/fsl/imx8/soc/imx8mq.mk | ||
6 | include device/embedian/smarc_mx8m/build_id.mk | ||
7 | include device/fsl/imx8/BoardConfigCommon.mk | ||
8 | ifeq ($(PREBUILT_FSL_IMX_CODEC),true) | ||
9 | -include $(FSL_CODEC_PATH)/fsl-codec/fsl-codec.mk | ||
10 | endif | ||
11 | # sabreauto_6dq default target for EXT4 | ||
12 | BUILD_TARGET_FS ?= ext4 | ||
13 | include device/fsl/imx8/imx8_target_fs.mk | ||
14 | |||
15 | ifneq ($(BUILD_TARGET_FS),f2fs) | ||
16 | TARGET_RECOVERY_FSTAB = device/embedian/smarc_mx8m/fstab.freescale | ||
17 | # build for ext4 | ||
18 | PRODUCT_COPY_FILES += \ | ||
19 | device/embedian/smarc_mx8m/fstab.freescale:root/fstab.freescale | ||
20 | else | ||
21 | TARGET_RECOVERY_FSTAB = device/embedian/smarc_mx8m/fstab-f2fs.freescale | ||
22 | # build for f2fs | ||
23 | PRODUCT_COPY_FILES += \ | ||
24 | device/embedian/smarc_mx8m/fstab-f2fs.freescale:root/fstab.freescale | ||
25 | endif # BUILD_TARGET_FS | ||
26 | |||
27 | # Support gpt | ||
28 | BOARD_BPT_INPUT_FILES += device/fsl/common/partition/device-partitions-13GB-ab.bpt | ||
29 | ADDITION_BPT_PARTITION = partition-table-7GB:device/fsl/common/partition/device-partitions-7GB-ab.bpt \ | ||
30 | partition-table-28GB:device/fsl/common/partition/device-partitions-28GB-ab.bpt | ||
31 | |||
32 | |||
33 | # Vendor Interface manifest and compatibility | ||
34 | DEVICE_MANIFEST_FILE := device/embedian/smarc_mx8m/manifest.xml | ||
35 | DEVICE_MATRIX_FILE := device/embedian/smarc_mx8m/compatibility_matrix.xml | ||
36 | |||
37 | TARGET_BOOTLOADER_BOARD_NAME := SMARC | ||
38 | |||
39 | PRODUCT_MODEL := SMARC_MX8MQ | ||
40 | |||
41 | TARGET_BOOTLOADER_POSTFIX := bin | ||
42 | |||
43 | USE_OPENGL_RENDERER := true | ||
44 | TARGET_CPU_SMP := true | ||
45 | |||
46 | TARGET_RELEASETOOLS_EXTENSIONS := device/fsl/imx8 | ||
47 | BOARD_WLAN_DEVICE := qcwcn | ||
48 | WPA_SUPPLICANT_VERSION := VER_0_8_X | ||
49 | BOARD_WPA_SUPPLICANT_DRIVER := NL80211 | ||
50 | BOARD_HOSTAPD_DRIVER := NL80211 | ||
51 | |||
52 | BOARD_HOSTAPD_PRIVATE_LIB := lib_driver_cmd_$(BOARD_WLAN_DEVICE) | ||
53 | BOARD_WPA_SUPPLICANT_PRIVATE_LIB := lib_driver_cmd_$(BOARD_WLAN_DEVICE) | ||
54 | |||
55 | BOARD_VENDOR_KERNEL_MODULES += \ | ||
56 | $(KERNEL_OUT)/drivers/net/wireless/ath/ath.ko \ | ||
57 | $(KERNEL_OUT)/drivers/net/wireless/ath/ath10k/ath10k_core.ko \ | ||
58 | $(KERNEL_OUT)/drivers/net/wireless/ath/ath10k/ath10k_pci.ko | ||
59 | |||
60 | BOARD_USE_SENSOR_FUSION := true | ||
61 | |||
62 | # for recovery service | ||
63 | TARGET_SELECT_KEY := 28 | ||
64 | # we don't support sparse image. | ||
65 | TARGET_USERIMAGES_SPARSE_EXT_DISABLED := false | ||
66 | |||
67 | UBOOT_POST_PROCESS := true | ||
68 | |||
69 | # camera hal v3 | ||
70 | IMX_CAMERA_HAL_V3 := true | ||
71 | |||
72 | BOARD_HAVE_USB_CAMERA := true | ||
73 | |||
74 | USE_ION_ALLOCATOR := true | ||
75 | USE_GPU_ALLOCATOR := false | ||
76 | |||
77 | PRODUCT_COPY_FILES += \ | ||
78 | device/embedian/smarc_mx8m/ueventd.freescale.rc:root/ueventd.freescale.rc | ||
79 | |||
80 | BOARD_AVB_ENABLE := true | ||
81 | |||
82 | # define frame buffer count | ||
83 | NUM_FRAMEBUFFER_SURFACE_BUFFERS := 5 | ||
84 | |||
85 | ifeq ($(PRODUCT_IMX_DRM),true) | ||
86 | CMASIZE=736M | ||
87 | else | ||
88 | CMASIZE=1536M | ||
89 | endif | ||
90 | |||
91 | BOARD_KERNEL_CMDLINE := console=ttymxc0,115200 earlycon=imxuart,0x30860000,115200 init=/init video=HDMI-A-1:1920x1080-32@60 androidboot.console=ttymxc0 consoleblank=0 androidboot.hardware=freescale androidboot.fbTileSupport=enable cma=$(CMASIZE) androidboot.primary_display=imx-drm firmware_class.path=/vendor/firmware | ||
92 | |||
93 | # Qcom 1CQ(QCA6174) BT | ||
94 | BOARD_BLUETOOTH_BDROID_BUILDCFG_INCLUDE_DIR := device/embedian/smarc_mx8m/bluetooth | ||
95 | BOARD_HAVE_BLUETOOTH_QCOM := true | ||
96 | BOARD_HAS_QCA_BT_ROME := true | ||
97 | BOARD_HAVE_BLUETOOTH_BLUEZ := false | ||
98 | QCOM_BT_USE_SIBS := true | ||
99 | ifeq ($(QCOM_BT_USE_SIBS), true) | ||
100 | WCNSS_FILTER_USES_SIBS := true | ||
101 | endif | ||
102 | |||
103 | ifeq ($(TARGET_USERIMAGES_USE_UBIFS),true) | ||
104 | ifeq ($(TARGET_USERIMAGES_USE_EXT4),true) | ||
105 | $(error "TARGET_USERIMAGES_USE_UBIFS and TARGET_USERIMAGES_USE_EXT4 config open in same time, please only choose one target file system image") | ||
106 | endif | ||
107 | endif | ||
108 | |||
109 | TARGET_BOARD_DTS_CONFIG := \ | ||
110 | fsl-smarcimx8mq:fsl-smarcimx8mq.dtb \ | ||
111 | fsl-smarcimx8mq-dcss-lvds:fsl-smarcimx8mq-dcss-lvds.dtb \ | ||
112 | fsl-smarcimx8mq-lcdif-lvds:fsl-smarcimx8mq-lcdif-lvds.dtb \ | ||
113 | fsl-smarcimx8mq-hdmi:fsl-smarcimx8mq-hdmi.dtb \ | ||
114 | fsl-smarcimx8mq-dual-display:fsl-smarcimx8mq-dual-display.dtb \ | ||
115 | fsl-smarcimx8mq-hdmi-4k:fsl-smarcimx8mq-hdmi-4k.dtb | ||
116 | |||
117 | TARGET_BOOTLOADER_CONFIG := smarcimx8mq_2g:smarcimx8mq_2g_ser3_android_defconfig | ||
118 | |||
119 | BOARD_SEPOLICY_DIRS := \ | ||
120 | device/fsl/imx8/sepolicy \ | ||
121 | device/embedian/smarc_mx8m/sepolicy | ||
122 | |||
123 | ifeq ($(PRODUCT_IMX_DRM),true) | ||
124 | BOARD_SEPOLICY_DIRS += \ | ||
125 | device/fsl/imx8/sepolicy_drm \ | ||
126 | device/embedian/smarc_mx8m/sepolicy_drm | ||
127 | endif | ||
128 | |||
129 | # Vendor seccomp policy files for media components: | ||
130 | PRODUCT_COPY_FILES += \ | ||
131 | device/embedian/smarc_mx8m/seccomp/mediacodec-seccomp.policy:vendor/etc/seccomp_policy/mediacodec.policy \ | ||
132 | device/embedian/smarc_mx8m/seccomp/mediaextractor-seccomp.policy:vendor/etc/seccomp_policy/mediaextractor.policy | ||
133 | |||
134 | PRODUCT_COPY_FILES += \ | ||
135 | device/embedian/smarc_mx8m/app_whitelist.xml:system/etc/sysconfig/app_whitelist.xml | ||
136 | |||
137 | TARGET_BOARD_KERNEL_HEADERS := device/fsl/common/kernel-headers | ||
138 |
smarc_mx8m/app_whitelist.xml
File was created | 1 | <?xml version="1.0" encoding="UTF-8" standalone="yes" ?> | |
2 | |||
3 | <!-- | ||
4 | /* Copyright (c) 2017, The Linux Foundation. All rights reserved. | ||
5 | * | ||
6 | * Redistribution and use in source and binary forms, with or without | ||
7 | * modification, are permitted provided that the following conditions are | ||
8 | * met: | ||
9 | * * Redistributions of source code must retain the above copyright | ||
10 | * notice, this list of conditions and the following disclaimer. | ||
11 | * * Redistributions in binary form must reproduce the above | ||
12 | * copyright notice, this list of conditions and the following | ||
13 | * disclaimer in the documentation and/or other materials provided | ||
14 | * with the distribution. | ||
15 | * * Neither the name of The Linux Foundation nor the names of its | ||
16 | * contributors may be used to endorse or promote products derived | ||
17 | * from this software without specific prior written permission. | ||
18 | * | ||
19 | * THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED | ||
20 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF | ||
21 | * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT | ||
22 | * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS | ||
23 | * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR | ||
24 | * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF | ||
25 | * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR | ||
26 | * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, | ||
27 | * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE | ||
28 | * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN | ||
29 | * IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||
30 | */ | ||
31 | --> | ||
32 | |||
33 | <config> | ||
34 | <!-- deskclock need to freely run in the background --> | ||
35 | <allow-in-power-save package="com.android.deskclock" /> | ||
36 | </config> | ||
37 |
smarc_mx8m/audio_effects.conf
File was created | 1 | # List of effect libraries to load. Each library element must contain a "path" element | |
2 | # giving the full path of the library .so file. | ||
3 | # libraries { | ||
4 | # <lib name> { | ||
5 | # path <lib path> | ||
6 | # } | ||
7 | # } | ||
8 | libraries { | ||
9 | bundle { | ||
10 | path /system/lib/soundfx/libbundlewrapper.so | ||
11 | } | ||
12 | reverb { | ||
13 | path /system/lib/soundfx/libreverbwrapper.so | ||
14 | } | ||
15 | visualizer { | ||
16 | path /system/lib/soundfx/libvisualizer.so | ||
17 | } | ||
18 | downmix { | ||
19 | path /system/lib/soundfx/libdownmix.so | ||
20 | } | ||
21 | loudness_enhancer { | ||
22 | path /system/lib/soundfx/libldnhncr.so | ||
23 | } | ||
24 | pre_processing { | ||
25 | path /system/lib/soundfx/libaudiopreprocessing.so | ||
26 | } | ||
27 | } | ||
28 | |||
29 | # list of effects to load. Each effect element must contain a "library" and a "uuid" element. | ||
30 | # The value of the "library" element must correspond to the name of one library element in the | ||
31 | # "libraries" element. | ||
32 | # The name of the effect element is indicative, only the value of the "uuid" element | ||
33 | # designates the effect. | ||
34 | # The uuid is the implementation specific UUID as specified by the effect vendor. This is not the | ||
35 | # generic effect type UUID. | ||
36 | # effects { | ||
37 | # <fx name> { | ||
38 | # library <lib name> | ||
39 | # uuid <effect uuid> | ||
40 | # } | ||
41 | # ... | ||
42 | # } | ||
43 | |||
44 | effects { | ||
45 | bassboost { | ||
46 | library bundle | ||
47 | uuid 8631f300-72e2-11df-b57e-0002a5d5c51b | ||
48 | } | ||
49 | virtualizer { | ||
50 | library bundle | ||
51 | uuid 1d4033c0-8557-11df-9f2d-0002a5d5c51b | ||
52 | } | ||
53 | equalizer { | ||
54 | library bundle | ||
55 | uuid ce772f20-847d-11df-bb17-0002a5d5c51b | ||
56 | } | ||
57 | volume { | ||
58 | library bundle | ||
59 | uuid 119341a0-8469-11df-81f9-0002a5d5c51b | ||
60 | } | ||
61 | reverb_env_aux { | ||
62 | library reverb | ||
63 | uuid 4a387fc0-8ab3-11df-8bad-0002a5d5c51b | ||
64 | } | ||
65 | reverb_env_ins { | ||
66 | library reverb | ||
67 | uuid c7a511a0-a3bb-11df-860e-0002a5d5c51b | ||
68 | } | ||
69 | reverb_pre_aux { | ||
70 | library reverb | ||
71 | uuid f29a1400-a3bb-11df-8ddc-0002a5d5c51b | ||
72 | } | ||
73 | reverb_pre_ins { | ||
74 | library reverb | ||
75 | uuid 172cdf00-a3bc-11df-a72f-0002a5d5c51b | ||
76 | } | ||
77 | visualizer { | ||
78 | library visualizer | ||
79 | uuid d069d9e0-8329-11df-9168-0002a5d5c51b | ||
80 | } | ||
81 | downmix { | ||
82 | library downmix | ||
83 | uuid 93f04452-e4fe-41cc-91f9-e475b6d1d69f | ||
84 | } | ||
85 | loudness_enhancer { | ||
86 | library loudness_enhancer | ||
87 | uuid fa415329-2034-4bea-b5dc-5b381c8d1e2c | ||
88 | } | ||
89 | } | ||
90 | |||
91 | # Audio preprocessor configurations. | ||
92 | # The pre processor configuration consists in a list of elements each describing | ||
93 | # pre processor settings for a given input source. Valid input source names are: | ||
94 | # "mic", "camcorder", "voice_recognition", "voice_communication" | ||
95 | # Each input source element contains a list of effects elements. The name of the effect | ||
96 | # element must be the name of one of the effects in the "effects" list of the file. | ||
97 | # Each effect element may optionally contain a list of parameters and their | ||
98 | # default value to apply when the pre processor effect is created. | ||
99 | # A parameter is defined by a "param" element and a "value" element. Each of these elements | ||
100 | # consists in one or more elements specifying a type followed by a value. | ||
101 | # The types defined are: "int", "short", "float", "bool" and "string" | ||
102 | # When both "param" and "value" are a single int, a simple form is allowed where just | ||
103 | # the param and value pair is present in the parameter description | ||
104 | # pre_processing { | ||
105 | # <input source name> { | ||
106 | # <fx name> { | ||
107 | # <param 1 name> { | ||
108 | # param { | ||
109 | # int|short|float|bool|string <value> | ||
110 | # [ int|short|float|bool|string <value> ] | ||
111 | # ... | ||
112 | # } | ||
113 | # value { | ||
114 | # int|short|float|bool|string <value> | ||
115 | # [ int|short|float|bool|string <value> ] | ||
116 | # ... | ||
117 | # } | ||
118 | # } | ||
119 | # <param 2 name > {<param> <value>} | ||
120 | # ... | ||
121 | # } | ||
122 | # ... | ||
123 | # } | ||
124 | # ... | ||
125 | # } | ||
126 | |||
127 | # | ||
128 | # TODO: add default audio pre processor configurations after debug and tuning phase | ||
129 | # | ||
130 | |||
131 |
smarc_mx8m/audio_policy_configuration.xml
File was created | 1 | <?xml version="1.0" encoding="UTF-8" standalone="yes"?> | |
2 | <!-- Copyright (C) 2017 The Android Open Source Project | ||
3 | |||
4 | Licensed under the Apache License, Version 2.0 (the "License"); | ||
5 | you may not use this file except in compliance with the License. | ||
6 | You may obtain a copy of the License at | ||
7 | |||
8 | http://www.apache.org/licenses/LICENSE-2.0 | ||
9 | |||
10 | Unless required by applicable law or agreed to in writing, software | ||
11 | distributed under the License is distributed on an "AS IS" BASIS, | ||
12 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | ||
13 | See the License for the specific language governing permissions and | ||
14 | limitations under the License. | ||
15 | --> | ||
16 | |||
17 | <audioPolicyConfiguration version="1.0" xmlns:xi="http://www.w3.org/2001/XInclude"> | ||
18 | <globalConfiguration speaker_drc_enabled="true"/> | ||
19 | |||
20 | <modules> | ||
21 | <module name="primary" halVersion="2.0"> | ||
22 | <attachedDevices> | ||
23 | <item>Speaker</item> | ||
24 | <item>Built-In Mic</item> | ||
25 | </attachedDevices> | ||
26 | <defaultOutputDevice>Speaker</defaultOutputDevice> | ||
27 | <mixPorts> | ||
28 | <mixPort name="primary output" role="source" flags="AUDIO_OUTPUT_FLAG_PRIMARY"> | ||
29 | <profile name="" format="AUDIO_FORMAT_PCM_16_BIT" | ||
30 | samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/> | ||
31 | </mixPort> | ||
32 | <mixPort name="hdmi output" role="source" flags="AUDIO_OUTPUT_FLAG_DIRECT"> | ||
33 | <profile name="" format="AUDIO_FORMAT_PCM_16_BIT" | ||
34 | samplingRates="32000,44100,48000,88200,96000,176400,192000" channelMasks="AUDIO_CHANNEL_NONE"/> | ||
35 | </mixPort> | ||
36 | <mixPort name="esai output" role="source" flags="AUDIO_OUTPUT_FLAG_DIRECT"> | ||
37 | <profile name="" format="AUDIO_FORMAT_PCM_16_BIT" | ||
38 | samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_5POINT1,AUDIO_CHANNEL_OUT_7POINT1"/> | ||
39 | </mixPort> | ||
40 | <mixPort name="primary input" role="sink"> | ||
41 | <profile name="" format="AUDIO_FORMAT_PCM_16_BIT" | ||
42 | samplingRates="8000,11025,16000,22050,24000,32000,44100,48000" | ||
43 | channelMasks="AUDIO_CHANNEL_IN_MONO,AUDIO_CHANNEL_IN_STEREO"/> | ||
44 | </mixPort> | ||
45 | </mixPorts> | ||
46 | <devicePorts> | ||
47 | <devicePort tagName="Speaker" type="AUDIO_DEVICE_OUT_SPEAKER" role="sink" > | ||
48 | </devicePort> | ||
49 | <devicePort tagName="Wired Headphones" type="AUDIO_DEVICE_OUT_WIRED_HEADPHONE" role="sink"> | ||
50 | </devicePort> | ||
51 | <devicePort tagName="HDMI Out" type="AUDIO_DEVICE_OUT_AUX_DIGITAL" role="sink"> | ||
52 | </devicePort> | ||
53 | |||
54 | <devicePort tagName="Built-In Mic" type="AUDIO_DEVICE_IN_BUILTIN_MIC" role="source"> | ||
55 | </devicePort> | ||
56 | <devicePort tagName="Spdif-In" type="AUDIO_DEVICE_IN_AUX_DIGITAL" role="source"> | ||
57 | </devicePort> | ||
58 | </devicePorts> | ||
59 | <routes> | ||
60 | <route type="mix" sink="Speaker" | ||
61 | sources="primary output"/> | ||
62 | <route type="mix" sink="Wired Headphones" | ||
63 | sources="esai output,primary output"/> | ||
64 | <route type="mix" sink="HDMI Out" | ||
65 | sources="hdmi output,primary output"/> | ||
66 | |||
67 | <route type="mix" sink="primary input" | ||
68 | sources="Built-In Mic,Spdif-In"/> | ||
69 | </routes> | ||
70 | </module> | ||
71 | |||
72 | <!-- A2dp Audio HAL --> | ||
73 | <xi:include href="a2dp_audio_policy_configuration.xml"/> | ||
74 | |||
75 | <!-- Usb Audio HAL --> | ||
76 | <xi:include href="usb_audio_policy_configuration.xml"/> | ||
77 | |||
78 | <!-- Remote Submix Audio HAL --> | ||
79 | <xi:include href="r_submix_audio_policy_configuration.xml"/> | ||
80 | |||
81 | </modules> | ||
82 | |||
83 | <!-- Volume section --> | ||
84 | <xi:include href="audio_policy_volumes.xml"/> | ||
85 | <xi:include href="default_volume_tables.xml"/> | ||
86 | |||
87 | </audioPolicyConfiguration> | ||
88 |
smarc_mx8m/audio_policy_configuration_drm.xml
File was created | 1 | <?xml version="1.0" encoding="UTF-8" standalone="yes"?> | |
2 | <!-- Copyright (C) 2017 The Android Open Source Project | ||
3 | |||
4 | Licensed under the Apache License, Version 2.0 (the "License"); | ||
5 | you may not use this file except in compliance with the License. | ||
6 | You may obtain a copy of the License at | ||
7 | |||
8 | http://www.apache.org/licenses/LICENSE-2.0 | ||
9 | |||
10 | Unless required by applicable law or agreed to in writing, software | ||
11 | distributed under the License is distributed on an "AS IS" BASIS, | ||
12 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | ||
13 | See the License for the specific language governing permissions and | ||
14 | limitations under the License. | ||
15 | --> | ||
16 | |||
17 | <audioPolicyConfiguration version="1.0" xmlns:xi="http://www.w3.org/2001/XInclude"> | ||
18 | <globalConfiguration speaker_drc_enabled="true"/> | ||
19 | |||
20 | <modules> | ||
21 | <module name="primary" halVersion="2.0"> | ||
22 | <attachedDevices> | ||
23 | <item>HDMI Out</item> | ||
24 | <item>Built-In Mic</item> | ||
25 | </attachedDevices> | ||
26 | <defaultOutputDevice>HDMI Out</defaultOutputDevice> | ||
27 | <mixPorts> | ||
28 | <mixPort name="primary output" role="source" flags="AUDIO_OUTPUT_FLAG_PRIMARY"> | ||
29 | <profile name="" format="AUDIO_FORMAT_PCM_16_BIT" | ||
30 | samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/> | ||
31 | </mixPort> | ||
32 | <mixPort name="hdmi output" role="source" flags="AUDIO_OUTPUT_FLAG_DIRECT"> | ||
33 | <profile name="" format="AUDIO_FORMAT_PCM_16_BIT" | ||
34 | samplingRates="32000,44100,48000,88200,96000,176400,192000" channelMasks="AUDIO_CHANNEL_NONE"/> | ||
35 | </mixPort> | ||
36 | <mixPort name="esai output" role="source" flags="AUDIO_OUTPUT_FLAG_DIRECT"> | ||
37 | <profile name="" format="AUDIO_FORMAT_PCM_16_BIT" | ||
38 | samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_5POINT1,AUDIO_CHANNEL_OUT_7POINT1"/> | ||
39 | </mixPort> | ||
40 | <mixPort name="primary input" role="sink"> | ||
41 | <profile name="" format="AUDIO_FORMAT_PCM_16_BIT" | ||
42 | samplingRates="8000,11025,16000,22050,24000,32000,44100,48000" | ||
43 | channelMasks="AUDIO_CHANNEL_IN_MONO,AUDIO_CHANNEL_IN_STEREO"/> | ||
44 | </mixPort> | ||
45 | </mixPorts> | ||
46 | <devicePorts> | ||
47 | <devicePort tagName="Speaker" type="AUDIO_DEVICE_OUT_SPEAKER" role="sink" > | ||
48 | </devicePort> | ||
49 | <devicePort tagName="Wired Headset" type="AUDIO_DEVICE_OUT_WIRED_HEADSET" role="sink"> | ||
50 | </devicePort> | ||
51 | <devicePort tagName="Wired Headphones" type="AUDIO_DEVICE_OUT_WIRED_HEADPHONE" role="sink"> | ||
52 | </devicePort> | ||
53 | <devicePort tagName="HDMI Out" type="AUDIO_DEVICE_OUT_AUX_DIGITAL" role="sink"> | ||
54 | </devicePort> | ||
55 | |||
56 | <devicePort tagName="Built-In Mic" type="AUDIO_DEVICE_IN_BUILTIN_MIC" role="source"> | ||
57 | </devicePort> | ||
58 | <devicePort tagName="Wired Headset Mic" type="AUDIO_DEVICE_IN_WIRED_HEADSET" role="source"> | ||
59 | </devicePort> | ||
60 | <devicePort tagName="Spdif-In" type="AUDIO_DEVICE_IN_AUX_DIGITAL" role="source"> | ||
61 | </devicePort> | ||
62 | </devicePorts> | ||
63 | <routes> | ||
64 | <route type="mix" sink="Speaker" | ||
65 | sources="esai output,primary output"/> | ||
66 | <route type="mix" sink="Wired Headset" | ||
67 | sources="primary output"/> | ||
68 | <route type="mix" sink="Wired Headphones" | ||
69 | sources="primary output"/> | ||
70 | <route type="mix" sink="HDMI Out" | ||
71 | sources="hdmi output,primary output"/> | ||
72 | |||
73 | <route type="mix" sink="primary input" | ||
74 | sources="Built-In Mic,Wired Headset Mic,Spdif-In"/> | ||
75 | </routes> | ||
76 | </module> | ||
77 | |||
78 | <!-- A2dp Audio HAL --> | ||
79 | <xi:include href="a2dp_audio_policy_configuration.xml"/> | ||
80 | |||
81 | <!-- Usb Audio HAL --> | ||
82 | <xi:include href="usb_audio_policy_configuration.xml"/> | ||
83 | |||
84 | <!-- Remote Submix Audio HAL --> | ||
85 | <xi:include href="r_submix_audio_policy_configuration.xml"/> | ||
86 | |||
87 | </modules> | ||
88 | |||
89 | <!-- Volume section --> | ||
90 | <xi:include href="audio_policy_volumes.xml"/> | ||
91 | <xi:include href="default_volume_tables.xml"/> | ||
92 | |||
93 | </audioPolicyConfiguration> | ||
94 |
smarc_mx8m/bluetooth/bdroid_buildcfg.h
File was created | 1 | /* | |
2 | * Copyright (C) 2012 The Android Open Source Project | ||
3 | * | ||
4 | * Licensed under the Apache License, Version 2.0 (the "License"); | ||
5 | * you may not use this file except in compliance with the License. | ||
6 | * You may obtain a copy of the License at | ||
7 | * | ||
8 | * http://www.apache.org/licenses/LICENSE-2.0 | ||
9 | * | ||
10 | * Unless required by applicable law or agreed to in writing, software | ||
11 | * distributed under the License is distributed on an "AS IS" BASIS, | ||
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | ||
13 | * See the License for the specific language governing permissions and | ||
14 | * limitations under the License. | ||
15 | */ | ||
16 | |||
17 | /* Copyright (C) 2015-2016 Freescale Semiconductor, Inc. */ | ||
18 | |||
19 | #ifndef _BDROID_BUILDCFG_H | ||
20 | #define _BDROID_BUILDCFG_H | ||
21 | |||
22 | #define BTM_DEF_LOCAL_NAME "SMARC_MX8M" | ||
23 | |||
24 | // Disables Interleave scan | ||
25 | #define BTA_HOST_INTERLEAVE_SEARCH FALSE | ||
26 | // skips conn update at conn completion | ||
27 | #define BTA_BLE_SKIP_CONN_UPD TRUE | ||
28 | // Disables read remote device feature | ||
29 | #define BTA_SKIP_BLE_READ_REMOTE_FEAT TRUE | ||
30 | |||
31 | //Enable A2DPSink AVRCPController | ||
32 | #define BTA_AV_SINK_INCLUDED TRUE | ||
33 | #endif | ||
34 |
smarc_mx8m/build_id.mk
File was created | 1 | # | |
2 | # Copyright (C) 2008 The Android Open Source Project | ||
3 | # | ||
4 | # Licensed under the Apache License, Version 2.0 (the "License"); | ||
5 | # you may not use this file except in compliance with the License. | ||
6 | # You may obtain a copy of the License at | ||
7 | # | ||
8 | # http://www.apache.org/licenses/LICENSE-2.0 | ||
9 | # | ||
10 | # Unless required by applicable law or agreed to in writing, software | ||
11 | # distributed under the License is distributed on an "AS IS" BASIS, | ||
12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | ||
13 | # See the License for the specific language governing permissions and | ||
14 | # limitations under the License. | ||
15 | # | ||
16 | # BUILD_ID is usually used to specify the branch name | ||
17 | # (like "MAIN") or a branch name and a release candidate | ||
18 | # (like "CRB01"). It must be a single word, and is | ||
19 | # capitalized by convention. | ||
20 | |||
21 | export BUILD_ID=1.3.0-rfp-rc3 | ||
22 | export BUILD_NUMBER=20180406 | ||
23 |
smarc_mx8m/compatibility_matrix.xml
File was created | 1 | <compatibility-matrix version="1.0" type="device"> | |
2 | <hal format="hidl" optional="false"> | ||
3 | <name>android.frameworks.schedulerservice</name> | ||
4 | <version>1.0</version> | ||
5 | <interface> | ||
6 | <name>ISchedulingPolicyService</name> | ||
7 | <instance>default</instance> | ||
8 | </interface> | ||
9 | </hal> | ||
10 | <hal format="hidl" optional="false"> | ||
11 | <name>android.frameworks.sensorservice</name> | ||
12 | <version>1.0</version> | ||
13 | <interface> | ||
14 | <name>ISensorManager</name> | ||
15 | <instance>default</instance> | ||
16 | </interface> | ||
17 | </hal> | ||
18 | <hal format="hidl" optional="false"> | ||
19 | <name>android.hidl.allocator</name> | ||
20 | <version>1.0</version> | ||
21 | <interface> | ||
22 | <name>IAllocator</name> | ||
23 | <instance>ashmem</instance> | ||
24 | </interface> | ||
25 | </hal> | ||
26 | <hal format="hidl" optional="false"> | ||
27 | <name>android.hidl.manager</name> | ||
28 | <version>1.0</version> | ||
29 | <interface> | ||
30 | <name>IServiceManager</name> | ||
31 | <instance>default</instance> | ||
32 | </interface> | ||
33 | </hal> | ||
34 | <hal format="hidl" optional="false"> | ||
35 | <name>android.hidl.memory</name> | ||
36 | <version>1.0</version> | ||
37 | <interface> | ||
38 | <name>IMapper</name> | ||
39 | <instance>ashmem</instance> | ||
40 | </interface> | ||
41 | </hal> | ||
42 | <hal format="hidl" optional="false"> | ||
43 | <name>android.hidl.token</name> | ||
44 | <version>1.0</version> | ||
45 | <interface> | ||
46 | <name>ITokenManager</name> | ||
47 | <instance>default</instance> | ||
48 | </interface> | ||
49 | </hal> | ||
50 | <hal format="hidl" optional="false"> | ||
51 | <name>android.system.wifi.keystore</name> | ||
52 | <version>1.0</version> | ||
53 | <interface> | ||
54 | <name>IKeystore</name> | ||
55 | <instance>default</instance> | ||
56 | </interface> | ||
57 | </hal> | ||
58 | <hal format="native" optional="false"> | ||
59 | <name>netutils-wrapper</name> | ||
60 | <version>1.0</version> | ||
61 | </hal> | ||
62 | </compatibility-matrix> | ||
63 |
smarc_mx8m/fstab-f2fs.freescale
File was created | 1 | # Android fstab file. | |
2 | #<src> <mnt_point> <type> <mnt_flags and options> <fs_mgr_flags> | ||
3 | # The filesystem that contains the filesystem checker binary (typically /system) cannot | ||
4 | # specify MF_CHECK, and must come before any filesystems that do specify MF_CHECK | ||
5 | |||
6 | /dev/block/by-name/system /system ext4 ro wait | ||
7 | /dev/block/by-name/userdata /data f2fs noatime,nosuid,nodev wait,formattable,check,encryptable=/dev/block/by-name/datafooter | ||
8 | /dev/block/by-name/userdata /data ext4 nosuid,nodev,nodiratime,noatime,nomblk_io_submit,noauto_da_alloc,errors=panic wait,formattable,encryptable=/dev/block/by-name/datafooter | ||
9 | /dev/block/by-name/cache /cache f2fs noatime,nosuid,nodev wait,check | ||
10 | /dev/block/by-name/cache /cache ext4 nosuid,nodev,nomblk_io_submit wait | ||
11 | /dev/block/by-name/boot /boot emmc defaults defaults | ||
12 | /dev/block/by-name/recovery /recovery emmc defaults defaults | ||
13 | /dev/block/by-name/misc /misc emmc defaults defaults | ||
14 | /dev/block/by-name/bootloader /bootloader emmc defaults defaults | ||
15 | /dev/block/zram0 none swap defaults zramsize=314572800 | ||
16 | |||
17 |
smarc_mx8m/fstab.freescale
File was created | 1 | # Android fstab file. | |
2 | #<src> <mnt_point> <type> <mnt_flags and options> <fs_mgr_flags> | ||
3 | # The filesystem that contains the filesystem checker binary (typically /system) cannot | ||
4 | # specify MF_CHECK, and must come before any filesystems that do specify MF_CHECK | ||
5 | |||
6 | /devices/platform/usb@38200000/38200000.dwc3/* auto auto defaults voldmanaged=usb:auto | ||
7 | /dev/block/by-name/system / ext4 ro,barrier=1 wait,slotselect | ||
8 | /dev/block/by-name/userdata /data ext4 nosuid,nodev,nodiratime,noatime,nomblk_io_submit,noauto_da_alloc,errors=panic wait,formattable,quota,fileencryption=software | ||
9 | /dev/block/by-name/misc /misc emmc defaults defaults | ||
10 | /dev/block/zram0 none swap defaults zramsize=314572800 | ||
11 | |||
12 |
smarc_mx8m/init.freescale.emmc.rc
File was created | 1 | on init | |
2 | # link emmc node to /dev/block/by-name | ||
3 | symlink /dev/block/platform/30b40000.usdhc/by-name /dev/block/by-name | ||
4 | symlink /dev/block/platform/30b40000.usdhc/mmcblk0boot0 /dev/block/by-name/bootloader | ||
5 | |||
6 | # Load persistent dm-verity state | ||
7 | verity_load_state | ||
8 |
smarc_mx8m/init.freescale.sd.rc
File was created | 1 | on init | |
2 | # link emmc node to /dev/block/by-name | ||
3 | symlink /dev/block/platform/30b50000.usdhc/by-name /dev/block/by-name | ||
4 | symlink /dev/block/platform/30b50000.usdhc/mmcblk1 /dev/block/by-name/bootloader | ||
5 | |||
6 | # Load persistent dm-verity state | ||
7 | verity_load_state | ||
8 |
smarc_mx8m/init.imx8mq.drm.rc
File was created | 1 | import init.${ro.hardware}.${ro.boot.soc_type}.main.rc | |
2 | |||
3 | |||
4 | on post-fs-data | ||
5 | # create for OP-TEE test | ||
6 | mkdir /data/tee 0660 media media | ||
7 | mkdir /data/tee/optee_armtz 0660 media media | ||
8 | restorecon_recursive /data/tee | ||
9 | |||
10 | |||
11 | on boot | ||
12 | # optee device | ||
13 | chmod 0660 /dev/tee0 | ||
14 | chown media media /dev/tee0 | ||
15 | |||
16 | chmod 0660 /dev/teepriv0 | ||
17 | chown media media /dev/teepriv0 | ||
18 | |||
19 | |||
20 | service tee_supplicant /system/bin/tee-supplicant | ||
21 | class main | ||
22 | user root | ||
23 | group shell | ||
24 | oneshot | ||
25 | |||
26 |
smarc_mx8m/init.imx8mq.rc
File was created | 1 | on early-boot | |
2 | # Configure DRM in 64-bit architecture. This shall be done before to start | ||
3 | # the DRM service which is triggered by the 'on boot' event. | ||
4 | setprop drm.64bit.enabled true | ||
5 | |||
6 | on boot | ||
7 | |||
8 | # Set OpenGLES version | ||
9 | setprop ro.opengles.version 196609 | ||
10 | |||
11 | # Set GPU 3D minimum clock to 3/64 | ||
12 | write /sys/bus/platform/drivers/galcore/gpu3DMinClock 3 | ||
13 | |||
14 | # change for FSL specific service | ||
15 | chown root system /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq | ||
16 | chmod 0664 /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq | ||
17 | chown root system /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq | ||
18 | chmod 0664 /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq | ||
19 | chown root system /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor | ||
20 | chmod 0664 /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor | ||
21 | chown root system /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_cur_freq | ||
22 | chmod 0440 /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_cur_freq | ||
23 | chown root system /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_frequencies | ||
24 | chown root system /sys/devices/system/cpu/cpu0/online | ||
25 | chmod 0664 /sys/devices/system/cpu/cpu0/online | ||
26 | chown root system /sys/devices/system/cpu/cpu1/online | ||
27 | chmod 0664 /sys/devices/system/cpu/cpu1/online | ||
28 | chown root system /sys/devices/system/cpu/cpu2/online | ||
29 | chmod 0664 /sys/devices/system/cpu/cpu2/online | ||
30 | chown root system /sys/devices/system/cpu/cpu3/online | ||
31 | chmod 0664 /sys/devices/system/cpu/cpu3/online | ||
32 | |||
33 | on property:sys.boot_completed=1 | ||
34 | # Set default CPU frequency governor | ||
35 | # Set timer 40ms, min sample 60ms,hispeed at cpufreq MAX freq in freq_table at load 40% | ||
36 | write /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor interactive | ||
37 | write /sys/devices/system/cpu/cpufreq/interactive/timer_rate 40000 | ||
38 | write /sys/devices/system/cpu/cpufreq/interactive/min_sample_time 60000 | ||
39 | write /sys/devices/system/cpu/cpufreq/interactive/go_hispeed_load 40 | ||
40 | # change interactive atrrubuties permissions when interactive is actived | ||
41 | on property:sys.interactive="active" | ||
42 | chown system root /sys/devices/system/cpu/cpufreq/interactive/timer_rate | ||
43 | chmod 0660 /sys/devices/system/cpu/cpufreq/interactive/timer_rate | ||
44 | chown system root /sys/devices/system/cpu/cpufreq/interactive/min_sample_time | ||
45 | chmod 0660 /sys/devices/system/cpu/cpufreq/interactive/min_sample_time | ||
46 | chown system root /sys/devices/system/cpu/cpufreq/interactive/hispeed_freq | ||
47 | chmod 0660 /sys/devices/system/cpu/cpufreq/interactive/hispeed_freq | ||
48 | chown system root /sys/devices/system/cpu/cpufreq/interactive/go_hispeed_load | ||
49 | chmod 0660 /sys/devices/system/cpu/cpufreq/interactive/go_hispeed_load | ||
50 | chown system root /sys/devices/system/cpu/cpufreq/interactive/above_hispeed_delay | ||
51 | chmod 0660 /sys/devices/system/cpu/cpufreq/interactive/above_hispeed_delay | ||
52 | chown system root /sys/devices/system/cpu/cpufreq/interactive/boost | ||
53 | chmod 0660 /sys/devices/system/cpu/cpufreq/interactive/boost | ||
54 | chown system root /sys/devices/system/cpu/cpufreq/interactive/boostpulse | ||
55 | chmod 0660 /sys/devices/system/cpu/cpufreq/interactive/boostpulse | ||
56 | chown system system /sys/devices/system/cpu/cpufreq/interactive/boostpulse_duration | ||
57 | chmod 0660 /sys/devices/system/cpu/cpufreq/interactive/boostpulse_duration | ||
58 | chown system system /sys/devices/system/cpu/cpufreq/interactive/io_is_busy | ||
59 | chmod 0660 /sys/devices/system/cpu/cpufreq/interactive/io_is_busy | ||
60 | write /sys/devices/system/cpu/cpufreq/interactive/timer_rate 40000 | ||
61 | write /sys/devices/system/cpu/cpufreq/interactive/min_sample_time 60000 | ||
62 | write /sys/devices/system/cpu/cpufreq/interactive/go_hispeed_load 40 | ||
63 |
smarc_mx8m/init.rc
File was created | 1 | import init.${ro.hardware}.usb.rc | |
2 | import init.${ro.hardware}.${ro.boot.soc_type}.rc | ||
3 | import init.${ro.hardware}.${ro.boot.storage_type}.rc | ||
4 | |||
5 | on early-init | ||
6 | # mount the debugfs | ||
7 | mount debugfs none /sys/kernel/debug/ mode=0755 | ||
8 | |||
9 | on early-init | ||
10 | exec u:r:modprobe:s0 -- /vendor/bin/modprobe -a -d /vendor/lib/modules ath.ko ath10k_core.ko ath10k_pci.ko | ||
11 | |||
12 | on init | ||
13 | start watchdogd | ||
14 | |||
15 | # Support legacy paths | ||
16 | symlink /sdcard /mnt/sdcard | ||
17 | symlink /sdcard /storage/sdcard0 | ||
18 | |||
19 | # setup the global environment | ||
20 | export CORE_REGISTER_FILE /vendor/etc/core_register | ||
21 | export COMPONENT_REGISTER_FILE /vendor/etc/component_register | ||
22 | export CONTENTPIPE_REGISTER_FILE /vendor/etc/contentpipe_register | ||
23 | |||
24 | # disable cursor blink for fbcon, if no splash screen support | ||
25 | write /sys/class/graphics/fbcon/cursor_blink 0 | ||
26 | |||
27 | # deattch the fbcon as hdmi hotplug conflict with fbcon | ||
28 | write /sys/class/vtconsole/vtcon1/bind 0 | ||
29 | |||
30 | mkdir /device 0771 system system | ||
31 | |||
32 | on boot | ||
33 | |||
34 | # emmulate battery property | ||
35 | setprop sys.emulated.battery 1 | ||
36 | |||
37 | # Set permission for IIM node | ||
38 | symlink /dev/mxs_viim /dev/mxc_mem | ||
39 | |||
40 | # Enable Tethering in the Settings | ||
41 | setprop ro.tether.denied false | ||
42 | |||
43 | # 3D acceleration property | ||
44 | setprop debug.sf.showfps 0 | ||
45 | setprop debug.sf.enable_hgl 1 | ||
46 | setprop debug.egl.hw 1 | ||
47 | |||
48 | setprop hwc.stretch.filter 1 | ||
49 | setprop hwc.enable_dither 1 | ||
50 | |||
51 | # fsl omx graphic manager media framework property | ||
52 | setprop media.omxgm.enable-player 0 | ||
53 | setprop media.omxgm.enable-record 0 | ||
54 | setprop media.omxgm.enable-scan 1 | ||
55 | setprop rw.VIDEO_RENDER_NAME video_render.surface | ||
56 | setprop media.fsl_codec.flag 7 | ||
57 | |||
58 | #Define the config for dual camera | ||
59 | #For landscape mode, orient is 0 | ||
60 | #For portrait mode, orient is 90 | ||
61 | #the android before honycomb are all in portrait mode | ||
62 | setprop camera.disable_zsl_mode 1 | ||
63 | setprop back_camera_name mx6s-csi | ||
64 | setprop back_camera_orient 0 | ||
65 | setprop front_camera_name uvc | ||
66 | setprop front_camera_orient 0 | ||
67 | |||
68 | # Tweak the mmc device read ahead buffer size | ||
69 | write /sys/block/mmcblk0/queue/read_ahead_kb 2048 | ||
70 | write /sys/block/mmcblk1/queue/read_ahead_kb 2048 | ||
71 | |||
72 | # ALSA mixer naming define | ||
73 | setprop alsa.mixer.playback.master Playback | ||
74 | setprop alsa.mixer.capture.master Capture | ||
75 | setprop alsa.mixer.playback.speaker Playback | ||
76 | setprop alsa.mixer.playback.headset Headphone | ||
77 | setprop alsa.mixer.capture.headset Capture | ||
78 | |||
79 | # Set period_us for usb audio | ||
80 | setprop ro.audio.usb.period_us 20000 | ||
81 | |||
82 | # Wifi firmware reload path | ||
83 | chown wifi wifi /sys/module/bcmdhd/parameters/firmware_path | ||
84 | chown wifi wifi /sys/module/bcmdhd/parameters/nvram_path | ||
85 | |||
86 | # Prepare for wifi | ||
87 | setprop wifi.interface wlan0 | ||
88 | setprop wifi.ap.interface wlan0 | ||
89 | |||
90 | # Prepare for bluetooth | ||
91 | chmod 665 /sys/class/rfkill/rfkill0/state | ||
92 | chown bluetooth bluetooth /sys/class/rfkill/rfkill0/state | ||
93 | write /sys/class/rfkill/rfkill0/state 0 | ||
94 | |||
95 | setprop qcom.bluetooth.soc rome_uart | ||
96 | setprop wc_transport.start_hci false | ||
97 | |||
98 | # Prepare for RIL | ||
99 | setprop gsm.ril.delay 15 | ||
100 | setprop ro.ril.wake_lock_timeout 300 | ||
101 | |||
102 | # Set rotation to 270 to cofigure as portrait mode | ||
103 | setprop ro.sf.hwrotation 0 | ||
104 | |||
105 | # Set the density to 213 tvdpi to match CDD. | ||
106 | setprop ro.sf.lcd_density 213 | ||
107 | |||
108 | # Set extsd access permission | ||
109 | setprop persist.sampling_profiler 1 | ||
110 | |||
111 | # prepare for ril | ||
112 | setprop gsm.ril.delay 15 | ||
113 | setprop ro.ril.wake_lock_timeout 300 | ||
114 | |||
115 | # Set tracefs permission to 755 | ||
116 | chmod 0755 /sys/kernel/debug/tracing | ||
117 | |||
118 | # Default backlight device | ||
119 | setprop hw.backlight.dev "backlight" | ||
120 | # Chmod/chown FSL specific sys entry | ||
121 | chown system system /sys/class/backlight/backlight/brightness | ||
122 | chmod 0660 /sys/class/backlight/backlight/brightness | ||
123 | |||
124 | # Set light sensor sysfs path and light sensor threshold lux value | ||
125 | setprop ro.hardware.lightsensor "/sys/class/i2c-dev/i2c-0/device/0-0044/" | ||
126 | setprop ro.lightsensor.threshold 20 | ||
127 | |||
128 | # No bluetooth hardware present | ||
129 | setprop hw.bluetooth 0 | ||
130 | setprop wlan.interface wlan0 | ||
131 | # Set WiFi Display Source VideoBitRate Adaptive | ||
132 | setprop media.wfd.video-bitrate 3000000 | ||
133 | |||
134 | service wpa_supplicant /vendor/bin/hw/wpa_supplicant \ | ||
135 | -iwlan0 -Dnl80211 -c/data/misc/wifi/wpa_supplicant.conf \ | ||
136 | -e/data/misc/wifi/entropy.bin -g@android:wpa_wlan0 | ||
137 | socket wpa_wlan0 dgram 660 wifi wifi | ||
138 | class main | ||
139 | disabled | ||
140 | oneshot | ||
141 | |||
142 | service sensor_fusion /vendor/bin/fsl_sensor_fusion | ||
143 | class late_start | ||
144 | seclabel u:r:sensors:s0 | ||
145 | user system | ||
146 | group input | ||
147 | oneshot | ||
148 | |||
149 | # Set watchdog timer to 30 seconds and pet it every 10 seconds to get a 20 second margin | ||
150 | service watchdogd /sbin/watchdogd 10 20 | ||
151 | class core | ||
152 | seclabel u:r:watchdogd:s0 | ||
153 | |||
154 | service dhcpcd_wlan0 /system/bin/dhcpcd -aABDKL | ||
155 | class main | ||
156 | disabled | ||
157 | oneshot | ||
158 | |||
159 | service dhcpcd_p2p /system/bin/dhcpcd -aABKL | ||
160 | class main | ||
161 | disabled | ||
162 | oneshot | ||
163 | |||
164 | service dhcpcd_eth0 /system/bin/dhcpcd -ABKL eth0 | ||
165 | class main | ||
166 | disabled | ||
167 | oneshot | ||
168 | |||
169 | service dhcpcd_bt-pan /system/bin/dhcpcd -ABKL | ||
170 | class main | ||
171 | disabled | ||
172 | oneshot | ||
173 | |||
174 | service iprenew_wlan0 /system/bin/dhcpcd -n | ||
175 | class main | ||
176 | disabled | ||
177 | oneshot | ||
178 | |||
179 | service iprenew_p2p /system/bin/dhcpcd -n | ||
180 | class main | ||
181 | disabled | ||
182 | oneshot | ||
183 | |||
184 | service iprenew_eth0 /system/bin/dhcpcd -n eth0 | ||
185 | class main | ||
186 | disabled | ||
187 | oneshot | ||
188 | |||
189 | service iprenew_bt-pan /system/bin/dhcpcd -n | ||
190 | class main | ||
191 | disabled | ||
192 | oneshot | ||
193 | |||
194 | # bugreport is triggered by holding down volume down, volume up and power | ||
195 | service bugreport /system/bin/dumpstate -d -p -B -z \ | ||
196 | -o /data/user_de/0/com.android.shell/files/bugreports/bugreport | ||
197 | class main | ||
198 | disabled | ||
199 | oneshot | ||
200 | keycodes 114 115 116 | ||
201 | |||
202 | on property:wc_transport.start_hci=true | ||
203 | start start_hci_filter | ||
204 | |||
205 | on property:wc_transport.start_hci=false | ||
206 | stop start_hci_filter | ||
207 | |||
208 | service start_hci_filter /vendor/bin/wcnss_filter | ||
209 | class late_start | ||
210 | user bluetooth | ||
211 | group bluetooth diag | ||
212 | disabled | ||
213 | |||
214 | on property:wc_transport.start_root=true | ||
215 | start hci_filter_root | ||
216 | |||
217 | on property:wc_transport.start_root=false | ||
218 | stop hci_filter_root | ||
219 | |||
220 | service hci_filter_root /vendor/bin/wcnss_filter | ||
221 | class late_start | ||
222 | user bluetooth | ||
223 | group bluetooth diag system | ||
224 | disabled | ||
225 | |||
226 | on fs | ||
227 | # mount ext4 partitions | ||
228 | mount_all /fstab.freescale | ||
229 | |||
230 | # Adjust parameters for dm-verity device | ||
231 | write /sys/block/dm-0/queue/read_ahead_kb 4096 | ||
232 | |||
233 | # Update dm-verity state and set partition.*.verified properties | ||
234 | verity_update_state | ||
235 | |||
236 | on verity-logging | ||
237 | exec u:r:slideshow:s0 -- /sbin/slideshow warning/verity_red_1 warning/verity_red_2 | ||
238 | |||
239 | on post-fs | ||
240 | # Turn on swap | ||
241 | swapon_all /fstab.freescale | ||
242 | |||
243 | # Swap in only 1 page at a time | ||
244 | write /proc/sys/vm/page-cluster 0 | ||
245 | |||
246 | # This may have been created by the recovery system with the wrong context. | ||
247 | restorecon /cache/recovery | ||
248 | |||
249 | on post-fs-data | ||
250 | setprop vold.post_fs_data_done 1 | ||
251 |
smarc_mx8m/init.usb.rc
File was created | 1 | on boot | |
2 | write /config/usb_gadget/g1/strings/0x409/serialnumber ${ro.serialno} | ||
3 | write /config/usb_gadget/g1/strings/0x409/manufacturer ${ro.product.manufacturer} | ||
4 | write /config/usb_gadget/g1/strings/0x409/product ${ro.product.model} | ||
5 | |||
6 | # OS DESCRIPTORS | ||
7 | #=============== | ||
8 | # OS STRING | ||
9 | #---------- | ||
10 | write /config/usb_gadget/g1/os_desc/b_vendor_code 1 | ||
11 | write /config/usb_gadget/g1/os_desc/qw_sign "MSFT100" | ||
12 | # use os desc or not is up to each usb functions respectively | ||
13 | # write /config/usb_gadget/g1/os_desc/use 1 | ||
14 | |||
15 | # MAKE b.1 THE ONE ASSOCIATED WITH OS DESCRIPTORS | ||
16 | #------------------------------------------------ | ||
17 | symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b1 | ||
18 | |||
19 | setprop sys.usb.configfs 1 | ||
20 | |||
21 | # 38100000.dwc3 is the fixed UDC name for 8mq type c usb | ||
22 | setprop sys.usb.controller 38100000.dwc3 | ||
23 | |||
24 | on fs | ||
25 | mkdir /dev/usb-ffs 0770 shell shell | ||
26 | mkdir /dev/usb-ffs/adb 0770 shell shell | ||
27 | # mount the configfs on /config | ||
28 | mount configfs none /config mode=0755 | ||
29 | mkdir /config/usb_gadget/g1 | ||
30 | mkdir /config/usb_gadget/g1/configs/b.1 | ||
31 | # mkdir for functions needed | ||
32 | # this will call each gadget's alloc_inst() | ||
33 | mkdir /config/usb_gadget/g1/functions/ffs.adb | ||
34 | mkdir /config/usb_gadget/g1/functions/mtp.gs0 | ||
35 | mkdir /config/usb_gadget/g1/functions/ptp.gs1 | ||
36 | mkdir /config/usb_gadget/g1/functions/accessory.gs2 | ||
37 | mkdir /config/usb_gadget/g1/functions/audio_source.gs3 | ||
38 | mkdir /config/usb_gadget/g1/functions/rndis.gs4 | ||
39 | mkdir /config/usb_gadget/g1/functions/midi.gs5 | ||
40 | mkdir /config/usb_gadget/g1/strings/0x409 | ||
41 | mkdir /config/usb_gadget/g1/configs/b.1/strings/0x409 | ||
42 | # The mount of functionfs for adb must be put AFTER the mkdir for functions in configfs | ||
43 | mount functionfs adb /dev/usb-ffs/adb uid=2000,gid=2000 | ||
44 | |||
45 | on property:sys.usb.config=none && property:sys.usb.configfs=1 | ||
46 | write /config/usb_gadget/g1/os_desc/use 0 | ||
47 | |||
48 | on property:sys.usb.ffs.ready=1 && property:sys.usb.config=adb && property:sys.usb.configfs=1 | ||
49 | write /config/usb_gadget/g1/idProduct 0x4ee7 | ||
50 | write /config/usb_gadget/g1/idVendor 0x18d1 | ||
51 | |||
52 | on property:sys.usb.config=mtp && property:sys.usb.configfs=1 | ||
53 | write /config/usb_gadget/g1/functions/mtp.gs0/os_desc/interface.MTP/compatible_id "MTP" | ||
54 | write /config/usb_gadget/g1/os_desc/use 1 | ||
55 | write /config/usb_gadget/g1/idProduct 0x4ee1 | ||
56 | write /config/usb_gadget/g1/idVendor 0x18d1 | ||
57 | |||
58 | on property:sys.usb.ffs.ready=1 && property:sys.usb.config=mtp,adb && property:sys.usb.configfs=1 | ||
59 | write /config/usb_gadget/g1/functions/mtp.gs0/os_desc/interface.MTP/compatible_id "MTP" | ||
60 | write /config/usb_gadget/g1/os_desc/use 1 | ||
61 | write /config/usb_gadget/g1/idProduct 0x4ee2 | ||
62 | write /config/usb_gadget/g1/idVendor 0x18d1 | ||
63 | |||
64 | on property:sys.usb.config=ptp && property:sys.usb.configfs=1 | ||
65 | write /config/usb_gadget/g1/functions/ptp.gs1/os_desc/interface.MTP/compatible_id "PTP" | ||
66 | write /config/usb_gadget/g1/os_desc/use 1 | ||
67 | write /config/usb_gadget/g1/idProduct 0x4ee5 | ||
68 | write /config/usb_gadget/g1/idVendor 0x18d1 | ||
69 | |||
70 | on property:sys.usb.ffs.ready=1 && property:sys.usb.config=ptp,adb && property:sys.usb.configfs=1 | ||
71 | write /config/usb_gadget/g1/functions/ptp.gs1/os_desc/interface.MTP/compatible_id "PTP" | ||
72 | write /config/usb_gadget/g1/os_desc/use 1 | ||
73 | write /config/usb_gadget/g1/idProduct 0x4ee6 | ||
74 | write /config/usb_gadget/g1/idVendor 0x18d1 | ||
75 | |||
76 | on property:sys.usb.config=accessory && property:sys.usb.configfs=1 | ||
77 | write /config/usb_gadget/g1/idProduct 0x2d00 | ||
78 | write /config/usb_gadget/g1/idVendor 0x18d1 | ||
79 | |||
80 | on property:sys.usb.ffs.ready=1 && property:sys.usb.config=accessory,adb && property:sys.usb.configfs=1 | ||
81 | write /config/usb_gadget/g1/idProduct 0x2d01 | ||
82 | write /config/usb_gadget/g1/idVendor 0x18d1 | ||
83 | |||
84 | on property:sys.usb.config=audio_source && property:sys.usb.configfs=1 | ||
85 | write /config/usb_gadget/g1/idProduct 0x2d02 | ||
86 | write /config/usb_gadget/g1/idVendor 0x18d1 | ||
87 | |||
88 | on property:sys.usb.ffs.ready=1 && property:sys.usb.config=audio_source,adb && property:sys.usb.configfs=1 | ||
89 | write /config/usb_gadget/g1/idProduct 0x2d03 | ||
90 | write /config/usb_gadget/g1/idVendor 0x18d1 | ||
91 | |||
92 | on property:sys.usb.config=accessory,audio_source && property:sys.usb.configfs=1 | ||
93 | write /config/usb_gadget/g1/idProduct 0x2d04 | ||
94 | write /config/usb_gadget/g1/idVendor 0x18d1 | ||
95 | |||
96 | on property:sys.usb.ffs.ready=1 && property:sys.usb.config=accessory,audio_source,adb && property:sys.usb.configfs=1 | ||
97 | write /config/usb_gadget/g1/idProduct 0x2d05 | ||
98 | write /config/usb_gadget/g1/idVendor 0x18d1 | ||
99 | |||
100 | on property:sys.usb.config=midi && property:sys.usb.configfs=1 | ||
101 | write /config/usb_gadget/g1/idProduct 0x4ee8 | ||
102 | write /config/usb_gadget/g1/idVendor 0x18d1 | ||
103 | |||
104 | on property:sys.usb.ffs.ready=1 && property:sys.usb.config=midi,adb && property:sys.usb.configfs=1 | ||
105 | write /config/usb_gadget/g1/idProduct 0x4ee9 | ||
106 | write /config/usb_gadget/g1/idVendor 0x18d1 | ||
107 | |||
108 | on property:sys.usb.config=rndis && property:sys.usb.configfs=1 | ||
109 | write /config/usb_gadget/g1/functions/rndis.gs4/os_desc/interface.rndis/compatible_id "RNDIS" | ||
110 | write /config/usb_gadget/g1/os_desc/use 1 | ||
111 | write /config/usb_gadget/g1/idProduct 0x4ee3 | ||
112 | write /config/usb_gadget/g1/idVendor 0x18d1 | ||
113 | |||
114 | on property:sys.usb.ffs.ready=1 && property:sys.usb.config=rndis,adb && property:sys.usb.configfs=1 | ||
115 | write /config/usb_gadget/g1/functions/rndis.gs4/os_desc/interface.rndis/compatible_id "RNDIS" | ||
116 | write /config/usb_gadget/g1/os_desc/use 1 | ||
117 | write /config/usb_gadget/g1/idProduct 0x4ee4 | ||
118 | write /config/usb_gadget/g1/idVendor 0x18d1 | ||
119 |
smarc_mx8m/manifest.xml
File was created | 1 | <manifest version="1.0" type="device"> | |
2 | <hal format="hidl"> | ||
3 | <name>android.hardware.graphics.allocator</name> | ||
4 | <transport>hwbinder</transport> | ||
5 | <impl level="generic"></impl> | ||
6 | <version>2.0</version> | ||
7 | <interface> | ||
8 | <name>IAllocator</name> | ||
9 | <instance>default</instance> | ||
10 | </interface> | ||
11 | </hal> | ||
12 | <hal format="hidl"> | ||
13 | <name>android.hardware.graphics.composer</name> | ||
14 | <transport>hwbinder</transport> | ||
15 | <version>2.1</version> | ||
16 | <interface> | ||
17 | <name>IComposer</name> | ||
18 | <instance>default</instance> | ||
19 | </interface> | ||
20 | </hal> | ||
21 | <hal format="hidl"> | ||
22 | <name>android.hardware.keymaster</name> | ||
23 | <transport>hwbinder</transport> | ||
24 | <version>3.0</version> | ||
25 | <interface> | ||
26 | <name>IKeymasterDevice</name> | ||
27 | <instance>default</instance> | ||
28 | </interface> | ||
29 | </hal> | ||
30 | <hal format="hidl"> | ||
31 | <name>android.hardware.drm</name> | ||
32 | <transport>hwbinder</transport> | ||
33 | <version>1.0</version> | ||
34 | <interface> | ||
35 | <name>ICryptoFactory</name> | ||
36 | <instance>default</instance> | ||
37 | </interface> | ||
38 | <interface> | ||
39 | <name>IDrmFactory</name> | ||
40 | <instance>default</instance> | ||
41 | </interface> | ||
42 | </hal> | ||
43 | <hal format="hidl"> | ||
44 | <name>android.hardware.gatekeeper</name> | ||
45 | <transport>hwbinder</transport> | ||
46 | <version>1.0</version> | ||
47 | <interface> | ||
48 | <name>IGatekeeper</name> | ||
49 | <instance>default</instance> | ||
50 | </interface> | ||
51 | </hal> | ||
52 | <hal format="hidl"> | ||
53 | <name>android.hardware.graphics.mapper</name> | ||
54 | <transport arch="32+64">passthrough</transport> | ||
55 | <impl level="generic"></impl> | ||
56 | <version>2.0</version> | ||
57 | <interface> | ||
58 | <name>IMapper</name> | ||
59 | <instance>default</instance> | ||
60 | </interface> | ||
61 | </hal> | ||
62 | <hal format="hidl"> | ||
63 | <name>android.hardware.renderscript</name> | ||
64 | <transport arch="32+64">passthrough</transport> | ||
65 | <version>1.0</version> | ||
66 | <interface> | ||
67 | <name>IDevice</name> | ||
68 | <instance>default</instance> | ||
69 | </interface> | ||
70 | </hal> | ||
71 | <hal format="hidl"> | ||
72 | <name>android.hardware.cas</name> | ||
73 | <transport>hwbinder</transport> | ||
74 | <version>1.0</version> | ||
75 | <interface> | ||
76 | <name>IMediaCasService</name> | ||
77 | <instance>default</instance> | ||
78 | </interface> | ||
79 | </hal> | ||
80 | <hal format="hidl"> | ||
81 | <name>android.hardware.configstore</name> | ||
82 | <transport>hwbinder</transport> | ||
83 | <version>1.0</version> | ||
84 | <interface> | ||
85 | <name>ISurfaceFlingerConfigs</name> | ||
86 | <instance>default</instance> | ||
87 | </interface> | ||
88 | </hal> | ||
89 | <hal format="hidl"> | ||
90 | <name>android.hardware.media.omx</name> | ||
91 | <transport>hwbinder</transport> | ||
92 | <version>1.0</version> | ||
93 | <interface> | ||
94 | <name>IOmx</name> | ||
95 | <instance>default</instance> | ||
96 | </interface> | ||
97 | <interface> | ||
98 | <name>IOmxStore</name> | ||
99 | <instance>default</instance> | ||
100 | </interface> | ||
101 | </hal> | ||
102 | <hal format="hidl"> | ||
103 | <name>android.hardware.wifi</name> | ||
104 | <transport>hwbinder</transport> | ||
105 | <version>1.1</version> | ||
106 | <interface> | ||
107 | <name>IWifi</name> | ||
108 | <instance>default</instance> | ||
109 | </interface> | ||
110 | </hal> | ||
111 | <hal format="hidl"> | ||
112 | <name>android.hardware.wifi.supplicant</name> | ||
113 | <transport>hwbinder</transport> | ||
114 | <version>1.0</version> | ||
115 | <interface> | ||
116 | <name>ISupplicant</name> | ||
117 | <instance>default</instance> | ||
118 | </interface> | ||
119 | </hal> | ||
120 | <hal format="hidl"> | ||
121 | <name>android.hardware.camera.provider</name> | ||
122 | <transport>hwbinder</transport> | ||
123 | <impl level="generic"></impl> | ||
124 | <version>2.4</version> | ||
125 | <interface> | ||
126 | <name>ICameraProvider</name> | ||
127 | <instance>legacy/0</instance> | ||
128 | </interface> | ||
129 | </hal> | ||
130 | <hal format="hidl"> | ||
131 | <name>android.hardware.light</name> | ||
132 | <transport>hwbinder</transport> | ||
133 | <version>2.0</version> | ||
134 | <interface> | ||
135 | <name>ILight</name> | ||
136 | <instance>default</instance> | ||
137 | </interface> | ||
138 | </hal> | ||
139 | <hal format="hidl"> | ||
140 | <name>android.hardware.memtrack</name> | ||
141 | <transport>hwbinder</transport> | ||
142 | <version>1.0</version> | ||
143 | <interface> | ||
144 | <name>IMemtrack</name> | ||
145 | <instance>default</instance> | ||
146 | </interface> | ||
147 | </hal> | ||
148 | <hal format="hidl"> | ||
149 | <name>android.hardware.power</name> | ||
150 | <transport>hwbinder</transport> | ||
151 | <version>1.0</version> | ||
152 | <interface> | ||
153 | <name>IPower</name> | ||
154 | <instance>default</instance> | ||
155 | </interface> | ||
156 | </hal> | ||
157 | <hal format="hidl"> | ||
158 | <name>android.hardware.audio</name> | ||
159 | <transport>hwbinder</transport> | ||
160 | <version>2.0</version> | ||
161 | <interface> | ||
162 | <name>IDevicesFactory</name> | ||
163 | <instance>default</instance> | ||
164 | </interface> | ||
165 | </hal> | ||
166 | <hal format="hidl"> | ||
167 | <name>android.hardware.audio.effect</name> | ||
168 | <transport>hwbinder</transport> | ||
169 | <version>2.0</version> | ||
170 | <interface> | ||
171 | <name>IEffectsFactory</name> | ||
172 | <instance>default</instance> | ||
173 | </interface> | ||
174 | </hal> | ||
175 | <hal format="hidl"> | ||
176 | <name>android.hardware.usb</name> | ||
177 | <transport>hwbinder</transport> | ||
178 | <version>1.1</version> | ||
179 | <interface> | ||
180 | <name>IUsb</name> | ||
181 | <instance>default</instance> | ||
182 | </interface> | ||
183 | </hal> | ||
184 | <hal format="hidl"> | ||
185 | <name>android.hardware.bluetooth</name> | ||
186 | <transport>hwbinder</transport> | ||
187 | <version>1.0</version> | ||
188 | <interface> | ||
189 | <name>IBluetoothHci</name> | ||
190 | <instance>default</instance> | ||
191 | </interface> | ||
192 | </hal> | ||
193 | <hal format="hidl"> | ||
194 | <name>android.hardware.boot</name> | ||
195 | <transport>hwbinder</transport> | ||
196 | <version>1.0</version> | ||
197 | <interface> | ||
198 | <name>IBootControl</name> | ||
199 | <instance>default</instance> | ||
200 | </interface> | ||
201 | </hal> | ||
202 | </manifest> | ||
203 |
smarc_mx8m/overlay/frameworks/base/core/res/res/drawable-nodpi/default_wallpaper.png
3.39 MB
smarc_mx8m/overlay/frameworks/base/core/res/res/drawable-sw600dp-nodpi/default_wallpaper.png
3.39 MB
smarc_mx8m/overlay/frameworks/base/core/res/res/drawable-sw720dp-nodpi/default_wallpaper.png