diff options
author | Praneeth Bajjuri | 2021-01-05 14:37:55 -0600 |
---|---|---|
committer | Praneeth Bajjuri | 2021-01-05 14:37:55 -0600 |
commit | 2526428b5dc72655b1da2a2dfc8b90db08a61b26 (patch) | |
tree | 66f0f528ce70637c75f541fb580027af85a79727 | |
parent | 3fd7fd045532afba76bed354a442cf0a7793a02c (diff) | |
parent | a34582feccd08890467f7d5a9009e332a912217f (diff) | |
download | kernel-android-feature-ti-linux-5.10.y.tar.gz kernel-android-feature-ti-linux-5.10.y.tar.xz kernel-android-feature-ti-linux-5.10.y.zip |
Merge branch 'android12-5.10' of https://android.googlesource.com/kernel/common into android-feature-ti-linux-5.10.yandroid-feature-ti-linux-5.10.y
* 'android12-5.10' of https://android.googlesource.com/kernel/common: (1848 commits)
ANDROID: rwsem: Export rwsem_waiter struct for loadable modules
ANDROID: vendor_hook: modify cpuidle vendor hook
ANDROID: abi_gki_aarch64_db845c: Update for the DMABUF_HEAPS_SYSTEM change
ANDROID: usb: f_accessory: Don't drop NULL reference in acc_disconnect()
ANDROID: usb: f_accessory: Avoid bitfields for shared variables
ANDROID: usb: f_accessory: Cancel any pending work before teardown
ANDROID: usb: f_accessory: Don't corrupt global state on double registration
ANDROID: usb: f_accessory: Fix teardown ordering in acc_release()
ANDROID: usb: f_accessory: Add refcounting to global 'acc_dev'
ANDROID: usb: f_accessory: Wrap '_acc_dev' in get()/put() accessors
ANDROID: usb: f_accessory: Remove useless assignment
ANDROID: usb: f_accessory: Remove useless non-debug prints
ANDROID: usb: f_accessory: Remove stale comments
ANDROID: USB: gadget: f_fs.c: Fix merge issue
ANDROID: crypto: keysetup: use FSCRYPT_MODE_MAX instead of __FSCRYPT_MODE_MAX
ANDROID: dma-buf: heap: export dma_heap_put
ANDROID: percpu: Export per_cpu_ptr_to_phys for loadable modules
ANDROID: printk: Export symbols for loadable modules
ANDROID: cpuhp/pause: add trace points for pause and resume
ANDROID: usb: gadget: f_accessory: fix CTS test stuck
...
Signed-off-by: Praneeth Bajjuri <praneeth@ti.com>
630 files changed, 42966 insertions, 3371 deletions
diff --git a/.gitignore b/.gitignore index d01cda8e1177..44e34991875e 100644 --- a/.gitignore +++ b/.gitignore | |||
@@ -41,6 +41,7 @@ | |||
41 | *.so.dbg | 41 | *.so.dbg |
42 | *.su | 42 | *.su |
43 | *.symtypes | 43 | *.symtypes |
44 | *.symversions | ||
44 | *.tab.[ch] | 45 | *.tab.[ch] |
45 | *.tar | 46 | *.tar |
46 | *.xz | 47 | *.xz |
diff --git a/Documentation/ABI/testing/sysfs-class-typec b/Documentation/ABI/testing/sysfs-class-typec index b7794e02ad20..8eab41e79ce6 100644 --- a/Documentation/ABI/testing/sysfs-class-typec +++ b/Documentation/ABI/testing/sysfs-class-typec | |||
@@ -139,6 +139,49 @@ Description: | |||
139 | Shows if the partner supports USB Power Delivery communication: | 139 | Shows if the partner supports USB Power Delivery communication: |
140 | Valid values: yes, no | 140 | Valid values: yes, no |
141 | 141 | ||
142 | What: /sys/class/typec/<port>-partner/number_of_alternate_modes | ||
143 | Date: November 2020 | ||
144 | Contact: Prashant Malani <pmalani@chromium.org> | ||
145 | Description: | ||
146 | Shows the number of alternate modes which are advertised by the partner | ||
147 | during Power Delivery discovery. This file remains hidden until a value | ||
148 | greater than or equal to 0 is set by Type C port driver. | ||
149 | |||
150 | What: /sys/class/typec/<port>-partner/type | ||
151 | Date: December 2020 | ||
152 | Contact: Heikki Krogerus <heikki.krogerus@linux.intel.com> | ||
153 | Description: USB Power Delivery Specification defines a set of product types | ||
154 | for the partner devices. This file will show the product type of | ||
155 | the partner if it is known. Dual-role capable partners will have | ||
156 | both UFP and DFP product types defined, but only one that | ||
157 | matches the current role will be active at the time. If the | ||
158 | product type of the partner is not visible to the device driver, | ||
159 | this file will not exist. | ||
160 | |||
161 | When the partner product type is detected, or changed with role | ||
162 | swap, uvevent is also raised that contains PRODUCT_TYPE=<product | ||
163 | type> (for example PRODUCT_TYPE=hub). | ||
164 | |||
165 | Valid values: | ||
166 | |||
167 | UFP / device role | ||
168 | ====================== ========================== | ||
169 | undefined - | ||
170 | hub PDUSB Hub | ||
171 | peripheral PDUSB Peripheral | ||
172 | psd Power Bank | ||
173 | ama Alternate Mode Adapter | ||
174 | ====================== ========================== | ||
175 | |||
176 | DFP / host role | ||
177 | ====================== ========================== | ||
178 | undefined - | ||
179 | hub PDUSB Hub | ||
180 | host PDUSB Host | ||
181 | power_brick Power Brick | ||
182 | amc Alternate Mode Controller | ||
183 | ====================== ========================== | ||
184 | |||
142 | What: /sys/class/typec/<port>-partner>/identity/ | 185 | What: /sys/class/typec/<port>-partner>/identity/ |
143 | Date: April 2017 | 186 | Date: April 2017 |
144 | Contact: Heikki Krogerus <heikki.krogerus@linux.intel.com> | 187 | Contact: Heikki Krogerus <heikki.krogerus@linux.intel.com> |
@@ -151,31 +194,6 @@ Description: | |||
151 | directory exists, it will have an attribute file for every VDO | 194 | directory exists, it will have an attribute file for every VDO |
152 | in Discover Identity command result. | 195 | in Discover Identity command result. |
153 | 196 | ||
154 | What: /sys/class/typec/<port>-partner/identity/id_header | ||
155 | Date: April 2017 | ||
156 | Contact: Heikki Krogerus <heikki.krogerus@linux.intel.com> | ||
157 | Description: | ||
158 | ID Header VDO part of Discover Identity command result. The | ||
159 | value will show 0 until Discover Identity command result becomes | ||
160 | available. The value can be polled. | ||
161 | |||
162 | What: /sys/class/typec/<port>-partner/identity/cert_stat | ||
163 | Date: April 2017 | ||
164 | Contact: Heikki Krogerus <heikki.krogerus@linux.intel.com> | ||
165 | Description: | ||
166 | Cert Stat VDO part of Discover Identity command result. The | ||
167 | value will show 0 until Discover Identity command result becomes | ||
168 | available. The value can be polled. | ||
169 | |||
170 | What: /sys/class/typec/<port>-partner/identity/product | ||
171 | Date: April 2017 | ||
172 | Contact: Heikki Krogerus <heikki.krogerus@linux.intel.com> | ||
173 | Description: | ||
174 | Product VDO part of Discover Identity command result. The value | ||
175 | will show 0 until Discover Identity command result becomes | ||
176 | available. The value can be polled. | ||
177 | |||
178 | |||
179 | USB Type-C cable devices (eg. /sys/class/typec/port0-cable/) | 197 | USB Type-C cable devices (eg. /sys/class/typec/port0-cable/) |
180 | 198 | ||
181 | Note: Electronically Marked Cables will have a device also for one cable plug | 199 | Note: Electronically Marked Cables will have a device also for one cable plug |
@@ -187,9 +205,21 @@ described in USB Type-C and USB Power Delivery specifications. | |||
187 | What: /sys/class/typec/<port>-cable/type | 205 | What: /sys/class/typec/<port>-cable/type |
188 | Date: April 2017 | 206 | Date: April 2017 |
189 | Contact: Heikki Krogerus <heikki.krogerus@linux.intel.com> | 207 | Contact: Heikki Krogerus <heikki.krogerus@linux.intel.com> |
190 | Description: | 208 | Description: USB Power Delivery Specification defines a set of product types |
191 | Shows if the cable is active. | 209 | for the cables. This file will show the product type of the |
192 | Valid values: active, passive | 210 | cable if it is known. If the product type of the cable is not |
211 | visible to the device driver, this file will not exist. | ||
212 | |||
213 | When the cable product type is detected, uvevent is also raised | ||
214 | with PRODUCT_TYPE showing the product type of the cable. | ||
215 | |||
216 | Valid values: | ||
217 | |||
218 | ====================== ========================== | ||
219 | undefined - | ||
220 | active Active Cable | ||
221 | passive Passive Cable | ||
222 | ====================== ========================== | ||
193 | 223 | ||
194 | What: /sys/class/typec/<port>-cable/plug_type | 224 | What: /sys/class/typec/<port>-cable/plug_type |
195 | Date: April 2017 | 225 | Date: April 2017 |
@@ -202,17 +232,37 @@ Description: | |||
202 | - type-c | 232 | - type-c |
203 | - captive | 233 | - captive |
204 | 234 | ||
205 | What: /sys/class/typec/<port>-cable/identity/ | 235 | What: /sys/class/typec/<port>-<plug>/number_of_alternate_modes |
236 | Date: November 2020 | ||
237 | Contact: Prashant Malani <pmalani@chromium.org> | ||
238 | Description: | ||
239 | Shows the number of alternate modes which are advertised by the plug | ||
240 | associated with a particular cable during Power Delivery discovery. | ||
241 | This file remains hidden until a value greater than or equal to 0 | ||
242 | is set by Type C port driver. | ||
243 | |||
244 | |||
245 | USB Type-C partner/cable Power Delivery Identity objects | ||
246 | |||
247 | NOTE: The following attributes will be applicable to both | ||
248 | partner (e.g /sys/class/typec/port0-partner/) and | ||
249 | cable (e.g /sys/class/typec/port0-cable/) devices. Consequently, the example file | ||
250 | paths below are prefixed with "/sys/class/typec/<port>-{partner|cable}/" to | ||
251 | reflect this. | ||
252 | |||
253 | What: /sys/class/typec/<port>-{partner|cable}/identity/ | ||
206 | Date: April 2017 | 254 | Date: April 2017 |
207 | Contact: Heikki Krogerus <heikki.krogerus@linux.intel.com> | 255 | Contact: Heikki Krogerus <heikki.krogerus@linux.intel.com> |
208 | Description: | 256 | Description: |
209 | This directory appears only if the port device driver is capable | 257 | This directory appears only if the port device driver is capable |
210 | of showing the result of Discover Identity USB power delivery | 258 | of showing the result of Discover Identity USB power delivery |
211 | command. That will not always be possible even when USB power | 259 | command. That will not always be possible even when USB power |
212 | delivery is supported. If the directory exists, it will have an | 260 | delivery is supported, for example when USB power delivery |
213 | attribute for every VDO returned by Discover Identity command. | 261 | communication for the port is mostly handled in firmware. If the |
262 | directory exists, it will have an attribute file for every VDO | ||
263 | in Discover Identity command result. | ||
214 | 264 | ||
215 | What: /sys/class/typec/<port>-cable/identity/id_header | 265 | What: /sys/class/typec/<port>-{partner|cable}/identity/id_header |
216 | Date: April 2017 | 266 | Date: April 2017 |
217 | Contact: Heikki Krogerus <heikki.krogerus@linux.intel.com> | 267 | Contact: Heikki Krogerus <heikki.krogerus@linux.intel.com> |
218 | Description: | 268 | Description: |
@@ -220,7 +270,7 @@ Description: | |||
220 | value will show 0 until Discover Identity command result becomes | 270 | value will show 0 until Discover Identity command result becomes |
221 | available. The value can be polled. | 271 | available. The value can be polled. |
222 | 272 | ||
223 | What: /sys/class/typec/<port>-cable/identity/cert_stat | 273 | What: /sys/class/typec/<port>-{partner|cable}/identity/cert_stat |
224 | Date: April 2017 | 274 | Date: April 2017 |
225 | Contact: Heikki Krogerus <heikki.krogerus@linux.intel.com> | 275 | Contact: Heikki Krogerus <heikki.krogerus@linux.intel.com> |
226 | Description: | 276 | Description: |
@@ -228,7 +278,7 @@ Description: | |||
228 | value will show 0 until Discover Identity command result becomes | 278 | value will show 0 until Discover Identity command result becomes |
229 | available. The value can be polled. | 279 | available. The value can be polled. |
230 | 280 | ||
231 | What: /sys/class/typec/<port>-cable/identity/product | 281 | What: /sys/class/typec/<port>-{partner|cable}/identity/product |
232 | Date: April 2017 | 282 | Date: April 2017 |
233 | Contact: Heikki Krogerus <heikki.krogerus@linux.intel.com> | 283 | Contact: Heikki Krogerus <heikki.krogerus@linux.intel.com> |
234 | Description: | 284 | Description: |
@@ -236,6 +286,30 @@ Description: | |||
236 | will show 0 until Discover Identity command result becomes | 286 | will show 0 until Discover Identity command result becomes |
237 | available. The value can be polled. | 287 | available. The value can be polled. |
238 | 288 | ||
289 | What: /sys/class/typec/<port>-{partner|cable}/identity/product_type_vdo1 | ||
290 | Date: October 2020 | ||
291 | Contact: Prashant Malani <pmalani@chromium.org> | ||
292 | Description: | ||
293 | 1st Product Type VDO of Discover Identity command result. | ||
294 | The value will show 0 until Discover Identity command result becomes | ||
295 | available and a valid Product Type VDO is returned. | ||
296 | |||
297 | What: /sys/class/typec/<port>-{partner|cable}/identity/product_type_vdo2 | ||
298 | Date: October 2020 | ||
299 | Contact: Prashant Malani <pmalani@chromium.org> | ||
300 | Description: | ||
301 | 2nd Product Type VDO of Discover Identity command result. | ||
302 | The value will show 0 until Discover Identity command result becomes | ||
303 | available and a valid Product Type VDO is returned. | ||
304 | |||
305 | What: /sys/class/typec/<port>-{partner|cable}/identity/product_type_vdo3 | ||
306 | Date: October 2020 | ||
307 | Contact: Prashant Malani <pmalani@chromium.org> | ||
308 | Description: | ||
309 | 3rd Product Type VDO of Discover Identity command result. | ||
310 | The value will show 0 until Discover Identity command result becomes | ||
311 | available and a valid Product Type VDO is returned. | ||
312 | |||
239 | 313 | ||
240 | USB Type-C port alternate mode devices. | 314 | USB Type-C port alternate mode devices. |
241 | 315 | ||
diff --git a/Documentation/ABI/testing/sysfs-fs-f2fs b/Documentation/ABI/testing/sysfs-fs-f2fs index 67b3ed8e8c2f..3dfee94e0618 100644 --- a/Documentation/ABI/testing/sysfs-fs-f2fs +++ b/Documentation/ABI/testing/sysfs-fs-f2fs | |||
@@ -370,3 +370,10 @@ Date: April 2020 | |||
370 | Contact: "Daeho Jeong" <daehojeong@google.com> | 370 | Contact: "Daeho Jeong" <daehojeong@google.com> |
371 | Description: Give a way to change iostat_period time. 3secs by default. | 371 | Description: Give a way to change iostat_period time. 3secs by default. |
372 | The new iostat trace gives stats gap given the period. | 372 | The new iostat trace gives stats gap given the period. |
373 | What: /sys/fs/f2fs/<disk>/max_io_bytes | ||
374 | Date: December 2020 | ||
375 | Contact: "Jaegeuk Kim" <jaegeuk@kernel.org> | ||
376 | Description: This gives a control to limit the bio size in f2fs. | ||
377 | Default is zero, which will follow underlying block layer limit, | ||
378 | whereas, if it has a certain bytes value, f2fs won't submit a | ||
379 | bio larger than that size. | ||
diff --git a/Documentation/ABI/testing/sysfs-kernel-ion b/Documentation/ABI/testing/sysfs-kernel-ion new file mode 100644 index 000000000000..f57f970574ae --- /dev/null +++ b/Documentation/ABI/testing/sysfs-kernel-ion | |||
@@ -0,0 +1,27 @@ | |||
1 | What: /sys/kernel/ion | ||
2 | Date: Dec 2019 | ||
3 | KernelVersion: 4.14.158 | ||
4 | Contact: Suren Baghdasaryan <surenb@google.com>, | ||
5 | Sandeep Patil <sspatil@google.com> | ||
6 | Description: | ||
7 | The /sys/kernel/ion directory contains a snapshot of the | ||
8 | internal state of ION memory heaps and pools. | ||
9 | Users: kernel memory tuning tools | ||
10 | |||
11 | What: /sys/kernel/ion/total_heaps_kb | ||
12 | Date: Dec 2019 | ||
13 | KernelVersion: 4.14.158 | ||
14 | Contact: Suren Baghdasaryan <surenb@google.com>, | ||
15 | Sandeep Patil <sspatil@google.com> | ||
16 | Description: | ||
17 | The total_heaps_kb file is read-only and specifies how much | ||
18 | memory in Kb is allocated to ION heaps. | ||
19 | |||
20 | What: /sys/kernel/ion/total_pools_kb | ||
21 | Date: Dec 2019 | ||
22 | KernelVersion: 4.14.158 | ||
23 | Contact: Suren Baghdasaryan <surenb@google.com>, | ||
24 | Sandeep Patil <sspatil@google.com> | ||
25 | Description: | ||
26 | The total_pools_kb file is read-only and specifies how much | ||
27 | memory in Kb is allocated to ION pools. | ||
diff --git a/Documentation/ABI/testing/sysfs-kernel-wakeup_reasons b/Documentation/ABI/testing/sysfs-kernel-wakeup_reasons new file mode 100644 index 000000000000..acb19b91c192 --- /dev/null +++ b/Documentation/ABI/testing/sysfs-kernel-wakeup_reasons | |||
@@ -0,0 +1,16 @@ | |||
1 | What: /sys/kernel/wakeup_reasons/last_resume_reason | ||
2 | Date: February 2014 | ||
3 | Contact: Ruchi Kandoi <kandoiruchi@google.com> | ||
4 | Description: | ||
5 | The /sys/kernel/wakeup_reasons/last_resume_reason is | ||
6 | used to report wakeup reasons after system exited suspend. | ||
7 | |||
8 | What: /sys/kernel/wakeup_reasons/last_suspend_time | ||
9 | Date: March 2015 | ||
10 | Contact: jinqian <jinqian@google.com> | ||
11 | Description: | ||
12 | The /sys/kernel/wakeup_reasons/last_suspend_time is | ||
13 | used to report time spent in last suspend cycle. It contains | ||
14 | two numbers (in seconds) separated by space. First number is | ||
15 | the time spent in suspend and resume processes. Second number | ||
16 | is the time spent in sleep state. \ No newline at end of file | ||
diff --git a/Documentation/admin-guide/kernel-parameters.txt b/Documentation/admin-guide/kernel-parameters.txt index f6a1513dfb76..b885bbf9c8fd 100644 --- a/Documentation/admin-guide/kernel-parameters.txt +++ b/Documentation/admin-guide/kernel-parameters.txt | |||
@@ -1567,6 +1567,10 @@ | |||
1567 | If specified, z/VM IUCV HVC accepts connections | 1567 | If specified, z/VM IUCV HVC accepts connections |
1568 | from listed z/VM user IDs only. | 1568 | from listed z/VM user IDs only. |
1569 | 1569 | ||
1570 | hvc_dcc.enable= [ARM,ARM64] Enable DCC driver at runtime. For GKI, | ||
1571 | disabled at runtime by default to prevent | ||
1572 | crashes in devices which do not support DCC. | ||
1573 | |||
1570 | hv_nopvspin [X86,HYPER_V] Disables the paravirt spinlock optimizations | 1574 | hv_nopvspin [X86,HYPER_V] Disables the paravirt spinlock optimizations |
1571 | which allow the hypervisor to 'idle' the | 1575 | which allow the hypervisor to 'idle' the |
1572 | guest on lock contention. | 1576 | guest on lock contention. |
diff --git a/Documentation/admin-guide/sysctl/vm.rst b/Documentation/admin-guide/sysctl/vm.rst index f455fa00c00f..9535523801e6 100644 --- a/Documentation/admin-guide/sysctl/vm.rst +++ b/Documentation/admin-guide/sysctl/vm.rst | |||
@@ -38,6 +38,7 @@ Currently, these files are in /proc/sys/vm: | |||
38 | - dirty_writeback_centisecs | 38 | - dirty_writeback_centisecs |
39 | - drop_caches | 39 | - drop_caches |
40 | - extfrag_threshold | 40 | - extfrag_threshold |
41 | - extra_free_kbytes | ||
41 | - highmem_is_dirtyable | 42 | - highmem_is_dirtyable |
42 | - hugetlb_shm_group | 43 | - hugetlb_shm_group |
43 | - laptop_mode | 44 | - laptop_mode |
@@ -307,6 +308,21 @@ only use the low memory and they can fill it up with dirty data without | |||
307 | any throttling. | 308 | any throttling. |
308 | 309 | ||
309 | 310 | ||
311 | extra_free_kbytes | ||
312 | |||
313 | This parameter tells the VM to keep extra free memory between the threshold | ||
314 | where background reclaim (kswapd) kicks in, and the threshold where direct | ||
315 | reclaim (by allocating processes) kicks in. | ||
316 | |||
317 | This is useful for workloads that require low latency memory allocations | ||
318 | and have a bounded burstiness in memory allocations, for example a | ||
319 | realtime application that receives and transmits network traffic | ||
320 | (causing in-kernel memory allocations) with a maximum total message burst | ||
321 | size of 200MB may need 200MB of extra free memory to avoid direct reclaim | ||
322 | related latencies. | ||
323 | |||
324 | ============================================================== | ||
325 | |||
310 | hugetlb_shm_group | 326 | hugetlb_shm_group |
311 | ================= | 327 | ================= |
312 | 328 | ||
diff --git a/Documentation/device-mapper/dm-bow.txt b/Documentation/device-mapper/dm-bow.txt new file mode 100644 index 000000000000..e3fc4d22e0f4 --- /dev/null +++ b/Documentation/device-mapper/dm-bow.txt | |||
@@ -0,0 +1,99 @@ | |||
1 | dm_bow (backup on write) | ||
2 | ======================== | ||
3 | |||
4 | dm_bow is a device mapper driver that uses the free space on a device to back up | ||
5 | data that is overwritten. The changes can then be committed by a simple state | ||
6 | change, or rolled back by removing the dm_bow device and running a command line | ||
7 | utility over the underlying device. | ||
8 | |||
9 | dm_bow has three states, set by writing ‘1’ or ‘2’ to /sys/block/dm-?/bow/state. | ||
10 | It is only possible to go from state 0 (initial state) to state 1, and then from | ||
11 | state 1 to state 2. | ||
12 | |||
13 | State 0: dm_bow collects all trims to the device and assumes that these mark | ||
14 | free space on the overlying file system that can be safely used. Typically the | ||
15 | mount code would create the dm_bow device, mount the file system, call the | ||
16 | FITRIM ioctl on the file system then switch to state 1. These trims are not | ||
17 | propagated to the underlying device. | ||
18 | |||
19 | State 1: All writes to the device cause the underlying data to be backed up to | ||
20 | the free (trimmed) area as needed in such a way as they can be restored. | ||
21 | However, the writes, with one exception, then happen exactly as they would | ||
22 | without dm_bow, so the device is always in a good final state. The exception is | ||
23 | that sector 0 is used to keep a log of the latest changes, both to indicate that | ||
24 | we are in this state and to allow rollback. See below for all details. If there | ||
25 | isn't enough free space, writes are failed with -ENOSPC. | ||
26 | |||
27 | State 2: The transition to state 2 triggers replacing the special sector 0 with | ||
28 | the normal sector 0, and the freeing of all state information. dm_bow then | ||
29 | becomes a pass-through driver, allowing the device to continue to be used with | ||
30 | minimal performance impact. | ||
31 | |||
32 | Usage | ||
33 | ===== | ||
34 | dm-bow takes one command line parameter, the name of the underlying device. | ||
35 | |||
36 | dm-bow will typically be used in the following way. dm-bow will be loaded with a | ||
37 | suitable underlying device and the resultant device will be mounted. A file | ||
38 | system trim will be issued via the FITRIM ioctl, then the device will be | ||
39 | switched to state 1. The file system will now be used as normal. At some point, | ||
40 | the changes can either be committed by switching to state 2, or rolled back by | ||
41 | unmounting the file system, removing the dm-bow device and running the command | ||
42 | line utility. Note that rebooting the device will be equivalent to unmounting | ||
43 | and removing, but the command line utility must still be run | ||
44 | |||
45 | Details of operation in state 1 | ||
46 | =============================== | ||
47 | |||
48 | dm_bow maintains a type for all sectors. A sector can be any of: | ||
49 | |||
50 | SECTOR0 | ||
51 | SECTOR0_CURRENT | ||
52 | UNCHANGED | ||
53 | FREE | ||
54 | CHANGED | ||
55 | BACKUP | ||
56 | |||
57 | SECTOR0 is the first sector on the device, and is used to hold the log of | ||
58 | changes. This is the one exception. | ||
59 | |||
60 | SECTOR0_CURRENT is a sector picked from the FREE sectors, and is where reads and | ||
61 | writes from the true sector zero are redirected to. Note that like any backup | ||
62 | sector, if the sector is written to directly, it must be moved again. | ||
63 | |||
64 | UNCHANGED means that the sector has not been changed since we entered state 1. | ||
65 | Thus if it is written to or trimmed, the contents must first be backed up. | ||
66 | |||
67 | FREE means that the sector was trimmed in state 0 and has not yet been written | ||
68 | to or used for backup. On being written to, a FREE sector is changed to CHANGED. | ||
69 | |||
70 | CHANGED means that the sector has been modified, and can be further modified | ||
71 | without further backup. | ||
72 | |||
73 | BACKUP means that this is a free sector being used as a backup. On being written | ||
74 | to, the contents must first be backed up again. | ||
75 | |||
76 | All backup operations are logged to the first sector. The log sector has the | ||
77 | format: | ||
78 | -------------------------------------------------------- | ||
79 | | Magic | Count | Sequence | Log entry | Log entry | … | ||
80 | -------------------------------------------------------- | ||
81 | |||
82 | Magic is a magic number. Count is the number of log entries. Sequence is 0 | ||
83 | initially. A log entry is | ||
84 | |||
85 | ----------------------------------- | ||
86 | | Source | Dest | Size | Checksum | | ||
87 | ----------------------------------- | ||
88 | |||
89 | When SECTOR0 is full, the log sector is backed up and another empty log sector | ||
90 | created with sequence number one higher. The first entry in any log entry with | ||
91 | sequence > 0 therefore must be the log of the backing up of the previous log | ||
92 | sector. Note that sequence is not strictly needed, but is a useful sanity check | ||
93 | and potentially limits the time spent trying to restore a corrupted snapshot. | ||
94 | |||
95 | On entering state 1, dm_bow has a list of free sectors. All other sectors are | ||
96 | unchanged. Sector0_current is selected from the free sectors and the contents of | ||
97 | sector 0 are copied there. The sector 0 is backed up, which triggers the first | ||
98 | log entry to be written. | ||
99 | |||
diff --git a/Documentation/devicetree/bindings/interrupt-controller/qcom,pdc.txt b/Documentation/devicetree/bindings/interrupt-controller/qcom,pdc.txt index 1df293953327..004584ef71f7 100644 --- a/Documentation/devicetree/bindings/interrupt-controller/qcom,pdc.txt +++ b/Documentation/devicetree/bindings/interrupt-controller/qcom,pdc.txt | |||
@@ -25,6 +25,9 @@ Properties: | |||
25 | Usage: required | 25 | Usage: required |
26 | Value type: <prop-encoded-array> | 26 | Value type: <prop-encoded-array> |
27 | Definition: Specifies the base physical address for PDC hardware. | 27 | Definition: Specifies the base physical address for PDC hardware. |
28 | Optionally, specify the PDC's GIC interface registers that | ||
29 | need to be configured for wakeup capable GPIOs routed to | ||
30 | the PDC. | ||
28 | 31 | ||
29 | - interrupt-cells: | 32 | - interrupt-cells: |
30 | Usage: required | 33 | Usage: required |
@@ -51,15 +54,23 @@ Properties: | |||
51 | The second element is the GIC hwirq number for the PDC port. | 54 | The second element is the GIC hwirq number for the PDC port. |
52 | The third element is the number of interrupts in sequence. | 55 | The third element is the number of interrupts in sequence. |
53 | 56 | ||
57 | - qcom,scm-spi-cfg: | ||
58 | Usage: optional | ||
59 | Value type: <bool> | ||
60 | Definition: Specifies if the SPI configuration registers have to be | ||
61 | written from the firmware. Sometimes the PDC interface | ||
62 | register to the GIC can only be written from the firmware. | ||
63 | |||
54 | Example: | 64 | Example: |
55 | 65 | ||
56 | pdc: interrupt-controller@b220000 { | 66 | pdc: interrupt-controller@b220000 { |
57 | compatible = "qcom,sdm845-pdc"; | 67 | compatible = "qcom,sdm845-pdc"; |
58 | reg = <0xb220000 0x30000>; | 68 | reg = <0 0x0b220000 0 0x30000>, <0 0x179900f0 0 0x60>; |
59 | qcom,pdc-ranges = <0 512 94>, <94 641 15>, <115 662 7>; | 69 | qcom,pdc-ranges = <0 512 94>, <94 641 15>, <115 662 7>; |
60 | #interrupt-cells = <2>; | 70 | #interrupt-cells = <2>; |
61 | interrupt-parent = <&intc>; | 71 | interrupt-parent = <&intc>; |
62 | interrupt-controller; | 72 | interrupt-controller; |
73 | qcom,scm-spi-cfg; | ||
63 | }; | 74 | }; |
64 | 75 | ||
65 | DT binding of a device that wants to use the GIC SPI 514 as a wakeup | 76 | DT binding of a device that wants to use the GIC SPI 514 as a wakeup |
diff --git a/Documentation/devicetree/bindings/iommu/arm,smmu.yaml b/Documentation/devicetree/bindings/iommu/arm,smmu.yaml index 503160a7b9a0..3b63f2ae24db 100644 --- a/Documentation/devicetree/bindings/iommu/arm,smmu.yaml +++ b/Documentation/devicetree/bindings/iommu/arm,smmu.yaml | |||
@@ -28,8 +28,6 @@ properties: | |||
28 | - enum: | 28 | - enum: |
29 | - qcom,msm8996-smmu-v2 | 29 | - qcom,msm8996-smmu-v2 |
30 | - qcom,msm8998-smmu-v2 | 30 | - qcom,msm8998-smmu-v2 |
31 | - qcom,sc7180-smmu-v2 | ||
32 | - qcom,sdm845-smmu-v2 | ||
33 | - const: qcom,smmu-v2 | 31 | - const: qcom,smmu-v2 |
34 | 32 | ||
35 | - description: Qcom SoCs implementing "arm,mmu-500" | 33 | - description: Qcom SoCs implementing "arm,mmu-500" |
@@ -40,6 +38,13 @@ properties: | |||
40 | - qcom,sm8150-smmu-500 | 38 | - qcom,sm8150-smmu-500 |
41 | - qcom,sm8250-smmu-500 | 39 | - qcom,sm8250-smmu-500 |
42 | - const: arm,mmu-500 | 40 | - const: arm,mmu-500 |
41 | - description: Qcom Adreno GPUs implementing "arm,smmu-v2" | ||
42 | items: | ||
43 | - enum: | ||
44 | - qcom,sc7180-smmu-v2 | ||
45 | - qcom,sdm845-smmu-v2 | ||
46 | - const: qcom,adreno-smmu | ||
47 | - const: qcom,smmu-v2 | ||
43 | - description: Marvell SoCs implementing "arm,mmu-500" | 48 | - description: Marvell SoCs implementing "arm,mmu-500" |
44 | items: | 49 | items: |
45 | - const: marvell,ap806-smmu-500 | 50 | - const: marvell,ap806-smmu-500 |
diff --git a/Documentation/devicetree/bindings/usb/maxim,max33359.yaml b/Documentation/devicetree/bindings/usb/maxim,max33359.yaml new file mode 100644 index 000000000000..93a19eda610b --- /dev/null +++ b/Documentation/devicetree/bindings/usb/maxim,max33359.yaml | |||
@@ -0,0 +1,75 @@ | |||
1 | # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) | ||
2 | %YAML 1.2 | ||
3 | --- | ||
4 | $id: "http://devicetree.org/schemas/usb/maxim,max33359.yaml#" | ||
5 | $schema: "http://devicetree.org/meta-schemas/core.yaml#" | ||
6 | |||
7 | title: Maxim TCPCI Type-C PD controller DT bindings | ||
8 | |||
9 | maintainers: | ||
10 | - Badhri Jagan Sridharan <badhri@google.com> | ||
11 | |||
12 | description: Maxim TCPCI Type-C PD controller | ||
13 | |||
14 | properties: | ||
15 | compatible: | ||
16 | enum: | ||
17 | - maxim,max33359 | ||
18 | |||
19 | reg: | ||
20 | maxItems: 1 | ||
21 | |||
22 | interrupts: | ||
23 | maxItems: 1 | ||
24 | |||
25 | connector: | ||
26 | type: object | ||
27 | $ref: ../connector/usb-connector.yaml# | ||
28 | description: | ||
29 | Properties for usb c connector. | ||
30 | |||
31 | required: | ||
32 | - compatible | ||
33 | - reg | ||
34 | - interrupts | ||
35 | - connector | ||
36 | |||
37 | additionalProperties: false | ||
38 | |||
39 | examples: | ||
40 | - | | ||
41 | #include <dt-bindings/interrupt-controller/irq.h> | ||
42 | #include <dt-bindings/usb/pd.h> | ||
43 | i2c0 { | ||
44 | #address-cells = <1>; | ||
45 | #size-cells = <0>; | ||
46 | |||
47 | maxtcpc@25 { | ||
48 | compatible = "maxim,max33359"; | ||
49 | reg = <0x25>; | ||
50 | interrupt-parent = <&gpa8>; | ||
51 | interrupts = <2 IRQ_TYPE_LEVEL_LOW>; | ||
52 | |||
53 | connector { | ||
54 | compatible = "usb-c-connector"; | ||
55 | label = "USB-C"; | ||
56 | data-role = "dual"; | ||
57 | power-role = "dual"; | ||
58 | try-power-role = "sink"; | ||
59 | self-powered; | ||
60 | op-sink-microwatt = <2600000>; | ||
61 | new-source-frs-typec-current = <FRS_5V_1P5A>; | ||
62 | source-pdos = <PDO_FIXED(5000, 900, | ||
63 | PDO_FIXED_SUSPEND | | ||
64 | PDO_FIXED_USB_COMM | | ||
65 | PDO_FIXED_DATA_SWAP | | ||
66 | PDO_FIXED_DUAL_ROLE)>; | ||
67 | sink-pdos = <PDO_FIXED(5000, 3000, | ||
68 | PDO_FIXED_USB_COMM | | ||
69 | PDO_FIXED_DATA_SWAP | | ||
70 | PDO_FIXED_DUAL_ROLE) | ||
71 | PDO_FIXED(9000, 2000, 0)>; | ||
72 | }; | ||
73 | }; | ||
74 | }; | ||
75 | ... | ||
diff --git a/Documentation/filesystems/ext4/directory.rst b/Documentation/filesystems/ext4/directory.rst index 073940cc64ed..55f618b37144 100644 --- a/Documentation/filesystems/ext4/directory.rst +++ b/Documentation/filesystems/ext4/directory.rst | |||
@@ -121,6 +121,31 @@ The directory file type is one of the following values: | |||
121 | * - 0x7 | 121 | * - 0x7 |
122 | - Symbolic link. | 122 | - Symbolic link. |
123 | 123 | ||
124 | To support directories that are both encrypted and casefolded directories, we | ||
125 | must also include hash information in the directory entry. We append | ||
126 | ``ext4_extended_dir_entry_2`` to ``ext4_dir_entry_2`` except for the entries | ||
127 | for dot and dotdot, which are kept the same. The structure follows immediately | ||
128 | after ``name`` and is included in the size listed by ``rec_len`` If a directory | ||
129 | entry uses this extension, it may be up to 271 bytes. | ||
130 | |||
131 | .. list-table:: | ||
132 | :widths: 8 8 24 40 | ||
133 | :header-rows: 1 | ||
134 | |||
135 | * - Offset | ||
136 | - Size | ||
137 | - Name | ||
138 | - Description | ||
139 | * - 0x0 | ||
140 | - \_\_le32 | ||
141 | - hash | ||
142 | - The hash of the directory name | ||
143 | * - 0x4 | ||
144 | - \_\_le32 | ||
145 | - minor\_hash | ||
146 | - The minor hash of the directory name | ||
147 | |||
148 | |||
124 | In order to add checksums to these classic directory blocks, a phony | 149 | In order to add checksums to these classic directory blocks, a phony |
125 | ``struct ext4_dir_entry`` is placed at the end of each leaf block to | 150 | ``struct ext4_dir_entry`` is placed at the end of each leaf block to |
126 | hold the checksum. The directory entry is 12 bytes long. The inode | 151 | hold the checksum. The directory entry is 12 bytes long. The inode |
@@ -322,6 +347,8 @@ The directory hash is one of the following values: | |||
322 | - Half MD4, unsigned. | 347 | - Half MD4, unsigned. |
323 | * - 0x5 | 348 | * - 0x5 |
324 | - Tea, unsigned. | 349 | - Tea, unsigned. |
350 | * - 0x6 | ||
351 | - Siphash. | ||
325 | 352 | ||
326 | Interior nodes of an htree are recorded as ``struct dx_node``, which is | 353 | Interior nodes of an htree are recorded as ``struct dx_node``, which is |
327 | also the full length of a data block: | 354 | also the full length of a data block: |
diff --git a/Documentation/filesystems/f2fs.rst b/Documentation/filesystems/f2fs.rst index b8ee761c9922..dae15c96e659 100644 --- a/Documentation/filesystems/f2fs.rst +++ b/Documentation/filesystems/f2fs.rst | |||
@@ -260,6 +260,14 @@ compress_extension=%s Support adding specified extension, so that f2fs can enab | |||
260 | For other files, we can still enable compression via ioctl. | 260 | For other files, we can still enable compression via ioctl. |
261 | Note that, there is one reserved special extension '*', it | 261 | Note that, there is one reserved special extension '*', it |
262 | can be set to enable compression for all files. | 262 | can be set to enable compression for all files. |
263 | compress_chksum Support verifying chksum of raw data in compressed cluster. | ||
264 | compress_mode=%s Control file compression mode. This supports "fs" and "user" | ||
265 | modes. In "fs" mode (default), f2fs does automatic compression | ||
266 | on the compression enabled files. In "user" mode, f2fs disables | ||
267 | the automaic compression and gives the user discretion of | ||
268 | choosing the target file and the timing. The user can do manual | ||
269 | compression/decompression on the compression enabled files using | ||
270 | ioctls. | ||
263 | inlinecrypt When possible, encrypt/decrypt the contents of encrypted | 271 | inlinecrypt When possible, encrypt/decrypt the contents of encrypted |
264 | files using the blk-crypto framework rather than | 272 | files using the blk-crypto framework rather than |
265 | filesystem-layer encryption. This allows the use of | 273 | filesystem-layer encryption. This allows the use of |
@@ -810,6 +818,34 @@ Compress metadata layout:: | |||
810 | | data length | data chksum | reserved | compressed data | | 818 | | data length | data chksum | reserved | compressed data | |
811 | +-------------+-------------+----------+----------------------------+ | 819 | +-------------+-------------+----------+----------------------------+ |
812 | 820 | ||
821 | Compression mode | ||
822 | -------------------------- | ||
823 | |||
824 | f2fs supports "fs" and "user" compression modes with "compression_mode" mount option. | ||
825 | With this option, f2fs provides a choice to select the way how to compress the | ||
826 | compression enabled files (refer to "Compression implementation" section for how to | ||
827 | enable compression on a regular inode). | ||
828 | |||
829 | 1) compress_mode=fs | ||
830 | This is the default option. f2fs does automatic compression in the writeback of the | ||
831 | compression enabled files. | ||
832 | |||
833 | 2) compress_mode=user | ||
834 | This disables the automaic compression and gives the user discretion of choosing the | ||
835 | target file and the timing. The user can do manual compression/decompression on the | ||
836 | compression enabled files using F2FS_IOC_DECOMPRESS_FILE and F2FS_IOC_COMPRESS_FILE | ||
837 | ioctls like the below. | ||
838 | |||
839 | To decompress a file, | ||
840 | |||
841 | fd = open(filename, O_WRONLY, 0); | ||
842 | ret = ioctl(fd, F2FS_IOC_DECOMPRESS_FILE); | ||
843 | |||
844 | To compress a file, | ||
845 | |||
846 | fd = open(filename, O_WRONLY, 0); | ||
847 | ret = ioctl(fd, F2FS_IOC_COMPRESS_FILE); | ||
848 | |||
813 | NVMe Zoned Namespace devices | 849 | NVMe Zoned Namespace devices |
814 | ---------------------------- | 850 | ---------------------------- |
815 | 851 | ||
diff --git a/Documentation/filesystems/locking.rst b/Documentation/filesystems/locking.rst index c0f2c7586531..bcb092e74c1e 100644 --- a/Documentation/filesystems/locking.rst +++ b/Documentation/filesystems/locking.rst | |||
@@ -125,7 +125,7 @@ prototypes:: | |||
125 | bool (*list)(struct dentry *dentry); | 125 | bool (*list)(struct dentry *dentry); |
126 | int (*get)(const struct xattr_handler *handler, struct dentry *dentry, | 126 | int (*get)(const struct xattr_handler *handler, struct dentry *dentry, |
127 | struct inode *inode, const char *name, void *buffer, | 127 | struct inode *inode, const char *name, void *buffer, |
128 | size_t size); | 128 | size_t size, int flags); |
129 | int (*set)(const struct xattr_handler *handler, struct dentry *dentry, | 129 | int (*set)(const struct xattr_handler *handler, struct dentry *dentry, |
130 | struct inode *inode, const char *name, const void *buffer, | 130 | struct inode *inode, const char *name, const void *buffer, |
131 | size_t size, int flags); | 131 | size_t size, int flags); |
diff --git a/Documentation/filesystems/overlayfs.rst b/Documentation/filesystems/overlayfs.rst index 580ab9a0fe31..18ac7d35c145 100644 --- a/Documentation/filesystems/overlayfs.rst +++ b/Documentation/filesystems/overlayfs.rst | |||
@@ -137,6 +137,29 @@ Only the lists of names from directories are merged. Other content | |||
137 | such as metadata and extended attributes are reported for the upper | 137 | such as metadata and extended attributes are reported for the upper |
138 | directory only. These attributes of the lower directory are hidden. | 138 | directory only. These attributes of the lower directory are hidden. |
139 | 139 | ||
140 | credentials | ||
141 | ----------- | ||
142 | |||
143 | By default, all access to the upper, lower and work directories is the | ||
144 | recorded mounter's MAC and DAC credentials. The incoming accesses are | ||
145 | checked against the caller's credentials. | ||
146 | |||
147 | In the case where caller MAC or DAC credentials do not overlap, a | ||
148 | use case available in older versions of the driver, the | ||
149 | override_creds mount flag can be turned off and help when the use | ||
150 | pattern has caller with legitimate credentials where the mounter | ||
151 | does not. Several unintended side effects will occur though. The | ||
152 | caller without certain key capabilities or lower privilege will not | ||
153 | always be able to delete files or directories, create nodes, or | ||
154 | search some restricted directories. The ability to search and read | ||
155 | a directory entry is spotty as a result of the cache mechanism not | ||
156 | retesting the credentials because of the assumption, a privileged | ||
157 | caller can fill cache, then a lower privilege can read the directory | ||
158 | cache. The uneven security model where cache, upperdir and workdir | ||
159 | are opened at privilege, but accessed without creating a form of | ||
160 | privilege escalation, should only be used with strict understanding | ||
161 | of the side effects and of the security policies. | ||
162 | |||
140 | whiteouts and opaque directories | 163 | whiteouts and opaque directories |
141 | -------------------------------- | 164 | -------------------------------- |
142 | 165 | ||
diff --git a/Documentation/filesystems/proc.rst b/Documentation/filesystems/proc.rst index 533c79e8d2cd..e72c93161134 100644 --- a/Documentation/filesystems/proc.rst +++ b/Documentation/filesystems/proc.rst | |||
@@ -429,6 +429,8 @@ is not associated with a file: | |||
429 | [stack] the stack of the main process | 429 | [stack] the stack of the main process |
430 | [vdso] the "virtual dynamic shared object", | 430 | [vdso] the "virtual dynamic shared object", |
431 | the kernel system call handler | 431 | the kernel system call handler |
432 | [anon:<name>] an anonymous mapping that has been | ||
433 | named by userspace | ||
432 | ======= ==================================== | 434 | ======= ==================================== |
433 | 435 | ||
434 | or if empty, the mapping is anonymous. | 436 | or if empty, the mapping is anonymous. |
@@ -462,6 +464,7 @@ Memory Area, or VMA) there is a series of lines such as the following:: | |||
462 | Locked: 0 kB | 464 | Locked: 0 kB |
463 | THPeligible: 0 | 465 | THPeligible: 0 |
464 | VmFlags: rd ex mr mw me dw | 466 | VmFlags: rd ex mr mw me dw |
467 | Name: name from userspace | ||
465 | 468 | ||
466 | The first of these lines shows the same information as is displayed for the | 469 | The first of these lines shows the same information as is displayed for the |
467 | mapping in /proc/PID/maps. Following lines show the size of the mapping | 470 | mapping in /proc/PID/maps. Following lines show the size of the mapping |
@@ -554,6 +557,9 @@ be vanished or the reverse -- new added. Interpretation of their meaning | |||
554 | might change in future as well. So each consumer of these flags has to | 557 | might change in future as well. So each consumer of these flags has to |
555 | follow each specific kernel version for the exact semantic. | 558 | follow each specific kernel version for the exact semantic. |
556 | 559 | ||
560 | The "Name" field will only be present on a mapping that has been named by | ||
561 | userspace, and will show the name passed in by userspace. | ||
562 | |||
557 | This file is only present if the CONFIG_MMU kernel configuration option is | 563 | This file is only present if the CONFIG_MMU kernel configuration option is |
558 | enabled. | 564 | enabled. |
559 | 565 | ||
diff --git a/Documentation/kbuild/modules.rst b/Documentation/kbuild/modules.rst index 85ccc878895e..d4b3e0c1d9fb 100644 --- a/Documentation/kbuild/modules.rst +++ b/Documentation/kbuild/modules.rst | |||
@@ -21,6 +21,7 @@ This document describes how to build an out-of-tree kernel module. | |||
21 | --- 4.1 Kernel Includes | 21 | --- 4.1 Kernel Includes |
22 | --- 4.2 Single Subdirectory | 22 | --- 4.2 Single Subdirectory |
23 | --- 4.3 Several Subdirectories | 23 | --- 4.3 Several Subdirectories |
24 | --- 4.4 UAPI Headers Installation | ||
24 | === 5. Module Installation | 25 | === 5. Module Installation |
25 | --- 5.1 INSTALL_MOD_PATH | 26 | --- 5.1 INSTALL_MOD_PATH |
26 | --- 5.2 INSTALL_MOD_DIR | 27 | --- 5.2 INSTALL_MOD_DIR |
@@ -131,6 +132,10 @@ executed to make module versioning work. | |||
131 | /lib/modules/<kernel_release>/extra/, but a prefix may | 132 | /lib/modules/<kernel_release>/extra/, but a prefix may |
132 | be added with INSTALL_MOD_PATH (discussed in section 5). | 133 | be added with INSTALL_MOD_PATH (discussed in section 5). |
133 | 134 | ||
135 | headers_install | ||
136 | Export headers in a format suitable for userspace. The default | ||
137 | location is $PWD/usr. INSTALL_HDR_PATH can change this path. | ||
138 | |||
134 | clean | 139 | clean |
135 | Remove all generated files in the module directory only. | 140 | Remove all generated files in the module directory only. |
136 | 141 | ||
@@ -406,6 +411,17 @@ according to the following rule: | |||
406 | pointing to the directory where the currently executing kbuild | 411 | pointing to the directory where the currently executing kbuild |
407 | file is located. | 412 | file is located. |
408 | 413 | ||
414 | 4.4 UAPI Headers Installation | ||
415 | ----------------------------- | ||
416 | |||
417 | External modules may export headers to userspace in a similar | ||
418 | fashion to the in-tree counterpart drivers. kbuild supports | ||
419 | running headers_install target in an out-of-tree. The location | ||
420 | where kbuild searches for headers is $(M)/include/uapi and | ||
421 | $(M)/arch/$(SRCARCH)/include/uapi. | ||
422 | |||
423 | See also Documentation/kbuild/headers_install.rst. | ||
424 | |||
409 | 425 | ||
410 | 5. Module Installation | 426 | 5. Module Installation |
411 | ====================== | 427 | ====================== |
diff --git a/Documentation/scheduler/sched-energy.rst b/Documentation/scheduler/sched-energy.rst index 001e09c95e1d..1f5792ce82a2 100644 --- a/Documentation/scheduler/sched-energy.rst +++ b/Documentation/scheduler/sched-energy.rst | |||
@@ -397,7 +397,7 @@ Consequently, the only sane governor to use together with EAS is schedutil, | |||
397 | because it is the only one providing some degree of consistency between | 397 | because it is the only one providing some degree of consistency between |
398 | frequency requests and energy predictions. | 398 | frequency requests and energy predictions. |
399 | 399 | ||
400 | Using EAS with any other governor than schedutil is not supported. | 400 | Using EAS with any other governor than schedutil is not recommended. |
401 | 401 | ||
402 | 402 | ||
403 | 6.5 Scale-invariant utilization signals | 403 | 6.5 Scale-invariant utilization signals |
diff --git a/MAINTAINERS b/MAINTAINERS index 281de213ef47..e506f602d4b6 100644 --- a/MAINTAINERS +++ b/MAINTAINERS | |||
@@ -8648,6 +8648,13 @@ F: Documentation/hwmon/ina2xx.rst | |||
8648 | F: drivers/hwmon/ina2xx.c | 8648 | F: drivers/hwmon/ina2xx.c |
8649 | F: include/linux/platform_data/ina2xx.h | 8649 | F: include/linux/platform_data/ina2xx.h |
8650 | 8650 | ||
8651 | INCREMENTAL FILE SYSTEM | ||
8652 | M: Paul Lawrence <paullawrence@google.com> | ||
8653 | L: linux-unionfs@vger.kernel.org | ||
8654 | S: Supported | ||
8655 | F: fs/incfs/ | ||
8656 | F: tools/testing/selftests/filesystems/incfs/ | ||
8657 | |||
8651 | INDUSTRY PACK SUBSYSTEM (IPACK) | 8658 | INDUSTRY PACK SUBSYSTEM (IPACK) |
8652 | M: Samuel Iglesias Gonsalvez <siglesias@igalia.com> | 8659 | M: Samuel Iglesias Gonsalvez <siglesias@igalia.com> |
8653 | M: Jens Taprogge <jens.taprogge@taprogge.org> | 8660 | M: Jens Taprogge <jens.taprogge@taprogge.org> |
@@ -12381,6 +12388,12 @@ W: http://www.netlab.is.tsukuba.ac.jp/~yokota/izumi/ninja/ | |||
12381 | F: Documentation/scsi/NinjaSCSI.rst | 12388 | F: Documentation/scsi/NinjaSCSI.rst |
12382 | F: drivers/scsi/nsp32* | 12389 | F: drivers/scsi/nsp32* |
12383 | 12390 | ||
12391 | NINTENDO HID DRIVER | ||
12392 | M: Daniel J. Ogorchock <djogorchock@gmail.com> | ||
12393 | L: linux-input@vger.kernel.org | ||
12394 | S: Maintained | ||
12395 | F: drivers/hid/hid-nintendo* | ||
12396 | |||
12384 | NIOS2 ARCHITECTURE | 12397 | NIOS2 ARCHITECTURE |
12385 | M: Ley Foon Tan <ley.foon.tan@intel.com> | 12398 | M: Ley Foon Tan <ley.foon.tan@intel.com> |
12386 | S: Maintained | 12399 | S: Maintained |
@@ -434,6 +434,7 @@ OBJCOPY = llvm-objcopy | |||
434 | OBJDUMP = llvm-objdump | 434 | OBJDUMP = llvm-objdump |
435 | READELF = llvm-readelf | 435 | READELF = llvm-readelf |
436 | STRIP = llvm-strip | 436 | STRIP = llvm-strip |
437 | KBUILD_HOSTLDFLAGS += -fuse-ld=lld --rtlib=compiler-rt | ||
437 | else | 438 | else |
438 | CC = $(CROSS_COMPILE)gcc | 439 | CC = $(CROSS_COMPILE)gcc |
439 | LD = $(CROSS_COMPILE)ld | 440 | LD = $(CROSS_COMPILE)ld |
@@ -460,7 +461,7 @@ KGZIP = gzip | |||
460 | KBZIP2 = bzip2 | 461 | KBZIP2 = bzip2 |
461 | KLZOP = lzop | 462 | KLZOP = lzop |
462 | LZMA = lzma | 463 | LZMA = lzma |
463 | LZ4 = lz4c | 464 | LZ4 = lz4 |
464 | XZ = xz | 465 | XZ = xz |
465 | ZSTD = zstd | 466 | ZSTD = zstd |
466 | 467 | ||
@@ -851,12 +852,8 @@ KBUILD_CFLAGS += $(DEBUG_CFLAGS) | |||
851 | export DEBUG_CFLAGS | 852 | export DEBUG_CFLAGS |
852 | 853 | ||
853 | ifdef CONFIG_FUNCTION_TRACER | 854 | ifdef CONFIG_FUNCTION_TRACER |
854 | ifdef CONFIG_FTRACE_MCOUNT_RECORD | 855 | ifdef CONFIG_FTRACE_MCOUNT_USE_CC |
855 | # gcc 5 supports generating the mcount tables directly | 856 | CC_FLAGS_FTRACE += -mrecord-mcount |
856 | ifeq ($(call cc-option-yn,-mrecord-mcount),y) | ||
857 | CC_FLAGS_FTRACE += -mrecord-mcount | ||
858 | export CC_USING_RECORD_MCOUNT := 1 | ||
859 | endif | ||
860 | ifdef CONFIG_HAVE_NOP_MCOUNT | 857 | ifdef CONFIG_HAVE_NOP_MCOUNT |
861 | ifeq ($(call cc-option-yn, -mnop-mcount),y) | 858 | ifeq ($(call cc-option-yn, -mnop-mcount),y) |
862 | CC_FLAGS_FTRACE += -mnop-mcount | 859 | CC_FLAGS_FTRACE += -mnop-mcount |
@@ -864,6 +861,15 @@ ifdef CONFIG_FTRACE_MCOUNT_RECORD | |||
864 | endif | 861 | endif |
865 | endif | 862 | endif |
866 | endif | 863 | endif |
864 | ifdef CONFIG_FTRACE_MCOUNT_USE_OBJTOOL | ||
865 | CC_FLAGS_USING += -DCC_USING_NOP_MCOUNT | ||
866 | endif | ||
867 | ifdef CONFIG_FTRACE_MCOUNT_USE_RECORDMCOUNT | ||
868 | ifdef CONFIG_HAVE_C_RECORDMCOUNT | ||
869 | BUILD_C_RECORDMCOUNT := y | ||
870 | export BUILD_C_RECORDMCOUNT | ||
871 | endif | ||
872 | endif | ||
867 | ifdef CONFIG_HAVE_FENTRY | 873 | ifdef CONFIG_HAVE_FENTRY |
868 | ifeq ($(call cc-option-yn, -mfentry),y) | 874 | ifeq ($(call cc-option-yn, -mfentry),y) |
869 | CC_FLAGS_FTRACE += -mfentry | 875 | CC_FLAGS_FTRACE += -mfentry |
@@ -873,12 +879,6 @@ endif | |||
873 | export CC_FLAGS_FTRACE | 879 | export CC_FLAGS_FTRACE |
874 | KBUILD_CFLAGS += $(CC_FLAGS_FTRACE) $(CC_FLAGS_USING) | 880 | KBUILD_CFLAGS += $(CC_FLAGS_FTRACE) $(CC_FLAGS_USING) |
875 | KBUILD_AFLAGS += $(CC_FLAGS_USING) | 881 | KBUILD_AFLAGS += $(CC_FLAGS_USING) |
876 | ifdef CONFIG_DYNAMIC_FTRACE | ||
877 | ifdef CONFIG_HAVE_C_RECORDMCOUNT | ||
878 | BUILD_C_RECORDMCOUNT := y | ||
879 | export BUILD_C_RECORDMCOUNT | ||
880 | endif | ||
881 | endif | ||
882 | endif | 882 | endif |
883 | 883 | ||
884 | # We trigger additional mismatches with less inlining | 884 | # We trigger additional mismatches with less inlining |
@@ -897,6 +897,24 @@ KBUILD_CFLAGS += $(CC_FLAGS_SCS) | |||
897 | export CC_FLAGS_SCS | 897 | export CC_FLAGS_SCS |
898 | endif | 898 | endif |
899 | 899 | ||
900 | ifdef CONFIG_LTO_CLANG | ||
901 | ifdef CONFIG_LTO_CLANG_THIN | ||
902 | CC_FLAGS_LTO += -flto=thin -fsplit-lto-unit | ||
903 | KBUILD_LDFLAGS += --thinlto-cache-dir=$(extmod-prefix).thinlto-cache | ||
904 | else | ||
905 | CC_FLAGS_LTO += -flto | ||
906 | endif | ||
907 | CC_FLAGS_LTO += -fvisibility=hidden | ||
908 | |||
909 | # Limit inlining across translation units to reduce binary size | ||
910 | KBUILD_LDFLAGS += -mllvm -import-instr-limit=5 | ||
911 | endif | ||
912 | |||
913 | ifdef CONFIG_LTO | ||
914 | KBUILD_CFLAGS += $(CC_FLAGS_LTO) | ||
915 | export CC_FLAGS_LTO | ||
916 | endif | ||
917 | |||
900 | ifdef CONFIG_DEBUG_FORCE_FUNCTION_ALIGN_32B | 918 | ifdef CONFIG_DEBUG_FORCE_FUNCTION_ALIGN_32B |
901 | KBUILD_CFLAGS += -falign-functions=32 | 919 | KBUILD_CFLAGS += -falign-functions=32 |
902 | endif | 920 | endif |
@@ -1101,6 +1119,41 @@ PHONY += prepare0 | |||
1101 | export MODORDER := $(extmod-prefix)modules.order | 1119 | export MODORDER := $(extmod-prefix)modules.order |
1102 | export MODULES_NSDEPS := $(extmod-prefix)modules.nsdeps | 1120 | export MODULES_NSDEPS := $(extmod-prefix)modules.nsdeps |
1103 | 1121 | ||
1122 | # --------------------------------------------------------------------------- | ||
1123 | # Kernel headers | ||
1124 | |||
1125 | PHONY += headers | ||
1126 | |||
1127 | #Default location for installed headers | ||
1128 | ifeq ($(KBUILD_EXTMOD),) | ||
1129 | PHONY += archheaders archscripts | ||
1130 | hdr-inst := -f $(srctree)/scripts/Makefile.headersinst obj | ||
1131 | headers: $(version_h) scripts_unifdef uapi-asm-generic archheaders archscripts | ||
1132 | else | ||
1133 | hdr-prefix = $(KBUILD_EXTMOD)/ | ||
1134 | hdr-inst := -f $(srctree)/scripts/Makefile.headersinst dst=$(KBUILD_EXTMOD)/usr/include objtree=$(objtree)/$(KBUILD_EXTMOD) obj | ||
1135 | endif | ||
1136 | |||
1137 | export INSTALL_HDR_PATH = $(objtree)/$(hdr-prefix)usr | ||
1138 | |||
1139 | quiet_cmd_headers_install = INSTALL $(INSTALL_HDR_PATH)/include | ||
1140 | cmd_headers_install = \ | ||
1141 | mkdir -p $(INSTALL_HDR_PATH); \ | ||
1142 | rsync -mrl --include='*/' --include='*\.h' --exclude='*' \ | ||
1143 | usr/include $(INSTALL_HDR_PATH) | ||
1144 | |||
1145 | PHONY += headers_install | ||
1146 | headers_install: headers | ||
1147 | $(call cmd,headers_install) | ||
1148 | |||
1149 | headers: | ||
1150 | ifeq ($(KBUILD_EXTMOD),) | ||
1151 | $(if $(wildcard $(srctree)/arch/$(SRCARCH)/include/uapi/asm/Kbuild),, \ | ||
1152 | $(error Headers not exportable for the $(SRCARCH) architecture)) | ||
1153 | endif | ||
1154 | $(Q)$(MAKE) $(hdr-inst)=$(hdr-prefix)include/uapi | ||
1155 | $(Q)$(MAKE) $(hdr-inst)=$(hdr-prefix)arch/$(SRCARCH)/include/uapi | ||
1156 | |||
1104 | ifeq ($(KBUILD_EXTMOD),) | 1157 | ifeq ($(KBUILD_EXTMOD),) |
1105 | core-y += kernel/ certs/ mm/ fs/ ipc/ security/ crypto/ block/ | 1158 | core-y += kernel/ certs/ mm/ fs/ ipc/ security/ crypto/ block/ |
1106 | 1159 | ||
@@ -1176,7 +1229,8 @@ targets := vmlinux | |||
1176 | $(sort $(vmlinux-deps) $(subdir-modorder)): descend ; | 1229 | $(sort $(vmlinux-deps) $(subdir-modorder)): descend ; |
1177 | 1230 | ||
1178 | filechk_kernel.release = \ | 1231 | filechk_kernel.release = \ |
1179 | echo "$(KERNELVERSION)$$($(CONFIG_SHELL) $(srctree)/scripts/setlocalversion $(srctree))" | 1232 | echo "$(KERNELVERSION)$$($(CONFIG_SHELL) $(srctree)/scripts/setlocalversion \ |
1233 | $(srctree) $(BRANCH) $(KMI_GENERATION))" | ||
1180 | 1234 | ||
1181 | # Store (new) KERNELRELEASE string in include/config/kernel.release | 1235 | # Store (new) KERNELRELEASE string in include/config/kernel.release |
1182 | include/config/kernel.release: FORCE | 1236 | include/config/kernel.release: FORCE |
@@ -1222,6 +1276,10 @@ uapi-asm-generic: | |||
1222 | PHONY += prepare-objtool prepare-resolve_btfids | 1276 | PHONY += prepare-objtool prepare-resolve_btfids |
1223 | prepare-objtool: $(objtool_target) | 1277 | prepare-objtool: $(objtool_target) |
1224 | ifeq ($(SKIP_STACK_VALIDATION),1) | 1278 | ifeq ($(SKIP_STACK_VALIDATION),1) |
1279 | ifdef CONFIG_FTRACE_MCOUNT_USE_OBJTOOL | ||
1280 | @echo "error: Cannot generate __mcount_loc for CONFIG_DYNAMIC_FTRACE=y, please install libelf-dev, libelf-devel or elfutils-libelf-devel" >&2 | ||
1281 | @false | ||
1282 | endif | ||
1225 | ifdef CONFIG_UNWINDER_ORC | 1283 | ifdef CONFIG_UNWINDER_ORC |
1226 | @echo "error: Cannot generate ORC metadata for CONFIG_UNWINDER_ORC=y, please install libelf-dev, libelf-devel or elfutils-libelf-devel" >&2 | 1284 | @echo "error: Cannot generate ORC metadata for CONFIG_UNWINDER_ORC=y, please install libelf-dev, libelf-devel or elfutils-libelf-devel" >&2 |
1227 | @false | 1285 | @false |
@@ -1242,12 +1300,17 @@ endif | |||
1242 | # needs to be updated, so this check is forced on all builds | 1300 | # needs to be updated, so this check is forced on all builds |
1243 | 1301 | ||
1244 | uts_len := 64 | 1302 | uts_len := 64 |
1303 | ifneq (,$(BUILD_NUMBER)) | ||
1304 | UTS_RELEASE=$(KERNELRELEASE)-ab$(BUILD_NUMBER) | ||
1305 | else | ||
1306 | UTS_RELEASE=$(KERNELRELEASE) | ||
1307 | endif | ||
1245 | define filechk_utsrelease.h | 1308 | define filechk_utsrelease.h |
1246 | if [ `echo -n "$(KERNELRELEASE)" | wc -c ` -gt $(uts_len) ]; then \ | 1309 | if [ `echo -n "$(UTS_RELEASE)" | wc -c ` -gt $(uts_len) ]; then \ |
1247 | echo '"$(KERNELRELEASE)" exceeds $(uts_len) characters' >&2; \ | 1310 | echo '"$(UTS_RELEASE)" exceeds $(uts_len) characters' >&2; \ |
1248 | exit 1; \ | 1311 | exit 1; \ |
1249 | fi; \ | 1312 | fi; \ |
1250 | echo \#define UTS_RELEASE \"$(KERNELRELEASE)\" | 1313 | echo \#define UTS_RELEASE \"$(UTS_RELEASE)\" |
1251 | endef | 1314 | endef |
1252 | 1315 | ||
1253 | define filechk_version.h | 1316 | define filechk_version.h |
@@ -1268,33 +1331,6 @@ headerdep: | |||
1268 | $(Q)find $(srctree)/include/ -name '*.h' | xargs --max-args 1 \ | 1331 | $(Q)find $(srctree)/include/ -name '*.h' | xargs --max-args 1 \ |
1269 | $(srctree)/scripts/headerdep.pl -I$(srctree)/include | 1332 | $(srctree)/scripts/headerdep.pl -I$(srctree)/include |
1270 | 1333 | ||
1271 | # --------------------------------------------------------------------------- | ||
1272 | # Kernel headers | ||
1273 | |||
1274 | #Default location for installed headers | ||
1275 | export INSTALL_HDR_PATH = $(objtree)/usr | ||
1276 | |||
1277 | quiet_cmd_headers_install = INSTALL $(INSTALL_HDR_PATH)/include | ||
1278 | cmd_headers_install = \ | ||
1279 | mkdir -p $(INSTALL_HDR_PATH); \ | ||
1280 | rsync -mrl --include='*/' --include='*\.h' --exclude='*' \ | ||
1281 | usr/include $(INSTALL_HDR_PATH) | ||
1282 | |||
1283 | PHONY += headers_install | ||
1284 | headers_install: headers | ||
1285 | $(call cmd,headers_install) | ||
1286 | |||
1287 | PHONY += archheaders archscripts | ||
1288 | |||
1289 | hdr-inst := -f $(srctree)/scripts/Makefile.headersinst obj | ||
1290 | |||
1291 | PHONY += headers | ||
1292 | headers: $(version_h) scripts_unifdef uapi-asm-generic archheaders archscripts | ||
1293 | $(if $(wildcard $(srctree)/arch/$(SRCARCH)/include/uapi/asm/Kbuild),, \ | ||
1294 | $(error Headers not exportable for the $(SRCARCH) architecture)) | ||
1295 | $(Q)$(MAKE) $(hdr-inst)=include/uapi | ||
1296 | $(Q)$(MAKE) $(hdr-inst)=arch/$(SRCARCH)/include/uapi | ||
1297 | |||
1298 | # Deprecated. It is no-op now. | 1334 | # Deprecated. It is no-op now. |
1299 | PHONY += headers_check | 1335 | PHONY += headers_check |
1300 | headers_check: | 1336 | headers_check: |
@@ -1483,7 +1519,7 @@ MRPROPER_FILES += include/config include/generated \ | |||
1483 | *.spec | 1519 | *.spec |
1484 | 1520 | ||
1485 | # Directories & files removed with 'make distclean' | 1521 | # Directories & files removed with 'make distclean' |
1486 | DISTCLEAN_FILES += tags TAGS cscope* GPATH GTAGS GRTAGS GSYMS | 1522 | DISTCLEAN_FILES += tags TAGS cscope* GPATH GTAGS GRTAGS GSYMS .thinlto-cache |
1487 | 1523 | ||
1488 | # clean - Delete most, but leave enough to build external modules | 1524 | # clean - Delete most, but leave enough to build external modules |
1489 | # | 1525 | # |
@@ -1729,7 +1765,7 @@ PHONY += compile_commands.json | |||
1729 | 1765 | ||
1730 | clean-dirs := $(KBUILD_EXTMOD) | 1766 | clean-dirs := $(KBUILD_EXTMOD) |
1731 | clean: rm-files := $(KBUILD_EXTMOD)/Module.symvers $(KBUILD_EXTMOD)/modules.nsdeps \ | 1767 | clean: rm-files := $(KBUILD_EXTMOD)/Module.symvers $(KBUILD_EXTMOD)/modules.nsdeps \ |
1732 | $(KBUILD_EXTMOD)/compile_commands.json | 1768 | $(KBUILD_EXTMOD)/compile_commands.json $(KBUILD_EXTMOD)/.thinlto-cache |
1733 | 1769 | ||
1734 | PHONY += help | 1770 | PHONY += help |
1735 | help: | 1771 | help: |
@@ -1738,6 +1774,8 @@ help: | |||
1738 | @echo '' | 1774 | @echo '' |
1739 | @echo ' modules - default target, build the module(s)' | 1775 | @echo ' modules - default target, build the module(s)' |
1740 | @echo ' modules_install - install the module' | 1776 | @echo ' modules_install - install the module' |
1777 | @echo ' headers_install - Install sanitised kernel headers to INSTALL_HDR_PATH' | ||
1778 | @echo ' (default: $(abspath $(INSTALL_HDR_PATH)))' | ||
1741 | @echo ' clean - remove generated files in module directory only' | 1779 | @echo ' clean - remove generated files in module directory only' |
1742 | @echo '' | 1780 | @echo '' |
1743 | 1781 | ||
@@ -1826,7 +1864,8 @@ clean: $(clean-dirs) | |||
1826 | -o -name '.tmp_*.o.*' \ | 1864 | -o -name '.tmp_*.o.*' \ |
1827 | -o -name '*.c.[012]*.*' \ | 1865 | -o -name '*.c.[012]*.*' \ |
1828 | -o -name '*.ll' \ | 1866 | -o -name '*.ll' \ |
1829 | -o -name '*.gcno' \) -type f -print | xargs rm -f | 1867 | -o -name '*.gcno' \ |
1868 | -o -name '*.*.symversions' \) -type f -print | xargs rm -f | ||
1830 | 1869 | ||
1831 | # Generate tags for editors | 1870 | # Generate tags for editors |
1832 | # --------------------------------------------------------------------------- | 1871 | # --------------------------------------------------------------------------- |
@@ -1908,7 +1947,8 @@ checkstack: | |||
1908 | $(PERL) $(srctree)/scripts/checkstack.pl $(CHECKSTACK_ARCH) | 1947 | $(PERL) $(srctree)/scripts/checkstack.pl $(CHECKSTACK_ARCH) |
1909 | 1948 | ||
1910 | kernelrelease: | 1949 | kernelrelease: |
1911 | @echo "$(KERNELVERSION)$$($(CONFIG_SHELL) $(srctree)/scripts/setlocalversion $(srctree))" | 1950 | @echo "$(KERNELVERSION)$$($(CONFIG_SHELL) $(srctree)/scripts/setlocalversion \ |
1951 | $(srctree) $(BRANCH) $(KMI_GENERATION))" | ||
1912 | 1952 | ||
1913 | kernelversion: | 1953 | kernelversion: |
1914 | @echo $(KERNELVERSION) | 1954 | @echo $(KERNELVERSION) |
diff --git a/README.md b/README.md new file mode 100644 index 000000000000..468ac2084b21 --- /dev/null +++ b/README.md | |||
@@ -0,0 +1,150 @@ | |||
1 | # How do I submit patches to Android Common Kernels | ||
2 | |||
3 | 1. BEST: Make all of your changes to upstream Linux. If appropriate, backport to the stable releases. | ||
4 | These patches will be merged automatically in the corresponding common kernels. If the patch is already | ||
5 | in upstream Linux, post a backport of the patch that conforms to the patch requirements below. | ||
6 | - Do not send patches upstream that contain only symbol exports. To be considered for upstream Linux, | ||
7 | additions of `EXPORT_SYMBOL_GPL()` require an in-tree modular driver that uses the symbol -- so include | ||
8 | the new driver or changes to an existing driver in the same patchset as the export. | ||
9 | - When sending patches upstream, the commit message must contain a clear case for why the patch | ||
10 | is needed and beneficial to the community. Enabling out-of-tree drivers or functionality is not | ||
11 | not a persuasive case. | ||
12 | |||
13 | 2. LESS GOOD: Develop your patches out-of-tree (from an upstream Linux point-of-view). Unless these are | ||
14 | fixing an Android-specific bug, these are very unlikely to be accepted unless they have been | ||
15 | coordinated with kernel-team@android.com. If you want to proceed, post a patch that conforms to the | ||
16 | patch requirements below. | ||
17 | |||
18 | # Common Kernel patch requirements | ||
19 | |||
20 | - All patches must conform to the Linux kernel coding standards and pass `script/checkpatch.pl` | ||
21 | - Patches shall not break gki_defconfig or allmodconfig builds for arm, arm64, x86, x86_64 architectures | ||
22 | (see https://source.android.com/setup/build/building-kernels) | ||
23 | - If the patch is not merged from an upstream branch, the subject must be tagged with the type of patch: | ||
24 | `UPSTREAM:`, `BACKPORT:`, `FROMGIT:`, `FROMLIST:`, or `ANDROID:`. | ||
25 | - All patches must have a `Change-Id:` tag (see https://gerrit-review.googlesource.com/Documentation/user-changeid.html) | ||
26 | - If an Android bug has been assigned, there must be a `Bug:` tag. | ||
27 | - All patches must have a `Signed-off-by:` tag by the author and the submitter | ||
28 | |||
29 | Additional requirements are listed below based on patch type | ||
30 | |||
31 | ## Requirements for backports from mainline Linux: `UPSTREAM:`, `BACKPORT:` | ||
32 | |||
33 | - If the patch is a cherry-pick from Linux mainline with no changes at all | ||
34 | - tag the patch subject with `UPSTREAM:`. | ||
35 | - add upstream commit information with a `(cherry picked from commit ...)` line | ||
36 | - Example: | ||
37 | - if the upstream commit message is | ||
38 | ``` | ||
39 | important patch from upstream | ||
40 | |||
41 | This is the detailed description of the important patch | ||
42 | |||
43 | Signed-off-by: Fred Jones <fred.jones@foo.org> | ||
44 | ``` | ||
45 | >- then Joe Smith would upload the patch for the common kernel as | ||
46 | ``` | ||
47 | UPSTREAM: important patch from upstream | ||
48 | |||
49 | This is the detailed description of the important patch | ||
50 | |||
51 | Signed-off-by: Fred Jones <fred.jones@foo.org> | ||
52 | |||
53 | Bug: 135791357 | ||
54 | Change-Id: I4caaaa566ea080fa148c5e768bb1a0b6f7201c01 | ||
55 | (cherry picked from commit c31e73121f4c1ec41143423ac6ce3ce6dafdcec1) | ||
56 | Signed-off-by: Joe Smith <joe.smith@foo.org> | ||
57 | ``` | ||
58 | |||
59 | - If the patch requires any changes from the upstream version, tag the patch with `BACKPORT:` | ||
60 | instead of `UPSTREAM:`. | ||
61 | - use the same tags as `UPSTREAM:` | ||
62 | - add comments about the changes under the `(cherry picked from commit ...)` line | ||
63 | - Example: | ||
64 | ``` | ||
65 | BACKPORT: important patch from upstream | ||
66 | |||
67 | This is the detailed description of the important patch | ||
68 | |||
69 | Signed-off-by: Fred Jones <fred.jones@foo.org> | ||
70 | |||
71 | Bug: 135791357 | ||
72 | Change-Id: I4caaaa566ea080fa148c5e768bb1a0b6f7201c01 | ||
73 | (cherry picked from commit c31e73121f4c1ec41143423ac6ce3ce6dafdcec1) | ||
74 | [joe: Resolved minor conflict in drivers/foo/bar.c ] | ||
75 | Signed-off-by: Joe Smith <joe.smith@foo.org> | ||
76 | ``` | ||
77 | |||
78 | ## Requirements for other backports: `FROMGIT:`, `FROMLIST:`, | ||
79 | |||
80 | - If the patch has been merged into an upstream maintainer tree, but has not yet | ||
81 | been merged into Linux mainline | ||
82 | - tag the patch subject with `FROMGIT:` | ||
83 | - add info on where the patch came from as `(cherry picked from commit <sha1> <repo> <branch>)`. This | ||
84 | must be a stable maintainer branch (not rebased, so don't use `linux-next` for example). | ||
85 | - if changes were required, use `BACKPORT: FROMGIT:` | ||
86 | - Example: | ||
87 | - if the commit message in the maintainer tree is | ||
88 | ``` | ||
89 | important patch from upstream | ||
90 | |||
91 | This is the detailed description of the important patch | ||
92 | |||
93 | Signed-off-by: Fred Jones <fred.jones@foo.org> | ||
94 | ``` | ||
95 | >- then Joe Smith would upload the patch for the common kernel as | ||
96 | ``` | ||
97 | FROMGIT: important patch from upstream | ||
98 | |||
99 | This is the detailed description of the important patch | ||
100 | |||
101 | Signed-off-by: Fred Jones <fred.jones@foo.org> | ||
102 | |||
103 | Bug: 135791357 | ||
104 | (cherry picked from commit 878a2fd9de10b03d11d2f622250285c7e63deace | ||
105 | https://git.kernel.org/pub/scm/linux/kernel/git/foo/bar.git test-branch) | ||
106 | Change-Id: I4caaaa566ea080fa148c5e768bb1a0b6f7201c01 | ||
107 | Signed-off-by: Joe Smith <joe.smith@foo.org> | ||
108 | ``` | ||
109 | |||
110 | |||
111 | - If the patch has been submitted to LKML, but not accepted into any maintainer tree | ||
112 | - tag the patch subject with `FROMLIST:` | ||
113 | - add a `Link:` tag with a link to the submittal on lore.kernel.org | ||
114 | - add a `Bug:` tag with the Android bug (required for patches not accepted into | ||
115 | a maintainer tree) | ||
116 | - if changes were required, use `BACKPORT: FROMLIST:` | ||
117 | - Example: | ||
118 | ``` | ||
119 | FROMLIST: important patch from upstream | ||
120 | |||
121 | This is the detailed description of the important patch | ||
122 | |||
123 | Signed-off-by: Fred Jones <fred.jones@foo.org> | ||
124 | |||
125 | Bug: 135791357 | ||
126 | Link: https://lore.kernel.org/lkml/20190619171517.GA17557@someone.com/ | ||
127 | Change-Id: I4caaaa566ea080fa148c5e768bb1a0b6f7201c01 | ||
128 | Signed-off-by: Joe Smith <joe.smith@foo.org> | ||
129 | ``` | ||
130 | |||
131 | ## Requirements for Android-specific patches: `ANDROID:` | ||
132 | |||
133 | - If the patch is fixing a bug to Android-specific code | ||
134 | - tag the patch subject with `ANDROID:` | ||
135 | - add a `Fixes:` tag that cites the patch with the bug | ||
136 | - Example: | ||
137 | ``` | ||
138 | ANDROID: fix android-specific bug in foobar.c | ||
139 | |||
140 | This is the detailed description of the important fix | ||
141 | |||
142 | Fixes: 1234abcd2468 ("foobar: add cool feature") | ||
143 | Change-Id: I4caaaa566ea080fa148c5e768bb1a0b6f7201c01 | ||
144 | Signed-off-by: Joe Smith <joe.smith@foo.org> | ||
145 | ``` | ||
146 | |||
147 | - If the patch is a new feature | ||
148 | - tag the patch subject with `ANDROID:` | ||
149 | - add a `Bug:` tag with the Android bug (required for android-specific features) | ||
150 | |||
diff --git a/android/abi_gki_aarch64 b/android/abi_gki_aarch64 new file mode 100644 index 000000000000..57914f291962 --- /dev/null +++ b/android/abi_gki_aarch64 | |||
@@ -0,0 +1,4 @@ | |||
1 | [abi_symbol_list] | ||
2 | # commonly used symbols | ||
3 | module_layout | ||
4 | __put_task_struct | ||
diff --git a/android/abi_gki_aarch64_cuttlefish b/android/abi_gki_aarch64_cuttlefish new file mode 100644 index 000000000000..a15b146bd048 --- /dev/null +++ b/android/abi_gki_aarch64_cuttlefish | |||
@@ -0,0 +1,921 @@ | |||
1 | [abi_symbol_list] | ||
2 | # commonly used symbols | ||
3 | __alloc_disk_node | ||
4 | alloc_etherdev_mqs | ||
5 | __alloc_pages_nodemask | ||
6 | alloc_workqueue | ||
7 | __arch_copy_from_user | ||
8 | __arch_copy_to_user | ||
9 | arm64_const_caps_ready | ||
10 | bio_endio | ||
11 | blk_cleanup_queue | ||
12 | blk_queue_flag_set | ||
13 | blk_queue_io_min | ||
14 | blk_queue_io_opt | ||
15 | blk_queue_logical_block_size | ||
16 | blk_queue_max_discard_sectors | ||
17 | blk_queue_max_write_zeroes_sectors | ||
18 | blk_queue_physical_block_size | ||
19 | cancel_delayed_work_sync | ||
20 | cancel_work_sync | ||
21 | cfg80211_inform_bss_data | ||
22 | cfg80211_put_bss | ||
23 | __check_object_size | ||
24 | __class_create | ||
25 | class_destroy | ||
26 | complete | ||
27 | __const_udelay | ||
28 | consume_skb | ||
29 | __cpuhp_remove_state | ||
30 | __cpuhp_setup_state | ||
31 | __cpuhp_state_add_instance | ||
32 | __cpuhp_state_remove_instance | ||
33 | cpu_hwcap_keys | ||
34 | cpu_hwcaps | ||
35 | cpumask_next | ||
36 | cpu_number | ||
37 | __cpu_online_mask | ||
38 | crypto_register_alg | ||
39 | crypto_register_scomp | ||
40 | crypto_unregister_alg | ||
41 | crypto_unregister_scomp | ||
42 | delayed_work_timer_fn | ||
43 | del_gendisk | ||
44 | destroy_workqueue | ||
45 | _dev_err | ||
46 | device_add_disk | ||
47 | device_register | ||
48 | device_unregister | ||
49 | _dev_info | ||
50 | __dev_kfree_skb_any | ||
51 | devm_kmalloc | ||
52 | dev_queue_xmit | ||
53 | dev_set_name | ||
54 | _dev_warn | ||
55 | dma_set_coherent_mask | ||
56 | dma_set_mask | ||
57 | down_read | ||
58 | down_write | ||
59 | ethtool_op_get_link | ||
60 | eth_validate_addr | ||
61 | fd_install | ||
62 | finish_wait | ||
63 | flush_dcache_page | ||
64 | flush_work | ||
65 | free_irq | ||
66 | free_netdev | ||
67 | __free_pages | ||
68 | free_pages | ||
69 | get_device | ||
70 | __get_free_pages | ||
71 | get_random_bytes | ||
72 | get_unused_fd_flags | ||
73 | gic_nonsecure_priorities | ||
74 | hwrng_register | ||
75 | hwrng_unregister | ||
76 | ida_alloc_range | ||
77 | ida_free | ||
78 | idr_alloc | ||
79 | idr_destroy | ||
80 | idr_remove | ||
81 | __init_rwsem | ||
82 | __init_swait_queue_head | ||
83 | init_timer_key | ||
84 | init_wait_entry | ||
85 | __init_waitqueue_head | ||
86 | iounmap | ||
87 | jiffies | ||
88 | kfree | ||
89 | kill_anon_super | ||
90 | __kmalloc | ||
91 | kmalloc_caches | ||
92 | kmem_cache_alloc | ||
93 | kmem_cache_alloc_trace | ||
94 | kmem_cache_create | ||
95 | kmem_cache_destroy | ||
96 | kmem_cache_free | ||
97 | kmemdup | ||
98 | kstrdup | ||
99 | kstrtoull | ||
100 | ktime_get | ||
101 | kvfree | ||
102 | kvmalloc_node | ||
103 | __list_add_valid | ||
104 | __list_del_entry_valid | ||
105 | __local_bh_enable_ip | ||
106 | lzo1x_decompress_safe | ||
107 | memcpy | ||
108 | memparse | ||
109 | memset | ||
110 | memstart_addr | ||
111 | misc_deregister | ||
112 | misc_register | ||
113 | mod_timer | ||
114 | module_layout | ||
115 | msleep | ||
116 | __mutex_init | ||
117 | mutex_lock | ||
118 | mutex_unlock | ||
119 | netdev_err | ||
120 | netdev_info | ||
121 | netdev_rx_handler_register | ||
122 | netdev_rx_handler_unregister | ||
123 | netdev_upper_dev_unlink | ||
124 | netif_carrier_off | ||
125 | netif_carrier_on | ||
126 | netif_device_detach | ||
127 | netif_tx_stop_all_queues | ||
128 | netif_tx_wake_queue | ||
129 | no_llseek | ||
130 | noop_llseek | ||
131 | nr_cpu_ids | ||
132 | __num_online_cpus | ||
133 | param_ops_bool | ||
134 | param_ops_charp | ||
135 | param_ops_int | ||
136 | param_ops_uint | ||
137 | passthru_features_check | ||
138 | pci_disable_device | ||
139 | pci_enable_device | ||
140 | pci_iomap | ||
141 | pci_read_config_dword | ||
142 | __pci_register_driver | ||
143 | pci_set_master | ||
144 | pci_unregister_driver | ||
145 | __per_cpu_offset | ||
146 | platform_device_add | ||
147 | platform_device_alloc | ||
148 | platform_device_del | ||
149 | platform_device_put | ||
150 | platform_device_unregister | ||
151 | __platform_driver_register | ||
152 | platform_driver_unregister | ||
153 | preempt_schedule | ||
154 | preempt_schedule_notrace | ||
155 | prepare_to_wait_event | ||
156 | printk | ||
157 | put_device | ||
158 | put_disk | ||
159 | __put_page | ||
160 | __put_task_struct | ||
161 | put_unused_fd | ||
162 | queue_delayed_work_on | ||
163 | queue_work_on | ||
164 | _raw_spin_lock | ||
165 | _raw_spin_lock_irq | ||
166 | _raw_spin_lock_irqsave | ||
167 | _raw_spin_unlock | ||
168 | _raw_spin_unlock_bh | ||
169 | _raw_spin_unlock_irq | ||
170 | _raw_spin_unlock_irqrestore | ||
171 | __rcu_read_lock | ||
172 | __rcu_read_unlock | ||
173 | refcount_warn_saturate | ||
174 | register_blkdev | ||
175 | register_netdev | ||
176 | register_netdevice_notifier | ||
177 | register_virtio_device | ||
178 | register_virtio_driver | ||
179 | request_threaded_irq | ||
180 | revalidate_disk_size | ||
181 | rtnl_lock | ||
182 | rtnl_unlock | ||
183 | schedule | ||
184 | schedule_timeout_uninterruptible | ||
185 | scnprintf | ||
186 | seq_lseek | ||
187 | seq_printf | ||
188 | seq_read | ||
189 | sg_init_one | ||
190 | sg_init_table | ||
191 | snd_device_new | ||
192 | snd_pcm_alt_chmaps | ||
193 | snprintf | ||
194 | sprintf | ||
195 | __stack_chk_fail | ||
196 | __stack_chk_guard | ||
197 | strcmp | ||
198 | strcpy | ||
199 | strlcpy | ||
200 | strlen | ||
201 | strncpy | ||
202 | strsep | ||
203 | strstr | ||
204 | __sysfs_match_string | ||
205 | system_wq | ||
206 | unlock_page | ||
207 | unregister_blkdev | ||
208 | unregister_netdev | ||
209 | unregister_netdevice_notifier | ||
210 | unregister_netdevice_queue | ||
211 | unregister_virtio_device | ||
212 | unregister_virtio_driver | ||
213 | up_read | ||
214 | up_write | ||
215 | usleep_range | ||
216 | virtio_check_driver_offered_feature | ||
217 | virtio_config_changed | ||
218 | virtqueue_add_inbuf | ||
219 | virtqueue_add_outbuf | ||
220 | virtqueue_add_sgs | ||
221 | virtqueue_detach_unused_buf | ||
222 | virtqueue_disable_cb | ||
223 | virtqueue_enable_cb | ||
224 | virtqueue_get_avail_addr | ||
225 | virtqueue_get_buf | ||
226 | virtqueue_get_desc_addr | ||
227 | virtqueue_get_used_addr | ||
228 | virtqueue_get_vring_size | ||
229 | virtqueue_is_broken | ||
230 | virtqueue_kick | ||
231 | virtqueue_kick_prepare | ||
232 | virtqueue_notify | ||
233 | vring_create_virtqueue | ||
234 | vring_del_virtqueue | ||
235 | vring_interrupt | ||
236 | vring_transport_features | ||
237 | wait_for_completion | ||
238 | __wake_up | ||
239 | __warn_printk | ||
240 | |||
241 | # required by ac97_bus.ko | ||
242 | bus_register | ||
243 | bus_unregister | ||
244 | |||
245 | # required by dm-user.ko | ||
246 | bio_advance | ||
247 | bio_put | ||
248 | _copy_from_iter | ||
249 | copy_page_from_iter | ||
250 | copy_page_to_iter | ||
251 | _copy_to_iter | ||
252 | dm_register_target | ||
253 | dm_unregister_target | ||
254 | kasprintf | ||
255 | mempool_alloc | ||
256 | mempool_exit | ||
257 | mempool_free | ||
258 | mempool_init | ||
259 | mempool_kfree | ||
260 | mempool_kmalloc | ||
261 | |||
262 | # required by dummy-cpufreq.ko | ||
263 | cpufreq_generic_attr | ||
264 | cpufreq_register_driver | ||
265 | cpufreq_unregister_driver | ||
266 | |||
267 | # required by dummy_hcd.ko | ||
268 | device_create_file | ||
269 | device_remove_file | ||
270 | ktime_get_ts64 | ||
271 | platform_device_add_data | ||
272 | sg_miter_next | ||
273 | sg_miter_start | ||
274 | sg_miter_stop | ||
275 | usb_add_gadget_udc | ||
276 | usb_add_hcd | ||
277 | usb_create_hcd | ||
278 | usb_create_shared_hcd | ||
279 | usb_del_gadget_udc | ||
280 | usb_disabled | ||
281 | usb_ep_set_maxpacket_limit | ||
282 | usb_gadget_giveback_request | ||
283 | usb_gadget_udc_reset | ||
284 | usb_get_dev | ||
285 | usb_hcd_check_unlink_urb | ||
286 | usb_hcd_giveback_urb | ||
287 | usb_hcd_is_primary_hcd | ||
288 | usb_hcd_link_urb_to_ep | ||
289 | usb_hcd_poll_rh_status | ||
290 | usb_hcd_resume_root_hub | ||
291 | usb_hcd_unlink_urb_from_ep | ||
292 | usb_put_dev | ||
293 | usb_put_hcd | ||
294 | usb_remove_hcd | ||
295 | |||
296 | # required by failover.ko | ||
297 | netdev_master_upper_dev_link | ||
298 | rtnl_is_locked | ||
299 | |||
300 | # required by gnss-cmdline.ko | ||
301 | bus_find_device | ||
302 | device_find_child | ||
303 | device_match_name | ||
304 | platform_bus_type | ||
305 | |||
306 | # required by gnss-serial.ko | ||
307 | gnss_allocate_device | ||
308 | gnss_deregister_device | ||
309 | gnss_insert_raw | ||
310 | gnss_put_device | ||
311 | gnss_register_device | ||
312 | of_property_read_variable_u32_array | ||
313 | __pm_runtime_disable | ||
314 | pm_runtime_enable | ||
315 | __pm_runtime_idle | ||
316 | __pm_runtime_resume | ||
317 | serdev_device_close | ||
318 | serdev_device_open | ||
319 | serdev_device_set_baudrate | ||
320 | serdev_device_set_flow_control | ||
321 | serdev_device_wait_until_sent | ||
322 | serdev_device_write | ||
323 | serdev_device_write_wakeup | ||
324 | |||
325 | # required by lzo-rle.ko | ||
326 | lzorle1x_1_compress | ||
327 | |||
328 | # required by lzo.ko | ||
329 | lzo1x_1_compress | ||
330 | |||
331 | # required by nd_virtio.ko | ||
332 | bio_alloc_bioset | ||
333 | bio_chain | ||
334 | bio_clone_blkg_association | ||
335 | fs_bio_set | ||
336 | submit_bio | ||
337 | |||
338 | # required by net_failover.ko | ||
339 | call_netdevice_notifiers | ||
340 | dev_close | ||
341 | dev_get_stats | ||
342 | dev_mc_sync_multiple | ||
343 | dev_mc_unsync | ||
344 | dev_open | ||
345 | dev_set_mtu | ||
346 | dev_uc_sync_multiple | ||
347 | dev_uc_unsync | ||
348 | __ethtool_get_link_ksettings | ||
349 | netdev_change_features | ||
350 | netdev_increment_features | ||
351 | netdev_lower_state_changed | ||
352 | netdev_pick_tx | ||
353 | pci_bus_type | ||
354 | |||
355 | # required by pulse8-cec.ko | ||
356 | cec_allocate_adapter | ||
357 | cec_delete_adapter | ||
358 | cec_received_msg_ts | ||
359 | cec_register_adapter | ||
360 | cec_s_log_addrs | ||
361 | cec_s_phys_addr | ||
362 | cec_transmit_attempt_done_ts | ||
363 | cec_unregister_adapter | ||
364 | serio_close | ||
365 | serio_open | ||
366 | __serio_register_driver | ||
367 | serio_unregister_driver | ||
368 | strscpy | ||
369 | wait_for_completion_timeout | ||
370 | |||
371 | # required by rtc-test.ko | ||
372 | add_timer | ||
373 | del_timer | ||
374 | device_init_wakeup | ||
375 | devm_rtc_allocate_device | ||
376 | ktime_get_real_seconds | ||
377 | __rtc_register_device | ||
378 | rtc_time64_to_tm | ||
379 | rtc_tm_to_time64 | ||
380 | rtc_update_irq | ||
381 | |||
382 | # required by snd-ac97-codec.ko | ||
383 | pci_read_config_word | ||
384 | simple_strtoul | ||
385 | snd_component_add | ||
386 | snd_ctl_add | ||
387 | _snd_ctl_add_follower | ||
388 | snd_ctl_boolean_mono_info | ||
389 | snd_ctl_enum_info | ||
390 | snd_ctl_find_id | ||
391 | snd_ctl_make_virtual_master | ||
392 | snd_ctl_new1 | ||
393 | snd_ctl_remove_id | ||
394 | snd_info_create_card_entry | ||
395 | snd_info_free_entry | ||
396 | snd_interval_refine | ||
397 | snd_pcm_hw_rule_add | ||
398 | snd_pcm_std_chmaps | ||
399 | strcat | ||
400 | |||
401 | # required by snd-intel8x0.ko | ||
402 | param_ops_bint | ||
403 | pci_release_regions | ||
404 | pci_request_regions | ||
405 | pci_write_config_dword | ||
406 | snd_card_disconnect | ||
407 | snd_card_free | ||
408 | snd_card_new | ||
409 | snd_card_register | ||
410 | snd_card_rw_proc_new | ||
411 | snd_dma_alloc_pages | ||
412 | snd_dma_free_pages | ||
413 | snd_pci_quirk_lookup | ||
414 | snd_pcm_add_chmap_ctls | ||
415 | snd_pcm_hw_constraint_integer | ||
416 | snd_pcm_hw_constraint_list | ||
417 | snd_pcm_hw_constraint_msbits | ||
418 | snd_pcm_hw_limit_rates | ||
419 | snd_pcm_new | ||
420 | snd_pcm_period_elapsed | ||
421 | snd_pcm_set_managed_buffer_all | ||
422 | snd_pcm_set_ops | ||
423 | |||
424 | # required by tpm.ko | ||
425 | alloc_chrdev_region | ||
426 | cdev_device_add | ||
427 | cdev_device_del | ||
428 | cdev_init | ||
429 | compat_only_sysfs_link_entry_to_kobj | ||
430 | del_timer_sync | ||
431 | device_initialize | ||
432 | devm_add_action | ||
433 | efi | ||
434 | efi_tpm_final_log_size | ||
435 | hash_digest_size | ||
436 | idr_get_next | ||
437 | idr_replace | ||
438 | jiffies_to_msecs | ||
439 | jiffies_to_usecs | ||
440 | krealloc | ||
441 | memchr_inv | ||
442 | memremap | ||
443 | memunmap | ||
444 | of_find_property | ||
445 | of_get_property | ||
446 | of_property_match_string | ||
447 | pm_suspend_global_flags | ||
448 | securityfs_create_dir | ||
449 | securityfs_create_file | ||
450 | securityfs_remove | ||
451 | seq_open | ||
452 | seq_putc | ||
453 | seq_release | ||
454 | seq_write | ||
455 | sysfs_remove_link | ||
456 | unregister_chrdev_region | ||
457 | __usecs_to_jiffies | ||
458 | |||
459 | # required by tpm_vtpm_proxy.ko | ||
460 | anon_inode_getfile | ||
461 | capable | ||
462 | compat_ptr_ioctl | ||
463 | fput | ||
464 | |||
465 | # required by virt_wifi.ko | ||
466 | cfg80211_connect_done | ||
467 | cfg80211_disconnected | ||
468 | cfg80211_scan_done | ||
469 | __dev_get_by_index | ||
470 | dev_printk | ||
471 | ether_setup | ||
472 | kfree_skb | ||
473 | ktime_get_with_offset | ||
474 | __module_get | ||
475 | module_put | ||
476 | netdev_upper_dev_link | ||
477 | netif_stacked_transfer_operstate | ||
478 | register_netdevice | ||
479 | rtnl_link_register | ||
480 | rtnl_link_unregister | ||
481 | skb_clone | ||
482 | unregister_netdevice_many | ||
483 | wiphy_free | ||
484 | wiphy_new_nm | ||
485 | wiphy_register | ||
486 | wiphy_unregister | ||
487 | |||
488 | # required by virt_wifi_sim.ko | ||
489 | ieee80211_get_channel_khz | ||
490 | release_firmware | ||
491 | request_firmware | ||
492 | |||
493 | # required by virtio-gpu.ko | ||
494 | bpf_trace_run2 | ||
495 | dma_fence_context_alloc | ||
496 | dma_fence_init | ||
497 | dma_fence_match_context | ||
498 | dma_fence_release | ||
499 | dma_fence_signal_locked | ||
500 | dma_fence_wait_timeout | ||
501 | dma_map_sg_attrs | ||
502 | dma_resv_add_excl_fence | ||
503 | dma_resv_test_signaled_rcu | ||
504 | dma_resv_wait_timeout_rcu | ||
505 | dma_sync_sg_for_device | ||
506 | dma_unmap_sg_attrs | ||
507 | drm_add_edid_modes | ||
508 | drm_add_modes_noedid | ||
509 | drm_atomic_get_crtc_state | ||
510 | drm_atomic_helper_check | ||
511 | drm_atomic_helper_check_plane_state | ||
512 | drm_atomic_helper_commit | ||
513 | drm_atomic_helper_connector_destroy_state | ||
514 | drm_atomic_helper_connector_duplicate_state | ||
515 | drm_atomic_helper_connector_reset | ||
516 | drm_atomic_helper_crtc_destroy_state | ||
517 | drm_atomic_helper_crtc_duplicate_state | ||
518 | drm_atomic_helper_crtc_reset | ||
519 | drm_atomic_helper_damage_merged | ||
520 | drm_atomic_helper_dirtyfb | ||
521 | drm_atomic_helper_disable_plane | ||
522 | drm_atomic_helper_page_flip | ||
523 | drm_atomic_helper_plane_destroy_state | ||
524 | drm_atomic_helper_plane_duplicate_state | ||
525 | drm_atomic_helper_plane_reset | ||
526 | drm_atomic_helper_set_config | ||
527 | drm_atomic_helper_shutdown | ||
528 | drm_atomic_helper_update_plane | ||
529 | drm_compat_ioctl | ||
530 | drm_connector_attach_edid_property | ||
531 | drm_connector_attach_encoder | ||
532 | drm_connector_cleanup | ||
533 | drm_connector_init | ||
534 | drm_connector_register | ||
535 | drm_connector_unregister | ||
536 | drm_connector_update_edid_property | ||
537 | drm_crtc_cleanup | ||
538 | drm_crtc_init_with_planes | ||
539 | drm_cvt_mode | ||
540 | __drm_dbg | ||
541 | drm_debugfs_create_files | ||
542 | drm_dev_alloc | ||
543 | drm_dev_enter | ||
544 | drm_dev_exit | ||
545 | drm_dev_get | ||
546 | drm_dev_printk | ||
547 | drm_dev_put | ||
548 | drm_dev_register | ||
549 | drm_dev_set_unique | ||
550 | drm_dev_unplug | ||
551 | drm_do_get_edid | ||
552 | __drm_err | ||
553 | drm_framebuffer_init | ||
554 | drm_gem_dmabuf_mmap | ||
555 | drm_gem_dmabuf_release | ||
556 | drm_gem_dmabuf_vmap | ||
557 | drm_gem_dmabuf_vunmap | ||
558 | drm_gem_fb_create_handle | ||
559 | drm_gem_fb_destroy | ||
560 | drm_gem_handle_create | ||
561 | drm_gem_lock_reservations | ||
562 | drm_gem_map_attach | ||
563 | drm_gem_map_detach | ||
564 | drm_gem_map_dma_buf | ||
565 | drm_gem_mmap | ||
566 | drm_gem_object_free | ||
567 | drm_gem_object_lookup | ||
568 | drm_gem_object_release | ||
569 | drm_gem_prime_fd_to_handle | ||
570 | drm_gem_prime_handle_to_fd | ||
571 | drm_gem_prime_import | ||
572 | drm_gem_prime_mmap | ||
573 | drm_gem_shmem_create | ||
574 | drm_gem_shmem_free_object | ||
575 | drm_gem_shmem_get_sg_table | ||
576 | drm_gem_shmem_mmap | ||
577 | drm_gem_shmem_pin | ||
578 | drm_gem_shmem_print_info | ||
579 | drm_gem_shmem_unpin | ||
580 | drm_gem_shmem_vmap | ||
581 | drm_gem_shmem_vunmap | ||
582 | drm_gem_unlock_reservations | ||
583 | drm_gem_unmap_dma_buf | ||
584 | drm_helper_hpd_irq_event | ||
585 | drm_helper_mode_fill_fb_struct | ||
586 | drm_helper_probe_single_connector_modes | ||
587 | drm_ioctl | ||
588 | drm_kms_helper_hotplug_event | ||
589 | drmm_mode_config_init | ||
590 | drm_mode_config_reset | ||
591 | drm_mode_probed_add | ||
592 | drm_open | ||
593 | drm_plane_cleanup | ||
594 | drm_poll | ||
595 | drm_read | ||
596 | drm_release | ||
597 | drm_set_preferred_mode | ||
598 | drm_simple_encoder_init | ||
599 | drm_universal_plane_init | ||
600 | event_triggers_call | ||
601 | __get_task_comm | ||
602 | is_vmalloc_addr | ||
603 | kmalloc_order_trace | ||
604 | perf_trace_buf_alloc | ||
605 | perf_trace_run_bpf_submit | ||
606 | ___ratelimit | ||
607 | schedule_timeout | ||
608 | sg_alloc_table | ||
609 | sg_free_table | ||
610 | sg_next | ||
611 | sync_file_create | ||
612 | sync_file_get_fence | ||
613 | trace_event_buffer_commit | ||
614 | trace_event_buffer_reserve | ||
615 | trace_event_ignore_this_pid | ||
616 | trace_event_raw_init | ||
617 | trace_event_reg | ||
618 | trace_handle_return | ||
619 | __traceiter_dma_fence_emit | ||
620 | __tracepoint_dma_fence_emit | ||
621 | trace_raw_output_prep | ||
622 | trace_seq_printf | ||
623 | vabits_actual | ||
624 | vmalloc_to_page | ||
625 | vmemdup_user | ||
626 | ww_mutex_lock_interruptible | ||
627 | ww_mutex_unlock | ||
628 | |||
629 | # required by virtio-rng.ko | ||
630 | wait_for_completion_killable | ||
631 | |||
632 | # required by virtio_blk.ko | ||
633 | blk_execute_rq | ||
634 | blk_get_request | ||
635 | blk_mq_alloc_tag_set | ||
636 | blk_mq_complete_request | ||
637 | blk_mq_end_request | ||
638 | blk_mq_free_tag_set | ||
639 | blk_mq_init_queue | ||
640 | blk_mq_quiesce_queue | ||
641 | blk_mq_start_request | ||
642 | blk_mq_start_stopped_hw_queues | ||
643 | blk_mq_stop_hw_queue | ||
644 | blk_mq_unquiesce_queue | ||
645 | blk_mq_virtio_map_queues | ||
646 | blk_put_request | ||
647 | blk_queue_alignment_offset | ||
648 | blk_queue_max_discard_segments | ||
649 | blk_queue_max_hw_sectors | ||
650 | blk_queue_max_segments | ||
651 | blk_queue_max_segment_size | ||
652 | blk_queue_write_cache | ||
653 | blk_rq_map_kern | ||
654 | __blk_rq_map_sg | ||
655 | blk_status_to_errno | ||
656 | _dev_notice | ||
657 | memmove | ||
658 | set_capacity_revalidate_and_notify | ||
659 | set_disk_ro | ||
660 | string_get_size | ||
661 | virtio_max_dma_size | ||
662 | |||
663 | # required by virtio_console.ko | ||
664 | cdev_add | ||
665 | cdev_alloc | ||
666 | cdev_del | ||
667 | debugfs_create_dir | ||
668 | debugfs_create_file | ||
669 | debugfs_remove | ||
670 | device_create | ||
671 | device_destroy | ||
672 | dma_alloc_attrs | ||
673 | dma_free_attrs | ||
674 | fasync_helper | ||
675 | freezing_slow_path | ||
676 | hvc_alloc | ||
677 | hvc_instantiate | ||
678 | hvc_kick | ||
679 | hvc_poll | ||
680 | hvc_remove | ||
681 | __hvc_resize | ||
682 | kill_fasync | ||
683 | kobject_uevent | ||
684 | nonseekable_open | ||
685 | pipe_lock | ||
686 | pipe_unlock | ||
687 | __refrigerator | ||
688 | __register_chrdev | ||
689 | single_open | ||
690 | single_release | ||
691 | __splice_from_pipe | ||
692 | sysfs_create_group | ||
693 | sysfs_remove_group | ||
694 | system_freezing_cnt | ||
695 | __unregister_chrdev | ||
696 | |||
697 | # required by virtio_dma_buf.ko | ||
698 | dma_buf_export | ||
699 | |||
700 | # required by virtio_input.ko | ||
701 | input_alloc_absinfo | ||
702 | input_allocate_device | ||
703 | input_event | ||
704 | input_free_device | ||
705 | input_mt_init_slots | ||
706 | input_register_device | ||
707 | input_set_abs_params | ||
708 | input_unregister_device | ||
709 | |||
710 | # required by virtio_mmio.ko | ||
711 | device_for_each_child | ||
712 | devm_kfree | ||
713 | devm_platform_ioremap_resource | ||
714 | platform_device_register_full | ||
715 | platform_get_irq | ||
716 | sscanf | ||
717 | |||
718 | # required by virtio_net.ko | ||
719 | __alloc_skb | ||
720 | bpf_dispatcher_xdp_func | ||
721 | bpf_prog_add | ||
722 | bpf_prog_put | ||
723 | bpf_prog_sub | ||
724 | bpf_stats_enabled_key | ||
725 | bpf_warn_invalid_xdp_action | ||
726 | build_skb | ||
727 | cpumask_next_wrap | ||
728 | cpus_read_lock | ||
729 | cpus_read_unlock | ||
730 | eth_commit_mac_addr_change | ||
731 | eth_prepare_mac_addr_change | ||
732 | ethtool_op_get_ts_info | ||
733 | ethtool_virtdev_set_link_ksettings | ||
734 | eth_type_trans | ||
735 | flow_keys_basic_dissector | ||
736 | __napi_alloc_skb | ||
737 | napi_complete_done | ||
738 | napi_consume_skb | ||
739 | napi_disable | ||
740 | napi_gro_receive | ||
741 | __napi_schedule | ||
742 | napi_schedule_prep | ||
743 | netdev_notify_peers | ||
744 | netdev_warn | ||
745 | netif_device_attach | ||
746 | netif_napi_add | ||
747 | __netif_napi_del | ||
748 | netif_schedule_queue | ||
749 | netif_set_real_num_rx_queues | ||
750 | netif_set_real_num_tx_queues | ||
751 | __netif_set_xps_queue | ||
752 | net_ratelimit | ||
753 | nf_conntrack_destroy | ||
754 | _raw_spin_trylock | ||
755 | sched_clock | ||
756 | skb_add_rx_frag | ||
757 | skb_coalesce_rx_frag | ||
758 | __skb_flow_dissect | ||
759 | skb_page_frag_refill | ||
760 | skb_partial_csum_set | ||
761 | skb_put | ||
762 | skb_to_sgvec | ||
763 | skb_tstamp_tx | ||
764 | softnet_data | ||
765 | synchronize_net | ||
766 | __traceiter_xdp_exception | ||
767 | __tracepoint_xdp_exception | ||
768 | virtqueue_add_inbuf_ctx | ||
769 | virtqueue_enable_cb_delayed | ||
770 | virtqueue_enable_cb_prepare | ||
771 | virtqueue_get_buf_ctx | ||
772 | virtqueue_poll | ||
773 | xdp_convert_zc_to_xdp_frame | ||
774 | xdp_do_flush | ||
775 | xdp_do_redirect | ||
776 | xdp_return_frame | ||
777 | xdp_return_frame_rx_napi | ||
778 | xdp_rxq_info_reg | ||
779 | xdp_rxq_info_reg_mem_model | ||
780 | xdp_rxq_info_unreg | ||
781 | xdp_warn | ||
782 | |||
783 | # required by virtio_pci.ko | ||
784 | irq_set_affinity_hint | ||
785 | pci_alloc_irq_vectors_affinity | ||
786 | pci_find_capability | ||
787 | pci_find_ext_capability | ||
788 | pci_find_next_capability | ||
789 | pci_free_irq_vectors | ||
790 | pci_iomap_range | ||
791 | pci_irq_get_affinity | ||
792 | pci_irq_vector | ||
793 | pci_read_config_byte | ||
794 | pci_release_region | ||
795 | pci_release_selected_regions | ||
796 | pci_request_region | ||
797 | pci_request_selected_regions | ||
798 | synchronize_irq | ||
799 | virtio_device_freeze | ||
800 | virtio_device_restore | ||
801 | |||
802 | # required by virtio_pmem.ko | ||
803 | nvdimm_bus_register | ||
804 | nvdimm_bus_unregister | ||
805 | nvdimm_pmem_region_create | ||
806 | |||
807 | # required by virtiofs.ko | ||
808 | deactivate_locked_super | ||
809 | flush_delayed_work | ||
810 | __fs_parse | ||
811 | fuse_conn_destroy | ||
812 | fuse_conn_init | ||
813 | fuse_dequeue_forget | ||
814 | fuse_dev_alloc | ||
815 | fuse_dev_free | ||
816 | fuse_dev_install | ||
817 | fuse_fill_super_common | ||
818 | fuse_free_conn | ||
819 | fuse_get_unique | ||
820 | fuse_len_args | ||
821 | fuse_mount_get | ||
822 | fuse_mount_put | ||
823 | fuse_mount_remove | ||
824 | fuse_request_end | ||
825 | fuse_send_init | ||
826 | get_anon_bdev | ||
827 | init_user_ns | ||
828 | lockref_get | ||
829 | memchr | ||
830 | register_filesystem | ||
831 | sget_fc | ||
832 | unregister_filesystem | ||
833 | |||
834 | # required by vmw_vsock_virtio_transport.ko | ||
835 | lock_sock_nested | ||
836 | mutex_lock_interruptible | ||
837 | _raw_spin_lock_bh | ||
838 | release_sock | ||
839 | synchronize_rcu | ||
840 | virtio_transport_connect | ||
841 | virtio_transport_deliver_tap_pkt | ||
842 | virtio_transport_destruct | ||
843 | virtio_transport_dgram_allow | ||
844 | virtio_transport_dgram_bind | ||
845 | virtio_transport_dgram_dequeue | ||
846 | virtio_transport_dgram_enqueue | ||
847 | virtio_transport_do_socket_init | ||
848 | virtio_transport_free_pkt | ||
849 | virtio_transport_notify_buffer_size | ||
850 | virtio_transport_notify_poll_in | ||
851 | virtio_transport_notify_poll_out | ||
852 | virtio_transport_notify_recv_init | ||
853 | virtio_transport_notify_recv_post_dequeue | ||
854 | virtio_transport_notify_recv_pre_block | ||
855 | virtio_transport_notify_recv_pre_dequeue | ||
856 | virtio_transport_notify_send_init | ||
857 | virtio_transport_notify_send_post_enqueue | ||
858 | virtio_transport_notify_send_pre_block | ||
859 | virtio_transport_notify_send_pre_enqueue | ||
860 | virtio_transport_recv_pkt | ||
861 | virtio_transport_release | ||
862 | virtio_transport_shutdown | ||
863 | virtio_transport_stream_allow | ||
864 | virtio_transport_stream_dequeue | ||
865 | virtio_transport_stream_enqueue | ||
866 | virtio_transport_stream_has_data | ||
867 | virtio_transport_stream_has_space | ||
868 | virtio_transport_stream_is_active | ||
869 | virtio_transport_stream_rcvhiwat | ||
870 | vsock_core_register | ||
871 | vsock_core_unregister | ||
872 | vsock_for_each_connected_socket | ||
873 | |||
874 | # required by zram.ko | ||
875 | __alloc_percpu | ||
876 | bdget_disk | ||
877 | bdput | ||
878 | blk_alloc_queue | ||
879 | blk_queue_flag_clear | ||
880 | __class_register | ||
881 | class_unregister | ||
882 | __cpu_possible_mask | ||
883 | crypto_alloc_base | ||
884 | crypto_comp_compress | ||
885 | crypto_comp_decompress | ||
886 | crypto_destroy_tfm | ||
887 | crypto_has_alg | ||
888 | disk_end_io_acct | ||
889 | disk_start_io_acct | ||
890 | free_percpu | ||
891 | fsync_bdev | ||
892 | idr_find | ||
893 | idr_for_each | ||
894 | kstrtoint | ||
895 | kstrtou16 | ||
896 | memset64 | ||
897 | mutex_is_locked | ||
898 | page_endio | ||
899 | sysfs_streq | ||
900 | vfree | ||
901 | vzalloc | ||
902 | |||
903 | # required by zsmalloc.ko | ||
904 | alloc_anon_inode | ||
905 | __ClearPageMovable | ||
906 | contig_page_data | ||
907 | dec_zone_page_state | ||
908 | inc_zone_page_state | ||
909 | init_pseudo | ||
910 | iput | ||
911 | kern_mount | ||
912 | kern_unmount | ||
913 | __lock_page | ||
914 | page_mapping | ||
915 | _raw_read_lock | ||
916 | _raw_read_unlock | ||
917 | _raw_write_lock | ||
918 | _raw_write_unlock | ||
919 | register_shrinker | ||
920 | __SetPageMovable | ||
921 | unregister_shrinker | ||
diff --git a/android/abi_gki_aarch64_db845c b/android/abi_gki_aarch64_db845c new file mode 100644 index 000000000000..a3d34cc445f1 --- /dev/null +++ b/android/abi_gki_aarch64_db845c | |||
@@ -0,0 +1,1729 @@ | |||
1 | [abi_symbol_list] | ||
2 | # commonly used symbols | ||
3 | add_uevent_var | ||
4 | alloc_io_pgtable_ops | ||
5 | alloc_workqueue | ||
6 | __arch_copy_from_user | ||
7 | __arch_copy_to_user | ||
8 | arm64_const_caps_ready | ||
9 | arm64_use_ng_mappings | ||
10 | blocking_notifier_call_chain | ||
11 | blocking_notifier_chain_register | ||
12 | blocking_notifier_chain_unregister | ||
13 | bpf_trace_run1 | ||
14 | bpf_trace_run2 | ||
15 | bpf_trace_run3 | ||
16 | bpf_trace_run4 | ||
17 | bpf_trace_run5 | ||
18 | bus_register | ||
19 | bus_unregister | ||
20 | cancel_delayed_work_sync | ||
21 | cancel_work_sync | ||
22 | capable | ||
23 | cdev_device_add | ||
24 | cdev_device_del | ||
25 | cdev_init | ||
26 | __check_object_size | ||
27 | clk_bulk_disable | ||
28 | clk_bulk_enable | ||
29 | clk_bulk_prepare | ||
30 | clk_bulk_unprepare | ||
31 | clk_disable | ||
32 | clk_enable | ||
33 | clk_fixed_rate_ops | ||
34 | clk_get | ||
35 | __clk_get_name | ||
36 | clk_get_rate | ||
37 | clk_hw_get_parent | ||
38 | clk_hw_get_rate | ||
39 | clk_hw_register | ||
40 | clk_hw_unregister | ||
41 | clk_prepare | ||
42 | clk_put | ||
43 | clk_round_rate | ||
44 | clk_set_rate | ||
45 | clk_sync_state | ||
46 | clk_unprepare | ||
47 | complete | ||
48 | complete_all | ||
49 | completion_done | ||
50 | __const_udelay | ||
51 | consume_skb | ||
52 | _copy_from_iter_full | ||
53 | cpu_hwcap_keys | ||
54 | cpu_hwcaps | ||
55 | cpumask_next | ||
56 | cpu_number | ||
57 | __cpu_online_mask | ||
58 | crc32_le | ||
59 | debugfs_create_dir | ||
60 | debugfs_create_file | ||
61 | debugfs_create_u32 | ||
62 | debugfs_create_x32 | ||
63 | debugfs_remove | ||
64 | default_llseek | ||
65 | delayed_work_timer_fn | ||
66 | del_timer_sync | ||
67 | destroy_workqueue | ||
68 | dev_coredumpv | ||
69 | dev_driver_string | ||
70 | _dev_err | ||
71 | dev_err_probe | ||
72 | dev_get_regmap | ||
73 | device_find_child | ||
74 | device_for_each_child | ||
75 | device_get_match_data | ||
76 | device_initialize | ||
77 | device_init_wakeup | ||
78 | device_property_present | ||
79 | device_property_read_u32_array | ||
80 | device_register | ||
81 | device_set_wakeup_capable | ||
82 | device_unregister | ||
83 | device_wakeup_enable | ||
84 | _dev_info | ||
85 | __dev_kfree_skb_any | ||
86 | devm_add_action | ||
87 | devm_clk_bulk_get | ||
88 | devm_clk_bulk_get_all | ||
89 | devm_clk_get | ||
90 | devm_clk_get_optional | ||
91 | devm_clk_hw_register | ||
92 | devm_free_irq | ||
93 | devm_gpiod_get | ||
94 | devm_gpiod_get_optional | ||
95 | devm_ioremap | ||
96 | devm_ioremap_resource | ||
97 | devm_ioremap_wc | ||
98 | devm_iounmap | ||
99 | devm_kasprintf | ||
100 | devm_kfree | ||
101 | devm_kmalloc | ||
102 | devm_memremap | ||
103 | devm_of_clk_add_hw_provider | ||
104 | devm_of_icc_get | ||
105 | __devm_of_phy_provider_register | ||
106 | devm_of_platform_populate | ||
107 | devm_phy_create | ||
108 | devm_phy_get | ||
109 | devm_pinctrl_register | ||
110 | devm_platform_ioremap_resource | ||
111 | devm_regmap_add_irq_chip | ||
112 | __devm_regmap_init | ||
113 | __devm_regmap_init_i2c | ||
114 | __devm_regmap_init_mmio_clk | ||
115 | devm_regulator_bulk_get | ||
116 | devm_regulator_get | ||
117 | devm_regulator_register | ||
118 | devm_request_threaded_irq | ||
119 | devm_reset_control_array_get | ||
120 | __devm_reset_control_get | ||
121 | devm_reset_controller_register | ||
122 | devm_snd_soc_register_component | ||
123 | __devm_spi_alloc_controller | ||
124 | devm_spi_register_controller | ||
125 | devm_watchdog_register_device | ||
126 | _dev_notice | ||
127 | dev_pm_domain_attach_by_name | ||
128 | dev_pm_domain_detach | ||
129 | dev_pm_genpd_set_performance_state | ||
130 | dev_pm_opp_add | ||
131 | dev_pm_opp_find_freq_ceil | ||
132 | dev_pm_opp_find_freq_exact | ||
133 | dev_pm_opp_get_level | ||
134 | dev_pm_opp_get_opp_count | ||
135 | dev_pm_opp_of_add_table | ||
136 | dev_pm_opp_of_find_icc_paths | ||
137 | dev_pm_opp_of_remove_table | ||
138 | dev_pm_opp_put | ||
139 | dev_pm_opp_put_clkname | ||
140 | dev_pm_opp_set_bw | ||
141 | dev_pm_opp_set_clkname | ||
142 | dev_pm_opp_set_rate | ||
143 | dev_set_name | ||
144 | _dev_warn | ||
145 | disable_irq | ||
146 | disable_irq_nosync | ||
147 | divider_get_val | ||
148 | divider_recalc_rate | ||
149 | divider_round_rate_parent | ||
150 | dma_alloc_attrs | ||
151 | dma_buf_export | ||
152 | dma_free_attrs | ||
153 | dmam_alloc_attrs | ||
154 | dma_map_page_attrs | ||
155 | dma_map_sg_attrs | ||
156 | dma_mmap_attrs | ||
157 | dma_release_channel | ||
158 | dma_request_chan | ||
159 | dma_set_coherent_mask | ||
160 | dma_set_mask | ||
161 | dma_sync_single_for_cpu | ||
162 | dma_sync_single_for_device | ||
163 | dma_unmap_page_attrs | ||
164 | dma_unmap_sg_attrs | ||
165 | do_SAK | ||
166 | driver_register | ||
167 | driver_unregister | ||
168 | drm_add_edid_modes | ||
169 | drm_atomic_helper_connector_destroy_state | ||
170 | drm_atomic_helper_connector_duplicate_state | ||
171 | drm_atomic_helper_connector_reset | ||
172 | drm_connector_attach_encoder | ||
173 | drm_connector_cleanup | ||
174 | drm_connector_init | ||
175 | drm_connector_update_edid_property | ||
176 | __drm_err | ||
177 | drm_hdmi_avi_infoframe_from_display_mode | ||
178 | drm_helper_probe_single_connector_modes | ||
179 | drm_mode_vrefresh | ||
180 | enable_irq | ||
181 | eth_platform_get_mac_address | ||
182 | eth_validate_addr | ||
183 | event_triggers_call | ||
184 | extcon_get_edev_by_phandle | ||
185 | extcon_get_state | ||
186 | extcon_register_notifier | ||
187 | extcon_unregister_notifier | ||
188 | find_next_bit | ||
189 | find_next_zero_bit | ||
190 | finish_wait | ||
191 | flush_workqueue | ||
192 | free_io_pgtable_ops | ||
193 | free_irq | ||
194 | generic_handle_irq | ||
195 | generic_mii_ioctl | ||
196 | get_device | ||
197 | get_random_bytes | ||
198 | gic_nonsecure_priorities | ||
199 | gpiochip_add_data_with_key | ||
200 | gpiochip_add_pin_range | ||
201 | gpiochip_generic_free | ||
202 | gpiochip_generic_request | ||
203 | gpiochip_get_data | ||
204 | gpiochip_remove | ||
205 | gpiod_direction_output | ||
206 | gpiod_direction_output_raw | ||
207 | gpiod_set_consumer_name | ||
208 | gpiod_set_raw_value | ||
209 | gpiod_set_value_cansleep | ||
210 | gpio_to_desc | ||
211 | handle_edge_irq | ||
212 | handle_level_irq | ||
213 | handle_nested_irq | ||
214 | handle_sysrq | ||
215 | hdmi_audio_infoframe_init | ||
216 | i2c_adapter_type | ||
217 | i2c_add_adapter | ||
218 | i2c_add_numbered_adapter | ||
219 | i2c_del_adapter | ||
220 | i2c_del_driver | ||
221 | i2c_parse_fw_timings | ||
222 | i2c_register_driver | ||
223 | __i2c_smbus_xfer | ||
224 | i2c_smbus_xfer | ||
225 | i2c_transfer | ||
226 | icc_disable | ||
227 | icc_enable | ||
228 | icc_link_create | ||
229 | icc_node_add | ||
230 | icc_node_create | ||
231 | icc_nodes_remove | ||
232 | icc_provider_add | ||
233 | icc_provider_del | ||
234 | icc_put | ||
235 | icc_set_bw | ||
236 | icc_sync_state | ||
237 | ida_alloc_range | ||
238 | ida_free | ||
239 | idr_alloc | ||
240 | idr_alloc_cyclic | ||
241 | idr_destroy | ||
242 | idr_find | ||
243 | idr_get_next | ||
244 | idr_remove | ||
245 | ieee80211_get_channel_khz | ||
246 | init_net | ||
247 | __init_swait_queue_head | ||
248 | init_timer_key | ||
249 | init_wait_entry | ||
250 | __init_waitqueue_head | ||
251 | iommu_attach_device | ||
252 | iommu_detach_device | ||
253 | iommu_domain_alloc | ||
254 | iommu_domain_free | ||
255 | iommu_present | ||
256 | iommu_unmap | ||
257 | __ioread32_copy | ||
258 | __ioremap | ||
259 | iounmap | ||
260 | __iowrite32_copy | ||
261 | irq_chip_disable_parent | ||
262 | irq_chip_enable_parent | ||
263 | irq_chip_eoi_parent | ||
264 | irq_chip_mask_parent | ||
265 | irq_chip_set_affinity_parent | ||
266 | irq_chip_set_parent_state | ||
267 | irq_chip_set_type_parent | ||
268 | irq_chip_set_vcpu_affinity_parent | ||
269 | irq_chip_set_wake_parent | ||
270 | irq_chip_unmask_parent | ||
271 | __irq_domain_add | ||
272 | irq_domain_free_irqs_common | ||
273 | irq_domain_remove | ||
274 | irq_domain_xlate_twocell | ||
275 | irq_find_mapping | ||
276 | irq_find_matching_fwspec | ||
277 | irq_modify_status | ||
278 | irq_of_parse_and_map | ||
279 | irq_set_chained_handler_and_data | ||
280 | irq_set_chip_and_handler_name | ||
281 | irq_set_chip_data | ||
282 | irq_set_irq_wake | ||
283 | irq_to_desc | ||
284 | is_vmalloc_addr | ||
285 | jiffies | ||
286 | kasprintf | ||
287 | kernel_connect | ||
288 | kernel_getsockname | ||
289 | kernel_recvmsg | ||
290 | kernel_sendmsg | ||
291 | kfree | ||
292 | kfree_const | ||
293 | kfree_skb | ||
294 | __kmalloc | ||
295 | kmalloc_caches | ||
296 | kmalloc_order_trace | ||
297 | kmem_cache_alloc_trace | ||
298 | kmemdup | ||
299 | kstrdup | ||
300 | kstrdup_const | ||
301 | kstrtoint | ||
302 | kstrtouint | ||
303 | ktime_get | ||
304 | ktime_get_mono_fast_ns | ||
305 | ktime_get_real_ts64 | ||
306 | __list_add_valid | ||
307 | __list_del_entry_valid | ||
308 | mbox_client_txdone | ||
309 | mbox_free_channel | ||
310 | mbox_request_channel | ||
311 | mbox_send_message | ||
312 | memcpy | ||
313 | __memcpy_fromio | ||
314 | __memcpy_toio | ||
315 | memmove | ||
316 | memremap | ||
317 | memset | ||
318 | memstart_addr | ||
319 | mii_ethtool_gset | ||
320 | mii_nway_restart | ||
321 | misc_deregister | ||
322 | misc_register | ||
323 | mod_timer | ||
324 | module_layout | ||
325 | __msecs_to_jiffies | ||
326 | msleep | ||
327 | __mutex_init | ||
328 | mutex_is_locked | ||
329 | mutex_lock | ||
330 | mutex_unlock | ||
331 | napi_complete_done | ||
332 | napi_disable | ||
333 | __napi_schedule | ||
334 | napi_schedule_prep | ||
335 | __netdev_alloc_skb | ||
336 | netdev_err | ||
337 | netdev_info | ||
338 | netdev_warn | ||
339 | netif_napi_add | ||
340 | __netif_napi_del | ||
341 | no_llseek | ||
342 | nr_cpu_ids | ||
343 | nvmem_cell_read | ||
344 | of_address_to_resource | ||
345 | of_alias_get_id | ||
346 | of_clk_add_hw_provider | ||
347 | of_clk_del_provider | ||
348 | of_clk_get | ||
349 | of_clk_hw_simple_get | ||
350 | of_clk_set_defaults | ||
351 | of_device_get_match_data | ||
352 | of_device_is_compatible | ||
353 | of_device_uevent_modalias | ||
354 | of_dma_configure_id | ||
355 | of_find_device_by_node | ||
356 | of_find_property | ||
357 | of_fwnode_ops | ||
358 | of_genpd_add_provider_onecell | ||
359 | of_genpd_del_provider | ||
360 | of_get_child_by_name | ||
361 | of_get_compatible_child | ||
362 | of_get_named_gpio_flags | ||
363 | of_get_next_available_child | ||
364 | of_get_next_child | ||
365 | of_get_property | ||
366 | of_get_regulator_init_data | ||
367 | of_graph_get_remote_node | ||
368 | of_graph_parse_endpoint | ||
369 | of_icc_get | ||
370 | of_icc_xlate_onecell | ||
371 | of_iomap | ||
372 | of_irq_find_parent | ||
373 | of_irq_get | ||
374 | of_irq_get_byname | ||
375 | of_match_device | ||
376 | of_match_node | ||
377 | of_node_name_eq | ||
378 | of_parse_phandle | ||
379 | of_parse_phandle_with_args | ||
380 | of_parse_phandle_with_fixed_args | ||
381 | of_phy_simple_xlate | ||
382 | of_platform_depopulate | ||
383 | of_platform_populate | ||
384 | of_property_count_elems_of_size | ||
385 | of_property_read_string | ||
386 | of_property_read_string_helper | ||
387 | of_property_read_u32_index | ||
388 | of_property_read_variable_u32_array | ||
389 | of_property_read_variable_u8_array | ||
390 | of_reserved_mem_lookup | ||
391 | param_ops_bool | ||
392 | param_ops_uint | ||
393 | __pci_register_driver | ||
394 | pci_unregister_driver | ||
395 | perf_trace_buf_alloc | ||
396 | perf_trace_run_bpf_submit | ||
397 | phy_exit | ||
398 | phy_init | ||
399 | phy_power_off | ||
400 | phy_power_on | ||
401 | phy_set_mode_ext | ||
402 | pinconf_generic_dt_node_to_map | ||
403 | pinctrl_dev_get_drvdata | ||
404 | pinctrl_pm_select_default_state | ||
405 | pinctrl_pm_select_sleep_state | ||
406 | pinctrl_utils_free_map | ||
407 | platform_bus_type | ||
408 | platform_device_add | ||
409 | platform_device_add_properties | ||
410 | platform_device_add_resources | ||
411 | platform_device_alloc | ||
412 | platform_device_put | ||
413 | platform_device_register_full | ||
414 | platform_device_unregister | ||
415 | __platform_driver_register | ||
416 | platform_driver_unregister | ||
417 | platform_get_irq | ||
418 | platform_get_irq_byname | ||
419 | platform_get_irq_optional | ||
420 | platform_get_resource | ||
421 | platform_get_resource_byname | ||
422 | pm_genpd_add_subdomain | ||
423 | pm_genpd_init | ||
424 | pm_runtime_allow | ||
425 | __pm_runtime_disable | ||
426 | pm_runtime_enable | ||
427 | pm_runtime_forbid | ||
428 | pm_runtime_force_resume | ||
429 | pm_runtime_force_suspend | ||
430 | __pm_runtime_idle | ||
431 | __pm_runtime_resume | ||
432 | pm_runtime_set_autosuspend_delay | ||
433 | __pm_runtime_set_status | ||
434 | __pm_runtime_suspend | ||
435 | __pm_runtime_use_autosuspend | ||
436 | preempt_schedule_notrace | ||
437 | prepare_to_wait_event | ||
438 | printk | ||
439 | pskb_expand_head | ||
440 | put_device | ||
441 | __put_task_struct | ||
442 | qcom_smem_state_register | ||
443 | qcom_smem_state_unregister | ||
444 | queue_delayed_work_on | ||
445 | queue_work_on | ||
446 | radix_tree_delete | ||
447 | radix_tree_insert | ||
448 | radix_tree_lookup | ||
449 | radix_tree_next_chunk | ||
450 | ___ratelimit | ||
451 | rational_best_approximation | ||
452 | _raw_spin_lock | ||
453 | _raw_spin_lock_bh | ||
454 | _raw_spin_lock_irq | ||
455 | _raw_spin_lock_irqsave | ||
456 | _raw_spin_trylock | ||
457 | _raw_spin_unlock | ||
458 | _raw_spin_unlock_bh | ||
459 | _raw_spin_unlock_irq | ||
460 | _raw_spin_unlock_irqrestore | ||
461 | __rcu_read_lock | ||
462 | __rcu_read_unlock | ||
463 | rdev_get_drvdata | ||
464 | refcount_warn_saturate | ||
465 | regcache_cache_only | ||
466 | regcache_mark_dirty | ||
467 | regcache_sync | ||
468 | register_reboot_notifier | ||
469 | __register_rpmsg_driver | ||
470 | regmap_bulk_read | ||
471 | regmap_bulk_write | ||
472 | __regmap_init | ||
473 | regmap_irq_get_virq | ||
474 | regmap_multi_reg_write | ||
475 | regmap_read | ||
476 | regmap_register_patch | ||
477 | regmap_update_bits_base | ||
478 | regmap_write | ||
479 | regulator_bulk_disable | ||
480 | regulator_bulk_enable | ||
481 | regulator_bulk_get | ||
482 | regulator_disable | ||
483 | regulator_enable | ||
484 | regulator_set_load | ||
485 | regulator_set_voltage | ||
486 | release_firmware | ||
487 | remap_pfn_range | ||
488 | request_firmware | ||
489 | request_firmware_direct | ||
490 | request_firmware_into_buf | ||
491 | request_threaded_irq | ||
492 | reset_control_assert | ||
493 | reset_control_deassert | ||
494 | reset_control_reset | ||
495 | rpmsg_register_device | ||
496 | rpmsg_send | ||
497 | rpmsg_unregister_device | ||
498 | rproc_add | ||
499 | rproc_add_subdev | ||
500 | rproc_alloc | ||
501 | rproc_coredump_set_elf_info | ||
502 | rproc_del | ||
503 | rproc_free | ||
504 | rproc_remove_subdev | ||
505 | schedule | ||
506 | schedule_timeout | ||
507 | scnprintf | ||
508 | seq_lseek | ||
509 | seq_printf | ||
510 | seq_putc | ||
511 | seq_puts | ||
512 | seq_read | ||
513 | sg_alloc_table | ||
514 | sg_free_table | ||
515 | sg_init_table | ||
516 | sg_next | ||
517 | __sg_page_iter_start | ||
518 | simple_read_from_buffer | ||
519 | single_open | ||
520 | single_release | ||
521 | skb_clone | ||
522 | skb_dequeue | ||
523 | skb_pull | ||
524 | skb_push | ||
525 | skb_put | ||
526 | skb_queue_purge | ||
527 | skb_queue_tail | ||
528 | skb_trim | ||
529 | snd_pcm_format_width | ||
530 | snd_soc_component_init_regmap | ||
531 | snd_soc_component_read | ||
532 | snd_soc_component_update_bits | ||
533 | snd_soc_component_write | ||
534 | snd_soc_dapm_add_routes | ||
535 | snd_soc_dapm_get_enum_double | ||
536 | snd_soc_dapm_get_volsw | ||
537 | snd_soc_dapm_kcontrol_dapm | ||
538 | snd_soc_dapm_kcontrol_widget | ||
539 | snd_soc_dapm_mixer_update_power | ||
540 | snd_soc_dapm_mux_update_power | ||
541 | snd_soc_dapm_put_enum_double | ||
542 | snd_soc_dapm_put_volsw | ||
543 | snd_soc_get_enum_double | ||
544 | snd_soc_get_volsw | ||
545 | snd_soc_info_enum_double | ||
546 | snd_soc_info_volsw | ||
547 | snd_soc_jack_report | ||
548 | snd_soc_put_enum_double | ||
549 | snd_soc_put_volsw | ||
550 | snprintf | ||
551 | sock_create_kern | ||
552 | sock_release | ||
553 | sort | ||
554 | __spi_alloc_controller | ||
555 | spi_controller_resume | ||
556 | spi_controller_suspend | ||
557 | spi_finalize_current_transfer | ||
558 | spi_register_controller | ||
559 | spi_unregister_controller | ||
560 | sprintf | ||
561 | sscanf | ||
562 | __stack_chk_fail | ||
563 | __stack_chk_guard | ||
564 | strcmp | ||
565 | strcpy | ||
566 | strlcpy | ||
567 | strlen | ||
568 | strncmp | ||
569 | strncpy | ||
570 | strpbrk | ||
571 | strsep | ||
572 | __sw_hweight32 | ||
573 | __sw_hweight64 | ||
574 | synchronize_irq | ||
575 | synchronize_net | ||
576 | syscon_node_to_regmap | ||
577 | syscon_regmap_lookup_by_phandle | ||
578 | sysfs_create_link | ||
579 | sysfs_remove_link | ||
580 | sysrq_mask | ||
581 | system_wq | ||
582 | __tasklet_schedule | ||
583 | thermal_cooling_device_unregister | ||
584 | trace_event_buffer_commit | ||
585 | trace_event_buffer_reserve | ||
586 | trace_event_ignore_this_pid | ||
587 | trace_event_raw_init | ||
588 | trace_event_reg | ||
589 | trace_handle_return | ||
590 | trace_raw_output_prep | ||
591 | trace_seq_printf | ||
592 | tty_flip_buffer_push | ||
593 | __tty_insert_flip_char | ||
594 | uart_add_one_port | ||
595 | uart_get_baud_rate | ||
596 | uart_register_driver | ||
597 | uart_remove_one_port | ||
598 | uart_resume_port | ||
599 | uart_suspend_port | ||
600 | uart_try_toggle_sysrq | ||
601 | uart_unregister_driver | ||
602 | uart_update_timeout | ||
603 | uart_write_wakeup | ||
604 | __udelay | ||
605 | unregister_chrdev_region | ||
606 | unregister_reboot_notifier | ||
607 | unregister_rpmsg_driver | ||
608 | usb_debug_root | ||
609 | usb_deregister | ||
610 | usb_disabled | ||
611 | usb_get_dr_mode | ||
612 | usb_get_maximum_speed | ||
613 | usbnet_disconnect | ||
614 | usbnet_get_endpoints | ||
615 | usbnet_get_msglevel | ||
616 | usbnet_get_stats64 | ||
617 | usbnet_link_change | ||
618 | usbnet_nway_reset | ||
619 | usbnet_open | ||
620 | usbnet_probe | ||
621 | usbnet_read_cmd | ||
622 | usbnet_read_cmd_nopm | ||
623 | usbnet_resume | ||
624 | usbnet_set_msglevel | ||
625 | usbnet_skb_return | ||
626 | usbnet_start_xmit | ||
627 | usbnet_stop | ||
628 | usbnet_suspend | ||
629 | usbnet_tx_timeout | ||
630 | usbnet_update_max_qlen | ||
631 | usbnet_write_cmd | ||
632 | usbnet_write_cmd_async | ||
633 | usbnet_write_cmd_nopm | ||
634 | usb_register_driver | ||
635 | usleep_range | ||
636 | vabits_actual | ||
637 | vfree | ||
638 | vmalloc | ||
639 | vmap | ||
640 | vunmap | ||
641 | wait_for_completion_timeout | ||
642 | __wake_up | ||
643 | __warn_printk | ||
644 | watchdog_init_timeout | ||
645 | |||
646 | # required by apr.ko | ||
647 | rpmsg_trysend | ||
648 | |||
649 | # required by arm_smmu.ko | ||
650 | amba_bustype | ||
651 | bus_set_iommu | ||
652 | device_link_add | ||
653 | device_match_fwnode | ||
654 | driver_find_device | ||
655 | generic_device_group | ||
656 | generic_iommu_put_resv_regions | ||
657 | iommu_alloc_resv_region | ||
658 | iommu_device_register | ||
659 | iommu_device_sysfs_add | ||
660 | iommu_device_sysfs_remove | ||
661 | iommu_device_unregister | ||
662 | iommu_dma_get_resv_regions | ||
663 | iommu_fwspec_add_ids | ||
664 | iommu_fwspec_free | ||
665 | iommu_get_dma_cookie | ||
666 | iommu_group_ref_get | ||
667 | iommu_put_dma_cookie | ||
668 | of_dma_is_coherent | ||
669 | param_ops_int | ||
670 | pci_bus_type | ||
671 | pci_device_group | ||
672 | |||
673 | # required by asix.ko | ||
674 | eth_mac_addr | ||
675 | genphy_resume | ||
676 | mdiobus_alloc_size | ||
677 | mdiobus_free | ||
678 | __mdiobus_register | ||
679 | mdiobus_unregister | ||
680 | mii_check_media | ||
681 | mii_link_ok | ||
682 | phy_connect | ||
683 | phy_disconnect | ||
684 | phy_do_ioctl_running | ||
685 | phy_ethtool_get_link_ksettings | ||
686 | phy_ethtool_nway_reset | ||
687 | phy_ethtool_set_link_ksettings | ||
688 | phy_print_status | ||
689 | phy_start | ||
690 | phy_stop | ||
691 | skb_copy_expand | ||
692 | usbnet_change_mtu | ||
693 | usbnet_get_drvinfo | ||
694 | usbnet_get_link | ||
695 | usbnet_get_link_ksettings | ||
696 | usbnet_set_link_ksettings | ||
697 | usbnet_unlink_rx_urbs | ||
698 | |||
699 | # required by ath.ko | ||
700 | freq_reg_info | ||
701 | reg_initiator_name | ||
702 | wiphy_apply_custom_regulatory | ||
703 | |||
704 | # required by ath10k_core.ko | ||
705 | bcmp | ||
706 | cancel_delayed_work | ||
707 | cfg80211_calculate_bitrate | ||
708 | cfg80211_find_elem_match | ||
709 | cfg80211_find_vendor_elem | ||
710 | cfg80211_get_bss | ||
711 | cfg80211_put_bss | ||
712 | cpu_latency_qos_add_request | ||
713 | cpu_latency_qos_remove_request | ||
714 | device_get_mac_address | ||
715 | device_set_wakeup_enable | ||
716 | firmware_request_nowarn | ||
717 | guid_gen | ||
718 | idr_for_each | ||
719 | ieee80211_alloc_hw_nm | ||
720 | ieee80211_beacon_cntdwn_is_complete | ||
721 | ieee80211_beacon_get_template | ||
722 | ieee80211_beacon_get_tim | ||
723 | iee |