├── Android.mk
├── AndroidProducts.mk
├── BoardConfig.mk
├── README.md
├── audio
├── audio_platform_info_intcodec.xml
├── audio_policy_engine_configuration.xml
├── audio_policy_engine_default_stream_volumes.xml
├── audio_policy_engine_product_strategies.xml
├── audio_policy_engine_stream_volumes.xml
├── audio_policy_volumes.xml
├── mixer_paths_idp.xml
└── sound_trigger_mixer_paths.xml
├── board-info.txt
├── configs
└── sensors
│ └── hals.conf
├── device.mk
├── extract-files.py
├── init
├── Android.bp
└── init_davinci.cpp
├── lineage.dependencies
├── lineage_davinci.mk
├── manifest.xml
├── manifest_davinci.xml
├── nfc
├── libnfc-nci.conf
├── libnfc-nxp.conf
└── libnfc-nxp_RF.conf
├── overlay
├── frameworks
│ └── base
│ │ ├── core
│ │ └── res
│ │ │ └── res
│ │ │ ├── values
│ │ │ └── config.xml
│ │ │ └── xml
│ │ │ └── power_profile.xml
│ │ └── packages
│ │ └── SystemUI
│ │ └── res
│ │ ├── drawable-nodpi
│ │ └── udfps_icon_pressed.png
│ │ └── values
│ │ ├── config.xml
│ │ └── dimens.xml
└── packages
│ └── apps
│ ├── Aperture
│ └── app
│ │ └── src
│ │ └── main
│ │ └── res
│ │ └── values
│ │ └── config.xml
│ └── Settings
│ └── res
│ └── values
│ ├── config.xml
│ ├── derp_strings.xml
│ └── dimens.xml
├── power
└── powerhint.json
├── product.prop
├── proprietary-files.txt
├── reorder-libs.py
├── rootdir
├── Android.mk
└── etc
│ ├── fstab.default
│ ├── fstab.recovery
│ └── init.davinci.rc
├── rro_overlays
├── WifiOverlayF10C
│ ├── Android.bp
│ ├── AndroidManifest.xml
│ └── res
│ │ └── values
│ │ └── config.xml
├── WifiOverlayF10G
│ ├── Android.bp
│ ├── AndroidManifest.xml
│ └── res
│ │ └── values
│ │ └── config.xml
└── WifiOverlayF10I
│ ├── Android.bp
│ ├── AndroidManifest.xml
│ └── res
│ └── values
│ └── config.xml
├── setup-makefiles.py
├── update-sha1sums.py
└── vendor.prop
/Android.mk:
--------------------------------------------------------------------------------
1 | #
2 | # Copyright (C) 2019 The LineageOS Project
3 | #
4 | # SPDX-License-Identifier: Apache-2.0
5 | #
6 |
7 | LOCAL_PATH := $(call my-dir)
8 |
9 | ifneq ($(filter davinci,$(TARGET_DEVICE)),)
10 | include $(call all-makefiles-under,$(LOCAL_PATH))
11 | endif
12 |
--------------------------------------------------------------------------------
/AndroidProducts.mk:
--------------------------------------------------------------------------------
1 | #
2 | # Copyright (C) 2019 The LineageOS Project
3 | #
4 | # SPDX-License-Identifier: Apache-2.0
5 | #
6 |
7 | PRODUCT_MAKEFILES := \
8 | $(LOCAL_DIR)/lineage_davinci.mk
9 |
10 | COMMON_LUNCH_CHOICES := \
11 | lineage_davinci-user \
12 | lineage_davinci-userdebug \
13 | lineage_davinci-eng
14 |
--------------------------------------------------------------------------------
/BoardConfig.mk:
--------------------------------------------------------------------------------
1 | #
2 | # Copyright (C) 2019-2020 The LineageOS Project
3 | #
4 | # SPDX-License-Identifier: Apache-2.0
5 | #
6 |
7 | # Boot
8 | BOARD_BOOT_HEADER_VERSION := 1
9 |
10 | # Display density
11 | TARGET_SCREEN_DENSITY := 440
12 |
13 | # Inherit from sm6150-common
14 | include device/xiaomi/sm6150-common/BoardConfigCommon.mk
15 |
16 | DEVICE_PATH := device/xiaomi/davinci
17 |
18 | # Properties
19 | TARGET_PRODUCT_PROP += $(DEVICE_PATH)/product.prop
20 | TARGET_VENDOR_PROP += $(DEVICE_PATH)/vendor.prop
21 |
22 | # Assert
23 | TARGET_OTA_ASSERT_DEVICE := davinci,davinciin
24 |
25 | # Audio
26 | AUDIO_FEATURE_ENABLED_EXT_AMPLIFIER := true
27 |
28 | # Fingerprint
29 | TARGET_USES_FOD_ZPOS := true
30 | SOONG_CONFIG_xiaomiVars_uses_fod_extension := $(TARGET_USES_FOD_ZPOS)
31 |
32 | # Kernel
33 | BOARD_KERNEL_BASE := 0x00000000
34 | BOARD_KERNEL_CMDLINE += androidboot.hardware.revision=V1
35 | TARGET_KERNEL_CONFIG := vendor/davinci_defconfig vendor/debugfs.config
36 |
37 | # Partitions
38 | BOARD_SUPER_PARTITION_BLOCK_DEVICES := vendor system cust
39 | BOARD_SUPER_PARTITION_METADATA_DEVICE := system
40 | BOARD_SUPER_PARTITION_VENDOR_DEVICE_SIZE := 1610612736
41 | BOARD_SUPER_PARTITION_SYSTEM_DEVICE_SIZE := 3758096384
42 | BOARD_SUPER_PARTITION_CUST_DEVICE_SIZE := 1073741824
43 | BOARD_SUPER_PARTITION_SIZE := $(shell expr $(BOARD_SUPER_PARTITION_VENDOR_DEVICE_SIZE) + $(BOARD_SUPER_PARTITION_SYSTEM_DEVICE_SIZE) + $(BOARD_SUPER_PARTITION_CUST_DEVICE_SIZE) )
44 |
45 | BOARD_SUPER_PARTITION_GROUPS := davinci_dynpart
46 | BOARD_DAVINCI_DYNPART_SIZE := $(shell expr $(BOARD_SUPER_PARTITION_SIZE) - 4194304 )
47 | BOARD_DAVINCI_DYNPART_PARTITION_LIST := odm product system system_ext vendor
48 |
49 | BOARD_ODMIMAGE_FILE_SYSTEM_TYPE := ext4
50 | BOARD_PRODUCTIMAGE_FILE_SYSTEM_TYPE := ext4
51 | BOARD_SYSTEM_EXTIMAGE_FILE_SYSTEM_TYPE := ext4
52 |
53 | TARGET_COPY_OUT_ODM := odm
54 | TARGET_COPY_OUT_PRODUCT := product
55 | TARGET_COPY_OUT_SYSTEM_EXT := system_ext
56 |
57 | # Recovery
58 | TARGET_RECOVERY_FSTAB := $(DEVICE_PATH)/rootdir/etc/fstab.recovery
59 |
60 | # HIDL
61 | DEVICE_MANIFEST_FILE += $(DEVICE_PATH)/manifest.xml
62 |
63 | ODM_MANIFEST_SKUS += \
64 | davinci
65 |
66 | ODM_MANIFEST_DAVINCI_FILES := $(DEVICE_PATH)/manifest_davinci.xml
67 |
68 | # Inherit from the proprietary version
69 | include vendor/xiaomi/davinci/BoardConfigVendor.mk
70 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | Copyright (C) 2019-2020 - The LineageOS Project
2 |
3 | The Xiaomi Mi 9T/Redmi K20 (codenamed _"davinci/davinciin"_) are mid range smartphones from Xiaomi.
4 |
5 | Both were announced and released in June 2019.
6 |
7 | ## Device specifications
8 |
9 | | Device | Xiaomi Mi 9T/Redmi K20 |
10 | | -----------: | :---------------------------------------------- |
11 | | SoC | Qualcomm SM7150-AA Snapdragon 730 |
12 | | CPU | 2x2.2 GHz Kryo 470 & 6x1.8 GHz Kryo 470 |
13 | | GPU | Adreno 618 |
14 | | Memory | 6GB RAM (LPDDR4X) |
15 | | Shipped Android version | 9.0 with MIUI 10 |
16 | | Storage | 128GB UFS 2.1 flash storage |
17 | | Battery | Non-removable Li-Po 4000 mAh |
18 | | Dimensions | 156.7 x 74.3 x 8.8 mm |
19 | | Display | 2340 x 1080 (19.5:9), 6.3 inch |
20 | | Rear camera 1 | 48 MP, f/1.8, Dual-LED flash, HDR, panorama |
21 | | Rear camera 2 | 8 MP, f/2.4 |
22 | | Rear camera 3 | 13 MP, f/2.4 |
23 | | Front camera | 20MP, f/2.2 Motorized pop-up, 1080p@30fps |
24 |
25 | ## Device picture
26 |
27 | 
28 |
29 | #### Proprietary-files.txt
30 | All unpinned blobs are extracted from [miui_DAVINCI_V12.5.2.0.RFJCNXM_8e20b56805_11.0.zip](https://bigota.d.miui.com/V12.5.2.0.RFJCNXM/miui_DAVINCI_V12.5.2.0.RFJCNXM_8e20b56805_11.0.zip).
31 |
--------------------------------------------------------------------------------
/audio/audio_platform_info_intcodec.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 |
50 |
51 |
52 |
53 |
54 |
55 |
56 |
57 |
58 |
59 |
60 |
61 |
62 |
63 |
64 |
65 |
66 |
67 |
68 |
69 |
70 |
71 |
72 |
73 |
74 |
75 |
76 |
77 |
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
87 |
88 |
89 |
90 |
91 |
92 |
93 |
94 |
95 |
96 |
97 |
98 |
99 |
100 |
101 |
102 |
103 |
104 |
105 |
106 |
107 |
108 |
109 |
110 |
111 |
112 |
113 |
114 |
115 |
116 |
117 |
118 |
119 |
120 |
121 |
122 |
123 |
124 |
125 |
126 |
127 |
128 |
129 |
130 |
131 |
132 |
133 |
134 |
135 |
136 |
137 |
138 |
139 |
140 |
141 |
142 |
143 |
144 |
145 |
146 |
147 |
148 |
149 |
150 |
151 |
152 |
153 |
154 |
155 |
156 |
157 |
158 |
159 |
160 |
161 |
162 |
163 |
164 |
165 |
166 |
167 |
168 |
169 |
170 |
171 |
172 |
173 |
174 |
175 |
176 |
177 |
178 |
179 |
180 |
181 |
182 |
183 |
184 |
185 |
186 |
187 |
188 |
189 |
190 |
191 |
192 |
193 |
194 |
195 |
196 |
197 |
198 |
199 |
200 |
201 |
202 |
203 |
204 |
205 |
206 |
207 |
208 |
209 |
210 |
211 |
212 |
213 |
214 |
215 |
216 |
217 |
218 |
219 |
220 |
221 |
222 |
223 |
224 |
225 |
226 |
227 |
228 |
229 |
230 |
231 |
232 |
233 |
238 |
243 |
248 |
249 |
250 |
251 |
252 |
253 |
255 |
257 |
259 |
260 |
261 |
263 |
264 |
265 |
267 |
268 |
269 |
271 |
272 |
273 |
275 |
276 |
277 |
279 |
280 |
281 |
283 |
285 |
286 |
287 |
289 |
291 |
292 |
293 |
295 |
297 |
299 |
300 |
301 |
303 |
305 |
306 |
307 |
309 |
311 |
312 |
313 |
315 |
317 |
318 |
319 |
321 |
323 |
324 |
325 |
327 |
329 |
331 |
332 |
333 |
335 |
337 |
339 |
340 |
341 |
343 |
345 |
347 |
348 |
349 |
351 |
353 |
355 |
356 |
357 |
359 |
360 |
361 |
363 |
365 |
366 |
367 |
369 |
371 |
373 |
374 |
375 |
377 |
379 |
380 |
381 |
383 |
385 |
387 |
388 |
389 |
390 |
391 |
392 |
--------------------------------------------------------------------------------
/audio/audio_policy_engine_configuration.xml:
--------------------------------------------------------------------------------
1 |
2 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
--------------------------------------------------------------------------------
/audio/audio_policy_engine_default_stream_volumes.xml:
--------------------------------------------------------------------------------
1 |
2 |
16 |
17 |
18 |
19 |
20 |
21 | 0,0
22 | 100,0
23 |
24 |
25 | 0,-9600
26 | 100,-9600
27 |
28 |
29 |
30 | 1,-2400
31 | 33,-1800
32 | 66,-1200
33 | 100,-600
34 |
35 |
36 |
37 | 1,-5800
38 | 20,-4000
39 | 60,-1700
40 | 100,0
41 |
42 |
43 |
44 | 1,-4950
45 | 33,-3350
46 | 66,-1700
47 | 100,0
48 |
49 |
50 |
51 | 1,-5800
52 | 20,-4000
53 | 60,-1700
54 | 100,0
55 |
56 |
57 |
58 | 1,-4680
59 | 42,-2070
60 | 85,-540
61 | 100,0
62 |
63 |
64 |
65 | 1,-4950
66 | 33,-3350
67 | 66,-1700
68 | 100,0
69 |
70 |
71 |
72 | 1,-5800
73 | 20,-4000
74 | 60,-2100
75 | 100,-1000
76 |
77 |
78 |
79 | 1,-12700
80 | 20,-8000
81 | 60,-4000
82 | 100,0
83 |
84 |
85 |
86 |
87 |
88 |
89 |
90 |
91 | 0,-5800
92 | 20,-4000
93 | 60,-1700
94 | 100,0
95 |
96 |
97 |
98 |
99 | 0,-4950
100 | 33,-3350
101 | 66,-1700
102 | 100,0
103 |
104 |
105 |
106 |
107 | 0,-5800
108 | 20,-4000
109 | 60,-1700
110 | 100,0
111 |
112 |
113 |
114 |
115 | 0,-4950
116 | 33,-3350
117 | 66,-1700
118 | 100,0
119 |
120 |
121 |
122 |
123 | 0,-5800
124 | 20,-4000
125 | 60,-2100
126 | 100,-1000
127 |
128 |
129 |
130 |
131 | 0,-12700
132 | 20,-8000
133 | 60,-4000
134 | 100,0
135 |
136 |
137 |
--------------------------------------------------------------------------------
/audio/audio_policy_engine_product_strategies.xml:
--------------------------------------------------------------------------------
1 |
2 |
16 |
17 |
18 |
19 |
21 |
22 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 |
50 |
51 |
52 |
53 |
54 |
55 |
56 |
57 |
58 |
59 |
60 |
61 |
62 |
63 |
64 |
65 |
66 |
67 |
68 |
69 |
70 |
71 |
72 |
73 |
74 |
75 |
76 |
77 |
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
87 |
88 |
90 |
91 |
92 |
93 |
94 |
95 |
96 |
97 |
98 |
--------------------------------------------------------------------------------
/audio/audio_policy_engine_stream_volumes.xml:
--------------------------------------------------------------------------------
1 |
2 |
16 |
24 |
25 |
26 |
27 | voice_call
28 | 1
29 | 5
30 |
31 | 0,-4200
32 | 33,-2800
33 | 66,-1400
34 | 100,0
35 |
36 |
37 | 0,-2400
38 | 33,-1600
39 | 66,-800
40 | 100,0
41 |
42 |
43 | 0,-2400
44 | 33,-1600
45 | 66,-800
46 | 100,0
47 |
48 |
49 |
50 |
51 |
52 |
53 | system
54 | 0
55 | 15
56 |
57 | 1,-3000
58 | 33,-2600
59 | 66,-2200
60 | 100,-1800
61 |
62 |
63 |
64 |
65 |
66 |
67 |
68 |
69 | ring
70 | 0
71 | 15
72 |
73 |
74 | 1,-2970
75 | 33,-2010
76 | 66,-1020
77 | 100,0
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 | music
86 | 0
87 | 150
88 |
89 | 1,-4950
90 | 33,-3350
91 | 66,-1500
92 | 100,0
93 |
94 |
95 | 1,-7000
96 | 7,-6300
97 | 14,-5100
98 | 21,-4500
99 | 28,-4000
100 | 35,-3200
101 | 42,-3000
102 | 50,-2500
103 | 57,-2200
104 | 64,-1700
105 | 71,-1200
106 | 78,-900
107 | 85,-600
108 | 92,-300
109 | 100,0
110 |
111 |
112 |
113 |
114 |
115 |
116 |
117 | assistant
118 | 0
119 | 15
120 |
121 |
122 |
123 |
124 |
125 |
126 |
127 |
128 | alarm
129 | 1
130 | 15
131 |
132 |
133 | 0,-2970
134 | 33,-2010
135 | 66,-1020
136 | 100,0
137 |
138 |
139 |
140 |
141 |
142 |
143 |
144 | notification
145 | 0
146 | 15
147 |
148 |
149 | 1,-2970
150 | 33,-2010
151 | 66,-1020
152 | 100,0
153 |
154 |
155 |
156 |
157 |
158 |
159 |
160 | bluetooth_sco
161 | 1
162 | 15
163 |
164 | 0,-420
165 | 33,-280
166 | 66,-140
167 | 100,0
168 |
169 |
170 | 0,-2400
171 | 33,-1600
172 | 66,-800
173 | 100,0
174 |
175 |
176 | 0,-4200
177 | 33,-2800
178 | 66,-1400
179 | 100,0
180 |
181 |
182 |
183 |
184 |
185 |
186 | enforced_audible
187 | 0
188 | 7
189 |
190 | 1,-3000
191 | 33,-2600
192 | 66,-2200
193 | 100,-1800
194 |
195 |
196 |
197 |
198 |
199 |
200 |
201 |
202 |
203 | dtmf
204 | 0
205 | 15
206 |
207 | 1,-3000
208 | 33,-2600
209 | 66,-2200
210 | 100,-1800
211 |
212 |
213 |
214 |
215 |
216 |
217 |
218 |
219 | tts
220 | 0
221 | 15
222 |
223 |
224 |
225 |
226 |
227 |
228 |
229 |
230 | accessibility
231 | 1
232 | 15
233 |
234 |
235 |
236 |
237 |
238 |
239 |
240 |
241 |
242 |
--------------------------------------------------------------------------------
/audio/audio_policy_volumes.xml:
--------------------------------------------------------------------------------
1 |
2 |
16 |
24 |
25 |
26 |
27 | 0,-3000
28 | 100,0
29 |
30 |
31 | 0,-2400
32 | 66,-950
33 | 83,-600
34 | 100,0
35 |
36 |
37 | 0,-3000
38 | 100,0
39 |
40 |
42 |
44 |
45 | 1,-3000
46 | 33,-2600
47 | 66,-2200
48 | 100,-1800
49 |
50 |
52 |
54 |
56 |
58 |
60 |
61 | 1,-2970
62 | 33,-2010
63 | 66,-1020
64 | 100,0
65 |
66 |
68 |
70 |
72 |
73 | 1,-4950
74 | 33,-3350
75 | 66,-1500
76 | 100,0
77 |
78 |
79 | 1,-7000
80 | 7,-6300
81 | 14,-5100
82 | 21,-4500
83 | 28,-4000
84 | 35,-3200
85 | 42,-3000
86 | 50,-2500
87 | 57,-2200
88 | 64,-1700
89 | 71,-1200
90 | 78,-900
91 | 85,-600
92 | 92,-300
93 | 100,0
94 |
95 |
97 |
99 |
101 |
103 |
104 | 0,-2970
105 | 33,-2010
106 | 66,-1020
107 | 100,0
108 |
109 |
111 |
113 |
115 |
117 |
118 | 1,-2970
119 | 33,-2010
120 | 66,-1020
121 | 100,0
122 |
123 |
125 |
127 |
129 |
130 | 0,-420
131 | 33,-280
132 | 66,-140
133 | 100,0
134 |
135 |
136 | 0,-2400
137 | 33,-1600
138 | 66,-800
139 | 100,0
140 |
141 |
142 | 0,-4200
143 | 33,-2800
144 | 66,-1400
145 | 100,0
146 |
147 |
149 |
151 |
152 | 1,-3000
153 | 33,-2600
154 | 66,-2200
155 | 100,-1800
156 |
157 |
159 |
161 |
163 |
165 |
166 | 1,-3000
167 | 33,-2600
168 | 66,-2200
169 | 100,-1800
170 |
171 |
173 |
175 |
177 |
179 |
181 |
183 |
185 |
187 |
189 |
191 |
193 |
195 |
197 |
199 |
201 |
203 |
205 |
207 |
209 |
211 |
213 |
215 |
217 |
219 |
220 |
221 |
--------------------------------------------------------------------------------
/audio/sound_trigger_mixer_paths.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 |
50 |
51 |
52 |
53 |
54 |
55 |
56 |
57 |
58 |
59 |
60 |
61 |
62 |
63 |
64 |
65 |
66 |
67 |
68 |
69 |
70 |
71 |
72 |
73 |
74 |
75 |
76 |
77 |
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
87 |
88 |
89 |
90 |
91 |
92 |
93 |
94 |
95 |
96 |
97 |
98 |
99 |
100 |
101 |
102 |
103 |
104 |
105 |
106 |
107 |
108 |
109 |
110 |
111 |
112 |
113 |
114 |
115 |
116 |
117 |
118 |
119 |
120 |
121 |
122 |
123 |
124 |
125 |
126 |
127 |
128 |
129 |
130 |
131 |
132 |
133 |
134 |
135 |
136 |
137 |
138 |
139 |
140 |
141 |
142 |
143 |
144 |
145 |
146 |
147 |
148 |
149 |
150 |
151 |
152 |
153 |
154 |
155 |
156 |
157 |
158 |
159 |
160 |
161 |
162 |
163 |
164 |
165 |
166 |
167 |
168 |
169 |
170 |
171 |
172 |
173 |
174 |
175 |
176 |
177 |
178 |
179 |
180 |
181 |
182 |
183 |
184 |
185 |
186 |
187 |
188 |
189 |
190 |
191 |
192 |
193 |
194 |
195 |
196 |
197 |
198 |
199 |
200 |
201 |
202 |
203 |
204 |
205 |
206 |
207 |
208 |
209 |
210 |
211 |
212 |
213 |
214 |
215 |
216 |
217 |
218 |
219 |
220 |
221 |
222 |
223 |
224 |
225 |
226 |
227 |
228 |
229 |
230 |
231 |
--------------------------------------------------------------------------------
/board-info.txt:
--------------------------------------------------------------------------------
1 | require version-cn=CN,4.3.c5-00123,V12.5.2.0.RFJCNXM
2 | require version-in=INDIA,4.3.c5-00100,V12.1.4.0.RFJINXM
3 | require version-eea=GLOBAL,4.3.c5-00100,V12.1.4.0.RFJMIXM
4 |
--------------------------------------------------------------------------------
/configs/sensors/hals.conf:
--------------------------------------------------------------------------------
1 | sensors.ssc.so
2 | sensors.udfps.so
3 |
--------------------------------------------------------------------------------
/device.mk:
--------------------------------------------------------------------------------
1 | #
2 | # Copyright (C) 2019-2020 The LineageOS Project
3 | #
4 | # SPDX-License-Identifier: Apache-2.0
5 | #
6 |
7 | $(call inherit-product, $(SRC_TARGET_DIR)/product/product_launched_with_p.mk)
8 |
9 | # Overlays
10 | DEVICE_PACKAGE_OVERLAYS += \
11 | $(LOCAL_PATH)/overlay
12 |
13 | PRODUCT_ENFORCE_RRO_EXCLUDED_OVERLAYS += \
14 | $(LOCAL_PATH)/overlay/frameworks/base/packages/SystemUI
15 |
16 | # Permissions
17 | PRODUCT_COPY_FILES += \
18 | frameworks/native/data/etc/android.hardware.nfc.xml:$(TARGET_COPY_OUT_ODM)/etc/permissions/sku_davinci/android.hardware.nfc.xml \
19 | frameworks/native/data/etc/android.hardware.nfc.ese.xml:$(TARGET_COPY_OUT_ODM)/etc/permissions/sku_davinci/android.hardware.nfc.ese.xml \
20 | frameworks/native/data/etc/android.hardware.nfc.hce.xml:$(TARGET_COPY_OUT_ODM)/etc/permissions/sku_davinci/android.hardware.nfc.hce.xml \
21 | frameworks/native/data/etc/android.hardware.nfc.hcef.xml:$(TARGET_COPY_OUT_ODM)/etc/permissions/sku_davinci/android.hardware.nfc.hcef.xml \
22 | frameworks/native/data/etc/android.hardware.nfc.uicc.xml:$(TARGET_COPY_OUT_ODM)/etc/permissions/sku_davinci/android.hardware.nfc.uicc.xml \
23 | frameworks/native/data/etc/android.hardware.wifi.rtt.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.rtt.xml \
24 | frameworks/native/data/etc/com.android.nfc_extras.xml:$(TARGET_COPY_OUT_ODM)/etc/permissions/sku_davinci/com.android.nfc_extras.xml \
25 | frameworks/native/data/etc/com.nxp.mifare.xml:$(TARGET_COPY_OUT_ODM)/etc/permissions/sku_davinci/com.nxp.mifare.xml
26 |
27 | # Audio
28 | PRODUCT_PACKAGES += \
29 | audio_amplifier.sm6150:32
30 |
31 | PRODUCT_COPY_FILES += \
32 | $(LOCAL_PATH)/audio/audio_platform_info_intcodec.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_platform_info.xml \
33 | $(call find-copy-subdir-files,*,$(LOCAL_PATH)/audio/,$(TARGET_COPY_OUT_VENDOR)/etc)
34 |
35 | # Dynamic Partitions
36 | PRODUCT_USE_DYNAMIC_PARTITIONS := true
37 |
38 | # Fastbootd
39 | PRODUCT_PACKAGES += \
40 | fastbootd
41 |
42 | # Fingerprint
43 | $(call soong_config_set,surfaceflinger,udfps_lib,//hardware/xiaomi:libudfps_extension.xiaomi)
44 |
45 | # Fstab
46 | PRODUCT_PACKAGES += \
47 | fstab.default \
48 | fstab.default_ramdisk
49 |
50 | # Init scripts
51 | PRODUCT_COPY_FILES += \
52 | $(LOCAL_PATH)/rootdir/etc/init.davinci.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/init.davinci.rc
53 |
54 | # NFC
55 | PRODUCT_PACKAGES += \
56 | com.android.nfc_extras \
57 | Tag \
58 | android.hardware.nfc@1.2-service
59 |
60 | PRODUCT_COPY_FILES += \
61 | $(LOCAL_PATH)/nfc/libnfc-nci.conf:$(TARGET_COPY_OUT_PRODUCT)/etc/libnfc-nci.conf \
62 | $(LOCAL_PATH)/nfc/libnfc-nxp_RF.conf:$(TARGET_COPY_OUT_VENDOR)/libnfc-nxp_RF.conf \
63 | $(LOCAL_PATH)/nfc/libnfc-nxp.conf:$(TARGET_COPY_OUT_VENDOR)/etc/libnfc-nxp.conf
64 |
65 | # Power
66 | PRODUCT_COPY_FILES += \
67 | $(LOCAL_PATH)/power/powerhint.json:$(TARGET_COPY_OUT_VENDOR)/etc/powerhint.json
68 |
69 | # Sensor
70 | PRODUCT_PACKAGES += \
71 | android.hardware.sensors@1.0-impl:64 \
72 | android.hardware.sensors@1.0-service \
73 | sensors.udfps
74 |
75 | PRODUCT_COPY_FILES += \
76 | $(LOCAL_PATH)/configs/sensors/hals.conf:$(TARGET_COPY_OUT_VENDOR)/etc/sensors/hals.conf
77 |
78 | # Wi-Fi
79 | PRODUCT_PACKAGES += \
80 | WifiOverlayF10C \
81 | WifiOverlayF10G \
82 | WifiOverlayF10I
83 |
84 | # Vendor init
85 | $(call soong_config_set,libinit,vendor_init_lib,//$(LOCAL_PATH):libinit_davinci)
86 |
87 | # Get non-open-source specific aspects
88 | $(call inherit-product, vendor/xiaomi/davinci/davinci-vendor.mk)
89 |
90 | # Inherit from sm6150-common
91 | $(call inherit-product, device/xiaomi/sm6150-common/sm6150.mk)
92 |
--------------------------------------------------------------------------------
/extract-files.py:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env -S PYTHONPATH=../../../tools/extract-utils python3
2 | #
3 | # SPDX-FileCopyrightText: 2024 The LineageOS Project
4 | # SPDX-License-Identifier: Apache-2.0
5 | #
6 |
7 | from extract_utils.fixups_blob import (
8 | blob_fixup,
9 | blob_fixups_user_type,
10 | )
11 | from extract_utils.fixups_lib import (
12 | lib_fixup_remove,
13 | lib_fixups,
14 | lib_fixups_user_type,
15 | )
16 | from extract_utils.main import (
17 | ExtractUtils,
18 | ExtractUtilsModule,
19 | )
20 |
21 | namespace_imports = [
22 | 'hardware/qcom-caf/sm8150',
23 | 'hardware/xiaomi',
24 | 'vendor/qcom/opensource/display',
25 | 'vendor/xiaomi/sm6150-common',
26 | ]
27 |
28 | lib_fixups: lib_fixups_user_type = {
29 | **lib_fixups,
30 | }
31 |
32 | blob_fixups: blob_fixups_user_type = {
33 | 'vendor/etc/camera/camxoverridesettings.txt': blob_fixup()
34 | .regex_replace(r'0x10080', '0')
35 | .regex_replace(r'0x1F', '0x0'),
36 | 'vendor/etc/init/vendor.sensors.qti.rc': blob_fixup()
37 | .add_line_if_missing(' disabled'),
38 | 'vendor/lib64/camera/components/com.qti.node.watermark.so': blob_fixup()
39 | .add_needed('libpiex_shim.so'),
40 | ('vendor/lib64/libalAILDC.so', 'vendor/lib64/libalLDC.so', 'vendor/lib64/libalhLDC.so'): blob_fixup()
41 | .clear_symbol_version('AHardwareBuffer_allocate')
42 | .clear_symbol_version('AHardwareBuffer_describe')
43 | .clear_symbol_version('AHardwareBuffer_lock')
44 | .clear_symbol_version('AHardwareBuffer_release')
45 | .clear_symbol_version('AHardwareBuffer_unlock'),
46 | ('vendor/lib64/libVDSuperPhotoAPI.so', 'vendor/lib64/libarcsoft_dualcam_refocus_front.so', 'vendor/lib64/libarcsoft_dualcam_refocus_rear_t.so', 'vendor/lib64/libarcsoft_dualcam_refocus_rear_w.so'): blob_fixup()
47 | .clear_symbol_version('remote_handle_close')
48 | .clear_symbol_version('remote_handle_invoke')
49 | .clear_symbol_version('remote_handle_open')
50 | .clear_symbol_version('remote_register_buf_attr')
51 | .clear_symbol_version('remote_register_buf'),
52 | } # fmt: skip
53 |
54 | module = ExtractUtilsModule(
55 | 'davinci',
56 | 'xiaomi',
57 | blob_fixups=blob_fixups,
58 | lib_fixups=lib_fixups,
59 | namespace_imports=namespace_imports,
60 | )
61 |
62 | if __name__ == '__main__':
63 | utils = ExtractUtils.device_with_common(
64 | module, 'sm6150-common', module.vendor
65 | )
66 | utils.run()
67 |
--------------------------------------------------------------------------------
/init/Android.bp:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (C) 2019 The LineageOS 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 | cc_library_static {
17 | name: "libinit_davinci",
18 | srcs: ["init_davinci.cpp"],
19 | recovery_available: true,
20 | include_dirs: [
21 | "system/core/init",
22 | ],
23 | shared_libs: ["libbase"],
24 | }
25 |
--------------------------------------------------------------------------------
/init/init_davinci.cpp:
--------------------------------------------------------------------------------
1 | /*
2 | Copyright (c) 2015, The Linux Foundation. All rights reserved.
3 | Copyright (C) 2016 The CyanogenMod Project.
4 | Copyright (C) 2019-2020 The LineageOS Project.
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 | THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED
19 | WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
20 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT
21 | ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS
22 | BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
23 | CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
24 | SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
25 | BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
26 | WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
27 | OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
28 | IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29 | */
30 |
31 | #include
32 | #include
33 | #include
34 |
35 | #include
36 | #define _REALLY_INCLUDE_SYS__SYSTEM_PROPERTIES_H_
37 | #include
38 |
39 | #include "vendor_init.h"
40 |
41 | using android::base::GetProperty;
42 |
43 | constexpr const char *RO_PROP_SOURCES[] = {
44 | nullptr, "product.", "product_services.", "odm.",
45 | "vendor.", "system.", "bootimage.",
46 | };
47 |
48 | constexpr const char *PRODUCTS[] = {
49 | "davinci",
50 | "davinciin",
51 | };
52 |
53 | constexpr const char *DEVICES[] = {
54 | "Mi 9T",
55 | "Redmi K20",
56 | };
57 |
58 | constexpr const char *BUILD_DESCRIPTION[] = {
59 | "davinci-user 11 RKQ1.200826.002 V12.5.2.0.RFJCNXM release-keys",
60 | "davinci-user 11 RKQ1.200826.002 V12.1.4.0.RFJMIXM release-keys",
61 | "davinciin-user 11 RKQ1.200826.002 V12.1.4.0.RFJINXM release-keys",
62 | };
63 |
64 | constexpr const char *CLIENT_ID[] = {
65 | "android-xiaomi",
66 | "android-xiaomi-rev1",
67 | };
68 |
69 | void property_override(char const prop[], char const value[], bool add = true) {
70 | prop_info *pi;
71 |
72 | pi = (prop_info *)__system_property_find(prop);
73 | if (pi)
74 | __system_property_update(pi, value, strlen(value));
75 | else if (add)
76 | __system_property_add(prop, strlen(prop), value, strlen(value));
77 | }
78 |
79 | void load_props(const char *model, bool is_9t = false, bool is_in = false) {
80 | const auto ro_prop_override = [](const char *source, const char *prop,
81 | const char *value, bool product) {
82 | std::string prop_name = "ro.";
83 |
84 | if (product)
85 | prop_name += "product.";
86 | if (source != nullptr)
87 | prop_name += source;
88 | if (!product)
89 | prop_name += "build.";
90 | prop_name += prop;
91 |
92 | property_override(prop_name.c_str(), value);
93 | };
94 |
95 | for (const auto &source : RO_PROP_SOURCES) {
96 | ro_prop_override(source, "device", is_in ? PRODUCTS[1] : PRODUCTS[0], true);
97 | ro_prop_override(source, "model", model, true);
98 | if (!is_in) {
99 | ro_prop_override(source, "name", PRODUCTS[0], true);
100 | } else {
101 | ro_prop_override(source, "name", PRODUCTS[1], true);
102 | }
103 | }
104 | if (!is_in) {
105 | ro_prop_override(nullptr, "description",
106 | is_9t ? BUILD_DESCRIPTION[1] : BUILD_DESCRIPTION[0],
107 | false);
108 | property_override("ro.boot.product.hardware.sku", PRODUCTS[0]);
109 | } else {
110 | ro_prop_override(nullptr, "description", BUILD_DESCRIPTION[2], false);
111 | }
112 | ro_prop_override(nullptr, "product", model, false);
113 |
114 | if (is_9t) {
115 | ro_prop_override(nullptr, "com.google.clientidbase", CLIENT_ID[0], false);
116 | } else if (is_in) {
117 | ro_prop_override(nullptr, "com.google.clientidbase", CLIENT_ID[0], false);
118 | ro_prop_override(nullptr, "com.google.clientidbase.ms", CLIENT_ID[1],
119 | false);
120 | }
121 | }
122 |
123 | void vendor_load_properties() {
124 | std::string region;
125 | region = GetProperty("ro.boot.hwc", "");
126 |
127 | if (region == "CN") {
128 | load_props(DEVICES[1], false, false);
129 | } else if (region == "INDIA") {
130 | load_props(DEVICES[1], false, true);
131 | } else if (region == "GLOBAL") {
132 | load_props(DEVICES[0], true, false);
133 | }
134 | }
135 |
--------------------------------------------------------------------------------
/lineage.dependencies:
--------------------------------------------------------------------------------
1 | [
2 | {
3 | "repository" : "DerpFest-Devices/kernel_xiaomi_sm6150",
4 | "target_path" : "kernel/xiaomi/sm6150"
5 | },
6 | {
7 | "repository" : "DerpFest-Devices/device_xiaomi_davinci",
8 | "target_path" : "device/xiaomi/davinci"
9 | },
10 | {
11 | "repository" : "DerpFest-Devices/device_xiaomi_sm6150-common",
12 | "target_path" : "device/xiaomi/sm6150-common"
13 | },
14 | {
15 | "repository" : "DerpFest-Devices/vendor_xiaomi_davinci",
16 | "target_path" : "vendor/xiaomi/davinci"
17 | },
18 | {
19 | "repository" : "DerpFest-Devices/vendor_xiaomi_sm6150-common",
20 | "target_path" : "vendor/xiaomi/sm6150-common"
21 | },
22 | {
23 | "repository": "LineageOS/android_hardware_xiaomi",
24 | "target_path": "hardware/xiaomi"
25 | }
26 | ]
27 |
--------------------------------------------------------------------------------
/lineage_davinci.mk:
--------------------------------------------------------------------------------
1 | #
2 | # Copyright (C) 2019-2020 The LineageOS Project
3 | #
4 | # SPDX-License-Identifier: Apache-2.0
5 | #
6 |
7 | # Inherit from davinci device
8 | $(call inherit-product, device/xiaomi/davinci/device.mk)
9 | TARGET_SUPPORTS_OMX_SERVICE := false
10 |
11 | # Inherit some common DerpFest stuff.
12 | $(call inherit-product, vendor/lineage/config/common_full_phone.mk)
13 | DERPFEST_BUILD_TYPE := Official
14 | DERPFEST_BUILD_VARIANT := Stable
15 |
16 | # Device identifier. This must come after all inclusions.
17 | PRODUCT_NAME := lineage_davinci
18 | PRODUCT_DEVICE := davinci
19 | PRODUCT_BRAND := Xiaomi
20 | PRODUCT_MANUFACTURER := Xiaomi
21 |
22 | PRODUCT_BUILD_PROP_OVERRIDES += \
23 | BuildDesc="davinci-user 11 RKQ1.200826.002 V12.1.4.0.RFJMIXM release-keys" \
24 | BuildFingerprint=Xiaomi/davinci/davinci:11/RKQ1.200826.002/V12.1.4.0.RFJMIXM:user/release-keys \
25 | DeviceProduct=davinci \
26 | SystemName=davinci
27 |
--------------------------------------------------------------------------------
/manifest.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | vendor.goodix.hardware.biometrics.fingerprint
4 | hwbinder
5 | @2.1::IGoodixFingerprintDaemon/default
6 |
7 |
8 | vendor.xiaomi.hardware.motor
9 | hwbinder
10 | @1.0::IMotor/default
11 |
12 |
13 |
--------------------------------------------------------------------------------
/manifest_davinci.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | android.hardware.nfc
4 | hwbinder
5 | @1.2::INfc/default
6 |
7 |
8 |
--------------------------------------------------------------------------------
/nfc/libnfc-nci.conf:
--------------------------------------------------------------------------------
1 | ########################## Start of libnfc-nci.conf ###########################
2 | ###############################################################################
3 | # Application options
4 | NFC_DEBUG_ENABLED=1
5 |
6 | ###############################################################################
7 | # performance measurement
8 | # Change this setting to control how often USERIAL log the performance (throughput)
9 | # data on read/write/poll
10 | # defailt is to log performance dara for every 100 read or write
11 | #REPORT_PERFORMANCE_MEASURE=100
12 |
13 | ###############################################################################
14 | # File used for NFA storage
15 | NFA_STORAGE="/data/nfc"
16 |
17 | ###############################################################################
18 | # Configure the default NfcA/IsoDep techology and protocol route. Can be
19 | # either a secure element (e.g. 0xF4) or the host (0x00)
20 | #DEFAULT_ISODEP_ROUTE=0x00
21 |
22 | ###############################################################################
23 | ## Default poll duration (in ms)
24 | ## The defualt is 500ms if not set
25 | NFA_DM_DISC_DURATION_POLL=500
26 |
27 | ###############################################################################
28 | # Force UICC to only listen to the following technology(s).
29 | # The bits are defined as tNFA_TECHNOLOGY_MASK in nfa_api.h.
30 | # Default is NFA_TECHNOLOGY_MASK_A | NFA_TECHNOLOGY_MASK_B | NFA_TECHNOLOGY_MASK_F
31 | UICC_LISTEN_TECH_MASK=0x07
32 |
33 | ###############################################################################
34 | # Force HOST listen feature enable or disable.
35 | # 0: Disable
36 | # 1: Enable
37 | HOST_LISTEN_ENABLE=0x01
38 |
39 | ###############################################################################
40 | # When screen is turned off, specify the desired power state of the controller.
41 | # 0: power-off-sleep state; DEFAULT
42 | # 1: full-power state
43 | # 2: screen-off card-emulation (CE4/CE3/CE1 modes are used)
44 | SCREEN_OFF_POWER_STATE=1
45 |
46 | ###############################################################################
47 | # Force tag polling for the following technology(s).
48 | # The bits are defined as tNFA_TECHNOLOGY_MASK in nfa_api.h.
49 | # Default is NFA_TECHNOLOGY_MASK_A | NFA_TECHNOLOGY_MASK_B |
50 | # NFA_TECHNOLOGY_MASK_F | NFA_TECHNOLOGY_MASK_ISO15693 |
51 | # NFA_TECHNOLOGY_MASK_B_PRIME | NFA_TECHNOLOGY_MASK_KOVIO |
52 | # NFA_TECHNOLOGY_MASK_A_ACTIVE | NFA_TECHNOLOGY_MASK_F_ACTIVE.
53 | #
54 | # Notable bits:
55 | # NFA_TECHNOLOGY_MASK_A 0x01 /* NFC Technology A */
56 | # NFA_TECHNOLOGY_MASK_B 0x02 /* NFC Technology B */
57 | # NFA_TECHNOLOGY_MASK_F 0x04 /* NFC Technology F */
58 | # NFA_TECHNOLOGY_MASK_ISO15693 0x08 /* Proprietary Technology */
59 | # NFA_TECHNOLOGY_MASK_KOVIO 0x20 /* Proprietary Technology */
60 | # NFA_TECHNOLOGY_MASK_ACTIVE 0x40 /* NFC Technology active mode */
61 | POLLING_TECH_MASK=0x2F
62 |
63 | ###############################################################################
64 | # Force P2P to only listen for the following technology(s).
65 | # The bits are defined as tNFA_TECHNOLOGY_MASK in nfa_api.h.
66 | # Default is NFA_TECHNOLOGY_MASK_A | NFA_TECHNOLOGY_MASK_F |
67 | # NFA_TECHNOLOGY_MASK_A_ACTIVE | NFA_TECHNOLOGY_MASK_F_ACTIVE
68 | #
69 | # Notable bits:
70 | # NFA_TECHNOLOGY_MASK_A 0x01 /* NFC Technology A */
71 | # NFA_TECHNOLOGY_MASK_F 0x04 /* NFC Technology F */
72 | # NFA_TECHNOLOGY_MASK_A_ACTIVE 0x40 /* NFC Technology A active mode */
73 | # NFA_TECHNOLOGY_MASK_F_ACTIVE 0x80 /* NFC Technology F active mode */
74 | P2P_LISTEN_TECH_MASK=0x00
75 |
76 | ###############################################################################
77 | PRESERVE_STORAGE=0x01
78 |
79 | ###############################################################################
80 | # Override the stack default for NFA_EE_MAX_EE_SUPPORTED set in nfc_target.h.
81 | # The value is set to 3 by default as it assumes we will discover 0xF2,
82 | # 0xF3, and 0xF4. If a platform will exclude and SE, this value can be reduced
83 | # so that the stack will not wait any longer than necessary.
84 | # Maximum EE supported number
85 | # NXP PN547C2 0x02
86 | # NXP PN65T 0x03
87 | # NXP PN548C2 0x02
88 | # NXP PN66T 0x03
89 | NFA_MAX_EE_SUPPORTED=0x03
90 |
91 | ##############################################################################
92 | # Deactivate notification wait time out in seconds used in ETSI Reader mode
93 | # 0 - Infinite wait
94 | NFA_DM_DISC_NTF_TIMEOUT=100
95 |
96 | ###############################################################################
97 | # AID_MATCHING constants
98 | # AID_MATCHING_EXACT_ONLY 0x00
99 | # AID_MATCHING_EXACT_OR_PREFIX 0x01
100 | # AID_MATCHING_PREFIX_ONLY 0x02
101 | #AID_MATCHING_EXACT_OR_SUBSET_OR_PREFIX 0x03
102 | AID_MATCHING_MODE=0x03
103 |
104 | ###############################################################################
105 | # Preferred Secure Element for Technology based routing
106 | # eSE 0x01
107 | # UICC 0x02
108 | NXP_PRFD_TECH_SE=0x01
109 |
110 | ################################################################################
111 | #Set bit to 1 , black list is enabled
112 | #Set bit to 0, to disable balcklist
113 | NFA_AID_BLOCK_ROUTE=0x01
114 |
115 | ################################################################################
116 | # Maximum WTX requests entertained by MW
117 | NXP_WM_MAX_WTX_COUNT=50
118 |
119 | ################################################################################
120 | #Set the default Felica T3T System Code :
121 | #This settings will be used when application does not set this parameter
122 | DEFAULT_SYS_CODE={FE:FF}
123 |
124 | #########################################################################
125 | #Set NCI credit notification timeout value
126 | NXP_NCI_CREDIT_NTF_TIMEOUT=2
127 |
--------------------------------------------------------------------------------
/nfc/libnfc-nxp.conf:
--------------------------------------------------------------------------------
1 | #################### This file is used by NXP NFC NCI HAL #####################
2 | ###############################################################################
3 | # Application options
4 | # Logging Levels
5 | # NXPLOG_DEFAULT_LOGLEVEL 0x01
6 | # ANDROID_LOG_DEBUG 0x03
7 | # ANDROID_LOG_WARN 0x02
8 | # ANDROID_LOG_ERROR 0x01
9 | # ANDROID_LOG_SILENT 0x00
10 | NXPLOG_EXTNS_LOGLEVEL=0x03
11 | NXPLOG_NCIHAL_LOGLEVEL=0x03
12 | NXPLOG_NCIX_LOGLEVEL=0x03
13 | NXPLOG_NCIR_LOGLEVEL=0x03
14 | NXPLOG_FWDNLD_LOGLEVEL=0x03
15 | NXPLOG_TML_LOGLEVEL=0x03
16 | NFC_DEBUG_ENABLED=1
17 |
18 | ###############################################################################
19 | # Nfc Device Node name
20 | NXP_NFC_DEV_NODE="/dev/nq-nci"
21 |
22 | #################################################################################
23 | #VEN Toggle Config
24 | #Disable = 0x00
25 | #Enable = 0x01
26 | ENABLE_VEN_TOGGLE=0x00
27 |
28 | ###############################################################################
29 | # Extension for Mifare reader enable
30 | MIFARE_READER_ENABLE=0x01
31 |
32 | ###############################################################################
33 | # File name for Firmware
34 | NXP_FW_NAME="libsn100u_fw.so"
35 |
36 | ###############################################################################
37 | # System clock source selection configuration
38 | #define CLK_SRC_XTAL 1
39 | #define CLK_SRC_PLL 2
40 | NXP_SYS_CLK_SRC_SEL=0x02
41 |
42 | ###############################################################################
43 | # System clock frequency selection configuration
44 | #define CLK_FREQ_13MHZ 1
45 | #define CLK_FREQ_19_2MHZ 2
46 | #define CLK_FREQ_24MHZ 3
47 | #define CLK_FREQ_26MHZ 4
48 | #define CLK_FREQ_38_4MHZ 5
49 | #define CLK_FREQ_52MHZ 6
50 | NXP_SYS_CLK_FREQ_SEL=0x02
51 |
52 | ###############################################################################
53 | # The timeout value to be used for clock request acknowledgment
54 | # min value = 0x01 to max = 0x06
55 | #NXP_SYS_CLOCK_TO_CFG=0x06
56 |
57 | ###############################################################################
58 | # The delay to try to start PLL/XTAL when using sys clock 256/fc units = ~18.8 us
59 | # min value = 0x01 to max = 0x1F
60 | NXP_CLOCK_REQ_DELAY=0x1F
61 |
62 | ###############################################################################
63 | # NXP proprietary settings
64 | NXP_ACT_PROP_EXTN={2F, 02, 00}
65 |
66 | ###############################################################################
67 | # NFC forum profile settings
68 | NXP_NFC_PROFILE_EXTN={20, 02, 05, 01, A0, 44, 01, 00}
69 |
70 | ###############################################################################
71 | # NXP TVDD configurations settings
72 | # Allow NFCC to configure External TVDD, two configurations (1 and 2) supported,
73 | # out of them only one can be configured at a time.
74 | #NXP_EXT_TVDD_CFG=0x02
75 |
76 | ###############################################################################
77 | #config1:SLALM, 3.3V for both RM and CM
78 | #NXP_EXT_TVDD_CFG_1={20, 02, 0F, 01, A0, 0E, 0B, 31, 01, 01, 31, 00, 00, 00, 01, 00, D0, 0C}
79 |
80 | ###############################################################################
81 | #config2: use DCDC in CE, use Tx_Pwr_Req, set CFG2 mode, SLALM,
82 | #monitoring 5V from DCDC, 3.3V for both RM and CM, DCDCWaitTime=4.2ms
83 | #NXP_EXT_TVDD_CFG_2={20, 02, 0F, 01, A0, 0E, 0B, 11, 01, C2, B2, 00, B2, 1E, 1F, 00, D0, 0C}
84 |
85 | ###############################################################################
86 | # Core configuration rf field filter settings to enable set to 01 to disable set
87 | # to 00 last bit
88 | #NXP_CORE_RF_FIELD={ 20, 02, 05, 01, A0, 62, 01, 00 }
89 |
90 | ###############################################################################
91 | # To enable i2c fragmentation set i2c fragmentation enable 0x01 to disable set
92 | # to 0x00
93 | #NXP_I2C_FRAGMENTATION_ENABLED=0x00
94 |
95 | ###############################################################################
96 | #set autonomous mode
97 | # disable autonomous 0x00
98 | # enable autonomous 0x01
99 | NXP_AUTONOMOUS_ENABLE=0x00
100 |
101 | ###############################################################################
102 | #Enable SWP full power mode when phone is power off
103 | #NXP_SWP_FULL_PWR_ON=0x00
104 |
105 | ################################################################################
106 | #This is used to configure UICC2 at boot time.
107 | # UICC2 0x03
108 | NXP_DEFAULT_UICC2_SELECT=0x03
109 |
110 | ###############################################################################
111 | # CE when Screen state is locked
112 | # This setting is for DEFAULT_AID_ROUTE,
113 | # DEFAULT_DESFIRE_ROUTE and DEFAULT_MIFARE_CLT_ROUTE
114 | # Disable 0x00
115 | # Enable 0x01
116 | NXP_CE_ROUTE_STRICT_DISABLE=0x01
117 |
118 | ###############################################################################
119 | #Timeout in secs
120 | NXP_SWP_RD_TAG_OP_TIMEOUT=0x01
121 |
122 | ###############################################################################
123 | #Set the default AID route Location :
124 | #This settings will be used when application does not set this parameter
125 | # host 0x00
126 | # eSE 0x01
127 | # UICC 0x02
128 | # UICC2 0x03
129 | DEFAULT_AID_ROUTE=0x01
130 |
131 | ###############################################################################
132 | #Set the Mifare Desfire route Location :
133 | #This settings will be used when application does not set this parameter
134 | # host 0x00
135 | # eSE 0x01
136 | # UICC 0x02
137 | # UICC2 0x03
138 | DEFAULT_ISODEP_ROUTE=0x01
139 |
140 | ###############################################################################
141 | #Set the Mifare CLT route Location :
142 | #This settings will be used when application does not set this parameter
143 | # host 0x00
144 | # eSE 0x01
145 | # UICC 0x02
146 | # UICC2 0x03
147 | DEFAULT_MIFARE_CLT_ROUTE=0x01
148 |
149 | ###############################################################################
150 | #Set the Felica CLT route Location :
151 | #This settings will be used when application does not set this parameter
152 | # eSE 0x01
153 | # UICC 0x02
154 | # UICC2 0x03
155 | DEFAULT_FELICA_CLT_ROUTE=0x01
156 |
157 | ###############################################################################
158 | #Set the default AID Power state :
159 | #This settings will be used when application does not set this parameter
160 | # bit pos 0 = Switch On
161 | # bit pos 1 = Switch Off
162 | # bit pos 2 = Battery Off
163 | # bit pos 3 = Screen off unlock
164 | # bit pos 4 = Screen On lock
165 | # bit pos 5 = Screen Off lock
166 | DEFAULT_AID_PWR_STATE=0x3B
167 |
168 | ###############################################################################
169 | #Set the Mifare Desfire Power state :
170 | #This settings will be used when application does not set this parameter
171 | # bit pos 0 = Switch On
172 | # bit pos 1 = Switch Off
173 | # bit pos 2 = Battery Off
174 | # bit pos 3 = Screen off unlock
175 | # bit pos 4 = Screen On lock
176 | # bit pos 5 = Screen Off lock
177 | DEFAULT_DESFIRE_PWR_STATE=0x3B
178 |
179 | ###############################################################################
180 | #Set the Mifare CLT Power state :
181 | #This settings will be used when application does not set this parameter
182 | # bit pos 0 = Switch On
183 | # bit pos 1 = Switch Off
184 | # bit pos 2 = Battery Off
185 | # bit pos 3 = Screen off unlock
186 | # bit pos 4 = Screen On lock
187 | # bit pos 5 = Screen Off lock
188 | DEFAULT_MIFARE_CLT_PWR_STATE=0x3B
189 |
190 | ###############################################################################
191 | #Set the Felica CLT Power state :
192 | #This settings will be used when application does not set this parameter
193 | # bit pos 0 = Switch On
194 | # bit pos 1 = Switch Off
195 | # bit pos 2 = Battery Off
196 | # bit pos 3 = Screen off unlock
197 | # bit pos 4 = Screen On lock
198 | # bit pos 5 = Screen Off lock
199 | DEFAULT_FELICA_CLT_PWR_STATE=0x3B
200 |
201 | ###############################################################################
202 | #Set the default Felica T3T System Code OffHost route Location :
203 | #This settings will be used when application does not set this parameter
204 | # host 0x00
205 | # eSE 0x01
206 | # UICC 0x02
207 | # UICC2 0x03
208 | DEFAULT_SYS_CODE_ROUTE=0x00
209 |
210 | ###############################################################################
211 | # AID Matching platform options
212 | # AID_MATCHING_L 0x01
213 | # AID_MATCHING_K 0x02
214 | #AID_MATCHING_PLATFORM=0x01
215 |
216 | ###############################################################################
217 | # eSE interface options
218 | # NFC 0x01
219 | # SPI 0x02
220 | NXP_P61_LS_DEFAULT_INTERFACE=0x02
221 |
222 | ###############################################################################
223 | #CHINA_TIANJIN_RF_SETTING
224 | #Enable 0x01
225 | #Disable 0x00
226 | #NXP_CHINA_TIANJIN_RF_ENABLED=0x01
227 |
228 | ###############################################################################
229 | #SWP_SWITCH_TIMEOUT_SETTING
230 | # Allowed range of swp timeout setting is 0x00 to 0x3C [0 - 60].
231 | # Timeout in milliseconds, for example
232 | # No Timeout 0x00
233 | # 10 millisecond timeout 0x0A
234 | #NXP_SWP_SWITCH_TIMEOUT=0x0A
235 |
236 | ###############################################################################
237 | # Flashing Options Configurations
238 | # FLASH_UPPER_VERSION 0x01
239 | # FLASH_DIFFERENT_VERSION 0x02
240 | # FLASH_ALWAYS 0x03
241 | NXP_FLASH_CONFIG=0x02
242 |
243 | ###############################################################################
244 | # eSE interface options for JCOP Download
245 | # NFC 0x01
246 | # SPI 0x02
247 | NXP_P61_JCOP_DEFAULT_INTERFACE=0x02
248 |
249 | ###############################################################################
250 | # Option to perform LS update every boot
251 | # Enable 0x01
252 | # Disable 0x00
253 | NXP_LS_FORCE_UPDATE_REQUIRED=0x00
254 |
255 | ###############################################################################
256 | # Option to perform JCOP update every boot
257 | # Enable 0x01
258 | # Disable 0x00
259 | NXP_JCOP_FORCE_UPDATE_REQUIRED=0x00
260 |
261 | ###############################################################################
262 | # Bail out mode
263 | # If set to 1, NFCC is using bail out mode for either Type A or Type B poll.
264 | # Set this parameter value to 1 if Android Beam is enabled, else set to 0.
265 | NFA_POLL_BAIL_OUT_MODE=0x00
266 |
267 | ###############################################################################
268 | # White list of Hosts
269 | # This values will be the Hosts(NFCEEs) in the HCI Network.
270 | DEVICE_HOST_WHITE_LIST={C0, 80}
271 |
272 | ###############################################################################
273 | # Choose the presence-check algorithm for type-4 tag. If not defined, the default value is 1.
274 | # 0 NFA_RW_PRES_CHK_DEFAULT; Let stack selects an algorithm
275 | # 1 NFA_RW_PRES_CHK_I_BLOCK; ISO-DEP protocol's empty I-block
276 | # 2 NFA_RW_PRES_CHK_ISO_DEP_NAK; Type - 4 tag protocol iso-dep nak presence check
277 | # command is sent waiting for rsp and ntf.
278 | PRESENCE_CHECK_ALGORITHM=2
279 |
280 | ###############################################################################
281 | # Enable/Disable checking default proto SE Id
282 | # Disable 0x00
283 | # Enable 0x01
284 | NXP_CHECK_DEFAULT_PROTO_SE_ID=0x01
285 |
286 | ###############################################################################
287 | # Vendor Specific Proprietary Protocol & Discovery Configuration
288 | # Set to 0xFF if unsupported
289 | # byte[0] NCI_PROTOCOL_18092_ACTIVE
290 | # byte[1] NCI_PROTOCOL_B_PRIME
291 | # byte[2] NCI_PROTOCOL_DUAL
292 | # byte[3] NCI_PROTOCOL_15693
293 | # byte[4] NCI_PROTOCOL_KOVIO
294 | # byte[5] NCI_PROTOCOL_MIFARE
295 | # byte[6] NCI_DISCOVERY_TYPE_POLL_KOVIO
296 | # byte[7] NCI_DISCOVERY_TYPE_POLL_B_PRIME
297 | # byte[8] NCI_DISCOVERY_TYPE_LISTEN_B_PRIME
298 | NFA_PROPRIETARY_CFG={05, FF, FF, 06, 81, 80, 70, FF, FF}
299 |
300 | ###############################################################################
301 | #NXP_CN_TRANSIT_BLK_NUM_CHECK_ENABLE
302 | #Enable/Disable block number checks for china transit use case
303 | #Enable 0x01
304 | #Disable 0x00
305 | #NXP_CN_TRANSIT_BLK_NUM_CHECK_ENABLE=0x01
306 |
307 | ###################################################################################################
308 | #This flags will enable different modes of Lx Debug based on bits of the Byte0 & Byte1
309 | #Byte 0:
310 | # |_________Bit Mask_______| Debug Mode
311 | # b7|b6|b5|b4|b3|b2|b1|b0|
312 | # | | |X | | | | | Enable L1 Events (ISO14443-4, ISO18092)
313 | # | | | |X | | | | Enable L2 Reader Events(ROW specific)
314 | # | | | | |X | | | Enable Felica SystemCode
315 | # | | | | | |X | | Enable Felica RF (all Felica CM events)
316 | # | | | | | | |X | Enable L2 Events Card Emulation (ISO14443-3, Modulation detected, RF Field ON/OFF)
317 | #Byte 1:
318 | # Enable RSSI 0x01 Byte1 Byte0
319 | # Disable RSSI 0x00 \__ __/
320 | # e.g. NXP_CORE_PROP_SYSTEM_DEBUG=0x0110 ==> L1 with RSSI
321 | #NXP_CORE_PROP_SYSTEM_DEBUG=0x11
322 |
323 | ###############################################################################
324 | #Enable NXP NCI runtime parser library
325 | #Enable 0x01
326 | #Disable 0x00
327 | NXP_NCI_PARSER_LIBRARY=0x00
328 |
329 | ###############################################################################
330 | # Timeout value in milliseconds for JCOP OS download to complete
331 | OS_DOWNLOAD_TIMEOUT_VALUE=60000
332 |
333 | ###############################################################################
334 | # Forcing HOST to listen for a selected protocol
335 | # 0x00 : Disable Host Listen
336 | # 0x01 : Enable Host to Listen (A) for ISO-DEP tech A
337 | # 0x02 : Enable Host to Listen (B) for ISO-DEP tech B
338 | # 0x04 : Enable Host to Listen (F) for T3T Tag Type Protocol tech F
339 | # 0x07 : Enable Host to Listen (ABF)for ISO-DEP tech AB & T3T Tag Type Protocol tech F
340 | HOST_LISTEN_TECH_MASK=0x07
341 |
342 | ###############################################################################
343 | # Enable forward functionality
344 | # Disable 0x00
345 | # Enable 0x01
346 | FORWARD_FUNCTIONALITY_ENABLE=0x01
347 |
348 | ###############################################################################
349 | # Configure the NFC Extras to open and use a static pipe. If the value is
350 | # not set or set to 0, then the default is use a dynamic pipe based on a
351 | # destination gate (see NFA_HCI_DEFAULT_DEST_GATE). Note there is a value
352 | # for each EE (ESE/SIM)
353 | OFF_HOST_ESE_PIPE_ID=0x16
354 | OFF_HOST_SIM_PIPE_ID=0x0A
355 |
356 | ###############################################################################
357 | #Set the Felica T3T System Code Power state :
358 | #This settings will be used when application does not set this parameter
359 | #Update Power state as per NCI2.0
360 | DEFAULT_SYS_CODE_PWR_STATE=0x39
361 |
362 | ###############################################################################
363 | #Default Secure Element route id
364 | DEFAULT_OFFHOST_ROUTE=0x02
365 |
366 | ###############################################################################
367 | #Maximum SMB transceive wait for response
368 | NXP_SMB_TRANSCEIVE_TIMEOUT=2000
369 |
370 | ###############################################################################
371 | # Firmware file type
372 | #.so file 0x01
373 | #.bin file 0x02
374 | NXP_FW_TYPE=0x01
375 |
376 | ############################################################################
377 | # Extended APDU length for ISO_DEP
378 | ISO_DEP_MAX_TRANSCEIVE=0xFEFF
379 |
380 | #########################################################################
381 | # Support for Amendment I SEMS specification
382 | # Support SEMS Amendment I 0x01
383 | # Support NXP LS client 0x00
384 | NXP_GP_AMD_I_SEMS_SUPPORTED=0x01
385 |
386 | ###############################################################################
387 | # Assign terminal number to each interface based on system config
388 | NXP_SPI_SE_TERMINAL_NUM="eSE1"
389 | NXP_NFC_SE_TERMINAL_NUM="eSE2"
390 | #NXP_VISO_SE_TERMINAL_NUM="eSE3"
391 |
392 | ###############################################################################
393 | #For static or dynamic dual UICC feature support
394 | #Enable static dual uicc feature by setting value 0x00
395 | #Enable dynamic dual uicc feature by setting value 0x01
396 | NXP_DUAL_UICC_ENABLE=0x01
397 |
398 | ###############################################################################
399 | # Time to wait by DH when NFCC will report eSE Cold Temp Error.
400 | # The value is as per the UM and in seconds
401 | NXP_SE_COLD_TEMP_ERROR_DELAY=0x05
402 |
403 | ###############################################################################
404 | # Set configuration optimization decision setting
405 | # Enable = 0x01
406 | # Disable = 0x00
407 | NXP_SET_CONFIG_ALWAYS=0x01
408 | ###############################################################################
409 | #OffHost ESE route location for MultiSE
410 | #ESE = 01
411 | OFFHOST_ROUTE_ESE={01}
412 | ###############################################################################
413 | #OffHost UICC route location for MultiSE
414 | #UICC1 = 02
415 | #UICC2 = 03
416 | OFFHOST_ROUTE_UICC={02:03}
417 | ################################################################################
418 | # This will enable power state required for GSMA testing.
419 | # When this is enabled , then default AID route power state is added with this power state
420 | # If any aid with power state 0 is added, then this power state is used.
421 | # bit pos 0 = Switch On
422 | # bit pos 1 = Switch Off
423 | # bit pos 2 = Battery Off
424 | # bit pos 3 = Screen off unlock
425 | # bit pos 4 = Screen On lock
426 | # bit pos 5 = Screen Off lock
427 | #DEFUALT_GSMA_PWR_STATE=0x3B
428 | #################################################################################
429 |
--------------------------------------------------------------------------------
/nfc/libnfc-nxp_RF.conf:
--------------------------------------------------------------------------------
1 | ##############################################################
2 | ## F10 libnfc-nxp_RF.conf FW15 modify by Kevin 5th, Dec 2018#####
3 | ## F10 libnfc-nxp_RF.conf FW15 Hybrid mode 12th, Dec 2018#######
4 | ## F10 libnfc-nxp_RF.conf FW18 BCTC 15th, Apil 2019#########
5 | ###############################################################################
6 | # NXP RF configuration ALM/PLM settings
7 | # This section needs to be updated with the correct values based on the platform
8 | #PMU_CFG
9 |
10 | NXP_RF_CONF_BLK_1={20, 02, 53, 03,
11 | A0, 0E, 2C, F0, 00, 3E, 11, E4, E4, E4, 00, 00, 00, 00, 00, A7, 8E, FF, FF, 23, 23, 23, 23, 0A, 00, 00, 00, 00, 02, 00, 00, 01, 00, 10, 00, 04, 00, 00, 00, 17, 40, FF, 07, 13, 07, 05, 13,
12 | A0, A5, 0D, 3B, 3B, 3B, 3B, 3B, 3B, FF, 03, 1F, 00, 00, 00, 00,
13 | A0, 6A, 10, 64, 00, 64, 00, 64, 00, 64, 00, B4, 00, B4, 00, B4, 00, B4, 00
14 | }
15 |
16 | NXP_RF_CONF_BLK_2={20, 02, ED, 04,
17 | A0, AF, 09, 11, 2F, 00, 23, 11, 2F, 00, 23, 00,
18 | A0, 98, 05, 2F, 97, 1C, 80, 23,
19 | A0, 34, C8, 23, 04, 3D, 01, 02, 18, 4B, 09, 00, 00, DE, 0C, 00, 00, DE, 0C, 00, 00, DE, 11, 00, 00, DE, 11, 00, 00, DE, 11, 00, 00, DE, 11, 00, 00, DE, 11, 00, 00, 3B, 17, 00, 00, 3B, 17, 00, 00, 04, 19, 00, 00, 97, 1C, 00, 00, 97, 1C, 00, 00, 2A, 20, 00, 00, 2A, 20, 00, 00, F3, 21, 00, 00, 98, 3A, 00, 00, 98, 3A, 00, 00, 98, 3A, 00, 00, 98, 3A, 00, 00, 98, 3A, 00, 00, 98, 3A, 00, 00, 98, 3A, 00, 00, 98, 3A, 00, 00, 02, 18, 40, 06, 00, 00, 6C, 07, 00, 00, 6C, 07, 00, 00, 66, 08, 00, 00, 66, 08, 00, 00, 92, 09, 00, 00, 92, 09, 00, 00, B8, 0B, 00, 00, C0, 0D, 00, 00, C0, 0D, 00, 00, 4A, 10, 00, 00, 4A, 10, 00, 00, 4A, 10, 00, 00, 4A, 10, 00, 00, 4A, 10, 00, 00, 4A, 10, 00, 00, 4A, 10, 00, 00, 64, 14, 00, 00, 64, 14, 00, 00, 64, 14, 00, 00, 64, 14, 00, 00, 64, 14, 00, 00, 64, 14, 00, 00, 64, 14, 00, 00,
20 | A0, 9E, 0A, 03, 97, 1C, 64, 00, 96, 00, 2B, 52, 03}
21 |
22 | NXP_RF_CONF_BLK_3={20, 02, F1, 01, A0, A9, ED, 00, 2A, FF, 01, 24, FF, 02, 1F, FF, 03, 1A, FF, 04, 16, FF, 05, 12, FF, 06, 0F, FF, 07, 0C, FF, 08, 09, FF, 09, 07, FF, 0A, 05, FF, 0B, 03, FF, 0C, 01, FF, 0D, 00, F5, 0E, 00, DC, 0F, 00, C6, 10, 00, B3, 11, 00, A2, 12, 00, 92, 13, 00, 84, 14, 00, 77, 15, 00, 6B, 16, 00, 60, 17, 00, 57, 18, 00, 4E, 19, 00, 46, 1A, 00, 3F, 1B, 00, 39, 1C, 00, 33, 1D, 00, 2E, 1E, 00, 2A, 1E, 00, 2A, 1E, 00, 2A, 1E, 00, 2A, 1E, 00, 2A, 1E, 00, 2A, 1E, 00, 2A, 1E, 00, 2A, 1E, 00, 2A, 1E, 00, 2A, 1E, 00, 2A, 1E, 00, 2A, 1E, 00, 2A, 1E, 00, 2A, 1E, 00, 2A, 1E, 00, 2A, 1E, 00, 2A, 1E, 00, 2A, 1E, 00, 2A, 1E, 00, 2A, 1E, 00, 2A, 1E, 00, 2A, 1E, 00, 2A, 1E, 00, 2A, 1E, 00, 2A, 1E, 00, 2A, 1E, 00, 2A, 1E, 00, 2A, 1E, 00, 2A, 1E, 00, 2A, 1E, 00, 2A, 1E, 00, 2A, 1E, 00, 2A, 1E, 00, 2A, 1E, 00, 2A, 1E, 00, 2A, 1E, 00, 2A, 1E, 00, 2A, 1E, 00, 2A, 1E, 00, 2A, 1E, 00, 2A, 1E, 00, 2A, 1E, 00, 2A, 1E, 00, 2A, 1E, 00, 2A, 1E, 00, 2A, 1E, 00, 2A, 1E, 00, 2A, 1E, 00, 2A}
23 |
24 | NXP_RF_CONF_BLK_4={20, 02, C5, 02,
25 | A0, 0B, BB, 00, 1D, 01, 14, 6A, 2A, E8, 03, E8, 03, 06, 10, 0E, 2C, 01, 78, 13, 00, 00, 78, 13, 00, 00, 78, 13, 00, 00, 78, 13, 00, 00, 78, 13, 00, 00, 78, 13, 00, 00, 78, 13, 00, 00, 78, 0A, 00, 00, 78, 0A, 00, 00, 78, 0A, 00, 00, 78, 0A, 00, 00, 78, 0A, 00, 00, 78, 0A, 00, 00, 78, 0A, 00, 00, 78, 0A, 00, 00, 78, 0A, 00, 00, 78, 00, 00, 00, 78, 00, 00, 00, 78, 00, 00, 00, 78, 00, 00, 00, 78, 00, 00, 00, 78, 00, 00, 00, 78, 00, 00, 00, 78, 00, 00, 00, 78, 00, 00, 00, 78, 00, 00, 00, 78, 00, 00, 00, 78, 00, 00, 00, 78, 00, 00, 00, 78, 00, 00, 00, 78, 00, 00, 00, 78, 00, 00, 00, 78, 00, 00, 00, 78, 00, 00, 00, 78, 00, 00, 00, 78, 00, 00, 00, 78, 00, 00, 00, 78, 00, 00, 00, 78, 00, 00, 00, 3C, 00, 00, 00, 3C, 00, 00, 00, 3C, 00, 00, 00, 00, 00, 00, 00,
26 | A0, A6, 03, C0, 08, 08
27 | }
28 |
29 | NXP_RF_CONF_BLK_5={20, 02, D8, 04,
30 | A0, AB, 82, 27, 1B, 33, 04, 42, 04, 55, 04, 75, 04, 9E, 04, C7, 04, F0, 04, 20, 05, 4F, 05, 7F, 05, B8, 05, F2, 05, 2B, 06, 72, 06, BA, 06, 02, 07, 49, 07, 91, 07, F0, 07, 50, 08, AF, 08, 0F, 09, 6E, 09, E1, 09, 54, 0A, C6, 0A, 56, 0B, E5, 0B, 74, 0C, 04, 0D, 93, 0D, 52, 0E, 11, 0F, D0, 0F, 8F, 10, 4F, 11, 0E, 12, 2C, 13, 4B, 14, 6A, 15, 88, 16, A7, 17, C6, 18, 44, 1A, C2, 1B, 41, 1D, BF, 1E, 9D, 20, 7B, 22, 58, 24, 96, 26, D3, 28, 11, 2B, 4E, 2D, 4B, 30, 47, 33, 44, 36, 40, 39, 3D, 3C, A2, 3F, 07, 43, 6C, 46, E6, 4A, 61, 4F,
31 | A0, A7, 0B, 00, 02, 77, 17, 1F, 1F, 1F, 0A, FF, 19, 05,
32 | A0, A8, 38, 00, 33, 33, 10, 00, 33, 23, 10, 00, 33, 24, 10, 4B, 23, 44, 10, CF, 22, 43, 10, CF, 22, 43, 10, CF, 22, 43, 10, CE, 22, 43, 10, CF, 22, 43, 10, CE, 22, 43, 10, 00, 33, 22, 10, C0, 22, 23, 10, 00, 33, 22, 10, C0, 22, 23, 10,
33 | A0, 1F, 06, 63, 00, 42, 00, 14, 00
34 | }
35 |
36 | NXP_RF_CONF_BLK_6={
37 | 20, 02, F8, 19,
38 | A0, 99, 07, 03, 00, 80, 00, 00, 80, 00,
39 | A0, 68, 2A, 06, 40, 60, 03, 19, 00, 00, 00, 00, 83, 04, 00, C0, 05, 00, 0F, E0, 00, 00, 0F, A0, 00, A0, 00, 03, FA, 00, 00, 00, 4C, 00, 14, 00, 7D, 00, 05, 7F, 00, 00, 01, 00, 03,
40 | A0, 0D, 03, 24, 29, 07,
41 | A0, 0D, 03, 24, 30, 07,
42 | A0, 0D, 03, 25, 29, 01,
43 | A0, 0D, 03, 25, 30, 01,
44 | A0, 0D, 06, 40, 42, F0, C1, 37, CC,
45 | A0, 0D, 06, 41, 45, 31, 12, 00, 00,
46 | A0, 0D, 03, 42, 7C, 54,
47 | A0, 0D, 06, 42, 8D, 00, A0, A4, 64,
48 | A0, 0D, 06, 42, 8B, 00, A2, 23, 00,
49 | A0, 0D, 06, 42, 89, 7F, 12, BD, 01,
50 | A0, 0D, 06, 42, 44, 00, B0, 26, 01,
51 | A0, 0D, 06, 42, 43, A5, 24, 4D, ED,
52 | A0, 0D, 06, 42, 41, FF, FF, 5F, F0,
53 | A0, 0D, 06, 42, 40, 20, 77, 33, 3A,
54 | A0, 0D, 06, 42, 4A, 0E, 83, 81, 0D,
55 | A0, 0D, 06, 42, 49, 79, 46, 26, 00,
56 | A0, 0D, 06, 51, 40, 12, 77, 33, 3A,
57 | A0, 0D, 06, 43, 44, 00, 34, 12, 01,
58 | A0, 0D, 06, 43, 43, A5, 64, 4C, AD,
59 | A0, 0D, 06, 43, 40, 05, 77, 33, 3D,
60 | A0, 0D, 06, 43, 4A, 00, 00, 00, 00,
61 | A0, 0D, 06, 43, 49, 00, 00, 00, 00,
62 | A0, 0D, 06, 44, 44, 00, 34, 12, 01
63 | }
64 |
65 | NXP_RF_CONF_BLK_7={
66 | 20, 02, FD, 1C,
67 | A0, 0D, 06, 44, 43, A5, 64, 4C, AD,
68 | A0, 0D, 06, 44, 40, 05, 77, 33, 3D,
69 | A0, 0D, 06, 44, 4A, 00, 00, 00, 00,
70 | A0, 0D, 06, 44, 49, 00, 00, 00, 00,
71 | A0, 0D, 06, 45, 44, 00, 34, 12, 01,
72 | A0, 0D, 06, 45, 43, A5, 64, 4C, AD,
73 | A0, 0D, 06, 45, 40, 05, 77, 33, 3D,
74 | A0, 0D, 06, 45, 4A, 00, 00, 00, 00,
75 | A0, 0D, 06, 45, 49, 00, 00, 00, 00,
76 | A0, 0D, 06, 46, 45, 39, 12, 00, 00,
77 | A0, 0D, 06, 46, 44, 00, 34, 12, 01,
78 | A0, 0D, 06, 47, 43, A5, 64, 4C, ED,
79 | A0, 0D, 06, 47, 40, 05, 77, 33, 3D,
80 | A0, 0D, 06, 47, 4A, 20, AA, 0B, 81,
81 | A0, 0D, 06, 47, 49, B5, 44, 22, 00,
82 | A0, 0D, 06, 48, 43, A5, 64, 4C, AD,
83 | A0, 0D, 06, 48, 40, 05, 77, 33, 3D,
84 | A0, 0D, 06, 48, 4A, 00, 00, 00, 00,
85 | A0, 0D, 06, 48, 49, 00, 00, 00, 00,
86 | A0, 0D, 06, 49, 43, A5, 64, 4C, AD,
87 | A0, 0D, 06, 49, 40, 05, 77, 33, 3D,
88 | A0, 0D, 06, 49, 4A, 00, 00, 00, 00,
89 | A0, 0D, 06, 49, 49, 00, 00, 00, 00,
90 | A0, 0D, 06, 4A, 8B, 48, 02, F0, 80,
91 | A0, 0D, 06, 4A, 43, A5, 64, 4C, AD,
92 | A0, 0D, 06, 4A, 40, 05, 77, 33, 3D,
93 | A0, 0D, 06, 4A, 4A, 00, 00, 00, 00,
94 | A0, 0D, 06, 4A, 49, 00, 00, 00, 00
95 | }
96 |
97 | NXP_RF_CONF_BLK_8={
98 | 20, 02, C4, 16,
99 | A0, 0D, 06, 4B, 43, A5, 64, 4C, 6D,
100 | A0, 0D, 06, 4B, 40, 85, 51, 33, 3D,
101 | A0, 0D, 06, 4C, 44, 00, 34, 12, 01,
102 | A0, 0D, 06, 4C, 4A, 00, 00, 00, 00,
103 | A0, 0D, 06, 4C, 49, 00, 00, 00, 00,
104 | A0, 0D, 06, 4D, 44, 00, 34, 12, 01,
105 | A0, 0D, 06, 4D, 4A, 00, 00, 00, 00,
106 | A0, 0D, 06, 4D, 49, 00, 00, 00, 00,
107 | A0, 0D, 06, 4E, 45, 31, 12, 00, 00,
108 | A0, 0D, 03, 4E, 7C, 50,
109 | A0, 0D, 06, 4E, 8D, 00, 00, 00, 06,
110 | A0, 0D, 06, 4E, 8B, 00, A2, 24, 00,
111 | A0, 0D, 06, 4E, 89, 7D, 84, 05, 08,
112 | A0, 0D, 06, 4E, 44, 00, B0, 26, 01,
113 | A0, 0D, 06, 4E, 43, A5, 64, 5C, AD,
114 | A0, 0D, 06, 4E, 41, FF, FF, 5F, F0,
115 | A0, 0D, 06, 4E, 40, 07, 77, 33, 3D,
116 | A0, 0D, 06, 4E, 4A, 2A, 8E, 8D, 2A,
117 | A0, 0D, 06, 4E, 49, 5D, 27, 27, 00,
118 | A0, 0D, 06, 60, 4E, FF, FF, FF, 01,
119 | A0, 0D, 06, 60, 4F, FF, FF, FF, 01,
120 | A0, 0D, 06, 60, 50, FF, FF, FF, 3F
121 | }
122 |
123 | NXP_RF_CONF_BLK_9={20, 02, 4F, 09,
124 | A0, 0D, 03, 61, 09, 7E,
125 | A0, 0D, 06, 60, AB, FF, FF, 00, 00,
126 | A0, 0D, 06, 60, 95, FF, FF, 0F, 00,
127 | A0, 0D, 06, 60, 97, FF, FF, 0F, 00,
128 | A0, 0D, 06, 60, 4C, 20, 0A, 00, 00,
129 | A0, 0D, 06, 82, 82, 47, 80, 00, 00,
130 | A0, 0D, 06, 80, 82, 47, 80, 00, 00,
131 | A0, 0D, 06, 62, 32, AE, 00, 7F, 00,
132 | A0, 0D, 06, 67, 32, AE, 00, 1F, 00
133 | }
134 |
135 | NXP_RF_CONF_MAX_NUM=9
136 |
137 | ###############################################################################
138 | # Core configuration extensions
139 | # It includes
140 | # Wired mode settings A0ED, A0EE
141 | # Tag Detector A040, A041, A043
142 | # Low Power mode A007
143 | # Clock settings A002, A003
144 | # PbF settings A008
145 | # Clock timeout settings A004
146 | # eSE (SVDD) PWR REQ settings A0F2
147 | # Window size A0D8
148 | # DWP Speed A0D5
149 | # How eSE connected to PN553 A012
150 | # UICC2 bit rate A0D1
151 | # SWP1A interface A0D4
152 | # DWP intf behavior config, SVDD Load activated by default if set to 0x31 A037
153 | NXP_CORE_CONF_EXTN={20, 02, 12, 04,
154 | A0, EC, 01, 01,
155 | A0, ED, 01, 01,
156 | A0, 07, 01, 01,
157 | A0, 47, 02, 00, 27
158 | }
159 |
160 | # A0, 40, 01, 00
161 | # A0, 41, 01, 02,
162 | # A0, 43, 01, 04,
163 | # }
164 |
165 | ###############################################################################
166 | # Core configuration settings
167 | NXP_CORE_CONF={ 20, 02, 30, 10,
168 | 28, 01, 00,
169 | 21, 01, 00,
170 | 30, 01, 04,
171 | 31, 01, 00,
172 | 32, 01, 60,
173 | 38, 01, 01,
174 | 33, 00,
175 | 54, 01, 06,
176 | 50, 01, 02,
177 | 5B, 01, 00,
178 | 80, 01, 01,
179 | 81, 01, 01,
180 | 82, 01, 0E,
181 | 18, 01, 01,
182 | 68, 01, 01,
183 | 85, 01, 01
184 | }
185 | ###############################################################################
186 |
--------------------------------------------------------------------------------
/overlay/frameworks/base/core/res/res/values/config.xml:
--------------------------------------------------------------------------------
1 |
2 |
19 |
20 |
22 |
23 |
24 |
25 | true
26 |
27 |
29 | -1
30 |
31 |
32 | -15
33 |
34 |
35 | 15
36 |
37 |
38 | -40
39 |
40 |
41 | 40
42 |
43 |
44 | 35.0dip
45 |
46 |
49 | @dimen/status_bar_height_default
50 |
51 |
52 |
53 | - 540
54 | - 2026
55 | - 95
56 |
57 |
58 |
59 | 0
60 |
61 |
62 | true
63 |
64 |
65 | org.lineageos.sensor.udfps
66 |
67 |
68 |
69 | - restart
70 | - restart_recovery
71 | - restart_bootloader
72 | - restart_fastboot
73 |
74 |
75 |
--------------------------------------------------------------------------------
/overlay/frameworks/base/core/res/res/xml/power_profile.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | - 4000
5 |
6 |
7 |
8 | 6
9 | 2
10 |
11 |
12 |
13 | - 5.6
14 |
15 | - 5.4
16 |
17 |
19 | - 8.4
20 |
21 |
23 | - 2
24 |
26 | - 2.2
27 |
28 |
30 |
31 | 300000
32 | 576000
33 | 768000
34 | 1017600
35 | 1248000
36 | 1324800
37 | 1497600
38 | 1612800
39 | 1708800
40 | 1804800
41 |
42 |
44 |
45 | 300000
46 | 652800
47 | 806400
48 | 979200
49 | 1094400
50 | 1209600
51 | 1324800
52 | 1555200
53 | 1708800
54 | 1843200
55 | 1939200
56 | 2169600
57 | 2208000
58 |
59 |
60 |
62 |
63 | 34.55
64 | 46.57
65 | 54.84
66 | 68.16
67 | 80.70
68 | 86.6
69 | 99.13
70 | 111.05
71 | 119.59
72 | 128.45
73 |
74 |
76 |
77 | 42.23
78 | 56.92
79 | 63.41
80 | 73.03
81 | 80.38
82 | 87.17
83 | 96.55
84 | 125.61
85 | 145.51
86 | 182.94
87 | 198.92
88 | 238.54
89 | 266.21
90 |
91 |
92 |
93 | - 29
94 |
95 |
96 | - 85
97 |
99 | - 250
100 |
101 |
102 | - 240.47
103 |
107 | - 900
108 |
109 |
110 | - 25
111 |
112 | - 75
113 |
114 |
115 | - 0
116 | - 128
117 | - 111
118 |
119 | 118
120 | 163
121 | 225
122 | 277
123 | 363
124 |
125 | - 3700
126 |
127 |
128 |
129 | 34
130 | 6
131 |
132 | - 3700
133 |
134 |
135 | - 95
136 |
137 | - 138
138 |
139 | - 387
140 |
141 | - 3700
142 |
143 | - 0
144 | - 4.43
145 | - 0.9
146 | - 0.5
147 | - 135.59
148 | - 19.46
149 | - 20.71
150 | - 40.63
151 | - 59.39
152 | - 165.56
153 | - 45
154 |
155 | 9.48
156 | 9.48
157 |
158 | - 7.44
159 |
160 | .0002
161 | .002
162 | .02
163 | .2
164 | 2
165 |
166 |
167 | - 0.01
168 |
169 | - 9
170 |
171 | - 7
172 |
173 | - 3300
174 |
175 |
--------------------------------------------------------------------------------
/overlay/frameworks/base/packages/SystemUI/res/drawable-nodpi/udfps_icon_pressed.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DerpFest-Devices/device_xiaomi_davinci/b978a1cef5370b86b4ce8873f68145acf0450e49/overlay/frameworks/base/packages/SystemUI/res/drawable-nodpi/udfps_icon_pressed.png
--------------------------------------------------------------------------------
/overlay/frameworks/base/packages/SystemUI/res/values/config.xml:
--------------------------------------------------------------------------------
1 |
2 |
19 |
21 |
22 |
23 | #00ffffff
24 |
25 |
26 | 950px
27 |
28 |
29 | 1900px
30 |
31 |
--------------------------------------------------------------------------------
/overlay/frameworks/base/packages/SystemUI/res/values/dimens.xml:
--------------------------------------------------------------------------------
1 |
2 |
18 |
19 |
20 | 2dp
21 |
22 |
23 | 40dp
24 |
25 |
26 | - 62.98
27 |
28 |
--------------------------------------------------------------------------------
/overlay/packages/apps/Aperture/app/src/main/res/values/config.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | - 4
6 | - 5
7 | - 6
8 | - 7
9 | - 8
10 | - 9
11 | - 10
12 |
13 |
14 |
--------------------------------------------------------------------------------
/overlay/packages/apps/Settings/res/values/config.xml:
--------------------------------------------------------------------------------
1 |
2 |
13 |
14 |
15 | 100
16 |
17 |
--------------------------------------------------------------------------------
/overlay/packages/apps/Settings/res/values/derp_strings.xml:
--------------------------------------------------------------------------------
1 |
2 |
13 |
14 | Adi (@adi20_01)
15 |
16 |
--------------------------------------------------------------------------------
/overlay/packages/apps/Settings/res/values/dimens.xml:
--------------------------------------------------------------------------------
1 |
2 |
13 |
14 |
15 | - 78%
16 |
17 |
18 |
--------------------------------------------------------------------------------
/power/powerhint.json:
--------------------------------------------------------------------------------
1 | {
2 | "Nodes": [
3 | {
4 | "Name": "CPULittleClusterMaxFreq",
5 | "Path": "/sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq",
6 | "Values": [
7 | "9999999",
8 | "1248000"
9 | ],
10 | "DefaultIndex": 0,
11 | "ResetOnInit": true
12 | },
13 | {
14 | "Name": "CPULittleClusterMinFreq",
15 | "Path": "/sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq",
16 | "Values": [
17 | "9999999",
18 | "1248000",
19 | "576000"
20 | ],
21 | "ResetOnInit": true
22 | },
23 | {
24 | "Name": "CPUBigClusterMaxFreq",
25 | "Path": "/sys/devices/system/cpu/cpu6/cpufreq/scaling_max_freq",
26 | "Values": [
27 | "9999999",
28 | "1939200",
29 | "1555200"
30 | ],
31 | "DefaultIndex": 0,
32 | "ResetOnInit": true
33 | },
34 | {
35 | "Name": "CPUBigClusterMinFreq",
36 | "Path": "/sys/devices/system/cpu/cpu6/cpufreq/scaling_min_freq",
37 | "Values": [
38 | "9999999",
39 | "1555200",
40 | "1248000",
41 | "652800"
42 | ],
43 | "ResetOnInit": true
44 | },
45 | {
46 | "Name": "GPUMaxFreq",
47 | "Path": "/sys/class/kgsl/kgsl-3d0/max_pwrlevel",
48 | "Values": [
49 | "0",
50 | "3",
51 | "7"
52 | ],
53 | "DefaultIndex": 0,
54 | "ResetOnInit": true
55 | },
56 | {
57 | "Name": "GPUMinFreq",
58 | "Path": "/sys/class/kgsl/kgsl-3d0/min_pwrlevel",
59 | "Values": [
60 | "0",
61 | "3",
62 | "7"
63 | ],
64 | "ResetOnInit": true
65 | },
66 | {
67 | "Name": "GPUBusMinFreq",
68 | "Path": "/sys/class/devfreq/soc:qcom,gpubw/min_freq",
69 | "Values": [
70 | "6881",
71 | "5931",
72 | "3879",
73 | "0"
74 | ],
75 | "ResetOnInit": true
76 | },
77 | {
78 | "Name": "GPUForceRailOn",
79 | "Path": "/sys/class/kgsl/kgsl-3d0/force_rail_on",
80 | "Values": [
81 | "1",
82 | "0"
83 | ],
84 | "ResetOnInit": true
85 | },
86 | {
87 | "Name": "GPUForceClkOn",
88 | "Path": "/sys/class/kgsl/kgsl-3d0/force_clk_on",
89 | "Values": [
90 | "1",
91 | "0"
92 | ],
93 | "ResetOnInit": true
94 | },
95 | {
96 | "Name": "GPUIdleTimer",
97 | "Path": "/sys/class/kgsl/kgsl-3d0/idle_timer",
98 | "Values": [
99 | "10000",
100 | "80"
101 | ],
102 | "ResetOnInit": true
103 | },
104 | {
105 | "Name": "TASchedtuneBoost",
106 | "Path": "/dev/stune/top-app/schedtune.boost",
107 | "Values": [
108 | "30",
109 | "10"
110 | ],
111 | "ResetOnInit": true
112 | },
113 | {
114 | "Name": "TASchedtuneHighCap",
115 | "Path": "/dev/stune/top-app/schedtune.prefer_high_cap",
116 | "Values": [
117 | "1",
118 | "0"
119 | ],
120 | "ResetOnInit": true
121 | },
122 | {
123 | "Name": "CPUBWHystTriggerCount",
124 | "Path": "/sys/class/devfreq/soc:qcom,cpu-cpu-llcc-bw/bw_hwmon/hyst_trigger_count",
125 | "Values": [
126 | "0",
127 | "3"
128 | ],
129 | "ResetOnInit": true
130 | },
131 | {
132 | "Name": "CPUBWHistMemory",
133 | "Path": "/sys/class/devfreq/soc:qcom,cpu-cpu-llcc-bw/bw_hwmon/hist_memory",
134 | "Values": [
135 | "0",
136 | "20"
137 | ],
138 | "ResetOnInit": true
139 | },
140 | {
141 | "Name": "CPUBWHystLength",
142 | "Path": "/sys/class/devfreq/soc:qcom,cpu-cpu-llcc-bw/bw_hwmon/hyst_length",
143 | "Values": [
144 | "0",
145 | "10"
146 | ],
147 | "ResetOnInit": true
148 | },
149 | {
150 | "Name": "CPUBWSampleMs",
151 | "Path": "/sys/class/devfreq/soc:qcom,cpu-cpu-llcc-bw/bw_hwmon/sample_ms",
152 | "Values": [
153 | "10",
154 | "4"
155 | ],
156 | "ResetOnInit": true
157 | },
158 | {
159 | "Name": "CPUBWIOPercent",
160 | "Path": "/sys/class/devfreq/soc:qcom,cpu-cpu-llcc-bw/bw_hwmon/io_percent",
161 | "Values": [
162 | "80",
163 | "68"
164 | ],
165 | "ResetOnInit": true
166 | },
167 | {
168 | "Name": "CPUBWMinFreq",
169 | "Path": "/sys/class/devfreq/soc:qcom,cpu-cpu-llcc-bw/min_freq",
170 | "Values": [
171 | "14236",
172 | "9155",
173 | "7110",
174 | "4577"
175 | ],
176 | "ResetOnInit": true
177 | },
178 | {
179 | "Name": "LLCCBWMinFreq",
180 | "Path": "/sys/class/devfreq/soc:qcom,cpu-llcc-ddr-bw/min_freq",
181 | "Values": [
182 | "6881",
183 | "2597",
184 | "762"
185 | ],
186 | "ResetOnInit": true
187 | },
188 | {
189 | "Name": "LLCCBWSampleMs",
190 | "Path": "/sys/class/devfreq/soc:qcom,cpu-llcc-ddr-bw/bw_hwmon/sample_ms",
191 | "Values": [
192 | "10",
193 | "4"
194 | ],
195 | "ResetOnInit": true
196 | },
197 | {
198 | "Name": "LLCCBWHistMemory",
199 | "Path": "/sys/class/devfreq/soc:qcom,cpu-llcc-ddr-bw/bw_hwmon/hist_memory",
200 | "Values": [
201 | "0",
202 | "20"
203 | ],
204 | "ResetOnInit": true
205 | },
206 | {
207 | "Name": "LLCCBWHystLength",
208 | "Path": "/sys/class/devfreq/soc:qcom,cpu-llcc-ddr-bw/bw_hwmon/hyst_length",
209 | "Values": [
210 | "0",
211 | "10"
212 | ],
213 | "ResetOnInit": true
214 | },
215 | {
216 | "Name": "L3LittleClusterMinFreq",
217 | "Path": "/sys/class/devfreq/soc:qcom,cpu0-cpu-l3-lat/min_freq",
218 | "Values": [
219 | "1459200000",
220 | "300000000"
221 | ],
222 | "ResetOnInit": true
223 | },
224 | {
225 | "Name": "L3BigClusterMinFreq",
226 | "Path": "/sys/class/devfreq/soc:qcom,cpu6-cpu-l3-lat/min_freq",
227 | "Values": [
228 | "1459200000",
229 | "300000000"
230 | ],
231 | "ResetOnInit": true
232 | },
233 | {
234 | "Name": "CameraHalCpuset",
235 | "Path": "/dev/cpuset/camera-daemon/cpus",
236 | "Values": [
237 | "0-5",
238 | "0-7"
239 | ],
240 | "ResetOnInit": true
241 | },
242 | {
243 | "Name": "LLCCBWHystTriggerCount",
244 | "Path": "/sys/class/devfreq/soc:qcom,cpu-llcc-ddr-bw/bw_hwmon/hyst_trigger_count",
245 | "Values": [
246 | "0",
247 | "3"
248 | ],
249 | "ResetOnInit": true
250 | },
251 | {
252 | "Name": "PMQoSCpuDmaLatency",
253 | "Path": "/dev/cpu_dma_latency",
254 | "Values": [
255 | "0x00000043",
256 | "0x00000064"
257 | ],
258 | "HoldFd": true
259 | },
260 | {
261 | "Name": "ForegroundCpuset",
262 | "Path": "/dev/cpuset/foreground/cpus",
263 | "Values": [
264 | "0-5",
265 | "0-5,7"
266 | ],
267 | "ResetOnInit": true
268 | },
269 | {
270 | "Name": "UfsClkGateEnable",
271 | "Path": "/sys/devices/platform/soc/1d84000.ufshc/clkgate_enable",
272 | "Values": [
273 | "0",
274 | "1"
275 | ],
276 | "ResetOnInit": true
277 | },
278 | {
279 | "Name": "EnergyAware",
280 | "Path": "/proc/sys/kernel/sched_energy_aware",
281 | "Values": [
282 | "0",
283 | "1"
284 | ],
285 | "ResetOnInit": true
286 | },
287 | {
288 | "Name": "DisplayWakeup",
289 | "Path": "/sys/devices/platform/soc/ae00000.qcom,mdss_mdp/drm/card0/sde-crtc-0/early_wakeup",
290 | "Values": [
291 | "1",
292 | "0"
293 | ]
294 | },
295 | {
296 | "Name": "UpMigrate",
297 | "Path": "/proc/sys/kernel/sched_upmigrate",
298 | "Values": [
299 | "0x5F",
300 | "0x32"
301 | ]
302 | },
303 | {
304 | "Name": "DownMigrate",
305 | "Path": "/proc/sys/kernel/sched_downmigrate",
306 | "Values": [
307 | "0x55",
308 | "0x28"
309 | ]
310 | },
311 | {
312 | "Name": "PowerHALMainState",
313 | "Path": "vendor.powerhal.state",
314 | "Values": [
315 | "SUSTAINED_PERFORMANCE",
316 | ""
317 | ],
318 | "Type": "Property"
319 | },
320 | {
321 | "Name": "PowerHALAudioState",
322 | "Path": "vendor.powerhal.audio",
323 | "Values": [
324 | "AUDIO_STREAMING_LOW_LATENCY",
325 | ""
326 | ],
327 | "Type": "Property"
328 | },
329 | {
330 | "Name": "PowerHALRenderingState",
331 | "Path": "vendor.powerhal.rendering",
332 | "Values": [
333 | "EXPENSIVE_RENDERING",
334 | ""
335 | ],
336 | "Type": "Property"
337 | },
338 | {
339 | "Name": "PowerHALPerfProfileState",
340 | "Path": "vendor.powerhal.perf_profile",
341 | "Values": [
342 | "POWER_SAVE",
343 | "BIAS_POWER_SAVE",
344 | "BIAS_PERFORMANCE",
345 | "HIGH_PERFORMANCE"
346 | ],
347 | "Type": "Property"
348 | }
349 | ],
350 | "Actions": [
351 | {
352 | "PowerHint": "SUSTAINED_PERFORMANCE",
353 | "Node": "PowerHALMainState",
354 | "Duration": 0,
355 | "Value": "SUSTAINED_PERFORMANCE"
356 | },
357 | {
358 | "PowerHint": "SUSTAINED_PERFORMANCE",
359 | "Node": "CPUBigClusterMaxFreq",
360 | "Duration": 0,
361 | "Value": "1555200"
362 | },
363 | {
364 | "PowerHint": "SUSTAINED_PERFORMANCE",
365 | "Node": "CPULittleClusterMaxFreq",
366 | "Duration": 0,
367 | "Value": "1248000"
368 | },
369 | {
370 | "PowerHint": "SUSTAINED_PERFORMANCE",
371 | "Node": "GPUMaxFreq",
372 | "Duration": 0,
373 | "Value": "0"
374 | },
375 | {
376 | "PowerHint": "INTERACTION",
377 | "Node": "CPULittleClusterMinFreq",
378 | "Duration": 0,
379 | "Value": "1248000"
380 | },
381 | {
382 | "PowerHint": "INTERACTION",
383 | "Node": "TASchedtuneBoost",
384 | "Duration": 0,
385 | "Value": "30"
386 | },
387 | {
388 | "PowerHint": "INTERACTION",
389 | "Node": "TASchedtuneHighCap",
390 | "Duration": 0,
391 | "Value": "1"
392 | },
393 | {
394 | "PowerHint": "INTERACTION",
395 | "Node": "CPUBWHystTriggerCount",
396 | "Duration": 0,
397 | "Value": "0"
398 | },
399 | {
400 | "PowerHint": "INTERACTION",
401 | "Node": "CPUBWHystLength",
402 | "Duration": 0,
403 | "Value": "0"
404 | },
405 | {
406 | "PowerHint": "INTERACTION",
407 | "Node": "CPUBWHistMemory",
408 | "Duration": 0,
409 | "Value": "0"
410 | },
411 | {
412 | "PowerHint": "INTERACTION",
413 | "Node": "CPUBWMinFreq",
414 | "Duration": 0,
415 | "Value": "9155"
416 | },
417 | {
418 | "PowerHint": "INTERACTION",
419 | "Node": "LLCCBWMinFreq",
420 | "Duration": 0,
421 | "Value": "2597"
422 | },
423 | {
424 | "PowerHint": "INTERACTION",
425 | "Node": "UfsClkGateEnable",
426 | "Duration": 200,
427 | "Value": "0"
428 | },
429 | {
430 | "PowerHint": "LAUNCH",
431 | "Node": "ForegroundCpuset",
432 | "Duration": 2000,
433 | "Value": "0-5"
434 | },
435 | {
436 | "PowerHint": "LAUNCH",
437 | "Node": "EnergyAware",
438 | "Duration": 2000,
439 | "Value": "0"
440 | },
441 | {
442 | "PowerHint": "LAUNCH",
443 | "Node": "CPUBigClusterMaxFreq",
444 | "Duration": 2000,
445 | "Value": "9999999"
446 | },
447 | {
448 | "PowerHint": "LAUNCH",
449 | "Node": "CPUBigClusterMinFreq",
450 | "Duration": 2000,
451 | "Value": "9999999"
452 | },
453 | {
454 | "PowerHint": "LAUNCH",
455 | "Node": "CPULittleClusterMinFreq",
456 | "Duration": 2000,
457 | "Value": "9999999"
458 | },
459 | {
460 | "PowerHint": "LAUNCH",
461 | "Node": "PMQoSCpuDmaLatency",
462 | "Duration": 2000,
463 | "Value": "0x00000043"
464 | },
465 | {
466 | "PowerHint": "LAUNCH",
467 | "Node": "CPUBWHystTriggerCount",
468 | "Duration": 2000,
469 | "Value": "0"
470 | },
471 | {
472 | "PowerHint": "LAUNCH",
473 | "Node": "CPUBWHystLength",
474 | "Duration": 2000,
475 | "Value": "0"
476 | },
477 | {
478 | "PowerHint": "LAUNCH",
479 | "Node": "CPUBWHistMemory",
480 | "Duration": 2000,
481 | "Value": "0"
482 | },
483 | {
484 | "PowerHint": "LAUNCH",
485 | "Node": "CPUBWMinFreq",
486 | "Duration": 2000,
487 | "Value": "14236"
488 | },
489 | {
490 | "PowerHint": "LAUNCH",
491 | "Node": "GPUForceClkOn",
492 | "Duration": 2000,
493 | "Value": "1"
494 | },
495 | {
496 | "PowerHint": "LAUNCH",
497 | "Node": "GPUForceRailOn",
498 | "Duration": 2000,
499 | "Value": "1"
500 | },
501 | {
502 | "PowerHint": "LAUNCH",
503 | "Node": "GPUIdleTimer",
504 | "Duration": 2000,
505 | "Value": "10000"
506 | },
507 | {
508 | "PowerHint": "LAUNCH",
509 | "Node": "LLCCBWMinFreq",
510 | "Duration": 2000,
511 | "Value": "6881"
512 | },
513 | {
514 | "PowerHint": "LAUNCH",
515 | "Node": "L3BigClusterMinFreq",
516 | "Duration": 2000,
517 | "Value": "1459200000"
518 | },
519 | {
520 | "PowerHint": "LAUNCH",
521 | "Node": "UfsClkGateEnable",
522 | "Duration": 2000,
523 | "Value": "0"
524 | },
525 | {
526 | "PowerHint": "LAUNCH",
527 | "Node": "UpMigrate",
528 | "Duration": 2000,
529 | "Value": "0x32"
530 | },
531 | {
532 | "PowerHint": "LAUNCH",
533 | "Node": "DownMigrate",
534 | "Duration": 2000,
535 | "Value": "0x28"
536 | },
537 | {
538 | "PowerHint": "AUDIO_LAUNCH",
539 | "Node": "PMQoSCpuDmaLatency",
540 | "Duration": 2000,
541 | "Value": "0x00000043"
542 | },
543 | {
544 | "PowerHint": "AUDIO_STREAMING_LOW_LATENCY",
545 | "Node": "PowerHALAudioState",
546 | "Duration": 0,
547 | "Value": "AUDIO_STREAMING_LOW_LATENCY"
548 | },
549 | {
550 | "PowerHint": "AUDIO_STREAMING_LOW_LATENCY",
551 | "Node": "PMQoSCpuDmaLatency",
552 | "Duration": 0,
553 | "Value": "0x00000043"
554 | },
555 | {
556 | "PowerHint": "EXPENSIVE_RENDERING",
557 | "Node": "PowerHALRenderingState",
558 | "Duration": 0,
559 | "Value": "EXPENSIVE_RENDERING"
560 | },
561 | {
562 | "PowerHint": "EXPENSIVE_RENDERING",
563 | "Node": "GPUMinFreq",
564 | "Duration": 0,
565 | "Value": "3"
566 | },
567 | {
568 | "PowerHint": "EXPENSIVE_RENDERING",
569 | "Node": "GPUMaxFreq",
570 | "Duration": 0,
571 | "Value": "0"
572 | },
573 | {
574 | "PowerHint": "NOT_INTERACTIVE",
575 | "Node": "TASchedtuneHighCap",
576 | "Duration": 0,
577 | "Value": "0"
578 | },
579 | {
580 | "PowerHint": "DISPLAY_UPDATE_IMMINENT",
581 | "Node": "DisplayWakeup",
582 | "Duration": 60,
583 | "Value": "1"
584 | }
585 | ]
586 | }
587 |
--------------------------------------------------------------------------------
/product.prop:
--------------------------------------------------------------------------------
1 | # Alipay
2 | ro.hardware.fp.udfps=true
3 | persist.vendor.sys.fp.udfps.location.X_Y=445,1931
4 | persist.vendor.sys.fp.udfps.size.width_height=190,190
5 |
6 | # Fastbootd
7 | ro.fastbootd.available=true
8 |
--------------------------------------------------------------------------------
/proprietary-files.txt:
--------------------------------------------------------------------------------
1 | # ACDB
2 | vendor/etc/acdbdata/Forte/Forte_Bluetooth_cal.acdb
3 | vendor/etc/acdbdata/Forte/Forte_Codec_cal.acdb
4 | vendor/etc/acdbdata/Forte/Forte_General_cal.acdb
5 | vendor/etc/acdbdata/Forte/Forte_Global_cal.acdb
6 | vendor/etc/acdbdata/Forte/Forte_Handset_cal.acdb
7 | vendor/etc/acdbdata/Forte/Forte_Hdmi_cal.acdb
8 | vendor/etc/acdbdata/Forte/Forte_Headset_cal.acdb
9 | vendor/etc/acdbdata/Forte/Forte_Speaker_cal.acdb
10 | vendor/etc/acdbdata/Forte/Forte_workspaceFile.qwsp
11 | vendor/etc/acdbdata/adsp_avs_config.acdb
12 |
13 | # ADSP Modules
14 | vendor/lib/rfsa/adsp/libSuperSensor_skel.so
15 | vendor/lib/rfsa/adsp/libVDHexagonSuperPhoto_skel.so
16 | vendor/lib/rfsa/adsp/libarcsoft_dualcam_refocus_skel.so
17 | vendor/lib/rfsa/adsp/libhexagon_nn_skel_secondary.so
18 | vendor/lib/rfsa/adsp/misound_karaoke_res.bin
19 | vendor/lib/rfsa/adsp/misound_karaokemix_res.bin
20 | vendor/lib/rfsa/adsp/misound_res.bin
21 |
22 | # Audio (speaker amplifier) firmware
23 | vendor/firmware/tfa98xx.cnt
24 |
25 | # Camera
26 | vendor/bin/remosaic_daemon
27 | vendor/etc/camera/CFR_para_T.bin
28 | vendor/etc/camera/CFR_para_UW.bin
29 | vendor/etc/camera/CFR_para_W.bin
30 | vendor/etc/camera/LDC_FPC_TUNING_DATA.bin
31 | vendor/etc/camera/LDC_PACKDATA_VENDORID_0x01.bin
32 | vendor/etc/camera/LDC_PACKDATA_VENDORID_0x07.bin
33 | vendor/etc/camera/LDC_table_src1.dat
34 | vendor/etc/camera/LDC_table_src2.dat
35 | vendor/etc/camera/Miui-Light.ttf
36 | vendor/etc/camera/Roboto-Thin.ttf
37 | vendor/etc/camera/almalence_sr_params_tele.config
38 | vendor/etc/camera/almalence_sr_params_wide.config
39 | vendor/etc/camera/beauty_ui9_intelligent_params.config
40 | vendor/etc/camera/body_slim_ui9_params.config
41 | vendor/etc/camera/camxoverridesettings.txt
42 | vendor/etc/camera/eisoverridesettings.txt
43 | vendor/etc/camera/eyelineblush.cng
44 | vendor/etc/camera/female_bg.png
45 | vendor/etc/camera/female_icon.png
46 | vendor/etc/camera/fonts.xml
47 | vendor/etc/camera/golden_rear_dc_cal_wu.bin
48 | vendor/etc/camera/hdr_ui9_params.config
49 | vendor/etc/camera/lf_facerank_model.bin
50 | vendor/etc/camera/male_bg.png
51 | vendor/etc/camera/male_icon.png
52 | vendor/etc/camera/mibokeh_712_opencl.bin
53 | vendor/etc/camera/mibokeh_712_parameter.bin
54 | vendor/etc/camera/sceneDetection.xml
55 | vendor/etc/camera/score_bg.png
56 | vendor/etc/camera/score_icon.png
57 | vendor/etc/camera/sdm_ys_32p_120_21_5_perturb50.bin
58 | vendor/etc/camera/visidon_clearshot_params_algoup.xml
59 | vendor/etc/camera/watermark_font_2300_3199.dat
60 | vendor/lib64/camera/components/etc/morpho_lowlight4.0.xml
61 | vendor/lib64/camera/components/etc/morpho_lowlight4.0_3hdr.xml
62 | vendor/lib64/camera/components/etc/morpho_lowlight4.0_adrc_high.xml
63 | vendor/lib64/camera/components/etc/morpho_lowlight4.0_adrc_high_1.xml
64 | vendor/lib64/camera/components/etc/visidon_clearshot_params.xml
65 | vendor/lib64/camera/components/com.almalence.node.sr.so
66 | vendor/lib64/camera/components/com.altek.node.depurple.so
67 | vendor/lib64/camera/components/com.altek.node.distortioncorrection.so
68 | vendor/lib64/camera/components/com.arcsoft.node.bodyslim.so
69 | vendor/lib64/camera/components/com.arcsoft.node.capturebokeh.so
70 | vendor/lib64/camera/components/com.arcsoft.node.capturefusion.so
71 | vendor/lib64/camera/components/com.arcsoft.node.deflicker.so
72 | vendor/lib64/camera/components/com.arcsoft.node.distortioncorrection.so
73 | vendor/lib64/camera/components/com.arcsoft.node.hdr.so
74 | vendor/lib64/camera/components/com.arcsoft.node.hdrchecker.so
75 | vendor/lib64/camera/components/com.arcsoft.node.realtimebokeh.so
76 | vendor/lib64/camera/components/com.arcsoft.node.skinbeautifier.so
77 | vendor/lib64/camera/components/com.arcsoft.node.smooth_transition.so
78 | vendor/lib64/camera/components/com.arcsoft.node.superlowlight.so
79 | vendor/lib64/camera/components/com.mi.node.aiasd.so
80 | vendor/lib64/camera/components/com.qti.camx.chiiqutils.so
81 | vendor/lib64/camera/components/com.qti.eisv2.so
82 | vendor/lib64/camera/components/com.qti.eisv3.so
83 | vendor/lib64/camera/components/com.qti.hvx.addconstant.so
84 | vendor/lib64/camera/components/com.qti.hvx.binning.so
85 | vendor/lib64/camera/components/com.qti.node.depth.so
86 | vendor/lib64/camera/components/com.qti.node.dummyrtb.so
87 | vendor/lib64/camera/components/com.qti.node.dummysat.so
88 | vendor/lib64/camera/components/com.qti.node.eisv2.so
89 | vendor/lib64/camera/components/com.qti.node.eisv3.so
90 | vendor/lib64/camera/components/com.qti.node.fcv.so
91 | vendor/lib64/camera/components/com.qti.node.gpu.so
92 | vendor/lib64/camera/components/com.qti.node.memcpy.so
93 | vendor/lib64/camera/components/com.qti.node.photosolid.so
94 | vendor/lib64/camera/components/com.qti.node.remosaic.so
95 | vendor/lib64/camera/components/com.qti.node.stich.so
96 | vendor/lib64/camera/components/com.qti.node.swregistration.so
97 | vendor/lib64/camera/components/com.qti.node.watermark.so
98 | vendor/lib64/camera/components/com.qti.node.xiaomigenderage.so
99 | vendor/lib64/camera/components/com.qti.stats.aec.so
100 | vendor/lib64/camera/components/com.qti.stats.af.so
101 | vendor/lib64/camera/components/com.qti.stats.afd.so
102 | vendor/lib64/camera/components/com.qti.stats.asd.so
103 | vendor/lib64/camera/components/com.qti.stats.awb.so
104 | vendor/lib64/camera/components/com.qti.stats.awbwrapper.so
105 | vendor/lib64/camera/components/com.qti.stats.haf.so
106 | vendor/lib64/camera/components/com.qti.stats.hafoverride.so
107 | vendor/lib64/camera/components/com.qti.stats.localhistogram.so
108 | vendor/lib64/camera/components/com.qti.stats.pdlib.so
109 | vendor/lib64/camera/components/com.qti.stats.pdlibsony.so
110 | vendor/lib64/camera/components/com.qti.stats.pdlibwrapper.so
111 | vendor/lib64/camera/components/com.qtistatic.stats.aec.so
112 | vendor/lib64/camera/components/com.qtistatic.stats.af.so
113 | vendor/lib64/camera/components/com.qtistatic.stats.awb.so
114 | vendor/lib64/camera/components/com.qtistatic.stats.pdlib.so
115 | vendor/lib64/camera/components/com.vidhance.node.eis.so
116 | vendor/lib64/camera/components/com.vidhance.stats.aec_dmbr.so
117 | vendor/lib64/camera/components/com.visidon.node.clearshot.so
118 | vendor/lib64/camera/components/com.visidon.node.sr.so
119 | vendor/lib64/camera/components/com.xiaomi.node.mibokeh.so
120 | vendor/lib64/camera/components/com.xiaomi.node.mifragment.so
121 | vendor/lib64/camera/components/com.xiaomi.node.misegment.so
122 | vendor/lib64/camera/components/libdepthmapwrapper.so
123 | vendor/lib64/camera/components/libmmcamera_cac3.so
124 | vendor/lib64/camera/com.qti.sensor.imx582_davinci.so
125 | vendor/lib64/camera/com.qti.sensor.imx586_davinci.so
126 | vendor/lib64/camera/com.qti.sensor.ov8856_davinci.so
127 | vendor/lib64/camera/com.qti.sensor.s5k3l6_davinci.so
128 | vendor/lib64/camera/com.qti.sensor.s5k3t2_davinci.so
129 | vendor/lib64/camera/com.qti.sensormodule.davinci_luxvisions_imx582.bin
130 | vendor/lib64/camera/com.qti.sensormodule.davinci_luxvisions_imx586.bin
131 | vendor/lib64/camera/com.qti.sensormodule.davinci_luxvisions_ov8856.bin
132 | vendor/lib64/camera/com.qti.sensormodule.davinci_luxvisions_s5k3l6.bin
133 | vendor/lib64/camera/com.qti.sensormodule.davinci_ofilm_imx582.bin
134 | vendor/lib64/camera/com.qti.sensormodule.davinci_ofilm_imx586.bin
135 | vendor/lib64/camera/com.qti.sensormodule.davinci_ofilm_ov8856.bin
136 | vendor/lib64/camera/com.qti.sensormodule.davinci_ofilm_s5k3l6.bin
137 | vendor/lib64/camera/com.qti.sensormodule.davinci_sunny_s5k3t2.bin
138 | vendor/lib64/camera/com.qti.tuned.davinci_luxvisions_imx582.bin
139 | vendor/lib64/camera/com.qti.tuned.davinci_luxvisions_imx586.bin
140 | vendor/lib64/camera/com.qti.tuned.davinci_luxvisions_ov8856.bin
141 | vendor/lib64/camera/com.qti.tuned.davinci_luxvisions_s5k3l6.bin
142 | vendor/lib64/camera/com.qti.tuned.davinci_ofilm_imx582.bin
143 | vendor/lib64/camera/com.qti.tuned.davinci_ofilm_imx586.bin
144 | vendor/lib64/camera/com.qti.tuned.davinci_ofilm_ov8856.bin
145 | vendor/lib64/camera/com.qti.tuned.davinci_ofilm_s5k3l6.bin
146 | vendor/lib64/camera/com.qti.tuned.davinci_sunny_s5k3t2.bin
147 | vendor/lib64/camera/com.qti.tuned.default.bin
148 | vendor/lib64/camera/fdconfigpreview.bin
149 | vendor/lib64/camera/fdconfigpreviewlite.bin
150 | vendor/lib64/camera/fdconfigvideo.bin
151 | vendor/lib64/camera/fdconfigvideolite.bin
152 | vendor/lib64/hw/camera.qcom.so
153 | vendor/lib64/hw/com.qti.chi.override.so
154 | vendor/lib64/libFaceGrade.so
155 | vendor/lib64/libHalSuperSensorServer.so
156 | vendor/lib64/libSuperSensor.so
157 | vendor/lib64/libSuperSensorCPU.so
158 | vendor/lib64/libVDClearShot.so
159 | vendor/lib64/libVDSuperPhotoAPI.so
160 | vendor/lib64/libXMFD_AgeGender.so
161 | vendor/lib64/lib_denoiser3.so
162 | vendor/lib64/libalAILDC.so
163 | vendor/lib64/libalCFR.so
164 | vendor/lib64/libalLDC.so
165 | vendor/lib64/libalhLDC.so
166 | vendor/lib64/libarcsat.so
167 | vendor/lib64/libarcsoft_beautyshot.so
168 | vendor/lib64/libarcsoft_bodyslim.so
169 | vendor/lib64/libarcsoft_distortion_correction.so
170 | vendor/lib64/libarcsoft_dualcam_image_optical_zoom.so
171 | vendor/lib64/libarcsoft_dualcam_optical_zoom_control.so
172 | vendor/lib64/libarcsoft_dualcam_refocus.so
173 | vendor/lib64/libarcsoft_dualcam_refocus_front.so
174 | vendor/lib64/libarcsoft_dualcam_refocus_rear_t.so
175 | vendor/lib64/libarcsoft_dualcam_refocus_rear_w.so
176 | vendor/lib64/libarcsoft_high_dynamic_range.so
177 | vendor/lib64/libarcsoft_low_light_hdr.so
178 | vendor/lib64/libarcsoft_portrait_lighting.so
179 | vendor/lib64/libarcsoft_portrait_lighting_c.so
180 | vendor/lib64/libarcsoft_preview_deflicker.so
181 | vendor/lib64/libarcsoft_supernight.so
182 | vendor/lib64/libc++_shared.so
183 | vendor/lib64/libcamera_nn_stub.so
184 | vendor/lib64/libcamera_scene.so
185 | vendor/lib64/libcamxfdalgov7.so
186 | vendor/lib64/libcamxfdalgov8.so
187 | vendor/lib64/libcamxfdengine.so
188 | vendor/lib64/libcamxstatscore.so
189 | vendor/lib64/libcamxswprocessalgo.so
190 | vendor/lib64/libcamxtintlessalgo.so
191 | vendor/lib64/libcom.qti.chinodeutils.so
192 | vendor/lib64/libft2vendor.so
193 | vendor/lib64/libmialgo_fs.so
194 | vendor/lib64/libmialgo_rfs.so
195 | vendor/lib64/libmialgo_sd.so
196 | vendor/lib64/libmialgo_utils.so
197 | vendor/lib64/libmialgoengine.so
198 | vendor/lib64/libmibokeh_712.so
199 | vendor/lib64/libmpbase.so
200 | vendor/lib64/libnanopb.so
201 | vendor/lib64/libnpu.so
202 | vendor/lib64/libremosaic_daemon.so
203 | vendor/lib64/libremosaiclib.so
204 | vendor/lib64/libswregistrationalgo.so
205 | vendor/lib64/libsysmon_cdsp_skel.so
206 | vendor/lib64/libtriplecam_optical_zoom_control.so
207 | vendor/lib64/libtriplecam_video_optical_zoom.so
208 | vendor/lib64/libvidhance.so
209 |
210 | # Camera Firmware
211 | vendor/firmware/CAMERA_ICP.elf
212 |
213 | # Camera Motor
214 | system/media/audio/ui/popup_cangmen_down.ogg:system_ext/media/audio/ui/popup_cangmen_down.ogg
215 | system/media/audio/ui/popup_cangmen_up.ogg:system_ext/media/audio/ui/popup_cangmen_up.ogg
216 | system/media/audio/ui/popup_chilun_down.ogg:system_ext/media/audio/ui/popup_chilun_down.ogg
217 | system/media/audio/ui/popup_chilun_up.ogg:system_ext/media/audio/ui/popup_chilun_up.ogg
218 | system/media/audio/ui/popup_jijia_down.ogg:system_ext/media/audio/ui/popup_jijia_down.ogg
219 | system/media/audio/ui/popup_jijia_up.ogg:system_ext/media/audio/ui/popup_jijia_up.ogg
220 | system/media/audio/ui/popup_mofa_down.ogg:system_ext/media/audio/ui/popup_mofa_down.ogg
221 | system/media/audio/ui/popup_mofa_up.ogg:system_ext/media/audio/ui/popup_mofa_up.ogg
222 | system/media/audio/ui/popup_muqin_down.ogg:system_ext/media/audio/ui/popup_muqin_down.ogg
223 | system/media/audio/ui/popup_muqin_up.ogg:system_ext/media/audio/ui/popup_muqin_up.ogg
224 | system/media/audio/ui/popup_yingyan_down.ogg:system_ext/media/audio/ui/popup_yingyan_down.ogg
225 | system/media/audio/ui/popup_yingyan_up.ogg:system_ext/media/audio/ui/popup_yingyan_up.ogg
226 | vendor/bin/hw/vendor.xiaomi.hardware.motor@1.0-service
227 | vendor/etc/step_motor/mi_camera_config.xml
228 | vendor/lib64/hw/vendor.xiaomi.hardware.motor@1.0-impl.so
229 | vendor/lib64/libmivendor_module_calibration.so
230 | vendor/lib64/libmivendor_module_hall.so
231 | vendor/lib64/libmivendor_module_motor.so
232 | vendor/lib64/mi.motor.daemon.so
233 |
234 | # Display calibration
235 | vendor/etc/hdr_config.cfg
236 | vendor/etc/sdr_config.cfg
237 |
238 | # Fingerprint
239 | vendor/lib64/hw/fingerprint.goodix_fod.so:vendor/lib64/hw/fingerprint.goodix_fod.sm6150.so;FIX_SONAME
240 | vendor/lib64/libgf_hal.so
241 |
242 | # GPU (Firmware)
243 | vendor/firmware/a615_zap.b00
244 | vendor/firmware/a615_zap.b01
245 | vendor/firmware/a615_zap.b02
246 | vendor/firmware/a615_zap.elf
247 | vendor/firmware/a615_zap.mdt
248 | vendor/firmware/a618_gmu.bin
249 | vendor/firmware/a630_sqe.fw
250 |
251 | # IPA (Firmware)
252 | vendor/firmware/ipa_fws.b00
253 | vendor/firmware/ipa_fws.b01
254 | vendor/firmware/ipa_fws.b02
255 | vendor/firmware/ipa_fws.b03
256 | vendor/firmware/ipa_fws.b04
257 | vendor/firmware/ipa_fws.elf
258 | vendor/firmware/ipa_fws.mdt
259 |
260 | # NFC
261 | vendor/lib/libsn100u_fw.so
262 |
263 | # QDCM - ea - from raphael 12.5.4.0 MIUI release
264 | vendor/etc/qdcm_calib_data_ss_ea_fhd_cmd_dsi_panel.xml|4a04fcc172cf45ba84728714953230d377a7d2ea
265 |
266 | # QDCM - eb - from latest miui stable Q
267 | vendor/etc/qdcm_calib_data_ss_eb_fhd_cmd_dsi_panel.xml|9592ec2725e2be9b43a13d7ba87ef2a10ba5e249
268 |
269 | # Sensors
270 | vendor/bin/sensors.qti
271 | vendor/etc/init/init.vendor.sensors.rc
272 | vendor/etc/init/vendor.sensors.qti.rc
273 | vendor/etc/sensors/config/adux1050_0.json
274 | vendor/etc/sensors/config/ak991x_dri_0.json
275 | vendor/etc/sensors/config/icm4x6xx_0.json
276 | vendor/etc/sensors/config/lsm6ds3c_0.json
277 | vendor/etc/sensors/config/sm6150_adux1050_0.json
278 | vendor/etc/sensors/config/sm6150_ak991x_0.json
279 | vendor/etc/sensors/config/sm6150_icm4x6xx_0.json
280 | vendor/etc/sensors/config/sm6150_lsm6ds3c_0.json
281 | vendor/etc/sensors/config/sm6150_power_0.json
282 | vendor/etc/sensors/config/sm6150_tcs3701.json
283 | vendor/etc/sensors/config/sns_amd.json
284 | vendor/etc/sensors/config/sns_amd_sw_disabled.json
285 | vendor/etc/sensors/config/sns_aod.json
286 | vendor/etc/sensors/config/sns_basic_gestures.json
287 | vendor/etc/sensors/config/sns_bring_to_ear.json
288 | vendor/etc/sensors/config/sns_ccd.json
289 | vendor/etc/sensors/config/sns_cm.json
290 | vendor/etc/sensors/config/sns_dae.json
291 | vendor/etc/sensors/config/sns_device_orient.json
292 | vendor/etc/sensors/config/sns_diag_filter.json
293 | vendor/etc/sensors/config/sns_distance_bound.json
294 | vendor/etc/sensors/config/sns_dpc.json
295 | vendor/etc/sensors/config/sns_facing.json
296 | vendor/etc/sensors/config/sns_fmv.json
297 | vendor/etc/sensors/config/sns_geomag_rv.json
298 | vendor/etc/sensors/config/sns_gyro_cal.json
299 | vendor/etc/sensors/config/sns_mag_cal.json
300 | vendor/etc/sensors/config/sns_multishake.json
301 | vendor/etc/sensors/config/sns_nonui.json
302 | vendor/etc/sensors/config/sns_pedometer.json
303 | vendor/etc/sensors/config/sns_rmd.json
304 | vendor/etc/sensors/config/sns_rotv.json
305 | vendor/etc/sensors/config/sns_smd.json
306 | vendor/etc/sensors/config/sns_tilt.json
307 | vendor/etc/sensors/config/sns_tilt_sw_enabled.json
308 | vendor/etc/sensors/config/sns_tilt_to_wake.json
309 | vendor/etc/sensors/config/tcs3701.json
310 | vendor/etc/sensors/sns_reg_config
311 | vendor/lib64/libsensorcal.so
312 | vendor/lib64/libsensorslog.so
313 | vendor/lib64/libsns_device_mode_stub.so
314 | vendor/lib64/libsns_fastRPC_util.so
315 | vendor/lib64/libsns_low_lat_stream_stub.so
316 | vendor/lib64/libsnsapi.so
317 | vendor/lib64/libsnsdiaglog.so
318 | vendor/lib64/libssc.so
319 | vendor/lib64/libssc_default_listener.so
320 | vendor/lib64/sensors.ssc.so
321 |
322 | # Touchfeature
323 | vendor/bin/hw/vendor.xiaomi.hardware.touchfeature@1.0-service
324 | vendor/etc/init/vendor.xiaomi.hardware.touchfeature@1.0-service.rc
325 | vendor/lib64/hw/vendor.xiaomi.hardware.touchfeature@1.0-impl.so
326 |
327 | # Thermal
328 | vendor/bin/mi_thermald
329 | vendor/etc/init/init.mi_thermald.rc
330 | vendor/etc/thermal-arvr.conf
331 | vendor/etc/thermal-camera.conf
332 | vendor/etc/thermal-chg-only.conf
333 | vendor/etc/thermal-map.conf
334 | vendor/etc/thermal-nolimits.conf
335 | vendor/etc/thermal-normal.conf
336 | vendor/etc/thermal-phone.conf
337 | vendor/etc/thermal-tgame.conf
338 | vendor/etc/thermal-youtube.conf
339 | vendor/etc/thermald-devices.conf
340 |
341 | # Touchscreen
342 | vendor/firmware/goodix_gt9886_limit_f10_first.tporder
343 | vendor/firmware/goodix_gt9886_limit_f10_second.tporder
344 |
--------------------------------------------------------------------------------
/reorder-libs.py:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env python
2 | #
3 | # Copyright (C) 2021 The LineageOS Project
4 | #
5 | # SPDX-License-Identifier: Apache-2.0
6 | #
7 |
8 | from functools import cmp_to_key
9 | from locale import LC_ALL, setlocale, strcoll
10 | from pathlib import Path
11 |
12 | FILES = [Path(file) for file in [
13 | "proprietary-files.txt",
14 | ]]
15 |
16 | setlocale(LC_ALL, "C")
17 |
18 | def strcoll_extract_utils(string1: str, string2: str) -> int:
19 | # Skip logic if one of the string if empty
20 | if not string1 or not string2:
21 | return strcoll(string1, string2)
22 |
23 | # Remove '-' from strings if there,
24 | # it is used to indicate a build target
25 | string1 = string1.removeprefix('-')
26 | string2 = string2.removeprefix('-')
27 |
28 | # If no directories, compare normally
29 | if not "/" in string1 and not "/" in string2:
30 | return strcoll(string1, string2)
31 |
32 | string1_dir = string1.rsplit("/", 1)[0] + "/"
33 | string2_dir = string2.rsplit("/", 1)[0] + "/"
34 | if string1_dir == string2_dir:
35 | # Same directory, compare normally
36 | return strcoll(string1, string2)
37 |
38 | if string1_dir.startswith(string2_dir):
39 | # First string dir is a subdirectory of the second one,
40 | # return string1 > string2
41 | return -1
42 |
43 | if string2_dir.startswith(string1_dir):
44 | # Second string dir is a subdirectory of the first one,
45 | # return string2 > string1
46 | return 1
47 |
48 | # Compare normally
49 | return strcoll(string1, string2)
50 |
51 | for file in FILES:
52 | if not file.is_file():
53 | print(f"File {str(file)} not found")
54 | continue
55 |
56 | with open(file, 'r') as f:
57 | sections = f.read().split("\n\n")
58 |
59 | ordered_sections = []
60 | for section in sections:
61 | section_list = [line.strip() for line in section.splitlines()]
62 | section_list.sort(key=cmp_to_key(strcoll_extract_utils))
63 | ordered_sections.append("\n".join(section_list))
64 |
65 | with open(file, 'w') as f:
66 | f.write("\n\n".join(ordered_sections).strip() + "\n")
67 |
--------------------------------------------------------------------------------
/rootdir/Android.mk:
--------------------------------------------------------------------------------
1 | LOCAL_PATH:= $(call my-dir)
2 |
3 | # Fstabs
4 |
5 | include $(CLEAR_VARS)
6 | LOCAL_MODULE := fstab.default_ramdisk
7 | LOCAL_MODULE_STEM := fstab.default
8 | LOCAL_MODULE_TAGS := optional
9 | LOCAL_MODULE_CLASS := ETC
10 | LOCAL_SRC_FILES := etc/fstab.default
11 | LOCAL_MODULE_PATH := $(TARGET_RAMDISK_OUT)
12 | include $(BUILD_PREBUILT)
13 |
14 | include $(CLEAR_VARS)
15 | LOCAL_MODULE := fstab.default
16 | LOCAL_MODULE_TAGS := optional
17 | LOCAL_MODULE_CLASS := ETC
18 | LOCAL_SRC_FILES := etc/fstab.default
19 | LOCAL_MODULE_PATH := $(TARGET_OUT_VENDOR_ETC)
20 | include $(BUILD_PREBUILT)
21 |
--------------------------------------------------------------------------------
/rootdir/etc/fstab.default:
--------------------------------------------------------------------------------
1 | # Copyright (c) 2018,2019 The Linux Foundation. All rights reserved.
2 | #
3 | # Redistribution and use in source and binary forms, with or without
4 | # modification, are permitted provided that the following conditions are
5 | # met:
6 | # * Redistributions of source code must retain the above copyright
7 | # notice, this list of conditions and the following disclaimer.
8 | # * Redistributions in binary form must reproduce the above
9 | # copyright notice, this list of conditions and the following
10 | # disclaimer in the documentation and/or other materials provided
11 | # with the distribution.
12 | # * Neither the name of The Linux Foundation nor the names of its
13 | # contributors may be used to endorse or promote products derived
14 | # from this software without specific prior written permission.
15 | #
16 | # THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED
17 | # WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
18 | # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT
19 | # ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS
20 | # BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
21 | # CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
22 | # SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
23 | # BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
24 | # WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
25 | # OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
26 | # IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
27 |
28 | # Android fstab file.
29 | # The filesystem that contains the filesystem checker binary (typically /system) cannot
30 | # specify MF_CHECK, and must come before any filesystems that do specify MF_CHECK
31 |
32 | #TODO: Add 'check' as fs_mgr_flags with data partition.
33 | # Currently we dont have e2fsck compiled. So fs check would failed.
34 |
35 | #
36 | system /system ext4 ro,barrier=1,discard wait,avb,logical,first_stage_mount,avb_keys=/avb/q-gsi.avbpubkey:/avb/r-gsi.avbpubkey:/avb/s-gsi.avbpubkey,readahead_size_kb=128
37 | system_ext /system_ext ext4 ro,barrier=1,discard wait,avb,logical,first_stage_mount,readahead_size_kb=128
38 | product /product ext4 ro,barrier=1,discard wait,avb,logical,first_stage_mount,readahead_size_kb=128
39 | vendor /vendor ext4 ro,barrier=1,discard wait,avb,logical,first_stage_mount,readahead_size_kb=128
40 | odm /odm ext4 ro,barrier=1,discard wait,avb,logical,first_stage_mount,readahead_size_kb=128
41 | /dev/block/bootdevice/by-name/boot /boot emmc defaults recoveryonly
42 | /dev/block/bootdevice/by-name/recovery /recovery emmc defaults recoveryonly
43 | /dev/block/bootdevice/by-name/cache /cache ext4 nosuid,noatime,nodev,barrier=1 wait
44 | # Add fs_mgr flag - sysfs_path=/sys/devices/platform/soc/xxxx.[ufshc|sdhci] to userdata entry, based on UFS|eMMC device.
45 | /dev/block/bootdevice/by-name/userdata /data f2fs noatime,nosuid,nodev,discard,reserve_root=32768,resgid=1065,fsync_mode=nobarrier,inlinecrypt latemount,wait,check,formattable,fileencryption=aes-256-xts:aes-256-cts:v2+inlinecrypt_optimized+wrappedkey_v0,metadata_encryption=aes-256-xts:wrappedkey_v0,keydirectory=/metadata/vold/metadata_encryption,quota,checkpoint=fs,readahead_size_kb=128
46 | /dev/block/by-name/metadata /metadata ext4 noatime,nosuid,nodev,discard wait,check,formattable
47 | /devices/platform/soc/8804000.sdhci/mmc_host* /storage/sdcard1 vfat nosuid,nodev wait,voldmanaged=sdcard1:auto,encryptable=footer
48 | /devices/platform/soc/1da4000.ufshc_card/host* /storage/sdcard1 vfat nosuid,nodev wait,voldmanaged=sdcard1:auto,encryptable=footer
49 | /dev/block/bootdevice/by-name/modem /vendor/firmware_mnt vfat ro,shortname=lower,uid=1000,gid=1000,dmask=227,fmask=337,context=u:object_r:firmware_file:s0 wait
50 | /dev/block/bootdevice/by-name/dsp /vendor/dsp ext4 ro,nosuid,nodev,barrier=1 wait
51 | /dev/block/bootdevice/by-name/persist /mnt/vendor/persist ext4 noatime,nosuid,nodev,barrier=1 wait
52 | /dev/block/bootdevice/by-name/bluetooth /vendor/bt_firmware vfat ro,shortname=lower,uid=1002,gid=3002,dmask=227,fmask=337,context=u:object_r:bt_firmware_file:s0 wait
53 | /devices/platform/soc/a600000.ssusb/a600000.dwc3/xhci-hcd.0.auto* auto auto defaults wait,voldmanaged=usbotg:auto
54 | # Need to have this entry in here even though the mount point itself is no longer needed.
55 | # The update_engine code looks for this entry in order to determine the boot device address
56 | # and fails if it does not find it.
57 | /dev/block/bootdevice/by-name/misc /misc emmc defaults defaults
58 | /dev/block/zram0 none swap defaults zramsize=3221225472
59 |
--------------------------------------------------------------------------------
/rootdir/etc/fstab.recovery:
--------------------------------------------------------------------------------
1 | # Copyright (c) 2018,2019 The Linux Foundation. All rights reserved.
2 | #
3 | # Redistribution and use in source and binary forms, with or without
4 | # modification, are permitted provided that the following conditions are
5 | # met:
6 | # * Redistributions of source code must retain the above copyright
7 | # notice, this list of conditions and the following disclaimer.
8 | # * Redistributions in binary form must reproduce the above
9 | # copyright notice, this list of conditions and the following
10 | # disclaimer in the documentation and/or other materials provided
11 | # with the distribution.
12 | # * Neither the name of The Linux Foundation nor the names of its
13 | # contributors may be used to endorse or promote products derived
14 | # from this software without specific prior written permission.
15 | #
16 | # THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED
17 | # WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
18 | # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT
19 | # ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS
20 | # BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
21 | # CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
22 | # SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
23 | # BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
24 | # WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
25 | # OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
26 | # IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
27 |
28 | # Android fstab file.
29 | # The filesystem that contains the filesystem checker binary (typically /system) cannot
30 | # specify MF_CHECK, and must come before any filesystems that do specify MF_CHECK
31 |
32 | #TODO: Add 'check' as fs_mgr_flags with data partition.
33 | # Currently we dont have e2fsck compiled. So fs check would failed.
34 |
35 | #
36 | system /system ext4 ro,barrier=1,discard wait,avb,logical,first_stage_mount,avb_keys=/avb/q-gsi.avbpubkey:/avb/r-gsi.avbpubkey:/avb/s-gsi.avbpubkey,readahead_size_kb=128
37 | system_ext /system_ext ext4 ro,barrier=1,discard wait,avb,logical,first_stage_mount,readahead_size_kb=128
38 | product /product ext4 ro,barrier=1,discard wait,avb,logical,first_stage_mount,readahead_size_kb=128
39 | vendor /vendor ext4 ro,barrier=1,discard wait,avb,logical,first_stage_mount,readahead_size_kb=128
40 | odm /odm ext4 ro,barrier=1,discard wait,avb,logical,first_stage_mount,readahead_size_kb=128
41 | /dev/block/bootdevice/by-name/boot /boot emmc defaults recoveryonly
42 | /dev/block/bootdevice/by-name/recovery /recovery emmc defaults recoveryonly
43 | /dev/block/bootdevice/by-name/cache /cache ext4 nosuid,noatime,nodev,barrier=1 wait
44 | # Add fs_mgr flag - sysfs_path=/sys/devices/platform/soc/xxxx.[ufshc|sdhci] to userdata entry, based on UFS|eMMC device.
45 | /dev/block/bootdevice/by-name/userdata /data f2fs noatime,nosuid,nodev,discard,reserve_root=32768,resgid=1065,fsync_mode=nobarrier,inlinecrypt latemount,wait,check,formattable,fileencryption=aes-256-xts:aes-256-cts:v2+inlinecrypt_optimized,quota,checkpoint=fs,readahead_size_kb=128
46 | /dev/block/by-name/metadata /metadata ext4 noatime,nosuid,nodev,discard wait,check,formattable
47 | /devices/platform/soc/8804000.sdhci/mmc_host* /storage/sdcard1 vfat nosuid,nodev wait,voldmanaged=sdcard1:auto,encryptable=footer
48 | /devices/platform/soc/1da4000.ufshc_card/host* /storage/sdcard1 vfat nosuid,nodev wait,voldmanaged=sdcard1:auto,encryptable=footer
49 | /dev/block/bootdevice/by-name/modem /vendor/firmware_mnt vfat ro,shortname=lower,uid=1000,gid=1000,dmask=227,fmask=337,context=u:object_r:firmware_file:s0 wait
50 | /dev/block/bootdevice/by-name/dsp /vendor/dsp ext4 ro,nosuid,nodev,barrier=1 wait
51 | /dev/block/bootdevice/by-name/persist /mnt/vendor/persist ext4 noatime,nosuid,nodev,barrier=1 wait
52 | /dev/block/bootdevice/by-name/bluetooth /vendor/bt_firmware vfat ro,shortname=lower,uid=1002,gid=3002,dmask=227,fmask=337,context=u:object_r:bt_firmware_file:s0 wait
53 | /devices/platform/soc/a600000.ssusb/a600000.dwc3/xhci-hcd.0.auto* auto auto defaults wait,voldmanaged=usbotg:auto
54 | # Need to have this entry in here even though the mount point itself is no longer needed.
55 | # The update_engine code looks for this entry in order to determine the boot device address
56 | # and fails if it does not find it.
57 | /dev/block/bootdevice/by-name/misc /misc emmc defaults defaults
58 | /dev/block/zram0 none swap defaults zramsize=3221225472,zram_backingdev_size=512M
59 |
--------------------------------------------------------------------------------
/rootdir/etc/init.davinci.rc:
--------------------------------------------------------------------------------
1 | # Copyright (c) 2013-2018, The Linux Foundation. All rights reserved.
2 | #
3 | # Redistribution and use in source and binary forms, with or without
4 | # modification, are permitted provided that the following conditions are
5 | # met:
6 | # * Redistributions of source code must retain the above copyright
7 | # notice, this list of conditions and the following disclaimer.
8 | # * Redistributions in binary form must reproduce the above
9 | # copyright notice, this list of conditions and the following
10 | # disclaimer in the documentation and/or other materials provided
11 | # with the distribution.
12 | # * Neither the name of The Linux Foundation nor the names of its
13 | # contributors may be used to endorse or promote products derived
14 | # from this software without specific prior written permission.
15 | #
16 | # THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED
17 | # WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
18 | # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT
19 | # ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS
20 | # BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
21 | # CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
22 | # SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
23 | # BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
24 | # WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
25 | # OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
26 | # IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
27 | #
28 | #
29 |
30 | on post-fs-data
31 | mkdir /data/vendor/nfc 0770 nfc nfc
32 |
33 | on init
34 | write /sys/class/leds/green/max_brightness 32
35 | write /sys/class/leds/blue/max_brightness 32
36 |
37 | on charger
38 | chown system system /sys/class/leds/blue/brightness
39 | chown system system /sys/class/leds/green/brightness
40 | write /sys/class/leds/blue/brightness 255
41 | write /sys/class/leds/green/brightness 255
42 |
43 | on init && property:ro.boot.hwc=GLOBAL
44 | setprop bluetooth.device.default_name "Xiaomi Mi 9T"
45 |
46 | on init && property:ro.boot.hwc=CN
47 | setprop bluetooth.device.default_name "Xiaomi Redmi K20"
48 |
49 | on init && property:ro.boot.hwc=INDIA
50 | setprop bluetooth.device.default_name "Xiaomi Redmi K20"
51 |
52 | on property:ro.boot.product.hardware.sku=davinci
53 | enable vendor.nfc_hal_service
54 |
55 | service vendor.nfc_hal_service /vendor/bin/hw/android.hardware.nfc@1.2-service
56 | override
57 | class hal
58 | user nfc
59 | group nfc
60 | disabled
61 |
62 | service vendor.motor /vendor/bin/hw/vendor.xiaomi.hardware.motor@1.0-service
63 | class hal
64 | user system
65 | group system
66 |
--------------------------------------------------------------------------------
/rro_overlays/WifiOverlayF10C/Android.bp:
--------------------------------------------------------------------------------
1 | runtime_resource_overlay {
2 | name: "WifiOverlayF10C",
3 | theme: "WifiOverlayF10C",
4 | sdk_version: "current",
5 | product_specific: true
6 | }
7 |
--------------------------------------------------------------------------------
/rro_overlays/WifiOverlayF10C/AndroidManifest.xml:
--------------------------------------------------------------------------------
1 |
2 |
16 |
17 |
21 |
22 |
29 |
30 |
--------------------------------------------------------------------------------
/rro_overlays/WifiOverlayF10C/res/values/config.xml:
--------------------------------------------------------------------------------
1 |
2 |
19 |
20 |
22 |
23 |
24 | Xiaomi Redmi K20
25 |
26 |
--------------------------------------------------------------------------------
/rro_overlays/WifiOverlayF10G/Android.bp:
--------------------------------------------------------------------------------
1 | runtime_resource_overlay {
2 | name: "WifiOverlayF10G",
3 | theme: "WifiOverlayF10G",
4 | sdk_version: "current",
5 | product_specific: true
6 | }
7 |
--------------------------------------------------------------------------------
/rro_overlays/WifiOverlayF10G/AndroidManifest.xml:
--------------------------------------------------------------------------------
1 |
2 |
16 |
17 |
21 |
22 |
29 |
30 |
--------------------------------------------------------------------------------
/rro_overlays/WifiOverlayF10G/res/values/config.xml:
--------------------------------------------------------------------------------
1 |
2 |
19 |
20 |
22 |
23 |
24 | Xiaomi Mi 9T
25 |
26 |
--------------------------------------------------------------------------------
/rro_overlays/WifiOverlayF10I/Android.bp:
--------------------------------------------------------------------------------
1 | runtime_resource_overlay {
2 | name: "WifiOverlayF10I",
3 | theme: "WifiOverlayF10I",
4 | sdk_version: "current",
5 | product_specific: true
6 | }
7 |
--------------------------------------------------------------------------------
/rro_overlays/WifiOverlayF10I/AndroidManifest.xml:
--------------------------------------------------------------------------------
1 |
2 |
16 |
17 |
21 |
22 |
29 |
30 |
--------------------------------------------------------------------------------
/rro_overlays/WifiOverlayF10I/res/values/config.xml:
--------------------------------------------------------------------------------
1 |
2 |
19 |
20 |
22 |
23 |
24 | Xiaomi Redmi K20
25 |
26 |
--------------------------------------------------------------------------------
/setup-makefiles.py:
--------------------------------------------------------------------------------
1 | #!./extract-files.py --regenerate_makefiles
2 |
--------------------------------------------------------------------------------
/update-sha1sums.py:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env python
2 | #
3 | # Copyright (C) 2016 The CyanogenMod Project
4 | # Copyright (C) 2017-2018 The LineageOS Project
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 | # You may obtain a copy of the License at
9 | #
10 | # http://www.apache.org/licenses/LICENSE-2.0
11 | #
12 | # Unless required by applicable law or agreed to in writing, software
13 | # distributed under the License is distributed on an "AS IS" BASIS,
14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15 | # See the License for the specific language governing permissions and
16 | # limitations under the License.
17 | #
18 |
19 | from hashlib import sha1
20 | import sys
21 |
22 | device='davinci'
23 | vendor='xiaomi'
24 |
25 | lines = [ line for line in open('proprietary-files.txt', 'r') ]
26 | vendorPath = '../../../vendor/' + vendor + '/' + device + '/proprietary'
27 | needSHA1 = False
28 |
29 | def cleanup():
30 | for index, line in enumerate(lines):
31 | # Remove '\n' character
32 | line = line[:-1]
33 |
34 | # Skip empty or commented lines
35 | if len(line) == 0 or line[0] == '#':
36 | continue
37 |
38 | # Drop SHA1 hash, if existing
39 | if '|' in line:
40 | line = line.split('|')[0]
41 | lines[index] = '%s\n' % (line)
42 |
43 | def update():
44 | for index, line in enumerate(lines):
45 | # Remove '\n' character
46 | line = line[:-1]
47 |
48 | # Skip empty lines
49 | if len(line) == 0:
50 | continue
51 |
52 | # Check if we need to set SHA1 hash for the next files
53 | if line[0] == '#':
54 | needSHA1 = (' - from' in line)
55 | continue
56 |
57 | if needSHA1:
58 | # Remove existing SHA1 hash
59 | line = line.split('|')[0]
60 | filePath = line.split(':')[1] if len(line.split(':')) == 2 else line
61 |
62 | if filePath[0] == '-':
63 | file = open('%s/%s' % (vendorPath, filePath[1:]), 'rb').read()
64 | else:
65 | file = open('%s/%s' % (vendorPath, filePath), 'rb').read()
66 |
67 | hash = sha1(file).hexdigest()
68 | lines[index] = '%s|%s\n' % (line, hash)
69 |
70 | if len(sys.argv) == 2 and sys.argv[1] == '-c':
71 | cleanup()
72 | else:
73 | update()
74 |
75 | with open('proprietary-files.txt', 'w') as file:
76 | for line in lines:
77 | file.write(line)
78 |
79 | file.close()
80 |
--------------------------------------------------------------------------------
/vendor.prop:
--------------------------------------------------------------------------------
1 | # Audio
2 | persist.vendor.audio.hifi=false
3 | ro.vendor.audio.sdk.fluencetype=fluence
4 | vendor.audio.feature.compr_voip.enable=false
5 | vendor.voice.path.for.pcm.voip=false
6 |
7 | # ACDB
8 | persist.vendor.audio.calfile0=/vendor/etc/acdbdata/Forte/Forte_Speaker_cal.acdb
9 | persist.vendor.audio.calfile1=/vendor/etc/acdbdata/Forte/Forte_Headset_cal.acdb
10 | persist.vendor.audio.calfile2=/vendor/etc/acdbdata/Forte/Forte_General_cal.acdb
11 | persist.vendor.audio.calfile3=/vendor/etc/acdbdata/Forte/Forte_Codec_cal.acdb
12 | persist.vendor.audio.calfile4=/vendor/etc/acdbdata/Forte/Forte_Bluetooth_cal.acdb
13 | persist.vendor.audio.calfile5=/vendor/etc/acdbdata/Forte/Forte_Hdmi_cal.acdb
14 | persist.vendor.audio.calfile6=/vendor/etc/acdbdata/Forte/Forte_Global_cal.acdb
15 | persist.vendor.audio.calfile7=/vendor/etc/acdbdata/Forte/Forte_Handset_cal.acdb
16 |
17 | # Display post-processing
18 | ro.vendor.display.ad=1
19 | ro.vendor.display.ad.hdr_calib_data=/vendor/etc/hdr_config.cfg
20 | ro.vendor.display.ad.sdr_calib_data=/vendor/etc/sdr_config.cfg
21 |
--------------------------------------------------------------------------------