From 3bb09260f108fa3e393b9122ed20f83476743a62 Mon Sep 17 00:00:00 2001 From: Greg Kroah-Hartman Date: Fri, 13 Aug 2021 11:31:16 +0200 Subject: [PATCH] ANDROID: GKI: remove all symbols for android13-5.10 branch Remove all existing tracked symbols (with the exception of one) from the android13-5.10 branch. The ABI is not being tracked right now, and all vendors will need to provide new symbol lists, so flush them all out for now. Bug: 196521446 Signed-off-by: Greg Kroah-Hartman Change-Id: I9ea0e24ee7528d9c060428bb9173e15ff1feae78 --- android/abi_gki_aarch64.xml | 133842 ---------------------- android/abi_gki_aarch64_db845c | 1795 - android/abi_gki_aarch64_exynos | 2212 - android/abi_gki_aarch64_exynosauto | 1478 - android/abi_gki_aarch64_generic | 2285 - android/abi_gki_aarch64_hikey960 | 1270 - android/abi_gki_aarch64_mtk | 2464 - android/abi_gki_aarch64_oplus | 2023 - android/abi_gki_aarch64_qcom | 3000 - android/abi_gki_aarch64_unisoc | 2534 - android/abi_gki_aarch64_virtual_device | 1314 - android/abi_gki_aarch64_vivo | 1997 - android/abi_gki_aarch64_xiaomi | 114 - build.config.db845c | 1 - build.config.gki.aarch64 | 12 - build.config.hikey960 | 1 - 16 files changed, 156342 deletions(-) delete mode 100644 android/abi_gki_aarch64.xml delete mode 100644 android/abi_gki_aarch64_db845c delete mode 100644 android/abi_gki_aarch64_exynos delete mode 100644 android/abi_gki_aarch64_exynosauto delete mode 100644 android/abi_gki_aarch64_generic delete mode 100644 android/abi_gki_aarch64_hikey960 delete mode 100644 android/abi_gki_aarch64_mtk delete mode 100644 android/abi_gki_aarch64_oplus delete mode 100644 android/abi_gki_aarch64_qcom delete mode 100644 android/abi_gki_aarch64_unisoc delete mode 100644 android/abi_gki_aarch64_virtual_device delete mode 100644 android/abi_gki_aarch64_vivo delete mode 100644 android/abi_gki_aarch64_xiaomi diff --git a/android/abi_gki_aarch64.xml b/android/abi_gki_aarch64.xml deleted file mode 100644 index c40cdec76ce4..000000000000 --- a/android/abi_gki_aarch64.xml +++ /dev/null @@ -1,133842 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/android/abi_gki_aarch64_db845c b/android/abi_gki_aarch64_db845c deleted file mode 100644 index 86ef49b9a976..000000000000 --- a/android/abi_gki_aarch64_db845c +++ /dev/null @@ -1,1795 +0,0 @@ -[abi_symbol_list] -# commonly used symbols - add_uevent_var - alloc_io_pgtable_ops - __alloc_skb - alloc_workqueue - __arch_copy_from_user - __arch_copy_to_user - arm64_const_caps_ready - arm64_use_ng_mappings - bcmp - blocking_notifier_call_chain - blocking_notifier_chain_register - blocking_notifier_chain_unregister - bpf_trace_run1 - bpf_trace_run2 - bpf_trace_run3 - bpf_trace_run4 - bpf_trace_run5 - bpf_trace_run6 - bus_register - bus_unregister - cancel_delayed_work - cancel_delayed_work_sync - cancel_work_sync - capable - cdev_device_add - cdev_device_del - cdev_init - __cfi_slowpath - __check_object_size - __class_register - class_unregister - clk_bulk_disable - clk_bulk_enable - clk_bulk_prepare - clk_bulk_unprepare - clk_disable - clk_enable - clk_fixed_rate_ops - clk_get - __clk_get_name - clk_get_rate - clk_hw_get_parent - clk_hw_get_rate - clk_hw_register - clk_hw_unregister - clk_prepare - clk_put - clk_round_rate - clk_set_rate - clk_sync_state - clk_unprepare - complete - complete_all - completion_done - __const_udelay - consume_skb - _copy_from_iter_full - cpu_hwcap_keys - cpu_hwcaps - cpumask_next - cpu_number - __cpu_online_mask - __cpu_possible_mask - crc32_le - _ctype - debugfs_create_dir - debugfs_create_file - debugfs_create_u32 - debugfs_create_x32 - debugfs_remove - default_llseek - delayed_work_timer_fn - del_timer - del_timer_sync - destroy_workqueue - dev_close - dev_coredumpv - dev_driver_string - _dev_err - dev_err_probe - dev_get_regmap - device_find_child - device_for_each_child - device_get_match_data - device_initialize - device_init_wakeup - device_property_present - device_property_read_u32_array - device_register - device_set_wakeup_capable - device_unregister - device_wakeup_enable - _dev_info - __dev_kfree_skb_any - devm_add_action - devm_clk_bulk_get - devm_clk_bulk_get_all - devm_clk_get - devm_clk_get_optional - devm_clk_hw_register - devm_free_irq - devm_gpiod_get - devm_gpiod_get_optional - devm_ioremap - devm_ioremap_resource - devm_ioremap_wc - devm_iounmap - devm_kasprintf - devm_kfree - devm_kmalloc - devm_memremap - devm_of_clk_add_hw_provider - devm_of_icc_get - __devm_of_phy_provider_register - devm_of_platform_populate - devm_phy_create - devm_phy_get - devm_pinctrl_register - devm_platform_ioremap_resource - devm_regmap_add_irq_chip - devm_regmap_field_alloc - __devm_regmap_init - __devm_regmap_init_i2c - __devm_regmap_init_mmio_clk - devm_regulator_bulk_get - devm_regulator_get - devm_regulator_register - devm_request_threaded_irq - __devm_reset_control_get - devm_reset_controller_register - devm_snd_soc_register_component - __devm_spi_alloc_controller - devm_spi_register_controller - devm_watchdog_register_device - _dev_notice - dev_pm_domain_attach_by_name - dev_pm_domain_detach - dev_pm_genpd_set_performance_state - dev_pm_opp_add - dev_pm_opp_find_freq_ceil - dev_pm_opp_find_freq_exact - dev_pm_opp_get_level - dev_pm_opp_get_opp_count - dev_pm_opp_of_add_table - dev_pm_opp_of_find_icc_paths - dev_pm_opp_of_remove_table - dev_pm_opp_put - dev_pm_opp_put_clkname - dev_pm_opp_set_bw - dev_pm_opp_set_clkname - dev_pm_opp_set_rate - dev_set_name - _dev_warn - disable_irq - divider_get_val - divider_recalc_rate - divider_round_rate_parent - dma_alloc_attrs - dma_buf_export - dma_free_attrs - dmam_alloc_attrs - dma_map_page_attrs - dma_map_sg_attrs - dma_mmap_attrs - dma_release_channel - dma_request_chan - dma_set_coherent_mask - dma_set_mask - dma_sync_single_for_cpu - dma_sync_single_for_device - dma_unmap_page_attrs - dma_unmap_sg_attrs - do_SAK - driver_register - driver_unregister - drm_add_edid_modes - drm_atomic_helper_connector_destroy_state - drm_atomic_helper_connector_duplicate_state - drm_atomic_helper_connector_reset - drm_connector_attach_encoder - drm_connector_cleanup - drm_connector_init - drm_connector_update_edid_property - __drm_err - drm_hdmi_avi_infoframe_from_display_mode - drm_helper_probe_single_connector_modes - drm_mode_vrefresh - enable_irq - eth_mac_addr - eth_platform_get_mac_address - ethtool_op_get_link - eth_type_trans - eth_validate_addr - event_triggers_call - find_next_bit - find_next_zero_bit - finish_wait - flush_work - flush_workqueue - free_io_pgtable_ops - free_irq - gcd - generic_handle_irq - generic_mii_ioctl - get_device - get_random_bytes - gic_nonsecure_priorities - gpiochip_add_data_with_key - gpiochip_add_pin_range - gpiochip_generic_free - gpiochip_generic_request - gpiochip_get_data - gpiochip_remove - gpiod_direction_output - gpiod_direction_output_raw - gpiod_set_consumer_name - gpiod_set_raw_value - gpiod_set_value_cansleep - gpio_to_desc - handle_edge_irq - handle_level_irq - handle_nested_irq - handle_sysrq - hdmi_audio_infoframe_init - i2c_adapter_type - i2c_add_adapter - i2c_add_numbered_adapter - i2c_del_adapter - i2c_del_driver - i2c_parse_fw_timings - i2c_register_driver - __i2c_smbus_xfer - i2c_smbus_xfer - i2c_transfer - icc_disable - icc_enable - icc_link_create - icc_node_add - icc_node_create - icc_nodes_remove - icc_provider_add - icc_provider_del - icc_set_bw - icc_sync_state - ida_alloc_range - ida_free - idr_alloc - idr_alloc_cyclic - idr_destroy - idr_find - idr_for_each - idr_get_next - idr_remove - init_net - __init_swait_queue_head - init_timer_key - init_uts_ns - init_wait_entry - __init_waitqueue_head - iomem_resource - iommu_attach_device - iommu_detach_device - iommu_domain_alloc - iommu_domain_free - iommu_present - iommu_unmap - __ioread32_copy - __ioremap - iounmap - __iowrite32_copy - irq_chip_disable_parent - irq_chip_enable_parent - irq_chip_eoi_parent - irq_chip_mask_parent - irq_chip_set_affinity_parent - irq_chip_set_parent_state - irq_chip_set_type_parent - irq_chip_set_vcpu_affinity_parent - irq_chip_set_wake_parent - irq_chip_unmask_parent - __irq_domain_add - irq_domain_free_irqs_common - irq_domain_remove - irq_domain_xlate_twocell - irq_find_mapping - irq_find_matching_fwspec - irq_modify_status - irq_of_parse_and_map - irq_set_chained_handler_and_data - irq_set_chip_and_handler_name - irq_set_chip_data - irq_set_irq_wake - irq_to_desc - is_vmalloc_addr - jiffies - jiffies_to_msecs - jiffies_to_usecs - kasan_flag_enabled - kasprintf - kernel_connect - kernel_getsockname - kernel_recvmsg - kernel_sendmsg - kfree - kfree_const - kfree_sensitive - kfree_skb - __kmalloc - kmalloc_caches - kmalloc_order_trace - kmem_cache_alloc_trace - kmemdup - kstrdup - kstrdup_const - kstrtoint - kstrtouint - ktime_get - ktime_get_mono_fast_ns - ktime_get_real_ts64 - kvfree - kvfree_call_rcu - kvmalloc_node - __list_add_valid - __list_del_entry_valid - __local_bh_enable_ip - __log_post_read_mmio - __log_read_mmio - __log_write_mmio - mbox_client_txdone - mbox_free_channel - mbox_request_channel - mbox_send_message - memcpy - __memcpy_fromio - __memcpy_toio - memmove - memremap - memset - memstart_addr - memunmap - mii_ethtool_gset - mii_nway_restart - misc_deregister - misc_register - mod_delayed_work_on - mod_timer - module_layout - __msecs_to_jiffies - msleep - __mutex_init - mutex_is_locked - mutex_lock - mutex_unlock - napi_complete_done - napi_disable - __napi_schedule - napi_schedule_prep - __netdev_alloc_skb - netdev_err - netdev_info - netdev_warn - netif_carrier_on - netif_napi_add - __netif_napi_del - __nla_parse - nla_put - no_llseek - nr_cpu_ids - nvmem_cell_get - nvmem_cell_put - nvmem_cell_read - of_address_to_resource - of_alias_get_id - of_clk_add_hw_provider - of_clk_del_provider - of_clk_hw_simple_get - of_clk_set_defaults - of_device_get_match_data - of_device_is_compatible - of_device_uevent_modalias - of_dma_configure_id - of_find_device_by_node - of_find_property - of_fwnode_ops - of_genpd_add_provider_onecell - of_genpd_del_provider - of_get_child_by_name - of_get_named_gpio_flags - of_get_next_available_child - of_get_next_child - of_get_property - of_get_regulator_init_data - of_graph_get_remote_node - of_graph_parse_endpoint - of_icc_xlate_onecell - of_iomap - of_irq_find_parent - of_irq_get - of_irq_get_byname - of_match_device - of_match_node - of_node_name_eq - of_parse_phandle - of_parse_phandle_with_args - of_parse_phandle_with_fixed_args - of_phy_simple_xlate - of_platform_depopulate - of_platform_populate - of_property_count_elems_of_size - of_property_read_string - of_property_read_string_helper - of_property_read_u32_index - of_property_read_variable_u32_array - of_property_read_variable_u8_array - of_prop_next_u32 - of_reserved_mem_lookup - param_ops_bool - param_ops_charp - param_ops_int - param_ops_uint - __pci_register_driver - pci_unregister_driver - perf_trace_buf_alloc - perf_trace_run_bpf_submit - phy_exit - phy_init - phy_power_off - phy_power_on - pinconf_generic_dt_node_to_map - pinctrl_dev_get_drvdata - pinctrl_pm_select_default_state - pinctrl_pm_select_sleep_state - pinctrl_utils_free_map - platform_bus_type - platform_device_register_full - platform_device_unregister - __platform_driver_register - platform_driver_unregister - platform_get_irq - platform_get_irq_byname - platform_get_irq_optional - platform_get_resource - platform_get_resource_byname - pm_genpd_add_subdomain - pm_genpd_init - __pm_runtime_disable - pm_runtime_enable - pm_runtime_forbid - pm_runtime_force_resume - pm_runtime_force_suspend - __pm_runtime_idle - __pm_runtime_resume - pm_runtime_set_autosuspend_delay - __pm_runtime_set_status - __pm_runtime_suspend - __pm_runtime_use_autosuspend - preempt_schedule - preempt_schedule_notrace - prepare_to_wait_event - printk - pskb_expand_head - __pskb_pull_tail - put_device - __put_task_struct - qcom_smem_state_register - qcom_smem_state_unregister - queue_delayed_work_on - queue_work_on - radix_tree_delete - radix_tree_insert - radix_tree_lookup - radix_tree_next_chunk - ___ratelimit - rational_best_approximation - _raw_spin_lock - _raw_spin_lock_bh - _raw_spin_lock_irq - _raw_spin_lock_irqsave - _raw_spin_trylock - _raw_spin_unlock - _raw_spin_unlock_bh - _raw_spin_unlock_irq - _raw_spin_unlock_irqrestore - __rcu_read_lock - __rcu_read_unlock - rdev_get_drvdata - refcount_warn_saturate - regcache_cache_only - regcache_mark_dirty - regcache_sync - register_netdevice_notifier - register_reboot_notifier - __register_rpmsg_driver - regmap_bulk_read - regmap_bulk_write - regmap_field_read - regmap_field_update_bits_base - __regmap_init - regmap_irq_get_virq - regmap_multi_reg_write - regmap_read - regmap_register_patch - regmap_update_bits_base - regmap_write - regulator_bulk_disable - regulator_bulk_enable - regulator_bulk_get - regulator_disable - regulator_enable - regulator_set_load - regulator_set_voltage - release_firmware - __release_region - remap_pfn_range - request_firmware - request_firmware_direct - request_firmware_into_buf - __request_region - request_threaded_irq - reset_control_assert - reset_control_deassert - reset_control_reset - round_jiffies_up - rpmsg_register_device - rpmsg_send - rpmsg_unregister_device - rproc_add - rproc_add_subdev - rproc_alloc - rproc_coredump_set_elf_info - rproc_del - rproc_free - rproc_remove_subdev - rtnl_is_locked - rtnl_lock - rtnl_unlock - schedule - schedule_timeout - scnprintf - seq_lseek - seq_printf - seq_putc - seq_puts - seq_read - sg_alloc_table - sg_free_table - sg_init_table - sg_next - __sg_page_iter_start - simple_read_from_buffer - single_open - single_release - skb_clone - skb_copy - skb_copy_bits - skb_copy_expand - skb_dequeue - skb_pull - skb_push - skb_put - skb_queue_head - skb_queue_purge - skb_queue_tail - skb_trim - snd_pcm_format_width - snd_soc_component_init_regmap - snd_soc_component_read - snd_soc_component_update_bits - snd_soc_component_write - snd_soc_dapm_add_routes - snd_soc_dapm_get_enum_double - snd_soc_dapm_get_volsw - snd_soc_dapm_kcontrol_dapm - snd_soc_dapm_kcontrol_widget - snd_soc_dapm_mixer_update_power - snd_soc_dapm_mux_update_power - snd_soc_dapm_put_enum_double - snd_soc_dapm_put_volsw - snd_soc_get_enum_double - snd_soc_get_volsw - snd_soc_info_enum_double - snd_soc_info_volsw - snd_soc_jack_report - snd_soc_put_enum_double - snd_soc_put_volsw - snprintf - sock_create_kern - sock_release - sort - __spi_alloc_controller - spi_controller_resume - spi_controller_suspend - spi_finalize_current_transfer - spi_register_controller - spi_unregister_controller - sprintf - sscanf - __stack_chk_fail - __stack_chk_guard - strcmp - strcpy - strlcpy - strlen - strncmp - strncpy - strpbrk - strsep - __sw_hweight16 - __sw_hweight32 - __sw_hweight64 - __sw_hweight8 - synchronize_irq - synchronize_net - synchronize_rcu - syscon_node_to_regmap - syscon_regmap_lookup_by_phandle - sysfs_create_link - sysfs_remove_link - sysrq_mask - system_power_efficient_wq - system_wq - tasklet_init - tasklet_kill - __tasklet_schedule - thermal_cooling_device_unregister - trace_event_buffer_commit - trace_event_buffer_reserve - trace_event_ignore_this_pid - trace_event_raw_init - trace_event_reg - trace_handle_return - __traceiter_rwmmio_post_read - __traceiter_rwmmio_read - __traceiter_rwmmio_write - __tracepoint_rwmmio_post_read - __tracepoint_rwmmio_read - __tracepoint_rwmmio_write - trace_raw_output_prep - trace_seq_printf - tty_flip_buffer_push - __tty_insert_flip_char - uart_add_one_port - uart_get_baud_rate - uart_register_driver - uart_remove_one_port - uart_resume_port - uart_suspend_port - uart_try_toggle_sysrq - uart_unregister_driver - uart_update_timeout - uart_write_wakeup - __udelay - unregister_chrdev_region - unregister_netdevice_notifier - unregister_reboot_notifier - unregister_rpmsg_driver - usb_deregister - usb_disabled - usbnet_disconnect - usbnet_get_endpoints - usbnet_get_msglevel - usbnet_get_stats64 - usbnet_link_change - usbnet_nway_reset - usbnet_open - usbnet_probe - usbnet_read_cmd - usbnet_read_cmd_nopm - usbnet_resume - usbnet_set_msglevel - usbnet_skb_return - usbnet_start_xmit - usbnet_stop - usbnet_suspend - usbnet_tx_timeout - usbnet_update_max_qlen - usbnet_write_cmd - usbnet_write_cmd_async - usbnet_write_cmd_nopm - usb_register_driver - __usecs_to_jiffies - usleep_range - vabits_actual - vfree - vmalloc - vmap - vunmap - wait_for_completion_timeout - __wake_up - __warn_printk - watchdog_init_timeout - -# required by apr.ko - rpmsg_trysend - -# required by arm_smmu.ko - amba_bustype - bus_set_iommu - device_link_add - device_match_fwnode - driver_find_device - generic_device_group - generic_iommu_put_resv_regions - iommu_alloc_resv_region - iommu_device_register - iommu_device_sysfs_add - iommu_device_sysfs_remove - iommu_device_unregister - iommu_dma_get_resv_regions - iommu_fwspec_add_ids - iommu_fwspec_free - iommu_get_dma_cookie - iommu_group_ref_get - iommu_put_dma_cookie - of_dma_is_coherent - pci_bus_type - pci_device_group - -# required by asix.ko - genphy_resume - mdiobus_alloc_size - mdiobus_free - __mdiobus_register - mdiobus_unregister - mii_check_media - mii_link_ok - phy_connect - phy_disconnect - phy_do_ioctl_running - phy_ethtool_get_link_ksettings - phy_ethtool_nway_reset - phy_ethtool_set_link_ksettings - phy_print_status - phy_start - phy_stop - usbnet_change_mtu - usbnet_get_drvinfo - usbnet_get_link - usbnet_get_link_ksettings - usbnet_set_link_ksettings - usbnet_unlink_rx_urbs - -# required by ath10k_core.ko - cpu_latency_qos_add_request - cpu_latency_qos_remove_request - device_get_mac_address - device_set_wakeup_enable - firmware_request_nowarn - guid_gen - init_dummy_netdev - __kfifo_alloc - __kfifo_free - param_ops_ulong - skb_dequeue_tail - skb_realloc_headroom - strlcat - strscpy - thermal_cooling_device_register - vzalloc - -# required by ath10k_pci.ko - pci_clear_master - pci_disable_device - pci_disable_msi - pcie_capability_read_word - pcie_capability_write_word - pci_enable_device - pci_enable_msi - pci_iomap - pci_read_config_dword - pci_release_region - pci_request_region - pci_set_master - pci_write_config_dword - -# required by ath10k_snoc.ko - __bitmap_clear - devm_clk_bulk_get_optional - iommu_map - -# required by ax88179_178a.ko - ethtool_op_get_ts_info - mii_ethtool_get_link_ksettings - mii_ethtool_set_link_ksettings - -# required by bam_dma.ko - dma_async_device_register - dma_async_device_unregister - dma_async_tx_descriptor_init - dma_get_slave_channel - of_dma_controller_free - of_dma_controller_register - pm_runtime_irq_safe - tasklet_setup - vchan_dma_desc_free_list - vchan_find_desc - vchan_init - vchan_tx_desc_free - vchan_tx_submit - -# required by cfg80211.ko - bpf_trace_run10 - bpf_trace_run7 - debugfs_rename - dev_change_net_namespace - __dev_get_by_index - dev_get_by_index - device_add - device_del - device_rename - genlmsg_multicast_allns - genlmsg_put - genl_register_family - genl_unregister_family - get_net_ns_by_fd - get_net_ns_by_pid - inet_csk_get_port - key_create_or_update - key_put - keyring_alloc - ktime_get_coarse_with_offset - memcmp - netif_rx_ni - netlink_broadcast - netlink_register_notifier - netlink_unicast - netlink_unregister_notifier - net_ns_type_operations - nla_find - nla_memcpy - nla_put_64bit - nla_reserve - __nla_validate - __put_net - rb_erase - rb_insert_color - register_pernet_device - request_firmware_nowait - rfkill_alloc - rfkill_blocked - rfkill_destroy - rfkill_pause_polling - rfkill_register - rfkill_resume_polling - rfkill_set_hw_state - rfkill_unregister - skb_add_rx_frag - __sock_create - trace_print_array_seq - unregister_pernet_device - verify_pkcs7_signature - wireless_nlevent_flush - -# required by clk-qcom.ko - __clk_determine_rate - clk_fixed_factor_ops - clk_hw_get_flags - clk_hw_get_name - clk_hw_get_num_parents - clk_hw_get_parent_by_index - clk_hw_is_enabled - clk_hw_round_rate - __clk_is_enabled - __clk_mux_determine_rate_closest - divider_ro_round_rate_parent - of_find_node_opts_by_path - pm_genpd_remove_subdomain - -# required by clk-rpmh.ko - clk_hw_is_prepared - -# required by clk-spmi-pmic-div.ko - __ndelay - of_clk_get_parent_name - -# required by cqhci.ko - devm_blk_ksm_init - dmam_free_coherent - mmc_cqe_request_done - -# required by extcon-usb-gpio.ko - devm_extcon_dev_allocate - devm_extcon_dev_register - extcon_set_state_sync - gpiod_get_value_cansleep - gpiod_set_debounce - gpiod_to_irq - -# required by fastrpc.ko - dma_buf_attach - dma_buf_detach - dma_buf_fd - dma_buf_get - dma_buf_map_attachment - dma_buf_put - dma_buf_unmap_attachment - dma_get_sgtable_attrs - find_vma - wait_for_completion_interruptible - -# required by gpio-regulator.ko - devm_gpiod_get_index - devm_kmemdup - devm_kstrdup - gpiod_count - gpiod_get_optional - -# required by gpio-wcd934x.ko - devm_gpiochip_add_data_with_key - -# required by i2c-designware-core.ko - i2c_generic_scl_recovery - i2c_recover_bus - -# required by i2c-designware-platform.ko - pm_suspend_global_flags - -# required by i2c-dev.ko - bus_register_notifier - bus_unregister_notifier - __class_create - class_destroy - i2c_bus_type - i2c_for_each_dev - i2c_get_adapter - i2c_put_adapter - i2c_transfer_buffer_flags - i2c_verify_client - memdup_user - register_chrdev_region - -# required by i2c-mux-pca954x.ko - device_create_file - device_remove_file - handle_simple_irq - i2c_get_device_id - i2c_smbus_read_byte - i2c_smbus_write_byte - irq_create_mapping_affinity - irq_dispose_mapping - irq_domain_simple_ops - -# required by i2c-mux.ko - __i2c_transfer - rt_mutex_lock - rt_mutex_trylock - rt_mutex_unlock - -# required by i2c-qcom-geni.ko - i2c_get_dma_safe_msg_buf - i2c_put_dma_safe_msg_buf - of_machine_is_compatible - -# required by i2c-rk3x.ko - clk_notifier_register - clk_notifier_unregister - -# required by icc-bcm-voter.ko - list_sort - of_property_match_string - -# required by icc-osm-l3.ko - icc_std_aggregate - -# required by llcc-qcom.ko - devm_platform_ioremap_resource_byname - -# required by lontium-lt9611.ko - drm_bridge_add - drm_bridge_remove - drm_do_get_edid - drm_kms_helper_hotplug_event - mipi_dsi_attach - mipi_dsi_detach - mipi_dsi_device_register_full - mipi_dsi_device_unregister - of_find_mipi_dsi_host_by_node - -# required by mac80211.ko - alloc_netdev_mqs - __alloc_percpu_gfp - arc4_crypt - arc4_setkey - call_rcu - crc32_be - crypto_aead_decrypt - crypto_aead_encrypt - crypto_aead_setauthsize - crypto_aead_setkey - crypto_alloc_aead - crypto_alloc_shash - crypto_alloc_skcipher - crypto_destroy_tfm - __crypto_memneq - crypto_shash_digest - crypto_shash_finup - crypto_shash_setkey - crypto_shash_update - crypto_skcipher_decrypt - crypto_skcipher_encrypt - crypto_skcipher_setkey - __crypto_xor - dev_alloc_name - dev_fetch_sw_netstats - dev_printk - dev_queue_xmit - ether_setup - flush_delayed_work - free_netdev - free_percpu - get_random_u32 - __hw_addr_init - __hw_addr_sync - __hw_addr_unsync - kernel_param_lock - kernel_param_unlock - kfree_skb_list - ktime_get_seconds - ktime_get_with_offset - napi_gro_receive - netdev_set_default_ethtool_ops - netif_carrier_off - netif_receive_skb - netif_receive_skb_list - netif_rx - netif_tx_stop_all_queues - netif_tx_wake_queue - net_ratelimit - __per_cpu_offset - prandom_bytes - prandom_u32 - ___pskb_trim - rcu_barrier - register_inet6addr_notifier - register_inetaddr_notifier - register_netdevice - rhashtable_free_and_destroy - rhashtable_insert_slow - rhltable_init - __rht_bucket_nested - rht_bucket_nested - rht_bucket_nested_insert - round_jiffies - round_jiffies_relative - sg_init_one - skb_checksum_help - skb_clone_sk - skb_complete_wifi_ack - skb_ensure_writable - __skb_get_hash - __skb_gso_segment - system_freezable_wq - unregister_inet6addr_notifier - unregister_inetaddr_notifier - unregister_netdevice_many - unregister_netdevice_queue - -# required by msm.ko - __bitmap_andnot - __bitmap_weight - bpf_trace_run8 - clk_get_parent - __clk_hw_register_divider - clk_hw_register_fixed_factor - __clk_hw_register_mux - clk_hw_unregister_divider - clk_hw_unregister_fixed_factor - clk_hw_unregister_mux - clk_set_parent - clk_unregister - component_add - component_bind_all - component_del - component_master_add_with_match - component_master_del - component_unbind_all - debugfs_create_bool - debugfs_create_u64 - dev_coredumpm - devfreq_recommended_opp - devfreq_resume_device - devfreq_suspend_device - devm_clk_register - devm_devfreq_add_device - devm_regulator_get_exclusive - dev_pm_opp_find_freq_floor - dev_pm_opp_get_freq - dev_pm_opp_get_voltage - dev_pm_opp_set_supported_hw - dma_fence_context_alloc - dma_fence_init - dma_fence_match_context - dma_fence_release - dma_fence_signal - dma_fence_wait_timeout - dma_resv_add_excl_fence - dma_resv_add_shared_fence - dma_resv_reserve_shared - dma_resv_wait_timeout_rcu - drm_add_modes_noedid - drm_atomic_get_private_obj_state - drm_atomic_helper_check - drm_atomic_helper_check_plane_state - drm_atomic_helper_cleanup_planes - drm_atomic_helper_commit - drm_atomic_helper_commit_hw_done - drm_atomic_helper_commit_modeset_disables - drm_atomic_helper_commit_modeset_enables - drm_atomic_helper_commit_planes - __drm_atomic_helper_crtc_destroy_state - drm_atomic_helper_crtc_destroy_state - __drm_atomic_helper_crtc_duplicate_state - drm_atomic_helper_crtc_duplicate_state - __drm_atomic_helper_crtc_reset - drm_atomic_helper_crtc_reset - drm_atomic_helper_dirtyfb - drm_atomic_helper_disable_plane - drm_atomic_helper_page_flip - __drm_atomic_helper_plane_destroy_state - drm_atomic_helper_plane_destroy_state - __drm_atomic_helper_plane_duplicate_state - drm_atomic_helper_plane_duplicate_state - drm_atomic_helper_plane_reset - __drm_atomic_helper_private_obj_duplicate_state - drm_atomic_helper_set_config - drm_atomic_helper_shutdown - drm_atomic_helper_update_plane - drm_atomic_private_obj_fini - drm_atomic_private_obj_init - drm_bridge_attach - drm_compat_ioctl - drm_connector_has_possible_encoder - drm_connector_init_with_ddc - drm_connector_list_iter_begin - drm_connector_list_iter_end - drm_connector_list_iter_next - drm_crtc_cleanup - drm_crtc_enable_color_mgmt - drm_crtc_handle_vblank - drm_crtc_init_with_planes - drm_crtc_send_vblank_event - drm_crtc_set_max_vblank_count - drm_crtc_vblank_get - drm_crtc_vblank_helper_get_vblank_timestamp - drm_crtc_vblank_off - drm_crtc_vblank_on - drm_crtc_vblank_put - __drm_dbg - __drm_debug - drm_debugfs_create_files - drm_detect_hdmi_monitor - drm_detect_monitor_audio - drm_dev_alloc - drm_dev_dbg - drm_dev_printk - drm_dev_put - drm_dev_register - drm_dev_unregister - drm_dp_aux_register - drm_dp_aux_unregister - drm_dp_bw_code_to_link_rate - drm_dp_channel_eq_ok - drm_dp_clock_recovery_ok - drm_dp_dpcd_read - drm_dp_dpcd_read_link_status - drm_dp_dpcd_write - drm_dp_get_adjust_request_pre_emphasis - drm_dp_get_adjust_request_voltage - drm_dp_get_edid_quirks - drm_dp_link_rate_to_bw_code - drm_dp_link_train_channel_eq_delay - drm_dp_link_train_clock_recovery_delay - drm_edid_block_valid - drm_encoder_cleanup - drm_encoder_init - drm_flip_work_cleanup - drm_flip_work_commit - drm_flip_work_init - drm_flip_work_queue - drm_format_info - drm_framebuffer_init - drm_gem_create_mmap_offset - drm_gem_fb_create_handle - drm_gem_fb_destroy - drm_gem_fb_get_obj - drm_gem_fb_prepare_fb - drm_gem_free_mmap_offset - drm_gem_get_pages - drm_gem_handle_create - drm_gem_mmap - drm_gem_mmap_obj - drm_gem_object_free - drm_gem_object_init - drm_gem_object_lookup - drm_gem_object_put_locked - drm_gem_object_release - drm_gem_prime_fd_to_handle - drm_gem_prime_handle_to_fd - drm_gem_private_object_init - drm_gem_put_pages - drm_gem_vm_close - drm_gem_vm_open - drm_get_edid - drm_get_format_info - drm_get_format_name - drm_handle_vblank - drm_helper_hpd_irq_event - drm_helper_mode_fill_fb_struct - drm_ioctl - drm_irq_install - drm_irq_uninstall - drm_kms_helper_poll_fini - drm_kms_helper_poll_init - drm_mm_init - drm_mm_insert_node_in_range - drmm_mode_config_init - drm_mm_print - drm_mm_remove_node - drm_mm_takedown - drm_mode_config_cleanup - drm_mode_config_helper_resume - drm_mode_config_helper_suspend - drm_mode_config_reset - drm_mode_copy - drm_mode_debug_printmodeline - drm_mode_destroy - drm_mode_duplicate - drm_mode_object_find - drm_mode_object_put - drm_mode_probed_add - drm_modeset_lock - drm_modeset_lock_all - drm_modeset_lock_init - drm_modeset_unlock - drm_modeset_unlock_all - drm_object_attach_property - drm_of_component_match_add - drm_open - drm_panel_disable - drm_panel_enable - drm_panel_get_modes - drm_panel_prepare - drm_panel_unprepare - drm_plane_cleanup - drm_plane_create_rotation_property - drm_plane_create_zpos_property - drm_plane_enable_fb_damage_clips - drm_poll - drm_prime_gem_destroy - drm_prime_pages_to_sg - drm_prime_sg_to_page_addr_arrays - drm_printf - __drm_printfn_coredump - __drm_printfn_info - __drm_printfn_seq_file - drm_property_create_range - drm_puts - __drm_puts_coredump - __drm_puts_seq_file - drm_read - drm_rect_calc_hscale - drm_rect_calc_vscale - drm_rect_intersect - drm_release - drm_rotation_simplify - drm_set_preferred_mode - drm_state_dump - drm_syncobj_add_point - drm_syncobj_find - drm_syncobj_find_fence - drm_syncobj_free - drm_syncobj_replace_fence - drm_universal_plane_init - drm_vblank_init - fd_install - fput - generic_file_llseek - get_pid_task - get_unused_fd_flags - gpiod_direction_input - gpiod_get_value - gpiod_set_value - hdmi_audio_infoframe_pack - hdmi_infoframe_pack - hrtimer_init - hrtimer_start_range_ns - icc_put - invalidate_mapping_pages - iommu_map_sg - iommu_set_fault_handler - irq_domain_xlate_onecell - kstrdup_quotable_cmdline - kstrtouint_from_user - kthread_create_on_node - kthread_create_worker - kthread_destroy_worker - kthread_queue_work - llist_add_batch - memdup_user_nul - memparse - mipi_dsi_create_packet - mipi_dsi_host_register - mipi_dsi_host_unregister - mipi_dsi_packet_format_is_long - mutex_lock_interruptible - mutex_trylock_recursive - nsecs_to_jiffies - of_clk_hw_onecell_get - of_device_is_available - of_drm_find_bridge - of_drm_find_panel - of_find_matching_node_and_match - of_get_compatible_child - of_graph_get_endpoint_by_regs - of_graph_get_next_endpoint - of_graph_get_remote_port_parent - of_icc_get - phy_calibrate - phy_configure - pid_task - pm_runtime_get_if_active - put_pid - put_unused_fd - _raw_read_lock - _raw_read_unlock - _raw_write_lock - _raw_write_unlock - register_shrinker - register_vmap_purge_notifier - regulator_get - regulator_put - reservation_ww_class - sched_set_fifo - schedule_timeout_interruptible - __sg_page_iter_dma_next - shmem_truncate_range - simple_attr_open - simple_attr_read - simple_attr_release - simple_attr_write - simple_open - strstr - sync_file_create - sync_file_get_fence - unmap_mapping_range - unregister_shrinker - unregister_vmap_purge_notifier - vmf_insert_mixed - vm_get_page_prot - vscnprintf - vsnprintf - wake_up_process - ww_mutex_lock_interruptible - ww_mutex_unlock - -# required by msm_serial.ko - tty_termios_baud_rate - tty_termios_encode_baud_rate - -# required by ns.ko - kernel_bind - radix_tree_iter_resume - -# required by nvmem_qfprom.ko - devm_nvmem_register - -# required by ohci-hcd.ko - dma_pool_alloc - dma_pool_create - dma_pool_destroy - dma_pool_free - free_pages - gen_pool_dma_alloc_align - gen_pool_dma_zalloc_align - gen_pool_free_owner - get_zeroed_page - sb800_prefetch - schedule_timeout_uninterruptible - usb_amd_dev_put - usb_amd_quirk_pll_disable - usb_amd_quirk_pll_enable - usb_calc_bus_time - usb_debug_root - usb_hcd_check_unlink_urb - usb_hcd_giveback_urb - usb_hc_died - usb_hcd_link_urb_to_ep - usb_hcd_poll_rh_status - usb_hcd_resume_root_hub - usb_hcds_loaded - usb_hcd_unlink_urb_from_ep - usb_root_hub_lost_power - -# required by ohci-pci.ko - pci_dev_put - pci_get_slot - pci_match_id - usb_amd_prefetch_quirk - usb_amd_quirk_pll_check - usb_hcd_pci_pm_ops - usb_hcd_pci_probe - usb_hcd_pci_remove - usb_hcd_pci_shutdown - -# required by ohci-platform.ko - devm_reset_control_array_get - of_clk_get - usb_add_hcd - usb_create_hcd - usb_hcd_platform_shutdown - usb_put_hcd - usb_remove_hcd - -# required by pdr_interface.ko - strnlen - -# required by phy-qcom-qmp.ko - of_clk_get_by_name - __of_reset_control_get - -# required by phy-qcom-qusb2.ko - devm_nvmem_cell_get - -# required by phy-qcom-usb-hs.ko - extcon_get_edev_by_phandle - extcon_get_state - extcon_register_notifier - extcon_unregister_notifier - -# required by pinctrl-msm.ko - device_property_read_u16_array - gpiochip_line_is_valid - gpiochip_lock_as_irq - gpiochip_unlock_as_irq - handle_bad_irq - handle_fasteoi_ack_irq - handle_fasteoi_irq - irq_get_irq_data - module_put - pinctrl_force_default - pinctrl_force_sleep - pm_power_off - register_restart_handler - try_module_get - unregister_restart_handler - -# required by pinctrl-spmi-gpio.ko - gpiochip_populate_parent_fwspec_fourcell - irq_chip_ack_parent - -# required by pinctrl-spmi-mpp.ko - platform_irq_count - -# required by pm8941-pwrkey.ko - devm_input_allocate_device - input_event - input_register_device - input_set_capability - -# required by q6asm-dai.ko - snd_dma_alloc_pages - snd_dma_free_pages - snd_pcm_hw_constraint_integer - snd_pcm_hw_constraint_list - snd_pcm_hw_constraint_minmax - snd_pcm_hw_constraint_step - snd_pcm_period_elapsed - snd_soc_new_compress - snd_soc_set_runtime_hwparams - -# required by qcom-apcs-ipc-mailbox.ko - devm_mbox_controller_register - -# required by qcom-cpufreq-hw.ko - cpufreq_cpu_get_raw - cpufreq_freq_attr_scaling_available_freqs - cpufreq_freq_attr_scaling_boost_freqs - cpufreq_generic_frequency_table_verify - cpufreq_get_driver_data - cpufreq_register_driver - cpufreq_unregister_driver - dev_pm_opp_adjust_voltage - dev_pm_opp_disable - dev_pm_opp_enable - dev_pm_opp_of_cpumask_remove_table - dev_pm_opp_of_register_em - dev_pm_opp_remove_all_dynamic - dev_pm_opp_set_sharing_cpus - get_cpu_device - of_get_cpu_node - -# required by qcom-geni-se.ko - icc_set_tag - -# required by qcom-pdc.ko - irq_chip_get_parent_state - irq_chip_retrigger_hierarchy - irq_domain_alloc_irqs_parent - irq_domain_create_hierarchy - irq_domain_set_hwirq_and_chip - irq_domain_update_bus_token - -# required by qcom-rpmh-regulator.ko - regulator_list_voltage_linear_range - -# required by qcom-scm.ko - __arm_smccc_smc - __cpu_present_mask - kimage_voffset - -# required by qcom-spmi-pmic.ko - __spmi_driver_register - -# required by qcom_aoss.ko - devm_thermal_of_cooling_device_register - pm_genpd_remove - -# required by qcom_common.ko - rproc_coredump_add_segment - srcu_init_notifier_head - srcu_notifier_call_chain - srcu_notifier_chain_register - srcu_notifier_chain_unregister - -# required by qcom_geni_serial.ko - dev_pm_clear_wake_irq - dev_pm_set_dedicated_wake_irq - oops_in_progress - tty_insert_flip_string_fixed_flag - uart_console_device - uart_console_write - uart_parse_options - uart_set_options - -# required by qcom_glink.ko - device_add_groups - -# required by qcom_hwspinlock.ko - devm_hwspin_lock_register - -# required by qcom_pil_info.ko - __memset_io - of_find_compatible_node - -# required by qcom_q6v5.ko - qcom_smem_state_get - qcom_smem_state_update_bits - rproc_report_crash - -# required by qcom_q6v5_mss.ko - rproc_coredump_add_custom_segment - -# required by qcom_q6v5_wcss.ko - rproc_elf_get_boot_addr - -# required by qcom_rpmh.ko - bitmap_find_next_zero_area_off - __bitmap_set - cpu_pm_register_notifier - __num_online_cpus - -# required by qcom_spmi-regulator.ko - regulator_disable_regmap - regulator_enable_regmap - regulator_is_enabled_regmap - smp_call_function_single - -# required by qcom_sysmon.ko - rproc_get_by_child - try_wait_for_completion - -# required by qcom_tsens.ko - debugfs_lookup - devm_thermal_zone_of_sensor_register - thermal_zone_device_update - thermal_zone_get_slope - -# required by qrtr-tun.ko - _copy_to_iter - -# required by qrtr.ko - autoremove_wake_function - datagram_poll - do_wait_intr_irq - idr_alloc_u32 - lock_sock_nested - proto_register - proto_unregister - radix_tree_iter_delete - _raw_write_lock_bh - _raw_write_unlock_bh - refcount_dec_and_mutex_lock - release_sock - sk_alloc - skb_copy_datagram_iter - skb_free_datagram - __skb_pad - skb_recv_datagram - skb_set_owner_w - sk_free - sock_alloc_send_skb - sock_gettstamp - sock_init_data - sock_no_accept - sock_no_listen - sock_no_mmap - sock_no_sendpage - sock_no_shutdown - sock_no_socketpair - sock_queue_rcv_skb - sock_register - sock_unregister - -# required by reboot-mode.ko - devres_add - devres_alloc_node - devres_free - devres_release - -# required by regmap-spmi.ko - spmi_ext_register_read - spmi_ext_register_readl - spmi_ext_register_write - spmi_ext_register_writel - spmi_register_read - spmi_register_write - spmi_register_zero_write - -# required by rmtfs_mem.ko - alloc_chrdev_region - -# required by rtc-pm8xxx.ko - devm_request_any_context_irq - devm_rtc_allocate_device - __rtc_register_device - rtc_time64_to_tm - rtc_tm_to_time64 - rtc_update_irq - -# required by sdhci-msm.ko - mmc_of_parse - mmc_regulator_get_supply - mmc_regulator_set_ocr - mmc_regulator_set_vqmmc - mmc_send_tuning - regulator_is_supported_voltage - __sdhci_add_host - sdhci_add_host - sdhci_cleanup_host - sdhci_cqe_disable - sdhci_cqe_enable - sdhci_cqe_irq - sdhci_enable_clk - sdhci_get_property - sdhci_pltfm_free - sdhci_pltfm_init - sdhci_remove_host - sdhci_reset - sdhci_set_bus_width - sdhci_set_power_noreg - sdhci_setup_host - -# required by slim-qcom-ngd-ctrl.ko - platform_device_add - platform_device_alloc - -# required by smem.ko - hwspin_lock_free - hwspin_lock_request_specific - __hwspin_lock_timeout - __hwspin_unlock - of_hwspin_lock_get_id - -# required by snd-soc-hdmi-codec.ko - snd_ctl_add - snd_ctl_new1 - snd_pcm_add_chmap_ctls - snd_pcm_create_iec958_consumer_hw_params - snd_pcm_hw_constraint_eld - -# required by snd-soc-qcom-common.ko - snd_soc_dai_link_set_capabilities - snd_soc_of_get_dai_link_codecs - snd_soc_of_get_dai_name - snd_soc_of_parse_audio_routing - snd_soc_of_parse_aux_devs - snd_soc_of_parse_card_name - -# required by snd-soc-rt5663.ko - regcache_cache_bypass - snd_soc_add_component_controls - snd_soc_dapm_disable_pin - snd_soc_dapm_force_enable_pin - snd_soc_dapm_new_controls - snd_soc_dapm_sync - -# required by snd-soc-sdm845.ko - devm_snd_soc_register_card - snd_jack_set_key - snd_soc_card_jack_new - snd_soc_component_set_jack - snd_soc_dai_get_channel_map - snd_soc_dai_set_channel_map - snd_soc_dai_set_fmt - snd_soc_dai_set_sysclk - snd_soc_dai_set_tdm_slot - -# required by snd-soc-wcd9335.ko - kmemdup_nul - snd_soc_get_volsw_sx - snd_soc_info_volsw_sx - snd_soc_put_volsw_sx - strnstr - -# required by snd-soc-wcd934x.ko - kstrndup - of_clk_add_provider - of_clk_src_simple_get - -# required by socinfo.ko - add_device_randomness - soc_device_register - soc_device_unregister - -# required by soundwire-bus.ko - device_get_named_child_node - devm_device_add_group - devm_device_add_groups - dev_pm_domain_attach - fwnode_property_present - fwnode_property_read_u32_array - pm_generic_runtime_resume - pm_generic_runtime_suspend - -# required by spi-pl022.ko - amba_driver_register - amba_driver_unregister - amba_release_regions - amba_request_regions - devm_gpio_request - __dma_request_channel - loops_per_jiffy - pinctrl_pm_select_idle_state - spi_delay_exec - spi_finalize_current_message - spi_get_next_queued_message - -# required by spmi-pmic-arb.ko - irq_domain_set_info - spmi_controller_add - spmi_controller_alloc - spmi_controller_remove - -# required by system_heap.ko - deferred_free - dmabuf_page_pool_alloc - dmabuf_page_pool_create - dmabuf_page_pool_destroy - dmabuf_page_pool_free - dma_heap_add - dma_heap_get_dev - dma_heap_get_name - dma_sync_sg_for_cpu - dma_sync_sg_for_device - __free_pages - __sg_page_iter_next - -# required by ufs_qcom.ko - phy_set_mode_ext - ufshcd_dme_get_attr - ufshcd_dme_set_attr - ufshcd_dump_regs - ufshcd_get_local_unipro_ver - ufshcd_get_pwr_dev_param - ufshcd_pltfrm_init - ufshcd_pltfrm_resume - ufshcd_pltfrm_runtime_idle - ufshcd_pltfrm_runtime_resume - ufshcd_pltfrm_runtime_suspend - ufshcd_pltfrm_shutdown - ufshcd_pltfrm_suspend - ufshcd_remove - ufshcd_uic_hibern8_enter - ufshcd_uic_hibern8_exit - -# required by ulpi.ko - of_device_modalias - of_device_request_module - __request_module - -# required by wcd934x.ko - mfd_add_devices - mfd_remove_devices diff --git a/android/abi_gki_aarch64_exynos b/android/abi_gki_aarch64_exynos deleted file mode 100644 index 4c256e8b751d..000000000000 --- a/android/abi_gki_aarch64_exynos +++ /dev/null @@ -1,2212 +0,0 @@ -[abi_symbol_list] - activate_task - add_cpu - add_timer - add_timer_on - add_uevent_var - add_wait_queue - adjust_managed_page_count - alarm_cancel - alarm_init - alarm_start - alarm_start_relative - alloc_anon_inode - alloc_chrdev_region - __alloc_disk_node - alloc_etherdev_mqs - alloc_netdev_mqs - __alloc_pages_nodemask - __alloc_percpu - __alloc_skb - alloc_workqueue - amba_driver_register - amba_driver_unregister - android_debug_symbol - android_rvh_probe_register - anon_inode_getfd - anon_inode_getfile - __arch_clear_user - __arch_copy_from_user - __arch_copy_in_user - __arch_copy_to_user - argv_free - argv_split - arm64_const_caps_ready - arm64_use_ng_mappings - __arm_smccc_hvc - __arm_smccc_smc - atomic_notifier_call_chain - atomic_notifier_chain_register - atomic_notifier_chain_unregister - autoremove_wake_function - available_idle_cpu - backlight_device_register - backlight_device_unregister - bcmp - bdget_disk - bdput - bio_endio - __bitmap_andnot - __bitmap_clear - __bitmap_complement - __bitmap_or - bitmap_parse - bitmap_parselist - bitmap_print_to_pagebuf - __bitmap_set - bitmap_to_arr32 - __bitmap_weight - __bitmap_xor - blk_alloc_queue - blk_cleanup_queue - blkdev_get_by_path - blkdev_put - blk_ksm_init - blk_queue_flag_clear - blk_queue_flag_set - blk_queue_io_min - blk_queue_io_opt - blk_queue_logical_block_size - blk_queue_max_discard_sectors - blk_queue_max_write_zeroes_sectors - blk_queue_physical_block_size - blocking_notifier_call_chain - blocking_notifier_chain_register - blocking_notifier_chain_unregister - bpf_trace_run10 - bpf_trace_run12 - bpf_trace_run1 - bpf_trace_run2 - bpf_trace_run3 - bpf_trace_run4 - bpf_trace_run5 - bpf_trace_run6 - bpf_trace_run7 - bpf_trace_run8 - bpf_trace_run9 - build_skb - bus_find_device - bus_for_each_dev - bus_register - bus_register_notifier - bus_set_iommu - bus_unregister - bus_unregister_notifier - cache_line_size - call_rcu - cancel_delayed_work - cancel_delayed_work_sync - cancel_work_sync - capable - cdev_add - cdev_alloc - cdev_del - cdev_device_add - cdev_device_del - cdev_init - __cfi_slowpath - cgroup_taskset_first - cgroup_taskset_next - __check_object_size - check_preempt_curr - __class_create - class_create_file_ns - class_destroy - class_find_device - __class_register - class_unregister - clear_page - __ClearPageMovable - clk_disable - clk_enable - clk_get - __clk_get_hw - __clk_get_name - clk_get_rate - clk_hw_get_name - clk_hw_get_parent - clk_hw_get_rate - __clk_hw_register_divider - __clk_hw_register_gate - __clk_hw_register_mux - clk_hw_unregister_divider - clk_hw_unregister_gate - clk_hw_unregister_mux - __clk_is_enabled - clk_prepare - clk_put - clk_register - clk_register_clkdev - clk_register_fixed_factor - clk_register_fixed_rate - clk_register_gate - clk_set_parent - clk_set_rate - clk_unprepare - clockevents_config_and_register - __clocksource_register_scale - __close_fd - cma_alloc - cma_release - compat_alloc_user_space - complete - complete_all - complete_and_exit - completion_done - component_add - component_bind_all - component_del - component_master_add_with_match - component_master_del - component_match_add_release - component_unbind_all - config_ep_by_speed - config_group_init_type_name - console_lock - console_printk - console_stop - console_suspend_enabled - console_trylock - console_unlock - __const_udelay - consume_skb - contig_page_data - __cpu_active_mask - cpu_all_bits - cpu_bit_bitmap - cpufreq_add_update_util_hook - cpufreq_cpu_get - cpufreq_cpu_get_raw - cpufreq_cpu_put - cpufreq_disable_fast_switch - cpufreq_driver_fast_switch - cpufreq_driver_resolve_freq - __cpufreq_driver_target - cpufreq_enable_fast_switch - cpufreq_freq_transition_begin - cpufreq_freq_transition_end - cpufreq_frequency_table_get_index - cpufreq_frequency_table_verify - cpufreq_generic_attr - cpufreq_get_policy - cpufreq_quick_get - cpufreq_quick_get_max - cpufreq_register_driver - cpufreq_register_governor - cpufreq_register_notifier - cpufreq_remove_update_util_hook - cpufreq_table_index_unsorted - cpufreq_this_cpu_can_update - cpufreq_unregister_notifier - __cpuhp_remove_state - __cpuhp_setup_state - __cpuhp_setup_state_cpuslocked - __cpuhp_state_add_instance - __cpuhp_state_remove_instance - cpuhp_tasks_frozen - cpu_hwcap_keys - cpu_hwcaps - cpuidle_get_cpu_driver - cpumask_next - cpumask_next_and - cpu_number - __cpu_online_mask - cpu_pm_register_notifier - __cpu_possible_mask - cpu_scale - cpus_read_lock - cpus_read_unlock - cpu_subsys - cpu_topology - crc32_le - crypto_alloc_base - crypto_alloc_shash - crypto_comp_compress - crypto_comp_decompress - crypto_destroy_tfm - crypto_has_alg - __crypto_memneq - crypto_register_alg - crypto_register_scomp - crypto_shash_digest - crypto_shash_final - crypto_shash_update - crypto_unregister_alg - crypto_unregister_scomp - csum_partial - csum_tcpudp_nofold - _ctype - dapm_pinctrl_event - dapm_regulator_event - deactivate_task - debugfs_create_bool - debugfs_create_dir - debugfs_create_file - debugfs_create_symlink - debugfs_create_u32 - debugfs_create_x32 - debugfs_create_x64 - debugfs_remove - dec_zone_page_state - default_llseek - default_wake_function - deferred_free - delayed_work_timer_fn - del_gendisk - del_timer - del_timer_sync - destroy_workqueue - dev_alloc_name - dev_close - _dev_crit - dev_driver_string - _dev_emerg - _dev_err - dev_err_probe - devfreq_add_device - devfreq_add_governor - devfreq_get_devfreq_by_phandle - devfreq_monitor_resume - devfreq_monitor_start - devfreq_monitor_stop - devfreq_monitor_suspend - devfreq_recommended_opp - devfreq_register_opp_notifier - devfreq_remove_device - devfreq_remove_governor - devfreq_resume_device - devfreq_suspend_device - devfreq_unregister_opp_notifier - devfreq_update_interval - dev_get_by_name - dev_get_regmap - device_add - device_add_disk - device_create - device_create_bin_file - device_create_file - device_del - device_destroy - device_for_each_child - device_get_dma_attr - device_initialize - device_init_wakeup - device_link_add - device_link_del - device_property_present - device_property_read_string_array - device_property_read_u32_array - device_register - device_remove_file - device_set_wakeup_capable - device_set_wakeup_enable - device_show_bool - device_show_int - device_store_bool - device_store_int - device_unregister - device_wakeup_enable - _dev_info - __dev_kfree_skb_any - devm_add_action - devm_backlight_device_register - devm_backlight_device_unregister - devm_clk_get - devm_clk_get_optional - devm_clk_put - devm_devfreq_register_notifier - devm_devfreq_unregister_notifier - __devm_drm_dev_alloc - devm_drm_panel_bridge_add_typed - devm_extcon_dev_allocate - devm_extcon_dev_register - devm_free_irq - devm_gen_pool_create - devm_gpiochip_add_data_with_key - devm_gpiod_get - devm_gpiod_get_optional - devm_gpio_request - devm_gpio_request_one - devm_hwrng_register - devm_i2c_new_dummy_device - devm_iio_device_alloc - __devm_iio_device_register - devm_input_allocate_device - devm_ioremap - devm_ioremap_resource - devm_iounmap - __devm_irq_alloc_descs - devm_kasprintf - devm_kfree - devm_kmalloc - devm_kmemdup - devm_krealloc - devm_kstrdup - devm_kstrdup_const - devm_led_classdev_register_ext - devm_mfd_add_devices - __devm_of_phy_provider_register - devm_phy_create - devm_phy_get - devm_phy_put - devm_pinctrl_get - devm_pinctrl_put - devm_pinctrl_register - devm_platform_get_and_ioremap_resource - devm_platform_ioremap_resource - devm_platform_ioremap_resource_byname - __devm_regmap_init - __devm_regmap_init_i2c - __devm_regmap_init_mmio_clk - devm_regulator_bulk_get - devm_regulator_get - devm_regulator_get_optional - devm_regulator_register - __devm_release_region - __devm_request_region - devm_request_threaded_irq - __devm_reset_control_get - devm_rtc_allocate_device - devm_rtc_device_register - devm_snd_dmaengine_pcm_register - devm_snd_soc_register_card - devm_snd_soc_register_component - devm_thermal_zone_of_sensor_register - devm_usb_get_phy_by_phandle - _dev_notice - dev_pm_opp_add - dev_pm_opp_disable - dev_pm_opp_find_freq_ceil - dev_pm_opp_find_freq_exact - dev_pm_opp_find_freq_floor - dev_pm_opp_get_freq - dev_pm_opp_get_opp_count - dev_pm_opp_get_voltage - dev_pm_opp_of_add_table - dev_pm_opp_of_register_em - dev_pm_opp_of_remove_table - dev_pm_opp_put - dev_pm_opp_put_regulators - dev_pm_opp_set_regulators - dev_pm_qos_add_request - dev_pm_qos_read_value - dev_pm_qos_remove_request - dev_pm_qos_update_request - dev_printk - dev_queue_xmit - devres_add - devres_alloc_node - devres_free - devres_release - dev_set_name - dev_vprintk_emit - _dev_warn - disable_irq - disable_irq_nosync - disable_percpu_irq - disk_end_io_acct - disk_start_io_acct - dma_alloc_attrs - dma_async_device_register - dma_async_device_unregister - dma_async_tx_descriptor_init - dma_buf_attach - dma_buf_begin_cpu_access - dma_buf_begin_cpu_access_partial - dma_buf_detach - dma_buf_dynamic_attach - dma_buf_end_cpu_access - dma_buf_end_cpu_access_partial - dma_buf_export - dma_buf_fd - dma_buf_get - dma_buf_map_attachment - dma_buf_mmap - dma_buf_move_notify - dmabuf_page_pool_alloc - dmabuf_page_pool_create - dmabuf_page_pool_destroy - dmabuf_page_pool_free - dma_buf_pin - dma_buf_put - dma_buf_unmap_attachment - dma_buf_unpin - dma_buf_vmap - dma_buf_vunmap - dmaengine_unmap_put - dma_fence_add_callback - dma_fence_array_create - dma_fence_context_alloc - dma_fence_default_wait - dma_fence_get_status - dma_fence_get_stub - dma_fence_init - dma_fence_release - dma_fence_remove_callback - dma_fence_signal - dma_fence_wait_any_timeout - dma_fence_wait_timeout - dma_free_attrs - dma_get_required_mask - dma_get_slave_caps - dma_get_slave_channel - dma_heap_add - dma_heap_buffer_alloc - dma_heap_buffer_free - dma_heap_find - dma_heap_get_dev - dma_heap_get_drvdata - dma_heap_get_name - dma_heap_put - dmam_alloc_attrs - dma_map_page_attrs - dma_map_resource - dma_map_sg_attrs - dmam_free_coherent - dma_mmap_attrs - dma_pool_alloc - dma_pool_free - dma_release_channel - dma_request_chan - dma_resv_add_excl_fence - dma_resv_add_shared_fence - dma_resv_get_fences_rcu - dma_resv_reserve_shared - dma_resv_test_signaled_rcu - dma_resv_wait_timeout_rcu - dma_set_coherent_mask - dma_set_mask - dma_sync_sg_for_cpu - dma_sync_sg_for_device - dma_sync_single_for_cpu - dma_sync_single_for_device - dma_unmap_page_attrs - dma_unmap_resource - dma_unmap_sg_attrs - do_SAK - do_wait_intr - down - downgrade_write - down_interruptible - down_read - down_read_killable - down_read_trylock - down_trylock - down_write - d_path - drain_workqueue - driver_register - driver_unregister - drm_add_edid_modes - drm_atomic_add_affected_connectors - drm_atomic_add_affected_planes - drm_atomic_commit - drm_atomic_get_crtc_state - drm_atomic_get_plane_state - drm_atomic_get_private_obj_state - drm_atomic_helper_check_modeset - drm_atomic_helper_check_planes - drm_atomic_helper_check_plane_state - drm_atomic_helper_cleanup_planes - drm_atomic_helper_commit_cleanup_done - drm_atomic_helper_commit_duplicated_state - drm_atomic_helper_commit_hw_done - drm_atomic_helper_commit_modeset_disables - drm_atomic_helper_commit_modeset_enables - drm_atomic_helper_commit_planes - drm_atomic_helper_commit_tail - __drm_atomic_helper_connector_destroy_state - drm_atomic_helper_connector_destroy_state - __drm_atomic_helper_connector_duplicate_state - drm_atomic_helper_connector_duplicate_state - drm_atomic_helper_connector_reset - __drm_atomic_helper_crtc_destroy_state - __drm_atomic_helper_crtc_duplicate_state - drm_atomic_helper_disable_plane - drm_atomic_helper_disable_planes_on_crtc - drm_atomic_helper_duplicate_state - drm_atomic_helper_fake_vblank - drm_atomic_helper_page_flip - __drm_atomic_helper_plane_destroy_state - __drm_atomic_helper_plane_duplicate_state - drm_atomic_helper_prepare_planes - __drm_atomic_helper_private_obj_duplicate_state - drm_atomic_helper_set_config - drm_atomic_helper_setup_commit - drm_atomic_helper_swap_state - drm_atomic_helper_update_plane - drm_atomic_helper_wait_for_dependencies - drm_atomic_helper_wait_for_fences - drm_atomic_normalize_zpos - drm_atomic_private_obj_fini - drm_atomic_private_obj_init - drm_atomic_set_crtc_for_plane - drm_atomic_set_fb_for_plane - drm_atomic_set_mode_for_crtc - drm_atomic_state_alloc - __drm_atomic_state_free - drm_bridge_add - drm_bridge_attach - drm_bridge_chain_mode_set - drm_bridge_remove - drm_compat_ioctl - drm_connector_attach_dp_subconnector_property - drm_connector_attach_encoder - drm_connector_cleanup - drm_connector_init - drm_connector_init_with_ddc - drm_connector_list_iter_begin - drm_connector_list_iter_end - drm_connector_list_iter_next - drm_connector_register - drm_connector_unregister - drm_connector_update_edid_property - drm_crtc_arm_vblank_event - drm_crtc_cleanup - drm_crtc_enable_color_mgmt - drm_crtc_handle_vblank - drm_crtc_helper_set_config - drm_crtc_helper_set_mode - drm_crtc_init - drm_crtc_init_with_planes - drm_crtc_send_vblank_event - drm_crtc_vblank_count - drm_crtc_vblank_get - drm_crtc_vblank_helper_get_vblank_timestamp - drm_crtc_vblank_off - drm_crtc_vblank_on - drm_crtc_vblank_put - drm_cvt_mode - __drm_dbg - __drm_debug - drm_debugfs_create_files - drm_detect_hdmi_monitor - drm_dev_alloc - drm_dev_dbg - drm_dev_printk - drm_dev_put - drm_dev_register - drm_dev_unregister - drm_display_mode_to_videomode - drm_dp_aux_init - drm_dp_aux_register - drm_dp_aux_unregister - drm_dp_bw_code_to_link_rate - drm_dp_channel_eq_ok - drm_dp_clock_recovery_ok - drm_dp_dpcd_read - drm_dp_dpcd_read_link_status - drm_dp_dpcd_write - drm_dp_get_adjust_request_pre_emphasis - drm_dp_get_adjust_request_voltage - drm_dp_link_rate_to_bw_code - drm_dp_link_train_channel_eq_delay - drm_dp_link_train_clock_recovery_delay - drm_dp_set_subconnector_property - drm_edid_header_is_valid - drm_edid_is_valid - drm_edid_to_sad - drm_edid_to_speaker_allocation - drm_encoder_cleanup - drm_encoder_init - __drm_err - drm_format_info - drm_framebuffer_cleanup - drm_framebuffer_init - drm_framebuffer_unregister_private - drm_gem_create_mmap_offset - drm_gem_dmabuf_mmap - drm_gem_dmabuf_release - drm_gem_dmabuf_vmap - drm_gem_dmabuf_vunmap - drm_gem_fb_create_handle - drm_gem_fb_destroy - drm_gem_handle_create - drm_gem_mmap - drm_gem_object_free - drm_gem_object_lookup - drm_gem_object_release - drm_gem_prime_export - drm_gem_prime_fd_to_handle - drm_gem_prime_handle_to_fd - drm_gem_prime_import_dev - drm_gem_private_object_init - drm_gem_vm_close - drm_gem_vm_open - drm_get_edid - drm_get_format_info - drm_get_format_name - drm_handle_vblank - drm_hdmi_avi_infoframe_from_display_mode - drm_helper_connector_dpms - drm_helper_disable_unused_functions - drm_helper_force_disable_all - drm_helper_hpd_irq_event - drm_helper_mode_fill_fb_struct - drm_helper_probe_single_connector_modes - drm_helper_resume_force_mode - drm_ioctl - drm_irq_install - drm_irq_uninstall - drm_is_current_master - drm_kms_helper_hotplug_event - drm_kms_helper_is_poll_worker - drm_kms_helper_poll_disable - drm_kms_helper_poll_enable - drm_kms_helper_poll_fini - drm_kms_helper_poll_init - drm_mm_init - drm_mm_insert_node_in_range - drmm_mode_config_init - drm_mm_print - drm_mm_remove_node - drm_mm_takedown - drm_mode_config_cleanup - drm_mode_config_reset - drm_mode_convert_to_umode - drm_mode_copy - drm_mode_create_scaling_mode_property - drm_mode_crtc_set_gamma_size - drm_mode_duplicate - drm_mode_equal - drm_mode_match - drm_mode_probed_add - drm_modeset_acquire_fini - drm_modeset_acquire_init - drm_modeset_backoff - drm_mode_set_crtcinfo - drm_modeset_drop_locks - drm_modeset_lock - drm_modeset_lock_all - drm_modeset_lock_all_ctx - drm_mode_set_name - drm_modeset_unlock - drm_modeset_unlock_all - drm_mode_vrefresh - drm_need_swiotlb - drm_object_attach_property - drm_open - drm_panel_add - drm_panel_disable - drm_panel_enable - drm_panel_get_modes - drm_panel_init - drm_panel_prepare - drm_panel_remove - drm_panel_unprepare - drm_plane_cleanup - drm_plane_create_alpha_property - drm_plane_create_blend_mode_property - drm_plane_create_rotation_property - drm_plane_create_zpos_property - drm_poll - drm_prime_gem_destroy - drm_prime_pages_to_sg - drm_prime_sg_to_page_addr_arrays - drm_printf - __drm_printfn_info - __drm_printfn_seq_file - drm_property_blob_get - drm_property_blob_put - drm_property_create - drm_property_create_bitmask - drm_property_create_blob - drm_property_create_bool - drm_property_create_enum - drm_property_create_range - drm_property_create_signed_range - drm_property_lookup_blob - drm_property_replace_blob - __drm_puts_seq_file - drm_read - drm_rect_clip_scaled - drm_rect_intersect - drm_release - drm_rotation_simplify - drm_syncobj_add_point - drm_syncobj_create - drm_syncobj_find - drm_syncobj_find_fence - drm_syncobj_free - drm_syncobj_get_fd - drm_syncobj_get_handle - drm_syncobj_replace_fence - drm_universal_plane_init - drm_vblank_init - drm_vma_node_allow - drm_vma_node_is_allowed - drm_vma_node_revoke - drm_writeback_connector_init - drm_writeback_queue_job - drm_writeback_signal_completion - dump_backtrace - dump_stack - dw_handle_msi_irq - dw_pcie_host_init - dw_pcie_msi_init - dw_pcie_own_conf_map_bus - dw_pcie_read - dw_pcie_setup_rc - dw_pcie_write - emergency_restart - enable_irq - enable_percpu_irq - end_buffer_read_sync - ether_setup - eth_type_trans - event_triggers_call - extcon_get_state - extcon_set_state_sync - fb_mode_option - __fdget - fd_install - find_get_pid - find_last_bit - find_next_bit - find_next_zero_bit - find_vma - find_vpid - finish_wait - firmware_request_nowarn - flush_dcache_page - flush_delayed_work - flush_work - flush_workqueue - fput - frame_vector_to_pages - free_irq - free_netdev - __free_pages - free_pages - free_percpu - free_percpu_irq - freezing_slow_path - freq_qos_add_request - freq_qos_remove_request - freq_qos_update_request - freq_scale - fsync_bdev - gcd - generic_file_llseek - generic_handle_irq - genlmsg_multicast_allns - genlmsg_put - genl_register_family - genl_unregister_family - gen_pool_add_owner - gen_pool_alloc_algo_owner - gen_pool_avail - gen_pool_create - gen_pool_destroy - gen_pool_first_fit_align - gen_pool_free_owner - gen_pool_has_addr - gen_pool_size - __getblk_gfp - get_cpu_device - get_cpu_idle_time - get_device - __get_free_pages - get_random_bytes - get_random_u32 - __get_task_comm - get_task_exe_file - get_task_mm - get_thermal_instance - get_unused_fd_flags - get_user_pages - get_user_pages_fast - get_zeroed_page - gic_nonsecure_priorities - gpiochip_add_data_with_key - gpiochip_add_pin_range - gpiochip_generic_free - gpiochip_generic_request - gpiochip_get_data - gpiochip_lock_as_irq - gpiochip_remove - gpiochip_unlock_as_irq - gpiod_direction_input - gpiod_direction_output_raw - gpiod_get_raw_value - gpiod_get_raw_value_cansleep - gpiod_set_raw_value - gpiod_set_value - gpiod_set_value_cansleep - gpiod_to_irq - gpio_free - gpio_request - gpio_request_one - gpio_to_desc - gserial_alloc_line - gserial_connect - gserial_disconnect - handle_edge_irq - handle_level_irq - handle_nested_irq - handle_simple_irq - handle_sysrq - hdmi_avi_infoframe_pack - hex_dump_to_buffer - hmm_range_fault - housekeeping_cpumask - hrtimer_active - hrtimer_cancel - hrtimer_forward - hrtimer_init - hrtimer_start_range_ns - i2c_adapter_type - i2c_add_adapter - i2c_add_numbered_adapter - i2c_bit_add_bus - i2c_bus_type - i2c_clients_command - i2c_del_adapter - i2c_del_driver - i2c_for_each_dev - i2c_get_adapter - i2c_new_client_device - i2c_new_dummy_device - i2c_put_adapter - i2c_register_driver - i2c_smbus_read_byte_data - i2c_smbus_read_i2c_block_data - i2c_smbus_read_word_data - i2c_smbus_write_byte_data - i2c_smbus_write_i2c_block_data - i2c_smbus_write_word_data - i2c_smbus_xfer - __i2c_transfer - i2c_transfer - i2c_transfer_buffer_flags - i2c_unregister_device - i2c_verify_client - ida_alloc_range - ida_destroy - ida_free - idr_alloc - idr_destroy - idr_find - idr_for_each - idr_get_next - idr_remove - idr_replace - ignore_console_lock_warning - iio_channel_get - iio_channel_release - iio_device_alloc - iio_device_free - __iio_device_register - iio_device_unregister - iio_read_channel_processed - inc_zone_page_state - init_dummy_netdev - init_net - init_pseudo - __init_rwsem - __init_swait_queue_head - init_task - init_timer_key - init_wait_entry - __init_waitqueue_head - input_allocate_device - input_close_device - input_event - input_free_device - input_mt_destroy_slots - input_mt_init_slots - input_mt_report_slot_state - input_open_device - input_register_device - input_register_handle - input_register_handler - input_set_abs_params - input_set_capability - input_unregister_device - input_unregister_handle - int_sqrt - iomem_resource - iommu_alloc_resv_region - iommu_attach_group - iommu_device_register - iommu_device_sysfs_add - iommu_device_sysfs_remove - iommu_device_unlink - iommu_device_unregister - iommu_dma_reserve_iova - iommu_domain_alloc - iommu_fwspec_add_ids - iommu_fwspec_free - iommu_get_dma_cookie - iommu_get_domain_for_dev - iommu_group_alloc - iommu_group_for_each_dev - iommu_group_get - iommu_group_get_iommudata - iommu_group_set_iommudata - iommu_group_set_name - iommu_iova_to_phys - iommu_map - iommu_map_sg - iommu_put_dma_cookie - iommu_register_device_fault_handler - iommu_report_device_fault - iommu_unmap - iommu_unregister_device_fault_handler - __ioread32_copy - __ioremap - iounmap - __iowrite32_copy - ip_send_check - iput - __irq_alloc_descs - irq_create_mapping_affinity - __irq_domain_add - irq_domain_get_irq_data - irq_domain_remove - irq_domain_set_info - irq_domain_xlate_onetwocell - irq_domain_xlate_twocell - irq_find_mapping - irq_get_irqchip_state - irq_get_irq_data - irq_modify_status - irq_of_parse_and_map - irq_set_affinity_hint - irq_set_chained_handler_and_data - irq_set_chip - irq_set_chip_and_handler_name - irq_set_chip_data - __irq_set_handler - irq_set_handler_data - irq_set_irqchip_state - irq_set_irq_wake - irq_to_desc - irq_work_queue - irq_work_sync - is_console_locked - is_dma_buf_file - is_vmalloc_addr - iterate_fd - jiffies_64_to_clock_t - jiffies64_to_msecs - jiffies - jiffies_to_msecs - jiffies_to_usecs - kasan_flag_enabled - kasprintf - kernel_kobj - kern_mount - kern_unmount - __kfifo_alloc - __kfifo_free - __kfifo_in - __kfifo_init - __kfifo_out - __kfifo_to_user - kfree - kfree_const - kfree_sensitive - kfree_skb - kfree_skb_list - kill_anon_super - kimage_voffset - __kmalloc - kmalloc_caches - kmalloc_order_trace - kmem_cache_alloc - kmem_cache_alloc_trace - kmem_cache_create - kmem_cache_destroy - kmem_cache_free - kmemdup - kobject_add - kobject_create_and_add - kobject_get - kobject_init - kobject_init_and_add - kobject_put - kobject_uevent - kobject_uevent_env - krealloc - kstat - kstrdup - kstrndup - kstrtobool - kstrtobool_from_user - kstrtoint - kstrtoint_from_user - kstrtol_from_user - kstrtoll - kstrtou16 - kstrtou8 - kstrtouint - kstrtouint_from_user - kstrtoull - kstrtoull_from_user - ksys_sync_helper - kthread_bind - kthread_cancel_delayed_work_sync - kthread_cancel_work_sync - kthread_create_on_node - kthread_delayed_work_timer_fn - kthread_flush_work - kthread_flush_worker - __kthread_init_worker - kthread_mod_delayed_work - kthread_park - kthread_parkme - kthread_queue_work - kthread_should_park - kthread_should_stop - kthread_stop - kthread_unpark - kthread_worker_fn - ktime_get - ktime_get_mono_fast_ns - ktime_get_raw - ktime_get_raw_ts64 - ktime_get_real_seconds - ktime_get_real_ts64 - ktime_get_ts64 - ktime_get_with_offset - kvasprintf - kvfree - kvfree_call_rcu - kvmalloc_node - __list_add_valid - __list_del_entry_valid - list_sort - llist_add_batch - __local_bh_enable_ip - __lock_buffer - __lock_page - __log_post_read_mmio - __log_read_mmio - __log_write_mmio - loops_per_jiffy - lzo1x_1_compress - lzo1x_decompress_safe - lzorle1x_1_compress - media_device_register_entity - media_entity_pads_init - memchr - memcpy - __memcpy_fromio - __memcpy_toio - memdup_user - memmove - memparse - memremap - memset - memset64 - __memset_io - memstart_addr - memunmap - mfd_add_devices - mfd_remove_devices - mipi_dsi_attach - mipi_dsi_compression_mode - mipi_dsi_dcs_read - mipi_dsi_dcs_set_column_address - mipi_dsi_dcs_set_display_brightness - mipi_dsi_dcs_set_page_address - mipi_dsi_dcs_write_buffer - mipi_dsi_detach - mipi_dsi_device_register_full - mipi_dsi_driver_register_full - mipi_dsi_driver_unregister - mipi_dsi_host_register - mipi_dsi_host_unregister - mipi_dsi_picture_parameter_set - misc_deregister - misc_register - mmc_add_host - mmc_alloc_host - mmc_can_gpio_cd - mmc_detect_change - mmc_free_host - mmc_gpio_get_cd - mmc_gpio_get_ro - mmc_of_parse - mmc_regulator_get_supply - mmc_regulator_set_ocr - mmc_regulator_set_vqmmc - mmc_remove_host - mmc_request_done - mmc_wait_for_req - __mmdrop - mmput - mmu_interval_notifier_insert - mmu_interval_notifier_remove - mmu_interval_read_begin - mmu_notifier_synchronize - mod_delayed_work_on - mod_node_page_state - mod_timer - module_layout - module_put - __msecs_to_jiffies - msleep - msleep_interruptible - __mutex_init - mutex_is_locked - mutex_lock - mutex_lock_interruptible - mutex_trylock - mutex_unlock - names_cachep - __napi_alloc_skb - napi_complete_done - napi_disable - napi_gro_flush - napi_gro_receive - __napi_schedule - napi_schedule_prep - __netdev_alloc_skb - netif_carrier_off - netif_carrier_on - netif_napi_add - __netif_napi_del - netif_receive_skb - netif_rx - netif_rx_ni - netif_tx_stop_all_queues - netif_tx_wake_queue - __netlink_kernel_create - netlink_kernel_release - netlink_unicast - nla_append - nla_memcpy - nla_put - nla_put_nohdr - nla_reserve - __nlmsg_put - no_llseek - nonseekable_open - noop_llseek - nr_cpu_ids - nr_irqs - nsecs_to_jiffies - ns_to_kernel_old_timeval - ns_to_timespec64 - __num_online_cpus - of_address_to_resource - of_alias_get_highest_id - of_alias_get_id - of_clk_add_hw_provider - of_clk_add_provider - of_clk_del_provider - of_clk_get - of_clk_get_by_name - of_clk_hw_onecell_get - of_clk_src_onecell_get - of_count_phandle_with_args - of_cpu_node_to_id - of_device_get_match_data - of_device_is_available - of_device_is_compatible - of_dma_controller_free - of_dma_controller_register - of_drm_find_bridge - of_drm_find_panel - of_find_compatible_node - of_find_device_by_node - of_find_matching_node_and_match - of_find_node_by_name - of_find_node_by_type - of_find_node_opts_by_path - of_find_node_with_property - of_find_property - of_fwnode_ops - of_genpd_add_provider_simple - of_get_child_by_name - of_get_cpu_node - of_get_dma_window - of_get_named_gpio_flags - of_get_next_available_child - of_get_next_child - of_get_property - of_get_regulator_init_data - of_get_videomode - of_i2c_get_board_info - of_iomap - of_irq_get_byname - of_irq_parse_one - of_machine_is_compatible - of_match_device - of_match_node - of_n_addr_cells - of_node_name_eq - of_n_size_cells - of_parse_phandle - of_parse_phandle_with_args - of_parse_phandle_with_fixed_args - of_phandle_iterator_init - of_phandle_iterator_next - of_platform_populate - of_property_count_elems_of_size - of_property_match_string - of_property_read_string - of_property_read_string_helper - of_property_read_u32_index - of_property_read_u64 - of_property_read_variable_u16_array - of_property_read_variable_u32_array - of_property_read_variable_u8_array - of_prop_next_string - of_prop_next_u32 - of_pwm_xlate_with_flags - of_reserved_mem_device_init_by_idx - of_reserved_mem_device_release - of_reserved_mem_lookup - of_root - of_thermal_get_ntrips - of_usb_host_tpl_support - oops_in_progress - orderly_poweroff - page_endio - page_mapping - panic - panic_notifier_list - param_array_ops - param_ops_bool - param_ops_byte - param_ops_charp - param_ops_hexint - param_ops_int - param_ops_long - param_ops_string - param_ops_uint - param_ops_ullong - param_ops_ulong - param_set_uint - pci_alloc_irq_vectors_affinity - pci_assign_resource - pci_assign_unassigned_bus_resources - pci_bus_resource_n - pci_bus_type - pci_clear_master - pci_disable_device - pcie_bandwidth_available - pcie_get_mps - pcie_get_speed_cap - pci_enable_atomic_ops_to_root - pci_enable_device - pci_enable_wake - pci_find_bus - pci_find_capability - pci_find_ext_capability - pci_free_irq_vectors - pci_generic_config_read - pci_generic_config_write - pci_get_device - pci_get_domain_bus_and_slot - pci_iomap - pci_irq_vector - pci_load_and_free_saved_state - pci_load_saved_state - pci_map_rom - pci_msix_vec_count - pci_read_config_dword - pci_read_config_word - __pci_register_driver - pci_release_resource - pci_rescan_bus - pci_resize_resource - pci_restore_state - pci_save_state - pci_set_master - pci_set_power_state - pci_store_saved_state - pci_unmap_rom - pci_unregister_driver - pci_write_config_dword - pci_write_config_word - PDE_DATA - __per_cpu_offset - perf_event_update_userpage - perf_pmu_register - perf_pmu_unregister - perf_trace_buf_alloc - perf_trace_run_bpf_submit - pfn_valid - phy_configure - phy_init - phy_power_off - phy_power_on - phy_reset - pid_task - pinconf_generic_dt_node_to_map - pinctrl_add_gpio_range - pinctrl_dev_get_drvdata - pinctrl_force_sleep - pinctrl_get - pinctrl_lookup_state - pinctrl_pm_select_default_state - pinctrl_pm_select_sleep_state - pinctrl_put - pinctrl_remove_gpio_range - pinctrl_select_state - pinctrl_utils_free_map - pin_get_name - pin_user_pages - pin_user_pages_remote - platform_bus_type - platform_device_add - platform_device_add_properties - platform_device_add_resources - platform_device_alloc - platform_device_del - platform_device_put - platform_device_register - platform_device_register_full - platform_device_unregister - __platform_driver_probe - __platform_driver_register - platform_driver_unregister - platform_find_device_by_driver - platform_get_irq - platform_get_irq_byname - platform_get_resource - platform_get_resource_byname - __platform_register_drivers - pm_genpd_add_subdomain - pm_genpd_init - pm_power_off - __pm_relax - pm_relax - pm_runtime_allow - pm_runtime_autosuspend_expiration - pm_runtime_barrier - __pm_runtime_disable - pm_runtime_enable - pm_runtime_forbid - pm_runtime_force_resume - pm_runtime_force_suspend - pm_runtime_get_if_active - __pm_runtime_idle - pm_runtime_irq_safe - pm_runtime_no_callbacks - __pm_runtime_resume - pm_runtime_set_autosuspend_delay - __pm_runtime_set_status - __pm_runtime_suspend - __pm_runtime_use_autosuspend - __pm_stay_awake - pm_stay_awake - pm_wakeup_dev_event - pm_wakeup_ws_event - power_supply_changed - power_supply_get_by_name - power_supply_get_drvdata - power_supply_get_property - power_supply_is_system_supplied - power_supply_put - power_supply_register - power_supply_set_property - power_supply_unregister - prandom_u32 - preempt_schedule - preempt_schedule_notrace - prepare_to_wait_event - print_hex_dump - printk - __printk_ratelimit - printk_timed_ratelimit - proc_create - proc_create_data - proc_create_seq_private - proc_mkdir - proc_remove - proc_set_size - proc_set_user - proc_symlink - __pskb_copy_fclone - put_device - put_disk - __put_page - put_pid - __put_task_struct - put_unused_fd - pwmchip_add - pwmchip_remove - pwm_get_chip_data - pwm_set_chip_data - queue_delayed_work_on - queue_work_on - radix_tree_tagged - ___ratelimit - raw_notifier_call_chain - raw_notifier_chain_register - raw_notifier_chain_unregister - _raw_read_lock - _raw_read_lock_bh - _raw_read_lock_irqsave - _raw_read_unlock - _raw_read_unlock_bh - _raw_read_unlock_irqrestore - _raw_spin_lock - _raw_spin_lock_bh - _raw_spin_lock_irq - _raw_spin_lock_irqsave - _raw_spin_trylock - _raw_spin_unlock - _raw_spin_unlock_bh - _raw_spin_unlock_irq - _raw_spin_unlock_irqrestore - _raw_write_lock - _raw_write_lock_bh - _raw_write_lock_irqsave - _raw_write_trylock - _raw_write_unlock - _raw_write_unlock_bh - _raw_write_unlock_irqrestore - rb_erase - __rb_erase_color - rb_first - rb_first_postorder - __rb_insert_augmented - rb_insert_color - rb_next - rb_next_postorder - rb_prev - rb_replace_node - rcu_barrier - __rcu_read_lock - __rcu_read_unlock - rdev_get_drvdata - rdev_get_id - reciprocal_value - refcount_warn_saturate - refresh_frequency_limits - __refrigerator - regcache_cache_bypass - regcache_cache_only - regcache_drop_region - regcache_mark_dirty - regcache_sync - register_blkdev - __register_chrdev - register_chrdev_region - register_console - register_die_notifier - register_inet6addr_notifier - register_inetaddr_notifier - register_netdev - register_netdevice - register_netdevice_notifier - register_oom_notifier - register_pm_notifier - register_reboot_notifier - register_restart_handler - register_shrinker - register_syscore_ops - regmap_async_complete - regmap_bulk_read - regmap_bulk_write - regmap_multi_reg_write - regmap_multi_reg_write_bypassed - regmap_raw_read - regmap_raw_write - regmap_raw_write_async - regmap_read - regmap_register_patch - regmap_update_bits_base - regmap_write - regulator_bulk_disable - regulator_bulk_enable - regulator_disable - regulator_enable - regulator_force_disable - regulator_get - regulator_get_optional - regulator_get_voltage - regulator_is_enabled - regulator_list_voltage_linear - regulator_map_voltage_linear - regulator_put - regulator_set_mode - regulator_set_voltage - release_firmware - release_pages - __release_region - remap_pfn_range - remap_vmalloc_range - remove_cpu - remove_proc_entry - remove_wait_queue - request_firmware - request_firmware_direct - request_firmware_into_buf - request_firmware_nowait - __request_module - __request_percpu_irq - __request_region - request_threaded_irq - reset_control_assert - reset_control_deassert - return_address - revalidate_disk_size - rfkill_alloc - rfkill_destroy - rfkill_register - rfkill_unregister - rps_needed - rtc_class_close - rtc_class_open - rtc_read_time - __rtc_register_device - rtc_set_time - rtc_time64_to_tm - rtc_tm_to_time64 - rtc_update_irq - rtc_valid_tm - rtnl_is_locked - rtnl_lock - rtnl_unlock - runqueues - sched_clock - sched_set_fifo_low - sched_set_normal - sched_setscheduler - sched_setscheduler_nocheck - schedule - schedule_timeout - schedule_timeout_interruptible - scnprintf - scsi_block_when_processing_errors - scsi_eh_ready_devs - __scsi_execute - scsi_print_sense_hdr - sdev_prefix_printk - sdio_signal_irq - seq_lseek - seq_open - seq_printf - seq_putc - seq_puts - seq_read - seq_release - seq_write - set_cpus_allowed_ptr - set_normalized_timespec64 - set_page_dirty_lock - __SetPageMovable - set_task_cpu - sg_alloc_table - sg_alloc_table_from_pages - sg_copy_to_buffer - sg_free_table - sg_init_one - sg_init_table - sg_miter_next - sg_miter_start - sg_miter_stop - sg_nents_for_len - sg_next - __sg_page_iter_next - __sg_page_iter_start - si_meminfo - simple_attr_open - simple_attr_read - simple_attr_release - simple_attr_write - simple_open - simple_read_from_buffer - simple_strtol - simple_strtoul - simple_write_to_buffer - single_open - single_open_size - single_release - skb_clone - skb_copy - skb_copy_bits - skb_copy_expand - skb_dequeue - skb_dequeue_tail - skb_pull - skb_push - skb_put - skb_queue_head - skb_queue_purge - skb_queue_tail - skb_realloc_headroom - skb_trim - smp_call_function - smp_call_function_many - smp_call_function_single - smp_call_on_cpu - snd_compr_stop_error - snd_ctl_add - snd_ctl_boolean_mono_info - snd_ctl_new1 - snd_ctl_notify - snd_device_free - snd_dma_alloc_pages - snd_dmaengine_pcm_prepare_slave_config - snd_dma_free_pages - snd_hwdep_new - snd_pcm_format_physical_width - snd_pcm_format_width - snd_pcm_hw_constraint_integer - snd_pcm_hw_constraint_list - snd_pcm_lib_free_pages - snd_pcm_lib_ioctl - snd_pcm_lib_malloc_pages - snd_pcm_lib_preallocate_free_for_all - snd_pcm_lib_preallocate_pages - snd_pcm_period_elapsed - snd_pcm_rate_range_to_bits - snd_soc_add_component_controls - snd_soc_bytes_info_ext - snd_soc_bytes_tlv_callback - snd_soc_card_get_kcontrol - snd_soc_component_async_complete - snd_soc_component_disable_pin - snd_soc_component_force_enable_pin - snd_soc_component_init_regmap - snd_soc_component_read - snd_soc_component_set_pll - snd_soc_component_set_sysclk - snd_soc_component_update_bits - snd_soc_component_update_bits_async - snd_soc_component_write - snd_soc_dai_set_bclk_ratio - snd_soc_dai_set_channel_map - snd_soc_dai_set_sysclk - snd_soc_dai_set_tdm_slot - snd_soc_dapm_add_routes - snd_soc_dapm_disable_pin - snd_soc_dapm_enable_pin - snd_soc_dapm_get_enum_double - snd_soc_dapm_get_pin_status - snd_soc_dapm_get_pin_switch - snd_soc_dapm_get_volsw - snd_soc_dapm_ignore_suspend - snd_soc_dapm_info_pin_switch - snd_soc_dapm_kcontrol_dapm - snd_soc_dapm_new_control - snd_soc_dapm_new_controls - snd_soc_dapm_put_enum_double - snd_soc_dapm_put_pin_switch - snd_soc_dapm_put_volsw - snd_soc_dapm_sync - snd_soc_dapm_weak_routes - snd_soc_find_dai - snd_soc_get_enum_double - snd_soc_get_pcm_runtime - snd_soc_get_volsw - snd_soc_get_volsw_range - snd_soc_get_xr_sx - snd_soc_info_enum_double - snd_soc_info_volsw - snd_soc_info_volsw_range - snd_soc_info_volsw_sx - snd_soc_info_xr_sx - snd_soc_new_compress - snd_soc_of_get_dai_link_codecs - snd_soc_of_get_dai_name - snd_soc_of_parse_audio_routing - snd_soc_of_parse_daifmt - snd_soc_of_put_dai_link_codecs - snd_soc_params_to_bclk - snd_soc_pm_ops - snd_soc_put_enum_double - snd_soc_put_volsw - snd_soc_put_volsw_range - snd_soc_put_xr_sx - snd_soc_register_card - snd_soc_register_component - snd_soc_set_runtime_hwparams - snd_soc_tplg_component_load - snd_soc_tplg_component_remove - snd_soc_tplg_widget_bind_event - snd_soc_unregister_card - snd_soc_unregister_component - snd_vendor_set_ops - snprintf - soc_device_register - softnet_data - sort - __spi_alloc_controller - spi_bus_type - spi_controller_resume - spi_controller_suspend - spi_finalize_current_message - spi_register_controller - __spi_register_driver - spi_setup - spi_sync - spi_unregister_controller - split_page - sprintf - sprint_symbol - srcu_init_notifier_head - srcu_notifier_call_chain - srcu_notifier_chain_register - srcu_notifier_chain_unregister - sscanf - __stack_chk_fail - __stack_chk_guard - static_key_slow_dec - static_key_slow_inc - stop_one_cpu_nowait - stpcpy - strcasecmp - strcat - strchr - strcmp - strcpy - strcspn - stream_open - strim - strlcat - strlcpy - strlen - strncasecmp - strncat - strncmp - strncpy - strnlen - strnstr - strpbrk - strrchr - strscpy - strsep - strspn - strstr - submit_bh - subsys_system_register - __sw_hweight32 - __sw_hweight64 - swiotlb_nr_tbl - __sync_dirty_buffer - sync_file_create - sync_file_get_fence - synchronize_irq - synchronize_net - synchronize_rcu - syscon_regmap_lookup_by_phandle - sysfs_add_file_to_group - sysfs_create_bin_file - sysfs_create_file_ns - sysfs_create_files - sysfs_create_group - sysfs_create_groups - sysfs_create_link - sysfs_emit - __sysfs_match_string - sysfs_merge_group - sysfs_notify - sysfs_remove_bin_file - sysfs_remove_file_from_group - sysfs_remove_file_ns - sysfs_remove_files - sysfs_remove_group - sysfs_remove_link - sysfs_streq - sysrq_mask - system_freezable_wq - system_freezing_cnt - system_highpri_wq - system_state - system_unbound_wq - system_wq - sys_tz - __tasklet_hi_schedule - tasklet_init - tasklet_kill - __tasklet_schedule - task_rq_lock - thermal_cooling_device_unregister - thermal_of_cooling_device_register - thermal_zone_device_disable - thermal_zone_device_enable - thermal_zone_device_is_enabled - thermal_zone_device_update - thermal_zone_get_temp - thermal_zone_get_zone_by_name - thermal_zone_of_sensor_register - thermal_zone_of_sensor_unregister - time64_to_tm - topology_set_thermal_pressure - _totalram_pages - trace_event_buffer_commit - trace_event_buffer_reserve - trace_event_ignore_this_pid - trace_event_raw_init - trace_event_reg - trace_handle_return - __traceiter_android_rvh_can_migrate_task - __traceiter_android_rvh_cpu_cgroup_can_attach - __traceiter_android_rvh_dequeue_task - __traceiter_android_rvh_enqueue_task - __traceiter_android_rvh_find_lowest_rq - __traceiter_android_rvh_find_new_ilb - __traceiter_android_rvh_post_init_entity_util_avg - __traceiter_android_rvh_sched_newidle_balance - __traceiter_android_rvh_sched_nohz_balancer_kick - __traceiter_android_rvh_sched_rebalance_domains - __traceiter_android_rvh_select_fallback_rq - __traceiter_android_rvh_select_task_rq_fair - __traceiter_android_rvh_select_task_rq_rt - __traceiter_android_vh_cpu_idle_enter - __traceiter_android_vh_cpu_idle_exit - __traceiter_android_rvh_gic_v3_set_affinity - __traceiter_android_vh_ipi_stop - __traceiter_android_vh_scheduler_tick - __traceiter_android_vh_show_mem - __traceiter_android_vh_ufs_compl_command - __traceiter_android_vh_ufs_prepare_command - __traceiter_cpu_idle - __traceiter_device_pm_callback_end - __traceiter_device_pm_callback_start - __traceiter_dwc3_ep_queue - __traceiter_gpu_mem_total - __traceiter_hrtimer_expire_entry - __traceiter_hrtimer_expire_exit - __traceiter_ipi_entry - __traceiter_ipi_exit - __traceiter_ipi_raise - __traceiter_irq_handler_entry - __traceiter_irq_handler_exit - __traceiter_pelt_cfs_tp - __traceiter_pelt_dl_tp - __traceiter_pelt_irq_tp - __traceiter_pelt_rt_tp - __traceiter_pelt_se_tp - __traceiter_rwmmio_post_read - __traceiter_rwmmio_read - __traceiter_rwmmio_write - __traceiter_sched_overutilized_tp - __traceiter_sched_switch - __traceiter_suspend_resume - __traceiter_workqueue_execute_end - __traceiter_workqueue_execute_start - __traceiter_gpu_mem_total - trace_output_call - __tracepoint_android_rvh_can_migrate_task - __tracepoint_android_rvh_cpu_cgroup_can_attach - __tracepoint_android_rvh_dequeue_task - __tracepoint_android_rvh_enqueue_task - __tracepoint_android_rvh_find_lowest_rq - __tracepoint_android_rvh_find_new_ilb - __tracepoint_android_rvh_post_init_entity_util_avg - __tracepoint_android_rvh_sched_newidle_balance - __tracepoint_android_rvh_sched_nohz_balancer_kick - __tracepoint_android_rvh_sched_rebalance_domains - __tracepoint_android_rvh_select_fallback_rq - __tracepoint_android_rvh_select_task_rq_fair - __tracepoint_android_rvh_select_task_rq_rt - __tracepoint_android_vh_cpu_idle_enter - __tracepoint_android_vh_cpu_idle_exit - __tracepoint_android_rvh_gic_v3_set_affinity - __tracepoint_android_vh_ipi_stop - __tracepoint_android_vh_scheduler_tick - __tracepoint_android_vh_show_mem - __tracepoint_android_vh_ufs_compl_command - __tracepoint_android_vh_ufs_prepare_command - __tracepoint_cpu_idle - __tracepoint_device_pm_callback_end - __tracepoint_device_pm_callback_start - __tracepoint_dwc3_ep_queue - __tracepoint_gpu_mem_total - __tracepoint_hrtimer_expire_entry - __tracepoint_hrtimer_expire_exit - __tracepoint_ipi_entry - __tracepoint_ipi_exit - __tracepoint_ipi_raise - __tracepoint_irq_handler_entry - __tracepoint_irq_handler_exit - __tracepoint_pelt_cfs_tp - __tracepoint_pelt_dl_tp - __tracepoint_pelt_irq_tp - __tracepoint_pelt_rt_tp - __tracepoint_pelt_se_tp - tracepoint_probe_register - tracepoint_probe_unregister - __tracepoint_rwmmio_post_read - __tracepoint_rwmmio_read - __tracepoint_rwmmio_write - __tracepoint_sched_overutilized_tp - __tracepoint_sched_switch - __tracepoint_suspend_resume - __tracepoint_workqueue_execute_end - __tracepoint_workqueue_execute_start - trace_print_array_seq - trace_print_flags_seq - trace_print_symbols_seq - trace_raw_output_prep - trace_seq_printf - try_module_get - ttm_bo_bulk_move_lru_tail - ttm_bo_device_init - ttm_bo_device_release - ttm_bo_dma_acc_size - ttm_bo_eviction_valuable - ttm_bo_evict_mm - ttm_bo_glob - ttm_bo_init_reserved - ttm_bo_kmap - ttm_bo_kunmap - ttm_bo_lock_delayed_workqueue - ttm_bo_mem_space - ttm_bo_mmap - ttm_bo_mmap_obj - ttm_bo_move_accel_cleanup - ttm_bo_move_memcpy - ttm_bo_move_to_lru_tail - ttm_bo_move_ttm - ttm_bo_put - ttm_bo_unlock_delayed_workqueue - ttm_bo_validate - ttm_dma_page_alloc_debugfs - ttm_dma_populate - ttm_dma_tt_fini - ttm_dma_unpopulate - ttm_eu_backoff_reservation - ttm_eu_fence_buffer_objects - ttm_eu_reserve_buffers - ttm_page_alloc_debugfs - ttm_populate_and_map_pages - ttm_range_man_fini - ttm_range_man_init - ttm_resource_free - ttm_resource_manager_force_list_clean - ttm_resource_manager_init - ttm_sg_tt_init - ttm_tt_destroy_common - ttm_tt_populate - ttm_tt_set_placement_caching - ttm_unmap_and_unpopulate_pages - tty_flip_buffer_push - tty_insert_flip_string_fixed_flag - tty_kref_put - tty_port_tty_get - typec_register_partner - typec_register_port - typec_set_data_role - typec_set_pwr_opmode - typec_set_pwr_role - typec_unregister_partner - typec_unregister_port - uart_add_one_port - uart_console_write - uart_get_baud_rate - uart_parse_options - uart_register_driver - uart_remove_one_port - uart_resume_port - uart_set_options - uart_suspend_port - uart_try_toggle_sysrq - uart_unregister_driver - uart_update_timeout - uart_write_wakeup - uclamp_eff_value - __udelay - ufshcd_auto_hibern8_update - ufshcd_dme_get_attr - ufshcd_hold - ufshcd_pltfrm_init - ufshcd_query_flag_retry - ufshcd_release - ufshcd_remove - ufshcd_shutdown - ufshcd_system_resume - ufshcd_system_suspend - unlock_page - unmap_mapping_range - unpin_user_page - unregister_blkdev - __unregister_chrdev - unregister_chrdev_region - unregister_inet6addr_notifier - unregister_inetaddr_notifier - unregister_netdev - unregister_netdevice_notifier - unregister_netdevice_queue - unregister_oom_notifier - unregister_pm_notifier - unregister_reboot_notifier - unregister_shrinker - up - update_devfreq - up_read - up_write - usb_add_function - usb_add_hcd - usb_choose_configuration - usb_copy_descriptors - __usb_create_hcd - usb_disabled - usb_enable_autosuspend - usb_ep_alloc_request - usb_ep_autoconfig - usb_ep_free_request - usb_ep_queue - usb_function_register - usb_function_unregister - usb_gadget_set_state - usb_hcd_is_primary_hcd - usb_hcd_platform_shutdown - usb_hub_find_child - usb_interface_id - usb_otg_state_string - usb_put_function_instance - usb_put_hcd - usb_register_notify - usb_remove_hcd - usb_speed_string - usb_string_id - usb_unregister_notify - __usecs_to_jiffies - usleep_range - v4l2_ctrl_auto_cluster - v4l2_ctrl_handler_free - v4l2_ctrl_handler_init_class - v4l2_ctrl_handler_setup - v4l2_ctrl_log_status - v4l2_ctrl_new_custom - v4l2_ctrl_new_std - v4l2_ctrl_new_std_menu - v4l2_ctrl_poll - v4l2_ctrl_subscribe_event - v4l2_device_register - v4l2_device_register_subdev - v4l2_device_set_name - v4l2_device_unregister - v4l2_device_unregister_subdev - v4l2_event_unsubscribe - v4l2_fh_add - v4l2_fh_del - v4l2_fh_exit - v4l2_fh_init - v4l2_fh_is_singular - v4l2_fh_open - v4l2_fh_release - v4l2_i2c_subdev_init - v4l2_m2m_buf_queue - v4l2_m2m_buf_remove - v4l2_m2m_ctx_init - v4l2_m2m_ctx_release - v4l2_m2m_dqbuf - v4l2_m2m_fop_mmap - v4l2_m2m_fop_poll - v4l2_m2m_get_curr_priv - v4l2_m2m_get_vq - v4l2_m2m_init - v4l2_m2m_ioctl_dqbuf - v4l2_m2m_ioctl_querybuf - v4l2_m2m_ioctl_reqbufs - v4l2_m2m_ioctl_streamoff - v4l2_m2m_ioctl_streamon - v4l2_m2m_job_finish - v4l2_m2m_mmap - v4l2_m2m_next_buf - v4l2_m2m_poll - v4l2_m2m_qbuf - v4l2_m2m_querybuf - v4l2_m2m_release - v4l2_m2m_reqbufs - v4l2_m2m_streamoff - v4l2_m2m_streamon - v4l2_m2m_try_schedule - v4l2_match_dv_timings - v4l2_spi_subdev_init - v4l2_subdev_call_wrappers - v4l2_subdev_init - v4l_bound_align_image - vabits_actual - vb2_buffer_done - vb2_common_vm_ops - vb2_create_framevec - vb2_destroy_framevec - vb2_dqbuf - vb2_mmap - vb2_ops_wait_finish - vb2_ops_wait_prepare - vb2_plane_cookie - vb2_plane_vaddr - vb2_poll - vb2_prepare_buf - vb2_qbuf - vb2_querybuf - vb2_queue_init - vb2_queue_release - vb2_reqbufs - vb2_streamoff - vb2_streamon - vb2_wait_for_all_buffers - vfree - vfs_fsync - vfs_getattr - vfs_llseek - video_devdata - video_device_alloc - video_device_release - video_device_release_empty - video_ioctl2 - __video_register_device - video_unregister_device - vmalloc - vmalloc_to_page - vmalloc_to_pfn - vmalloc_user - vmap - vmf_insert_pfn_prot - vm_get_page_prot - vm_insert_page - vm_iomap_memory - vm_map_pages - vm_map_ram - vm_unmap_ram - vprintk_emit - vscnprintf - vsnprintf - vsprintf - vunmap - vzalloc - wait_for_completion - wait_for_completion_interruptible - wait_for_completion_interruptible_timeout - wait_for_completion_killable - wait_for_completion_timeout - __wait_on_buffer - __wake_up - __wake_up_locked - __wake_up_locked_key - wake_up_process - wakeup_source_add - wakeup_source_register - wakeup_source_unregister - __wake_up_sync - __warn_printk - watchdog_init_timeout - watchdog_register_device - watchdog_set_restart_priority - watchdog_unregister_device - work_busy - ww_mutex_lock - ww_mutex_lock_interruptible - ww_mutex_unlock - xhci_add_endpoint - xhci_address_device - xhci_bus_resume - xhci_bus_suspend - xhci_check_trb_in_td_math - xhci_gen_setup - xhci_get_endpoint_index - xhci_get_ep_ctx - xhci_init_driver - xhci_initialize_ring_info - xhci_link_segments - xhci_resume - xhci_ring_alloc - xhci_run - xhci_segment_free - xhci_suspend - xhci_trb_virt_to_dma - xhci_vendor_get_ops diff --git a/android/abi_gki_aarch64_exynosauto b/android/abi_gki_aarch64_exynosauto deleted file mode 100644 index d05a5baadab9..000000000000 --- a/android/abi_gki_aarch64_exynosauto +++ /dev/null @@ -1,1478 +0,0 @@ -[abi_symbol_list] -# commonly used symbols - add_wait_queue - alloc_chrdev_region - __alloc_pages_nodemask - __alloc_percpu - alloc_workqueue - __arch_copy_from_user - __arch_copy_to_user - arm64_const_caps_ready - arm64_use_ng_mappings - __arm_smccc_smc - atomic_notifier_call_chain - atomic_notifier_chain_register - atomic_notifier_chain_unregister - __bitmap_and - blocking_notifier_call_chain - blocking_notifier_chain_register - blocking_notifier_chain_unregister - bpf_trace_run2 - bpf_trace_run4 - cancel_delayed_work_sync - cancel_work_sync - capable - cdev_add - cdev_del - cdev_init - __cfi_slowpath - __check_object_size - __class_create - class_destroy - clk_disable - clk_enable - clk_get - clk_get_rate - __clk_is_enabled - clk_prepare - clk_put - clk_register - clk_set_rate - clk_unprepare - clk_unregister - cma_alloc - cma_release - complete - complete_all - complete_and_exit - __const_udelay - cpu_bit_bitmap - cpu_hwcap_keys - cpu_hwcaps - cpumask_next - cpu_number - __cpu_online_mask - cpu_pm_register_notifier - __cpu_possible_mask - crc32_le - __crypto_memneq - debugfs_create_dir - debugfs_create_file - debugfs_create_u32 - debugfs_remove - default_llseek - delayed_work_timer_fn - del_timer - del_timer_sync - destroy_workqueue - _dev_crit - dev_driver_string - _dev_emerg - _dev_err - device_create - device_create_file - device_destroy - device_initialize - device_init_wakeup - device_remove_file - _dev_info - devm_clk_get - devm_free_irq - devm_gpiod_get_optional - devm_gpio_request_one - devm_i2c_new_dummy_device - devm_ioremap - devm_ioremap_resource - devm_kasprintf - devm_kfree - devm_kmalloc - devm_kmemdup - __devm_of_phy_provider_register - devm_phy_create - devm_phy_get - devm_pinctrl_get - devm_platform_ioremap_resource - __devm_regmap_init_i2c - devm_regulator_bulk_get - __devm_request_region - devm_request_threaded_irq - devm_rtc_device_register - devm_snd_soc_register_card - devm_snd_soc_register_component - _dev_notice - devres_add - devres_alloc_node - dev_set_name - _dev_warn - disable_irq - disable_irq_nosync - display_timings_release - dma_alloc_attrs - dma_buf_attach - dma_buf_begin_cpu_access - dma_buf_detach - dma_buf_end_cpu_access - dma_buf_export - dma_buf_get - dma_buf_map_attachment - dma_buf_mmap - dma_buf_put - dma_buf_unmap_attachment - dma_buf_vmap - dma_buf_vunmap - dmaengine_unmap_put - dma_fence_add_callback - dma_fence_context_alloc - dma_fence_default_wait - dma_fence_init - dma_fence_release - dma_fence_remove_callback - dma_fence_signal - dma_free_attrs - dma_heap_buffer_alloc - dma_heap_find - dma_heap_put - dma_map_page_attrs - dma_map_sg_attrs - dma_release_channel - dma_request_chan - dma_set_coherent_mask - dma_set_mask - dma_sync_sg_for_cpu - dma_sync_sg_for_device - dma_sync_single_for_cpu - dma_sync_single_for_device - dma_unmap_page_attrs - dma_unmap_sg_attrs - down_interruptible - down_read - drm_add_edid_modes - drm_atomic_helper_connector_destroy_state - drm_atomic_helper_connector_duplicate_state - drm_atomic_helper_connector_reset - drm_bridge_add - drm_bridge_remove - drm_connector_attach_encoder - drm_connector_cleanup - drm_connector_init - drm_connector_register - drm_connector_update_edid_property - drm_display_mode_from_videomode - __drm_err - drm_helper_probe_single_connector_modes - drm_kms_helper_hotplug_event - drm_mode_copy - drm_mode_create - drm_mode_probed_add - drm_mode_vrefresh - dump_stack - enable_irq - event_triggers_call - fd_install - find_next_bit - find_vma - finish_wait - flush_delayed_work - flush_work - flush_workqueue - fput - frame_vector_to_pages - free_irq - __free_pages - free_pages - free_percpu - freezing_slow_path - generic_file_llseek - generic_handle_irq - gen_pool_add_owner - gen_pool_alloc_algo_owner - gen_pool_free_owner - get_device - __get_free_pages - get_random_bytes - get_task_mm - get_unused_fd_flags - gic_nonsecure_priorities - gpiod_direction_input - gpiod_direction_output_raw - gpiod_get_raw_value - gpiod_set_raw_value - gpiod_set_value_cansleep - gpiod_to_irq - gpio_free - gpio_request - gpio_request_one - gpio_to_desc - handle_edge_irq - handle_level_irq - handle_nested_irq - hrtimer_cancel - hrtimer_forward - hrtimer_init - hrtimer_start_range_ns - i2c_add_numbered_adapter - i2c_del_driver - i2c_register_driver - i2c_transfer - i2c_unregister_device - __init_rwsem - __init_swait_queue_head - init_timer_key - init_wait_entry - __init_waitqueue_head - iomem_resource - iommu_get_domain_for_dev - iommu_register_device_fault_handler - iommu_unregister_device_fault_handler - __ioremap - iounmap - __irq_alloc_descs - __irq_domain_add - irq_domain_remove - irq_find_mapping - irq_get_irq_data - irq_modify_status - irq_of_parse_and_map - irq_set_affinity_hint - irq_set_chip_and_handler_name - irq_set_chip_data - irq_set_irq_wake - irq_to_desc - is_vmalloc_addr - jiffies - kasan_flag_enabled - kasprintf - kfree - kimage_voffset - __kmalloc - kmalloc_caches - kmalloc_order_trace - kmem_cache_alloc_trace - kmemdup - kobject_create_and_add - kobject_get - kobject_init_and_add - kobject_put - krealloc - kset_unregister - kstrdup - kstrtoint - kstrtou8 - kstrtouint - kstrtoull - kthread_create_on_node - __kthread_init_worker - kthread_queue_work - kthread_stop - kthread_worker_fn - ktime_get - ktime_get_mono_fast_ns - ktime_get_raw_ts64 - ktime_get_real_ts64 - ktime_get_ts64 - kvfree - kvmalloc_node - __list_add_valid - __list_del_entry_valid - __log_post_read_mmio - __log_read_mmio - __log_write_mmio - loops_per_jiffy - memcpy - memdup_user - memset - memstart_addr - mfd_add_devices - mfd_remove_devices - mipi_dsi_attach - mipi_dsi_detach - mipi_dsi_device_register_full - mipi_dsi_device_unregister - mipi_dsi_driver_register_full - mipi_dsi_driver_unregister - misc_deregister - misc_register - mmput - mod_timer - module_layout - __msecs_to_jiffies - msleep - __mutex_init - mutex_lock - mutex_lock_interruptible - mutex_unlock - no_llseek - nonseekable_open - noop_llseek - nr_cpu_ids - ns_to_timespec64 - __num_online_cpus - of_address_to_resource - of_alias_get_id - of_clk_add_provider - of_clk_del_provider - of_clk_get - of_count_phandle_with_args - of_device_get_match_data - of_device_is_available - of_device_is_compatible - of_find_compatible_node - of_find_device_by_node - of_find_matching_node_and_match - of_find_mipi_dsi_host_by_node - of_find_node_by_name - of_find_node_opts_by_path - of_find_property - of_get_child_by_name - of_get_display_timings - of_get_named_gpio_flags - of_get_next_child - of_get_property - of_get_regulator_init_data - of_graph_get_remote_node - of_iomap - of_match_device - of_match_node - of_parse_phandle - of_platform_populate - of_property_count_elems_of_size - of_property_read_string - of_property_read_string_helper - of_property_read_u32_index - of_property_read_variable_u16_array - of_property_read_variable_u32_array - of_property_read_variable_u8_array - of_prop_next_string - of_reserved_mem_device_init_by_idx - of_reserved_mem_lookup - of_root - panic - panic_notifier_list - param_ops_bool - param_ops_int - param_ops_string - param_ops_uint - PDE_DATA - __per_cpu_offset - perf_trace_buf_alloc - perf_trace_run_bpf_submit - phy_power_off - phy_power_on - pinctrl_lookup_state - pinctrl_select_state - platform_bus_type - __platform_driver_register - platform_driver_unregister - platform_get_irq - platform_get_resource - platform_get_resource_byname - pm_power_off - __pm_runtime_disable - pm_runtime_enable - __pm_runtime_idle - __pm_runtime_resume - pm_runtime_set_autosuspend_delay - __pm_runtime_suspend - __pm_runtime_use_autosuspend - pm_wakeup_dev_event - pm_wakeup_ws_event - preempt_schedule - preempt_schedule_notrace - prepare_to_wait_event - print_hex_dump - printk - proc_create_data - put_device - __put_task_struct - put_unused_fd - queue_delayed_work_on - queue_work_on - ___ratelimit - _raw_spin_lock - _raw_spin_lock_irq - _raw_spin_lock_irqsave - _raw_spin_unlock - _raw_spin_unlock_irq - _raw_spin_unlock_irqrestore - __rcu_read_lock - __rcu_read_unlock - rdev_get_drvdata - rdev_get_id - refcount_warn_saturate - __refrigerator - regcache_mark_dirty - regcache_sync - __register_chrdev - register_pm_notifier - register_reboot_notifier - register_restart_handler - register_syscore_ops - regmap_read - regmap_update_bits_base - regmap_write - regulator_bulk_disable - regulator_bulk_enable - regulator_disable - regulator_enable - regulator_get_optional - regulator_list_voltage_linear - regulator_map_voltage_linear - regulator_put - regulator_register - regulator_unregister - release_firmware - __release_region - remove_proc_entry - request_firmware - __request_region - request_threaded_irq - sched_clock - schedule - schedule_timeout - scnprintf - seq_lseek - seq_printf - seq_putc - seq_puts - seq_read - seq_release - set_cpus_allowed_ptr - set_page_dirty_lock - sg_alloc_table - sg_alloc_table_from_pages - sg_free_table - sg_init_table - sg_next - __sg_page_iter_next - __sg_page_iter_start - simple_attr_open - simple_attr_read - simple_attr_release - simple_attr_write - simple_open - simple_read_from_buffer - simple_strtoul - simple_write_to_buffer - single_open - single_release - smp_call_function - snd_pcm_format_width - snd_soc_component_update_bits - snd_soc_component_write - snd_soc_dai_set_fmt - snd_soc_dai_set_tdm_slot - snd_soc_dai_set_tristate - snd_soc_info_volsw - snd_soc_of_get_dai_link_codecs - snd_soc_of_get_dai_name - snd_soc_of_parse_audio_routing - snd_soc_of_put_dai_link_codecs - snd_soc_pm_ops - snprintf - sort - split_page - sprintf - sscanf - __stack_chk_fail - __stack_chk_guard - strcasecmp - strcmp - strcpy - strcspn - strlcat - strlcpy - strlen - strncmp - strncpy - strnlen - strstr - __sw_hweight64 - sync_file_create - sync_file_get_fence - synchronize_irq - syscon_regmap_lookup_by_phandle - sysfs_create_file_ns - sysfs_create_group - sysfs_create_groups - sysfs_remove_file_ns - sysfs_remove_group - system_freezing_cnt - system_wq - tasklet_kill - __tasklet_schedule - _totalram_pages - trace_event_buffer_commit - trace_event_buffer_reserve - trace_event_ignore_this_pid - trace_event_raw_init - trace_event_reg - trace_handle_return - __traceiter_rwmmio_post_read - __traceiter_rwmmio_read - __traceiter_rwmmio_write - tracepoint_probe_register - __tracepoint_rwmmio_post_read - __tracepoint_rwmmio_read - __tracepoint_rwmmio_write - trace_raw_output_prep - trace_seq_printf - __udelay - __unregister_chrdev - unregister_chrdev_region - unregister_pm_notifier - unregister_reboot_notifier - up - up_read - __usecs_to_jiffies - usleep_range - v4l2_device_register - v4l2_device_unregister - v4l2_fh_add - v4l2_fh_del - v4l2_fh_exit - v4l2_fh_init - v4l2_subdev_init - vabits_actual - vb2_buffer_done - vb2_dqbuf - vb2_mmap - vb2_plane_cookie - vb2_plane_vaddr - vb2_poll - vb2_qbuf - vb2_querybuf - vb2_queue_init - vb2_queue_release - vb2_reqbufs - vb2_streamoff - vb2_streamon - vfree - video_devdata - video_device_alloc - video_device_release - video_ioctl2 - videomode_from_timings - __video_register_device - video_unregister_device - vmalloc - vmalloc_to_page - vmap - vsnprintf - vunmap - vzalloc - wait_for_completion - wait_for_completion_interruptible_timeout - wait_for_completion_timeout - __wake_up - wake_up_process - wakeup_source_register - wakeup_source_unregister - __warn_printk - work_busy - -# required by adv7511.ko - cec_s_phys_addr - cec_s_phys_addr_from_edid - cec_unregister_adapter - drm_bridge_hpd_notify - drm_detect_hdmi_monitor - drm_do_get_edid - hdmi_avi_infoframe_init - hdmi_avi_infoframe_pack - i2c_new_ancillary_device - regmap_bulk_write - regmap_register_patch - -# required by bts-exynos.ko - strpbrk - -# required by bufq.ko - kstrndup - -# required by clk_exynos.ko - __clk_get_hw - clk_hw_get_parent - clk_register_clkdev - clk_register_fixed_factor - clk_register_fixed_rate - of_clk_src_onecell_get - -# required by cmupmucal.ko - debugfs_create_x32 - kernel_kobj - -# required by dmatest.ko - dmaengine_get_unmap_data - __dma_request_channel - dma_sync_wait - kthread_should_stop - param_get_bool - param_get_string - param_set_bool - param_set_copystring - prandom_bytes - set_freezable - set_user_nice - strim - -# required by dss.ko - android_debug_symbol - arch_timer_read_counter - dump_backtrace - init_task - input_close_device - input_open_device - input_register_handle - input_register_handler - input_unregister_handle - kmsg_dump_get_line - kmsg_dump_rewind - kstat - nr_irqs - proc_create - register_die_notifier - return_address - rtc_time64_to_tm - sys_tz - time64_to_tm - __traceiter_android_vh_ipi_stop - __traceiter_android_vh_logbuf - __traceiter_cpu_idle - __traceiter_device_pm_callback_end - __traceiter_device_pm_callback_start - __traceiter_hrtimer_expire_entry - __traceiter_hrtimer_expire_exit - __traceiter_irq_handler_entry - __traceiter_irq_handler_exit - __traceiter_sched_switch - __traceiter_suspend_resume - __traceiter_workqueue_execute_end - __traceiter_workqueue_execute_start - __tracepoint_android_vh_ipi_stop - __tracepoint_android_vh_logbuf - __tracepoint_cpu_idle - __tracepoint_device_pm_callback_end - __tracepoint_device_pm_callback_start - __tracepoint_hrtimer_expire_entry - __tracepoint_hrtimer_expire_exit - __tracepoint_irq_handler_entry - __tracepoint_irq_handler_exit - __tracepoint_sched_switch - __tracepoint_suspend_resume - __tracepoint_workqueue_execute_end - __tracepoint_workqueue_execute_start - -# required by dwc3-exynosauto-usb.ko - device_for_each_child - device_property_present - devm_regulator_get - phy_exit - phy_init - platform_device_add - platform_device_add_properties - platform_device_add_resources - platform_device_alloc - platform_device_del - platform_device_put - platform_device_unregister - platform_get_irq_byname_optional - __pm_relax - pm_runtime_allow - pm_runtime_forbid - __pm_runtime_set_status - __pm_stay_awake - __traceiter_dwc3_readl - __traceiter_dwc3_writel - __tracepoint_dwc3_readl - __tracepoint_dwc3_writel - usb_gadget_set_state - usb_otg_state_string - -# required by exynos-chipid_v2.ko - soc_device_register - subsys_system_register - -# required by exynos-coresight.ko - __cpuhp_setup_state_cpuslocked - cpu_pm_unregister_notifier - of_prop_next_u32 - -# required by exynos-debug-test.ko - _ctype - kstrtoll - remove_cpu - smp_call_function_single - strsep - -# required by exynos-ehld.ko - sprint_symbol - -# required by exynos-pd.ko - of_genpd_add_provider_simple - pm_genpd_add_subdomain - pm_genpd_init - -# required by exynos9drm.ko - bus_find_device - component_add - component_bind_all - component_del - component_master_add_with_match - component_master_del - component_unbind_all - console_trylock - console_unlock - debugfs_lookup - device_rename - drm_atomic_bridge_chain_enable - drm_atomic_bridge_chain_pre_enable - drm_atomic_helper_check - drm_atomic_helper_cleanup_planes - drm_atomic_helper_commit - drm_atomic_helper_commit_modeset_disables - drm_atomic_helper_commit_planes - drm_atomic_helper_crtc_destroy_state - drm_atomic_helper_crtc_duplicate_state - drm_atomic_helper_crtc_reset - drm_atomic_helper_disable_plane - drm_atomic_helper_disable_planes_on_crtc - drm_atomic_helper_fake_vblank - drm_atomic_helper_page_flip - __drm_atomic_helper_plane_destroy_state - __drm_atomic_helper_plane_duplicate_state - __drm_atomic_helper_plane_reset - __drm_atomic_helper_private_obj_duplicate_state - drm_atomic_helper_set_config - drm_atomic_helper_shutdown - drm_atomic_helper_update_plane - drm_atomic_helper_wait_for_vblanks - drm_atomic_normalize_zpos - drm_atomic_private_obj_init - drm_bridge_attach - drm_compat_ioctl - drm_connector_list_iter_begin - drm_connector_list_iter_end - drm_connector_list_iter_next - drm_connector_set_path_property - drm_connector_set_tile_property - drm_connector_unregister - drm_crtc_arm_vblank_event - drm_crtc_cleanup - __drm_crtc_commit_free - drm_crtc_handle_vblank - drm_crtc_init_with_planes - drm_crtc_send_vblank_event - drm_crtc_vblank_count - drm_crtc_vblank_get - drm_crtc_vblank_off - drm_crtc_vblank_on - drm_crtc_vblank_put - drm_crtc_vblank_waitqueue - __drm_dbg - drm_debugfs_create_files - drm_dev_alloc - drm_dev_dbg - drm_dev_printk - drm_dev_put - drm_dev_register - drm_dev_unregister - drm_display_mode_to_videomode - drm_dp_aux_register - drm_dp_aux_unregister - drm_dp_bw_code_to_link_rate - drm_dp_calc_pbn_mode - drm_dp_channel_eq_ok - drm_dp_check_act_status - drm_dp_clock_recovery_ok - drm_dp_downstream_debug - drm_dp_dpcd_read - drm_dp_dpcd_read_link_status - drm_dp_dpcd_write - drm_dp_dsc_sink_line_buf_depth - drm_dp_dsc_sink_max_slice_count - drm_dp_find_vcpi_slots - drm_dp_get_adjust_request_pre_emphasis - drm_dp_get_adjust_request_voltage - drm_dp_link_train_channel_eq_delay - drm_dp_link_train_clock_recovery_delay - drm_dp_mst_allocate_vcpi - drm_dp_mst_deallocate_vcpi - drm_dp_mst_detect_port - drm_dp_mst_dump_topology - drm_dp_mst_get_port_malloc - drm_dp_mst_hpd_irq - drm_dp_mst_put_port_malloc - drm_dp_mst_reset_vcpi_slots - drm_dp_mst_topology_mgr_init - drm_dp_mst_topology_mgr_set_mst - drm_dp_update_payload_part1 - drm_dp_update_payload_part2 - drm_dsc_compute_rc_parameters - drm_dsc_pps_payload_pack - drm_encoder_cleanup - drm_encoder_init - drm_flip_work_cleanup - drm_flip_work_commit - drm_flip_work_init - drm_flip_work_queue - drm_framebuffer_cleanup - drm_framebuffer_init - drm_gem_create_mmap_offset - drm_gem_handle_create - drm_gem_mmap - drm_gem_object_free - drm_gem_object_lookup - drm_gem_object_release - drm_gem_prime_fd_to_handle - drm_gem_prime_handle_to_fd - drm_gem_private_object_init - drm_gem_vm_close - drm_gem_vm_open - drm_get_connector_status_name - drm_get_edid - drm_get_format_info - drm_helper_connector_dpms - drm_helper_hpd_irq_event - drm_helper_mode_fill_fb_struct - drm_helper_probe_detect - drm_ioctl - drm_kms_helper_poll_fini - drm_kms_helper_poll_init - drmm_mode_config_init - drm_mode_config_cleanup - drm_mode_config_helper_resume - drm_mode_config_helper_suspend - drm_mode_config_reset - drm_mode_object_get - drm_mode_object_put - drm_of_component_match_add - drm_of_crtc_port_mask - drm_of_find_possible_crtcs - drm_open - drm_panel_disable - drm_panel_enable - drm_panel_get_modes - drm_panel_prepare - drm_panel_unprepare - drm_plane_cleanup - drm_plane_create_alpha_property - drm_plane_create_blend_mode_property - drm_plane_create_zpos_immutable_property - drm_plane_create_zpos_property - drm_poll - drm_prime_gem_destroy - drm_read - drm_release - drm_universal_plane_init - drm_vblank_init - kstrtobool - mipi_dsi_host_register - mipi_dsi_host_unregister - mutex_is_locked - of_drm_find_bridge - of_drm_find_panel - of_graph_get_endpoint_by_regs - of_graph_get_endpoint_count - of_graph_get_next_endpoint - of_graph_get_port_by_id - of_graph_get_remote_port - of_graph_get_remote_port_parent - of_graph_parse_endpoint - of_phandle_iterator_init - of_phandle_iterator_next - seq_hex_dump - -# required by exynos_mfc.ko - iommu_dma_reserve_iova - iommu_map_sg - iommu_unmap - -# required by exynos_pm_qos.ko - kstrtoint_from_user - _raw_read_lock_irqsave - _raw_read_unlock_irqrestore - _raw_write_lock_irqsave - _raw_write_unlock_irqrestore - -# required by exynos_thermal.ko - of_thermal_get_ntrips - of_thermal_is_trip_valid - thermal_zone_device_update - thermal_zone_of_sensor_register - thermal_zone_of_sensor_unregister - -# required by exynos_tty.ko - dma_get_slave_caps - do_SAK - handle_sysrq - register_console - sysrq_mask - tty_flip_buffer_push - tty_insert_flip_string_fixed_flag - tty_kref_put - tty_port_tty_get - uart_add_one_port - uart_console_write - uart_get_baud_rate - uart_parse_options - uart_register_driver - uart_remove_one_port - uart_resume_port - uart_set_options - uart_suspend_port - uart_try_toggle_sysrq - uart_unregister_driver - uart_update_timeout - uart_write_wakeup - -# required by g2d.ko - add_timer - cancel_delayed_work - device_get_dma_attr - dma_fence_signal_locked - frame_vector_create - frame_vector_destroy - get_vaddr_frames - mod_delayed_work_on - put_vaddr_frames - -# required by hardlockup-watchdog.ko - __cpuhp_setup_state - cpus_read_lock - cpus_read_unlock - smp_call_on_cpu - -# required by i2c-exynosauto.ko - i2c_del_adapter - -# required by mali_kbase.ko - anon_inode_getfd - __arch_clear_user - __bitmap_weight - bpf_trace_run1 - bpf_trace_run3 - bpf_trace_run5 - cache_line_size - clear_page - __close_fd - debugfs_create_bool - dev_pm_opp_of_add_table - dev_pm_opp_of_remove_table - dev_pm_opp_put_regulators - dev_pm_opp_set_regulators - dma_fence_get_status - down - downgrade_write - down_trylock - down_write - failure_tracking - __get_task_comm - get_user_pages - get_user_pages_fast - get_user_pages_remote - hrtimer_active - kstrtobool_from_user - ktime_get_raw - kvfree_call_rcu - __mmdrop - module_put - of_machine_is_compatible - __page_pinner_migration_failed - param_ops_byte - __put_page - rb_erase - rb_first - rb_insert_color - rb_next - rb_prev - rb_replace_node - register_shrinker - remap_pfn_range - remap_vmalloc_range - seq_open - seq_write - static_key_slow_dec - static_key_slow_inc - strncasecmp - __sw_hweight32 - synchronize_rcu - sysfs_streq - system_highpri_wq - __traceiter_gpu_mem_total - trace_output_call - __tracepoint_gpu_mem_total - trace_print_array_seq - trace_print_flags_seq - trace_print_symbols_seq - try_module_get - unmap_mapping_range - unregister_shrinker - up_write - vmalloc_user - vmf_insert_pfn_prot - -# required by mcDrvModule.ko - crypto_alloc_shash - crypto_destroy_tfm - crypto_shash_final - crypto_shash_update - d_path - get_task_exe_file - get_zeroed_page - kstrtol_from_user - kstrtouint_from_user - pin_user_pages - release_pages - sg_miter_next - sg_miter_start - sg_miter_stop - unpin_user_page - wait_for_completion_interruptible - wait_for_completion_killable - -# required by panel-samsung-dummy.ko - drm_panel_add - drm_panel_init - drm_panel_remove - -# required by pcie-exynos-dw-ep.ko - dw_pcie_ep_init - dw_pcie_read_dbi - dw_pcie_write_dbi - pci_epc_clear_bar - pci_epc_map_addr - pci_epc_mem_alloc_addr - pci_epc_mem_free_addr - pci_epc_set_bar - pci_epc_unmap_addr - -# required by pcie-exynos-dw-rc.ko - bitmap_find_free_region - bitmap_release_region - dw_pcie_host_init - dw_pcie_msi_init - dw_pcie_own_conf_map_bus - dw_pcie_read - dw_pcie_setup_rc - dw_pcie_write - irq_chip_ack_parent - irq_chip_mask_parent - irq_chip_unmask_parent - irq_domain_get_irq_data - irq_domain_set_info - irq_domain_update_bus_token - pcie_get_mps - pcie_set_mps - pci_find_bus - pci_generic_config_read - pci_generic_config_write - pci_get_device - pci_load_saved_state - pci_msi_create_irq_domain - pci_msi_mask_irq - pci_msi_unmask_irq - pci_num_vf - pci_rescan_bus - pci_restore_state - pci_save_state - pci_store_saved_state - -# required by pcs-xpcs.ko - mdiobus_read - mdiobus_write - -# required by pinctrl-samsung-core.ko - devm_gpiochip_add_data_with_key - devm_pinctrl_register - gpiochip_generic_free - gpiochip_generic_request - gpiochip_get_data - gpiochip_lock_as_irq - gpiochip_unlock_as_irq - irq_create_mapping_affinity - irq_domain_xlate_twocell - irq_set_chained_handler_and_data - of_node_name_eq - pinctrl_add_gpio_range - pinctrl_dev_get_drvdata - pinctrl_remove_gpio_range - -# required by pl330.ko - amba_driver_register - amba_driver_unregister - dev_err_probe - __devm_reset_control_get - dma_async_device_register - dma_async_device_unregister - dma_async_tx_descriptor_init - dma_get_slave_channel - dma_map_resource - dma_unmap_resource - of_dma_controller_free - of_dma_controller_register - pm_runtime_force_resume - pm_runtime_force_suspend - pm_runtime_irq_safe - reset_control_assert - reset_control_deassert - tasklet_setup - -# required by pps_core.ko - fasync_helper - idr_alloc - idr_get_next - idr_remove - kill_fasync - -# required by ptp.ko - ida_alloc_range - ida_destroy - ida_free - kthread_cancel_delayed_work_sync - kthread_create_worker - kthread_delayed_work_timer_fn - kthread_destroy_worker - kthread_mod_delayed_work - kthread_queue_delayed_work - ktime_get_snapshot - posix_clock_register - posix_clock_unregister - -# required by reboot-mode.ko - devres_free - devres_release - kfree_const - kstrdup_const - -# required by rtc-s2vps01.ko - rtc_update_irq - rtc_valid_tm - -# required by s3c2410_wdt.ko - watchdog_init_timeout - watchdog_register_device - watchdog_set_restart_priority - watchdog_unregister_device - -# required by sam-is.ko - get_task_pid - i2c_get_adapter - i2c_new_client_device - jiffies_to_msecs - kobject_del - kstrtou16 - kthread_flush_work - kthread_flush_worker - ktime_get_with_offset - phy_configure - pm_relax - pm_stay_awake - regulator_get_voltage - regulator_is_enabled - regulator_set_voltage - sched_set_fifo - tasklet_init - v4l2_device_register_subdev - v4l2_device_unregister_subdev - v4l2_subdev_call_wrappers - -# required by samsung-iommu-group.ko - iommu_group_alloc - iommu_group_set_name - -# required by samsung-secure-iova.ko - gen_pool_avail - gen_pool_create - gen_pool_destroy - gen_pool_first_fit_align - gen_pool_size - -# required by samsung-seqos.ko - alloc_etherdev_mqs - __bitmap_andnot - consume_skb - dev_close - device_get_phy_mode - device_set_wakeup_capable - device_set_wakeup_enable - __dev_kfree_skb_any - dev_open - dql_completed - dql_reset - eth_mac_addr - ethtool_op_get_link - ethtool_op_get_ts_info - eth_type_trans - free_netdev - in4_pton - in6_pton - jiffies_to_usecs - mdiobus_alloc_size - mdiobus_free - mdiobus_get_phy - __mdiobus_register - mdiobus_unregister - napi_complete_done - napi_disable - napi_gro_receive - __napi_schedule - __napi_schedule_irqoff - napi_schedule_prep - netdev_alert - __netdev_alloc_skb - netdev_err - netdev_info - netdev_update_features - netdev_warn - netif_carrier_off - netif_device_attach - netif_device_detach - netif_napi_add - __netif_napi_del - netif_schedule_queue - netif_set_real_num_rx_queues - netif_set_real_num_tx_queues - netif_tx_wake_queue - net_ratelimit - of_get_mac_address - of_mdiobus_register - of_phy_deregister_fixed_link - of_phy_is_fixed_link - of_phy_register_fixed_link - phy_attached_info - phy_disconnect - phy_ethtool_get_eee - phy_ethtool_ksettings_get - phy_ethtool_ksettings_set - phy_ethtool_nway_reset - phy_ethtool_set_eee - phy_get_eee_err - phy_init_eee - phylink_connect_phy - phylink_create - phylink_destroy - phylink_of_phy_connect - phylink_set_port_modes - phylink_start - phy_mac_interrupt - phy_mii_ioctl - phy_resume - phy_start_aneg - phy_stop - phy_suspend - pinctrl_pm_select_default_state - pinctrl_pm_select_sleep_state - platform_get_irq_byname - _raw_spin_lock_bh - _raw_spin_unlock_bh - register_netdev - rtnl_lock - rtnl_unlock - skb_pull - skb_put - skb_tstamp_tx - synchronize_net - unregister_netdev - -# required by samsung_dma_heap.ko - anon_inode_getfile - deferred_free - devm_add_action - devm_gen_pool_create - dmabuf_page_pool_alloc - dmabuf_page_pool_create - dmabuf_page_pool_destroy - dmabuf_page_pool_free - dma_heap_add - dma_heap_get_dev - dma_heap_get_drvdata - dma_heap_get_name - is_dma_buf_file - iterate_fd - mutex_trylock - of_reserved_mem_device_release - __traceiter_android_vh_show_mem - __tracepoint_android_vh_show_mem - vm_insert_page - -# required by samsung_iommu.ko - bus_set_iommu - device_link_add - device_link_del - iommu_attach_group - iommu_device_register - iommu_device_sysfs_add - iommu_device_sysfs_remove - iommu_device_unlink - iommu_device_unregister - iommu_domain_alloc - iommu_fwspec_add_ids - iommu_fwspec_free - iommu_get_dma_cookie - iommu_group_for_each_dev - iommu_group_get - iommu_group_get_iommudata - iommu_group_remove_device - iommu_group_set_iommudata - iommu_put_dma_cookie - iommu_report_device_fault - kmem_cache_alloc - kmem_cache_create - kmem_cache_destroy - kmem_cache_free - of_get_dma_window - pfn_valid - -# required by scaler.ko - clk_set_parent - dma_heap_buffer_free - v4l2_ctrl_handler_free - v4l2_ctrl_handler_init_class - v4l2_ctrl_handler_setup - v4l2_ctrl_new_custom - v4l2_ctrl_new_std - v4l2_m2m_buf_queue - v4l2_m2m_buf_remove - v4l2_m2m_ctx_init - v4l2_m2m_ctx_release - v4l2_m2m_dqbuf - v4l2_m2m_get_curr_priv - v4l2_m2m_get_vq - v4l2_m2m_init - v4l2_m2m_job_finish - v4l2_m2m_mmap - v4l2_m2m_next_buf - v4l2_m2m_poll - v4l2_m2m_qbuf - v4l2_m2m_querybuf - v4l2_m2m_release - v4l2_m2m_reqbufs - v4l2_m2m_streamoff - v4l2_m2m_streamon - v4l2_m2m_try_schedule - v4l_bound_align_image - -# required by snd-soc-s3c-dma.ko - devm_snd_dmaengine_pcm_register - snd_dmaengine_pcm_prepare_slave_config - -# required by snd-soc-samsung-abox-core.ko - devm_iounmap - __devm_regmap_init - __devm_regmap_init_mmio_clk - dma_mmap_attrs - __platform_register_drivers - platform_unregister_drivers - pm_runtime_no_callbacks - snd_pcm_hw_constraint_integer - snd_pcm_lib_free_pages - snd_pcm_lib_malloc_pages - snd_pcm_lib_preallocate_free_for_all - snd_pcm_lib_preallocate_pages - snd_pcm_period_elapsed - snd_pcm_release_substream - snd_soc_component_init_regmap - snd_soc_component_read - snd_soc_dapm_add_routes - snd_soc_dapm_get_enum_double - snd_soc_dapm_new_control - snd_soc_dapm_new_controls - snd_soc_dapm_put_enum_double - snd_soc_info_enum_double - snd_soc_set_runtime_hwparams - snd_soc_unregister_component - -# required by snd-soc-tas6424.ko - regcache_cache_only - snd_soc_get_volsw - snd_soc_put_volsw - -# required by spi-exynosauto.ko - __spi_alloc_controller - spi_controller_resume - spi_controller_suspend - spi_delay_exec - spi_finalize_current_message - spi_register_controller - spi_unregister_controller - -# required by spidev.ko - driver_unregister - find_next_zero_bit - __spi_register_driver - spi_setup - spi_sync - stream_open - -# required by syscon-reboot-mode.ko - syscon_node_to_regmap - -# required by ufs-exynosauto-core.ko - blk_ksm_init_passthrough - __traceiter_android_vh_ufs_fill_prdt - __tracepoint_android_vh_ufs_fill_prdt - ufshcd_config_pwr_mode - ufshcd_dme_get_attr - ufshcd_dme_set_attr - ufshcd_link_recovery - ufshcd_pltfrm_init - ufshcd_remove - ufshcd_shutdown - ufshcd_system_resume - ufshcd_system_suspend - -# required by vbufq-be-module.ko - drain_workqueue - radix_tree_delete - radix_tree_insert - radix_tree_lookup - radix_tree_next_chunk - -# required by vdriver-lib-module.ko - kset_create_and_add - -# required by vevdev-fe-module.ko - input_alloc_absinfo - input_allocate_device - input_event - input_free_device - input_mt_init_slots - input_register_device - input_unregister_device - -# required by videobuf2-dma-sg.ko - vb2_common_vm_ops - vb2_create_framevec - vb2_destroy_framevec - vm_map_pages - vm_map_ram - vm_unmap_ram - -# required by vlx-clk-ctrl-common-module.ko - vscnprintf - -# required by vlx-hyp-module.ko - ioremap_cache - irq_create_of_mapping - irq_dispose_mapping - irq_find_matching_fwspec - of_irq_find_parent - proc_mkdir - -# required by vlx-last-kmsg-module.ko - proc_set_size - -# required by vlx-prop-module.ko - kobject_uevent - sysfs_create_bin_file - sysfs_remove_bin_file - -# required by vlx-vipc-module.ko - sigprocmask - -# required by vlx-vmq-module.ko - default_wake_function - remove_wait_queue - -# required by vrpc-module.ko - current_work diff --git a/android/abi_gki_aarch64_generic b/android/abi_gki_aarch64_generic deleted file mode 100644 index c13cbabe6d35..000000000000 --- a/android/abi_gki_aarch64_generic +++ /dev/null @@ -1,2285 +0,0 @@ -[abi_symbol_list] - add_cpu - add_timer - add_timer_on - add_wait_queue - adjust_managed_page_count - alarm_cancel - alarm_init - alarm_start_relative - alarmtimer_get_rtcdev - alarm_try_to_cancel - alloc_anon_inode - alloc_chrdev_region - __alloc_disk_node - alloc_etherdev_mqs - alloc_netdev_mqs - alloc_pages_exact - __alloc_pages_nodemask - __alloc_percpu - __alloc_percpu_gfp - __alloc_skb - alloc_workqueue - amba_driver_register - amba_driver_unregister - android_rvh_probe_register - anon_inode_getfd - arc4_crypt - arc4_setkey - __arch_clear_user - __arch_copy_from_user - __arch_copy_in_user - __arch_copy_to_user - arch_timer_read_counter - arm64_const_caps_ready - arm64_use_ng_mappings - __arm_smccc_smc - async_schedule_node_domain - async_synchronize_full_domain - atomic_notifier_call_chain - atomic_notifier_chain_register - atomic_notifier_chain_unregister - autoremove_wake_function - available_idle_cpu - bcmp - bdget_disk - bdput - bin2hex - bio_add_page - bio_alloc_bioset - bio_associate_blkg - bio_chain - bio_endio - bio_init - bio_put - __bitmap_andnot - __bitmap_clear - __bitmap_equal - bitmap_from_arr32 - __bitmap_or - bitmap_parse - bitmap_parselist - bitmap_print_to_pagebuf - bitmap_to_arr32 - __bitmap_weight - blk_alloc_queue - blk_cleanup_queue - blkdev_get_by_dev - blkdev_put - blk_execute_rq_nowait - blk_get_request - blk_put_request - blk_queue_flag_clear - blk_queue_flag_set - blk_queue_io_min - blk_queue_io_opt - blk_queue_logical_block_size - blk_queue_max_discard_sectors - blk_queue_max_write_zeroes_sectors - blk_queue_physical_block_size - blk_rq_map_user - blk_rq_map_user_iov - blk_rq_unmap_user - blk_status_to_errno - blk_verify_command - blocking_notifier_call_chain - blocking_notifier_chain_register - blocking_notifier_chain_unregister - bpf_trace_run1 - bpf_trace_run10 - bpf_trace_run11 - bpf_trace_run12 - bpf_trace_run2 - bpf_trace_run3 - bpf_trace_run4 - bpf_trace_run5 - bpf_trace_run6 - bpf_trace_run7 - bpf_trace_run8 - bpf_trace_run9 - build_skb - bus_find_device - bus_for_each_dev - bus_for_each_drv - bus_register - bus_register_notifier - bus_set_iommu - bus_unregister - bus_unregister_notifier - cache_line_size - call_rcu - cancel_delayed_work - cancel_delayed_work_sync - cancel_work_sync - capable - cdev_add - cdev_alloc - cdev_del - cdev_device_add - cdev_device_del - cdev_init - __cfi_slowpath - __check_object_size - __class_create - class_destroy - class_interface_unregister - __class_register - class_unregister - clear_page - __ClearPageMovable - clk_disable - clk_enable - clk_get - __clk_get_hw - __clk_get_name - clk_get_parent - clk_get_rate - clk_hw_get_name - clk_hw_get_parent - __clk_is_enabled - clk_notifier_register - clk_notifier_unregister - clk_prepare - clk_put - clk_register - clk_register_clkdev - clk_register_fixed_factor - clk_register_fixed_rate - clk_register_gate - clk_set_rate - clk_unprepare - clockevents_config_and_register - clocks_calc_mult_shift - __clocksource_register_scale - __close_fd - cma_alloc - cma_for_each_area - cma_get_name - cma_release - compat_alloc_user_space - complete - complete_all - complete_and_exit - completion_done - component_add - component_bind_all - component_del - component_master_add_with_match - component_master_del - component_match_add_release - component_unbind_all - config_ep_by_speed - config_group_init_type_name - console_suspend_enabled - console_trylock - console_unlock - __const_udelay - consume_skb - contig_page_data - _copy_from_iter - _copy_to_iter - __cpu_active_mask - cpu_all_bits - cpu_bit_bitmap - cpufreq_add_update_util_hook - cpufreq_cpu_get - cpufreq_cpu_get_raw - cpufreq_cpu_put - cpufreq_disable_fast_switch - cpufreq_driver_fast_switch - cpufreq_driver_resolve_freq - __cpufreq_driver_target - cpufreq_driver_target - cpufreq_enable_fast_switch - cpufreq_freq_transition_begin - cpufreq_freq_transition_end - cpufreq_frequency_table_verify - cpufreq_generic_attr - cpufreq_get - cpufreq_policy_transition_delay_us - cpufreq_quick_get - cpufreq_register_driver - cpufreq_register_governor - cpufreq_register_notifier - cpufreq_remove_update_util_hook - cpufreq_table_index_unsorted - cpufreq_this_cpu_can_update - __cpuhp_remove_state - __cpuhp_setup_state - __cpuhp_setup_state_cpuslocked - __cpuhp_state_add_instance - __cpuhp_state_remove_instance - cpuhp_tasks_frozen - cpu_hwcap_keys - cpu_hwcaps - cpu_latency_qos_add_request - cpu_latency_qos_remove_request - cpu_latency_qos_update_request - cpumask_any_but - cpumask_next - cpumask_next_and - cpumask_next_wrap - cpu_number - __cpu_online_mask - cpu_pm_register_notifier - __cpu_possible_mask - cpupri_find_fitness - cpu_scale - cpus_read_lock - cpus_read_unlock - cpu_subsys - crc32_be - crc32_le - crc8 - crc8_populate_msb - crypto_aead_decrypt - crypto_aead_encrypt - crypto_aead_setauthsize - crypto_aead_setkey - crypto_alloc_aead - crypto_alloc_base - crypto_alloc_shash - crypto_alloc_skcipher - crypto_alloc_sync_skcipher - crypto_comp_compress - crypto_comp_decompress - crypto_destroy_tfm - __crypto_memneq - crypto_register_alg - crypto_register_scomp - crypto_shash_digest - crypto_shash_finup - crypto_shash_setkey - crypto_shash_update - crypto_skcipher_decrypt - crypto_skcipher_encrypt - crypto_skcipher_setkey - crypto_unregister_alg - crypto_unregister_scomp - __crypto_xor - csum_ipv6_magic - csum_tcpudp_nofold - _ctype - debugfs_attr_read - debugfs_attr_write - debugfs_create_atomic_t - debugfs_create_bool - debugfs_create_dir - debugfs_create_file - debugfs_create_size_t - debugfs_create_u16 - debugfs_create_u32 - debugfs_create_u64 - debugfs_create_u8 - debugfs_create_x32 - debugfs_lookup - debugfs_remove - debugfs_rename - dec_zone_page_state - default_llseek - deferred_free - delayed_work_timer_fn - del_gendisk - del_timer - del_timer_sync - desc_to_gpio - destroy_workqueue - dev_alloc_name - dev_change_net_namespace - dev_close - _dev_crit - dev_driver_string - _dev_emerg - _dev_err - dev_fetch_sw_netstats - devfreq_add_device - devfreq_add_governor - devfreq_monitor_resume - devfreq_monitor_start - devfreq_monitor_stop - devfreq_monitor_suspend - devfreq_recommended_opp - devfreq_register_opp_notifier - devfreq_remove_device - devfreq_unregister_opp_notifier - devfreq_update_interval - dev_fwnode - __dev_get_by_index - dev_get_by_index - dev_get_by_name - device_add - device_add_disk - device_add_groups - device_create - device_create_file - device_create_with_groups - device_del - device_destroy - device_find_child - device_for_each_child - device_get_dma_attr - device_initialize - device_init_wakeup - device_link_add - device_link_del - device_property_present - device_property_read_string - device_property_read_string_array - device_property_read_u32_array - device_register - device_remove_file - device_remove_groups - device_rename - device_set_wakeup_capable - device_set_wakeup_enable - device_unregister - device_wakeup_enable - _dev_info - __dev_kfree_skb_any - devm_add_action - __devm_alloc_percpu - devm_backlight_device_register - devm_backlight_device_unregister - devm_blk_ksm_init - devm_clk_get - devm_clk_get_optional - devm_clk_hw_register - devm_clk_hw_register_clkdev - devm_clk_put - devm_device_add_groups - __devm_drm_dev_alloc - devm_drm_panel_bridge_add_typed - devm_extcon_dev_allocate - devm_extcon_dev_register - devm_free_irq - devm_free_percpu - devm_gen_pool_create - devm_gpiochip_add_data_with_key - devm_gpiod_get - devm_gpiod_get_array - devm_gpiod_get_optional - devm_gpiod_put_array - devm_gpio_free - devm_gpio_request - devm_gpio_request_one - devm_i2c_new_dummy_device - devm_iio_device_alloc - __devm_iio_device_register - devm_ioremap - devm_ioremap_resource - devm_ioremap_wc - devm_iounmap - devm_kasprintf - devm_kfree - devm_kmalloc - devm_kmemdup - devm_kstrdup - devm_kstrdup_const - devm_mfd_add_devices - devm_nvmem_register - devm_of_clk_add_hw_provider - __devm_of_phy_provider_register - devm_of_platform_populate - devm_phy_create - devm_phy_get - devm_phy_put - devm_pinctrl_get - devm_pinctrl_put - devm_pinctrl_register - devm_pinctrl_register_and_init - devm_platform_ioremap_resource - devm_platform_ioremap_resource_byname - devm_power_supply_register - devm_pwm_get - devm_regmap_add_irq_chip - __devm_regmap_init - __devm_regmap_init_i2c - __devm_regmap_init_spi - devm_regulator_bulk_get - devm_regulator_get - devm_regulator_get_optional - devm_regulator_put - devm_regulator_register - __devm_request_region - devm_request_threaded_irq - devm_rtc_device_register - devm_snd_soc_register_component - devm_thermal_of_cooling_device_register - devm_thermal_zone_of_sensor_register - devm_thermal_zone_of_sensor_unregister - devm_usb_get_phy_by_phandle - _dev_notice - dev_pm_domain_attach_by_name - dev_pm_domain_detach - dev_pm_opp_add - dev_pm_opp_disable - dev_pm_opp_find_freq_ceil - dev_pm_opp_find_freq_exact - dev_pm_opp_find_freq_floor - dev_pm_opp_get_freq - dev_pm_opp_get_opp_count - dev_pm_opp_get_voltage - dev_pm_opp_of_add_table - dev_pm_opp_of_register_em - dev_pm_opp_of_remove_table - dev_pm_opp_put - dev_pm_opp_put_regulators - dev_pm_opp_set_regulators - dev_pm_qos_read_value - dev_pm_qos_update_request - dev_printk - dev_printk_emit - dev_queue_xmit - devres_add - devres_alloc_node - devres_free - dev_set_name - _dev_warn - disable_irq - disable_irq_nosync - disable_percpu_irq - disk_end_io_acct - disk_start_io_acct - dma_alloc_attrs - dma_async_device_register - dma_async_device_unregister - dma_async_tx_descriptor_init - dma_buf_attach - dma_buf_begin_cpu_access - dma_buf_begin_cpu_access_partial - dma_buf_detach - dma_buf_end_cpu_access - dma_buf_end_cpu_access_partial - dma_buf_export - dma_buf_fd - dma_buf_get - dma_buf_map_attachment - dma_buf_mmap - dmabuf_page_pool_alloc - dmabuf_page_pool_create - dmabuf_page_pool_destroy - dmabuf_page_pool_free - dma_buf_put - dma_buf_unmap_attachment - dma_buf_vmap - dma_buf_vunmap - dmaengine_unmap_put - dma_fence_add_callback - dma_fence_context_alloc - dma_fence_default_wait - dma_fence_get_status - dma_fence_init - dma_fence_release - dma_fence_remove_callback - dma_fence_signal - dma_fence_signal_locked - dma_free_attrs - dma_get_slave_caps - dma_get_slave_channel - dma_heap_add - dma_heap_buffer_alloc - dma_heap_find - dma_heap_get_dev - dma_heap_get_drvdata - dma_heap_get_name - dma_heap_put - dmam_alloc_attrs - dma_map_page_attrs - dma_map_resource - dma_map_sg_attrs - dma_mmap_attrs - dma_pool_alloc - dma_pool_free - dma_release_channel - dma_request_chan - dma_set_coherent_mask - dma_set_mask - dma_sync_sg_for_cpu - dma_sync_sg_for_device - dma_sync_single_for_cpu - dma_sync_single_for_device - dma_unmap_page_attrs - dma_unmap_resource - dma_unmap_sg_attrs - do_SAK - do_wait_intr_irq - down - downgrade_write - down_interruptible - down_read - down_read_trylock - down_timeout - down_trylock - down_write - drain_workqueue - driver_create_file - driver_register - driver_remove_file - driver_unregister - drm_add_modes_noedid - drm_atomic_add_affected_connectors - drm_atomic_add_affected_planes - drm_atomic_commit - drm_atomic_get_connector_state - drm_atomic_get_crtc_state - drm_atomic_get_new_connector_for_encoder - drm_atomic_get_old_connector_for_encoder - drm_atomic_get_plane_state - drm_atomic_get_private_obj_state - drm_atomic_helper_bridge_destroy_state - drm_atomic_helper_bridge_duplicate_state - drm_atomic_helper_bridge_reset - drm_atomic_helper_check_modeset - drm_atomic_helper_check_planes - drm_atomic_helper_check_plane_state - drm_atomic_helper_cleanup_planes - drm_atomic_helper_commit_cleanup_done - drm_atomic_helper_commit_duplicated_state - drm_atomic_helper_commit_hw_done - drm_atomic_helper_commit_modeset_disables - drm_atomic_helper_commit_modeset_enables - drm_atomic_helper_commit_planes - drm_atomic_helper_commit_tail - __drm_atomic_helper_connector_destroy_state - __drm_atomic_helper_connector_duplicate_state - __drm_atomic_helper_crtc_destroy_state - __drm_atomic_helper_crtc_duplicate_state - __drm_atomic_helper_crtc_reset - drm_atomic_helper_disable_all - drm_atomic_helper_disable_plane - drm_atomic_helper_duplicate_state - drm_atomic_helper_fake_vblank - drm_atomic_helper_page_flip - __drm_atomic_helper_plane_destroy_state - __drm_atomic_helper_plane_duplicate_state - drm_atomic_helper_prepare_planes - __drm_atomic_helper_private_obj_duplicate_state - drm_atomic_helper_set_config - drm_atomic_helper_setup_commit - drm_atomic_helper_shutdown - drm_atomic_helper_swap_state - drm_atomic_helper_update_plane - drm_atomic_helper_wait_for_dependencies - drm_atomic_helper_wait_for_fences - drm_atomic_helper_wait_for_flip_done - drm_atomic_nonblocking_commit - drm_atomic_normalize_zpos - drm_atomic_private_obj_fini - drm_atomic_private_obj_init - drm_atomic_set_crtc_for_connector - drm_atomic_set_crtc_for_plane - drm_atomic_set_fb_for_plane - drm_atomic_set_mode_for_crtc - drm_atomic_set_mode_prop_for_crtc - drm_atomic_state_alloc - drm_atomic_state_clear - __drm_atomic_state_free - drm_bridge_add - drm_bridge_attach - drm_bridge_chain_mode_set - drm_bridge_remove - drm_compat_ioctl - drm_connector_attach_encoder - drm_connector_cleanup - drm_connector_init - drm_connector_list_iter_begin - drm_connector_list_iter_end - drm_connector_list_iter_next - drm_connector_register - drm_connector_unregister - drm_crtc_arm_vblank_event - drm_crtc_cleanup - __drm_crtc_commit_free - drm_crtc_enable_color_mgmt - drm_crtc_handle_vblank - drm_crtc_init_with_planes - drm_crtc_send_vblank_event - drm_crtc_vblank_count_and_time - drm_crtc_vblank_get - drm_crtc_vblank_off - drm_crtc_vblank_on - drm_crtc_vblank_put - drm_crtc_wait_one_vblank - __drm_dbg - drm_dev_put - drm_dev_register - drm_dev_unregister - drm_display_mode_to_videomode - drm_encoder_cleanup - drm_encoder_init - __drm_err - drm_event_cancel_free - drm_event_reserve_init - drm_format_info - drm_framebuffer_init - drm_gem_create_mmap_offset - drm_gem_fb_create_handle - drm_gem_fb_destroy - drm_gem_handle_create - drm_gem_mmap - drm_gem_object_free - drm_gem_object_lookup - drm_gem_object_release - drm_gem_prime_fd_to_handle - drm_gem_prime_handle_to_fd - drm_gem_prime_import_dev - drm_gem_private_object_init - drm_gem_vm_close - drm_gem_vm_open - drm_get_format_info - drm_get_format_name - drm_helper_mode_fill_fb_struct - drm_helper_probe_single_connector_modes - drm_ioctl - drm_kms_helper_hotplug_event - drm_kms_helper_poll_fini - drm_kms_helper_poll_init - drmm_kmalloc - drmm_mode_config_init - drm_mode_config_reset - drm_mode_convert_to_umode - drm_mode_copy - drm_mode_duplicate - drm_mode_equal - drm_mode_equal_no_clocks - drm_mode_object_find - drm_mode_object_put - drm_mode_probed_add - drm_modeset_acquire_fini - drm_modeset_acquire_init - drm_modeset_backoff - drm_modeset_drop_locks - drm_modeset_lock - drm_modeset_lock_all_ctx - drm_modeset_unlock - drm_mode_vrefresh - drm_object_attach_property - drm_open - drm_panel_add - drm_panel_disable - drm_panel_enable - drm_panel_get_modes - drm_panel_init - drm_panel_prepare - drm_panel_remove - drm_panel_unprepare - drm_plane_cleanup - drm_plane_create_alpha_property - drm_plane_create_blend_mode_property - drm_plane_create_rotation_property - drm_plane_create_zpos_property - drm_poll - drm_prime_gem_destroy - drm_printf - __drm_printfn_info - __drm_printfn_seq_file - drm_property_blob_get - drm_property_blob_put - drm_property_create - drm_property_create_bitmask - drm_property_create_blob - drm_property_create_bool - drm_property_create_enum - drm_property_create_range - drm_property_lookup_blob - drm_property_replace_blob - __drm_puts_seq_file - drm_read - drm_rect_clip_scaled - drm_rect_intersect - drm_release - drm_rotation_simplify - drm_self_refresh_helper_alter_state - drm_send_event - drm_send_event_locked - drm_universal_plane_init - drm_vblank_init - drm_writeback_connector_init - drm_writeback_queue_job - drm_writeback_signal_completion - dump_backtrace - dump_stack - dwc3_send_gadget_ep_cmd - dwc3_stop_active_transfer - dw_handle_msi_irq - dw_pcie_host_init - dw_pcie_msi_init - dw_pcie_read - dw_pcie_setup_rc - dw_pcie_write - __dynamic_dev_dbg - __dynamic_pr_debug - emergency_restart - enable_irq - enable_percpu_irq - ether_setup - eth_mac_addr - ethtool_op_get_link - eth_type_trans - eventfd_ctx_fdget - eventfd_ctx_put - eventfd_signal - event_triggers_call - extcon_get_edev_by_phandle - extcon_get_property - extcon_get_state - extcon_register_notifier - extcon_set_property - extcon_set_property_capability - extcon_set_state_sync - extcon_unregister_notifier - failure_tracking - fasync_helper - __fdget - fd_install - fget - file_path - filp_close - filp_open_block - find_extend_vma - find_get_pid - find_next_bit - find_next_zero_bit - find_task_by_vpid - find_vma - finish_wait - flush_dcache_page - flush_delayed_work - flush_work - flush_workqueue - fput - frame_vector_create - frame_vector_destroy - frame_vector_to_pages - free_irq - free_netdev - __free_pages - free_pages - free_pages_exact - free_percpu - free_percpu_irq - freezing_slow_path - freq_qos_add_request - freq_qos_remove_request - freq_qos_update_request - fs_bio_set - fsync_bdev - full_name_hash - fwnode_get_name - fwnode_gpiod_get_index - gcd - generic_file_llseek - generic_handle_irq - generic_iommu_put_resv_regions - genlmsg_multicast_allns - genlmsg_put - genl_register_family - genl_unregister_family - gen_pool_add_owner - gen_pool_alloc_algo_owner - gen_pool_avail - gen_pool_create - gen_pool_destroy - gen_pool_first_fit_align - gen_pool_free_owner - gen_pool_size - get_cpu_device - get_cpu_idle_time - get_cpu_idle_time_us - get_cpu_iowait_time_us - get_device - __get_free_pages - get_governor_parent_kobj - get_net_ns_by_fd - get_net_ns_by_pid - get_pid_task - get_random_bytes - get_random_bytes_arch - get_random_u32 - get_sg_io_hdr - __get_task_comm - get_thermal_instance - get_unused_fd_flags - get_user_pages - get_user_pages_fast - get_user_pages_remote - get_vaddr_frames - gic_nonsecure_priorities - glob_match - gov_attr_set_get - gov_attr_set_init - gov_attr_set_put - governor_sysfs_ops - gpiochip_generic_config - gpiochip_generic_free - gpiochip_generic_request - gpiochip_get_data - gpiochip_lock_as_irq - gpiochip_unlock_as_irq - gpiod_count - gpiod_direction_input - gpiod_direction_output - gpiod_direction_output_raw - gpiod_get_raw_value - gpiod_get_raw_value_cansleep - gpiod_get_value - gpiod_get_value_cansleep - gpiod_set_raw_value - gpiod_set_raw_value_cansleep - gpiod_set_value - gpiod_set_value_cansleep - gpiod_to_irq - gpio_free - gpio_request - gpio_request_one - gpio_to_desc - gserial_alloc_line - gserial_connect - gserial_disconnect - handle_edge_irq - handle_level_irq - handle_nested_irq - handle_simple_irq - handle_sysrq - have_governor_per_policy - hex2bin - hex_dump_to_buffer - hex_to_bin - hid_add_device - hid_allocate_device - hid_debug - hid_destroy_device - hid_input_report - hid_parse_report - hrtimer_active - hrtimer_cancel - hrtimer_forward - hrtimer_init - hrtimer_init_sleeper - hrtimer_sleeper_start_expires - hrtimer_start_range_ns - hrtimer_try_to_cancel - __hw_addr_init - __hw_addr_sync - __hw_addr_unsync - hwrng_register - hwrng_unregister - i2c_adapter_type - i2c_add_numbered_adapter - i2c_bus_type - i2c_del_adapter - i2c_del_driver - i2c_for_each_dev - i2c_get_adapter - i2c_match_id - i2c_new_ancillary_device - i2c_new_client_device - i2c_new_dummy_device - i2c_put_adapter - i2c_register_driver - i2c_smbus_read_byte_data - i2c_smbus_write_byte_data - i2c_smbus_xfer - i2c_transfer - i2c_transfer_buffer_flags - i2c_unregister_device - i2c_verify_client - ida_alloc_range - ida_free - idr_alloc - idr_destroy - idr_find - idr_for_each - idr_get_next - idr_preload - idr_remove - iio_device_unregister - import_iovec - in6_pton - in_aton - inc_zone_page_state - inet_csk_get_port - init_dummy_netdev - init_net - init_pseudo - __init_rwsem - __init_swait_queue_head - init_task - init_timer_key - init_uts_ns - init_wait_entry - __init_waitqueue_head - input_allocate_device - input_close_device - input_event - input_free_device - input_mt_destroy_slots - input_mt_init_slots - input_mt_report_slot_state - input_open_device - input_register_device - input_register_handle - input_register_handler - input_set_abs_params - input_set_capability - input_set_timestamp - input_unregister_device - input_unregister_handle - input_unregister_handler - int_sqrt - iomem_resource - iommu_alloc_resv_region - iommu_attach_group - iommu_aux_attach_device - iommu_aux_detach_device - iommu_aux_get_pasid - iommu_dev_enable_feature - iommu_dev_feature_enabled - iommu_device_register - iommu_device_sysfs_add - iommu_device_sysfs_remove - iommu_device_unlink - iommu_device_unregister - iommu_domain_alloc - iommu_domain_free - iommu_fwspec_add_ids - iommu_fwspec_free - iommu_get_dma_cookie - iommu_get_domain_for_dev - iommu_group_alloc - iommu_group_for_each_dev - iommu_group_get - iommu_group_get_iommudata - iommu_group_put - iommu_group_set_iommudata - iommu_group_set_name - iommu_iova_to_phys - iommu_map - iommu_map_sg - iommu_put_dma_cookie - iommu_register_device_fault_handler - iommu_report_device_fault - iommu_set_fault_handler - iommu_unmap - iommu_unregister_device_fault_handler - __ioremap - io_schedule_timeout - iounmap - ip_send_check - iput - __irq_alloc_descs - irq_create_mapping_affinity - irq_create_of_mapping - __irq_domain_add - irq_domain_remove - irq_domain_xlate_twocell - irq_find_mapping - irq_get_irq_data - irq_modify_status - irq_of_parse_and_map - irq_set_affinity_hint - irq_set_chained_handler_and_data - irq_set_chip_and_handler_name - irq_set_chip_data - irq_set_irq_type - irq_set_irq_wake - irq_to_desc - irq_work_queue - irq_work_sync - is_vmalloc_addr - jiffies - jiffies64_to_msecs - jiffies_to_msecs - jiffies_to_usecs - kasan_flag_enabled - kasprintf - kernel_cpustat - kernel_kobj - kernel_param_lock - kernel_param_unlock - kernel_restart - kern_mount - kern_unmount - key_create_or_update - key_put - keyring_alloc - __kfifo_alloc - __kfifo_free - __kfifo_in - __kfifo_init - __kfifo_out - kfree - kfree_sensitive - kfree_skb - kfree_skb_list - kill_anon_super - kill_fasync - kimage_voffset - __kmalloc - kmalloc_caches - kmalloc_order - kmalloc_order_trace - kmem_cache_alloc - kmem_cache_alloc_trace - kmem_cache_create - kmem_cache_destroy - kmem_cache_free - kmemdup - kobject_add - kobject_create_and_add - kobject_del - kobject_init - kobject_init_and_add - kobject_put - kobject_uevent - kobject_uevent_env - kobj_sysfs_ops - krealloc - kstat - kstrdup - kstrndup - kstrtobool - kstrtobool_from_user - kstrtoint - kstrtoint_from_user - kstrtol_from_user - kstrtoll - kstrtos8 - kstrtou16 - kstrtou8 - kstrtouint - kstrtouint_from_user - kstrtoull - kthread_bind - kthread_bind_mask - kthread_cancel_delayed_work_sync - kthread_cancel_work_sync - kthread_create_on_node - kthread_create_worker - kthread_delayed_work_timer_fn - kthread_destroy_worker - kthread_flush_work - kthread_flush_worker - __kthread_init_worker - kthread_mod_delayed_work - kthread_queue_work - kthread_should_stop - kthread_stop - kthread_worker_fn - ktime_get - ktime_get_coarse_with_offset - ktime_get_mono_fast_ns - ktime_get_raw - ktime_get_raw_ts64 - ktime_get_real_seconds - ktime_get_real_ts64 - ktime_get_seconds - ktime_get_ts64 - ktime_get_with_offset - kvfree - kvfree_call_rcu - kvmalloc_node - led_classdev_register_ext - led_classdev_unregister - __list_add_valid - __list_del_entry_valid - list_sort - __local_bh_enable_ip - __lock_page - log_abnormal_wakeup_reason - __log_post_read_mmio - __log_read_mmio - log_threaded_irq_wakeup_reason - __log_write_mmio - loops_per_jiffy - lru_cache_disable - lru_cache_enable - lzo1x_1_compress - lzo1x_decompress_safe - lzorle1x_1_compress - mac_pton - mbox_chan_received_data - mbox_controller_register - mbox_controller_unregister - mbox_free_channel - mbox_request_channel - mbox_send_message - memcmp - memcpy - __memcpy_fromio - __memcpy_toio - memdup_user - memdup_user_nul - memmove - memparse - memremap - memset - memset64 - memstart_addr - memunmap - mfd_add_devices - mfd_remove_devices - mipi_dsi_attach - mipi_dsi_compression_mode - mipi_dsi_create_packet - mipi_dsi_dcs_read - mipi_dsi_dcs_set_column_address - mipi_dsi_dcs_set_display_brightness - mipi_dsi_dcs_set_page_address - mipi_dsi_dcs_write_buffer - mipi_dsi_detach - mipi_dsi_device_register_full - mipi_dsi_driver_register_full - mipi_dsi_driver_unregister - mipi_dsi_host_register - mipi_dsi_host_unregister - mipi_dsi_packet_format_is_long - mipi_dsi_picture_parameter_set - misc_deregister - misc_register - mktime64 - __mmdrop - mod_delayed_work_on - mod_timer - __module_get - module_layout - module_put - __msecs_to_jiffies - msleep - msleep_interruptible - __mutex_init - mutex_is_locked - mutex_lock - mutex_lock_interruptible - mutex_trylock - mutex_unlock - __napi_alloc_skb - napi_complete_done - napi_disable - napi_gro_flush - napi_gro_receive - __napi_schedule - napi_schedule_prep - __netdev_alloc_skb - netdev_err - netdev_info - netdev_set_default_ethtool_ops - netdev_state_change - netdev_update_features - netif_carrier_off - netif_carrier_on - netif_napi_add - __netif_napi_del - netif_receive_skb - netif_receive_skb_list - netif_rx - netif_rx_ni - netif_tx_stop_all_queues - netif_tx_wake_queue - netlink_broadcast - __netlink_kernel_create - netlink_kernel_release - netlink_register_notifier - netlink_unicast - netlink_unregister_notifier - net_ns_type_operations - net_ratelimit - nla_append - nla_find - nla_memcpy - __nla_parse - nla_put - nla_put_64bit - nla_put_nohdr - nla_reserve - nla_strlcpy - __nla_validate - __nlmsg_put - no_llseek - nonseekable_open - noop_llseek - nr_cpu_ids - nr_irqs - nsec_to_clock_t - ns_to_timespec64 - __num_online_cpus - nvmem_device_put - nvmem_device_read - nvmem_device_write - of_address_to_resource - of_alias_get_id - of_clk_add_provider - of_clk_get - of_clk_get_by_name - of_clk_hw_simple_get - of_clk_src_onecell_get - of_count_phandle_with_args - of_cpu_node_to_id - of_device_get_match_data - of_device_is_available - of_device_is_compatible - of_dma_controller_free - of_dma_controller_register - of_drm_find_bridge - of_drm_find_panel - of_find_compatible_node - of_find_device_by_node - of_find_i2c_adapter_by_node - of_find_i2c_device_by_node - of_find_matching_node_and_match - of_find_node_by_name - of_find_node_by_phandle - of_find_node_by_type - of_find_node_opts_by_path - of_find_property - of_fwnode_ops - of_genpd_add_provider_simple - of_get_child_by_name - of_get_cpu_node - of_get_dma_window - of_get_named_gpio_flags - of_get_next_available_child - of_get_next_child - of_get_property - of_get_regulator_init_data - of_iomap - of_irq_find_parent - of_irq_get_byname - of_irq_parse_one - of_machine_is_compatible - of_match_device - of_match_node - of_n_addr_cells - of_node_name_eq - of_n_size_cells - of_nvmem_device_get - of_parse_phandle - of_parse_phandle_with_args - of_parse_phandle_with_fixed_args - of_phandle_iterator_init - of_phandle_iterator_next - of_platform_populate - of_property_count_elems_of_size - of_property_match_string - of_property_read_string - of_property_read_string_helper - of_property_read_u32_index - of_property_read_u64 - of_property_read_u64_index - of_property_read_variable_u16_array - of_property_read_variable_u32_array - of_property_read_variable_u64_array - of_property_read_variable_u8_array - of_prop_next_string - of_prop_next_u32 - of_reserved_mem_device_init_by_idx - of_reserved_mem_device_release - of_reserved_mem_lookup - of_root - of_thermal_get_ntrips - of_thermal_get_trip_points - of_translate_address - of_usb_host_tpl_support - page_endio - page_mapping - __page_pinner_migration_failed - panic - panic_notifier_list - param_array_ops - param_ops_bool - param_ops_byte - param_ops_charp - param_ops_int - param_ops_long - param_ops_short - param_ops_string - param_ops_uint - param_ops_ulong - pause_cpus - pci_alloc_irq_vectors_affinity - pci_assign_resource - pci_clear_master - pci_disable_device - pci_enable_device - pci_enable_wake - pci_find_bus - pci_find_capability - pci_find_ext_capability - pci_free_irq_vectors - pci_get_device - pci_load_and_free_saved_state - pci_load_saved_state - pci_read_config_dword - pci_read_config_word - __pci_register_driver - pci_release_regions - pci_rescan_bus - pci_restore_msi_state - pci_restore_state - pci_save_state - pci_set_master - pci_set_power_state - pci_store_saved_state - pci_unregister_driver - pci_wake_from_d3 - pci_write_config_dword - pci_write_config_word - PDE_DATA - __per_cpu_offset - perf_event_create_kernel_counter - perf_event_enable - perf_event_pause - perf_event_read_local - perf_event_read_value - perf_event_release_kernel - perf_event_update_userpage - perf_pmu_migrate_context - perf_pmu_register - perf_pmu_unregister - perf_trace_buf_alloc - perf_trace_run_bpf_submit - pfn_valid - phy_init - phy_power_off - phy_power_on - pinconf_generic_dt_free_map - pinconf_generic_dt_node_to_map - pinctrl_add_gpio_range - pinctrl_dev_get_drvdata - pinctrl_enable - pinctrl_force_sleep - pinctrl_lookup_state - pinctrl_remove_gpio_range - pinctrl_select_state - pin_get_name - pin_user_pages_fast - pin_user_pages_remote - pktgen_xfrm_outer_mode_output - platform_bus_type - platform_device_add - platform_device_add_data - platform_device_add_properties - platform_device_add_resources - platform_device_alloc - platform_device_del - platform_device_put - platform_device_register - platform_device_register_full - platform_device_unregister - __platform_driver_probe - __platform_driver_register - platform_driver_unregister - platform_find_device_by_driver - platform_get_irq - platform_get_irq_byname - platform_get_resource - platform_get_resource_byname - platform_irq_count - pm_genpd_add_subdomain - pm_genpd_init - pm_power_off - __pm_relax - pm_relax - pm_runtime_allow - __pm_runtime_disable - pm_runtime_enable - pm_runtime_forbid - pm_runtime_force_resume - pm_runtime_force_suspend - __pm_runtime_idle - pm_runtime_irq_safe - __pm_runtime_resume - pm_runtime_set_autosuspend_delay - __pm_runtime_set_status - __pm_runtime_suspend - __pm_runtime_use_autosuspend - __pm_stay_awake - pm_stay_awake - pm_wakeup_dev_event - pm_wakeup_ws_event - power_supply_changed - power_supply_get_by_name - power_supply_get_by_phandle_array - power_supply_get_drvdata - power_supply_get_property - power_supply_put - power_supply_register - power_supply_reg_notifier - power_supply_set_property - power_supply_unregister - power_supply_unreg_notifier - prandom_bytes - prandom_u32 - preempt_schedule - preempt_schedule_notrace - prepare_to_wait - prepare_to_wait_event - print_hex_dump - printk - printk_deferred - proc_create - proc_create_data - proc_create_single_data - proc_dointvec - proc_dostring - proc_douintvec_minmax - proc_mkdir - proc_mkdir_data - proc_remove - pskb_expand_head - __pskb_pull_tail - ___pskb_trim - put_device - put_disk - __put_net - __put_page - put_sg_io_hdr - __put_task_struct - put_unused_fd - put_vaddr_frames - queue_delayed_work_on - queue_work_on - ___ratelimit - raw_notifier_call_chain - raw_notifier_chain_register - _raw_read_lock - _raw_read_lock_bh - _raw_read_lock_irqsave - _raw_read_unlock - _raw_read_unlock_bh - _raw_read_unlock_irqrestore - _raw_spin_lock - _raw_spin_lock_bh - _raw_spin_lock_irq - _raw_spin_lock_irqsave - _raw_spin_trylock - _raw_spin_unlock - _raw_spin_unlock_bh - _raw_spin_unlock_irq - _raw_spin_unlock_irqrestore - _raw_write_lock - _raw_write_lock_irq - _raw_write_lock_irqsave - _raw_write_unlock - _raw_write_unlock_irq - _raw_write_unlock_irqrestore - rb_erase - rb_first - rb_insert_color - rb_next - rb_prev - rb_replace_node - rcu_barrier - __rcu_read_lock - __rcu_read_unlock - rdev_get_drvdata - rdev_get_id - refcount_warn_saturate - __refrigerator - regcache_cache_only - regcache_drop_region - regcache_mark_dirty - regcache_sync - register_blkdev - __register_chrdev - register_chrdev_region - register_console - register_die_notifier - register_inet6addr_notifier - register_inetaddr_notifier - register_kernel_break_hook - register_netdev - register_netdevice - register_netdevice_notifier - register_pernet_device - register_pernet_subsys - register_pm_notifier - register_reboot_notifier - register_restart_handler - register_shrinker - register_syscore_ops - register_sysctl - register_sysctl_table - register_virtio_device - register_virtio_driver - regmap_async_complete - regmap_bulk_read - regmap_bulk_write - regmap_get_device - regmap_irq_get_virq - regmap_multi_reg_write - regmap_multi_reg_write_bypassed - regmap_raw_read - regmap_raw_write - regmap_raw_write_async - regmap_read - regmap_register_patch - regmap_update_bits_base - regmap_write - regulator_bulk_disable - regulator_bulk_enable - regulator_disable - regulator_disable_regmap - regulator_enable - regulator_enable_regmap - regulator_get - regulator_get_optional - regulator_get_voltage_sel_regmap - regulator_is_enabled - regulator_is_enabled_regmap - regulator_list_voltage_linear - regulator_map_voltage_linear - regulator_notifier_call_chain - regulator_put - regulator_register - regulator_set_voltage - regulator_set_voltage_sel_regmap - regulator_unregister - release_firmware - __release_region - remap_pfn_range - remap_vmalloc_range - remove_cpu - remove_proc_entry - remove_wait_queue - request_firmware - request_firmware_nowait - __request_percpu_irq - __request_region - request_threaded_irq - resume_cpus - return_address - revalidate_disk_size - rfkill_alloc - rfkill_blocked - rfkill_destroy - rfkill_init_sw_state - rfkill_pause_polling - rfkill_register - rfkill_resume_polling - rfkill_set_hw_state - rfkill_unregister - rhashtable_free_and_destroy - rhashtable_insert_slow - rhltable_init - __rht_bucket_nested - rht_bucket_nested - rht_bucket_nested_insert - root_task_group - round_jiffies - round_jiffies_relative - round_jiffies_up - rps_needed - rtc_class_close - rtc_class_open - rtc_read_time - rtc_time64_to_tm - rtc_tm_to_time64 - rtc_update_irq - rtc_valid_tm - rtnl_is_locked - rtnl_lock - rtnl_unlock - runqueues - sched_clock - sched_feat_keys - sched_setattr_nocheck - sched_set_fifo - sched_setscheduler - sched_setscheduler_nocheck - sched_show_task - sched_trace_cfs_rq_avg - sched_trace_cfs_rq_cpu - sched_trace_cfs_rq_path - sched_trace_rd_span - sched_trace_rq_avg_dl - sched_trace_rq_avg_irq - sched_trace_rq_avg_rt - sched_trace_rq_cpu - sched_uclamp_used - schedule - schedule_timeout - schedule_timeout_interruptible - scnprintf - scsi_autopm_get_device - scsi_autopm_put_device - scsi_block_requests - scsi_block_when_processing_errors - scsi_command_size_tbl - scsi_compat_ioctl - scsi_device_get - scsi_device_put - scsi_ioctl - scsi_ioctl_block_when_processing_errors - scsi_normalize_sense - __scsi_print_sense - scsi_register_interface - scsi_unblock_requests - sdev_prefix_printk - seq_hex_dump - seq_lseek - seq_open - __seq_open_private - seq_printf - seq_putc - seq_puts - seq_read - seq_release - seq_release_private - seq_write - set_blocksize - set_cpus_allowed_ptr - set_freezable - set_normalized_timespec64 - set_page_dirty - set_page_dirty_lock - __SetPageMovable - sg_alloc_table - sg_alloc_table_from_pages - sg_free_table - sg_init_one - sg_init_table - sg_next - __sg_page_iter_next - __sg_page_iter_start - sg_scsi_ioctl - shmem_file_setup - simple_attr_open - simple_attr_read - simple_attr_release - simple_attr_write - simple_open - simple_read_from_buffer - simple_strtol - simple_strtoll - simple_strtoul - simple_strtoull - simple_write_to_buffer - single_open - single_open_size - single_release - skb_add_rx_frag - skb_checksum - skb_checksum_help - skb_clone - skb_clone_sk - skb_complete_wifi_ack - skb_copy - skb_copy_bits - skb_copy_expand - skb_dequeue - skb_dequeue_tail - skb_ensure_writable - __skb_get_hash - __skb_gso_segment - skb_pull - skb_push - skb_put - skb_queue_head - skb_queue_purge - skb_queue_tail - skb_realloc_headroom - skb_trim - smp_call_function - smp_call_function_single - smp_call_on_cpu - snd_compr_stop_error - snd_ctl_add - snd_ctl_boolean_mono_info - snd_ctl_enum_info - snd_ctl_new1 - snd_ctl_notify - snd_info_create_card_entry - snd_jack_set_key - snd_pcm_format_physical_width - snd_pcm_format_width - snd_pcm_hw_constraint_list - snd_pcm_lib_free_pages - snd_pcm_lib_ioctl - snd_pcm_lib_malloc_pages - snd_pcm_lib_preallocate_pages - snd_pcm_period_elapsed - snd_soc_add_component_controls - snd_soc_add_dai_controls - snd_soc_bytes_tlv_callback - snd_soc_card_get_kcontrol - snd_soc_card_jack_new - snd_soc_component_disable_pin - snd_soc_component_enable_pin - snd_soc_component_force_enable_pin - snd_soc_component_get_pin_status - snd_soc_component_read - snd_soc_component_set_jack - snd_soc_component_set_pll - snd_soc_component_set_sysclk - snd_soc_component_update_bits - snd_soc_component_write - snd_soc_dai_set_pll - snd_soc_dai_set_sysclk - snd_soc_dai_set_tdm_slot - snd_soc_dapm_add_routes - snd_soc_dapm_del_routes - snd_soc_dapm_disable_pin - snd_soc_dapm_disable_pin_unlocked - snd_soc_dapm_force_enable_pin_unlocked - snd_soc_dapm_get_enum_double - snd_soc_dapm_get_pin_status - snd_soc_dapm_get_volsw - snd_soc_dapm_ignore_suspend - snd_soc_dapm_kcontrol_widget - snd_soc_dapm_mixer_update_power - snd_soc_dapm_new_controls - snd_soc_dapm_put_enum_double - snd_soc_dapm_put_volsw - snd_soc_dapm_sync - snd_soc_dapm_sync_unlocked - snd_soc_get_enum_double - snd_soc_get_volsw - snd_soc_get_volsw_range - snd_soc_get_volsw_sx - snd_soc_info_enum_double - snd_soc_info_volsw - snd_soc_info_volsw_range - snd_soc_info_volsw_sx - snd_soc_jack_report - snd_soc_lookup_component - snd_soc_new_compress - snd_soc_of_get_dai_link_codecs - snd_soc_of_get_dai_name - snd_soc_of_parse_card_name - snd_soc_of_parse_daifmt - snd_soc_params_to_bclk - snd_soc_params_to_frame_size - snd_soc_put_enum_double - snd_soc_put_volsw - snd_soc_put_volsw_range - snd_soc_put_volsw_sx - snd_soc_register_card - snd_soc_register_component - snd_soc_runtime_set_dai_fmt - snd_soc_unregister_card - snd_soc_unregister_component - snprintf - soc_device_register - __sock_create - sock_release - sock_wfree - softnet_data - sort - __spi_alloc_controller - spi_bus_lock - spi_bus_unlock - spi_controller_resume - spi_controller_suspend - spi_finalize_current_message - spi_register_controller - __spi_register_driver - spi_setup - spi_sync - spi_sync_locked - spi_unregister_controller - split_page - sprintf - sprint_symbol - srcu_init_notifier_head - srcu_notifier_call_chain - srcu_notifier_chain_register - srcu_notifier_chain_unregister - sscanf - __stack_chk_fail - __stack_chk_guard - static_key_disable - static_key_slow_dec - static_key_slow_inc - stop_machine - strcasecmp - strcat - strchr - strcmp - strcpy - strcspn - stream_open - strim - strlcat - strlcpy - strlen - strncasecmp - strncat - strnchr - strncmp - strncpy - strncpy_from_user - strndup_user - strnlen - strnstr - strpbrk - strrchr - strscpy - strsep - strspn - strstr - submit_bio - submit_bio_wait - subsys_system_register - __sw_hweight16 - __sw_hweight32 - __sw_hweight64 - __sw_hweight8 - sync_file_create - sync_file_get_fence - synchronize_irq - synchronize_net - synchronize_rcu - syscon_regmap_lookup_by_phandle - sysctl_sched_features - sysctl_sched_latency - sysfs_add_file_to_group - sysfs_create_file_ns - sysfs_create_files - sysfs_create_group - sysfs_create_groups - sysfs_create_link - sysfs_emit - sysfs_emit_at - sysfs_notify - sysfs_remove_file_ns - sysfs_remove_group - sysfs_remove_groups - sysfs_remove_link - sysfs_streq - sysfs_update_group - sysrq_mask - system_freezable_wq - system_freezing_cnt - system_highpri_wq - system_long_wq - system_power_efficient_wq - system_state - system_unbound_wq - system_wq - sys_tz - tasklet_init - tasklet_kill - __tasklet_schedule - task_may_not_preempt - __task_pid_nr_ns - task_rq_lock - tcpci_get_tcpm_port - tcpci_irq - tcpci_register_port - tcpci_unregister_port - tcpm_cc_change - tcpm_is_toggling - tcpm_pd_hard_reset - tcpm_pd_receive - tcpm_pd_transmit_complete - tcpm_sink_frs - tcpm_sourcing_vbus - tcpm_update_sink_capabilities - tcpm_vbus_change - thermal_cdev_update - thermal_cooling_device_unregister - thermal_of_cooling_device_register - thermal_zone_device_disable - thermal_zone_device_enable - thermal_zone_device_is_enabled - thermal_zone_device_register - thermal_zone_device_unregister - thermal_zone_device_update - thermal_zone_of_sensor_register - thermal_zone_of_sensor_unregister - thread_group_cputime_adjusted - tick_nohz_get_idle_calls_cpu - time64_to_tm - topology_set_thermal_pressure - _totalram_pages - trace_event_buffer_commit - trace_event_buffer_reserve - trace_event_ignore_this_pid - trace_event_raw_init - trace_event_reg - trace_handle_return - __traceiter_android_rvh_cgroup_force_kthread_migration - __traceiter_android_rvh_check_preempt_wakeup - __traceiter_android_rvh_cpu_cgroup_online - __traceiter_android_rvh_cpu_overutilized - __traceiter_android_rvh_dequeue_task - __traceiter_android_rvh_find_energy_efficient_cpu - __traceiter_android_rvh_irqs_disable - __traceiter_android_rvh_irqs_enable - __traceiter_android_rvh_post_init_entity_util_avg - __traceiter_android_rvh_preempt_disable - __traceiter_android_rvh_preempt_enable - __traceiter_android_rvh_sched_fork - __traceiter_android_rvh_select_task_rq_rt - __traceiter_android_rvh_set_iowait - __traceiter_android_rvh_typec_tcpci_chk_contaminant - __traceiter_android_rvh_typec_tcpci_get_vbus - __traceiter_android_rvh_uclamp_eff_get - __traceiter_android_rvh_util_est_update - __traceiter_android_vh_arch_set_freq_scale - __traceiter_android_vh_cma_alloc_finish - __traceiter_android_vh_cma_alloc_start - __traceiter_android_vh_cpu_idle_enter - __traceiter_android_vh_cpu_idle_exit - __traceiter_android_vh_enable_thermal_genl_check - __traceiter_android_vh_ep_create_wakeup_source - __traceiter_android_vh_finish_update_load_avg_se - __traceiter_android_vh_ipi_stop - __traceiter_android_vh_meminfo_proc_show - __traceiter_android_vh_of_i2c_get_board_info - __traceiter_android_vh_pagecache_get_page - __traceiter_android_vh_rmqueue - __traceiter_android_vh_setscheduler_uclamp - __traceiter_android_vh_snd_compr_use_pause_in_drain - __traceiter_android_vh_sound_usb_support_cpu_suspend - __traceiter_android_vh_thermal_pm_notify_suspend - __traceiter_android_vh_timerfd_create - __traceiter_android_vh_typec_store_partner_src_caps - __traceiter_android_vh_typec_tcpci_override_toggling - __traceiter_android_vh_typec_tcpm_adj_current_limit - __traceiter_android_vh_typec_tcpm_get_timer - __traceiter_android_vh_typec_tcpm_log - __traceiter_android_vh_ufs_check_int_errors - __traceiter_android_vh_ufs_compl_command - __traceiter_android_vh_ufs_fill_prdt - __traceiter_android_vh_ufs_prepare_command - __traceiter_android_vh_ufs_send_command - __traceiter_android_vh_ufs_send_tm_command - __traceiter_android_vh_ufs_send_uic_command - __traceiter_android_vh_ufs_update_sysfs - __traceiter_clock_set_rate - __traceiter_cpu_frequency - __traceiter_device_pm_callback_end - __traceiter_device_pm_callback_start - __traceiter_dwc3_readl - __traceiter_dwc3_writel - __traceiter_gpu_mem_total - __traceiter_mm_vmscan_direct_reclaim_begin - __traceiter_mm_vmscan_direct_reclaim_end - __traceiter_pelt_cfs_tp - __traceiter_pelt_dl_tp - __traceiter_pelt_irq_tp - __traceiter_pelt_rt_tp - __traceiter_pelt_se_tp - __traceiter_rwmmio_post_read - __traceiter_rwmmio_read - __traceiter_rwmmio_write - __traceiter_sched_cpu_capacity_tp - __traceiter_sched_overutilized_tp - __traceiter_sched_switch - __traceiter_sched_util_est_cfs_tp - __traceiter_sched_util_est_se_tp - __traceiter_suspend_resume - trace_output_call - __tracepoint_android_rvh_cgroup_force_kthread_migration - __tracepoint_android_rvh_check_preempt_wakeup - __tracepoint_android_rvh_cpu_cgroup_online - __tracepoint_android_rvh_cpu_overutilized - __tracepoint_android_rvh_dequeue_task - __tracepoint_android_rvh_find_energy_efficient_cpu - __tracepoint_android_rvh_irqs_disable - __tracepoint_android_rvh_irqs_enable - __tracepoint_android_rvh_post_init_entity_util_avg - __tracepoint_android_rvh_preempt_disable - __tracepoint_android_rvh_preempt_enable - __tracepoint_android_rvh_sched_fork - __tracepoint_android_rvh_select_task_rq_rt - __tracepoint_android_rvh_set_iowait - __tracepoint_android_rvh_typec_tcpci_chk_contaminant - __tracepoint_android_rvh_typec_tcpci_get_vbus - __tracepoint_android_rvh_uclamp_eff_get - __tracepoint_android_rvh_util_est_update - __tracepoint_android_vh_arch_set_freq_scale - __tracepoint_android_vh_cma_alloc_finish - __tracepoint_android_vh_cma_alloc_start - __tracepoint_android_vh_cpu_idle_enter - __tracepoint_android_vh_cpu_idle_exit - __tracepoint_android_vh_enable_thermal_genl_check - __tracepoint_android_vh_ep_create_wakeup_source - __tracepoint_android_vh_finish_update_load_avg_se - __tracepoint_android_vh_ipi_stop - __tracepoint_android_vh_meminfo_proc_show - __tracepoint_android_vh_of_i2c_get_board_info - __tracepoint_android_vh_pagecache_get_page - __tracepoint_android_vh_rmqueue - __tracepoint_android_vh_setscheduler_uclamp - __tracepoint_android_vh_snd_compr_use_pause_in_drain - __tracepoint_android_vh_sound_usb_support_cpu_suspend - __tracepoint_android_vh_thermal_pm_notify_suspend - __tracepoint_android_vh_timerfd_create - __tracepoint_android_vh_typec_store_partner_src_caps - __tracepoint_android_vh_typec_tcpci_override_toggling - __tracepoint_android_vh_typec_tcpm_adj_current_limit - __tracepoint_android_vh_typec_tcpm_get_timer - __tracepoint_android_vh_typec_tcpm_log - __tracepoint_android_vh_ufs_check_int_errors - __tracepoint_android_vh_ufs_compl_command - __tracepoint_android_vh_ufs_fill_prdt - __tracepoint_android_vh_ufs_prepare_command - __tracepoint_android_vh_ufs_send_command - __tracepoint_android_vh_ufs_send_tm_command - __tracepoint_android_vh_ufs_send_uic_command - __tracepoint_android_vh_ufs_update_sysfs - __tracepoint_clock_set_rate - __tracepoint_cpu_frequency - __tracepoint_device_pm_callback_end - __tracepoint_device_pm_callback_start - __tracepoint_dwc3_readl - __tracepoint_dwc3_writel - __tracepoint_gpu_mem_total - __tracepoint_mm_vmscan_direct_reclaim_begin - __tracepoint_mm_vmscan_direct_reclaim_end - __tracepoint_pelt_cfs_tp - __tracepoint_pelt_dl_tp - __tracepoint_pelt_irq_tp - __tracepoint_pelt_rt_tp - __tracepoint_pelt_se_tp - tracepoint_probe_register - tracepoint_probe_unregister - __tracepoint_rwmmio_post_read - __tracepoint_rwmmio_read - __tracepoint_rwmmio_write - __tracepoint_sched_cpu_capacity_tp - __tracepoint_sched_overutilized_tp - __tracepoint_sched_switch - __tracepoint_sched_util_est_cfs_tp - __tracepoint_sched_util_est_se_tp - __tracepoint_suspend_resume - trace_print_array_seq - trace_print_bitmask_seq - trace_print_flags_seq - trace_print_hex_seq - trace_print_symbols_seq - trace_raw_output_prep - trace_seq_printf - try_module_get - try_to_del_timer_sync - tty_flip_buffer_push - tty_insert_flip_string_fixed_flag - tty_kref_put - tty_port_tty_get - typec_switch_get_drvdata - typec_switch_register - typec_switch_unregister - uart_add_one_port - uart_console_device - uart_console_write - uart_get_baud_rate - uart_parse_options - uart_register_driver - uart_remove_one_port - uart_resume_port - uart_set_options - uart_suspend_port - uart_try_toggle_sysrq - uart_unregister_driver - uart_update_timeout - uart_write_wakeup - uclamp_eff_value - __udelay - udp4_hwcsum - ufshcd_bkops_ctrl - ufshcd_hold - ufshcd_pltfrm_init - ufshcd_query_attr_retry - ufshcd_query_flag_retry - ufshcd_read_desc_param - ufshcd_release - ufshcd_remove - ufshcd_shutdown - ufshcd_system_resume - ufshcd_system_suspend - unlock_page - unmap_mapping_range - unpin_user_page - unregister_blkdev - __unregister_chrdev - unregister_chrdev_region - unregister_inet6addr_notifier - unregister_inetaddr_notifier - unregister_netdev - unregister_netdevice_many - unregister_netdevice_notifier - unregister_netdevice_queue - unregister_pernet_device - unregister_pernet_subsys - unregister_pm_notifier - unregister_reboot_notifier - unregister_shrinker - unregister_syscore_ops - unregister_sysctl_table - unregister_virtio_device - unregister_virtio_driver - up - update_devfreq - __update_load_avg_blocked_se - update_rq_clock - up_read - up_write - usb_add_function - usb_add_hcd - usb_copy_descriptors - __usb_create_hcd - usb_disabled - usb_enable_autosuspend - usb_ep_autoconfig - usb_ep_disable - usb_ep_enable - usb_function_register - usb_function_unregister - usb_gadget_set_state - usb_hcd_is_primary_hcd - usb_hcd_platform_shutdown - usb_hub_find_child - usb_interface_id - usb_otg_state_string - usb_put_function_instance - usb_put_hcd - usb_register_notify - usb_remove_hcd - usb_role_switch_get_drvdata - usb_role_switch_register - usb_role_switch_unregister - usb_speed_string - usb_string_id - usb_unregister_notify - __usecs_to_jiffies - usleep_range - v4l2_ctrl_handler_free - v4l2_ctrl_handler_init_class - v4l2_ctrl_log_status - v4l2_ctrl_new_custom - v4l2_ctrl_new_std - v4l2_ctrl_new_std_menu - v4l2_device_register - v4l2_device_unregister - v4l2_fh_add - v4l2_fh_del - v4l2_fh_exit - v4l2_fh_init - v4l2_fh_open - v4l2_m2m_buf_queue - v4l2_m2m_buf_remove - v4l2_m2m_ctx_init - v4l2_m2m_ctx_release - v4l2_m2m_fop_mmap - v4l2_m2m_fop_poll - v4l2_m2m_get_curr_priv - v4l2_m2m_get_vq - v4l2_m2m_init - v4l2_m2m_ioctl_dqbuf - v4l2_m2m_ioctl_querybuf - v4l2_m2m_ioctl_reqbufs - v4l2_m2m_ioctl_streamoff - v4l2_m2m_ioctl_streamon - v4l2_m2m_job_finish - v4l2_m2m_next_buf - v4l2_m2m_qbuf - v4l2_m2m_release - vabits_actual - vb2_buffer_done - vb2_common_vm_ops - vb2_create_framevec - vb2_destroy_framevec - vb2_dqbuf - vb2_fop_mmap - vb2_fop_poll - vb2_fop_read - vb2_fop_release - vb2_ioctl_create_bufs - vb2_ioctl_dqbuf - vb2_ioctl_expbuf - vb2_ioctl_qbuf - vb2_ioctl_querybuf - vb2_ioctl_reqbufs - vb2_ioctl_streamoff - vb2_ioctl_streamon - vb2_mmap - vb2_ops_wait_finish - vb2_ops_wait_prepare - vb2_plane_cookie - vb2_plane_vaddr - vb2_poll - vb2_qbuf - vb2_querybuf - vb2_queue_init - vb2_queue_release - vb2_reqbufs - vb2_streamoff - vb2_streamon - vb2_vmalloc_memops - vb2_wait_for_all_buffers - verify_pkcs7_signature - vfree - video_devdata - video_device_alloc - video_device_release - video_device_release_empty - video_ioctl2 - __video_register_device - video_unregister_device - virtqueue_add_inbuf - virtqueue_add_outbuf - virtqueue_detach_unused_buf - virtqueue_get_buf - virtqueue_get_vring_size - virtqueue_kick - virtqueue_kick_prepare - virtqueue_notify - vmalloc - vmalloc_user - vmap - vmf_insert_pfn_prot - vm_map_pages - vm_map_ram - vm_unmap_ram - vprintk - vring_del_virtqueue - vring_interrupt - vring_new_virtqueue - vsnprintf - vunmap - vzalloc - vzalloc_node - wait_for_completion - wait_for_completion_interruptible_timeout - wait_for_completion_killable_timeout - wait_for_completion_timeout - wait_woken - __wake_up - __wake_up_locked - wake_up_process - wakeup_source_add - wakeup_source_create - wakeup_source_destroy - wakeup_source_register - wakeup_source_remove - wakeup_source_unregister - __wake_up_sync - __warn_printk - watchdog_init_timeout - watchdog_register_device - watchdog_set_restart_priority - watchdog_unregister_device - wireless_nlevent_flush - woken_wake_function - work_busy - __xfrm_state_destroy - xfrm_state_lookup_byspi - xfrm_stateonly_find - xhci_address_device - xhci_bus_resume - xhci_bus_suspend - xhci_gen_setup - xhci_get_ep_ctx - xhci_get_slot_ctx - xhci_handle_event - xhci_init_driver - xhci_resume - xhci_ring_alloc - xhci_ring_free - xhci_run - xhci_suspend - xhci_update_erst_dequeue - xhci_vendor_get_ops diff --git a/android/abi_gki_aarch64_hikey960 b/android/abi_gki_aarch64_hikey960 deleted file mode 100644 index 93f48f3642bd..000000000000 --- a/android/abi_gki_aarch64_hikey960 +++ /dev/null @@ -1,1270 +0,0 @@ -[abi_symbol_list] -# commonly used symbols - alloc_chrdev_region - __alloc_disk_node - __alloc_pages_nodemask - alloc_workqueue - amba_driver_register - amba_driver_unregister - amba_release_regions - amba_request_regions - __arch_copy_from_user - __arch_copy_to_user - arm64_const_caps_ready - arm64_use_ng_mappings - blk_cleanup_queue - blk_execute_rq - blk_execute_rq_nowait - blk_get_queue - blk_mq_alloc_tag_set - blk_mq_complete_request - blk_mq_end_request - blk_mq_free_request - blk_mq_free_tag_set - blk_mq_init_queue - blk_mq_quiesce_queue - blk_mq_requeue_request - blk_mq_start_request - blk_mq_tagset_busy_iter - blk_mq_tagset_wait_completed_request - blk_mq_unquiesce_queue - blk_put_queue - blk_queue_flag_clear - blk_queue_flag_set - blk_queue_logical_block_size - blk_queue_max_discard_sectors - blk_queue_max_hw_sectors - blk_queue_max_segments - blk_queue_write_cache - __blk_rq_map_sg - bpf_trace_run1 - bpf_trace_run2 - cancel_delayed_work - cancel_delayed_work_sync - cancel_work_sync - capable - cdev_device_add - cdev_device_del - cdev_init - __cfi_slowpath - __check_object_size - __class_create - class_destroy - clk_disable - clk_enable - clk_get - clk_get_rate - clk_prepare - clk_put - clk_set_rate - clk_unprepare - complete - __const_udelay - cpu_hwcap_keys - cpu_hwcaps - cpumask_next - cpu_number - __cpu_online_mask - __cpu_possible_mask - debugfs_attr_read - debugfs_attr_write - debugfs_create_dir - debugfs_create_file - debugfs_create_file_unsafe - debugfs_remove - default_llseek - delayed_work_timer_fn - del_gendisk - del_timer - del_timer_sync - destroy_workqueue - dev_driver_string - _dev_err - device_add_disk - device_create_file - device_get_match_data - device_initialize - device_init_wakeup - device_remove_file - _dev_info - devm_clk_get - devm_gpiod_get - devm_gpiod_get_optional - devm_ioremap - devm_ioremap_resource - devm_kfree - devm_kmalloc - devm_pinctrl_get - devm_platform_ioremap_resource - __devm_regmap_init - __devm_regmap_init_i2c - __devm_regmap_init_mmio_clk - devm_regulator_register - devm_request_threaded_irq - __devm_reset_control_get - dev_pm_opp_get_opp_count - dev_set_name - _dev_warn - disable_irq - dma_alloc_attrs - dma_buf_export - dma_free_attrs - dma_heap_add - dma_heap_get_name - dmam_alloc_attrs - dma_map_page_attrs - dma_map_sg_attrs - dma_pool_alloc - dma_pool_create - dma_pool_destroy - dma_pool_free - dma_release_channel - dma_request_chan - dma_set_coherent_mask - dma_set_mask - dma_sync_sg_for_cpu - dma_sync_sg_for_device - dma_sync_single_for_cpu - dma_sync_single_for_device - dma_unmap_page_attrs - dma_unmap_sg_attrs - down_read - down_write - driver_unregister - drm_atomic_helper_connector_destroy_state - drm_atomic_helper_connector_duplicate_state - drm_atomic_helper_connector_reset - drm_connector_attach_encoder - drm_connector_cleanup - drm_connector_init - __drm_err - drm_helper_probe_single_connector_modes - drm_mode_copy - drm_mode_vrefresh - enable_irq - event_triggers_call - find_next_bit - find_next_zero_bit - finish_wait - flush_work - flush_workqueue - fput - free_irq - __free_pages - free_pages - generic_file_llseek - get_device - __get_free_pages - get_random_bytes - get_zeroed_page - gic_nonsecure_priorities - gpiod_set_value_cansleep - gpio_to_desc - i2c_del_driver - i2c_register_driver - i2c_transfer - ida_alloc_range - ida_destroy - ida_free - __init_swait_queue_head - init_timer_key - init_wait_entry - __init_waitqueue_head - __ioremap - iounmap - irq_get_irq_data - irq_of_parse_and_map - irq_set_irq_wake - jiffies - kasan_flag_enabled - kfree - kfree_const - kfree_skb - __kmalloc - kmalloc_caches - kmalloc_order_trace - kmem_cache_alloc_trace - kmemdup - kstrndup - kstrtoint - kstrtouint - kstrtoul_from_user - kstrtoull - ktime_get - ktime_get_mono_fast_ns - ktime_get_with_offset - __list_add_valid - __list_del_entry_valid - __log_post_read_mmio - __log_read_mmio - __log_write_mmio - memchr_inv - memcpy - memdup_user - memmove - mempool_alloc - mempool_destroy - mempool_free - memset - memstart_addr - mmc_add_host - mmc_alloc_host - mmc_detect_change - mmc_free_host - mmc_gpiod_request_cd - mmc_gpiod_request_ro - mmc_gpio_get_cd - mmc_gpio_get_ro - mmc_hw_reset - mmc_of_parse - mmc_regulator_get_supply - mmc_regulator_set_ocr - mmc_regulator_set_vqmmc - mmc_remove_host - mmc_request_done - mmc_send_tuning - mod_timer - module_layout - module_put - __msecs_to_jiffies - msleep - __mutex_init - mutex_lock - mutex_lock_interruptible - mutex_unlock - nla_put - no_llseek - nonseekable_open - nr_cpu_ids - of_alias_get_id - of_clk_get - of_device_get_match_data - of_device_is_compatible - of_find_compatible_node - of_find_property - of_get_child_by_name - of_get_named_gpio_flags - of_get_property - of_graph_get_remote_node - of_graph_parse_endpoint - of_iomap - of_match_device - of_match_node - of_property_read_string - of_property_read_string_helper - of_property_read_variable_u32_array - param_ops_bool - param_ops_charp - param_ops_int - param_ops_uint - pci_dev_put - __pci_register_driver - pci_unregister_driver - perf_trace_buf_alloc - perf_trace_run_bpf_submit - pinctrl_lookup_state - pinctrl_pm_select_sleep_state - pinctrl_select_state - platform_device_unregister - __platform_driver_register - platform_driver_unregister - platform_get_irq - platform_get_resource - __pm_runtime_disable - pm_runtime_enable - pm_runtime_force_resume - pm_runtime_force_suspend - __pm_runtime_idle - __pm_runtime_resume - pm_runtime_set_autosuspend_delay - __pm_runtime_set_status - __pm_runtime_suspend - __pm_runtime_use_autosuspend - pm_suspend_global_flags - pm_wakeup_dev_event - preempt_schedule - preempt_schedule_notrace - prepare_to_wait_event - printk - put_device - put_disk - __put_task_struct - queue_delayed_work_on - queue_work_on - ___ratelimit - _raw_spin_lock - _raw_spin_lock_bh - _raw_spin_lock_irq - _raw_spin_lock_irqsave - _raw_spin_unlock - _raw_spin_unlock_bh - _raw_spin_unlock_irq - _raw_spin_unlock_irqrestore - __rcu_read_lock - __rcu_read_unlock - rdev_get_drvdata - refcount_warn_saturate - regmap_read - regmap_update_bits_base - regmap_write - regulator_disable - regulator_enable - regulator_enable_regmap - regulator_get_voltage_sel_regmap - regulator_list_voltage_table - regulator_set_voltage - regulator_set_voltage_sel_regmap - release_firmware - remap_pfn_range - request_firmware - request_threaded_irq - reset_control_assert - reset_control_deassert - schedule - schedule_timeout - scnprintf - seq_lseek - seq_printf - seq_puts - seq_read - set_disk_ro - sg_alloc_table - sg_free_table - sg_init_table - sg_miter_next - sg_miter_start - sg_miter_stop - sg_next - simple_attr_open - simple_attr_release - simple_open - simple_read_from_buffer - single_open - single_release - skb_pull - skb_queue_tail - snprintf - __spi_register_driver - spi_setup - spi_sync - sprintf - sscanf - __stack_chk_fail - __stack_chk_guard - strcmp - strlcpy - strncmp - strncpy - strnlen - __sw_hweight64 - synchronize_irq - synchronize_rcu - syscon_node_to_regmap - syscon_regmap_lookup_by_phandle - sysfs_streq - system_wq - tasklet_init - __tasklet_schedule - trace_event_buffer_commit - trace_event_buffer_reserve - trace_event_ignore_this_pid - trace_event_raw_init - trace_event_reg - trace_handle_return - __traceiter_rwmmio_post_read - __traceiter_rwmmio_read - __traceiter_rwmmio_write - __tracepoint_rwmmio_post_read - __tracepoint_rwmmio_read - __tracepoint_rwmmio_write - trace_print_symbols_seq - trace_raw_output_prep - trace_seq_printf - trace_seq_putc - try_module_get - unregister_chrdev_region - up_read - up_write - usb_disabled - __usecs_to_jiffies - usleep_range - vabits_actual - vfree - vmalloc - vmap - vunmap - wait_for_completion - wait_for_completion_timeout - __wake_up - __warn_printk - xa_destroy - xa_erase - xa_find - xa_find_after - xa_load - -# required by adv7511.ko - cec_allocate_adapter - cec_delete_adapter - cec_received_msg_ts - cec_register_adapter - cec_s_phys_addr - cec_s_phys_addr_from_edid - cec_transmit_attempt_done_ts - cec_transmit_done_ts - cec_unregister_adapter - devm_regulator_bulk_get - drm_add_edid_modes - drm_bridge_add - drm_bridge_hpd_notify - drm_bridge_remove - drm_connector_update_edid_property - drm_detect_hdmi_monitor - drm_do_get_edid - drm_kms_helper_hotplug_event - hdmi_avi_infoframe_init - hdmi_avi_infoframe_pack - i2c_new_ancillary_device - i2c_unregister_device - mipi_dsi_attach - mipi_dsi_detach - mipi_dsi_device_register_full - mipi_dsi_device_unregister - mipi_dsi_driver_register_full - mipi_dsi_driver_unregister - of_find_mipi_dsi_host_by_node - platform_device_register_full - regcache_mark_dirty - regcache_sync - regmap_bulk_write - regmap_register_patch - regulator_bulk_disable - regulator_bulk_enable - -# required by ambakmi.ko - serio_interrupt - serio_reconnect - __serio_register_port - serio_unregister_port - -# required by armmmci.ko - clk_round_rate - devm_of_iomap - pinctrl_select_default_state - -# required by clk-hi655x.ko - devm_clk_hw_register - devm_of_clk_add_hw_provider - of_clk_hw_simple_get - -# required by cma_heap.ko - cma_alloc - cma_get_name - cma_release - dma_contiguous_default_area - dma_heap_get_drvdata - sg_alloc_table_from_pages - -# required by cn.ko - __alloc_skb - init_net - netlink_broadcast - netlink_has_listeners - __netlink_kernel_create - netlink_kernel_release - netlink_unicast - __nlmsg_put - proc_create_single_data - remove_proc_entry - -# required by cpufreq-dt.ko - cpufreq_enable_boost_support - cpufreq_freq_attr_scaling_available_freqs - cpufreq_freq_attr_scaling_boost_freqs - cpufreq_generic_frequency_table_verify - cpufreq_generic_get - cpufreq_generic_suspend - cpufreq_register_driver - cpufreq_unregister_driver - dev_pm_opp_free_cpufreq_table - dev_pm_opp_get_max_transition_latency - dev_pm_opp_get_opp_table - dev_pm_opp_get_sharing_cpus - dev_pm_opp_get_suspend_opp_freq - dev_pm_opp_init_cpufreq_table - dev_pm_opp_of_cpumask_add_table - dev_pm_opp_of_cpumask_remove_table - dev_pm_opp_of_get_sharing_cpus - dev_pm_opp_of_register_em - dev_pm_opp_put_opp_table - dev_pm_opp_put_regulators - dev_pm_opp_set_rate - dev_pm_opp_set_regulators - dev_pm_opp_set_sharing_cpus - get_cpu_device - policy_has_boost_freq - -# required by dw_mmc.ko - debugfs_create_u32 - debugfs_create_x64 - dev_err_probe - device_property_present - device_property_read_string_array - device_property_read_u32_array - mmc_can_gpio_cd - sdio_signal_irq - -# required by gadgetfs.ko - _copy_from_iter_full - _copy_to_iter - current_time - d_add - d_alloc_name - d_delete - d_make_root - dput - dup_iter - fasync_helper - generic_delete_inode - get_next_ino - get_tree_single - kill_fasync - kill_litter_super - kiocb_set_cancel_fn - kthread_unuse_mm - kthread_use_mm - mutex_trylock - new_inode - register_filesystem - simple_dir_inode_operations - simple_dir_operations - simple_statfs - unregister_filesystem - usb_ep_alloc_request - usb_ep_clear_halt - usb_ep_dequeue - usb_ep_disable - usb_ep_enable - usb_ep_fifo_flush - usb_ep_fifo_status - usb_ep_free_request - usb_ep_queue - usb_ep_set_halt - usb_gadget_probe_driver - usb_gadget_set_state - usb_gadget_unregister_driver - usb_gadget_vbus_draw - usb_get_gadget_udc_name - wait_for_completion_interruptible - -# required by hi3660-i2s.ko - devm_snd_dmaengine_pcm_register - pinctrl_put - snd_dmaengine_pcm_prepare_slave_config - snd_soc_register_component - snd_soc_unregister_component - -# required by hi3660-mailbox.ko - devm_mbox_controller_register - -# required by hi6421-pmic-core.ko - devm_mfd_add_devices - -# required by hi6421v530-regulator.ko - regulator_disable_regmap - regulator_is_enabled_regmap - regulator_map_voltage_ascend - -# required by hi655x-pmic.ko - devm_gpio_request_one - gpiod_to_irq - mfd_add_devices - mfd_remove_devices - regmap_add_irq_chip - regmap_del_irq_chip - regmap_irq_get_domain - -# required by hi655x-regulator.ko - regulator_list_voltage_linear - -# required by hisi_hikey_usb.ko - dev_fwnode - devm_regulator_get - regulator_is_enabled - usb_role_switch_get - usb_role_switch_get_drvdata - usb_role_switch_put - usb_role_switch_register - usb_role_switch_set_role - usb_role_switch_unregister - -# required by hisi_powerkey.ko - devm_input_allocate_device - devm_request_any_context_irq - input_event - input_register_device - input_set_capability - platform_get_irq_byname - -# required by hisi_thermal.ko - _dev_crit - devm_thermal_zone_of_sensor_register - of_thermal_get_ntrips - of_thermal_get_trip_points - thermal_zone_device_disable - thermal_zone_device_enable - thermal_zone_device_update - -# required by i2c-designware-core.ko - i2c_add_numbered_adapter - i2c_generic_scl_recovery - i2c_recover_bus - -# required by i2c-designware-platform.ko - devm_clk_get_optional - i2c_del_adapter - i2c_parse_fw_timings - -# required by i2c-dev.ko - bus_register_notifier - bus_unregister_notifier - device_for_each_child - i2c_adapter_type - i2c_bus_type - i2c_for_each_dev - i2c_get_adapter - i2c_put_adapter - i2c_smbus_xfer - i2c_transfer_buffer_flags - i2c_verify_client - register_chrdev_region - -# required by k3dma.ko - devm_free_irq - dma_async_device_register - dma_async_device_unregister - dma_async_tx_descriptor_init - dma_get_slave_channel - dmam_pool_create - of_dma_controller_free - of_dma_controller_register - tasklet_kill - tasklet_setup - vchan_dma_desc_free_list - vchan_find_desc - vchan_init - vchan_tx_desc_free - vchan_tx_submit - -# required by kirin-drm.ko - component_bind_all - component_master_add_with_match - component_master_del - component_unbind_all - drm_atomic_get_crtc_state - drm_atomic_helper_check - drm_atomic_helper_commit - drm_atomic_helper_crtc_destroy_state - drm_atomic_helper_crtc_duplicate_state - drm_atomic_helper_crtc_reset - drm_atomic_helper_disable_plane - drm_atomic_helper_page_flip - drm_atomic_helper_plane_destroy_state - drm_atomic_helper_plane_duplicate_state - drm_atomic_helper_plane_reset - drm_atomic_helper_set_config - drm_atomic_helper_update_plane - drm_compat_ioctl - drm_crtc_arm_vblank_event - drm_crtc_cleanup - drm_crtc_handle_vblank - drm_crtc_init_with_planes - drm_crtc_send_vblank_event - drm_crtc_vblank_get - drm_crtc_vblank_off - drm_crtc_vblank_on - drm_dev_alloc - drm_dev_put - drm_dev_register - drm_dev_unregister - drm_fb_cma_get_gem_obj - drm_gem_cma_dumb_create_internal - drm_gem_cma_free_object - drm_gem_cma_mmap - drm_gem_cma_prime_get_sg_table - drm_gem_cma_prime_import_sg_table - drm_gem_cma_prime_mmap - drm_gem_cma_prime_vmap - drm_gem_cma_prime_vunmap - drm_gem_cma_vm_ops - drm_gem_fb_create - drm_gem_prime_export - drm_gem_prime_fd_to_handle - drm_gem_prime_handle_to_fd - drm_gem_prime_import - drm_ioctl - drm_kms_helper_poll_fini - drm_kms_helper_poll_init - drmm_mode_config_init - drm_mode_config_cleanup - drm_mode_config_reset - drm_of_component_match_add - drm_open - drm_plane_cleanup - drm_poll - drm_read - drm_release - drm_universal_plane_init - drm_vblank_init - noop_llseek - -# required by kirin-dsi.ko - component_add - component_del - drm_bridge_attach - drm_connector_list_iter_begin - drm_connector_list_iter_end - drm_connector_list_iter_next - drm_connector_unregister - __drm_dbg - drm_encoder_cleanup - drm_encoder_init - drm_of_find_possible_crtcs - drm_panel_disable - drm_panel_enable - drm_panel_get_modes - drm_panel_prepare - drm_panel_unprepare - drm_sysfs_hotplug_event - mipi_dsi_host_register - mipi_dsi_host_unregister - of_drm_find_bridge - of_drm_find_panel - of_graph_get_next_endpoint - of_graph_get_remote_port_parent - -# required by mali_kbase.ko - anon_inode_getfd - __bitmap_weight - cache_line_size - clear_page - __close_fd - debugfs_create_bool - debugfs_create_size_t - devfreq_add_device - devfreq_cooling_unregister - devfreq_recommended_opp - devfreq_register_opp_notifier - devfreq_remove_device - devfreq_resume_device - devfreq_suspend_device - devfreq_unregister_opp_notifier - dev_pm_opp_find_freq_floor - dev_pm_opp_get_voltage - dev_pm_opp_of_add_table - dev_pm_opp_of_remove_table - dev_pm_opp_put - dma_buf_attach - dma_buf_begin_cpu_access - dma_buf_detach - dma_buf_end_cpu_access - dma_buf_get - dma_buf_map_attachment - dma_buf_mmap - dma_buf_put - dma_buf_unmap_attachment - dma_buf_vmap - dma_buf_vunmap - dma_fence_add_callback - dma_fence_context_alloc - dma_fence_default_wait - dma_fence_get_status - dma_fence_init - dma_fence_release - dma_fence_remove_callback - dma_fence_signal - down - downgrade_write - down_trylock - dump_stack - fd_install - find_vma - get_unused_fd_flags - get_user_pages - get_user_pages_fast - get_user_pages_remote - hrtimer_cancel - hrtimer_init - hrtimer_start_range_ns - iomem_resource - kimage_voffset - kstrdup - kstrtobool_from_user - kthread_create_on_node - kthread_should_stop - kthread_stop - ktime_add_safe - ktime_get_raw_ts64 - misc_deregister - misc_register - __mmdrop - mm_trace_rss_stat - msleep_interruptible - of_devfreq_cooling_register_power - of_find_device_by_node - of_get_next_available_child - of_parse_phandle - of_property_read_u64 - __put_page - rb_erase - rb_first - rb_insert_color - rb_next - rb_prev - rb_replace_node - register_shrinker - regulator_get_optional - regulator_put - __release_region - remap_vmalloc_range - __request_region - seq_open - seq_putc - seq_release - seq_write - set_page_dirty_lock - simple_attr_read - simple_attr_write - __sw_hweight32 - sync_file_create - sync_file_get_fence - sysfs_create_group - sysfs_remove_group - thermal_zone_get_temp - thermal_zone_get_zone_by_name - _totalram_pages - unmap_mapping_range - unregister_shrinker - up - vmalloc_user - vmf_insert_pfn - vm_mmap - vzalloc - wake_up_process - -# required by mmc_block.ko - blk_get_request - __blk_mq_end_request - blk_mq_run_hw_queues - blk_put_request - blk_queue_bounce_limit - blk_queue_can_use_dma_map_merging - blk_queue_max_segment_size - blk_queue_rq_timeout - blk_update_request - bus_register - bus_unregister - dma_get_merge_boundary - mmc_app_cmd - mmc_calc_max_discard - mmc_can_erase - mmc_can_secure_erase_trim - mmc_can_trim - __mmc_claim_host - mmc_cmdq_disable - mmc_cmdq_enable - mmc_cqe_post_req - mmc_cqe_recovery - mmc_cqe_start_req - mmc_crypto_prepare_req - mmc_crypto_setup_queue - mmc_detect_card_removed - mmc_erase - mmc_erase_group_aligned - mmc_flush_cache - mmc_get_card - mmc_get_ext_csd - mmc_put_card - mmc_register_driver - mmc_release_host - mmc_retune_pause - mmc_retune_release - mmc_retune_unpause - mmc_run_bkops - mmc_sanitize - __mmc_send_status - mmc_send_status - mmc_set_data_timeout - mmc_start_request - mmc_switch - mmc_unregister_driver - mmc_wait_for_cmd - mmc_wait_for_req - register_blkdev - sg_init_one - simple_strtoul - string_get_size - unregister_blkdev - -# required by mmc_spi.ko - is_vmalloc_addr - mmc_gpiod_request_cd_irq - spi_bus_lock - spi_bus_unlock - spi_sync_locked - -# required by nvme-core.ko - add_uevent_var - bdget_disk - bdput - bd_set_nr_sectors - blk_freeze_queue_start - blk_mq_alloc_request - blk_mq_alloc_request_hctx - blk_mq_delay_kick_requeue_list - blk_mq_freeze_queue - blk_mq_freeze_queue_wait - blk_mq_freeze_queue_wait_timeout - blk_mq_unfreeze_queue - blk_mq_unique_tag - blk_poll - blk_queue_chunk_sectors - blk_queue_dma_alignment - blk_queue_flag_test_and_set - blk_queue_io_min - blk_queue_io_opt - blk_queue_max_discard_segments - blk_queue_max_write_zeroes_sectors - blk_queue_physical_block_size - blk_queue_virt_boundary - blk_rq_map_kern - blk_rq_map_user - blk_rq_unmap_user - blk_set_queue_dying - blk_status_to_errno - blk_sync_queue - bpf_trace_run3 - cleanup_srcu_struct - compat_ptr_ioctl - completion_done - device_add - device_del - device_remove_file_self - dev_pm_qos_expose_latency_tolerance - dev_pm_qos_hide_latency_tolerance - dev_pm_qos_update_user_latency_tolerance - __init_rwsem - init_srcu_struct - kasprintf - kobject_uevent_env - list_sort - param_ops_byte - param_ops_ulong - revalidate_disk_size - set_capacity_revalidate_and_notify - __srcu_read_unlock - synchronize_srcu - sysfs_create_link - sysfs_remove_link - uuid_null - xa_store - -# required by nvme.ko - async_schedule_node - blk_mq_complete_request_remote - blk_mq_map_queues - blk_mq_pci_map_queues - blk_mq_tag_to_rq - blk_mq_update_nr_hw_queues - device_release_driver - dma_max_mapping_size - __do_once_done - __do_once_start - mempool_create_node - mempool_kfree - mempool_kmalloc - param_get_uint - param_set_uint - pci_alloc_irq_vectors_affinity - pcibios_resource_to_bus - pci_device_is_present - pci_disable_device - pcie_aspm_enabled - pci_enable_device_mem - pci_free_irq - pci_free_irq_vectors - pci_irq_vector - pci_load_saved_state - pci_read_config_word - pci_release_selected_regions - pci_request_irq - pci_request_selected_regions - pci_restore_state - pci_save_state - pci_select_bars - pci_set_master - sysfs_remove_file_from_group - wait_for_completion_io_timeout - -# required by nvmet.ko - bin2hex - bio_add_page - bio_alloc_bioset - bio_associate_blkg - bio_chain - bio_endio - bio_init - bio_put - blkdev_get_by_path - __blkdev_issue_discard - blkdev_issue_flush - __blkdev_issue_zeroout - blkdev_put - blk_finish_plug - blk_start_plug - configfs_register_subsystem - configfs_unregister_subsystem - config_group_init - config_group_init_type_name - _ctype - fs_bio_set - hex_to_bin - iov_iter_bvec - kmem_cache_create - kmem_cache_destroy - kmemdup_nul - kstrtobool - kstrtou16 - kvfree_call_rcu - mempool_alloc_slab - mempool_create - mempool_free_slab - mod_delayed_work_on - __per_cpu_offset - percpu_ref_exit - percpu_ref_init - percpu_ref_kill_and_confirm - radix_tree_delete - radix_tree_next_chunk - __request_module - sgl_alloc - sgl_free - sg_pcopy_from_buffer - sg_pcopy_to_buffer - sg_zero_buffer - strcspn - strlen - submit_bio - uuid_gen - uuid_parse - vfs_fallocate - vfs_fsync - vfs_getattr - __xa_insert - -# required by of_mmc_spi.ko - mmc_of_parse_voltage - -# required by ohci-hcd.ko - device_set_wakeup_capable - gen_pool_dma_alloc_align - gen_pool_dma_zalloc_align - gen_pool_free_owner - sb800_prefetch - schedule_timeout_uninterruptible - usb_amd_dev_put - usb_amd_quirk_pll_disable - usb_amd_quirk_pll_enable - usb_calc_bus_time - usb_debug_root - usb_hcd_check_unlink_urb - usb_hcd_giveback_urb - usb_hc_died - usb_hcd_link_urb_to_ep - usb_hcd_poll_rh_status - usb_hcd_resume_root_hub - usb_hcds_loaded - usb_hcd_unlink_urb_from_ep - usb_root_hub_lost_power - -# required by ohci-pci.ko - pci_get_slot - pci_match_id - usb_amd_prefetch_quirk - usb_amd_quirk_pll_check - usb_hcd_pci_pm_ops - usb_hcd_pci_probe - usb_hcd_pci_remove - usb_hcd_pci_shutdown - -# required by ohci-platform.ko - device_wakeup_enable - devm_reset_control_array_get - usb_add_hcd - usb_create_hcd - usb_hcd_platform_shutdown - usb_put_hcd - usb_remove_hcd - -# required by phy-hi3660-usb3.ko - __devm_of_phy_provider_register - devm_phy_create - of_phy_simple_xlate - -# required by reboot-mode.ko - devres_add - devres_alloc_node - devres_free - devres_release - kstrdup_const - register_reboot_notifier - unregister_reboot_notifier - -# required by rfkill-gpio.ko - device_property_read_string - rfkill_alloc - rfkill_destroy - rfkill_find_type - rfkill_register - rfkill_unregister - -# required by rtc-efi.ko - devm_rtc_device_register - efi - __platform_driver_probe - rtc_valid_tm - rtc_year_days - -# required by snd-soc-hdmi-codec.ko - devm_snd_soc_register_component - hdmi_audio_infoframe_init - snd_ctl_add - snd_ctl_new1 - snd_pcm_add_chmap_ctls - snd_pcm_create_iec958_consumer_hw_params - snd_pcm_format_width - snd_pcm_hw_constraint_eld - snd_soc_dapm_add_routes - snd_soc_jack_report - -# required by snd-soc-simple-card-utils.ko - devm_get_clk_from_child - devm_kasprintf - devm_kvasprintf - snd_soc_card_jack_new - snd_soc_dai_set_sysclk - snd_soc_dai_set_tdm_slot - snd_soc_dapm_get_pin_switch - snd_soc_dapm_info_pin_switch - snd_soc_dapm_put_pin_switch - snd_soc_jack_add_gpios - snd_soc_of_parse_audio_routing - snd_soc_of_parse_audio_simple_widgets - snd_soc_of_parse_card_name - snd_soc_of_parse_daifmt - snd_soc_runtime_calc_hw - -# required by snd-soc-simple-card.ko - devm_snd_soc_register_card - of_device_is_available - of_get_next_child - of_get_parent - of_parse_phandle_with_args - snd_soc_dai_link_set_capabilities - snd_soc_of_get_dai_name - snd_soc_of_parse_aux_devs - snd_soc_of_parse_node_prefix - snd_soc_of_parse_tdm_slot - snd_soc_pm_ops - -# required by spi-pl022.ko - devm_gpio_request - devm_spi_register_controller - __dma_request_channel - gpiod_direction_output_raw - gpiod_set_raw_value - loops_per_jiffy - pinctrl_pm_select_default_state - pinctrl_pm_select_idle_state - __spi_alloc_controller - spi_controller_resume - spi_controller_suspend - spi_delay_exec - spi_finalize_current_message - spi_get_next_queued_message - -# required by spidev.ko - device_create - device_destroy - __register_chrdev - stream_open - __unregister_chrdev - -# required by system_heap.ko - deferred_free - dmabuf_page_pool_alloc - dmabuf_page_pool_create - dmabuf_page_pool_destroy - dmabuf_page_pool_free - dma_heap_get_dev - __sg_page_iter_next - __sg_page_iter_start - -# required by tcpci_rt1711h.ko - i2c_smbus_read_word_data - regmap_raw_read - regmap_raw_write - tcpci_irq - tcpci_register_port - tcpci_unregister_port - -# required by wl18xx.ko - kstrtou8_from_user - -# required by wlcore.ko - bcmp - complete_all - consume_skb - device_create_bin_file - device_remove_bin_file - dev_pm_clear_wake_irq - dev_pm_set_dedicated_wake_irq - disable_irq_nosync - get_random_u32 - jiffies_to_msecs - jiffies_to_usecs - __local_bh_enable_ip - __netdev_alloc_skb - __nla_parse - no_seek_end_llseek - _raw_spin_trylock - request_firmware_nowait - skb_dequeue - skb_push - skb_put - skb_queue_head - skb_trim - vscnprintf - -# required by wlcore_sdio.ko - platform_device_add - platform_device_add_data - platform_device_add_resources - platform_device_alloc - platform_device_put - print_hex_dump - sdio_claim_host - sdio_disable_func - sdio_enable_func - sdio_f0_readb - sdio_f0_writeb - sdio_get_host_pm_caps - sdio_memcpy_fromio - sdio_memcpy_toio - sdio_readsb - sdio_register_driver - sdio_release_host - sdio_set_block_size - sdio_set_host_pm_flags - sdio_unregister_driver - sdio_writesb diff --git a/android/abi_gki_aarch64_mtk b/android/abi_gki_aarch64_mtk deleted file mode 100644 index 72cda01374ca..000000000000 --- a/android/abi_gki_aarch64_mtk +++ /dev/null @@ -1,2464 +0,0 @@ -[abi_symbol_list] - access_process_vm - activate_task - add_timer - add_uevent_var - add_wait_queue - adjust_managed_page_count - alarm_cancel - alarm_init - alarm_start - alarm_start_relative - alarm_try_to_cancel - alloc_anon_inode - alloc_chrdev_region - __alloc_disk_node - alloc_etherdev_mqs - alloc_io_pgtable_ops - alloc_netdev_mqs - alloc_pages_exact - __alloc_pages_nodemask - __alloc_percpu - __alloc_percpu_gfp - __alloc_skb - alloc_workqueue - android_debug_symbol - android_rvh_probe_register - anon_inode_getfd - anon_inode_getfile - arc4_crypt - arc4_setkey - __arch_copy_from_user - __arch_copy_to_user - arch_timer_read_counter - arm64_const_caps_ready - arm64_use_ng_mappings - __arm_smccc_hvc - __arm_smccc_smc - arp_tbl - async_schedule_node - atomic_notifier_call_chain - atomic_notifier_chain_register - atomic_notifier_chain_unregister - autoremove_wake_function - bcmp - bdget_disk - bdput - bio_endio - __bitmap_andnot - __bitmap_clear - bitmap_find_free_region - bitmap_find_next_zero_area_off - bitmap_free - bitmap_from_arr32 - bitmap_print_to_pagebuf - bitmap_release_region - __bitmap_set - bitmap_to_arr32 - __bitmap_weight - bitmap_zalloc - blk_alloc_queue - blk_cleanup_queue - blk_queue_flag_clear - blk_queue_flag_set - blk_queue_io_min - blk_queue_io_opt - blk_queue_logical_block_size - blk_queue_max_discard_sectors - blk_queue_max_write_zeroes_sectors - blk_queue_physical_block_size - blocking_notifier_call_chain - blocking_notifier_chain_register - blocking_notifier_chain_unregister - bpf_trace_run10 - bpf_trace_run12 - bpf_trace_run1 - bpf_trace_run2 - bpf_trace_run3 - bpf_trace_run4 - bpf_trace_run5 - bpf_trace_run6 - bpf_trace_run7 - bpf_trace_run8 - bpf_trace_run9 - bus_register - bus_set_iommu - bus_unregister - call_rcu - cancel_delayed_work - cancel_delayed_work_sync - cancel_work_sync - cdev_add - cdev_alloc - cdev_del - cdev_device_add - cdev_device_del - cdev_init - __cfi_slowpath - __check_object_size - check_preempt_curr - __class_create - class_destroy - class_find_device - class_for_each_device - __class_register - class_unregister - __ClearPageMovable - clk_bulk_disable - clk_bulk_enable - clk_bulk_prepare - clk_bulk_put_all - clk_bulk_unprepare - clk_disable - clk_divider_ops - clk_enable - clk_gate_ops - clk_get - __clk_get_hw - __clk_get_name - clk_get_parent - clk_get_rate - clk_hw_get_name - clk_hw_get_num_parents - clk_hw_get_parent - clk_hw_get_parent_by_index - clk_hw_get_rate - clk_hw_is_enabled - clk_hw_is_prepared - __clk_is_enabled - clk_mux_ops - clk_notifier_register - clk_prepare - clk_put - clk_register - clk_register_composite - clk_register_divider_table - clk_register_fixed_factor - clk_register_fixed_rate - clk_set_parent - clk_set_rate - clk_unprepare - clocks_calc_mult_shift - __close_fd - cma_alloc - cma_release - compat_alloc_user_space - compat_ptr_ioctl - complete - complete_all - completion_done - component_add - component_add_typed - component_bind_all - component_del - component_master_add_with_match - component_master_del - component_match_add_release - component_match_add_typed - component_unbind_all - config_ep_by_speed - config_group_init_type_name - console_drivers - console_suspend_enabled - console_unlock - __const_udelay - consume_skb - contig_page_data - _copy_from_iter - copy_from_kernel_nofault - _copy_to_iter - __cpu_active_mask - cpu_all_bits - cpu_bit_bitmap - cpufreq_add_update_util_hook - cpufreq_cpu_get - cpufreq_cpu_put - cpufreq_disable_fast_switch - cpufreq_driver_fast_switch - cpufreq_driver_resolve_freq - __cpufreq_driver_target - cpufreq_enable_fast_switch - cpufreq_generic_attr - cpufreq_generic_frequency_table_verify - cpufreq_get_policy - cpufreq_policy_transition_delay_us - cpufreq_quick_get - cpufreq_register_driver - cpufreq_register_governor - cpufreq_remove_update_util_hook - cpufreq_table_index_unsorted - cpufreq_this_cpu_can_update - cpufreq_unregister_driver - cpufreq_unregister_governor - cpu_hotplug_disable - cpu_hotplug_enable - __cpuhp_remove_state - __cpuhp_setup_state - __cpuhp_state_add_instance - __cpuhp_state_remove_instance - cpu_hwcap_keys - cpu_hwcaps - cpuidle_driver_state_disabled - cpuidle_get_driver - cpuidle_pause_and_lock - cpuidle_resume_and_unlock - cpu_latency_qos_add_request - cpu_latency_qos_remove_request - cpu_latency_qos_update_request - cpumask_any_but - cpumask_next - cpumask_next_and - cpu_number - __cpu_online_mask - __cpu_possible_mask - __cpu_present_mask - cpu_scale - cpus_read_lock - cpus_read_unlock - cpu_subsys - cpu_topology - crc32_be - crc32_le - crc8 - crc8_populate_msb - crypto_aead_decrypt - crypto_aead_encrypt - crypto_aead_setauthsize - crypto_aead_setkey - crypto_alloc_aead - crypto_alloc_base - crypto_alloc_shash - crypto_alloc_skcipher - crypto_comp_compress - crypto_comp_decompress - crypto_destroy_tfm - crypto_has_alg - __crypto_memneq - crypto_register_alg - crypto_register_scomp - crypto_shash_digest - crypto_shash_final - crypto_shash_finup - crypto_shash_setkey - crypto_shash_update - crypto_skcipher_decrypt - crypto_skcipher_encrypt - crypto_skcipher_setkey - crypto_unregister_alg - crypto_unregister_scomp - __crypto_xor - _ctype - dapm_clock_event - dapm_kcontrol_get_value - dapm_regulator_event - deactivate_task - debugfs_attr_read - debugfs_attr_write - debugfs_create_blob - debugfs_create_bool - debugfs_create_devm_seqfile - debugfs_create_dir - debugfs_create_file - debugfs_create_regset32 - debugfs_create_symlink - debugfs_create_u16 - debugfs_create_u32 - debugfs_create_u64 - debugfs_create_u8 - debugfs_create_x32 - debugfs_lookup - debugfs_remove - debugfs_rename - dec_zone_page_state - default_llseek - deferred_free - delayed_work_timer_fn - del_gendisk - del_timer - del_timer_sync - destroy_workqueue - dev_alloc_name - dev_base_lock - dev_change_net_namespace - dev_close - dev_driver_string - _dev_emerg - _dev_err - dev_err_probe - dev_fetch_sw_netstats - devfreq_add_governor - devfreq_get_devfreq_by_phandle - devfreq_monitor_resume - devfreq_monitor_start - devfreq_monitor_stop - devfreq_monitor_suspend - devfreq_recommended_opp - devfreq_remove_device - devfreq_remove_governor - devfreq_resume_device - devfreq_suspend_device - devfreq_update_interval - dev_fwnode - __dev_get_by_index - dev_get_by_index - dev_get_regmap - dev_get_stats - device_add - device_add_disk - device_create - device_create_bin_file - device_create_file - device_create_with_groups - device_del - device_destroy - device_for_each_child - device_get_child_node_count - device_get_match_data - device_get_next_child_node - device_initialize - device_init_wakeup - device_link_add - device_link_remove - device_property_present - device_property_read_string - device_property_read_u32_array - device_register - device_remove_bin_file - device_remove_file - device_rename - device_set_of_node_from_dev - device_show_bool - device_store_bool - device_unregister - _dev_info - __dev_kfree_skb_any - __devm_alloc_percpu - devm_blk_ksm_init - devm_clk_bulk_get - devm_clk_bulk_get_optional - devm_clk_get - devm_clk_get_optional - devm_clk_register - devm_devfreq_add_device - devm_devfreq_register_notifier - devm_devfreq_remove_device - devm_devfreq_unregister_notifier - devm_extcon_dev_allocate - devm_extcon_dev_register - devm_extcon_register_notifier - devm_free_irq - devm_fwnode_pwm_get - devm_gpiochip_add_data_with_key - devm_gpiod_get - devm_gpiod_get_index - devm_gpiod_get_optional - devm_gpiod_put - devm_gpio_free - devm_gpio_request - devm_gpio_request_one - devm_hwrng_register - devm_i2c_new_dummy_device - devm_iio_channel_get - devm_iio_channel_get_all - devm_iio_device_alloc - __devm_iio_device_register - devm_input_allocate_device - devm_ioremap - devm_ioremap_resource - devm_kasprintf - devm_kfree - devm_kmalloc - devm_led_classdev_register_ext - devm_led_classdev_unregister - devm_mbox_controller_register - devm_memremap - devm_mfd_add_devices - devm_nvmem_cell_get - devm_nvmem_device_get - devm_nvmem_register - devm_of_phy_get_by_index - __devm_of_phy_provider_register - devm_of_platform_populate - devm_phy_create - devm_phy_get - devm_pinctrl_get - devm_pinctrl_register_and_init - devm_platform_ioremap_resource - devm_platform_ioremap_resource_byname - devm_power_supply_get_by_phandle - devm_power_supply_register - devm_regmap_add_irq_chip - devm_regmap_field_alloc - __devm_regmap_init - __devm_regmap_init_i2c - __devm_regmap_init_mmio_clk - devm_regulator_get - devm_regulator_get_exclusive - devm_regulator_get_optional - devm_regulator_put - devm_regulator_register - devm_regulator_register_notifier - devm_regulator_unregister_notifier - devm_request_threaded_irq - __devm_reset_control_get - devm_reset_controller_register - devm_rtc_allocate_device - devm_snd_soc_register_card - devm_snd_soc_register_component - devm_spi_register_controller - devm_thermal_zone_of_sensor_register - devm_watchdog_register_device - _dev_notice - dev_pm_domain_attach_by_name - dev_pm_domain_detach - dev_pm_genpd_add_notifier - dev_pm_genpd_set_performance_state - dev_pm_opp_add - dev_pm_opp_find_freq_ceil - dev_pm_opp_find_freq_ceil_by_volt - dev_pm_opp_find_freq_floor - dev_pm_opp_get_freq - dev_pm_opp_get_level - dev_pm_opp_get_opp_count - dev_pm_opp_get_opp_table - dev_pm_opp_get_voltage - dev_pm_opp_of_add_table - dev_pm_opp_of_add_table_indexed - dev_pm_opp_of_remove_table - dev_pm_opp_put - dev_pm_opp_put_opp_table - dev_pm_opp_remove_all_dynamic - dev_pm_qos_update_request - dev_printk - dev_queue_xmit - devres_add - devres_alloc_node - devres_free - devres_release - dev_set_name - _dev_warn - disable_irq - disable_irq_nosync - disable_percpu_irq - disk_end_io_acct - disk_start_io_acct - dma_alloc_attrs - dma_async_device_register - dma_async_device_unregister - dma_async_tx_descriptor_init - dma_buf_attach - dma_buf_begin_cpu_access - dma_buf_detach - dma_buf_end_cpu_access - dma_buf_export - dma_buf_fd - dma_buf_get - dma_buf_map_attachment - dmabuf_page_pool_alloc - dmabuf_page_pool_create - dmabuf_page_pool_destroy - dmabuf_page_pool_free - dma_buf_put - dma_buf_unmap_attachment - dma_buf_vmap - dma_buf_vunmap - dma_fence_add_callback - dma_fence_context_alloc - dma_fence_default_wait - dma_fence_free - dma_fence_init - dma_fence_release - dma_fence_signal - dma_fence_signal_locked - dma_fence_signal_timestamp_locked - dma_fence_wait_timeout - dma_free_attrs - dma_get_sgtable_attrs - dma_heap_add - dma_heap_buffer_alloc - dma_heap_bufferfd_alloc - dma_heap_buffer_free - dma_heap_find - dma_heap_get_dev - dma_heap_get_name - dma_heap_put - dmam_alloc_attrs - dma_map_page_attrs - dma_map_resource - dma_map_sg_attrs - dmam_free_coherent - dma_mmap_attrs - dma_pool_alloc - dma_pool_create - dma_pool_destroy - dma_pool_free - dma_resv_wait_timeout_rcu - dma_run_dependencies - dma_set_coherent_mask - dma_set_mask - dma_sync_sg_for_cpu - dma_sync_sg_for_device - dma_sync_single_for_cpu - dma_unmap_page_attrs - dma_unmap_resource - dma_unmap_sg_attrs - do_exit - do_wait_intr_irq - down - down_interruptible - down_read - down_timeout - down_trylock - down_write - d_path - dput - driver_create_file - driver_remove_file - driver_unregister - drm_add_modes_noedid - drm_atomic_add_affected_connectors - drm_atomic_get_crtc_state - drm_atomic_helper_check - drm_atomic_helper_check_plane_state - drm_atomic_helper_cleanup_planes - drm_atomic_helper_commit_modeset_disables - drm_atomic_helper_commit_modeset_enables - drm_atomic_helper_commit_planes - drm_atomic_helper_connector_destroy_state - drm_atomic_helper_connector_duplicate_state - drm_atomic_helper_connector_reset - __drm_atomic_helper_crtc_destroy_state - __drm_atomic_helper_crtc_duplicate_state - drm_atomic_helper_disable_plane - drm_atomic_helper_legacy_gamma_set - drm_atomic_helper_page_flip - __drm_atomic_helper_plane_destroy_state - __drm_atomic_helper_plane_duplicate_state - drm_atomic_helper_prepare_planes - drm_atomic_helper_resume - drm_atomic_helper_set_config - drm_atomic_helper_shutdown - drm_atomic_helper_suspend - drm_atomic_helper_swap_state - drm_atomic_helper_update_plane - drm_atomic_helper_wait_for_vblanks - drm_atomic_state_clear - drm_atomic_state_default_release - __drm_atomic_state_free - drm_atomic_state_init - drm_bridge_attach - drm_calc_timestamping_constants - drm_compat_ioctl - drm_connector_attach_encoder - drm_connector_cleanup - drm_connector_init - drm_crtc_cleanup - drm_crtc_handle_vblank - drm_crtc_init_with_planes - drm_crtc_send_vblank_event - drm_crtc_vblank_get - drm_crtc_vblank_off - drm_crtc_vblank_on - drm_crtc_vblank_put - __drm_dbg - drm_dev_alloc - drm_dev_put - drm_dev_register - drm_dev_unregister - drm_encoder_cleanup - drm_encoder_init - __drm_err - drm_format_info - drm_framebuffer_cleanup - drm_framebuffer_init - drm_framebuffer_lookup - drm_framebuffer_remove - drm_gem_cma_vm_ops - drm_gem_create_mmap_offset - drm_gem_dumb_destroy - drm_gem_handle_create - drm_gem_mmap - drm_gem_mmap_obj - drm_gem_object_free - drm_gem_object_init - drm_gem_object_lookup - drm_gem_object_release - drm_gem_prime_export - drm_gem_prime_fd_to_handle - drm_gem_prime_handle_to_fd - drm_gem_prime_import - drm_gem_private_object_init - drm_gem_vm_close - drm_helper_hpd_irq_event - drm_helper_mode_fill_fb_struct - drm_helper_probe_single_connector_modes - drm_ioctl - drm_is_current_master - drm_kms_helper_poll_disable - drm_kms_helper_poll_enable - drm_kms_helper_poll_fini - drm_kms_helper_poll_init - drmm_mode_config_init - drm_mode_config_cleanup - drm_mode_config_reset - drm_mode_copy - drm_mode_crtc_set_gamma_size - drm_mode_duplicate - drm_mode_object_find - drm_mode_object_put - drm_mode_probed_add - drm_mode_set_crtcinfo - drm_mode_set_name - drm_mode_vrefresh - drm_object_attach_property - drm_open - drm_panel_add - drm_panel_disable - drm_panel_enable - drm_panel_get_modes - drm_panel_init - drm_panel_prepare - drm_panel_remove - drm_panel_unprepare - drm_plane_cleanup - drm_poll - drm_prime_gem_destroy - drm_property_blob_put - drm_property_create_blob - drm_property_create_range - drm_property_lookup_blob - drm_read - drm_release - drm_universal_plane_init - drm_vblank_init - drm_writeback_connector_init - drm_writeback_queue_job - drm_writeback_signal_completion - dump_stack - em_cpu_get - em_dev_register_perf_domain - enable_irq - enable_percpu_irq - ether_setup - eth_header - eth_header_cache - eth_header_cache_update - eth_header_parse - eth_mac_addr - eth_platform_get_mac_address - ethtool_op_get_link - ethtool_op_get_ts_info - eth_type_trans - eth_validate_addr - event_triggers_call - extcon_get_edev_by_phandle - extcon_get_state - extcon_set_state_sync - failure_tracking - fd_install - fget - find_get_pid - find_last_bit - find_next_bit - find_next_zero_bit - find_pid_ns - find_task_by_vpid - find_vma - find_vpid - finish_wait - flush_dcache_page - flush_delayed_work - flush_work - flush_workqueue - follow_pfn - font_vga_8x16 - for_each_kernel_tracepoint - fput - frame_vector_create - frame_vector_destroy - frame_vector_to_pages - frame_vector_to_pfns - free_irq - free_netdev - __free_pages - free_pages - free_pages_exact - free_percpu - free_percpu_irq - freezing_slow_path - freq_qos_add_notifier - freq_qos_add_request - freq_qos_remove_request - freq_qos_update_request - fsg_common_create_luns - fsg_common_set_cdev - fsg_common_set_inquiry_string - fsg_common_set_sysfs - fsg_config_from_params - fsync_bdev - fwnode_handle_get - fwnode_handle_put - fwnode_property_present - fwnode_property_read_string - fwnode_property_read_u32_array - gcd - generic_file_llseek - generic_handle_irq - generic_iommu_put_resv_regions - generic_mii_ioctl - genlmsg_multicast_allns - genlmsg_put - genl_register_family - genl_unregister_family - genphy_resume - gen_pool_add_owner - gen_pool_alloc_algo_owner - gen_pool_avail - gen_pool_best_fit - gen_pool_create - gen_pool_destroy - gen_pool_free_owner - gen_pool_has_addr - gen_pool_set_algo - gen_pool_size - gen_pool_virt_to_phys - getboottime64 - get_cpu_device - get_cpu_idle_time - get_cpu_idle_time_us - get_cpu_iowait_time_us - get_device - get_each_dmabuf - get_freelist_nr_pages - __get_free_pages - get_governor_parent_kobj - get_kernel_pages - get_net_ns_by_fd - get_net_ns_by_pid - get_pid_task - get_random_bytes - get_random_u32 - __get_task_comm - get_task_exe_file - get_task_mm - get_unused_fd_flags - get_user_pages - get_user_pages_remote - get_vaddr_frames - get_zeroed_page - gic_nonsecure_priorities - gov_attr_set_get - gov_attr_set_init - gov_attr_set_put - governor_sysfs_ops - gpiochip_add_data_with_key - gpiochip_generic_free - gpiochip_generic_request - gpiochip_get_data - gpiochip_lock_as_irq - gpiochip_unlock_as_irq - gpiod_direction_input - gpiod_direction_output - gpiod_direction_output_raw - gpiod_get_raw_value - gpiod_get_value_cansleep - gpiod_set_debounce - gpiod_set_value - gpiod_set_value_cansleep - gpiod_to_irq - gpio_free - gpio_request - gpio_request_one - gpio_to_desc - handle_level_irq - handle_nested_irq - handle_simple_irq - hashlen_string - have_governor_per_policy - hex_asc - hrtimer_active - hrtimer_cancel - hrtimer_forward - hrtimer_init - hrtimer_start_range_ns - hrtimer_try_to_cancel - __hw_addr_init - __hw_addr_sync - __hw_addr_unsync - i2c_add_adapter - i2c_del_adapter - i2c_del_driver - i2c_get_dma_safe_msg_buf - i2c_put_dma_safe_msg_buf - i2c_register_driver - i2c_smbus_read_byte_data - i2c_smbus_read_i2c_block_data - i2c_smbus_write_byte_data - i2c_smbus_write_i2c_block_data - i2c_smbus_write_word_data - i2c_transfer - i2c_transfer_buffer_flags - i2c_unregister_device - icc_link_create - icc_node_add - icc_node_create - icc_node_del - icc_node_destroy - icc_provider_add - icc_provider_del - icc_put - icc_set_bw - icc_sync_state - ida_alloc_range - ida_destroy - ida_free - idr_alloc - idr_destroy - idr_find - idr_for_each - idr_get_next - idr_remove - iio_alloc_pollfunc - iio_buffer_init - iio_buffer_put - iio_channel_get - iio_channel_release - iio_dealloc_pollfunc - iio_device_attach_buffer - __iio_device_register - iio_device_unregister - iio_get_channel_type - iio_get_time_ns - iio_push_to_buffers - iio_read_channel_attribute - iio_read_channel_processed - iio_read_channel_raw - iio_trigger_notify_done - inc_zone_page_state - in_egroup_p - inet_csk_get_port - init_net - init_pseudo - __init_rwsem - __init_swait_queue_head - init_task - init_timer_key - init_uts_ns - init_wait_entry - __init_waitqueue_head - input_allocate_device - input_event - input_free_device - input_mt_init_slots - input_mt_report_slot_state - input_register_device - input_set_abs_params - input_set_capability - input_unregister_device - iommu_alloc_resv_region - iommu_device_register - iommu_device_sysfs_add - iommu_device_sysfs_remove - iommu_device_unregister - iommu_fwspec_add_ids - iommu_fwspec_free - iommu_get_dma_cookie - iommu_get_domain_for_dev - iommu_group_alloc - iommu_group_ref_get - iommu_iova_to_phys - iommu_map_sg - iommu_present - iommu_put_dma_cookie - iommu_unmap - __ioremap - ioremap_cache - iounmap - iput - ipv6_skip_exthdr - irq_create_mapping_affinity - irq_create_of_mapping - irq_dispose_mapping - __irq_domain_add - irq_domain_remove - irq_domain_simple_ops - irq_domain_xlate_onetwocell - irq_domain_xlate_twocell - irq_find_mapping - irq_get_irqchip_state - irq_get_irq_data - irq_modify_status - irq_of_parse_and_map - irq_set_affinity_hint - irq_set_chained_handler_and_data - irq_set_chip - irq_set_chip_and_handler_name - irq_set_chip_data - irq_set_irq_type - irq_set_irq_wake - irq_set_parent - irq_to_desc - irq_work_queue - irq_work_sync - is_dma_buf_file - is_vmalloc_addr - iterate_fd - jiffies - jiffies_to_msecs - jiffies_to_usecs - kasan_flag_enabled - kasprintf - kernel_cpustat - kernel_kobj - kernel_param_lock - kernel_param_unlock - kernel_power_off - kernel_restart - kernel_sigaction - kernfs_path_from_node - kern_mount - kern_unmount - key_create_or_update - key_put - keyring_alloc - __kfifo_alloc - __kfifo_free - __kfifo_in - __kfifo_out - __kfifo_to_user - kfree - kfree_const - kfree_sensitive - kfree_skb - kfree_skb_list - kill_anon_super - kimage_vaddr - kimage_voffset - __kmalloc - kmalloc_caches - kmalloc_order_trace - kmem_cache_alloc - kmem_cache_alloc_trace - kmem_cache_create - kmem_cache_destroy - kmem_cache_free - kmemdup - kobject_add - kobject_create_and_add - kobject_init - kobject_init_and_add - kobject_put - kobject_uevent - kobject_uevent_env - krealloc - kstrdup - kstrdup_const - kstrndup - kstrtobool - kstrtoint - kstrtoint_from_user - kstrtol_from_user - kstrtoll - kstrtou16 - kstrtou8 - kstrtouint - kstrtouint_from_user - kstrtoul_from_user - kstrtoull - kstrtoull_from_user - ksys_sync_helper - kthread_bind - kthread_bind_mask - kthread_cancel_delayed_work_sync - kthread_cancel_work_sync - kthread_create_on_node - kthread_create_worker - kthread_delayed_work_timer_fn - kthread_destroy_worker - kthread_flush_work - kthread_flush_worker - __kthread_init_worker - kthread_queue_delayed_work - kthread_queue_work - kthread_should_stop - kthread_stop - kthread_worker_fn - ktime_get - ktime_get_coarse_with_offset - ktime_get_mono_fast_ns - ktime_get_raw_ts64 - ktime_get_real_ts64 - ktime_get_seconds - ktime_get_ts64 - ktime_get_with_offset - kvfree - kvfree_call_rcu - kvmalloc_node - led_classdev_flash_register_ext - led_classdev_flash_unregister - led_get_flash_fault - led_set_brightness_sync - led_set_flash_brightness - led_set_flash_timeout - led_sysfs_disable - led_sysfs_enable - led_trigger_remove - led_update_brightness - led_update_flash_brightness - __list_add_valid - __list_del_entry_valid - list_sort - __local_bh_enable_ip - __lock_page - log_buf_addr_get - log_buf_len_get - __log_post_read_mmio - __log_read_mmio - log_threaded_irq_wakeup_reason - __log_write_mmio - lzo1x_1_compress - lzo1x_decompress_safe - lzorle1x_1_compress - match_hex - match_int - match_token - mbox_chan_received_data - mbox_client_txdone - mbox_controller_register - mbox_controller_unregister - mbox_free_channel - mbox_request_channel - mbox_send_message - mdiobus_alloc_size - mdiobus_free - __mdiobus_register - mdiobus_unregister - media_create_intf_link - media_create_pad_link - media_device_cleanup - media_device_init - __media_device_register - media_device_unregister - media_devnode_create - media_devnode_remove - media_entity_pads_init - media_entity_remove_links - media_pipeline_start - media_pipeline_stop - memblock_end_of_DRAM - memchr - memcmp - memcpy - __memcpy_fromio - __memcpy_toio - memmove - memory_read_from_buffer - memparse - memremap - memset64 - memset - __memset_io - memstart_addr - memunmap - migrate_swap - mii_check_media - mii_ethtool_get_link_ksettings - mii_ethtool_gset - mii_ethtool_set_link_ksettings - mii_link_ok - mii_nway_restart - mipi_dsi_attach - mipi_dsi_dcs_read - mipi_dsi_dcs_write - mipi_dsi_dcs_write_buffer - mipi_dsi_detach - mipi_dsi_driver_register_full - mipi_dsi_driver_unregister - mipi_dsi_generic_read - mipi_dsi_generic_write - mipi_dsi_host_register - mipi_dsi_host_unregister - misc_deregister - misc_register - mktime64 - mmc_add_host - mmc_alloc_host - mmc_can_gpio_cd - mmc_cqe_request_done - mmc_detect_change - mmc_free_host - mmc_gpio_get_cd - mmc_gpio_get_ro - mmc_hw_reset - mmc_of_parse - mmc_regulator_get_supply - mmc_regulator_set_ocr - mmc_regulator_set_vqmmc - mmc_remove_host - mmc_request_done - mmc_send_tuning - mmput - mod_delayed_work_on - mod_timer - mod_timer_pending - module_layout - __msecs_to_jiffies - msleep - msleep_interruptible - __mutex_init - mutex_is_locked - mutex_lock - mutex_lock_interruptible - mutex_lock_killable - mutex_trylock - mutex_unlock - napi_disable - napi_gro_flush - napi_gro_receive - __napi_schedule - napi_schedule_prep - nd_tbl - netdev_alloc_frag - __netdev_alloc_skb - netdev_err - netdev_info - netdev_set_default_ethtool_ops - netdev_warn - netif_carrier_off - netif_carrier_on - netif_napi_add - netif_receive_skb - netif_receive_skb_list - netif_rx - netif_rx_ni - netif_tx_stop_all_queues - netif_tx_wake_queue - netlink_broadcast - __netlink_kernel_create - netlink_register_notifier - netlink_unicast - netlink_unregister_notifier - net_namespace_list - net_ns_type_operations - net_ratelimit - nf_register_net_hooks - nf_unregister_net_hooks - nla_find - nla_memcpy - __nla_parse - nla_put_64bit - nla_put - nla_reserve - __nla_validate - __nlmsg_put - no_llseek - nonseekable_open - nr_cpu_ids - nsecs_to_jiffies - ns_to_timespec64 - __num_online_cpus - nvmem_cell_get - nvmem_cell_put - nvmem_cell_read - nvmem_cell_read_u32 - nvmem_cell_write - nvmem_device_get - nvmem_device_put - nvmem_device_read - of_address_to_resource - of_alias_get_id - of_clk_add_provider - of_clk_del_provider - of_clk_get - of_clk_get_by_name - of_clk_get_from_provider - of_clk_src_onecell_get - of_clk_src_simple_get - of_count_phandle_with_args - of_cpu_node_to_id - of_device_get_match_data - of_device_is_available - of_device_is_compatible - of_dma_configure_id - of_dma_controller_free - of_dma_controller_register - of_dma_xlate_by_chan_id - of_drm_find_bridge - of_drm_find_panel - of_find_backlight_by_node - of_find_compatible_node - of_find_device_by_node - of_find_matching_node_and_match - of_find_node_by_name - of_find_node_by_phandle - of_find_node_opts_by_path - of_find_node_with_property - of_find_property - of_fwnode_ops - of_genpd_add_device - of_genpd_add_provider_onecell - of_get_address - of_get_child_by_name - of_get_cpu_node - of_get_named_gpio_flags - of_get_next_available_child - of_get_next_child - of_get_next_parent - of_get_parent - of_get_property - of_get_regulator_init_data - of_graph_get_next_endpoint - of_graph_get_remote_node - of_graph_get_remote_port_parent - of_icc_get - of_icc_xlate_onecell - of_iomap - of_irq_find_parent - of_irq_get - of_irq_parse_one - of_irq_to_resource_table - of_machine_is_compatible - of_match_device - of_match_node - of_parse_phandle - of_parse_phandle_with_args - of_parse_phandle_with_fixed_args - of_phandle_iterator_init - of_phandle_iterator_next - of_phy_simple_xlate - of_platform_depopulate - of_platform_device_create - of_platform_populate - of_property_count_elems_of_size - of_property_match_string - of_property_read_string - of_property_read_string_helper - of_property_read_u32_index - of_property_read_u64 - of_property_read_variable_u16_array - of_property_read_variable_u32_array - of_property_read_variable_u64_array - of_property_read_variable_u8_array - of_prop_next_string - of_prop_next_u32 - of_remove_property - of_reserved_mem_device_init_by_idx - of_reserved_mem_lookup - of_thermal_get_trip_points - of_translate_address - on_each_cpu - oops_in_progress - page_endio - page_mapping - __page_pinner_migration_failed - panic - panic_notifier_list - param_array_ops - param_get_bool - param_get_charp - param_get_int - param_get_uint - param_get_ulong - param_ops_bool - param_ops_charp - param_ops_int - param_ops_uint - param_set_bool - param_set_charp - param_set_uint - param_set_ulong - pause_cpus - PDE_DATA - __per_cpu_offset - perf_event_create_kernel_counter - perf_event_disable - perf_event_enable - perf_event_release_kernel - perf_event_update_userpage - perf_pmu_migrate_context - perf_pmu_register - perf_pmu_unregister - perf_trace_buf_alloc - perf_trace_run_bpf_submit - pfn_valid - phy_connect - phy_disconnect - phy_do_ioctl_running - phy_ethtool_get_link_ksettings - phy_ethtool_nway_reset - phy_ethtool_set_link_ksettings - phy_exit - phy_get - phy_init - phy_power_off - phy_power_on - phy_print_status - phy_put - phy_set_mode_ext - phy_start - phy_stop - pid_task - pinconf_generic_parse_dt_config - pinctrl_dev_get_drvdata - pinctrl_enable - pinctrl_gpio_direction_input - pinctrl_gpio_direction_output - pinctrl_lookup_state - pinctrl_pm_select_default_state - pinctrl_pm_select_sleep_state - pinctrl_put - pinctrl_select_state - pinctrl_utils_add_map_configs - pinctrl_utils_free_map - pinctrl_utils_reserve_map - pin_user_pages_fast - platform_bus_type - platform_device_add - platform_device_add_data - platform_device_alloc - platform_device_del - platform_device_put - platform_device_register - platform_device_register_full - platform_device_unregister - __platform_driver_register - platform_driver_unregister - platform_get_irq - platform_get_irq_byname - platform_get_irq_byname_optional - platform_get_irq_optional - platform_get_resource - platform_get_resource_byname - __platform_register_drivers - platform_unregister_drivers - pm_genpd_add_device - pm_genpd_add_subdomain - pm_genpd_init - pm_genpd_remove_device - __pm_relax - pm_relax - __pm_runtime_disable - pm_runtime_enable - pm_runtime_force_resume - pm_runtime_force_suspend - pm_runtime_get_if_active - __pm_runtime_idle - __pm_runtime_resume - pm_runtime_set_autosuspend_delay - __pm_runtime_set_status - __pm_runtime_suspend - __pm_runtime_use_autosuspend - __pm_stay_awake - pm_stay_awake - pm_suspend_default_s2idle - pm_system_wakeup - pm_wakeup_dev_event - pm_wakeup_ws_event - pm_wq - power_supply_changed - power_supply_get_by_name - power_supply_get_drvdata - power_supply_get_property - power_supply_put - power_supply_register - power_supply_reg_notifier - power_supply_set_property - prandom_bytes - prandom_u32 - preempt_schedule - preempt_schedule_notrace - prepare_to_wait_event - print_hex_dump - printk - printk_deferred - proc_create - proc_create_data - proc_create_single_data - proc_mkdir - proc_remove - proc_set_user - pskb_expand_head - __pskb_pull_tail - ___pskb_trim - put_device - put_disk - __put_net - __put_page - put_pid - __put_task_struct - put_unused_fd - put_vaddr_frames - pwm_apply_state - pwmchip_add - pwmchip_remove - queue_delayed_work_on - queue_work_on - ___ratelimit - raw_notifier_call_chain - raw_notifier_chain_register - raw_notifier_chain_unregister - _raw_read_lock - _raw_read_lock_bh - _raw_read_lock_irqsave - _raw_read_trylock - _raw_read_unlock - _raw_read_unlock_bh - _raw_read_unlock_irqrestore - _raw_spin_lock - _raw_spin_lock_bh - _raw_spin_lock_irq - _raw_spin_lock_irqsave - _raw_spin_trylock - _raw_spin_unlock - _raw_spin_unlock_bh - _raw_spin_unlock_irq - _raw_spin_unlock_irqrestore - _raw_write_lock - _raw_write_lock_bh - _raw_write_lock_irqsave - _raw_write_unlock - _raw_write_unlock_bh - _raw_write_unlock_irqrestore - rb_erase - rb_first - rb_insert_color - rb_next - rcu_barrier - rcu_idle_enter - rcu_idle_exit - __rcu_read_lock - __rcu_read_unlock - rdev_get_dev - rdev_get_drvdata - rdev_get_id - rdev_get_regmap - refcount_warn_saturate - __refrigerator - regcache_cache_only - regcache_mark_dirty - regcache_sync - register_blkdev - __register_chrdev - register_chrdev_region - register_die_notifier - register_inet6addr_notifier - register_inetaddr_notifier - register_kprobe - register_module_notifier - register_netdev - register_netdevice - register_netdevice_notifier - register_oom_notifier - register_pernet_device - register_pernet_subsys - register_pm_notifier - register_reboot_notifier - __register_rpmsg_driver - register_shrinker - register_syscore_ops - register_virtio_device - register_virtio_driver - regmap_bulk_read - regmap_bulk_write - regmap_field_read - regmap_field_update_bits_base - __regmap_init - regmap_irq_get_domain - regmap_raw_read - regmap_raw_write - regmap_read - regmap_update_bits_base - regmap_write - regulator_count_voltages - regulator_disable - regulator_disable_regmap - regulator_enable - regulator_enable_regmap - regulator_get - regulator_get_current_limit_regmap - regulator_get_mode - regulator_get_optional - regulator_get_voltage - regulator_get_voltage_sel_regmap - regulator_is_enabled - regulator_is_enabled_regmap - regulator_list_voltage - regulator_list_voltage_linear - regulator_list_voltage_linear_range - regulator_list_voltage_table - regulator_map_voltage_iterate - regulator_map_voltage_linear - regulator_map_voltage_linear_range - regulator_notifier_call_chain - regulator_put - regulator_set_active_discharge_regmap - regulator_set_current_limit - regulator_set_current_limit_regmap - regulator_set_mode - regulator_set_voltage - regulator_set_voltage_sel_regmap - regulator_set_voltage_time - regulator_set_voltage_time_sel - regulator_sync_voltage - release_firmware - release_pages - remap_pfn_range - remap_vmalloc_range - remove_proc_entry - remove_proc_subtree - remove_wait_queue - request_firmware - request_firmware_nowait - __request_percpu_irq - request_threaded_irq - reset_control_assert - reset_control_deassert - reset_controller_register - reset_control_reset - resume_cpus - revalidate_disk_size - rfkill_alloc - rfkill_blocked - rfkill_destroy - rfkill_pause_polling - rfkill_register - rfkill_resume_polling - rfkill_set_hw_state - rfkill_unregister - rhashtable_free_and_destroy - rhashtable_insert_slow - rhltable_init - __rht_bucket_nested - rht_bucket_nested - rht_bucket_nested_insert - root_task_group - round_jiffies - round_jiffies_relative - round_jiffies_up - rpmsg_create_ept - rpmsg_destroy_ept - rpmsg_register_device - rpmsg_send - rpmsg_trysend - rpmsg_unregister_device - rproc_add - rproc_add_subdev - rproc_alloc - rproc_del - rproc_free - rproc_remove_subdev - rps_needed - rtc_ktime_to_tm - rtc_nvmem_register - __rtc_register_device - rtc_time64_to_tm - rtc_tm_to_ktime - rtc_tm_to_time64 - rtc_update_irq - rtc_valid_tm - rtnl_is_locked - rtnl_lock - rtnl_unlock - runqueues - sched_clock - sched_feat_keys - sched_setattr_nocheck - sched_set_normal - sched_setscheduler - sched_setscheduler_nocheck - sched_uclamp_used - schedule - schedule_timeout - scmi_driver_register - scmi_driver_unregister - scmi_protocol_register - scnprintf - scsi_autopm_get_device - scsi_autopm_put_device - scsi_device_get - scsi_device_put - scsi_device_quiesce - __scsi_execute - __scsi_iterate_devices - scsi_print_sense_hdr - sdio_signal_irq - send_sig - seq_hex_dump - seq_lseek - seq_open - seq_open_private - seq_printf - seq_putc - seq_puts - seq_read - seq_release - seq_release_private - seq_write - serial8250_do_set_termios - serial8250_do_shutdown - serial8250_do_startup - serial8250_get_port - serial8250_register_8250_port - serial8250_resume_port - serial8250_rpm_get - serial8250_rpm_put - serial8250_suspend_port - serial8250_unregister_port - set_cpus_allowed_ptr - set_normalized_timespec64 - set_page_dirty_lock - __SetPageMovable - set_task_cpu - set_user_nice - sg_alloc_table - sg_alloc_table_from_pages - sg_free_table - sg_init_one - sg_init_table - sg_miter_next - sg_miter_start - sg_miter_stop - sg_next - __sg_page_iter_next - __sg_page_iter_start - si_mem_available - simple_attr_open - simple_attr_read - simple_attr_release - simple_attr_write - simple_open - simple_read_from_buffer - simple_write_to_buffer - single_open - single_release - skb_add_rx_frag - skb_checksum_help - skb_clone - skb_clone_sk - skb_complete_wifi_ack - skb_copy - skb_copy_bits - skb_copy_expand - skb_dequeue - skb_ensure_writable - __skb_get_hash - __skb_gso_segment - skb_pull - skb_push - skb_put - skb_queue_head - skb_queue_purge - skb_queue_tail - skb_trim - snd_card_add_dev_attr - snd_ctl_boolean_mono_info - snd_jack_set_key - snd_pcm_format_physical_width - snd_pcm_format_width - snd_pcm_hw_constraint_integer - snd_pcm_hw_constraint_minmax - snd_pcm_hw_constraint_step - snd_pcm_lib_free_pages - snd_pcm_lib_malloc_pages - snd_pcm_lib_preallocate_free_for_all - snd_pcm_lib_preallocate_pages_for_all - snd_pcm_period_elapsed - snd_pcm_set_ops - snd_soc_add_component_controls - snd_soc_bytes_info_ext - snd_soc_bytes_tlv_callback - snd_soc_card_jack_new - snd_soc_component_exit_regmap - snd_soc_component_init_regmap - snd_soc_component_read - snd_soc_component_update_bits - snd_soc_component_write - snd_soc_dai_set_sysclk - snd_soc_dapm_add_routes - snd_soc_dapm_disable_pin - snd_soc_dapm_enable_pin - snd_soc_dapm_get_enum_double - snd_soc_dapm_get_pin_switch - snd_soc_dapm_get_volsw - snd_soc_dapm_info_pin_switch - snd_soc_dapm_new_controls - snd_soc_dapm_new_widgets - snd_soc_dapm_put_enum_double - snd_soc_dapm_put_pin_switch - snd_soc_dapm_put_volsw - snd_soc_dapm_sync - snd_soc_get_volsw - snd_soc_info_enum_double - snd_soc_info_volsw - snd_soc_jack_report - snd_soc_new_compress - snd_soc_of_get_dai_link_codecs - snd_soc_poweroff - snd_soc_put_volsw - snd_soc_register_component - snd_soc_resume - snd_soc_rtdcom_lookup - snd_soc_set_runtime_hwparams - snd_soc_unregister_component - snprintf - soc_device_register - soc_device_unregister - __sock_create - sock_release - sort - __spi_alloc_controller - spi_bus_type - spi_finalize_current_transfer - __spi_register_driver - spi_setup - spi_sync - spmi_controller_add - spmi_controller_alloc - spmi_controller_remove - __spmi_driver_register - spmi_ext_register_read - spmi_ext_register_readl - spmi_ext_register_write - spmi_ext_register_writel - spmi_register_read - spmi_register_write - spmi_register_zero_write - sprintf - srcu_init_notifier_head - srcu_notifier_call_chain - srcu_notifier_chain_register - srcu_notifier_chain_unregister - sscanf - __stack_chk_fail - __stack_chk_guard - stack_trace_save - static_key_slow_dec - static_key_slow_inc - stop_one_cpu_nowait - stpcpy - strcasecmp - strchr - strcmp - strcpy - strcspn - strim - strlcat - strlcpy - strlen - strncasecmp - strncat - strncmp - strncpy - strncpy_from_user - strnlen - strnstr - strrchr - strreplace - strscpy - strsep - strstr - suspend_set_ops - __sw_hweight16 - __sw_hweight32 - __sw_hweight64 - __sw_hweight8 - sync_file_create - sync_file_get_fence - synchronize_irq - synchronize_net - synchronize_rcu - synchronize_srcu - syscon_node_to_regmap - syscon_regmap_lookup_by_compatible - syscon_regmap_lookup_by_phandle - sysfs_create_bin_file - sysfs_create_file_ns - sysfs_create_group - sysfs_create_link - __sysfs_match_string - sysfs_remove_bin_file - sysfs_remove_file_ns - sysfs_remove_group - sysfs_remove_link - sysfs_streq - system_freezable_power_efficient_wq - system_freezable_wq - system_freezing_cnt - system_highpri_wq - system_power_efficient_wq - system_state - system_unbound_wq - system_wq - sys_tz - task_active_pid_ns - __tasklet_hi_schedule - tasklet_init - tasklet_kill - __tasklet_schedule - tasklet_setup - tasklist_lock - __task_pid_nr_ns - __task_rq_lock - thermal_cooling_device_unregister - thermal_of_cooling_device_register - thermal_zone_get_temp - thermal_zone_get_zone_by_name - tick_nohz_get_idle_calls_cpu - timecounter_init - timecounter_read - timer_unstable_counter_workaround - topology_set_thermal_pressure - _totalram_pages - __trace_bprintk - __trace_bputs - trace_event_buffer_commit - trace_event_buffer_reserve - trace_event_ignore_this_pid - trace_event_raw_init - trace_event_reg - trace_handle_return - __traceiter_android_rvh_cpu_overutilized - __traceiter_android_rvh_dequeue_task - __traceiter_android_rvh_dequeue_task_fair - __traceiter_android_rvh_enqueue_task - __traceiter_android_rvh_enqueue_task_fair - __traceiter_android_rvh_find_busiest_group - __traceiter_android_rvh_find_energy_efficient_cpu - __traceiter_android_rvh_finish_prio_fork - __traceiter_android_rvh_prepare_prio_fork - __traceiter_android_rvh_rtmutex_prepare_setprio - __traceiter_android_rvh_sched_newidle_balance - __traceiter_android_rvh_select_task_rq_fair - __traceiter_android_rvh_setscheduler - __traceiter_android_rvh_set_user_nice - __traceiter_android_rvh_tick_entry - __traceiter_android_rvh_uclamp_eff_get - __traceiter_android_vh_alter_futex_plist_add - __traceiter_android_vh_alter_rwsem_list_add - __traceiter_android_vh_arch_set_freq_scale - __traceiter_android_vh_binder_restore_priority - __traceiter_android_vh_binder_set_priority - __traceiter_android_vh_binder_transaction_init - __traceiter_android_vh_cgroup_set_task - __traceiter_android_vh_commit_creds - __traceiter_android_vh_em_cpu_energy - __traceiter_android_vh_exit_creds - __traceiter_android_vh_finish_update_load_avg_se - __traceiter_android_vh_iommu_alloc_iova - __traceiter_android_vh_iommu_free_iova - __traceiter_android_vh_logbuf - __traceiter_android_vh_override_creds - __traceiter_android_vh_prepare_update_load_avg_se - __traceiter_android_vh_revert_creds - __traceiter_android_vh_rwsem_init - __traceiter_android_vh_rwsem_wake - __traceiter_android_vh_rwsem_write_finished - __traceiter_android_vh_scheduler_tick - __traceiter_android_vh_selinux_avc_insert - __traceiter_android_vh_selinux_avc_lookup - __traceiter_android_vh_selinux_avc_node_delete - __traceiter_android_vh_selinux_avc_node_replace - __traceiter_android_vh_selinux_is_initialized - __traceiter_android_vh_set_memory_nx - __traceiter_android_vh_set_memory_ro - __traceiter_android_vh_set_memory_rw - __traceiter_android_vh_set_memory_x - __traceiter_android_vh_set_module_permit_after_init - __traceiter_android_vh_set_module_permit_before_init - __traceiter_android_vh_set_wake_flags - __traceiter_android_vh_syscall_prctl_finished - __traceiter_cpu_frequency - __traceiter_pelt_se_tp - __traceiter_rwmmio_post_read - __traceiter_rwmmio_read - __traceiter_rwmmio_write - __traceiter_sched_update_nr_running_tp - __traceiter_xhci_urb_giveback - __tracepoint_android_rvh_cpu_overutilized - __tracepoint_android_rvh_dequeue_task - __tracepoint_android_rvh_dequeue_task_fair - __tracepoint_android_rvh_enqueue_task - __tracepoint_android_rvh_enqueue_task_fair - __tracepoint_android_rvh_find_busiest_group - __tracepoint_android_rvh_find_energy_efficient_cpu - __tracepoint_android_rvh_finish_prio_fork - __tracepoint_android_rvh_prepare_prio_fork - __tracepoint_android_rvh_rtmutex_prepare_setprio - __tracepoint_android_rvh_sched_newidle_balance - __tracepoint_android_rvh_select_task_rq_fair - __tracepoint_android_rvh_setscheduler - __tracepoint_android_rvh_set_user_nice - __tracepoint_android_rvh_tick_entry - __tracepoint_android_rvh_uclamp_eff_get - __tracepoint_android_vh_alter_futex_plist_add - __tracepoint_android_vh_alter_rwsem_list_add - __tracepoint_android_vh_arch_set_freq_scale - __tracepoint_android_vh_binder_restore_priority - __tracepoint_android_vh_binder_set_priority - __tracepoint_android_vh_binder_transaction_init - __tracepoint_android_vh_cgroup_set_task - __tracepoint_android_vh_commit_creds - __tracepoint_android_vh_em_cpu_energy - __tracepoint_android_vh_exit_creds - __tracepoint_android_vh_finish_update_load_avg_se - __tracepoint_android_vh_iommu_alloc_iova - __tracepoint_android_vh_iommu_free_iova - __tracepoint_android_vh_logbuf - __tracepoint_android_vh_override_creds - __tracepoint_android_vh_prepare_update_load_avg_se - __tracepoint_android_vh_revert_creds - __tracepoint_android_vh_rwsem_init - __tracepoint_android_vh_rwsem_wake - __tracepoint_android_vh_rwsem_write_finished - __tracepoint_android_vh_scheduler_tick - __tracepoint_android_vh_selinux_avc_insert - __tracepoint_android_vh_selinux_avc_lookup - __tracepoint_android_vh_selinux_avc_node_delete - __tracepoint_android_vh_selinux_avc_node_replace - __tracepoint_android_vh_selinux_is_initialized - __tracepoint_android_vh_set_memory_nx - __tracepoint_android_vh_set_memory_ro - __tracepoint_android_vh_set_memory_rw - __tracepoint_android_vh_set_memory_x - __tracepoint_android_vh_set_module_permit_after_init - __tracepoint_android_vh_set_module_permit_before_init - __tracepoint_android_vh_set_wake_flags - __tracepoint_android_vh_syscall_prctl_finished - __tracepoint_cpu_frequency - __tracepoint_pelt_se_tp - tracepoint_probe_register - tracepoint_probe_unregister - __tracepoint_rwmmio_post_read - __tracepoint_rwmmio_read - __tracepoint_rwmmio_write - __tracepoint_sched_update_nr_running_tp - tracepoint_srcu - __tracepoint_xhci_urb_giveback - trace_print_array_seq - trace_print_symbols_seq - __trace_puts - trace_raw_output_prep - trace_seq_printf - trace_seq_putc - tracing_off - try_wait_for_completion - tty_flip_buffer_push - tty_insert_flip_string_fixed_flag - tty_termios_baud_rate - tty_termios_encode_baud_rate - typec_get_drvdata - typec_mux_get_drvdata - typec_mux_register - typec_mux_set - typec_mux_unregister - typec_partner_set_identity - typec_register_partner - typec_register_port - typec_set_data_role - typec_set_orientation - typec_set_pwr_opmode - typec_set_pwr_role - typec_set_vconn_role - typec_switch_get_drvdata - typec_switch_register - typec_switch_unregister - typec_unregister_partner - uart_get_baud_rate - uart_get_divisor - uart_update_timeout - uclamp_eff_value - __udelay - ufshcd_auto_hibern8_update - ufshcd_delay_us - ufshcd_dme_get_attr - ufshcd_dme_set_attr - ufshcd_dump_regs - ufshcd_fixup_dev_quirks - ufshcd_get_pwr_dev_param - ufshcd_hba_enable - ufshcd_hba_stop - ufshcd_link_recovery - ufshcd_make_hba_operational - ufshcd_pltfrm_init - ufshcd_pltfrm_resume - ufshcd_pltfrm_runtime_idle - ufshcd_pltfrm_runtime_resume - ufshcd_pltfrm_runtime_suspend - ufshcd_pltfrm_suspend - ufshcd_read_desc_param - ufshcd_remove - ufshcd_shutdown - ufshcd_uic_hibern8_exit - unlock_page - unpin_user_pages - unregister_blkdev - __unregister_chrdev - unregister_chrdev_region - unregister_die_notifier - unregister_inet6addr_notifier - unregister_inetaddr_notifier - unregister_kprobe - unregister_module_notifier - unregister_netdev - unregister_netdevice_many - unregister_netdevice_notifier - unregister_netdevice_queue - unregister_oom_notifier - unregister_pernet_device - unregister_pernet_subsys - unregister_pm_notifier - unregister_reboot_notifier - unregister_rpmsg_driver - unregister_shrinker - unregister_virtio_device - unregister_virtio_driver - up - update_devfreq - update_rq_clock - up_read - up_write - usb_add_config - usb_add_function - usb_add_gadget_udc - usb_add_hcd - usb_composite_probe - usb_composite_unregister - usb_copy_descriptors - usb_create_hcd - usb_create_shared_hcd - usb_debug_root - usb_del_gadget_udc - usb_deregister - usb_disabled - usb_ep_alloc_request - usb_ep_autoconfig - usb_ep_dequeue - usb_ep_disable - usb_ep_enable - usb_ep_free_request - usb_ep_queue - usb_ep_set_halt - usb_ep_set_maxpacket_limit - usb_function_register - usb_function_unregister - usb_gadget_connect - usb_gadget_disconnect - usb_gadget_giveback_request - usb_gadget_map_request - usb_gadget_probe_driver - usb_gadget_set_selfpowered - usb_gadget_set_state - usb_gadget_unmap_request - usb_get_dr_mode - usb_get_function - usb_get_function_instance - usb_get_maximum_speed - usb_hcd_is_primary_hcd - usb_hcd_poll_rh_status - usb_interface_id - usbnet_change_mtu - usbnet_disconnect - usbnet_get_drvinfo - usbnet_get_endpoints - usbnet_get_link - usbnet_get_link_ksettings - usbnet_get_msglevel - usbnet_get_stats64 - usbnet_link_change - usbnet_nway_reset - usbnet_open - usbnet_probe - usbnet_read_cmd - usbnet_read_cmd_nopm - usbnet_resume - usbnet_set_link_ksettings - usbnet_set_msglevel - usbnet_skb_return - usbnet_start_xmit - usbnet_stop - usbnet_suspend - usbnet_tx_timeout - usbnet_unlink_rx_urbs - usbnet_update_max_qlen - usbnet_write_cmd - usbnet_write_cmd_async - usbnet_write_cmd_nopm - usb_put_function - usb_put_function_instance - usb_put_hcd - usb_register_driver - usb_remove_function - usb_remove_hcd - usb_role_switch_get - usb_role_switch_get_drvdata - usb_role_switch_register - usb_role_switch_set_role - usb_role_switch_unregister - usb_speed_string - usb_string_id - __usecs_to_jiffies - usleep_range - uuid_null - v4l2_async_notifier_add_fwnode_subdev - v4l2_async_notifier_init - v4l2_async_notifier_register - v4l2_async_notifier_unregister - v4l2_async_register_subdev - v4l2_async_unregister_subdev - v4l2_compat_ioctl32 - v4l2_ctrl_handler_free - v4l2_ctrl_handler_init_class - v4l2_ctrl_handler_setup - v4l2_ctrl_new_custom - v4l2_ctrl_new_std - v4l2_ctrl_new_std_menu - v4l2_ctrl_request_complete - __v4l2_ctrl_s_ctrl - v4l2_ctrl_subscribe_event - v4l2_device_register - v4l2_device_register_subdev - __v4l2_device_register_subdev_nodes - v4l2_device_unregister - v4l2_device_unregister_subdev - v4l2_event_queue - v4l2_event_queue_fh - v4l2_event_subdev_unsubscribe - v4l2_event_subscribe - v4l2_event_unsubscribe - v4l2_fh_add - v4l2_fh_del - v4l2_fh_exit - v4l2_fh_init - v4l2_fh_is_singular - v4l2_fh_open - v4l2_i2c_subdev_init - v4l2_m2m_buf_queue - v4l2_m2m_buf_remove - v4l2_m2m_ctx_init - v4l2_m2m_ctx_release - v4l2_m2m_dqbuf - v4l2_m2m_fop_mmap - v4l2_m2m_fop_poll - v4l2_m2m_get_curr_priv - v4l2_m2m_get_vq - v4l2_m2m_init - v4l2_m2m_ioctl_create_bufs - v4l2_m2m_ioctl_dqbuf - v4l2_m2m_ioctl_expbuf - v4l2_m2m_ioctl_prepare_buf - v4l2_m2m_ioctl_qbuf - v4l2_m2m_ioctl_querybuf - v4l2_m2m_ioctl_reqbufs - v4l2_m2m_ioctl_streamoff - v4l2_m2m_ioctl_streamon - v4l2_m2m_job_finish - v4l2_m2m_next_buf - v4l2_m2m_qbuf - v4l2_m2m_release - v4l2_m2m_resume - v4l2_m2m_streamoff - v4l2_m2m_suspend - v4l2_m2m_try_schedule - v4l2_src_change_event_subscribe - v4l2_subdev_call_wrappers - v4l2_subdev_init - v4l2_subdev_link_validate - v4l2_subdev_link_validate_default - v4l_bound_align_image - vabits_actual - vb2_buffer_done - vb2_common_vm_ops - vb2_create_framevec - vb2_destroy_framevec - vb2_dma_contig_memops - vb2_fop_mmap - vb2_fop_poll - vb2_fop_release - vb2_ioctl_create_bufs - vb2_ioctl_dqbuf - vb2_ioctl_expbuf - vb2_ioctl_prepare_buf - vb2_ioctl_qbuf - vb2_ioctl_querybuf - vb2_ioctl_reqbufs - vb2_ioctl_streamoff - vb2_ioctl_streamon - vb2_ops_wait_finish - vb2_ops_wait_prepare - vb2_plane_cookie - vb2_plane_vaddr - vb2_queue_init - vb2_queue_release - vb2_request_object_is_buffer - vb2_request_queue - vb2_request_validate - vchan_dma_desc_free_list - vchan_init - vchan_tx_desc_free - vchan_tx_submit - verify_pkcs7_signature - vfree - video_devdata - video_device_alloc - video_device_release - video_device_release_empty - video_ioctl2 - __video_register_device - video_unregister_device - virtqueue_add_inbuf - virtqueue_add_outbuf - virtqueue_detach_unused_buf - virtqueue_get_buf - virtqueue_get_vring_size - virtqueue_kick - virtqueue_kick_prepare - virtqueue_notify - vmalloc - vmalloc_to_page - vmalloc_to_pfn - vmalloc_user - vmap - vm_event_states - vm_map_ram - vm_node_stat - vm_unmap_ram - vm_zone_stat - vring_del_virtqueue - vring_interrupt - vring_new_virtqueue - vscnprintf - vsnprintf - vsprintf - vunmap - vzalloc - wait_for_completion - wait_for_completion_interruptible - wait_for_completion_interruptible_timeout - wait_for_completion_killable - wait_for_completion_timeout - wait_woken - __wake_up - __wake_up_locked - wake_up_process - wakeup_source_add - wakeup_source_create - wakeup_source_register - wakeup_source_remove - wakeup_source_unregister - __warn_printk - watchdog_init_timeout - watchdog_set_restart_priority - wireless_nlevent_flush - woken_wake_function - work_busy - work_on_cpu - ww_mutex_lock_interruptible - ww_mutex_unlock - xhci_add_endpoint - xhci_check_bandwidth - xhci_drop_endpoint - xhci_gen_setup - xhci_get_endpoint_index - xhci_get_ep_ctx - xhci_init_driver - xhci_reset_bandwidth - -# preserved by --additions-only - all_vm_events - __arch_clear_user - bio_add_pc_page - bio_reset - __bitmap_equal - __bitmap_or - blk_insert_cloned_request - blk_mq_sched_mark_restart_hctx - blk_rq_append_bio - cache_line_size - cgroup_taskset_first - cgroup_taskset_next - class_create_file_ns - class_remove_file_ns - clear_page - cpufreq_update_util_data - cpu_pm_register_notifier - cpu_pm_unregister_notifier - debug_locks_off - devfreq_add_device - devfreq_cooling_unregister - devfreq_register_opp_notifier - devfreq_unregister_opp_notifier - dev_get_by_name - devm_of_pwm_get - devm_pinctrl_put - devm_rc_allocate_device - devm_rc_register_device - dev_pm_domain_attach_by_id - dev_pm_opp_find_freq_exact - dev_pm_opp_put_regulators - dev_pm_opp_set_regulators - dma_buf_mmap - dma_fence_get_status - dma_fence_remove_callback - dma_sync_single_for_device - downgrade_write - down_read_trylock - drain_workqueue - fwnode_device_is_available - fwnode_get_name - fwnode_graph_get_next_endpoint - fwnode_graph_get_port_parent - fwnode_graph_get_remote_endpoint - fwnode_graph_get_remote_port_parent - fwnode_graph_parse_endpoint - fwnode_property_get_reference_args - fwnode_property_read_u64_array - get_user_pages_fast - gpiod_set_raw_value - hci_alloc_dev - hci_free_dev - hci_recv_frame - hci_register_dev - hci_unregister_dev - hex_dump_to_buffer - iomem_resource - irq_work_run - jiffies_64_to_clock_t - __kfifo_init - kobject_del - kset_find_obj - kstrtobool_from_user - ktime_get_raw - led_classdev_unregister - media_entity_remote_pad - __media_entity_setup_link - media_graph_walk_next - media_graph_walk_start - media_request_get_by_fd - media_request_object_complete - media_request_put - memdup_user - __mmdrop - module_put - netlink_kernel_release - nla_put_nohdr - n_tty_ioctl_helper - of_devfreq_cooling_register_power - of_root - param_ops_byte - param_ops_string - perf_num_counters - pin_user_pages_remote - platform_find_device_by_driver - put_task_stack - rb_prev - rb_replace_node - __release_region - __request_region - rpmsg_find_device - rproc_boot - rproc_get_by_phandle - rproc_put - rproc_report_crash - rproc_shutdown - __sbitmap_queue_get - schedutil_cpu_util - sdio_claim_host - sdio_claim_irq - sdio_disable_func - sdio_enable_func - sdio_f0_readb - sdio_f0_writeb - sdio_get_host_pm_caps - sdio_readb - sdio_readl - sdio_readsb - sdio_register_driver - sdio_release_host - sdio_release_irq - sdio_set_block_size - sdio_set_host_pm_flags - sdio_unregister_driver - sdio_writeb - sdio_writel - sdio_writesb - send_sig_info - shmem_file_setup - si_meminfo - skb_pull_rcsum - skb_realloc_headroom - smp_call_function - smp_call_function_single - snd_soc_component_test_bits - sprint_symbol_no_offset - strpbrk - strspn - syscore_resume - syscore_suspend - system_long_wq - thermal_zone_device_update - __traceiter_android_rvh_after_enqueue_task - __traceiter_android_rvh_sched_rebalance_domains - __traceiter_android_vh_cgroup_attach - __traceiter_android_vh_clear_mask_adjust - __traceiter_android_vh_clear_reserved_fmt_fields - __traceiter_android_vh_fill_ext_fmtdesc - __traceiter_android_vh_ipv6_gen_linklocal_addr - __traceiter_android_vh_is_fpsimd_save - __traceiter_android_vh_media_device_setup_link - __traceiter_android_vh_v4l2subdev_set_fmt - __traceiter_android_vh_v4l2subdev_set_frame_interval - __traceiter_android_vh_v4l2subdev_set_selection - __traceiter_gpu_mem_total - __traceiter_task_newtask - trace_output_call - __tracepoint_android_rvh_after_enqueue_task - __tracepoint_android_rvh_sched_rebalance_domains - __tracepoint_android_vh_cgroup_attach - __tracepoint_android_vh_clear_mask_adjust - __tracepoint_android_vh_clear_reserved_fmt_fields - __tracepoint_android_vh_fill_ext_fmtdesc - __tracepoint_android_vh_ipv6_gen_linklocal_addr - __tracepoint_android_vh_is_fpsimd_save - __tracepoint_android_vh_media_device_setup_link - __tracepoint_android_vh_ufs_update_sdev - __tracepoint_android_vh_v4l2subdev_set_fmt - __tracepoint_android_vh_v4l2subdev_set_frame_interval - __tracepoint_android_vh_v4l2subdev_set_selection - __tracepoint_gpu_mem_total - __tracepoint_task_newtask - trace_print_flags_seq - try_module_get - tty_driver_flush_buffer - tty_register_ldisc - tty_unregister_ldisc - ufshcd_pltfrm_shutdown - unmap_mapping_range - unpin_user_page - unregister_syscore_ops - v4l2_async_notifier_add_subdev - v4l2_async_notifier_cleanup - v4l2_async_subdev_notifier_register - v4l2_ctrl_find - v4l2_ctrl_g_ctrl - v4l2_ctrl_g_ctrl_int64 - __v4l2_ctrl_modify_range - v4l2_ctrl_new_std_menu_items - v4l2_ctrl_request_setup - v4l2_ctrl_subdev_subscribe_event - __v4l2_find_nearest_size - v4l2_format_info - v4l2_m2m_buf_copy_metadata - v4l2_m2m_buf_remove_by_buf - v4l2_m2m_register_media_controller - v4l2_m2m_request_queue - v4l2_m2m_unregister_media_controller - v4l2_pipeline_link_notify - vmf_insert_pfn_prot - wait_for_completion_killable_timeout - wireless_send_event - ww_mutex_lock - zlib_deflate - zlib_deflateEnd - zlib_deflateInit2 - zlib_deflateReset - zlib_deflate_workspacesize diff --git a/android/abi_gki_aarch64_oplus b/android/abi_gki_aarch64_oplus deleted file mode 100644 index a6fe4bb93126..000000000000 --- a/android/abi_gki_aarch64_oplus +++ /dev/null @@ -1,2023 +0,0 @@ -[abi_symbol_list] - activate_task - add_cpu - add_device_randomness - add_memory - add_memory_subsection - add_timer - add_uevent_var - add_wait_queue - alloc_anon_inode - alloc_chrdev_region - __alloc_disk_node - alloc_io_pgtable_ops - __alloc_pages_nodemask - __alloc_percpu - __alloc_skb - alloc_skb_with_frags - alloc_workqueue - amba_bustype - amba_driver_register - amba_driver_unregister - android_debug_per_cpu_symbol - android_debug_symbol - android_rvh_probe_register - anon_inode_getfile - __arch_copy_from_user - __arch_copy_in_user - __arch_copy_to_user - arch_timer_read_counter - argv_free - argv_split - arm64_const_caps_ready - arm64_use_ng_mappings - __arm_smccc_smc - atomic_notifier_call_chain - atomic_notifier_chain_register - atomic_notifier_chain_unregister - available_idle_cpu - bdget_disk - bdput - bio_endio - bitmap_allocate_region - __bitmap_andnot - __bitmap_clear - bitmap_find_next_zero_area_off - __bitmap_or - bitmap_parselist_user - bitmap_print_to_pagebuf - bitmap_release_region - __bitmap_set - blk_alloc_queue - blk_cleanup_queue - blk_execute_rq_nowait - blk_get_request - blk_mq_rq_cpu - blk_put_request - blk_queue_flag_clear - blk_queue_flag_set - blk_queue_io_min - blk_queue_io_opt - blk_queue_logical_block_size - blk_queue_max_discard_sectors - blk_queue_max_write_zeroes_sectors - blk_queue_physical_block_size - blk_rq_map_user - blk_rq_map_user_iov - blk_rq_unmap_user - blk_verify_command - blocking_notifier_call_chain - blocking_notifier_chain_register - blocking_notifier_chain_unregister - bpf_trace_run1 - bpf_trace_run10 - bpf_trace_run12 - bpf_trace_run2 - bpf_trace_run3 - bpf_trace_run4 - bpf_trace_run5 - bpf_trace_run6 - bpf_trace_run7 - bpf_trace_run8 - bpf_trace_run9 - bus_find_device - bus_for_each_dev - bus_register - bus_set_iommu - bus_unregister - cancel_delayed_work - cancel_delayed_work_sync - cancel_work_sync - capable - cdev_add - cdev_alloc - cdev_del - cdev_device_add - cdev_device_del - cdev_init - __cfi_slowpath - cgroup_path_ns - cgroup_taskset_first - cgroup_taskset_next - __check_object_size - check_preempt_curr - check_zeroed_user - __class_create - class_destroy - class_find_device - class_for_each_device - class_interface_unregister - __class_register - class_unregister - cleanup_srcu_struct - clear_page - __ClearPageMovable - clk_bulk_disable - clk_bulk_enable - clk_bulk_prepare - clk_bulk_put_all - clk_bulk_unprepare - __clk_determine_rate - clk_disable - clk_enable - clk_fixed_factor_ops - clk_fixed_rate_ops - clk_get - __clk_get_hw - __clk_get_name - clk_get_parent - clk_get_rate - clk_hw_get_flags - clk_hw_get_name - clk_hw_get_num_parents - clk_hw_get_parent - clk_hw_get_parent_by_index - clk_hw_get_rate - clk_hw_is_enabled - clk_hw_is_prepared - clk_hw_register - clk_hw_round_rate - clk_hw_unregister - __clk_is_enabled - __clk_mux_determine_rate_closest - clk_notifier_register - clk_notifier_unregister - clk_prepare - clk_put - clk_round_rate - clk_set_parent - clk_set_rate - clk_sync_state - clk_unprepare - cma_alloc - cma_get_name - cma_release - compat_alloc_user_space - compat_ptr_ioctl - complete - complete_all - completion_done - component_add - component_bind_all - component_del - component_master_add_with_match - component_master_del - component_match_add_release - component_unbind_all - config_ep_by_speed - configfs_register_subsystem - configfs_unregister_subsystem - config_group_init - config_group_init_type_name - config_item_get - config_item_put - console_stop - console_suspend_enabled - __const_udelay - consume_skb - contig_page_data - _copy_from_iter_full - __cpu_active_mask - cpu_bit_bitmap - cpufreq_cooling_unregister - cpufreq_cpu_get - cpufreq_cpu_get_raw - cpufreq_cpu_put - cpufreq_disable_fast_switch - cpufreq_driver_fast_switch - cpufreq_driver_resolve_freq - __cpufreq_driver_target - cpufreq_enable_fast_switch - cpufreq_freq_attr_scaling_available_freqs - cpufreq_freq_attr_scaling_boost_freqs - cpufreq_generic_frequency_table_verify - cpufreq_get_policy - cpufreq_register_driver - cpufreq_register_governor - cpufreq_register_notifier - cpufreq_unregister_driver - cpufreq_unregister_notifier - __cpuhp_remove_state - __cpuhp_setup_state - __cpuhp_setup_state_cpuslocked - __cpuhp_state_add_instance - __cpuhp_state_remove_instance - cpu_hwcap_keys - cpu_hwcaps - cpuidle_governor_latency_req - cpuidle_register_governor - cpu_irqtime - cpu_latency_qos_add_request - cpu_latency_qos_remove_request - cpu_latency_qos_request_active - cpu_latency_qos_update_request - cpu_maps_update_begin - cpu_maps_update_done - cpumask_next - cpumask_next_and - cpu_number - __cpu_online_mask - cpu_pm_register_notifier - cpu_pm_unregister_notifier - __cpu_possible_mask - __cpu_present_mask - cpupri_find_fitness - cpu_scale - cpus_read_lock - cpus_read_unlock - cpu_subsys - cpu_topology - crc32_le - crc8 - crc8_populate_msb - crypto_alloc_base - crypto_comp_compress - crypto_comp_decompress - crypto_destroy_tfm - crypto_has_alg - crypto_register_alg - crypto_register_rngs - crypto_register_scomp - crypto_unregister_alg - crypto_unregister_rngs - crypto_unregister_scomp - css_next_child - _ctype - datagram_poll - deactivate_task - debugfs_attr_read - debugfs_attr_write - debugfs_create_bool - debugfs_create_dir - debugfs_create_file - debugfs_create_file_unsafe - debugfs_create_u32 - debugfs_create_u8 - debugfs_create_x32 - debugfs_create_x8 - debugfs_file_get - debugfs_file_put - debugfs_lookup - debugfs_remove - dec_zone_page_state - default_llseek - deferred_free - delayed_work_timer_fn - del_gendisk - del_timer - del_timer_sync - desc_to_gpio - destroy_workqueue - dev_coredumpv - _dev_crit - dev_driver_string - _dev_err - devfreq_add_device - devfreq_add_governor - devfreq_cooling_unregister - devfreq_get_devfreq_by_node - devfreq_remove_device - devfreq_remove_governor - devfreq_resume_device - devfreq_suspend_device - dev_fwnode - dev_get_by_name - dev_get_regmap - device_add - device_add_disk - device_add_groups - device_create - device_create_file - device_del - device_destroy - device_find_child - device_for_each_child - device_get_match_data - device_initialize - device_init_wakeup - device_link_add - device_match_fwnode - device_match_name - device_property_present - device_property_read_string - device_property_read_u16_array - device_property_read_u32_array - device_register - device_remove_file - device_show_int - device_store_int - device_unregister - device_wakeup_disable - device_wakeup_enable - _dev_info - devm_add_action - devm_blk_ksm_init - devm_clk_bulk_get_all - devm_clk_get - devm_clk_hw_register - devm_clk_put - devm_clk_register - devm_device_add_group - devm_device_remove_group - devm_extcon_dev_allocate - devm_extcon_dev_register - devm_extcon_dev_unregister - devm_free_irq - devm_gpiod_get_optional - devm_gpio_free - devm_gpio_request - devm_gpio_request_one - devm_hwspin_lock_register - devm_iio_channel_get - devm_iio_device_alloc - __devm_iio_device_register - devm_input_allocate_device - devm_ioremap - devm_ioremap_resource - devm_ioremap_wc - devm_iounmap - devm_kasprintf - devm_kfree - devm_kmalloc - devm_kmemdup - devm_kstrdup - devm_led_classdev_register_ext - devm_nvmem_cell_get - devm_nvmem_device_get - devm_nvmem_register - devm_of_clk_add_hw_provider - devm_of_icc_get - __devm_of_phy_provider_register - devm_of_platform_populate - devm_of_pwm_get - devm_pci_alloc_host_bridge - devm_phy_create - devm_phy_get - devm_pinctrl_get - devm_pinctrl_put - devm_pinctrl_register - devm_platform_ioremap_resource - devm_platform_ioremap_resource_byname - devm_power_supply_register - devm_regmap_field_alloc - __devm_regmap_init - __devm_regmap_init_i2c - __devm_regmap_init_mmio_clk - devm_regulator_bulk_get - devm_regulator_get - devm_regulator_get_optional - devm_regulator_put - devm_regulator_register - devm_regulator_register_notifier - devm_request_any_context_irq - devm_request_threaded_irq - __devm_reset_control_get - devm_reset_controller_register - devm_rtc_allocate_device - devm_thermal_of_cooling_device_register - devm_thermal_zone_of_sensor_register - devm_usb_get_phy_by_node - _dev_notice - dev_pm_domain_attach - dev_pm_domain_attach_by_name - dev_pm_domain_detach - dev_pm_genpd_add_notifier - dev_pm_genpd_remove_notifier - dev_pm_genpd_set_next_wakeup - dev_pm_genpd_set_performance_state - dev_pm_opp_add - dev_pm_opp_find_freq_ceil - dev_pm_opp_find_freq_exact - dev_pm_opp_find_freq_floor - dev_pm_opp_get_opp_count - dev_pm_opp_get_voltage - dev_pm_opp_of_add_table - dev_pm_opp_of_find_icc_paths - dev_pm_opp_of_register_em - dev_pm_opp_of_remove_table - dev_pm_opp_put - dev_pm_opp_put_clkname - dev_pm_opp_remove_all_dynamic - dev_pm_opp_set_clkname - dev_pm_opp_set_rate - dev_pm_opp_set_sharing_cpus - dev_pm_qos_add_notifier - dev_pm_qos_add_request - dev_pm_qos_read_value - dev_pm_qos_remove_notifier - dev_pm_qos_remove_request - dev_pm_qos_update_request - devres_add - devres_alloc_node - devres_destroy - devres_free - devres_release - dev_set_name - _dev_warn - disable_irq - disable_irq_nosync - disable_percpu_irq - disk_end_io_acct - disk_start_io_acct - divider_get_val - divider_recalc_rate - divider_ro_round_rate_parent - divider_round_rate_parent - dma_alloc_attrs - dma_async_device_register - dma_async_device_unregister - dma_async_tx_descriptor_init - dma_buf_attach - dma_buf_begin_cpu_access - dma_buf_begin_cpu_access_partial - dma_buf_detach - dma_buf_end_cpu_access - dma_buf_end_cpu_access_partial - dma_buf_export - dma_buf_fd - dma_buf_get - dma_buf_map_attachment - dma_buf_put - dma_buf_unmap_attachment - dma_buf_vmap - dma_buf_vunmap - dma_contiguous_default_area - dma_fence_add_callback - dma_fence_array_create - dma_fence_array_ops - dma_fence_context_alloc - dma_fence_default_wait - dma_fence_enable_sw_signaling - dma_fence_free - dma_fence_get_status - dma_fence_init - dma_fence_release - dma_fence_remove_callback - dma_fence_signal - dma_fence_signal_locked - dma_fence_wait_timeout - dma_free_attrs - dma_get_sgtable_attrs - dma_get_slave_channel - dma_heap_add - dma_heap_buffer_alloc - dma_heap_find - dma_heap_get_dev - dma_heap_get_drvdata - dma_heap_get_name - dmam_alloc_attrs - dma_map_page_attrs - dma_map_resource - dma_map_sg_attrs - dmam_free_coherent - dma_release_channel - dma_request_chan - dma_set_coherent_mask - dma_set_mask - dma_sync_sg_for_cpu - dma_sync_sg_for_device - dma_sync_single_for_cpu - dma_sync_single_for_device - dma_unmap_page_attrs - dma_unmap_resource - dma_unmap_sg_attrs - do_exit - down_read - down_write - d_path - dput - drain_workqueue - driver_find_device - driver_register - driver_unregister - dump_stack - edac_device_add_device - edac_device_alloc_ctl_info - edac_device_alloc_index - edac_device_del_device - edac_device_free_ctl_info - edac_device_handle_ce_count - edac_device_handle_ue_count - enable_irq - enable_percpu_irq - eventfd_ctx_fdget - eventfd_ctx_fileget - eventfd_ctx_put - eventfd_ctx_remove_wait_queue - eventfd_signal - event_triggers_call - extcon_get_edev_by_phandle - extcon_get_edev_name - extcon_get_property - extcon_get_state - extcon_register_notifier - extcon_set_state_sync - failure_tracking - fasync_helper - __fdget - fd_install - fget - filp_close - filp_open_block - find_last_bit - find_next_bit - find_next_zero_bit - find_snd_usb_substream - find_task_by_vpid - find_vma - find_vpid - finish_wait - firmware_request_nowarn - flush_dcache_page - flush_delayed_work - flush_work - flush_workqueue - fput - free_io_pgtable_ops - free_irq - __free_pages - free_pages - free_percpu - free_percpu_irq - freq_qos_add_request - freq_qos_remove_request - freq_qos_update_request - freq_scale - fsync_bdev - fwnode_find_reference - fwnode_get_next_child_node - fwnode_handle_get - fwnode_handle_put - fwnode_property_present - fwnode_property_read_string - fwnode_property_read_u32_array - generic_device_group - generic_handle_irq - generic_iommu_put_resv_regions - genlmsg_put - genl_register_family - genl_unregister_family - gen_pool_add_owner - gen_pool_alloc_algo_owner - gen_pool_avail - gen_pool_best_fit - gen_pool_create - gen_pool_destroy - gen_pool_first_fit_order_align - gen_pool_free_owner - gen_pool_has_addr - gen_pool_set_algo - gen_pool_size - gen_pool_virt_to_phys - getboottime64 - get_cpu_device - get_device - get_each_dmabuf - get_each_object_track - __get_free_pages - get_governor_parent_kobj - get_option - get_page_owner_handle - get_pfnblock_flags_mask - get_pid_task - get_random_bytes - get_random_u32 - get_sg_io_hdr - get_slabinfo - __get_task_comm - get_task_mm - get_task_pid - get_unmapped_area - get_unused_fd_flags - get_user_pages - gic_nonsecure_priorities - gov_attr_set_init - gov_attr_set_put - governor_sysfs_ops - gpiochip_add_data_with_key - gpiochip_add_pin_range - gpiochip_generic_free - gpiochip_generic_request - gpiochip_get_data - gpiochip_line_is_valid - gpiochip_lock_as_irq - gpiochip_remove - gpiochip_unlock_as_irq - gpiod_direction_input - gpiod_direction_output - gpiod_direction_output_raw - gpiod_get_optional - gpiod_get_raw_value - gpiod_get_value - gpiod_set_raw_value - gpiod_set_value - gpiod_set_value_cansleep - gpiod_to_irq - gpio_free - gpio_request - gpio_to_desc - handle_bad_irq - handle_edge_irq - handle_fasteoi_ack_irq - handle_fasteoi_irq - handle_level_irq - handle_nested_irq - handle_simple_irq - handle_sysrq - hashlen_string - hex_dump_to_buffer - hrtimer_active - hrtimer_cancel - hrtimer_forward - __hrtimer_get_remaining - hrtimer_init - hrtimer_start_range_ns - hrtimer_try_to_cancel - hvc_alloc - hvc_kick - hvc_poll - hvc_remove - hwrng_register - hwrng_unregister - hwspin_lock_free - hwspin_lock_request_specific - __hwspin_lock_timeout - __hwspin_unlock - hypervisor_kobj - i2c_add_adapter - i2c_del_adapter - i2c_del_driver - i2c_get_dma_safe_msg_buf - i2c_put_dma_safe_msg_buf - i2c_register_driver - i2c_smbus_read_byte_data - i2c_smbus_read_i2c_block_data - i2c_smbus_read_word_data - i2c_smbus_write_byte_data - i2c_smbus_write_i2c_block_data - i2c_smbus_write_word_data - i2c_transfer - i2c_transfer_buffer_flags - icc_get - icc_link_create - icc_node_add - icc_node_create - icc_node_del - icc_node_destroy - icc_provider_add - icc_provider_del - icc_put - icc_set_bw - icc_set_tag - ida_alloc_range - ida_free - idr_alloc - idr_alloc_cyclic - idr_destroy - idr_find - idr_for_each - idr_get_next - idr_preload - idr_remove - idr_replace - iio_channel_get - iio_channel_get_all - iio_read_channel_processed - import_iovec - inc_node_page_state - inc_zone_page_state - in_egroup_p - init_iova_domain - init_net - init_pseudo - __init_rwsem - init_srcu_struct - __init_swait_queue_head - init_task - init_timer_key - init_uts_ns - init_wait_entry - __init_waitqueue_head - input_alloc_absinfo - input_allocate_device - input_close_device - input_event - input_ff_create - input_ff_destroy - input_free_device - input_mt_init_slots - input_mt_report_pointer_emulation - input_mt_report_slot_state - input_open_device - input_register_device - input_register_handle - input_register_handler - input_set_abs_params - input_set_capability - input_unregister_device - input_unregister_handle - input_unregister_handler - interval_tree_insert - interval_tree_iter_first - interval_tree_iter_next - interval_tree_remove - int_sqrt - iommu_alloc_resv_region - iommu_attach_device - iommu_detach_device - iommu_device_register - iommu_device_sysfs_add - iommu_device_sysfs_remove - iommu_device_unregister - iommu_dma_get_resv_regions - iommu_domain_alloc - iommu_domain_free - iommu_domain_get_attr - iommu_domain_set_attr - iommu_fwspec_add_ids - iommu_fwspec_free - iommu_get_dma_cookie - iommu_get_domain_for_dev - iommu_get_msi_cookie - iommu_group_for_each_dev - iommu_group_get - iommu_group_get_iommudata - iommu_group_put - iommu_group_ref_get - iommu_group_set_iommudata - iommu_iova_to_phys - iommu_map - iommu_map_sg - iommu_present - iommu_put_dma_cookie - iommu_set_fault_handler - iommu_unmap - __ioread32_copy - __ioremap - iounmap - __iowrite32_copy - ipi_desc_get - iput - irq_chip_ack_parent - irq_chip_disable_parent - irq_chip_enable_parent - irq_chip_eoi_parent - irq_chip_get_parent_state - irq_chip_mask_parent - irq_chip_retrigger_hierarchy - irq_chip_set_affinity_parent - irq_chip_set_parent_state - irq_chip_set_type_parent - irq_chip_set_vcpu_affinity_parent - irq_chip_set_wake_parent - irq_chip_unmask_parent - irq_create_fwspec_mapping - irq_dispose_mapping - __irq_domain_add - irq_domain_alloc_irqs_parent - irq_domain_create_hierarchy - irq_domain_free_irqs_common - irq_domain_free_irqs_parent - irq_domain_get_irq_data - irq_domain_remove - irq_domain_set_hwirq_and_chip - irq_domain_set_info - irq_domain_update_bus_token - irq_domain_xlate_twocell - irq_do_set_affinity - irq_find_mapping - irq_find_matching_fwspec - irq_get_irqchip_state - irq_get_irq_data - irq_modify_status - irq_of_parse_and_map - irq_set_affinity_hint - irq_set_affinity_notifier - irq_set_chained_handler_and_data - irq_set_chip_and_handler_name - irq_set_chip_data - irq_set_irqchip_state - irq_set_irq_type - irq_set_irq_wake - irq_set_parent - irq_to_desc - irq_work_queue - irq_work_queue_on - irq_work_sync - is_dma_buf_file - isolate_and_split_free_page - isolate_anon_lru_page - is_vmalloc_addr - jiffies - jiffies_to_msecs - jiffies_to_usecs - kasan_flag_enabled - kasprintf - kernel_bind - kernel_connect - kernel_getsockname - kernel_kobj - kernel_power_off - kernel_recvmsg - kernel_restart - kernel_sendmsg - kern_mount - kern_unmount - __kfifo_alloc - __kfifo_in - __kfifo_out - kfree - kfree_const - kfree_sensitive - kfree_skb - kill_anon_super - kill_fasync - kimage_vaddr - kimage_voffset - __kmalloc - kmalloc_caches - kmalloc_order_trace - kmem_cache_alloc - kmem_cache_alloc_trace - kmem_cache_create - kmem_cache_create_usercopy - kmem_cache_destroy - kmem_cache_free - kmemdup - kmemdup_nul - kobject_add - kobject_create_and_add - kobject_del - kobject_init - kobject_init_and_add - kobject_put - kobject_set_name - kobject_uevent - kobj_sysfs_ops - krealloc - kset_create_and_add - ksize - ksoftirqd - kstat - kstat_irqs_cpu - kstat_irqs_usr - kstrdup - kstrdup_const - kstrndup - kstrtobool - kstrtoint - kstrtoll - kstrtou16 - kstrtou16_from_user - kstrtou8 - kstrtou8_from_user - kstrtouint - kstrtouint_from_user - kstrtoul_from_user - kstrtoull - kstrtoull_from_user - kthread_bind_mask - kthread_cancel_work_sync - kthread_create_on_node - kthread_create_worker - kthread_destroy_worker - kthread_flush_worker - __kthread_init_worker - kthread_queue_work - kthread_should_stop - kthread_stop - kthread_worker_fn - ktime_get - ktime_get_mono_fast_ns - ktime_get_real_seconds - ktime_get_real_ts64 - kvfree - kvmalloc_node - led_classdev_flash_register_ext - led_classdev_flash_unregister - led_classdev_unregister - __list_add_valid - __list_del_entry_valid - list_sort - llist_add_batch - llist_reverse_order - __lock_page - lock_sock_nested - log_buf_addr_get - log_buf_len_get - __log_post_read_mmio - __log_read_mmio - __log_write_mmio - lookup_page_ext - lzo1x_1_compress - lzo1x_decompress_safe - lzorle1x_1_compress - match_string - mbox_chan_received_data - mbox_chan_txdone - mbox_client_txdone - mbox_controller_register - mbox_controller_unregister - mbox_free_channel - mbox_request_channel - mbox_send_message - memblock_end_of_DRAM - __memcat_p - memchr - memcpy - __memcpy_fromio - __memcpy_toio - memdup_user - memmove - memory_block_size_bytes - memory_read_from_buffer - memparse - mempool_alloc - mempool_alloc_slab - mempool_create - mempool_destroy - mempool_free - mempool_free_slab - memremap - memset - memset64 - __memset_io - memstart_addr - memunmap - migrate_pages - migrate_swap - misc_deregister - misc_register - mmc_cqe_request_done - mmc_of_parse - mmc_regulator_get_supply - mmc_regulator_set_ocr - mmc_regulator_set_vqmmc - mmc_send_tuning - mmput - mod_delayed_work_on - mod_node_page_state - mod_timer - __module_get - module_layout - module_put - __msecs_to_jiffies - msleep - msleep_interruptible - __mutex_init - mutex_is_locked - mutex_lock - mutex_lock_interruptible - mutex_trylock - mutex_unlock - netlink_broadcast - __netlink_kernel_create - netlink_kernel_release - netlink_unicast - nla_find - nla_put - nla_reserve - nla_reserve_64bit - __nla_validate - __nlmsg_put - no_llseek - nonseekable_open - noop_llseek - nr_cpu_ids - nr_ipi_get - nr_irqs - ns_to_timespec64 - __num_online_cpus - nvmem_cell_get - nvmem_cell_put - nvmem_cell_read - nvmem_cell_read_u32 - nvmem_cell_write - nvmem_device_read - nvmem_device_write - of_address_to_resource - of_alias_get_id - of_clk_add_hw_provider - of_clk_add_provider - of_clk_del_provider - of_clk_hw_simple_get - of_clk_src_simple_get - of_count_phandle_with_args - of_cpufreq_cooling_register - of_cpu_node_to_id - of_devfreq_cooling_register - of_device_get_match_data - of_device_is_available - of_device_is_compatible - of_dma_configure_id - of_dma_controller_free - of_dma_controller_register - of_dma_is_coherent - of_drm_find_panel - of_find_compatible_node - of_find_device_by_node - of_find_i2c_device_by_node - of_find_matching_node_and_match - of_find_node_by_name - of_find_node_by_phandle - of_find_node_opts_by_path - of_find_node_with_property - of_find_property - of_fwnode_ops - of_genpd_add_provider_onecell - of_genpd_del_provider - of_get_address - of_get_child_by_name - of_get_cpu_node - of_get_named_gpio_flags - of_get_next_available_child - of_get_next_child - of_get_next_parent - of_get_property - of_get_regulator_init_data - of_graph_get_next_endpoint - of_graph_get_port_parent - of_graph_get_remote_endpoint - of_graph_is_present - of_graph_parse_endpoint - of_hwspin_lock_get_id - of_icc_get - of_icc_xlate_onecell - of_iomap - of_irq_find_parent - of_irq_get - of_irq_get_byname - of_irq_parse_one - of_match_device - of_match_node - of_n_addr_cells - of_node_name_eq - of_n_size_cells - of_parse_phandle - of_parse_phandle_with_args - of_parse_phandle_with_fixed_args - of_phandle_iterator_init - of_phandle_iterator_next - of_phy_simple_xlate - of_platform_depopulate - of_platform_device_create - of_platform_device_destroy - of_platform_populate - of_property_count_elems_of_size - of_property_match_string - of_property_read_string - of_property_read_string_helper - of_property_read_u32_index - of_property_read_u64_index - of_property_read_variable_u32_array - of_property_read_variable_u8_array - of_prop_next_string - of_prop_next_u32 - of_reserved_mem_device_init_by_idx - of_reserved_mem_device_release - of_reserved_mem_lookup - of_root - of_thermal_get_ntrips - of_thermal_get_trip_points - of_thermal_is_trip_valid - of_translate_address - on_each_cpu - oops_in_progress - overflowuid - page_endio - page_mapping - __page_pinner_migration_failed - panic - panic_notifier_list - panic_timeout - param_get_int - param_ops_bool - param_ops_int - param_ops_string - param_ops_uint - param_set_bool - pause_cpus - pci_alloc_irq_vectors_affinity - pci_assign_resource - pci_bus_type - pci_clear_master - pci_device_group - pci_dev_present - pci_disable_device - pcie_capability_read_word - pci_enable_device - pci_find_ext_capability - pci_free_irq_vectors - pci_get_device - pci_host_probe - pci_iomap - pci_irq_vector - pci_load_and_free_saved_state - pci_load_saved_state - pci_msi_create_irq_domain - pci_msi_mask_irq - pci_msi_unmask_irq - pci_read_config_dword - pci_read_config_word - __pci_register_driver - pci_release_region - pci_request_region - pci_restore_state - pci_save_state - pci_set_master - pci_set_power_state - pci_store_saved_state - pci_unregister_driver - pci_walk_bus - pci_write_config_dword - pcpu_nr_pages - PDE_DATA - __per_cpu_offset - per_cpu_ptr_to_phys - perf_aux_output_begin - perf_aux_output_end - perf_aux_output_flag - perf_event_create_kernel_counter - perf_event_enable - perf_event_read_local - perf_event_read_value - perf_event_release_kernel - perf_get_aux - perf_pmu_register - perf_pmu_unregister - perf_trace_buf_alloc - perf_trace_run_bpf_submit - pfn_valid - phy_calibrate - phy_exit - phy_init - phy_power_off - phy_power_on - phy_set_mode_ext - pick_highest_pushable_task - pid_nr_ns - pid_task - pinconf_generic_dt_node_to_map - pinctrl_dev_get_drvdata - pinctrl_force_default - pinctrl_force_sleep - pinctrl_lookup_state - pinctrl_pm_select_default_state - pinctrl_pm_select_sleep_state - pinctrl_select_state - pinctrl_utils_free_map - platform_bus_type - platform_device_add - platform_device_alloc - platform_device_del - platform_device_put - platform_device_register - platform_device_register_full - platform_device_unregister - __platform_driver_register - platform_driver_unregister - platform_get_irq - platform_get_irq_byname - platform_get_resource - platform_get_resource_byname - platform_irq_count - pm_clk_add - pm_clk_create - pm_clk_destroy - pm_clk_resume - pm_clk_suspend - pm_genpd_add_subdomain - pm_genpd_init - pm_genpd_remove - pm_genpd_remove_subdomain - pm_power_off - __pm_relax - pm_relax - pm_runtime_allow - pm_runtime_barrier - __pm_runtime_disable - pm_runtime_enable - pm_runtime_forbid - pm_runtime_force_resume - pm_runtime_force_suspend - __pm_runtime_idle - pm_runtime_irq_safe - pm_runtime_no_callbacks - __pm_runtime_resume - pm_runtime_set_autosuspend_delay - __pm_runtime_set_status - __pm_runtime_suspend - __pm_runtime_use_autosuspend - __pm_stay_awake - pm_stay_awake - pm_system_wakeup - pm_wakeup_dev_event - pm_wakeup_ws_event - power_supply_changed - power_supply_get_by_name - power_supply_get_drvdata - power_supply_get_property - power_supply_put - power_supply_reg_notifier - power_supply_set_property - power_supply_unregister - power_supply_unreg_notifier - prandom_u32 - preempt_schedule - preempt_schedule_notrace - prepare_to_wait_event - print_hex_dump - printk - printk_deferred - proc_create - proc_create_data - proc_dointvec - proc_dointvec_minmax - proc_dostring - proc_douintvec_minmax - proc_mkdir - proc_remove - proto_register - proto_unregister - __pskb_pull_tail - putback_movable_pages - put_device - put_disk - put_iova_domain - __put_page - put_pid - put_sg_io_hdr - __put_task_struct - put_unused_fd - pwm_apply_state - pwmchip_add - pwmchip_remove - qcom_smem_state_get - qcom_smem_state_register - qcom_smem_state_unregister - qcom_smem_state_update_bits - queue_delayed_work_on - queue_work_on - radix_tree_insert - radix_tree_iter_delete - radix_tree_lookup - radix_tree_next_chunk - ___ratelimit - rational_best_approximation - raw_notifier_call_chain - raw_notifier_chain_register - raw_notifier_chain_unregister - _raw_read_lock - _raw_read_lock_bh - _raw_read_lock_irq - _raw_read_lock_irqsave - _raw_read_unlock - _raw_read_unlock_bh - _raw_read_unlock_irq - _raw_read_unlock_irqrestore - _raw_spin_lock - _raw_spin_lock_bh - _raw_spin_lock_irq - _raw_spin_lock_irqsave - _raw_spin_trylock - _raw_spin_trylock_bh - _raw_spin_unlock - _raw_spin_unlock_bh - _raw_spin_unlock_irq - _raw_spin_unlock_irqrestore - _raw_write_lock - _raw_write_lock_bh - _raw_write_lock_irq - _raw_write_lock_irqsave - _raw_write_unlock - _raw_write_unlock_bh - _raw_write_unlock_irq - _raw_write_unlock_irqrestore - rb_erase - rb_first - rb_insert_color - rb_last - rb_next - rb_prev - __rcu_read_lock - __rcu_read_unlock - rdev_get_drvdata - reboot_mode - refcount_dec_and_lock - refcount_dec_not_one - refcount_warn_saturate - register_blkdev - __register_chrdev - register_chrdev_region - register_console - register_die_notifier - register_ftrace_export - register_kretprobe - register_memory_notifier - register_module_notifier - register_pm_notifier - register_reboot_notifier - register_restart_handler - __register_rpmsg_driver - register_shrinker - register_syscore_ops - register_sysctl_table - regmap_bulk_read - regmap_bulk_write - regmap_check_range_table - regmap_field_read - regmap_field_update_bits_base - __regmap_init - regmap_mmio_detach_clk - regmap_read - regmap_update_bits_base - regmap_write - regulator_allow_bypass - regulator_bulk_disable - regulator_count_voltages - regulator_disable - regulator_enable - regulator_force_disable - regulator_get - regulator_get_drvdata - regulator_get_mode - regulator_get_voltage - regulator_get_voltage_rdev - regulator_is_enabled - regulator_is_supported_voltage - regulator_list_voltage_linear - regulator_notifier_call_chain - regulator_put - regulator_register_notifier - regulator_set_current_limit - regulator_set_load - regulator_set_mode - regulator_set_voltage - regulator_unregister_notifier - release_firmware - release_sock - remap_pfn_range - remove_cpu - remove_memory_subsection - remove_proc_entry - remove_proc_subtree - report_iommu_fault - request_any_context_irq - request_firmware - request_firmware_into_buf - request_firmware_nowait - __request_module - __request_percpu_irq - request_threaded_irq - resched_curr - reset_control_assert - reset_control_deassert - resume_cpus - revalidate_disk_size - rfkill_alloc - rfkill_destroy - rfkill_init_sw_state - rfkill_register - rfkill_unregister - rndis_deregister - rndis_free_response - rndis_get_next_response - rndis_msg_parser - rndis_register - rndis_set_host_mac - rndis_set_param_dev - rndis_set_param_medium - rndis_set_param_vendor - rndis_signal_connect - rndis_uninit - root_task_group - round_jiffies_relative - rpmsg_get_signals - rpmsg_poll - rpmsg_register_device - rpmsg_send - rpmsg_set_signals - rpmsg_trysend - rpmsg_unregister_device - rproc_add - rproc_add_subdev - rproc_alloc - rproc_boot - rproc_coredump_add_custom_segment - rproc_coredump_add_segment - rproc_coredump_set_elf_info - rproc_coredump_using_sections - rproc_del - rproc_free - rproc_get_by_child - rproc_get_by_phandle - rproc_put - rproc_remove_subdev - rproc_report_crash - rproc_shutdown - rtc_class_close - rtc_class_open - rtc_read_time - __rtc_register_device - rtc_time64_to_tm - rtc_tm_to_time64 - rtc_update_irq - rtc_valid_tm - runqueues - sched_clock - sched_feat_keys - sched_feat_names - sched_set_fifo - sched_set_normal - sched_setscheduler - sched_setscheduler_nocheck - sched_trace_rd_span - sched_uclamp_used - schedule - schedule_timeout - schedule_timeout_interruptible - scnprintf - scsi_autopm_get_device - scsi_autopm_put_device - scsi_block_when_processing_errors - scsi_command_size_tbl - scsi_compat_ioctl - scsi_device_get - scsi_device_put - scsi_device_quiesce - scsi_ioctl - scsi_ioctl_block_when_processing_errors - __scsi_iterate_devices - scsi_normalize_sense - __scsi_print_sense - scsi_register_interface - scsi_remove_device - sdev_prefix_printk - __sdhci_add_host - sdhci_add_host - sdhci_cleanup_host - sdhci_cqe_disable - sdhci_cqe_enable - sdhci_cqe_irq - sdhci_enable_clk - sdhci_get_property - sdhci_pltfm_free - sdhci_pltfm_init - sdhci_remove_host - sdhci_reset - sdhci_set_bus_width - sdhci_set_power_noreg - sdhci_setup_host - seq_buf_printf - seq_lseek - seq_open - seq_printf - seq_putc - seq_puts - seq_read - seq_release - seq_write - set_cpus_allowed_ptr - set_normalized_timespec64 - set_page_dirty_lock - __SetPageMovable - set_task_cpu - set_user_nice - sg_alloc_table - sg_alloc_table_from_pages - sg_free_table - sg_init_one - sg_init_table - sg_miter_next - sg_miter_start - sg_miter_stop - sg_next - __sg_page_iter_dma_next - __sg_page_iter_next - __sg_page_iter_start - sg_scsi_ioctl - show_regs - sigprocmask - si_mem_available - si_meminfo - simple_attr_open - simple_attr_release - simple_open - simple_read_from_buffer - simple_strtoul - simple_write_to_buffer - single_open - single_release - si_swapinfo - sk_alloc - skb_clone - skb_copy_bits - skb_copy_datagram_iter - skb_dequeue - skb_free_datagram - __skb_pad - skb_push - skb_put - skb_queue_purge - skb_queue_tail - skb_recv_datagram - skb_set_owner_w - skb_store_bits - skb_trim - sk_free - skip_spaces - smp_call_function_single - snd_pcm_format_width - snd_soc_add_component_controls - snd_soc_info_volsw - snd_soc_register_component - snd_soc_unregister_component - snd_usb_enable_audio_stream - snprintf - soc_device_register - soc_device_unregister - sock_alloc_send_skb - sock_create_kern - sock_gettstamp - sock_init_data - sock_no_accept - sock_no_listen - sock_no_mmap - sock_no_sendpage - sock_no_shutdown - sock_no_socketpair - sock_queue_rcv_skb - sock_register - sock_release - sock_setsockopt - sock_unregister - sort - __spi_alloc_controller - spi_register_controller - __spi_register_driver - spi_setup - spi_sync - spi_unregister_controller - spmi_controller_add - spmi_controller_alloc - spmi_controller_remove - __spmi_driver_register - spmi_ext_register_read - spmi_ext_register_readl - spmi_ext_register_write - spmi_ext_register_writel - spmi_register_read - spmi_register_write - spmi_register_zero_write - sprintf - srcu_init_notifier_head - srcu_notifier_call_chain - srcu_notifier_chain_register - srcu_notifier_chain_unregister - __srcu_read_lock - __srcu_read_unlock - sscanf - __stack_chk_fail - __stack_chk_guard - stack_depot_fetch - static_key_disable - stop_machine - stop_one_cpu_nowait - stpcpy - strcasecmp - strcat - strchr - strcmp - strcpy - strim - strlcat - strlcpy - strlen - strncasecmp - strnchr - strncmp - strncpy - strncpy_from_user - strnlen - strnstr - strpbrk - strrchr - strscpy - strsep - strstr - __sw_hweight32 - __sw_hweight64 - __sw_hweight8 - sync_file_create - sync_file_get_fence - synchronize_irq - synchronize_rcu - synchronize_srcu - syscon_node_to_regmap - syscon_regmap_lookup_by_phandle - sysctl_sched_features - sysctl_vals - sysfs_add_file_to_group - sysfs_add_link_to_group - sysfs_create_bin_file - sysfs_create_file_ns - sysfs_create_files - sysfs_create_group - sysfs_create_link - sysfs_emit - __sysfs_match_string - sysfs_notify - sysfs_remove_bin_file - sysfs_remove_file_from_group - sysfs_remove_file_ns - sysfs_remove_files - sysfs_remove_group - sysfs_remove_link - sysfs_remove_link_from_group - sysfs_streq - sysrq_mask - system_freezable_wq - system_highpri_wq - system_power_efficient_wq - system_unbound_wq - system_wq - task_active_pid_ns - __tasklet_hi_schedule - tasklet_init - tasklet_kill - __tasklet_schedule - tasklet_setup - tasklist_lock - task_may_not_preempt - __task_pid_nr_ns - __task_rq_lock - thermal_cooling_device_register - thermal_cooling_device_unregister - thermal_of_cooling_device_register - thermal_pressure - thermal_zone_device_enable - thermal_zone_device_register - thermal_zone_device_unregister - thermal_zone_device_update - thermal_zone_get_slope - thermal_zone_get_temp - thermal_zone_get_zone_by_name - thermal_zone_of_sensor_register - thermal_zone_of_sensor_unregister - tick_nohz_get_sleep_length - time64_to_tm - topology_set_thermal_pressure - topology_update_done - total_swapcache_pages - trace_array_get_by_name - trace_array_put - trace_array_set_clr_event - trace_event_buffer_commit - trace_event_buffer_reserve - trace_event_ignore_this_pid - trace_event_raw_init - trace_event_reg - trace_handle_return - __traceiter_android_rvh_account_irq - __traceiter_android_rvh_build_perf_domains - __traceiter_android_rvh_can_migrate_task - __traceiter_android_rvh_check_preempt_wakeup - __traceiter_android_rvh_cpu_cgroup_attach - __traceiter_android_rvh_cpu_cgroup_online - __traceiter_android_rvh_dequeue_task - __traceiter_android_rvh_enqueue_task - __traceiter_android_rvh_find_busiest_queue - __traceiter_android_rvh_find_lowest_rq - __traceiter_android_rvh_flush_task - __traceiter_android_rvh_force_compatible_post - __traceiter_android_rvh_force_compatible_pre - __traceiter_android_rvh_gic_v3_set_affinity - __traceiter_android_rvh_migrate_queued_task - __traceiter_android_rvh_new_task_stats - __traceiter_android_rvh_replace_next_task_fair - __traceiter_android_rvh_resume_cpus - __traceiter_android_rvh_sched_cpu_dying - __traceiter_android_rvh_sched_cpu_starting - __traceiter_android_rvh_sched_exec - __traceiter_android_rvh_sched_fork - __traceiter_android_rvh_sched_fork_init - __traceiter_android_rvh_sched_newidle_balance - __traceiter_android_rvh_sched_nohz_balancer_kick - __traceiter_android_rvh_sched_setaffinity - __traceiter_android_rvh_schedule - __traceiter_android_rvh_select_task_rq_fair - __traceiter_android_rvh_select_task_rq_rt - __traceiter_android_rvh_set_gfp_zone_flags - __traceiter_android_rvh_set_readahead_gfp_mask - __traceiter_android_rvh_set_skip_swapcache_flags - __traceiter_android_rvh_set_task_cpu - __traceiter_android_rvh_tick_entry - __traceiter_android_rvh_try_to_wake_up - __traceiter_android_rvh_try_to_wake_up_success - __traceiter_android_rvh_ttwu_cond - __traceiter_android_rvh_update_cpu_capacity - __traceiter_android_rvh_update_cpus_allowed - __traceiter_android_rvh_update_misfit_status - __traceiter_android_rvh_wake_up_new_task - __traceiter_android_vh_allow_domain_state - __traceiter_android_vh_binder_restore_priority - __traceiter_android_vh_binder_set_priority - __traceiter_android_vh_binder_wakeup_ilocked - __traceiter_android_vh_cpu_idle_enter - __traceiter_android_vh_cpu_idle_exit - __traceiter_android_vh_ftrace_dump_buffer - __traceiter_android_vh_ftrace_format_check - __traceiter_android_vh_ftrace_oops_enter - __traceiter_android_vh_ftrace_oops_exit - __traceiter_android_vh_ftrace_size_check - __traceiter_android_vh_gpio_block_read - __traceiter_android_vh_iommu_setup_dma_ops - __traceiter_android_vh_ipi_stop - __traceiter_android_vh_jiffies_update - __traceiter_android_vh_logbuf - __traceiter_android_vh_printk_hotplug - __traceiter_android_vh_scheduler_tick - __traceiter_android_vh_show_max_freq - __traceiter_android_vh_show_resume_epoch_val - __traceiter_android_vh_show_suspend_epoch_val - __traceiter_android_vh_timer_calc_index - __traceiter_android_vh_update_topology_flags_workfn - __traceiter_binder_transaction_received - __traceiter_cpu_frequency_limits - __traceiter_gpu_mem_total - __traceiter_ipi_entry - __traceiter_ipi_raise - __traceiter_irq_handler_entry - __traceiter_rwmmio_post_read - __traceiter_rwmmio_read - __traceiter_rwmmio_write - __traceiter_sched_overutilized_tp - __traceiter_sched_switch - __traceiter_suspend_resume - __tracepoint_android_rvh_account_irq - __tracepoint_android_rvh_build_perf_domains - __tracepoint_android_rvh_can_migrate_task - __tracepoint_android_rvh_check_preempt_wakeup - __tracepoint_android_rvh_cpu_cgroup_attach - __tracepoint_android_rvh_cpu_cgroup_online - __tracepoint_android_rvh_dequeue_task - __tracepoint_android_rvh_enqueue_task - __tracepoint_android_rvh_find_busiest_queue - __tracepoint_android_rvh_find_lowest_rq - __tracepoint_android_rvh_flush_task - __tracepoint_android_rvh_force_compatible_post - __tracepoint_android_rvh_force_compatible_pre - __tracepoint_android_rvh_gic_v3_set_affinity - __tracepoint_android_rvh_migrate_queued_task - __tracepoint_android_rvh_new_task_stats - __tracepoint_android_rvh_replace_next_task_fair - __tracepoint_android_rvh_resume_cpus - __tracepoint_android_rvh_sched_cpu_dying - __tracepoint_android_rvh_sched_cpu_starting - __tracepoint_android_rvh_sched_exec - __tracepoint_android_rvh_sched_fork - __tracepoint_android_rvh_sched_fork_init - __tracepoint_android_rvh_sched_newidle_balance - __tracepoint_android_rvh_sched_nohz_balancer_kick - __tracepoint_android_rvh_sched_setaffinity - __tracepoint_android_rvh_schedule - __tracepoint_android_rvh_select_task_rq_fair - __tracepoint_android_rvh_select_task_rq_rt - __tracepoint_android_rvh_set_gfp_zone_flags - __tracepoint_android_rvh_set_readahead_gfp_mask - __tracepoint_android_rvh_set_skip_swapcache_flags - __tracepoint_android_rvh_set_task_cpu - __tracepoint_android_rvh_tick_entry - __tracepoint_android_rvh_try_to_wake_up - __tracepoint_android_rvh_try_to_wake_up_success - __tracepoint_android_rvh_ttwu_cond - __tracepoint_android_rvh_update_cpu_capacity - __tracepoint_android_rvh_update_cpus_allowed - __tracepoint_android_rvh_update_misfit_status - __tracepoint_android_rvh_wake_up_new_task - __tracepoint_android_vh_allow_domain_state - __tracepoint_android_vh_binder_restore_priority - __tracepoint_android_vh_binder_set_priority - __tracepoint_android_vh_binder_wakeup_ilocked - __tracepoint_android_vh_check_uninterruptible_tasks - __tracepoint_android_vh_check_uninterruptible_tasks_dn - __tracepoint_android_vh_cpu_idle_enter - __tracepoint_android_vh_cpu_idle_exit - __tracepoint_android_vh_ftrace_dump_buffer - __tracepoint_android_vh_ftrace_format_check - __tracepoint_android_vh_ftrace_oops_enter - __tracepoint_android_vh_ftrace_oops_exit - __tracepoint_android_vh_ftrace_size_check - __tracepoint_android_vh_gpio_block_read - __tracepoint_android_vh_iommu_setup_dma_ops - __tracepoint_android_vh_ipi_stop - __tracepoint_android_vh_jiffies_update - __tracepoint_android_vh_logbuf - __tracepoint_android_vh_printk_hotplug - __tracepoint_android_vh_scheduler_tick - __tracepoint_android_vh_show_max_freq - __tracepoint_android_vh_show_resume_epoch_val - __tracepoint_android_vh_show_suspend_epoch_val - __tracepoint_android_vh_timer_calc_index - __tracepoint_android_vh_update_topology_flags_workfn - __tracepoint_binder_transaction_received - __tracepoint_cpu_frequency_limits - __tracepoint_gpu_mem_total - __tracepoint_ipi_entry - __tracepoint_ipi_raise - __tracepoint_irq_handler_entry - tracepoint_probe_register - tracepoint_probe_register_prio - tracepoint_probe_unregister - __tracepoint_rwmmio_post_read - __tracepoint_rwmmio_read - __tracepoint_rwmmio_write - __tracepoint_sched_overutilized_tp - __tracepoint_sched_switch - __tracepoint_suspend_resume - trace_print_array_seq - trace_print_flags_seq - trace_print_symbols_seq - trace_raw_output_prep - trace_seq_printf - trace_seq_putc - try_module_get - try_wait_for_completion - tty_flip_buffer_push - __tty_insert_flip_char - tty_insert_flip_string_fixed_flag - uart_add_one_port - uart_console_device - uart_console_write - uart_get_baud_rate - uart_insert_char - uart_parse_options - uart_register_driver - uart_remove_one_port - uart_resume_port - uart_set_options - uart_suspend_port - uart_try_toggle_sysrq - uart_unregister_driver - uart_update_timeout - uart_write_wakeup - uclamp_eff_value - ucsi_connector_change - ucsi_create - ucsi_destroy - ucsi_get_drvdata - ucsi_register - ucsi_set_drvdata - ucsi_unregister - __udelay - ufshcd_auto_hibern8_update - ufshcd_dme_get_attr - ufshcd_dme_set_attr - ufshcd_dump_regs - ufshcd_fixup_dev_quirks - ufshcd_get_local_unipro_ver - ufshcd_hold - ufshcd_pltfrm_init - ufshcd_pltfrm_resume - ufshcd_pltfrm_runtime_idle - ufshcd_pltfrm_runtime_resume - ufshcd_pltfrm_runtime_suspend - ufshcd_pltfrm_suspend - ufshcd_query_attr - ufshcd_query_descriptor_retry - ufshcd_query_flag - ufshcd_release - ufshcd_remove - ufshcd_shutdown - ufshcd_uic_hibern8_enter - ufshcd_uic_hibern8_exit - __uio_register_device - uio_unregister_device - unlock_page - unregister_blkdev - __unregister_chrdev - unregister_chrdev_region - unregister_console - unregister_die_notifier - unregister_ftrace_export - unregister_kretprobe - unregister_module_notifier - unregister_pm_notifier - unregister_reboot_notifier - unregister_restart_handler - unregister_rpmsg_driver - unregister_shrinker - unregister_syscore_ops - unregister_sysctl_table - update_devfreq - update_rq_clock - up_read - up_write - usb_add_phy_dev - usb_alloc_coherent - usb_alloc_dev - usb_alloc_urb - usb_assign_descriptors - usb_composite_setup_continue - usb_control_msg - usb_deregister - usb_ep_alloc_request - usb_ep_autoconfig - usb_ep_dequeue - usb_ep_disable - usb_ep_enable - usb_ep_free_request - usb_ep_queue - usb_ep_set_halt - usb_find_common_endpoints - usb_free_all_descriptors - usb_free_coherent - usb_free_urb - usb_function_register - usb_function_unregister - usb_gadget_wakeup - usb_ifnum_to_if - usb_interface_id - usb_phy_set_charger_current - usb_poison_urb - usb_put_dev - usb_put_function_instance - usb_register_driver - usb_register_notify - usb_remove_phy - usb_role_switch_find_by_fwnode - usb_role_switch_get_drvdata - usb_role_switch_register - usb_role_switch_set_role - usb_role_switch_unregister - usb_set_device_state - usb_speed_string - usb_string_id - usb_submit_urb - usb_unregister_notify - __usecs_to_jiffies - usleep_range - v4l2_compat_ioctl32 - v4l2_ctrl_handler_free - v4l2_device_register - v4l2_device_unregister - vabits_actual - vchan_dma_desc_free_list - vchan_find_desc - vchan_init - vchan_tx_desc_free - vchan_tx_submit - vfree - vfs_fsync - video_devdata - video_device_release_empty - video_ioctl2 - __video_register_device - video_unregister_device - vmalloc - vmalloc_nr_pages - vmalloc_to_page - vmalloc_to_pfn - vmap - vmf_insert_pfn - vm_insert_page - vm_iomap_memory - vm_map_pages - vm_node_stat - vm_zone_stat - vscnprintf - vsnprintf - vunmap - vzalloc - wait_for_completion - wait_for_completion_interruptible - wait_for_completion_interruptible_timeout - wait_for_completion_killable - wait_for_completion_killable_timeout - wait_for_completion_timeout - __wake_up - wake_up_if_idle - wake_up_process - wakeup_source_add - wakeup_source_register - wakeup_source_remove - wakeup_source_unregister - __warn_printk - ww_mutex_lock - ww_mutex_unlock - __xa_alloc - xa_destroy - xa_erase - xa_find - xa_find_after - xa_load - xa_store - xhci_alloc_command - xhci_alloc_erst - xhci_free_command - xhci_get_endpoint_index - xhci_queue_stop_endpoint - xhci_ring_alloc - xhci_ring_cmd_db - xhci_ring_free - xhci_trb_virt_to_dma diff --git a/android/abi_gki_aarch64_qcom b/android/abi_gki_aarch64_qcom deleted file mode 100644 index 8ca81bf4b4b3..000000000000 --- a/android/abi_gki_aarch64_qcom +++ /dev/null @@ -1,3000 +0,0 @@ -[abi_symbol_list] - access_process_vm - activate_task - add_cpu - add_device_randomness - add_memory - add_memory_subsection - add_taint - add_timer - add_timer_on - add_uevent_var - add_wait_queue - adjust_managed_page_count - aes_encrypt - aes_expandkey - alarm_cancel - alarm_init - alarm_start_relative - alloc_anon_inode - alloc_chrdev_region - __alloc_disk_node - alloc_etherdev_mqs - alloc_io_pgtable_ops - alloc_netdev_mqs - __alloc_pages_nodemask - __alloc_percpu - __alloc_percpu_gfp - __alloc_skb - alloc_skb_with_frags - alloc_workqueue - amba_bustype - amba_driver_register - amba_driver_unregister - android_debug_for_each_module - android_debug_per_cpu_symbol - android_debug_symbol - android_rvh_probe_register - anon_inode_getfile - arc4_crypt - arc4_setkey - __arch_clear_user - __arch_copy_from_user - __arch_copy_in_user - __arch_copy_to_user - arch_timer_read_counter - argv_free - argv_split - arm64_const_caps_ready - arm64_use_ng_mappings - __arm_smccc_smc - arp_tbl - atomic_notifier_call_chain - atomic_notifier_chain_register - atomic_notifier_chain_unregister - autoremove_wake_function - available_idle_cpu - backlight_device_get_by_type - backlight_device_register - backlight_device_set_brightness - backlight_device_unregister - bcmp - bdget_disk - bdput - bio_endio - bitmap_allocate_region - __bitmap_andnot - __bitmap_clear - bitmap_find_next_zero_area_off - __bitmap_or - bitmap_parselist - bitmap_parselist_user - bitmap_print_to_pagebuf - bitmap_release_region - __bitmap_set - blk_alloc_queue - blk_cleanup_queue - blk_execute_rq_nowait - blk_get_request - blk_mq_rq_cpu - blk_put_request - blk_queue_flag_clear - blk_queue_flag_set - blk_queue_io_min - blk_queue_io_opt - blk_queue_logical_block_size - blk_queue_max_discard_sectors - blk_queue_max_write_zeroes_sectors - blk_queue_physical_block_size - blk_rq_map_user - blk_rq_map_user_iov - blk_rq_unmap_user - blk_verify_command - blocking_notifier_call_chain - blocking_notifier_chain_register - blocking_notifier_chain_unregister - bpf_trace_run1 - bpf_trace_run10 - bpf_trace_run11 - bpf_trace_run12 - bpf_trace_run2 - bpf_trace_run3 - bpf_trace_run4 - bpf_trace_run5 - bpf_trace_run6 - bpf_trace_run7 - bpf_trace_run8 - bpf_trace_run9 - build_skb - bus_find_device - bus_for_each_dev - bus_register - bus_set_iommu - bus_unregister - call_rcu - call_rcu_tasks - call_rcu_tasks_trace - call_srcu - cancel_delayed_work - cancel_delayed_work_sync - cancel_work_sync - capable - cdev_add - cdev_alloc - cdev_del - cdev_device_add - cdev_device_del - cdev_init - __cfi_slowpath - cgroup_path_ns - cgroup_taskset_first - cgroup_taskset_next - __check_object_size - check_preempt_curr - check_zeroed_user - __class_create - class_destroy - class_find_device - class_for_each_device - class_interface_unregister - __class_register - class_unregister - cleanup_srcu_struct - clear_page - __ClearPageMovable - clk_bulk_disable - clk_bulk_enable - clk_bulk_get_all - clk_bulk_prepare - clk_bulk_put_all - clk_bulk_unprepare - __clk_determine_rate - clk_disable - clk_enable - clk_fixed_factor_ops - clk_fixed_rate_ops - clk_get - __clk_get_hw - __clk_get_name - clk_get_parent - clk_get_rate - clk_hw_get_flags - clk_hw_get_name - clk_hw_get_num_parents - clk_hw_get_parent - clk_hw_get_parent_by_index - clk_hw_get_rate - clk_hw_is_enabled - clk_hw_is_prepared - clk_hw_register - clk_hw_round_rate - clk_hw_unregister - __clk_is_enabled - __clk_mux_determine_rate_closest - clk_notifier_register - clk_notifier_unregister - clk_prepare - clk_put - clk_register - clk_round_rate - clk_set_parent - clk_set_rate - clk_sync_state - clk_unprepare - cma_alloc - cma_get_name - cma_release - compat_alloc_user_space - compat_ptr_ioctl - complete - complete_all - complete_and_exit - completion_done - component_add - component_bind_all - component_del - component_master_add_with_match - component_master_del - component_match_add_release - component_unbind_all - cond_synchronize_rcu - config_ep_by_speed - configfs_register_subsystem - configfs_unregister_subsystem - config_group_init - config_group_init_type_name - config_item_get - config_item_put - console_drivers - console_stop - console_suspend_enabled - __const_udelay - consume_skb - contig_page_data - _copy_from_iter_full - copy_from_kernel_nofault - __cpu_active_mask - cpu_bit_bitmap - cpufreq_cooling_unregister - cpufreq_cpu_get - cpufreq_cpu_get_raw - cpufreq_cpu_put - cpufreq_disable_fast_switch - cpufreq_driver_fast_switch - cpufreq_driver_resolve_freq - __cpufreq_driver_target - cpufreq_enable_fast_switch - cpufreq_freq_attr_scaling_available_freqs - cpufreq_freq_attr_scaling_boost_freqs - cpufreq_generic_frequency_table_verify - cpufreq_get_policy - cpufreq_quick_get - cpufreq_quick_get_max - cpufreq_register_driver - cpufreq_register_governor - cpufreq_register_notifier - cpufreq_unregister_driver - cpufreq_unregister_notifier - __cpuhp_remove_state - __cpuhp_setup_state - __cpuhp_setup_state_cpuslocked - __cpuhp_state_add_instance - __cpuhp_state_remove_instance - cpu_hwcap_keys - cpu_hwcaps - cpuidle_governor_latency_req - cpuidle_register_governor - cpu_irqtime - cpu_is_hotpluggable - cpu_latency_qos_add_request - cpu_latency_qos_remove_request - cpu_latency_qos_request_active - cpu_latency_qos_update_request - cpu_maps_update_begin - cpu_maps_update_done - cpumask_any_but - cpumask_next - cpumask_next_and - cpu_number - __cpu_online_mask - cpu_pm_register_notifier - cpu_pm_unregister_notifier - __cpu_possible_mask - __cpu_present_mask - cpupri_find_fitness - cpu_scale - cpus_read_lock - cpus_read_unlock - cpu_subsys - cpu_topology - crc32_be - crc32_le - crc8 - crc8_populate_msb - crypto_aead_decrypt - crypto_aead_encrypt - crypto_aead_setauthsize - crypto_aead_setkey - crypto_ahash_digest - crypto_ahash_setkey - crypto_alloc_aead - crypto_alloc_ahash - crypto_alloc_base - crypto_alloc_shash - crypto_alloc_skcipher - crypto_alloc_sync_skcipher - crypto_cipher_encrypt_one - crypto_cipher_setkey - crypto_comp_compress - crypto_comp_decompress - crypto_dequeue_request - crypto_destroy_tfm - crypto_enqueue_request - crypto_has_alg - crypto_init_queue - __crypto_memneq - crypto_register_aead - crypto_register_ahash - crypto_register_alg - crypto_register_algs - crypto_register_rngs - crypto_register_scomp - crypto_register_skcipher - crypto_shash_digest - crypto_shash_final - crypto_shash_finup - crypto_shash_setkey - crypto_shash_update - crypto_skcipher_decrypt - crypto_skcipher_encrypt - crypto_skcipher_setkey - crypto_unregister_aead - crypto_unregister_ahash - crypto_unregister_alg - crypto_unregister_algs - crypto_unregister_rngs - crypto_unregister_scomp - crypto_unregister_skcipher - __crypto_xor - css_next_child - csum_ipv6_magic - csum_partial - csum_tcpudp_nofold - _ctype - datagram_poll - deactivate_task - debugfs_attr_read - debugfs_attr_write - debugfs_create_atomic_t - debugfs_create_blob - debugfs_create_bool - debugfs_create_dir - debugfs_create_file - debugfs_create_file_unsafe - debugfs_create_regset32 - debugfs_create_symlink - debugfs_create_u16 - debugfs_create_u32 - debugfs_create_u64 - debugfs_create_u8 - debugfs_create_ulong - debugfs_create_x32 - debugfs_create_x64 - debugfs_create_x8 - debugfs_file_get - debugfs_file_put - debugfs_lookup - debugfs_print_regs32 - debugfs_remove - debugfs_rename - dec_zone_page_state - default_llseek - deferred_free - delayed_work_timer_fn - del_gendisk - del_timer - del_timer_sync - desc_to_gpio - destroy_workqueue - dev_alloc_name - dev_change_net_namespace - dev_close - dev_coredumpv - _dev_crit - __dev_direct_xmit - dev_driver_string - _dev_emerg - _dev_err - dev_err_probe - dev_fetch_sw_netstats - devfreq_add_device - devfreq_add_governor - devfreq_cooling_unregister - devfreq_get_devfreq_by_node - devfreq_remove_device - devfreq_remove_governor - devfreq_resume_device - devfreq_suspend_device - dev_fwnode - __dev_get_by_index - dev_get_by_index - dev_get_by_name - dev_get_by_name_rcu - dev_get_regmap - device_add - device_add_disk - device_add_groups - device_create - device_create_file - device_create_with_groups - device_del - device_destroy - device_find_child - device_for_each_child - device_get_match_data - device_get_next_child_node - device_initialize - device_init_wakeup - device_link_add - device_link_del - device_match_fwnode - device_match_name - device_property_present - device_property_read_string - device_property_read_u16_array - device_property_read_u32_array - device_property_read_u8_array - device_register - device_remove_file - device_rename - device_set_wakeup_capable - device_show_int - device_store_int - device_unregister - device_wakeup_disable - device_wakeup_enable - _dev_info - __dev_kfree_skb_any - devm_add_action - devm_backlight_device_register - devm_blk_ksm_init - devm_clk_bulk_get - devm_clk_bulk_get_all - devm_clk_get - devm_clk_get_optional - devm_clk_hw_register - devm_clk_put - devm_clk_register - devm_device_add_group - devm_device_remove_group - devm_extcon_dev_allocate - devm_extcon_dev_register - devm_extcon_dev_unregister - devm_extcon_register_notifier - devm_free_irq - devm_gpiod_get_optional - devm_gpio_request - devm_gpio_request_one - devm_hwspin_lock_register - devm_iio_channel_get - devm_iio_device_alloc - __devm_iio_device_register - devm_input_allocate_device - devm_ioremap - devm_ioremap_resource - devm_ioremap_wc - devm_iounmap - devm_kasprintf - devm_kfree - devm_kmalloc - devm_kmemdup - devm_kstrdup - devm_led_classdev_register_ext - devm_mbox_controller_register - devm_nvmem_cell_get - devm_nvmem_device_get - devm_nvmem_register - devm_of_clk_add_hw_provider - devm_of_icc_get - __devm_of_phy_provider_register - devm_of_platform_populate - devm_of_pwm_get - devm_pci_alloc_host_bridge - devm_phy_create - devm_phy_get - devm_pinctrl_get - devm_pinctrl_put - devm_pinctrl_register - devm_platform_get_and_ioremap_resource - devm_platform_ioremap_resource - devm_platform_ioremap_resource_byname - devm_power_supply_register - devm_pwm_put - devm_regmap_add_irq_chip - devm_regmap_del_irq_chip - devm_regmap_field_alloc - __devm_regmap_init - __devm_regmap_init_i2c - __devm_regmap_init_mmio_clk - devm_regulator_bulk_get - devm_regulator_get - devm_regulator_get_optional - devm_regulator_put - devm_regulator_register - devm_regulator_register_notifier - devm_request_any_context_irq - __devm_request_region - devm_request_threaded_irq - devm_reset_control_array_get - __devm_reset_control_get - devm_reset_controller_register - devm_rproc_add - devm_rproc_alloc - devm_rtc_allocate_device - devm_snd_soc_register_card - devm_thermal_of_cooling_device_register - devm_thermal_zone_of_sensor_register - devm_usb_get_phy - devm_usb_get_phy_by_node - devm_usb_get_phy_by_phandle - _dev_notice - dev_pm_domain_attach - dev_pm_domain_attach_by_name - dev_pm_domain_detach - dev_pm_genpd_add_notifier - dev_pm_genpd_remove_notifier - dev_pm_genpd_set_next_wakeup - dev_pm_genpd_set_performance_state - dev_pm_opp_add - dev_pm_opp_find_freq_ceil - dev_pm_opp_find_freq_exact - dev_pm_opp_find_freq_floor - dev_pm_opp_get_level - dev_pm_opp_get_opp_count - dev_pm_opp_get_voltage - dev_pm_opp_of_add_table - dev_pm_opp_of_find_icc_paths - dev_pm_opp_of_register_em - dev_pm_opp_of_remove_table - dev_pm_opp_put - dev_pm_opp_put_clkname - dev_pm_opp_register_notifier - dev_pm_opp_remove_all_dynamic - dev_pm_opp_set_clkname - dev_pm_opp_set_rate - dev_pm_opp_set_sharing_cpus - dev_pm_opp_unregister_notifier - dev_pm_qos_add_notifier - dev_pm_qos_add_request - dev_pm_qos_read_value - dev_pm_qos_remove_notifier - dev_pm_qos_remove_request - dev_pm_qos_update_request - dev_printk - dev_queue_xmit - devres_add - devres_alloc_node - devres_free - devres_release - dev_set_name - _dev_warn - disable_irq - disable_irq_nosync - disable_percpu_irq - disk_end_io_acct - disk_start_io_acct - divider_get_val - divider_recalc_rate - divider_ro_round_rate_parent - divider_round_rate_parent - dma_alloc_attrs - dma_async_device_register - dma_async_device_unregister - dma_async_tx_descriptor_init - dma_buf_attach - dma_buf_begin_cpu_access - dma_buf_begin_cpu_access_partial - dma_buf_detach - dma_buf_end_cpu_access - dma_buf_end_cpu_access_partial - dma_buf_export - dma_buf_fd - dma_buf_get - dma_buf_get_flags - dma_buf_map_attachment - dma_buf_put - dma_buf_unmap_attachment - dma_buf_vmap - dma_buf_vunmap - dma_contiguous_default_area - dma_fence_add_callback - dma_fence_array_create - dma_fence_array_ops - dma_fence_context_alloc - dma_fence_default_wait - dma_fence_enable_sw_signaling - dma_fence_free - dma_fence_get_status - dma_fence_init - dma_fence_release - dma_fence_remove_callback - dma_fence_signal - dma_fence_signal_locked - dma_fence_signal_timestamp_locked - dma_fence_wait_timeout - dma_free_attrs - dma_get_sgtable_attrs - dma_get_slave_channel - dma_heap_add - dma_heap_buffer_alloc - dma_heap_buffer_free - dma_heap_find - dma_heap_get_dev - dma_heap_get_drvdata - dma_heap_get_name - dmam_alloc_attrs - dma_map_page_attrs - dma_map_resource - dma_map_sg_attrs - dmam_free_coherent - dma_mmap_attrs - dma_pool_alloc - dma_pool_create - dma_pool_destroy - dma_pool_free - dma_release_channel - dma_request_chan - dma_resv_fini - dma_resv_init - dma_resv_wait_timeout_rcu - dma_set_coherent_mask - dma_set_mask - dma_sync_sg_for_cpu - dma_sync_sg_for_device - dma_sync_single_for_cpu - dma_sync_single_for_device - dma_unmap_page_attrs - dma_unmap_resource - dma_unmap_sg_attrs - do_exit - do_trace_rcu_torture_read - do_wait_intr - down - down_read - down_write - d_path - dput - drain_workqueue - driver_find_device - driver_register - driver_unregister - drm_add_edid_modes - drm_add_modes_noedid - drm_atomic_commit - drm_atomic_get_connector_state - drm_atomic_get_crtc_state - drm_atomic_get_plane_state - drm_atomic_get_private_obj_state - drm_atomic_helper_check - drm_atomic_helper_cleanup_planes - drm_atomic_helper_commit_duplicated_state - drm_atomic_helper_commit_hw_done - drm_atomic_helper_commit_modeset_disables - drm_atomic_helper_commit_modeset_enables - drm_atomic_helper_commit_planes - __drm_atomic_helper_connector_destroy_state - __drm_atomic_helper_connector_duplicate_state - __drm_atomic_helper_connector_reset - __drm_atomic_helper_crtc_destroy_state - __drm_atomic_helper_crtc_duplicate_state - drm_atomic_helper_dirtyfb - drm_atomic_helper_disable_plane - drm_atomic_helper_duplicate_state - drm_atomic_helper_page_flip - __drm_atomic_helper_plane_duplicate_state - drm_atomic_helper_prepare_planes - __drm_atomic_helper_private_obj_duplicate_state - drm_atomic_helper_set_config - drm_atomic_helper_shutdown - drm_atomic_helper_swap_state - drm_atomic_helper_update_legacy_modeset_state - drm_atomic_helper_update_plane - drm_atomic_helper_wait_for_fences - drm_atomic_helper_wait_for_vblanks - drm_atomic_private_obj_init - drm_atomic_set_crtc_for_connector - drm_atomic_set_fence_for_plane - drm_atomic_set_mode_for_crtc - drm_atomic_state_alloc - drm_atomic_state_clear - drm_atomic_state_default_clear - drm_atomic_state_default_release - __drm_atomic_state_free - drm_atomic_state_init - drm_bridge_attach - drm_bridge_chain_disable - drm_bridge_chain_enable - drm_bridge_chain_mode_set - drm_bridge_chain_post_disable - drm_bridge_chain_pre_enable - drm_client_init - drm_client_modeset_commit_locked - drm_client_register - drm_compat_ioctl - drm_connector_attach_encoder - drm_connector_cleanup - drm_connector_init - drm_connector_list_iter_begin - drm_connector_list_iter_end - drm_connector_list_iter_next - drm_connector_register - drm_connector_set_tile_property - drm_connector_unregister - drm_connector_update_edid_property - drm_crtc_cleanup - drm_crtc_from_index - drm_crtc_handle_vblank - drm_crtc_init_with_planes - drm_crtc_send_vblank_event - drm_crtc_set_max_vblank_count - drm_crtc_vblank_off - drm_crtc_vblank_on - drm_crtc_vblank_reset - drm_crtc_wait_one_vblank - __drm_dbg - __drm_debug - drm_detect_hdmi_monitor - drm_detect_monitor_audio - drm_dev_alloc - drm_dev_dbg - drm_dev_printk - drm_dev_put - drm_dev_register - drm_dev_unregister - drm_dp_atomic_find_vcpi_slots - drm_dp_atomic_release_vcpi_slots - drm_dp_aux_register - drm_dp_aux_unregister - drm_dp_bw_code_to_link_rate - drm_dp_calc_pbn_mode - drm_dp_channel_eq_ok - drm_dp_check_act_status - drm_dp_clock_recovery_ok - drm_dp_dpcd_read - drm_dp_dpcd_read_link_status - drm_dp_dpcd_write - drm_dp_find_vcpi_slots - drm_dp_get_adjust_request_pre_emphasis - drm_dp_get_adjust_request_voltage - drm_dp_link_rate_to_bw_code - drm_dp_link_train_channel_eq_delay - drm_dp_link_train_clock_recovery_delay - drm_dp_mst_allocate_vcpi - drm_dp_mst_deallocate_vcpi - drm_dp_mst_detect_port - drm_dp_mst_get_edid - drm_dp_mst_get_port_malloc - drm_dp_mst_hpd_irq - drm_dp_mst_put_port_malloc - drm_dp_mst_reset_vcpi_slots - drm_dp_mst_topology_mgr_destroy - drm_dp_mst_topology_mgr_init - drm_dp_mst_topology_mgr_set_mst - drm_dp_send_power_updown_phy - drm_dp_update_payload_part1 - drm_dp_update_payload_part2 - drm_edid_duplicate - drm_edid_is_valid - drm_encoder_cleanup - drm_encoder_init - __drm_err - drm_event_reserve_init_locked - drm_format_info - drm_framebuffer_init - drm_framebuffer_lookup - drm_framebuffer_remove - drm_framebuffer_unregister_private - drm_gem_create_mmap_offset - drm_gem_fb_create_handle - drm_gem_fb_destroy - drm_gem_fb_get_obj - drm_gem_free_mmap_offset - drm_gem_get_pages - drm_gem_handle_create - drm_gem_mmap - drm_gem_mmap_obj - drm_gem_object_free - drm_gem_object_init - drm_gem_object_lookup - drm_gem_object_put_locked - drm_gem_object_release - drm_gem_prime_export - drm_gem_prime_fd_to_handle - drm_gem_prime_handle_to_fd - drm_gem_private_object_init - drm_gem_put_pages - drm_gem_vm_close - drm_gem_vm_open - drm_get_connector_status_name - drm_get_edid - drm_get_format_info - drm_helper_hpd_irq_event - drm_helper_mode_fill_fb_struct - drm_helper_probe_single_connector_modes - drm_ioctl - drm_irq_install - drm_irq_uninstall - drm_kms_helper_hotplug_event - drm_kms_helper_poll_disable - drm_kms_helper_poll_enable - drm_kms_helper_poll_fini - drm_kms_helper_poll_init - drm_match_cea_mode - drm_mm_init - drm_mm_insert_node_in_range - drmm_mode_config_init - drm_mm_remove_node - drm_mm_takedown - drm_mode_config_cleanup - drm_mode_config_reset - drm_mode_convert_umode - drm_mode_copy - drm_mode_create - drm_mode_create_dp_colorspace_property - drm_mode_create_tile_group - drm_mode_debug_printmodeline - drm_mode_duplicate - drm_mode_equal - drm_mode_get_tile_group - drm_mode_is_420_only - drm_mode_object_find - drm_mode_object_get - drm_mode_object_put - drm_mode_probed_add - drm_modeset_acquire_fini - drm_modeset_acquire_init - drm_modeset_backoff - drm_mode_set_crtcinfo - drm_modeset_drop_locks - drm_modeset_lock - drm_modeset_lock_all - drm_modeset_lock_all_ctx - drm_mode_set_name - drm_modeset_unlock_all - drm_mode_vrefresh - drm_object_attach_property - drm_object_property_set_value - drm_of_component_match_add - drm_open - drm_panel_add - drm_panel_init - drm_panel_remove - drm_plane_cleanup - drm_plane_create_rotation_property - drm_poll - drm_prime_gem_destroy - drm_prime_pages_to_sg - drm_property_blob_get - drm_property_blob_put - drm_property_create - drm_property_create_bitmask - drm_property_create_blob - drm_property_create_enum - drm_property_create_range - drm_property_lookup_blob - drm_read - drm_release - drm_rotation_simplify - drm_send_event_locked - drm_set_preferred_mode - drm_universal_plane_init - drm_vblank_init - drm_wait_one_vblank - dst_release - dump_stack - __dynamic_dev_dbg - __dynamic_pr_debug - edac_device_add_device - edac_device_alloc_ctl_info - edac_device_alloc_index - edac_device_del_device - edac_device_free_ctl_info - edac_device_handle_ce_count - edac_device_handle_ue_count - enable_irq - enable_percpu_irq - ether_setup - eth_mac_addr - ethtool_op_get_link - eth_type_trans - eventfd_ctx_fdget - eventfd_ctx_fileget - eventfd_ctx_put - eventfd_ctx_remove_wait_queue - eventfd_signal - event_triggers_call - extcon_find_edev_by_node - extcon_get_edev_by_phandle - extcon_get_edev_name - extcon_get_extcon_dev - extcon_get_property - extcon_get_state - extcon_register_notifier - extcon_set_state_sync - extcon_unregister_notifier - failure_tracking - fasync_helper - __fdget - fd_install - fget - find_get_pid - find_last_bit - find_next_bit - find_next_zero_bit - find_snd_usb_substream - find_task_by_vpid - find_vma - find_vpid - finish_wait - firmware_request_nowarn - flush_dcache_page - flush_delayed_work - __flush_icache_range - flush_work - flush_workqueue - fput - free_io_pgtable_ops - free_irq - free_netdev - __free_pages - free_pages - free_pages_exact - free_percpu - free_percpu_irq - freezing_slow_path - freq_qos_add_request - freq_qos_remove_request - freq_qos_update_request - freq_scale - fsync_bdev - ftrace_dump - fwnode_find_reference - fwnode_get_name - fwnode_get_named_child_node - fwnode_get_next_child_node - fwnode_handle_get - fwnode_handle_put - fwnode_property_present - fwnode_property_read_string - fwnode_property_read_u32_array - fwnode_usb_role_switch_get - gcd - generic_device_group - generic_file_llseek - generic_handle_irq - generic_iommu_put_resv_regions - genlmsg_multicast_allns - genlmsg_put - genl_register_family - genl_unregister_family - gen_pool_add_owner - gen_pool_alloc_algo_owner - gen_pool_avail - gen_pool_best_fit - gen_pool_create - gen_pool_destroy - gen_pool_first_fit_order_align - gen_pool_free_owner - gen_pool_has_addr - gen_pool_set_algo - gen_pool_size - gen_pool_virt_to_phys - getboottime64 - get_cpu_device - get_device - get_each_dmabuf - get_each_object_track - __get_free_pages - get_governor_parent_kobj - get_net_ns_by_fd - get_net_ns_by_pid - get_option - get_page_owner_handle - get_pfnblock_flags_mask - get_pid_task - get_random_bytes - get_random_u32 - get_sg_io_hdr - get_slabinfo - get_state_synchronize_rcu - __get_task_comm - get_task_mm - get_task_pid - get_unmapped_area - get_unused_fd_flags - get_user_pages - get_zeroed_page - gfp_zone - gic_nonsecure_priorities - gic_resume - gov_attr_set_init - gov_attr_set_put - governor_sysfs_ops - gpiochip_add_data_with_key - gpiochip_add_pin_range - gpiochip_generic_free - gpiochip_generic_request - gpiochip_get_data - gpiochip_line_is_valid - gpiochip_lock_as_irq - gpiochip_remove - gpiochip_unlock_as_irq - gpiod_direction_input - gpiod_direction_output - gpiod_direction_output_raw - gpiod_get_optional - gpiod_get_raw_value - gpiod_get_raw_value_cansleep - gpiod_get_value - gpiod_get_value_cansleep - gpiod_set_debounce - gpiod_set_raw_value - gpiod_set_raw_value_cansleep - gpiod_set_value - gpiod_set_value_cansleep - gpiod_to_irq - gpio_free - gpio_free_array - gpio_request - gpio_request_one - gpio_to_desc - gro_cells_destroy - gro_cells_init - gro_cells_receive - handle_bad_irq - handle_edge_irq - handle_fasteoi_ack_irq - handle_fasteoi_irq - handle_level_irq - handle_nested_irq - handle_simple_irq - handle_sysrq - hashlen_string - hex2bin - hex_dump_to_buffer - hex_to_bin - hrtimer_active - hrtimer_cancel - hrtimer_forward - __hrtimer_get_remaining - hrtimer_init - hrtimer_start_range_ns - hrtimer_try_to_cancel - hvc_alloc - hvc_kick - hvc_poll - hvc_remove - __hw_addr_init - __hw_addr_sync - __hw_addr_unsync - hwrng_register - hwrng_unregister - hwspin_lock_free - hwspin_lock_request_specific - __hwspin_lock_timeout - __hwspin_unlock - hypervisor_kobj - i2c_add_adapter - i2c_del_adapter - i2c_del_driver - i2c_get_dma_safe_msg_buf - i2c_new_client_device - i2c_put_dma_safe_msg_buf - i2c_register_driver - i2c_transfer - i2c_transfer_buffer_flags - i3c_generic_ibi_alloc_pool - i3c_generic_ibi_free_pool - i3c_generic_ibi_get_free_slot - i3c_generic_ibi_recycle_slot - i3c_master_add_i3c_dev_locked - i3c_master_disec_locked - i3c_master_do_daa - i3c_master_enec_locked - i3c_master_entdaa_locked - i3c_master_get_free_addr - i3c_master_queue_ibi - i3c_master_register - i3c_master_set_info - i3c_master_unregister - icc_disable - icc_enable - icc_get - icc_link_create - icc_node_add - icc_node_create - icc_node_del - icc_node_destroy - icc_provider_add - icc_provider_del - icc_put - icc_set_bw - icc_set_tag - ida_alloc_range - ida_free - idr_alloc - idr_alloc_cyclic - idr_alloc_u32 - idr_destroy - idr_find - idr_for_each - idr_get_next - idr_preload - idr_remove - idr_replace - iio_channel_get_all - iio_read_channel_processed - import_iovec - in4_pton - in6_pton - inc_node_page_state - inc_zone_page_state - in_egroup_p - inet_csk_get_port - inet_proto_csum_replace4 - init_dummy_netdev - init_iova_domain - init_net - init_pid_ns - init_pseudo - __init_rwsem - init_srcu_struct - __init_swait_queue_head - init_task - init_timer_key - init_uts_ns - init_wait_entry - __init_waitqueue_head - input_alloc_absinfo - input_allocate_device - input_close_device - input_event - input_ff_create - input_ff_destroy - input_free_device - input_mt_init_slots - input_mt_report_pointer_emulation - input_mt_report_slot_state - input_open_device - input_register_device - input_register_handle - input_register_handler - input_set_abs_params - input_set_capability - input_unregister_device - input_unregister_handle - input_unregister_handler - interval_tree_insert - interval_tree_iter_first - interval_tree_iter_next - interval_tree_remove - int_sqrt - invalidate_mapping_pages - iomem_resource - iommu_alloc_resv_region - iommu_attach_device - iommu_attach_group - iommu_detach_device - iommu_detach_group - iommu_device_register - iommu_device_sysfs_add - iommu_device_sysfs_remove - iommu_device_unregister - iommu_dma_enable_best_fit_algo - iommu_dma_get_resv_regions - iommu_dma_reserve_iova - iommu_domain_alloc - iommu_domain_free - iommu_domain_get_attr - iommu_domain_set_attr - iommu_fwspec_add_ids - iommu_fwspec_free - iommu_get_dma_cookie - iommu_get_domain_for_dev - iommu_get_msi_cookie - iommu_group_for_each_dev - iommu_group_get - iommu_group_get_iommudata - iommu_group_put - iommu_group_ref_get - iommu_group_set_iommudata - iommu_iova_to_phys - iommu_map - iommu_map_sg - iommu_present - iommu_put_dma_cookie - iommu_set_fault_handler - iommu_unmap - __ioread32_copy - __ioremap - iounmap - __iowrite32_copy - ip_compute_csum - ipi_desc_get - ip_route_output_flow - iput - __ipv6_addr_type - ipv6_ext_hdr - ipv6_find_hdr - ipv6_skip_exthdr - ipv6_stub - irq_chip_ack_parent - irq_chip_disable_parent - irq_chip_enable_parent - irq_chip_eoi_parent - irq_chip_get_parent_state - irq_chip_mask_parent - irq_chip_retrigger_hierarchy - irq_chip_set_affinity_parent - irq_chip_set_parent_state - irq_chip_set_type_parent - irq_chip_set_vcpu_affinity_parent - irq_chip_set_wake_parent - irq_chip_unmask_parent - irq_create_fwspec_mapping - irq_create_mapping_affinity - irq_dispose_mapping - __irq_domain_add - irq_domain_alloc_irqs_parent - irq_domain_create_hierarchy - irq_domain_free_irqs_common - irq_domain_free_irqs_parent - irq_domain_get_irq_data - irq_domain_remove - irq_domain_set_hwirq_and_chip - irq_domain_set_info - irq_domain_update_bus_token - irq_domain_xlate_onecell - irq_domain_xlate_twocell - irq_do_set_affinity - irq_find_mapping - irq_find_matching_fwspec - irq_get_irqchip_state - irq_get_irq_data - irq_modify_status - irq_of_parse_and_map - irq_set_affinity_hint - irq_set_affinity_notifier - irq_set_chained_handler_and_data - irq_set_chip_and_handler_name - irq_set_chip_data - irq_set_irqchip_state - irq_set_irq_type - irq_set_irq_wake - irq_set_parent - irq_to_desc - irq_work_queue - irq_work_queue_on - irq_work_sync - is_dma_buf_file - isolate_and_split_free_page - isolate_anon_lru_page - is_vmalloc_addr - iterate_fd - jiffies - jiffies_to_msecs - jiffies_to_usecs - kasan_flag_enabled - kasprintf - kernel_bind - kernel_connect - kernel_getsockname - kernel_kobj - kernel_param_lock - kernel_param_unlock - kernel_power_off - kernel_recvmsg - kernel_restart - kernel_sendmsg - kernfs_find_and_get_ns - kernfs_notify - kernfs_put - kern_mount - kern_unmount - key_create_or_update - key_put - keyring_alloc - __kfifo_alloc - __kfifo_free - __kfifo_in - __kfifo_out - kfree - kfree_const - kfree_sensitive - kfree_skb - kfree_skb_list - kick_all_cpus_sync - kill_anon_super - kill_fasync - kimage_vaddr - kimage_voffset - __kmalloc - kmalloc_caches - kmalloc_order_trace - kmem_cache_alloc - kmem_cache_alloc_trace - kmem_cache_create - kmem_cache_create_usercopy - kmem_cache_destroy - kmem_cache_free - kmemdup - kmemdup_nul - kobject_add - kobject_create_and_add - kobject_del - kobject_init - kobject_init_and_add - kobject_put - kobject_set_name - kobject_uevent - kobject_uevent_env - kobj_sysfs_ops - krealloc - kset_create_and_add - ksize - ksoftirqd - kstat - kstat_irqs_cpu - kstat_irqs_usr - kstrdup - kstrdup_const - kstrndup - kstrtobool - kstrtoint - kstrtoint_from_user - kstrtoll - kstrtos8 - kstrtos8_from_user - kstrtou16 - kstrtou16_from_user - kstrtou8 - kstrtou8_from_user - kstrtouint - kstrtouint_from_user - kstrtoul_from_user - kstrtoull - kstrtoull_from_user - kthread_bind - kthread_bind_mask - kthread_cancel_delayed_work_sync - kthread_cancel_work_sync - kthread_create_on_node - kthread_create_worker - kthread_delayed_work_timer_fn - kthread_destroy_worker - kthread_flush_work - kthread_flush_worker - __kthread_init_worker - kthread_mod_delayed_work - kthread_park - kthread_parkme - kthread_queue_delayed_work - kthread_queue_work - kthread_should_park - kthread_should_stop - kthread_stop - kthread_unpark - kthread_worker_fn - ktime_get - ktime_get_coarse_with_offset - ktime_get_mono_fast_ns - ktime_get_real_seconds - ktime_get_real_ts64 - ktime_get_seconds - ktime_get_with_offset - kvfree - kvfree_call_rcu - kvmalloc_node - led_classdev_flash_register_ext - led_classdev_flash_unregister - led_classdev_unregister - led_trigger_event - led_trigger_register_simple - led_trigger_unregister_simple - __list_add_valid - __list_del_entry_valid - list_sort - llist_add_batch - llist_reverse_order - __local_bh_enable_ip - __lock_page - lock_sock_nested - log_buf_addr_get - log_buf_len_get - __log_post_read_mmio - __log_read_mmio - __log_write_mmio - lookup_page_ext - lzo1x_1_compress - lzo1x_decompress_safe - lzorle1x_1_compress - mac_pton - match_string - mbox_chan_received_data - mbox_chan_txdone - mbox_client_txdone - mbox_controller_register - mbox_controller_unregister - mbox_free_channel - mbox_request_channel - mbox_send_message - media_device_cleanup - media_device_init - __media_device_register - media_device_unregister - media_entity_pads_init - memblock_end_of_DRAM - memblock_free - __memcat_p - memchr - memchr_inv - memcmp - memcpy - __memcpy_fromio - __memcpy_toio - memdup_user - memmove - memory_block_size_bytes - memory_read_from_buffer - memparse - mempool_alloc - mempool_alloc_slab - mempool_create - mempool_destroy - mempool_free - mempool_free_slab - memremap - memset - memset64 - __memset_io - memstart_addr - memunmap - migrate_pages - migrate_swap - mipi_dsi_create_packet - mipi_dsi_dcs_set_display_brightness - mipi_dsi_dcs_set_tear_off - mipi_dsi_host_register - mipi_dsi_host_unregister - misc_deregister - misc_register - mmc_cqe_request_done - mmc_of_parse - mmc_regulator_get_supply - mmc_regulator_set_ocr - mmc_regulator_set_vqmmc - mmc_send_tuning - mmput - mod_delayed_work_on - __mod_node_page_state - mod_node_page_state - mod_timer - __module_get - module_layout - module_put - __mod_zone_page_state - __msecs_to_jiffies - msleep - msleep_interruptible - __mutex_init - mutex_is_locked - mutex_lock - mutex_lock_interruptible - mutex_trylock - mutex_unlock - napi_complete_done - napi_disable - napi_gro_flush - napi_gro_receive - __napi_schedule - napi_schedule_prep - neigh_destroy - __neigh_event_send - neigh_lookup - neigh_xmit - __netdev_alloc_skb - netdev_err - netdev_info - netdev_rx_handler_register - netdev_rx_handler_unregister - netdev_set_default_ethtool_ops - netdev_update_features - netif_carrier_off - netif_carrier_on - netif_device_attach - netif_device_detach - netif_napi_add - __netif_napi_del - netif_receive_skb - netif_receive_skb_core - netif_receive_skb_list - netif_rx - netif_rx_ni - netif_schedule_queue - netif_tx_stop_all_queues - netif_tx_wake_queue - netlink_broadcast - netlink_capable - __netlink_kernel_create - netlink_kernel_release - netlink_register_notifier - netlink_unicast - netlink_unregister_notifier - net_ns_type_operations - net_ratelimit - __next_zones_zonelist - nla_find - nla_memcpy - __nla_parse - nla_put - nla_put_64bit - nla_reserve - nla_reserve_64bit - __nla_validate - __nlmsg_put - no_llseek - nonseekable_open - noop_llseek - nr_cpu_ids - nr_ipi_get - nr_irqs - ns_capable - nsecs_to_jiffies - ns_to_timespec64 - __num_online_cpus - nvmem_cell_get - nvmem_cell_put - nvmem_cell_read - nvmem_cell_read_u32 - nvmem_cell_write - nvmem_device_read - nvmem_device_write - of_address_to_resource - of_alias_get_id - of_clk_add_hw_provider - of_clk_add_provider - of_clk_del_provider - of_clk_get - of_clk_get_from_provider - of_clk_get_parent_count - of_clk_hw_simple_get - of_clk_src_onecell_get - of_clk_src_simple_get - of_count_phandle_with_args - of_cpufreq_cooling_register - of_cpu_node_to_id - of_devfreq_cooling_register - of_device_get_match_data - of_device_is_available - of_device_is_compatible - of_device_uevent_modalias - of_dma_configure_id - of_dma_controller_free - of_dma_controller_register - of_dma_is_coherent - of_drm_find_bridge - of_drm_find_panel - of_find_compatible_node - of_find_device_by_node - of_find_i2c_device_by_node - of_find_matching_node_and_match - of_find_node_by_name - of_find_node_by_phandle - of_find_node_opts_by_path - of_find_node_with_property - of_find_property - of_fwnode_ops - of_genpd_add_provider_onecell - of_genpd_add_provider_simple - of_genpd_del_provider - of_get_address - of_get_child_by_name - of_get_compatible_child - of_get_cpu_node - of_get_named_gpio_flags - of_get_next_available_child - of_get_next_child - of_get_next_parent - of_get_parent - of_get_property - of_get_regulator_init_data - of_graph_get_endpoint_by_regs - of_graph_get_next_endpoint - of_graph_get_port_parent - of_graph_get_remote_endpoint - of_graph_get_remote_node - of_graph_get_remote_port - of_graph_get_remote_port_parent - of_graph_is_present - of_graph_parse_endpoint - of_hwspin_lock_get_id - of_i2c_get_board_info - of_icc_get - of_icc_xlate_onecell - of_iomap - of_irq_find_parent - of_irq_get - of_irq_get_byname - of_irq_parse_one - of_machine_is_compatible - of_match_device - of_match_node - of_modalias_node - of_n_addr_cells - of_node_name_eq - of_n_size_cells - of_parse_phandle - of_parse_phandle_with_args - of_parse_phandle_with_fixed_args - of_phandle_iterator_init - of_phandle_iterator_next - of_phy_simple_xlate - of_platform_depopulate - of_platform_device_create - of_platform_device_destroy - of_platform_populate - of_property_count_elems_of_size - of_property_match_string - of_property_read_string - of_property_read_string_helper - of_property_read_u32_index - of_property_read_u64 - of_property_read_u64_index - of_property_read_variable_u16_array - of_property_read_variable_u32_array - of_property_read_variable_u8_array - of_prop_next_string - of_prop_next_u32 - of_reserved_mem_device_init_by_idx - of_reserved_mem_device_release - of_reserved_mem_lookup - of_reset_control_array_get - of_root - of_thermal_get_ntrips - of_thermal_get_trip_points - of_thermal_is_trip_valid - of_translate_address - of_usb_get_phy_mode - of_usb_host_tpl_support - on_each_cpu - oops_in_progress - overflowuid - page_endio - page_mapping - __page_pinner_migration_failed - panic - panic_notifier_list - panic_timeout - param_array_ops - param_get_int - param_get_string - param_get_ullong - param_ops_bool - param_ops_byte - param_ops_charp - param_ops_int - param_ops_long - param_ops_string - param_ops_uint - param_ops_ullong - param_ops_ulong - param_set_bool - param_set_copystring - param_set_int - pause_cpus - pci_aer_clear_nonfatal_status - pci_alloc_irq_vectors_affinity - pci_assign_resource - pci_bus_type - pci_clear_master - pci_d3cold_disable - pci_device_group - pci_device_is_present - pci_dev_present - pci_disable_device - pci_disable_msi - pci_disable_pcie_error_reporting - pcie_capability_clear_and_set_word - pcie_capability_read_word - pci_enable_device - pci_enable_pcie_error_reporting - pci_find_ext_capability - pci_free_irq_vectors - pci_get_device - pci_get_domain_bus_and_slot - pci_host_probe - pci_iomap - pci_irq_vector - pci_load_and_free_saved_state - pci_load_saved_state - pci_match_id - pcim_enable_device - pci_msi_create_irq_domain - pci_msi_mask_irq - pci_msi_unmask_irq - pci_read_config_byte - pci_read_config_dword - pci_read_config_word - __pci_register_driver - pci_release_region - pci_request_region - pci_restore_state - pci_save_state - pci_set_master - pci_set_mwi - pci_set_power_state - pci_store_saved_state - pci_unregister_driver - pci_walk_bus - pci_write_config_dword - pci_write_config_word - pcpu_nr_pages - PDE_DATA - __percpu_down_read - percpu_down_write - __percpu_init_rwsem - __per_cpu_offset - per_cpu_ptr_to_phys - percpu_up_write - perf_aux_output_begin - perf_aux_output_end - perf_aux_output_flag - perf_event_addr_filters_sync - perf_event_create_kernel_counter - perf_event_disable - perf_event_enable - perf_event_read_local - perf_event_read_value - perf_event_release_kernel - perf_get_aux - perf_pmu_register - perf_pmu_unregister - perf_trace_buf_alloc - perf_trace_run_bpf_submit - pfn_valid - phy_calibrate - phy_exit - phy_init - phy_pm_runtime_get_sync - phy_pm_runtime_put_sync - phy_power_off - phy_power_on - phy_set_mode_ext - pick_highest_pushable_task - pid_nr_ns - pid_task - pinconf_generic_dt_node_to_map - pinctrl_dev_get_drvdata - pinctrl_force_default - pinctrl_force_sleep - pinctrl_get - pinctrl_lookup_state - pinctrl_pm_select_default_state - pinctrl_pm_select_sleep_state - pinctrl_put - pinctrl_select_state - pinctrl_utils_free_map - platform_bus_type - platform_device_add - platform_device_add_data - platform_device_add_properties - platform_device_add_resources - platform_device_alloc - platform_device_del - platform_device_put - platform_device_register - platform_device_register_full - platform_device_unregister - __platform_driver_register - platform_driver_unregister - platform_get_irq - platform_get_irq_byname - platform_get_irq_byname_optional - platform_get_resource - platform_get_resource_byname - platform_irq_count - pm_clk_add - pm_clk_create - pm_clk_destroy - pm_clk_resume - pm_clk_suspend - pm_generic_resume - pm_generic_suspend - pm_genpd_add_subdomain - pm_genpd_init - pm_genpd_remove - pm_genpd_remove_subdomain - pm_power_off - __pm_relax - pm_relax - pm_runtime_allow - pm_runtime_barrier - __pm_runtime_disable - pm_runtime_enable - pm_runtime_forbid - pm_runtime_force_resume - pm_runtime_force_suspend - __pm_runtime_idle - pm_runtime_irq_safe - pm_runtime_no_callbacks - __pm_runtime_resume - pm_runtime_set_autosuspend_delay - __pm_runtime_set_status - __pm_runtime_suspend - __pm_runtime_use_autosuspend - __pm_stay_awake - pm_stay_awake - pm_system_wakeup - pm_wakeup_dev_event - pm_wakeup_ws_event - power_supply_changed - power_supply_get_by_name - power_supply_get_drvdata - power_supply_get_property - power_supply_put - power_supply_register - power_supply_reg_notifier - power_supply_set_property - power_supply_unregister - power_supply_unreg_notifier - prandom_bytes - prandom_u32 - preempt_schedule - preempt_schedule_notrace - prepare_to_wait_event - print_hex_dump - printk - printk_deferred - proc_create - proc_create_data - proc_dointvec - proc_dointvec_minmax - proc_dostring - proc_douintvec_minmax - proc_mkdir - proc_remove - proc_set_user - proto_register - proto_unregister - pskb_expand_head - __pskb_pull_tail - ___pskb_trim - putback_movable_pages - put_device - put_disk - put_iova_domain - __put_net - __put_page - put_pid - put_sg_io_hdr - __put_task_struct - put_unused_fd - pwm_apply_state - pwmchip_add - pwmchip_remove - qcom_smem_state_get - qcom_smem_state_register - qcom_smem_state_unregister - qcom_smem_state_update_bits - qdisc_reset - queue_delayed_work_on - queue_work_on - radix_tree_delete - radix_tree_insert - radix_tree_iter_delete - radix_tree_lookup - radix_tree_maybe_preload - radix_tree_next_chunk - ___ratelimit - rational_best_approximation - raw_notifier_call_chain - raw_notifier_chain_register - raw_notifier_chain_unregister - _raw_read_lock - _raw_read_lock_bh - _raw_read_lock_irq - _raw_read_lock_irqsave - _raw_read_unlock - _raw_read_unlock_bh - _raw_read_unlock_irq - _raw_read_unlock_irqrestore - _raw_spin_lock - _raw_spin_lock_bh - _raw_spin_lock_irq - _raw_spin_lock_irqsave - _raw_spin_trylock - _raw_spin_trylock_bh - _raw_spin_unlock - _raw_spin_unlock_bh - _raw_spin_unlock_irq - _raw_spin_unlock_irqrestore - _raw_write_lock - _raw_write_lock_bh - _raw_write_lock_irq - _raw_write_lock_irqsave - _raw_write_unlock - _raw_write_unlock_bh - _raw_write_unlock_irq - _raw_write_unlock_irqrestore - rb_erase - rb_first - rb_insert_color - rb_last - rb_next - rb_prev - rcu_barrier - rcu_barrier_tasks - rcu_barrier_tasks_trace - rcu_bind_current_to_nocb - rcu_cpu_stall_suppress - rcu_cpu_stall_suppress_at_boot - rcu_expedite_gp - rcu_force_quiescent_state - rcu_fwd_progress_check - rcu_get_gp_kthreads_prio - rcu_get_gp_seq - rcu_gp_is_expedited - rcu_gp_is_normal - rcu_gp_set_torture_wait - rcu_inkernel_boot_has_ended - rcu_is_watching - rcu_jiffies_till_stall_check - __rcu_read_lock - __rcu_read_unlock - rcu_read_unlock_trace_special - rcutorture_get_gp_data - rcu_unexpedite_gp - rcuwait_wake_up - rdev_get_drvdata - reboot_mode - reclaim_shmem_address_space - refcount_dec_and_lock - refcount_dec_not_one - refcount_warn_saturate - regcache_cache_only - regcache_mark_dirty - regcache_sync - regcache_sync_region - register_blkdev - __register_chrdev - register_chrdev_region - register_console - register_die_notifier - register_ftrace_export - register_inet6addr_notifier - register_inetaddr_notifier - register_kprobe - register_kretprobe - register_memory_notifier - register_module_notifier - register_netdev - register_netdevice - register_netdevice_notifier - register_netevent_notifier - register_oom_notifier - register_pernet_device - register_pm_notifier - register_reboot_notifier - register_restart_handler - __register_rpmsg_driver - register_shrinker - register_syscore_ops - register_sysctl - register_sysctl_table - regmap_bulk_read - regmap_bulk_write - regmap_check_range_table - regmap_field_read - regmap_field_update_bits_base - __regmap_init - regmap_irq_get_virq - regmap_mmio_detach_clk - regmap_read - regmap_update_bits_base - regmap_write - regulator_allow_bypass - regulator_bulk_disable - regulator_count_voltages - regulator_disable - regulator_disable_deferred - regulator_enable - regulator_force_disable - regulator_get - regulator_get_drvdata - regulator_get_mode - regulator_get_voltage - regulator_get_voltage_rdev - regulator_is_enabled - regulator_is_supported_voltage - regulator_list_voltage_linear - regulator_notifier_call_chain - regulator_put - regulator_register_notifier - regulator_set_current_limit - regulator_set_load - regulator_set_mode - regulator_set_voltage - regulator_unregister_notifier - release_firmware - __release_region - release_sock - remap_pfn_range - remove_cpu - remove_memory_subsection - remove_proc_entry - remove_wait_queue - report_iommu_fault - request_any_context_irq - request_firmware - request_firmware_into_buf - request_firmware_nowait - __request_module - __request_percpu_irq - __request_region - request_threaded_irq - resched_curr - reset_control_assert - reset_control_deassert - reset_control_put - reset_control_reset - resume_cpus - return_address - revalidate_disk_size - rfkill_alloc - rfkill_blocked - rfkill_destroy - rfkill_init_sw_state - rfkill_pause_polling - rfkill_register - rfkill_resume_polling - rfkill_set_hw_state - rfkill_unregister - rhashtable_free_and_destroy - rhashtable_insert_slow - rhltable_init - __rht_bucket_nested - rht_bucket_nested - rht_bucket_nested_insert - rndis_deregister - rndis_free_response - rndis_get_next_response - rndis_msg_parser - rndis_register - rndis_set_host_mac - rndis_set_param_dev - rndis_set_param_medium - rndis_set_param_vendor - rndis_signal_connect - rndis_uninit - root_task_group - round_jiffies - round_jiffies_relative - round_jiffies_up - rpmsg_get_signals - rpmsg_poll - rpmsg_register_device - rpmsg_send - rpmsg_set_signals - rpmsg_trysend - rpmsg_unregister_device - rproc_add - rproc_add_subdev - rproc_alloc - rproc_boot - rproc_coredump - rproc_coredump_add_custom_segment - rproc_coredump_add_segment - rproc_coredump_cleanup - rproc_coredump_set_elf_info - rproc_coredump_using_sections - rproc_del - rproc_free - rproc_get_by_child - rproc_get_by_phandle - rproc_put - rproc_remove_subdev - rproc_report_crash - rproc_shutdown - __rtc_register_device - rtc_time64_to_tm - rtc_tm_to_time64 - rtc_update_irq - rt_mutex_lock - rt_mutex_unlock - rtnl_is_locked - rtnl_link_register - rtnl_link_unregister - rtnl_lock - rtnl_register_module - rtnl_trylock - rtnl_unicast - rtnl_unlock - rtnl_unregister - runqueues - scatterwalk_ffwd - scatterwalk_map_and_copy - sched_clock - sched_feat_keys - sched_feat_names - sched_setattr - sched_set_fifo - sched_set_fifo_low - sched_set_normal - sched_setscheduler - sched_setscheduler_nocheck - sched_show_task - sched_trace_rd_span - sched_uclamp_used - schedule - schedule_hrtimeout - schedule_timeout - schedule_timeout_interruptible - schedule_timeout_uninterruptible - scmi_driver_register - scmi_driver_unregister - scmi_protocol_register - scmi_protocol_unregister - scnprintf - scsi_autopm_get_device - scsi_autopm_put_device - scsi_block_when_processing_errors - scsi_command_size_tbl - scsi_compat_ioctl - scsi_device_get - scsi_device_put - scsi_device_quiesce - scsi_ioctl - scsi_ioctl_block_when_processing_errors - __scsi_iterate_devices - scsi_normalize_sense - __scsi_print_sense - scsi_register_interface - scsi_remove_device - sdev_prefix_printk - __sdhci_add_host - sdhci_add_host - sdhci_cleanup_host - sdhci_cqe_disable - sdhci_cqe_enable - sdhci_cqe_irq - sdhci_enable_clk - sdhci_get_property - sdhci_pltfm_free - sdhci_pltfm_init - sdhci_remove_host - sdhci_reset - sdhci_set_bus_width - sdhci_set_power_noreg - sdhci_setup_host - seq_buf_printf - seq_hex_dump - seq_lseek - seq_open - seq_printf - seq_putc - seq_puts - seq_read - seq_release - seq_vprintf - seq_write - set_cpus_allowed_ptr - set_normalized_timespec64 - set_page_dirty_lock - __SetPageMovable - set_task_cpu - set_user_nice - sg_alloc_table - sg_alloc_table_from_pages - sg_copy_from_buffer - sg_copy_to_buffer - sg_free_table - sg_init_one - sg_init_table - sg_miter_next - sg_miter_start - sg_miter_stop - sg_next - __sg_page_iter_dma_next - __sg_page_iter_next - __sg_page_iter_start - sg_pcopy_from_buffer - sg_pcopy_to_buffer - sg_scsi_ioctl - shmem_file_setup - shmem_mark_page_lazyfree - shmem_read_mapping_page_gfp - shmem_truncate_range - show_rcu_gp_kthreads - show_regs - sigprocmask - si_mem_available - si_meminfo - simple_attr_open - simple_attr_read - simple_attr_release - simple_attr_write - simple_open - simple_read_from_buffer - simple_write_to_buffer - single_open - single_release - si_swapinfo - sk_alloc - skb_add_rx_frag - skb_append_pagefrags - skb_checksum - skb_checksum_help - skb_clone - skb_clone_sk - skb_coalesce_rx_frag - skb_complete_wifi_ack - skb_copy - skb_copy_bits - skb_copy_datagram_iter - skb_copy_expand - skb_dequeue - skb_dequeue_tail - skb_ensure_writable - skb_free_datagram - __skb_get_hash - __skb_gso_segment - __skb_pad - skb_pull - skb_push - skb_put - skb_queue_head - skb_queue_purge - skb_queue_tail - skb_recv_datagram - skb_set_owner_w - skb_store_bits - skb_trim - sk_free - skip_spaces - smp_call_function - smp_call_function_any - smp_call_function_single - snd_card_free - snd_card_new - snd_card_register - snd_info_create_card_entry - snd_info_create_module_entry - snd_info_free_entry - snd_info_register - snd_jack_set_key - snd_pcm_format_width - snd_pcm_hw_constraint_integer - snd_pcm_new - snd_pcm_period_elapsed - snd_pcm_set_managed_buffer_all - snd_pcm_set_ops - snd_pcm_stream_lock - _snd_pcm_stream_lock_irqsave - snd_pcm_stream_unlock - snd_pcm_stream_unlock_irqrestore - snd_soc_add_component_controls - snd_soc_card_get_kcontrol - snd_soc_card_jack_new - snd_soc_component_exit_regmap - snd_soc_component_init_regmap - snd_soc_component_read - snd_soc_component_update_bits - snd_soc_component_write - snd_soc_dai_get_channel_map - snd_soc_dai_set_channel_map - snd_soc_dapm_add_routes - snd_soc_dapm_disable_pin - snd_soc_dapm_force_enable_pin - snd_soc_dapm_get_enum_double - snd_soc_dapm_get_volsw - snd_soc_dapm_ignore_suspend - snd_soc_dapm_kcontrol_widget - snd_soc_dapm_mixer_update_power - snd_soc_dapm_mux_update_power - snd_soc_dapm_new_controls - snd_soc_dapm_new_widgets - snd_soc_dapm_put_enum_double - snd_soc_dapm_put_volsw - snd_soc_dapm_sync - snd_soc_get_enum_double - snd_soc_get_pcm_runtime - snd_soc_get_volsw - snd_soc_info_enum_double - snd_soc_info_multi_ext - snd_soc_info_volsw - snd_soc_jack_report - snd_soc_lookup_component - snd_soc_of_parse_audio_routing - snd_soc_of_parse_card_name - snd_soc_pm_ops - snd_soc_put_enum_double - snd_soc_put_volsw - snd_soc_register_component - snd_soc_rtdcom_lookup - snd_soc_unregister_card - snd_soc_unregister_component - snd_usb_enable_audio_stream - snprintf - soc_device_register - soc_device_unregister - sock_alloc_send_skb - __sock_create - sock_create_kern - sock_gettstamp - sock_init_data - sock_no_accept - sock_no_listen - sock_no_mmap - sock_no_sendpage - sock_no_shutdown - sock_no_socketpair - sock_queue_rcv_skb - sock_register - sock_release - sock_setsockopt - sock_unregister - softnet_data - sort - __spi_alloc_controller - spi_register_controller - __spi_register_driver - spi_setup - spi_sync - spi_unregister_controller - split_page - spmi_controller_add - spmi_controller_alloc - spmi_controller_remove - __spmi_driver_register - spmi_ext_register_read - spmi_ext_register_readl - spmi_ext_register_write - spmi_ext_register_writel - spmi_register_read - spmi_register_write - spmi_register_zero_write - sprintf - sprint_symbol - srcu_barrier - srcu_batches_completed - srcu_init_notifier_head - srcu_notifier_call_chain - srcu_notifier_chain_register - srcu_notifier_chain_unregister - __srcu_read_lock - __srcu_read_unlock - srcutorture_get_gp_data - srcu_torture_stats_print - sscanf - __stack_chk_fail - __stack_chk_guard - stack_depot_fetch - stack_trace_print - stack_trace_save - static_key_disable - static_key_disable_cpuslocked - stop_machine - stop_one_cpu_nowait - strcasecmp - strchr - strchrnul - strcmp - strcpy - strim - strlcat - strlcpy - strlen - strncasecmp - strnchr - strncmp - strncpy - strncpy_from_user - strnlen - strnstr - strpbrk - strrchr - strreplace - strscpy - strsep - strstr - __sw_hweight16 - __sw_hweight32 - __sw_hweight64 - __sw_hweight8 - sync_file_create - sync_file_get_fence - synchronize_irq - synchronize_net - synchronize_rcu - synchronize_rcu_expedited - synchronize_rcu_tasks - synchronize_rcu_tasks_trace - synchronize_srcu - synchronize_srcu_expedited - synth_event_create - synth_event_delete - syscon_node_to_regmap - syscon_regmap_lookup_by_phandle - sysctl_sched_features - sysctl_sched_latency - sysctl_vals - sysfs_add_file_to_group - sysfs_add_link_to_group - sysfs_create_bin_file - sysfs_create_file_ns - sysfs_create_files - sysfs_create_group - sysfs_create_groups - sysfs_create_link - sysfs_emit - __sysfs_match_string - sysfs_notify - sysfs_remove_bin_file - sysfs_remove_file_from_group - sysfs_remove_file_ns - sysfs_remove_files - sysfs_remove_group - sysfs_remove_groups - sysfs_remove_link - sysfs_remove_link_from_group - sysfs_streq - sysrq_mask - system_freezable_wq - system_freezing_cnt - system_highpri_wq - system_long_wq - system_power_efficient_wq - system_state - system_unbound_wq - system_wq - sys_tz - task_active_pid_ns - task_groups - __tasklet_hi_schedule - tasklet_init - tasklet_kill - __tasklet_schedule - tasklet_setup - tasklist_lock - task_may_not_preempt - __task_pid_nr_ns - __task_rq_lock - thermal_cooling_device_register - thermal_cooling_device_unregister - thermal_of_cooling_device_register - thermal_pressure - thermal_zone_device_enable - thermal_zone_device_register - thermal_zone_device_unregister - thermal_zone_device_update - thermal_zone_get_slope - thermal_zone_get_temp - thermal_zone_get_zone_by_name - thermal_zone_of_sensor_register - thermal_zone_of_sensor_unregister - tick_nohz_get_sleep_length - time64_to_tm - timer_unstable_counter_workaround - topology_set_thermal_pressure - topology_update_done - _totalram_pages - total_swapcache_pages - trace_array_get_by_name - trace_array_put - trace_array_set_clr_event - __trace_bprintk - __trace_bputs - trace_clock_local - trace_event_buffer_commit - trace_event_buffer_reserve - trace_event_ignore_this_pid - trace_event_raw_init - trace_event_reg - trace_get_event_file - trace_handle_return - __traceiter_android_rvh_account_irq - __traceiter_android_rvh_build_perf_domains - __traceiter_android_rvh_can_migrate_task - __traceiter_android_rvh_cgroup_force_kthread_migration - __traceiter_android_rvh_check_preempt_wakeup - __traceiter_android_rvh_cpu_cgroup_attach - __traceiter_android_rvh_cpu_cgroup_online - __traceiter_android_rvh_cpufreq_transition - __traceiter_android_rvh_dequeue_task - __traceiter_android_rvh_enqueue_task - __traceiter_android_rvh_find_busiest_queue - __traceiter_android_rvh_find_lowest_rq - __traceiter_android_rvh_flush_task - __traceiter_android_rvh_force_compatible_post - __traceiter_android_rvh_force_compatible_pre - __traceiter_android_rvh_gic_v3_set_affinity - __traceiter_android_rvh_irqs_disable - __traceiter_android_rvh_irqs_enable - __traceiter_android_rvh_migrate_queued_task - __traceiter_android_rvh_new_task_stats - __traceiter_android_rvh_pick_next_entity - __traceiter_android_rvh_place_entity - __traceiter_android_rvh_preempt_disable - __traceiter_android_rvh_preempt_enable - __traceiter_android_rvh_replace_next_task_fair - __traceiter_android_rvh_resume_cpus - __traceiter_android_rvh_sched_balance_rt - __traceiter_android_rvh_sched_cpu_dying - __traceiter_android_rvh_sched_cpu_starting - __traceiter_android_rvh_sched_exec - __traceiter_android_rvh_sched_fork - __traceiter_android_rvh_sched_fork_init - __traceiter_android_rvh_sched_newidle_balance - __traceiter_android_rvh_sched_nohz_balancer_kick - __traceiter_android_rvh_sched_setaffinity - __traceiter_android_rvh_schedule - __traceiter_android_rvh_schedule_bug - __traceiter_android_rvh_select_task_rq_fair - __traceiter_android_rvh_select_task_rq_rt - __traceiter_android_rvh_set_gfp_zone_flags - __traceiter_android_rvh_set_readahead_gfp_mask - __traceiter_android_rvh_set_skip_swapcache_flags - __traceiter_android_rvh_set_task_cpu - __traceiter_android_rvh_tick_entry - __traceiter_android_rvh_try_to_wake_up - __traceiter_android_rvh_try_to_wake_up_success - __traceiter_android_rvh_ttwu_cond - __traceiter_android_rvh_update_cpu_capacity - __traceiter_android_rvh_update_cpus_allowed - __traceiter_android_rvh_update_misfit_status - __traceiter_android_rvh_wake_up_new_task - __traceiter_android_vh_allow_domain_state - __traceiter_android_vh_binder_restore_priority - __traceiter_android_vh_binder_set_priority - __traceiter_android_vh_binder_transaction_init - __traceiter_android_vh_binder_wakeup_ilocked - __traceiter_android_vh_cpu_idle_enter - __traceiter_android_vh_cpu_idle_exit - __traceiter_android_vh_cpuidle_psci_enter - __traceiter_android_vh_cpuidle_psci_exit - __traceiter_android_vh_dump_throttled_rt_tasks - __traceiter_android_vh_freq_table_limits - __traceiter_android_vh_ftrace_dump_buffer - __traceiter_android_vh_ftrace_format_check - __traceiter_android_vh_ftrace_oops_enter - __traceiter_android_vh_ftrace_oops_exit - __traceiter_android_vh_ftrace_size_check - __traceiter_android_vh_gic_resume - __traceiter_android_vh_gpio_block_read - __traceiter_android_vh_iommu_setup_dma_ops - __traceiter_android_vh_ipi_stop - __traceiter_android_vh_jiffies_update - __traceiter_android_vh_logbuf - __traceiter_android_vh_logbuf_pr_cont - __traceiter_android_vh_printk_hotplug - __traceiter_android_vh_rproc_recovery - __traceiter_android_vh_scheduler_tick - __traceiter_android_vh_show_max_freq - __traceiter_android_vh_show_resume_epoch_val - __traceiter_android_vh_show_suspend_epoch_val - __traceiter_android_vh_timer_calc_index - __traceiter_android_vh_ufs_check_int_errors - __traceiter_android_vh_ufs_clock_scaling - __traceiter_android_vh_ufs_compl_command - __traceiter_android_vh_ufs_fill_prdt - __traceiter_android_vh_ufs_prepare_command - __traceiter_android_vh_ufs_send_command - __traceiter_android_vh_ufs_send_tm_command - __traceiter_android_vh_ufs_send_uic_command - __traceiter_android_vh_ufs_update_sdev - __traceiter_android_vh_ufs_update_sysfs - __traceiter_android_vh_update_topology_flags_workfn - __traceiter_binder_transaction_received - __traceiter_cpu_frequency - __traceiter_cpu_frequency_limits - __traceiter_cpu_idle - __traceiter_gpu_mem_total - __traceiter_ipi_entry - __traceiter_ipi_raise - __traceiter_irq_handler_entry - __traceiter_rwmmio_post_read - __traceiter_rwmmio_read - __traceiter_rwmmio_write - __traceiter_sched_overutilized_tp - __traceiter_sched_switch - __traceiter_suspend_resume - __tracepoint_android_rvh_account_irq - __tracepoint_android_rvh_build_perf_domains - __tracepoint_android_rvh_can_migrate_task - __tracepoint_android_rvh_cgroup_force_kthread_migration - __tracepoint_android_rvh_check_preempt_wakeup - __tracepoint_android_rvh_cpu_cgroup_attach - __tracepoint_android_rvh_cpu_cgroup_online - __tracepoint_android_rvh_cpufreq_transition - __tracepoint_android_rvh_dequeue_task - __tracepoint_android_rvh_enqueue_task - __tracepoint_android_rvh_find_busiest_queue - __tracepoint_android_rvh_find_lowest_rq - __tracepoint_android_rvh_flush_task - __tracepoint_android_rvh_force_compatible_post - __tracepoint_android_rvh_force_compatible_pre - __tracepoint_android_rvh_gic_v3_set_affinity - __tracepoint_android_rvh_irqs_disable - __tracepoint_android_rvh_irqs_enable - __tracepoint_android_rvh_migrate_queued_task - __tracepoint_android_rvh_new_task_stats - __tracepoint_android_rvh_pick_next_entity - __tracepoint_android_rvh_place_entity - __tracepoint_android_rvh_preempt_disable - __tracepoint_android_rvh_preempt_enable - __tracepoint_android_rvh_replace_next_task_fair - __tracepoint_android_rvh_resume_cpus - __tracepoint_android_rvh_sched_balance_rt - __tracepoint_android_rvh_sched_cpu_dying - __tracepoint_android_rvh_sched_cpu_starting - __tracepoint_android_rvh_sched_exec - __tracepoint_android_rvh_sched_fork - __tracepoint_android_rvh_sched_fork_init - __tracepoint_android_rvh_sched_newidle_balance - __tracepoint_android_rvh_sched_nohz_balancer_kick - __tracepoint_android_rvh_sched_setaffinity - __tracepoint_android_rvh_schedule - __tracepoint_android_rvh_schedule_bug - __tracepoint_android_rvh_select_task_rq_fair - __tracepoint_android_rvh_select_task_rq_rt - __tracepoint_android_rvh_set_gfp_zone_flags - __tracepoint_android_rvh_set_readahead_gfp_mask - __tracepoint_android_rvh_set_skip_swapcache_flags - __tracepoint_android_rvh_set_task_cpu - __tracepoint_android_rvh_tick_entry - __tracepoint_android_rvh_try_to_wake_up - __tracepoint_android_rvh_try_to_wake_up_success - __tracepoint_android_rvh_ttwu_cond - __tracepoint_android_rvh_update_cpu_capacity - __tracepoint_android_rvh_update_cpus_allowed - __tracepoint_android_rvh_update_misfit_status - __tracepoint_android_rvh_wake_up_new_task - __tracepoint_android_vh_allow_domain_state - __tracepoint_android_vh_alter_rwsem_list_add - __tracepoint_android_vh_binder_restore_priority - __tracepoint_android_vh_binder_set_priority - __tracepoint_android_vh_binder_transaction_init - __tracepoint_android_vh_binder_wakeup_ilocked - __tracepoint_android_vh_check_uninterruptible_tasks - __tracepoint_android_vh_check_uninterruptible_tasks_dn - __tracepoint_android_vh_cpu_idle_enter - __tracepoint_android_vh_cpu_idle_exit - __tracepoint_android_vh_cpuidle_psci_enter - __tracepoint_android_vh_cpuidle_psci_exit - __tracepoint_android_vh_dump_throttled_rt_tasks - __tracepoint_android_vh_freq_table_limits - __tracepoint_android_vh_ftrace_dump_buffer - __tracepoint_android_vh_ftrace_format_check - __tracepoint_android_vh_ftrace_oops_enter - __tracepoint_android_vh_ftrace_oops_exit - __tracepoint_android_vh_ftrace_size_check - __tracepoint_android_vh_gic_resume - __tracepoint_android_vh_gpio_block_read - __tracepoint_android_vh_iommu_setup_dma_ops - __tracepoint_android_vh_ipi_stop - __tracepoint_android_vh_jiffies_update - __tracepoint_android_vh_logbuf - __tracepoint_android_vh_logbuf_pr_cont - __tracepoint_android_vh_oom_check_panic - __tracepoint_android_vh_printk_hotplug - __tracepoint_android_vh_process_killed - __tracepoint_android_vh_psi_event - __tracepoint_android_vh_psi_group - __tracepoint_android_vh_rproc_recovery - __tracepoint_android_vh_scheduler_tick - __tracepoint_android_vh_shmem_alloc_page - __tracepoint_android_vh_show_max_freq - __tracepoint_android_vh_show_resume_epoch_val - __tracepoint_android_vh_show_suspend_epoch_val - __tracepoint_android_vh_timer_calc_index - __tracepoint_android_vh_ufs_check_int_errors - __tracepoint_android_vh_ufs_clock_scaling - __tracepoint_android_vh_ufs_compl_command - __tracepoint_android_vh_ufs_fill_prdt - __tracepoint_android_vh_ufs_prepare_command - __tracepoint_android_vh_ufs_send_command - __tracepoint_android_vh_ufs_send_tm_command - __tracepoint_android_vh_ufs_send_uic_command - __tracepoint_android_vh_ufs_update_sdev - __tracepoint_android_vh_ufs_update_sysfs - __tracepoint_android_vh_update_topology_flags_workfn - __tracepoint_binder_transaction_received - __tracepoint_cpu_frequency - __tracepoint_cpu_frequency_limits - __tracepoint_cpu_idle - __tracepoint_gpu_mem_total - __tracepoint_ipi_entry - __tracepoint_ipi_raise - __tracepoint_irq_handler_entry - tracepoint_probe_register - tracepoint_probe_register_prio - tracepoint_probe_unregister - __tracepoint_rwmmio_post_read - __tracepoint_rwmmio_read - __tracepoint_rwmmio_write - __tracepoint_sched_overutilized_tp - __tracepoint_sched_switch - __tracepoint_suspend_resume - trace_print_array_seq - trace_print_flags_seq - trace_print_hex_seq - __trace_printk - trace_print_symbols_seq - trace_raw_output_prep - trace_seq_printf - trace_seq_putc - tracing_off - try_module_get - try_wait_for_completion - tty_flip_buffer_push - __tty_insert_flip_char - tty_insert_flip_string_fixed_flag - typec_altmode_get_partner - typec_altmode_update_active - typec_get_drvdata - typec_partner_register_altmode - typec_port_register_altmode - typec_register_partner - typec_register_port - typec_set_data_role - typec_set_pwr_opmode - typec_set_pwr_role - typec_unregister_altmode - typec_unregister_partner - typec_unregister_port - uart_add_one_port - uart_console_device - uart_console_write - uart_get_baud_rate - uart_insert_char - uart_parse_options - uart_register_driver - uart_remove_one_port - uart_resume_port - uart_set_options - uart_suspend_port - uart_try_toggle_sysrq - uart_unregister_driver - uart_update_timeout - uart_write_wakeup - uclamp_eff_value - ucsi_connector_change - ucsi_create - ucsi_destroy - ucsi_get_drvdata - ucsi_register - ucsi_set_drvdata - ucsi_unregister - __udelay - ufshcd_auto_hibern8_update - ufshcd_dme_get_attr - ufshcd_dme_set_attr - ufshcd_dump_regs - ufshcd_fixup_dev_quirks - ufshcd_get_local_unipro_ver - ufshcd_hold - ufshcd_pltfrm_init - ufshcd_pltfrm_resume - ufshcd_pltfrm_runtime_idle - ufshcd_pltfrm_runtime_resume - ufshcd_pltfrm_runtime_suspend - ufshcd_pltfrm_shutdown - ufshcd_pltfrm_suspend - ufshcd_query_attr - ufshcd_query_descriptor_retry - ufshcd_query_flag - ufshcd_release - ufshcd_remove - ufshcd_shutdown - ufshcd_uic_hibern8_enter - ufshcd_uic_hibern8_exit - __uio_register_device - uio_unregister_device - unlock_page - unmap_mapping_range - unregister_blkdev - __unregister_chrdev - unregister_chrdev_region - unregister_console - unregister_die_notifier - unregister_ftrace_export - unregister_inet6addr_notifier - unregister_inetaddr_notifier - unregister_kprobe - unregister_kretprobe - unregister_module_notifier - unregister_netdev - unregister_netdevice_many - unregister_netdevice_notifier - unregister_netdevice_queue - unregister_netevent_notifier - unregister_oom_notifier - unregister_pernet_device - unregister_pm_notifier - unregister_reboot_notifier - unregister_restart_handler - unregister_rpmsg_driver - unregister_shrinker - unregister_syscore_ops - unregister_sysctl_table - up - update_devfreq - update_rq_clock - up_read - up_write - usb_add_gadget - usb_add_gadget_udc - usb_add_phy_dev - usb_alloc_coherent - usb_alloc_dev - usb_alloc_urb - usb_amd_dev_put - usb_amd_pt_check_port - usb_amd_quirk_pll_check - usb_amd_quirk_pll_disable - usb_amd_quirk_pll_enable - usb_asmedia_modifyflowcontrol - usb_assign_descriptors - usb_autopm_get_interface - usb_autopm_put_interface - usb_bulk_msg - usb_composite_setup_continue - usb_control_msg - __usb_create_hcd - usb_debug_root - usb_decode_ctrl - usb_del_gadget_udc - usb_deregister - usb_disabled - usb_disable_xhci_ports - usb_enable_intel_xhci_ports - usb_ep_alloc_request - usb_ep_autoconfig - usb_ep_dequeue - usb_ep_disable - usb_ep_enable - usb_ep_free_request - usb_ep_queue - usb_ep_set_halt - usb_ep_set_maxpacket_limit - usb_find_common_endpoints - usb_free_all_descriptors - usb_free_coherent - usb_free_urb - usb_function_register - usb_function_unregister - usb_gadget_giveback_request - usb_gadget_map_request_by_dev - usb_gadget_set_state - usb_gadget_udc_reset - usb_gadget_unmap_request_by_dev - usb_gadget_vbus_connect - usb_gadget_vbus_disconnect - usb_gadget_vbus_draw - usb_gadget_wakeup - usb_get_dr_mode - usb_get_maximum_speed - usb_get_urb - usb_gstrings_attach - usb_hcd_end_port_resume - usb_hc_died - usb_hcd_irq - usb_hcd_map_urb_for_dma - usb_hcd_pci_pm_ops - usb_hcd_pci_probe - usb_hcd_pci_remove - usb_hcd_pci_shutdown - usb_hcd_platform_shutdown - usb_hcd_start_port_resume - usb_hub_clear_tt_buffer - usb_hub_find_child - usb_ifnum_to_if - usb_initialize_gadget - usb_interface_id - usb_kill_urb - usb_phy_set_charger_current - usb_poison_urb - usb_put_dev - usb_put_function_instance - usb_register_driver - usb_register_notify - usb_remove_phy - usb_role_switch_find_by_fwnode - usb_role_switch_get_drvdata - usb_role_switch_register - usb_role_switch_set_role - usb_role_switch_unregister - usb_root_hub_lost_power - usb_set_device_state - usb_speed_string - usb_string_id - usb_submit_urb - usb_unregister_notify - usb_wakeup_notification - __usecs_to_jiffies - usleep_range - v4l2_compat_ioctl32 - v4l2_ctrl_find - v4l2_ctrl_handler_free - v4l2_ctrl_handler_init_class - v4l2_ctrl_new_custom - v4l2_ctrl_new_std - v4l2_ctrl_new_std_menu - v4l2_device_register - v4l2_device_register_subdev - __v4l2_device_register_subdev_nodes - v4l2_device_unregister - v4l2_device_unregister_subdev - v4l2_event_dequeue - v4l2_event_pending - v4l2_event_queue - v4l2_event_queue_fh - v4l2_event_subscribe - v4l2_event_unsubscribe - v4l2_fh_add - v4l2_fh_del - v4l2_fh_exit - v4l2_fh_init - v4l2_fh_open - v4l2_fh_release - v4l2_s_ctrl - v4l2_subdev_call_wrappers - v4l2_subdev_init - vabits_actual - vb2_buffer_done - vb2_dqbuf - vb2_qbuf - vb2_queue_init - vb2_queue_release - vb2_reqbufs - vb2_streamoff - vb2_streamon - vchan_dma_desc_free_list - vchan_find_desc - vchan_init - vchan_tx_desc_free - vchan_tx_submit - verify_pkcs7_signature - vfree - video_devdata - video_device_alloc - video_device_release - video_device_release_empty - video_ioctl2 - __video_register_device - video_unregister_device - vmalloc - vmalloc_nr_pages - vmalloc_to_page - vmalloc_to_pfn - vmap - vmemdup_user - vm_event_states - vmf_insert_mixed - vmf_insert_pfn - vm_get_page_prot - vm_insert_page - vm_iomap_memory - vm_map_pages - vm_memory_committed - vm_mmap - vm_munmap - vm_node_stat - vm_zone_stat - vprintk - vscnprintf - vsnprintf - vunmap - vzalloc - wait_for_completion - wait_for_completion_interruptible - wait_for_completion_interruptible_timeout - wait_for_completion_killable - wait_for_completion_timeout - __wait_rcu_gp - wait_woken - __wake_up - wake_up_if_idle - __wake_up_locked - wake_up_process - wakeup_source_register - wakeup_source_unregister - __warn_printk - wireless_nlevent_flush - wireless_send_event - woken_wake_function - work_busy - ww_mutex_lock - ww_mutex_unlock - __xa_alloc - xa_destroy - xa_erase - xa_find - xa_find_after - xa_load - xa_store - __xfrm_decode_session - xfrm_lookup - xfrm_output - xhci_alloc_command - xhci_alloc_erst - xhci_free_command - xhci_free_erst - xhci_get_endpoint_index - xhci_queue_stop_endpoint - xhci_ring_alloc - xhci_ring_cmd_db - xhci_ring_free - xhci_trb_virt_to_dma - zone_watermark_ok - zone_watermark_ok_safe diff --git a/android/abi_gki_aarch64_unisoc b/android/abi_gki_aarch64_unisoc deleted file mode 100644 index 7387328527ff..000000000000 --- a/android/abi_gki_aarch64_unisoc +++ /dev/null @@ -1,2534 +0,0 @@ -[abi_symbol_list] -# commonly used symbols - add_timer - add_uevent_var - add_wait_queue - add_to_page_cache_lru - aes_encrypt - aes_expandkey - alloc_anon_inode - alloc_chrdev_region - alloc_netdev_mqs - alloc_pages_exact - __alloc_pages_nodemask - __alloc_percpu - __alloc_skb - alloc_workqueue - __arch_copy_from_user - __arch_copy_in_user - __arch_copy_to_user - arm64_const_caps_ready - arp_tbl - atomic_notifier_call_chain - atomic_notifier_chain_register - atomic_notifier_chain_unregister - bdget_disk - bdput - bio_add_page - bio_alloc_bioset - bio_associate_blkg - bio_endio - bio_put - bit_wait - blk_alloc_queue - blk_finish_plug - blk_start_plug - blk_queue_flag_clear - blk_queue_flag_set - blk_queue_io_min - blk_queue_io_opt - blk_queue_make_request - blk_queue_max_discard_sectors - blk_queue_max_write_zeroes_sectors - blk_queue_physical_block_size - blocking_notifier_chain_register - blocking_notifier_chain_unregister - bpf_trace_run1 - bpf_trace_run2 - bpf_trace_run3 - bpf_trace_run4 - __breadahead - bus_register - bus_set_iommu - bus_unregister - __close_fd - __ClearPageMovable - call_rcu - cancel_delayed_work - cancel_delayed_work_sync - cancel_work_sync - cdev_add - cdev_del - cdev_device_add - cdev_device_del - cdev_init - __cfi_slowpath - __check_object_size - __class_create - class_destroy - class_find_device - clear_nlink - clear_inode - clk_bulk_disable - clk_bulk_enable - clk_bulk_prepare - clk_bulk_unprepare - clk_disable - clk_enable - clk_fixed_factor_ops - clk_get_rate - clk_prepare - clk_put - clk_set_parent - clk_set_rate - clk_unprepare - clocks_calc_mult_shift - clockevents_config_and_register - __clocksource_register_scale - compat_alloc_user_space - complete - complete_all - config_ep_by_speed - config_group_init_type_name - contig_page_data - console_lock - console_unlock - __const_udelay - cpu_have_feature - cpu_hwcap_keys - cpu_hwcaps - cpumask_next - cpufreq_add_update_util_hook - cpufreq_remove_update_util_hook - cpu_number - __cpu_online_mask - __cpu_possible_mask - crypto_alloc_base - crypto_ahash_digest - crypto_ahash_setkey - crypto_alloc_ahash - crypto_destroy_tfm - crypto_has_alg - crypto_inc - __crypto_memneq - crypto_register_aead - crypto_register_shash - crypto_register_shashes - crypto_unregister_aead - crypto_unregister_shash - crypto_unregister_shashes - __crypto_xor - csum_ipv6_magic - csum_partial - __dynamic_netdev_dbg - d_make_root - d_splice_alias - debugfs_create_bool - debugfs_create_dir - debugfs_create_file - debugfs_create_u32 - debugfs_initialized - debugfs_remove - debugfs_remove_recursive - debugfs_create_symlink - dec_zone_page_state - default_llseek - delayed_work_timer_fn - del_timer - del_timer_sync - destroy_workqueue - dev_driver_string - _dev_err - dev_fwnode - dev_get_by_name - dev_get_regmap - device_add - device_connection_find_match - device_create - device_create_file - device_destroy - device_initialize - device_init_wakeup - device_link_add - device_match_fwnode - device_match_name - device_property_present - device_property_read_string - device_property_read_u32_array - device_register - device_remove_file - device_set_wakeup_capable - device_unregister - _dev_info - __dev_kfree_skb_any - devm_add_action - devm_backlight_device_register - devm_clk_bulk_get - devm_clk_bulk_get_all - devm_clk_get - devm_clk_get_optional - devm_free_irq - devm_gpiochip_add_data - devm_gpiod_get - devm_gpio_free - devm_gpio_request - devm_hwspin_lock_request_specific - __devm_iio_device_register - devm_ioremap_nocache - devm_ioremap_resource - devm_kfree - devm_kmalloc - devm_kmemdup - devm_mfd_add_devices - devm_nvmem_register - devm_of_platform_populate - devm_pinctrl_get - devm_pinctrl_put - devm_power_supply_register - __devm_regmap_init - __devm_regmap_init_i2c - __devm_regmap_init_mmio_clk - devm_regulator_get - devm_regulator_register - devm_request_threaded_irq - devm_spi_register_controller - devm_usb_get_phy - devm_usb_get_phy_by_phandle - dev_queue_xmit - dev_set_name - _dev_warn - disable_irq - disable_irq_nosync - dma_alloc_attrs - dma_direct_map_page - dma_direct_sync_single_for_cpu - dma_direct_sync_single_for_device - dma_direct_unmap_page - dma_fence_release - dma_fence_wait_timeout - dma_free_attrs - dma_heap_add - dma_heap_get_dev - dma_heap_get_name - dma_max_mapping_size - dma_set_mask - down - dput - driver_register - driver_unregister - drm_atomic_helper_plane_destroy_state - drm_atomic_helper_plane_duplicate_state - drm_atomic_helper_plane_reset - drm_atomic_helper_setup_commit - drm_compat_ioctl - drm_dbg - drm_dev_alloc - drm_dev_put - drm_dev_register - drm_err - drm_ioctl - drm_mm_init - drm_mm_insert_node_in_range - drm_mm_remove_node - drm_mm_takedown - drm_mode_config_cleanup - drm_mode_config_init - drm_open - drm_plane_create_color_properties - drm_poll - drm_read - drm_release - dst_release - dump_stack - enable_irq - ether_setup - eth_type_trans - event_triggers_call - extcon_find_edev_by_node - extcon_get_edev_by_phandle - extcon_get_state - fb_mode_option - __find_get_block - find_next_bit - finish_wait - flush_work - flush_workqueue - fpsimd_context_busy - fput - free_irq - free_netdev - __free_pages - free_pages_exact - free_percpu - freezing_slow_path - fs_bio_set - fs_ftype_to_dtype - fsync_bdev - fwnode_property_present - fwnode_property_read_string - gen_pool_avail - generic_end_io_acct - generic_file_llseek - generic_handle_irq - generic_read_dir - generic_ro_fops - generic_start_io_acct - genl_register_family - genl_unregister_family - gen_pool_add_owner - gen_pool_alloc_algo_owner - gen_pool_create - gen_pool_free_owner - get_cpu_device - __get_free_pages - get_governor_parent_kobj - get_random_bytes - gov_attr_set_get - gov_attr_set_init - gov_attr_set_put - governor_sysfs_ops - gpiochip_get_data - gpiochip_line_is_irq - gpiod_direction_input - gpiod_direction_output_raw - gpiod_get - gpiod_get_raw_value - gpiod_set_raw_value - gpiod_set_raw_value_cansleep - gpiod_to_chip - gpiod_to_irq - gpio_free - gpio_request - gpio_to_desc - handle_bad_irq - handle_edge_irq - handle_level_irq - have_governor_per_policy - i2c_del_driver - i2c_register_driver - i2c_smbus_read_byte_data - i2c_smbus_write_byte_data - i2c_transfer_buffer_flags - ida_alloc_range - ida_destroy - ida_free - idr_alloc - idr_destroy - idr_find - idr_for_each - idr_remove - iget_failed - iget5_locked - ignore_console_lock_warning - igrab - inet_proto_csum_replace4 - init_net - __init_rwsem - init_timer_key - init_user_ns - init_wait_entry - init_pseudo - init_special_inode - __init_waitqueue_head - inc_zone_page_state - inode_init_once - inode_nohighmem - input_alloc_absinfo - input_allocate_device - input_event - input_free_device - input_mt_get_slot_by_key - input_mt_sync_frame - input_register_device - iommu_alloc_resv_region - iommu_attach_device - iommu_detach_device - iommu_device_link - iommu_device_register - iommu_device_sysfs_add - iommu_device_sysfs_remove - iommu_device_unlink - iommu_device_unregister - iommu_dma_get_resv_regions - iommu_domain_alloc - iommu_domain_free - iommu_domain_get_attr - iommu_domain_set_attr - iommu_fwspec_add_ids - iommu_fwspec_free - iommu_get_dma_cookie - iommu_get_domain_for_dev - iommu_group_alloc - iommu_group_get - iommu_group_get_for_dev - iommu_group_get_iommudata - iommu_group_put - iommu_group_ref_get - iommu_group_remove_device - iommu_group_set_iommudata - iommu_map - iommu_map_sg - iommu_present - iommu_put_dma_cookie - iommu_set_fault_handler - iommu_unmap - __ioremap - iounmap - iput - ip6t_alloc_initial_table - ip6t_do_table - ip6t_register_table - ip6t_unregister_table - ip_route_output_flow - ipv4_redirect - ipv4_update_pmtu - ir_lirc_scancode_event - ir_raw_gen_manchester - ir_raw_gen_pd - ir_raw_handler_register - ir_raw_handler_unregister - ir_raw_gen_pl - irq_find_mapping - irq_get_irq_data - irq_modify_status - irq_of_parse_and_map - irq_set_irq_type - irq_set_irq_wake - irq_work_sync - is_console_locked - jiffies - jiffies_to_msecs - kern_mount - kern_unmount - kernel_kobj - kasprintf - kernel_neon_begin - kernel_neon_end - __kfifo_alloc - __kfifo_free - __kfifo_in - __kfifo_out - kfree - kfree_skb - kill_anon_super - kimage_vaddr - kimage_voffset - __kmalloc - kmalloc_caches - kmalloc_order_trace - kmem_cache_alloc - kmem_cache_alloc_trace - kmem_cache_create - kmem_cache_destroy - kmem_cache_free - kmemdup - kobject_create_and_add - kobject_uevent_env - kstrndup - kstrtou16 - kstrtobool - kstrtoint - kstrtoll - kstrtouint - kstrtoull - kthread_create_on_node - kthread_should_stop - kthread_stop - ktime_get - ktime_get_mono_fast_ns - ktime_get_real_seconds - ktime_get_real_ts64 - kzfree - LZ4_decompress_safe_partial - lzo1x_decompress_safe - lzorle1x_1_compress - lzo1x_1_compress - __list_add_valid - __list_del_entry_valid - memcpy - __memcpy_fromio - memmove - memparse - memset - memset64 - misc_deregister - misc_register - mod_node_page_state - mod_timer - module_put - __msecs_to_jiffies - msleep - __mutex_init - mutex_lock - mutex_lock_interruptible - mutex_trylock - mutex_unlock - nd_tbl - neigh_destroy - __netdev_alloc_skb - __num_online_cpus - netif_carrier_off - netif_carrier_on - netif_rx_ni - netif_tx_wake_queue - nf_conntrack_destroy - nf_conntrack_find_get - nf_ct_get_tuplepr - nf_ct_invert_tuple - nf_ct_l4proto_find - nf_register_net_hooks - nf_unregister_net_hooks - nr_cpu_ids - nvmem_cell_get - nvmem_cell_put - nvmem_cell_read - of_address_to_resource - of_alias_get_id - of_clk_get - of_clk_get_parent_count - of_count_phandle_with_args - of_device_get_match_data - of_device_is_available - of_device_is_compatible - of_dev_put - of_find_compatible_node - of_find_device_by_node - of_find_node_by_name - of_find_property - of_get_child_by_name - of_get_named_gpio_flags - of_get_next_available_child - of_get_next_child - of_get_property - of_get_regulator_init_data - of_graph_get_remote_node - of_irq_get - of_match_node - of_nvmem_cell_get - of_parse_phandle - of_parse_phandle_with_args - of_parse_phandle_with_fixed_args - of_platform_depopulate - of_platform_populate - of_property_count_elems_of_size - of_property_match_string - of_property_read_string - of_property_read_u32_index - of_property_read_u64 - of_property_read_variable_u32_array - of_prop_next_string - oops_in_progress - out_of_line_wait_on_bit_lock - overflowgid - overflowuid - panic - page_endio - page_get_link - page_mapping - pagecache_get_page - param_ops_charp - param_ops_uint - param_ops_ushort - __pci_register_driver - pci_set_master - pci_unregister_driver - PDE_DATA - __per_cpu_offset - perf_trace_buf_alloc - perf_trace_run_bpf_submit - pfn_valid - pinctrl_lookup_state - pinctrl_select_state - pinctrl_pm_select_default_state - pinctrl_pm_select_sleep_state - platform_bus_type - platform_device_add - platform_device_add_properties - platform_device_add_resources - platform_device_alloc - platform_device_put - platform_device_register - platform_device_register_full - platform_device_unregister - __platform_driver_register - platform_driver_unregister - platform_get_irq - platform_get_irq_byname - platform_get_resource - platform_get_resource_byname - pm_power_off - __pm_relax - pm_runtime_allow - __pm_runtime_disable - pm_runtime_enable - pm_runtime_forbid - pm_runtime_force_resume - pm_runtime_force_suspend - __pm_runtime_idle - __pm_runtime_resume - pm_runtime_set_autosuspend_delay - __pm_runtime_set_status - __pm_runtime_suspend - __pm_runtime_use_autosuspend - __pm_stay_awake - pm_wakeup_ws_event - posix_acl_access_xattr_handler - posix_acl_default_xattr_handler - posix_acl_from_xattr - power_supply_changed - power_supply_get_battery_info - power_supply_get_by_name - power_supply_get_drvdata - power_supply_get_property - power_supply_powers - power_supply_put - ppp_input - ppp_register_compressor - ppp_unregister_compressor - preempt_schedule - preempt_schedule_notrace - prepare_to_wait_event - printk - proc_create - proc_create_data - proc_create_seq_private - proc_mkdir - __pskb_copy_fclone - pskb_expand_head - put_device - put_pages_list - put_tty_driver - queue_delayed_work_on - queue_work_on - ___ratelimit - _raw_read_lock - _raw_read_unlock - _raw_spin_lock - _raw_spin_lock_bh - _raw_spin_lock_irq - _raw_spin_lock_irqsave - _raw_spin_unlock - _raw_spin_unlock_bh - _raw_spin_unlock_irq - _raw_spin_unlock_irqrestore - _raw_write_lock - _raw_write_unlock - __rcu_read_lock - __rcu_read_unlock - radix_tree_preload - radix_tree_delete - radix_tree_gang_lookup - radix_tree_insert - radix_tree_lookup - rc_map_unregister - rc_repeat - rc_keydown - rc_map_register - rdev_get_drvdata - refcount_dec_and_test_checked - refcount_inc_checked - __refrigerator - __register_chrdev - read_cache_page - read_cache_page_gfp - register_filesystem - register_pernet_subsys - register_pm_notifier - regmap_read - regmap_update_bits_base - regmap_write - regulator_disable - regulator_disable_regmap - regulator_enable - regulator_enable_regmap - regulator_get_voltage_sel_regmap - regulator_is_enabled_regmap - regulator_list_voltage_linear - regulator_map_voltage_linear - regulator_set_voltage_sel_regmap - release_firmware - remap_pfn_range - remove_proc_entry - remove_wait_queue - __request_module - request_threaded_irq - reset_control_assert - reset_control_deassert - revalidate_disk - rfkill_alloc - rfkill_destroy - rfkill_init_sw_state - rfkill_register - rfkill_unregister - __SetPageMovable - sched_clock - sched_setscheduler - schedule - schedule_timeout - schedule_timeout_interruptible - scnprintf - seq_lseek - seq_printf - seq_putc - seq_puts - seq_read - set_nlink - set_normalized_timespec64 - set_user_nice - sg_init_table - sg_miter_next - sg_miter_start - sg_miter_stop - sg_nents - sg_next - simple_attr_open - simple_attr_read - simple_attr_release - simple_attr_write - simple_get_link - simple_read_from_buffer - simple_strtol - single_open - single_release - skb_clone - skb_copy - skb_cow_data - skb_ensure_writable - skb_push - skb_put - skb_realloc_headroom - skb_to_sgvec_nomark - skb_trim - skcipher_walk_aead_decrypt - skcipher_walk_aead_encrypt - skcipher_walk_done - skcipher_walk_virt - sk_free - snd_info_create_card_entry - snd_info_free_entry - snd_info_get_line - snd_info_register - snd_pcm_hw_constraint_minmax - snd_pcm_lib_ioctl - snd_pcm_period_elapsed - snd_soc_add_component_controls - snd_soc_dapm_disable_pin - snd_soc_dapm_enable_pin - snd_soc_dapm_ignore_suspend - snd_soc_dapm_kcontrol_dapm - snd_soc_dapm_put_enum_double - snd_soc_dapm_put_volsw - snd_soc_dapm_sync - snd_soc_info_enum_double - snd_soc_info_volsw - snd_soc_pm_ops - snd_soc_register_component - snd_soc_unregister_component - snprintf - __spi_alloc_controller - sprintf - sscanf - __stack_chk_fail - __stack_chk_guard - strcasecmp - strcat - strchr - strcmp - strcpy - strlcat - strlcpy - strlen - strncasecmp - strncmp - strncpy - strncpy_from_user - strnlen - strnstr - strstr - __sw_hweight32 - __sw_hweight64 - submit_bio - sync_filesystem - synchronize_irq - syscon_regmap_lookup_by_phandle - syscon_regmap_lookup_by_phandle_args - sysfs_create_bin_file - sysfs_create_file_ns - sysfs_create_group - sysfs_create_groups - sysfs_create_link - __sysfs_match_string - sysfs_notify - sysfs_remove_bin_file - sysfs_remove_file_ns - sysfs_remove_group - sysfs_remove_groups - sysfs_remove_link - sysfs_streq - system_freezable_wq - system_freezing_cnt - system_unbound_wq - system_wq - sys_tz - tasklet_init - tasklet_kill - __tasklet_schedule - thermal_zone_get_zone_by_name - timer_of_init - trace_define_field - trace_event_buffer_commit - trace_event_buffer_reserve - trace_event_ignore_this_pid - trace_event_raw_init - trace_event_reg - trace_handle_return - trace_raw_output_prep - trace_seq_printf - try_module_get - __tty_alloc_driver - tty_flip_buffer_push - __tty_insert_flip_char - tty_insert_flip_string_fixed_flag - tty_kref_put - tty_port_close - tty_port_destroy - tty_port_hangup - tty_port_init - tty_port_link_device - tty_port_open - tty_port_register_device - tty_port_tty_get - tty_port_tty_wakeup - tty_register_driver - tty_set_operations - tty_standard_install - tty_std_termios - tty_termios_baud_rate - tty_unregister_device - tty_unregister_driver - tty_vhangup - __ubsan_handle_cfi_check_fail_abort - __udelay - __unregister_chrdev - unlock_new_inode - unlock_page - unregister_filesystem - unregister_chrdev_region - unregister_pernet_subsys - up - usb_add_gadget_udc - usb_alloc_coherent - usb_alloc_urb - usb_autopm_get_interface - usb_autopm_get_interface_no_resume - usb_autopm_put_interface - usb_control_msg - usb_del_gadget_udc - usb_deregister - usb_ep_alloc_request - usb_ep_autoconfig - usb_ep_dequeue - usb_ep_enable - usb_ep_free_request - usb_ep_queue - usb_ep_set_maxpacket_limit - usb_find_common_endpoints - usb_free_coherent - usb_free_urb - usb_function_register - usb_function_unregister - usb_gadget_giveback_request - usb_gadget_udc_reset - usb_get_dr_mode - usb_get_intf - usb_hcd_is_primary_hcd - usb_interface_id - usb_kill_urb - usb_phy_get_charger_current - usb_phy_set_charger_current - usb_put_function_instance - usb_put_intf - usb_register_driver - usb_submit_urb - usleep_range - vabits_actual - vfree - vmalloc - vm_map_ram - vm_unmap_aliases - vm_unmap_ram - vm_iomap_memory - vsnprintf - vunmap - wait_for_completion - wait_for_completion_interruptible - wait_for_completion_interruptible_timeout - wait_for_completion_timeout - __wake_up - __wake_up_locked - wake_up_bit - wake_up_process - wakeup_source_add - wakeup_source_create - wakeup_source_destroy - wakeup_source_register - wakeup_source_remove - wakeup_source_unregister - __warn_printk - xfrm4_protocol_deregister - xfrm4_protocol_register - xfrm4_rcv - xfrm_aalg_get_byname - xfrm_input - xfrm_input_resume - xfrm_output_resume - xfrm_register_type - __xfrm_state_destroy - xfrm_state_lookup - xfrm_unregister_type - xt_register_match - xt_register_matches - xt_register_target - xt_register_targets - xt_unregister_match - xt_unregister_matches - xt_unregister_target - xt_unregister_targets - -# required by blk-mq-virtio.ko - blk_mq_map_queues - -# required by cdc-acm.ko - capable - cdc_parse_cdc_header - default_wake_function - refcount_inc_not_zero_checked - tty_port_put - tty_port_tty_hangup - usb_anchor_urb - usb_autopm_get_interface_async - usb_autopm_put_interface_async - usb_clear_halt - usb_driver_claim_interface - usb_driver_release_interface - usb_get_from_anchor - usb_ifnum_to_if - -# required by charger-manager.ko - alarm_cancel - alarm_expires_remaining - alarm_init - alarm_start - alarmtimer_get_rtcdev - devm_kasprintf - ns_to_timespec64 - orderly_poweroff - power_supply_set_property - regulator_force_disable - regulator_set_current_limit - thermal_zone_get_temp - -# required by clk-sprd.ko - clk_hw_get_num_parents - clk_hw_get_parent - clk_hw_is_enabled - __clk_mux_determine_rate - devm_clk_hw_register - devm_of_clk_add_hw_provider - divider_get_val - divider_recalc_rate - divider_round_rate_parent - of_clk_hw_onecell_get - -# required by cpufreq_userspace.ko - __cpufreq_driver_target - cpufreq_register_governor - cpufreq_unregister_governor - -# required by dwc3-haps.ko - pcim_enable_device - -# required by dwc3-of-simple.ko - clk_bulk_get_all - clk_bulk_put_all - of_reset_control_array_get - reset_control_put - reset_control_reset - -# required by dwc3-qcom.ko - devm_extcon_register_notifier - devm_reset_control_array_get - -# required by dwc3.ko - extcon_register_notifier - extcon_unregister_notifier - usb_gadget_map_request_by_dev - usb_gadget_set_state - -# required by exfat.ko - __blockdev_direct_IO - block_write_full_page - __bread_gfp - __brelse - cont_write_begin - current_time - d_find_alias - d_instantiate - d_move - drop_nlink - filemap_fdatawait_range - filemap_fdatawrite_range - full_name_hash - generic_block_bmap - generic_cont_expand_simple - generic_fh_to_dentry - generic_fh_to_parent - generic_file_fsync - generic_file_mmap - generic_file_read_iter - generic_file_splice_read - generic_file_write_iter - generic_fillattr - generic_write_end - __getblk_gfp - ilookup - inc_nlink - in_group_p - __insert_inode_hash - invalidate_inode_buffers - iunique - kill_block_super - kvfree - kvmalloc_node - load_nls - __lock_buffer - __lock_page - new_inode - mark_buffer_dirty - __mark_inode_dirty - match_int - match_octal - match_strdup - match_token - mktime64 - mount_bdev - mpage_readpage - mpage_readpages - mpage_writepages - __remove_inode_hash - setattr_copy - setattr_prepare - sb_min_blocksize - sb_set_blocksize - strscpy - sync_blockdev - sync_dirty_buffer - sync_mapping_buffers - time64_to_tm - touch_buffer - trace_print_symbols_seq - truncate_inode_pages - truncate_pagecache - truncate_setsize - unload_nls - unlock_buffer - utf16s_to_utf8s - utf8s_to_utf16s - write_inode_now - -# required by fan53555.ko - regulator_set_voltage_time_sel - -# required by focaltech_ats.ko - devm_input_allocate_device - devm_regulator_put - i2c_new_probed_device - i2c_transfer - input_mt_init_slots - input_mt_report_slot_state - input_set_abs_params - input_set_capability - kobject_put - of_find_i2c_adapter_by_node - of_property_read_variable_u8_array - request_firmware_nowait - -# required by gpio-eic-sprd.ko - gpiochip_find - -# required by gpio-pmic-eic-sprd.ko - handle_nested_irq - -# required by gpio-sprd.ko - __platform_driver_probe - -# required by i2c-sprd.ko - i2c_add_numbered_adapter - i2c_del_adapter - -# required by img_mem.ko - dma_direct_map_sg - dma_direct_sync_sg_for_cpu - dma_direct_sync_sg_for_device - dma_direct_unmap_sg - idr_get_next - sg_alloc_table - sg_free_table - vsprintf - -# required by ims_bridge.ko - in4_pton - in6_pton - inet_select_addr - ip6_local_out - ip6_route_output_flags - ip_local_out - ipv6_dev_get_saddr - mempool_alloc - mempool_alloc_slab - mempool_create - mempool_destroy - mempool_free - mempool_free_slab - nf_ct_get_tuplepr - nf_ct_invert_tuple - param_ops_int - prandom_u32 - proc_create_net_data - __pskb_pull_tail - skb_checksum_help - rcu_barrier - strim - xfrm_lookup - completion_done - -# required by kfifo_buf.ko - devres_add - devres_alloc_node - devres_free - devres_release - iio_buffer_init - iio_buffer_put - __kfifo_to_user - -# required by leds-sc27xx-bltc.ko - devm_led_classdev_register_ext - -# required by mali_gondul.ko - anon_inode_getfd - __bitmap_weight - clear_page - devfreq_add_device - devfreq_remove_device - devfreq_resume_device - devfreq_suspend_device - dev_pm_opp_disable - dev_pm_opp_find_freq_floor - dev_pm_opp_put_regulators - dev_pm_opp_set_regulators - dma_fence_get_status - dma_fence_remove_callback - downgrade_write - down_trylock - get_user_pages - get_user_pages_fast - get_user_pages_remote - hrtimer_active - hrtimer_forward - iomem_resource - kstrtobool_from_user - memstart_addr - __mmdrop - nonseekable_open - of_property_read_variable_u64_array - param_ops_byte - rb_erase - rb_first - rb_insert_color - rb_next - rb_prev - rb_replace_node - regulator_get_optional - __release_region - remap_vmalloc_range - __request_region - reservation_ww_class - seq_open - __seq_open_private - seq_release_private - seq_write - set_page_dirty_lock - strcspn - system_highpri_wq - trace_print_flags_seq - vmalloc_user - ww_mutex_lock - ww_mutex_unlock - -# required by microarray_fp.ko - cdev_alloc - -# required by mmc_hsq.ko - mmc_cqe_request_done - mmc_send_tuning - -# required by musb_hdrc.ko - device_wakeup_enable - dev_printk - flush_delayed_work - flush_dcache_page - param_ops_bool - usb_add_hcd - usb_create_hcd - usb_ep_set_halt - usb_hcd_check_unlink_urb - usb_hcd_giveback_urb - usb_hcd_link_urb_to_ep - usb_hcd_map_urb_for_dma - usb_hcd_poll_rh_status - usb_hcd_resume_root_hub - usb_hcd_unlink_urb_from_ep - usb_hcd_unmap_urb_for_dma - usb_otg_state_string - usb_put_hcd - usb_remove_hcd - -# required by musb_sprd.ko - usb_ep_disable - usb_speed_string - -# required by pcie-sprd.ko - device_get_next_child_node - devm_gpiod_get_index - devm_ioremap - dw_pcie_host_init - dw_pcie_msi_init - dw_pcie_setup_rc - dw_pcie_wait_for_link - fwnode_handle_put - gpiod_get_value - of_fwnode_ops - pci_assign_unassigned_bus_resources - pci_bus_add_devices - pci_check_and_mask_intx - pci_check_and_unmask_intx - pci_clear_master - pcie_bus_configure_settings - pci_enable_msi - pci_intx - pci_ioremap_bar - pci_ioremap_wc_bar - pci_lock_rescan_remove - pci_reset_function - pci_scan_child_bus - pci_stop_and_remove_bus_device - pci_unlock_rescan_remove - sdio_claim_irq - sdio_f0_readb - sdio_f0_writeb - sdio_get_host_pm_caps - sdio_readw - sdio_release_irq - sdio_set_host_pm_flags - sdio_writew - -# required by phy-sprd-sharkl3.ko - usb_add_phy_dev - usb_phy_set_charger_state - usb_remove_phy - -# required by pinctrl-sprd.ko - devm_platform_ioremap_resource - of_property_read_string_helper - pinconf_generic_parse_dt_config - pinctrl_dev_get_drvdata - pinctrl_register - pinctrl_unregister - pinctrl_utils_add_map_configs - pinctrl_utils_add_map_mux - pinctrl_utils_free_map - pinctrl_utils_reserve_map - pin_get_name - -# required by pvrsrvkm.ko - autoremove_wake_function - bpf_trace_run6 - bpf_trace_run7 - bpf_trace_run8 - cache_line_size - devfreq_cooling_unregister - devfreq_recommended_opp - devfreq_register_opp_notifier - devfreq_unregister_opp_notifier - devm_devfreq_add_device - devm_devfreq_remove_device - dev_pm_opp_add - dev_pm_opp_find_freq_ceil - dev_pm_opp_get_freq - dev_pm_opp_get_opp_count - dev_pm_opp_get_voltage - dev_pm_opp_of_add_table - dev_pm_opp_of_register_em - dev_pm_opp_of_remove_table - dev_pm_opp_put - dma_buf_attach - dma_buf_begin_cpu_access - dma_buf_detach - dma_buf_end_cpu_access - dma_buf_export - dma_buf_fd - dma_buf_get - dma_buf_kmap - dma_buf_kunmap - dma_buf_map_attachment - dma_buf_mmap - dma_buf_put - dma_buf_unmap_attachment - dma_buf_vmap - dma_buf_vunmap - dma_fence_add_callback - dma_fence_array_ops - dma_fence_context_alloc - dma_fence_default_wait - dma_fence_enable_sw_signaling - dma_fence_free - dma_fence_init - dma_fence_signal - down_read - down_write - drm_dev_unregister - fd_install - fget - find_vma - find_vpid - __get_task_comm - get_unused_fd_flags - idr_preload - idr_replace - ion_query_heaps_kernel - kill_pid - ksize - kthread_freezable_should_stop - ktime_get_raw_ts64 - memcmp - mutex_is_locked - of_devfreq_cooling_register_power - of_hwspin_lock_get_id_byname - of_modalias_node - on_each_cpu - prepare_to_wait - proc_remove - put_unused_fd - _raw_read_lock_bh - _raw_read_unlock_bh - _raw_write_lock_bh - _raw_write_unlock_bh - register_shrinker - request_firmware - seq_vprintf - set_freezable - si_meminfo - split_page - strncat - strsep - sync_file_create - sync_file_get_fence - __task_pid_nr_ns - trace_set_clr_event - unmap_mapping_range - unregister_shrinker - up_read - up_write - __usecs_to_jiffies - vmf_insert_mixed - vm_get_page_prot - vm_insert_page - vsscanf - vzalloc - -# required by pwm-sprd.ko - pwmchip_add - pwmchip_remove - -# required by pwm_bl.ko - backlight_device_register - backlight_device_unregister - devm_pwm_get - gpiod_get_direction - int_pow - pwm_free - pwm_request - -# required by roles.ko - fwnode_connection_find_match - fwnode_get_parent - -# required by rtc-sc27xx.ko - devm_rtc_allocate_device - rtc_ktime_to_tm - __rtc_register_device - rtc_time64_to_tm - rtc_tm_to_time64 - rtc_update_irq - -# required by sc2703-bl.ko - of_pwm_get - pwm_apply_state - -# required by sc2703_disp.ko - mfd_add_devices - -# required by sc2703_regulator.ko - regulator_notifier_call_chain - -# required by sc27xx_adc.ko - devm_iio_device_alloc - hwspin_lock_free - hwspin_lock_request_specific - __hwspin_lock_timeout - __hwspin_unlock - of_hwspin_lock_get_id - -# required by sc27xx_fuel_gauge.ko - devm_iio_channel_get - gpiod_get_value_cansleep - iio_read_channel_processed - power_supply_find_ocv2cap_table - power_supply_ocv2cap_simple - power_supply_put_battery_info - power_supply_temp2resist_simple - -# required by sc27xx_pd.ko - device_get_named_child_node - devm_extcon_register_notifier_all - devm_regulator_get_optional - -# required by sc27xx_typec.ko - devm_extcon_dev_allocate - devm_extcon_dev_register - extcon_set_state_sync - typec_register_partner - typec_register_port - typec_set_data_role - typec_set_pwr_opmode - typec_set_pwr_role - typec_set_vconn_role - typec_unregister_partner - typec_unregister_port - -# required by sc27xx-vibra.ko - input_ff_create_memless - -# required by sc9863a-clk.ko - device_get_match_data - -# required by sdhci-sprd.ko - clk_round_rate - mmc_free_host - mmc_of_parse - mmc_regulator_set_vqmmc - mmc_remove_host - mmc_request_done - __sdhci_add_host - sdhci_cleanup_host - sdhci_enable_clk - sdhci_enable_v4_mode - sdhci_pltfm_free - sdhci_pltfm_init - sdhci_remove_host - sdhci_request - sdhci_request_atomic - sdhci_reset - sdhci_runtime_resume_host - sdhci_runtime_suspend_host - sdhci_set_bus_width - sdhci_setup_host - -# required by sdiohal.ko - mmc_detect_change - mmc_set_data_timeout - mmc_wait_for_req - __put_page - print_hex_dump - sdio_claim_host - sdio_enable_func - sdio_memcpy_fromio - sdio_memcpy_toio - sdio_readb - sdio_readl - sdio_readsb - sdio_register_driver - sdio_release_host - sdio_set_block_size - sdio_unregister_driver - sdio_writeb - sdio_writel - sdio_writesb - __trace_bprintk - -# required by seth.ko - napi_complete_done - napi_disable - __napi_schedule - napi_schedule_prep - netif_napi_add - netif_napi_del - netif_receive_skb - register_netdev - unregister_netdev - -# required by sfp_core.ko - csum_tcpudp_nofold - dev_get_by_index_rcu - ip_send_check - ipv6_ext_hdr - ipv6_find_hdr - kstrtouint_from_user - __local_bh_enable_ip - nf_conntrack_destroy - nf_conntrack_find_get - of_dma_configure - proc_dointvec - register_netdevice_notifier - register_net_sysctl - rt6_lookup - seq_open_private - seq_release - skb_copy_bits - unregister_netdevice_notifier - -# required by shubcore.ko - iio_alloc_pollfunc - iio_dealloc_pollfunc - iio_device_alloc - iio_device_attach_buffer - iio_device_free - iio_device_unregister - iio_pollfunc_store_time - iio_push_to_buffers - iio_trigger_alloc - iio_triggered_buffer_postenable - iio_triggered_buffer_predisable - iio_trigger_free - iio_trigger_notify_done - iio_trigger_poll - __iio_trigger_register - iio_trigger_unregister - ktime_get_with_offset - param_array_ops - unregister_pm_notifier - -# required by sipa_core.ko - free_pages - memremap - memunmap - pm_wakeup_dev_event - skb_dequeue - skb_queue_tail - -# required by sipa_sys_pd.ko - kstrdup - of_genpd_add_provider_simple - pm_genpd_init - pm_genpd_remove - -# required by sipc_core.ko - gen_pool_destroy - mbox_chan_received_data - mbox_chan_txdone - mbox_client_txdone - mbox_controller_register - mbox_controller_unregister - mbox_free_channel - mbox_request_channel - mbox_request_channel_byname - mbox_send_message - register_syscore_ops - -# required by sipx.ko - hrtimer_cancel - hrtimer_init - hrtimer_start_range_ns - hrtimer_try_to_cancel - -# required by snd-soc-aw881xx.ko - i2c_smbus_write_byte - -# required by snd-soc-akm4377.ko - regcache_mark_dirty - regcache_sync - snd_soc_get_volsw - snd_soc_put_volsw - -# required by snd-soc-sprd-audio-dma.ko - dmam_alloc_attrs - dmam_free_coherent - dma_release_channel - __memset_io - of_dma_request_slave_channel - snd_pcm_format_physical_width - snd_pcm_hw_constraint_integer - snd_pcm_hw_constraint_step - snd_soc_rtdcom_lookup - snd_soc_set_runtime_hwparams - vmap - -# required by snd-soc-sprd-card.ko - devm_gpio_request_one - devm_snd_soc_register_card - gpio_request_one - snd_interval_refine - snd_soc_of_get_dai_name - snd_soc_of_parse_audio_routing - snd_soc_of_parse_audio_simple_widgets - snd_soc_of_parse_card_name - snd_soc_of_parse_daifmt - snd_soc_of_parse_tdm_slot - -# required by snd-soc-sprd-codec-sc2721-power.ko - regulator_register - regulator_unregister - -# required by snd-soc-sprd-codec-sc2721.ko - dapm_regulator_event - gpiod_set_debounce - iio_channel_get - iio_read_channel_raw - iio_write_channel_attribute - irq_to_desc - power_supply_register - power_supply_unregister - regulator_get - regulator_get_mode - regulator_is_enabled - regulator_put - regulator_set_mode - regulator_set_voltage - snd_ctl_find_id - snd_jack_set_key - snd_pcm_rate_to_rate_bit - snd_soc_card_jack_new - snd_soc_component_read32 - snd_soc_component_update_bits - snd_soc_component_write - snd_soc_dapm_force_enable_pin - snd_soc_dapm_get_enum_double - snd_soc_dapm_get_volsw - snd_soc_get_enum_double - snd_soc_jack_report - snd_soc_put_enum_double - -# required by snd-soc-sprd-platform.ko - devm_snd_soc_register_component - dma_request_slave_channel - of_reserved_mem_device_init_by_idx - snd_dma_alloc_pages - snd_dma_free_pages - -# required by snd-soc-sprd-vbc-r1p0v3.ko - snd_ctl_boolean_mono_info - snd_pcm_hw_constraint_list - -# required by snd-soc-tfa98xx.ko - crc32_le - device_create_bin_file - device_remove_bin_file - msleep_interruptible - snd_pcm_format_width - snd_pcm_hw_constraint_mask64 - snd_soc_dapm_add_routes - snd_soc_dapm_new_controls - -# required by sprd-cpufreq-common.ko - dev_pm_opp_remove - -# required by sprd-cpufreqhw.ko - arch_set_freq_scale - cpufreq_generic_attr - cpufreq_generic_frequency_table_verify - cpufreq_generic_get - cpufreq_generic_suspend - cpufreq_register_driver - cpufreq_unregister_driver - dev_pm_opp_free_cpufreq_table - dev_pm_opp_init_cpufreq_table - -# required by sprd-drm.ko - adjust_managed_page_count - component_add - component_bind_all - component_del - component_master_add_with_match - component_master_del - component_match_add_release - component_unbind_all - devm_gpiod_get_optional - dma_get_sgtable_attrs - dma_mmap_attrs - dma_set_coherent_mask - drm_add_edid_modes - drm_atomic_helper_async_commit - drm_atomic_helper_check - drm_atomic_helper_cleanup_planes - drm_atomic_helper_commit - drm_atomic_helper_commit_cleanup_done - drm_atomic_helper_commit_hw_done - drm_atomic_helper_commit_modeset_disables - drm_atomic_helper_commit_modeset_enables - drm_atomic_helper_commit_planes - drm_atomic_helper_commit_tail - drm_atomic_helper_commit_tail_rpm - drm_atomic_helper_connector_destroy_state - drm_atomic_helper_connector_duplicate_state - drm_atomic_helper_connector_reset - drm_atomic_helper_crtc_destroy_state - drm_atomic_helper_crtc_duplicate_state - drm_atomic_helper_crtc_reset - drm_atomic_helper_disable_plane - drm_atomic_helper_page_flip - __drm_atomic_helper_plane_destroy_state - __drm_atomic_helper_plane_duplicate_state - __dynamic_dev_dbg - __dynamic_pr_debug - drm_atomic_helper_prepare_planes - drm_atomic_helper_resume - drm_atomic_helper_set_config - drm_atomic_helper_shutdown - drm_atomic_helper_suspend - drm_atomic_helper_swap_state - drm_atomic_helper_update_legacy_modeset_state - drm_atomic_helper_update_plane - drm_atomic_helper_wait_for_dependencies - drm_atomic_helper_wait_for_fences - drm_atomic_helper_wait_for_vblanks - drm_atomic_private_obj_fini - drm_atomic_private_obj_init - drm_atomic_set_crtc_for_connector - drm_atomic_set_fence_for_plane - drm_atomic_set_mode_for_crtc - drm_atomic_state_alloc - drm_atomic_state_clear - drm_atomic_state_default_clear - drm_atomic_state_default_release - __drm_atomic_state_free - drm_bridge_attach - drm_connector_attach_content_protection_property - drm_connector_attach_encoder - drm_connector_cleanup - drm_connector_init - drm_connector_unregister - drm_connector_update_edid_property - drm_crtc_cleanup - __drm_crtc_commit_free - drm_crtc_handle_vblank - drm_crtc_init_with_planes - drm_crtc_send_vblank_event - drm_crtc_vblank_off - drm_crtc_vblank_on - drm_detect_monitor_audio - drm_display_mode_from_videomode - drm_display_mode_to_videomode - drm_dp_aux_register - drm_dp_aux_unregister - drm_dp_calc_pbn_mode - drm_dp_channel_eq_ok - drm_dp_clock_recovery_ok - drm_dp_dpcd_read - drm_dp_dpcd_read_link_status - drm_dp_dpcd_write - drm_encoder_cleanup - drm_encoder_init - drm_format_info - drm_gem_cma_prime_get_sg_table - drm_gem_cma_prime_mmap - drm_gem_cma_prime_vmap - drm_gem_cma_prime_vunmap - drm_gem_cma_vm_ops - drm_gem_create_mmap_offset - drm_gem_fb_create - drm_gem_fb_get_obj - drm_gem_handle_create - drm_gem_mmap - drm_gem_mmap_obj - drm_gem_object_init - drm_gem_object_put_unlocked - drm_gem_object_release - drm_gem_prime_export - drm_gem_prime_fd_to_handle - drm_gem_prime_handle_to_fd - drm_gem_prime_import - drm_gem_vm_close - drm_get_edid - drm_hdcp_check_ksvs_revoked - drm_hdcp_update_content_protection - drm_helper_hpd_irq_event - drm_helper_probe_single_connector_modes - drm_kms_helper_poll_disable - drm_kms_helper_poll_enable - drm_kms_helper_poll_fini - drm_kms_helper_poll_init - drm_match_cea_mode - drm_mode_config_reset - drm_mode_create - drm_mode_crtc_set_gamma_size - drm_mode_destroy - drm_mode_duplicate - drm_mode_probed_add - drm_mode_vrefresh - drm_object_attach_property - drm_panel_add - drm_panel_attach - drm_panel_detach - drm_panel_disable - drm_panel_enable - drm_panel_get_modes - drm_panel_init - drm_panel_prepare - drm_panel_remove - drm_panel_unprepare - drm_plane_cleanup - drm_plane_create_alpha_property - drm_plane_create_blend_mode_property - drm_plane_create_rotation_property - drm_plane_create_zpos_immutable_property - drm_prime_gem_destroy - drm_property_create - drm_property_create_blob - drm_property_create_range - drm_put_dev - drm_universal_plane_init - drm_vblank_init - gpiod_direction_output - kstrtou8 - mipi_dsi_attach - mipi_dsi_dcs_read - mipi_dsi_dcs_write_buffer - mipi_dsi_detach - mipi_dsi_driver_register_full - mipi_dsi_driver_unregister - mipi_dsi_generic_read - mipi_dsi_generic_write - mipi_dsi_host_register - mipi_dsi_host_unregister - mipi_dsi_set_maximum_return_packet_size - no_llseek - of_clk_get_by_name - of_drm_find_bridge - of_drm_find_panel - of_fdt_unflatten_tree - of_find_backlight_by_node - of_find_node_opts_by_path - of_get_drm_display_mode - of_graph_get_endpoint_by_regs - of_graph_get_remote_port_parent - of_reserved_mem_device_release - __platform_register_drivers - platform_unregister_drivers - regmap_get_reg_stride - regmap_get_val_bytes - try_wait_for_completion - -# required by spi-sprd.ko - dma_request_chan - spi_controller_suspend - spi_finalize_current_transfer - -# required by spi-sprd-adi.ko - unregister_restart_handler - -# required by sprd-dma.ko - dma_async_device_register - dma_async_device_unregister - dma_async_tx_descriptor_init - of_dma_controller_free - of_dma_controller_register - of_dma_simple_xlate - -# required by sprd-gsp.ko - __kthread_init_worker - kthread_queue_work - kthread_worker_fn - -# required by sprd-hwdvfs-sharkl3.ko - __i2c_transfer - rt_mutex_trylock - -# required by sprd_dedicate_thm.ko - devm_thermal_zone_of_sensor_register - system_power_efficient_wq - -# required by sprd_dvfs.ko - devfreq_add_governor - devfreq_remove_governor - devfreq_update_status - device_rename - update_devfreq - -# required by sprd_hwspinlock.ko - hwspin_lock_register - hwspin_lock_unregister - -# required by sprd_ipa.ko - skb_to_sgvec - irq_set_affinity_hint - napi_gro_receive - -# required by sprd-saudio.ko - snd_card_free - -# required by sprd-sc27xx-spi.ko - devm_regmap_add_irq_chip - regmap_irq_get_domain - spi_bus_type - __spi_register_driver - spi_sync - -# required by sprd_apb_busmonitor.ko - _dev_emerg - -# required by sprd_cproc.ko - of_get_parent - -# required by sprd_cpu_cooling.ko - cpu_down - cpufreq_get_policy - cpu_up - cpufreq_quick_get - dev_pm_opp_find_freq_exact - thermal_cooling_device_unregister - thermal_of_cooling_device_register - -# required by sprd-mailbox.ko - devm_mbox_controller_register - -# required by sprd_mcd.ko - gpiod_set_value_cansleep - kernel_power_off - register_restart_handler - unregister_reboot_notifier - -# required by sprd_pcie_ep_device.ko - pci_enable_device - pci_request_regions - pci_restore_state - pci_save_state - pci_set_power_state - -# required by sprd_pm_domain.ko - kfree_const - kstrdup_const - of_genpd_add_subdomain - -# required by sprd_powerdebug.ko - cpu_pm_register_notifier - cpu_pm_unregister_notifier - pm_print_active_wakeup_sources - syscon_node_to_regmap - -# required by sprd_sdio_fm.ko - vfs_llseek - -# required by sprd_soc_thm.ko - thermal_zone_device_unregister - thermal_zone_device_update - thermal_zone_of_sensor_register - -# required by sprd_vdsp.ko - bsearch - devm_kstrdup - __memcpy_toio - of_match_device - of_n_addr_cells - of_n_size_cells - of_translate_address - sort - -# required by sprd_wdt.ko - devm_watchdog_register_device - watchdog_init_timeout - -# required by sprdbt_sipc_tty.ko - tty_schedule_flip - -# required by sprdwl_ng.ko - bcmp - build_skb - console_printk - consume_skb - _ctype - dev_get_by_index - down_timeout - genlmsg_put - jiffies_to_usecs - kfree_skb_list - netdev_alloc_frag - netdev_err - netdev_info - netdev_warn - netlink_unicast - nla_memcpy - __nla_parse - nla_put - nla_put_64bit - nla_put_nohdr - printk_timed_ratelimit - register_inet6addr_notifier - register_inetaddr_notifier - register_netdevice - rtnl_lock - rtnl_unlock - simple_open - skb_queue_purge - skb_unlink - synchronize_rcu - unregister_inet6addr_notifier - unregister_inetaddr_notifier - unregister_netdevice_queue - -# required by sunwave_fp.ko - input_unregister_device - -# required by tcpm.ko - fwnode_property_read_u32_array - mod_delayed_work_on - usb_debug_root - -# required by trusty.ko - _copy_from_iter - _copy_to_iter - __cpuhp_remove_state - __cpuhp_setup_state - __cpuhp_state_add_instance - __cpuhp_state_remove_instance - device_for_each_child - disable_percpu_irq - enable_percpu_irq - free_percpu_irq - irq_create_of_mapping - panic_notifier_list - register_virtio_device - register_virtio_driver - __request_percpu_irq - unregister_virtio_device - unregister_virtio_driver - virtqueue_add_inbuf - virtqueue_add_outbuf - virtqueue_detach_unused_buf - virtqueue_get_buf - virtqueue_get_vring_size - virtqueue_kick - virtqueue_kick_prepare - virtqueue_notify - vring_del_virtqueue - vring_interrupt - vring_new_virtqueue - wait_woken - woken_wake_function - -# required by typec.ko - blocking_notifier_call_chain - __class_register - class_unregister - device_find_child - fwnode_property_read_u16_array - get_device - kobject_uevent - match_string - -# required by usb-storage.ko - blk_queue_bounce_limit - blk_queue_max_hw_sectors - blk_queue_update_dma_alignment - _dev_notice - param_ops_string - schedule_timeout_uninterruptible - scsi_add_host_with_dma - scsi_eh_prep_cmnd - scsi_eh_restore_cmnd - scsi_get_host_dev - scsi_host_alloc - scsi_host_put - scsi_is_host_device - scsi_normalize_sense - scsi_remove_host - scsi_report_bus_reset - scsi_report_device_reset - scsi_scan_host - scsi_sense_desc_find - sg_miter_skip - simple_strtoul - usb_autopm_put_interface_no_suspend - usb_lock_device_for_reset - usb_reset_device - usb_reset_endpoint - usb_sg_cancel - usb_sg_init - usb_sg_wait - usb_unlink_urb - -# required by usb_f_mtp.ko - usb_os_desc_prepare_interf_dir - usb_string_id - config_group_init_type_name - -# required by usbserial.ko - device_del - driver_attach - handle_sysrq - tty_hangup - tty_ldisc_deref - tty_ldisc_ref - tty_termios_copy_hw - usb_disabled - usb_get_dev - usb_match_id - usb_match_one_id - usb_poison_urb - usb_put_dev - usb_show_dynids - usb_store_new_id - usb_unpoison_urb - -# required by vha.ko - clk_bulk_get - device_wakeup_disable - devm_iounmap - __ndelay - param_ops_long - param_ops_ulong - pm_relax - pm_stay_awake - -# required by virtio_crypto.ko - cpu_bit_bitmap - cpus_read_lock - cpus_read_unlock - cpu_topology - crypto_ablkcipher_type - crypto_engine_alloc_init - crypto_engine_exit - crypto_engine_start - crypto_finalize_ablkcipher_request - crypto_register_alg - crypto_register_scomp - crypto_transfer_ablkcipher_request_to_engine - crypto_unregister_alg - crypto_unregister_scomp - scatterwalk_map_and_copy - sg_init_one - sg_nents_for_len - -# required by wcn_bsp.ko - gpiod_set_value - memdup_user - pci_disable_device - pci_disable_msi - pci_disable_msix - pcie_capability_read_dword - pcie_capability_read_word - pci_enable_msix_range - pci_enable_wake - pci_find_ext_capability - pci_load_and_free_saved_state - pci_msi_vec_count - pci_read_config_byte - pci_read_config_dword - pci_release_regions - pci_store_saved_state - pci_write_config_byte - pci_write_config_dword - register_chrdev_region - request_firmware_direct - -# required by rc-core.ko - input_scancode_to_scalar - kobject_get_path - led_trigger_register_simple - led_trigger_unregister_simple - __module_get - nsecs_to_jiffies - -# required by spi-bitbang.ko - spi_register_controller - spi_unregister_controller - -# required by sprd_memdisk.ko - __alloc_disk_node - blk_cleanup_queue - blk_mq_end_request - blk_mq_init_sq_queue - blk_mq_start_request - blk_queue_logical_block_size - del_gendisk - device_add_disk - put_disk - register_blkdev - unregister_blkdev - -# required by ppp_async.ko - crc_ccitt_table - n_tty_ioctl_helper - ppp_channel_index - ppp_input_error - ppp_output_wakeup - ppp_register_channel - ppp_unit_number - ppp_unregister_channel - _raw_write_lock_irq - _raw_write_unlock_irq - skb_pull - start_tty - stop_tty - tty_mode_ioctl - tty_register_ldisc - tty_unregister_ldisc - tty_unthrottle - -# required by cls_fw.ko - __dev_get_by_index - __dev_get_by_name - kfree_call_rcu - nla_strlcpy - __put_net - register_tcf_proto_ops - rtnl_is_locked - tcf_action_exec - tcf_exts_destroy - tcf_exts_dump - tcf_exts_dump_stats - tcf_exts_validate - tcf_queue_work - unregister_tcf_proto_ops - -# required by ipcomp.ko - ipcomp_destroy - ipcomp_init_state - ipcomp_input - ipcomp_output - xfrm_init_state - xfrm_state_alloc - xfrm_state_insert - -# required by xcbc.ko - crypto_alloc_instance - crypto_attr_alg2 - crypto_check_attr_type - crypto_init_spawn - crypto_mod_put - crypto_register_template - crypto_spawn_tfm - crypto_unregister_template - shash_free_instance - shash_register_instance - -# required by aes-ce-ccm.ko - ce_aes_expandkey - -# required by xt_TEE.ko - static_key_slow_dec - static_key_slow_inc - xt_tee_enabled - -# required by ir-kbd-i2c.ko - i2c_new_dummy_device - i2c_unregister_device - -# required by ledtrig-pattern.ko - led_get_default_pattern - led_set_brightness - led_trigger_register - led_trigger_unregister - -# required by virtio_crypto.ko - virtio_break_device - virtqueue_add_sgs - virtqueue_disable_cb - virtqueue_enable_cb - virtqueue_is_broken - -# required by dns_resolver.ko - generic_key_instantiate - key_invalidate - key_put - key_revoke - keyring_alloc - key_validate - kmemdup_nul - memchr - prepare_kernel_cred - register_key_type - request_key_tag - unregister_key_type - user_destroy - user_read - user_revoke - -# required by aes-neon-blk.ko - crypto_aes_inv_sbox - crypto_aes_sbox - crypto_alloc_shash - crypto_register_skciphers - crypto_shash_digest - crypto_unregister_skciphers - scatterwalk_ffwd - simd_skcipher_create_compat - simd_skcipher_free - -# required by ghash-ce.ko - gf128mul_lle - -# required by pppoe.ko - _copy_from_iter_full - datagram_poll - dev_add_pack - dev_get_by_name_rcu - dev_remove_pack - lock_sock_nested - pppox_compat_ioctl - pppox_ioctl - pppox_unbind_sock - ppp_register_net_channel - proto_register - proto_unregister - pskb_trim_rcsum_slow - register_pernet_device - register_pppox_proto - release_sock - sk_alloc - skb_copy_datagram_iter - skb_pull_rcsum - skb_recv_datagram - __sk_receive_skb - sock_init_data - sock_no_accept - sock_no_bind - sock_no_getsockopt - sock_no_listen - sock_no_mmap - sock_no_setsockopt - sock_no_shutdown - sock_no_socketpair - sock_queue_rcv_skb - sock_wmalloc - unregister_pernet_device - unregister_pppox_proto - -# required by sha1-ce.ko - crypto_sha1_finup - crypto_sha1_update - -# required by ah6.ko - ip6_redirect - ip6_update_pmtu - net_ratelimit - xfrm6_find_1stfragopt - xfrm6_protocol_deregister - xfrm6_protocol_register - xfrm6_rcv - -# required by raw_diag.ko - inet_diag_bc_sk - inet_diag_register - inet_diag_unregister - inet_sk_diag_fill - netlink_net_capable - raw_v4_hashinfo - __raw_v4_lookup - raw_v6_hashinfo - __raw_v6_lookup - sock_diag_destroy - -# required by xt_addrtype.ko - inet_dev_addr_type - __ipv6_addr_type - ipv6_chk_addr - -# required by sprd_thermal.ko - devm_thermal_zone_of_sensor_unregister - -# required by arc4.ko - arc4_crypt - arc4_setkey - crypto_register_skcipher - crypto_unregister_skcipher - -# required by ip6table_security.ko - xt_hook_ops_alloc - -# required by xfrm4_tunnel.ko - xfrm4_tunnel_deregister - xfrm4_tunnel_register - -# required by ppp_mppe.ko - crypto_has_ahash - crypto_shash_final - crypto_shash_update - -# required by pptp.ko - find_next_zero_bit - gre_add_protocol - gre_del_protocol - __ip_select_ident - security_sk_classify_flow - skb_set_owner_w - sk_setup_caps - sock_no_recvmsg - sock_no_sendmsg - -# required by gtco.ko - __usb_get_extra_descriptor - -# required by l2tp_ppp.ko - l2tp_session_create - l2tp_session_delete - l2tp_session_free - l2tp_session_get_nth - l2tp_session_register - l2tp_session_set_header_len - l2tp_tunnel_create - l2tp_tunnel_delete - l2tp_tunnel_free - l2tp_tunnel_get - l2tp_tunnel_get_nth - l2tp_tunnel_get_session - l2tp_tunnel_register - l2tp_udp_encap_recv - l2tp_xmit_skb - ppp_dev_name - -# required by ppp_generic.ko - arch_bpf_jit_check_func - bpf_prog_create - bpf_prog_destroy - bpf_stats_enabled_key - iov_iter_init - netdev_printk - netif_rx - ns_capable - rtnl_link_register - rtnl_link_unregister - skb_queue_head - skb_scrub_packet - slhc_compress - slhc_free - slhc_init - slhc_remember - slhc_toss - slhc_uncompress - unregister_netdevice_many - -# required by pppox.ko - sock_register - sock_unregister - -# required by ppp_deflate.ko - zlib_deflate - zlib_deflateEnd - zlib_deflateInit2 - zlib_deflateReset - zlib_deflate_workspacesize - zlib_inflate - zlib_inflateEnd - zlib_inflateIncomp - zlib_inflateInit2 - zlib_inflateReset - zlib_inflate_workspacesize - -# required by sprd_cpp.ko - clk_get_parent - of_iomap - -# required by sprd_camera.ko - ion_alloc - ion_free - ktime_get_ts64 - ns_to_timeval - of_irq_to_resource - _raw_spin_trylock - regulator_get_linear_step - -# required by trusty-pm.ko - ktime_get_boot_fast_ns - unregister_syscore_ops - -# required by ufs-sprd.ko - ufshcd_dme_set_attr - ufshcd_get_local_unipro_ver - ufshcd_pltfrm_init - ufshcd_pltfrm_resume - ufshcd_pltfrm_runtime_idle - ufshcd_pltfrm_runtime_resume - ufshcd_pltfrm_runtime_suspend - ufshcd_pltfrm_shutdown - ufshcd_pltfrm_suspend - ufshcd_remove - -# required by sprd_sip_svc.ko - __arm_smccc_smc - -# required by mali_gondul.ko - __arch_clear_user - bpf_trace_run5 - ktime_get_raw - of_machine_is_compatible - _totalram_pages - trace_output_call - __tracepoint_gpu_mem_total - trace_print_array_seq - vmf_insert_pfn_prot - -# required by sprd_ion.ko - ion_buffer_zero - __ion_device_add_heap - memset32 - of_platform_device_create - __sg_page_iter_next - __sg_page_iter_start - -# required by snd-soc-sprd-codec-sc2730.ko - dapm_kcontrol_get_value - __kfifo_init - __kfifo_from_user_r - __kfifo_to_user_r - snd_pcm_rate_bit_to_rate - snd_soc_bytes_info_ext - snd_soc_new_compress - snd_card_new - snd_card_register - snd_ctl_add - snd_ctl_new1 - snd_pcm_new - snd_pcm_set_ops - -# required by ssd20xx_ts.ko - input_mt_report_pointer_emulation - -# cpufreq_interactive.ko - add_timer_on - cpufreq_register_notifier - cpufreq_table_index_unsorted - cpufreq_unregister_notifier - down_read_trylock - get_cpu_idle_time - irq_work_queue - kobject_init_and_add - sched_setscheduler_nocheck - strpbrk - -# required by sprd_wdf.ko - kstrtoull_from_user - smpboot_register_percpu_thread - -# required by zram.ko - bdgrab - bio_chain - bio_init - blkdev_put - blk_status_to_errno - blkdev_get - filp_close - filp_open_block - file_path - I_BDEV - set_blocksize - submit_bio_wait diff --git a/android/abi_gki_aarch64_virtual_device b/android/abi_gki_aarch64_virtual_device deleted file mode 100644 index 724632832596..000000000000 --- a/android/abi_gki_aarch64_virtual_device +++ /dev/null @@ -1,1314 +0,0 @@ -[abi_symbol_list] -# commonly used symbols - alloc_anon_inode - __alloc_disk_node - alloc_etherdev_mqs - __alloc_pages_nodemask - __alloc_skb - alloc_workqueue - amba_driver_register - amba_driver_unregister - __arch_copy_from_user - __arch_copy_to_user - arm64_const_caps_ready - arm64_use_ng_mappings - bcmp - bio_alloc_bioset - bio_endio - blk_alloc_queue - blk_cleanup_queue - blk_queue_flag_clear - blk_queue_flag_set - blk_queue_io_min - blk_queue_io_opt - blk_queue_logical_block_size - blk_queue_max_discard_sectors - blk_queue_max_write_zeroes_sectors - blk_queue_physical_block_size - blk_queue_write_cache - blk_status_to_errno - bpf_trace_run2 - bpf_trace_run3 - bus_register - bus_unregister - cancel_delayed_work_sync - cancel_work_sync - capable - __cfi_slowpath - __check_object_size - __class_create - class_destroy - __ClearPageMovable - clk_disable - clk_enable - clk_get_rate - clk_prepare - clk_unprepare - complete - __const_udelay - consume_skb - contig_page_data - __cpuhp_remove_state - __cpuhp_setup_state - __cpuhp_state_add_instance - __cpuhp_state_remove_instance - cpu_hwcap_keys - cpu_hwcaps - cpumask_next - cpu_number - __cpu_online_mask - __cpu_possible_mask - crypto_register_alg - crypto_register_scomp - crypto_unregister_alg - crypto_unregister_scomp - _ctype - debugfs_create_dir - debugfs_create_file - debugfs_remove - delayed_work_timer_fn - del_gendisk - del_timer - del_timer_sync - destroy_workqueue - _dev_err - device_add_disk - device_create - device_initialize - device_register - device_release_driver - device_unregister - _dev_info - __dev_kfree_skb_any - devm_ioremap - devm_ioremap_resource - devm_kfree - devm_kmalloc - devm_request_threaded_irq - _dev_notice - dev_queue_xmit - dev_set_name - _dev_warn - dma_alloc_attrs - dma_buf_export - dma_fence_context_alloc - dma_fence_init - dma_fence_release - dma_fence_signal_locked - dma_free_attrs - dma_map_sg_attrs - dma_set_coherent_mask - dma_set_mask - dma_sync_sg_for_device - dma_unmap_sg_attrs - down_read - down_write - ether_setup - ethtool_op_get_link - eth_validate_addr - event_triggers_call - failure_tracking - fd_install - finish_wait - flush_work - flush_workqueue - fput - free_irq - free_netdev - __free_pages - free_pages - fs_bio_set - get_device - __get_free_pages - get_random_bytes - get_unused_fd_flags - gic_nonsecure_priorities - hwrng_register - hwrng_unregister - ida_alloc_range - ida_free - idr_alloc - idr_destroy - idr_remove - init_pseudo - __init_rwsem - __init_swait_queue_head - init_timer_key - init_wait_entry - __init_waitqueue_head - input_alloc_absinfo - input_allocate_device - input_event - input_free_device - input_mt_init_slots - input_register_device - input_set_abs_params - input_unregister_device - __ioremap - iounmap - iput - jiffies - jiffies_to_msecs - kasan_flag_enabled - kern_mount - kern_unmount - kfree - kfree_skb - kill_anon_super - kimage_voffset - __kmalloc - kmalloc_caches - kmem_cache_alloc - kmem_cache_alloc_trace - kmem_cache_create - kmem_cache_destroy - kmem_cache_free - kmemdup - kobject_add - kobject_init - kobject_put - kobject_uevent - krealloc - kstrdup - kstrndup - kstrtobool - kstrtoint - kstrtouint - kstrtoull - ktime_get - ktime_get_mono_fast_ns - ktime_get_raw_ts64 - ktime_get_real_seconds - ktime_get_real_ts64 - ktime_get_ts64 - ktime_get_with_offset - kvfree - kvmalloc_node - __list_add_valid - __list_del_entry_valid - __local_bh_enable_ip - __log_post_read_mmio - __log_read_mmio - __log_write_mmio - lzo1x_decompress_safe - memcpy - memmove - memparse - memremap - memset - memstart_addr - memunmap - misc_deregister - misc_register - mod_timer - module_layout - module_put - __msecs_to_jiffies - msleep - __mutex_init - mutex_lock - mutex_lock_interruptible - mutex_trylock - mutex_unlock - netdev_err - netdev_info - netdev_rx_handler_register - netdev_rx_handler_unregister - netdev_upper_dev_unlink - netif_carrier_off - netif_carrier_on - netif_device_detach - netif_tx_stop_all_queues - netif_tx_wake_queue - nf_conntrack_destroy - no_llseek - nonseekable_open - noop_llseek - nr_cpu_ids - __num_online_cpus - of_find_property - of_get_property - of_property_read_variable_u32_array - __page_pinner_migration_failed - param_ops_bint - param_ops_bool - param_ops_charp - param_ops_int - param_ops_uint - passthru_features_check - pci_disable_device - pci_enable_device - pci_iomap - pci_read_config_byte - pci_read_config_dword - pci_read_config_word - __pci_register_driver - pci_release_region - pci_release_regions - pci_request_region - pci_request_regions - pci_set_master - pci_unregister_driver - pci_write_config_dword - __per_cpu_offset - perf_trace_buf_alloc - perf_trace_run_bpf_submit - platform_device_unregister - __platform_driver_register - platform_driver_unregister - platform_get_irq - platform_get_resource - pm_runtime_allow - __pm_runtime_disable - pm_runtime_enable - pm_runtime_force_resume - pm_runtime_force_suspend - __pm_runtime_idle - __pm_runtime_resume - pm_runtime_set_autosuspend_delay - __pm_runtime_suspend - __pm_runtime_use_autosuspend - preempt_schedule - preempt_schedule_notrace - prepare_to_wait - prepare_to_wait_event - printk - put_device - put_disk - __put_page - __put_task_struct - put_unused_fd - queue_delayed_work_on - queue_work_on - ___ratelimit - _raw_spin_lock - _raw_spin_lock_bh - _raw_spin_lock_irq - _raw_spin_lock_irqsave - _raw_spin_unlock - _raw_spin_unlock_bh - _raw_spin_unlock_irq - _raw_spin_unlock_irqrestore - __rcu_read_lock - __rcu_read_unlock - refcount_warn_saturate - register_blkdev - register_netdev - register_netdevice - register_netdevice_notifier - register_shrinker - register_virtio_device - register_virtio_driver - regmap_exit - __regmap_init - regmap_read - regmap_write - remap_pfn_range - __request_module - request_threaded_irq - revalidate_disk_size - rtnl_lock - rtnl_unlock - schedule - schedule_timeout - schedule_timeout_uninterruptible - scnprintf - seq_lseek - seq_open - seq_printf - seq_read - seq_release - serio_close - serio_interrupt - serio_open - serio_reconnect - __serio_register_driver - __serio_register_port - serio_unregister_driver - set_disk_ro - __SetPageMovable - sg_alloc_table - sg_free_table - sg_init_one - sg_init_table - sg_next - simple_strtoul - skb_add_rx_frag - skb_dequeue - skb_push - skb_put - skb_queue_tail - snd_card_disconnect - snd_card_free - snd_card_new - snd_card_register - snd_card_rw_proc_new - snd_component_add - snd_ctl_add - _snd_ctl_add_follower - snd_ctl_boolean_mono_info - snd_ctl_enum_info - snd_ctl_find_id - snd_ctl_make_virtual_master - snd_ctl_new1 - snd_ctl_sync_vmaster - snd_device_new - snd_dma_alloc_pages - snd_dma_free_pages - snd_pci_quirk_lookup - snd_pcm_add_chmap_ctls - snd_pcm_alt_chmaps - snd_pcm_hw_constraint_integer - snd_pcm_hw_limit_rates - snd_pcm_new - snd_pcm_period_elapsed - snd_pcm_set_managed_buffer_all - snd_pcm_set_ops - snd_pcm_std_chmaps - snprintf - sort - sprintf - __stack_chk_fail - __stack_chk_guard - strcmp - strcpy - strlcpy - strlen - strncmp - strncpy - strsep - submit_bio - sync_file_create - synchronize_rcu - sysfs_create_group - __sysfs_match_string - sysfs_remove_group - sysfs_remove_link - system_wq - trace_event_buffer_commit - trace_event_buffer_reserve - trace_event_ignore_this_pid - trace_event_raw_init - trace_event_reg - trace_handle_return - __traceiter_rwmmio_post_read - __traceiter_rwmmio_read - __traceiter_rwmmio_write - __tracepoint_rwmmio_post_read - __tracepoint_rwmmio_read - __tracepoint_rwmmio_write - trace_raw_output_prep - trace_seq_printf - try_module_get - __udelay - unlock_page - unregister_blkdev - unregister_netdev - unregister_netdevice_notifier - unregister_netdevice_queue - unregister_shrinker - unregister_virtio_device - unregister_virtio_driver - up_read - up_write - __usecs_to_jiffies - usleep_range - vabits_actual - vfree - virtio_check_driver_offered_feature - virtio_config_changed - virtqueue_add_inbuf - virtqueue_add_outbuf - virtqueue_add_sgs - virtqueue_detach_unused_buf - virtqueue_disable_cb - virtqueue_enable_cb - virtqueue_get_avail_addr - virtqueue_get_buf - virtqueue_get_desc_addr - virtqueue_get_used_addr - virtqueue_get_vring_size - virtqueue_is_broken - virtqueue_kick - virtqueue_kick_prepare - virtqueue_notify - vring_create_virtqueue - vring_del_virtqueue - vring_interrupt - vring_transport_features - wait_for_completion - __wake_up - __warn_printk - -# required by ambakmi.ko - amba_release_regions - amba_request_regions - clk_get - clk_put - serio_unregister_port - -# required by armmmci.ko - clk_round_rate - clk_set_rate - devm_clk_get - devm_of_iomap - devm_pinctrl_get - __devm_reset_control_get - dmam_alloc_attrs - dma_release_channel - dma_request_chan - mmc_add_host - mmc_alloc_host - mmc_free_host - mmc_gpiod_request_cd - mmc_gpiod_request_ro - mmc_gpio_get_cd - mmc_gpio_get_ro - mmc_of_parse - mmc_regulator_get_supply - mmc_regulator_set_ocr - mmc_regulator_set_vqmmc - mmc_remove_host - mmc_request_done - mmc_send_tuning - pinctrl_lookup_state - pinctrl_pm_select_sleep_state - pinctrl_select_default_state - pinctrl_select_state - regulator_disable - regulator_enable - reset_control_assert - reset_control_deassert - sg_miter_next - sg_miter_start - sg_miter_stop - -# required by clk-vexpress-osc.ko - clk_hw_set_rate_range - devm_clk_hw_register - devm_of_clk_add_hw_provider - of_clk_hw_simple_get - of_property_read_string - -# required by dummy-cpufreq.ko - cpufreq_generic_attr - cpufreq_register_driver - cpufreq_unregister_driver - -# required by failover.ko - netdev_master_upper_dev_link - rtnl_is_locked - -# required by gnss-cmdline.ko - bus_find_device - device_find_child - device_match_name - platform_bus_type - strstr - -# required by gnss-serial.ko - gnss_allocate_device - gnss_deregister_device - gnss_insert_raw - gnss_put_device - gnss_register_device - serdev_device_close - serdev_device_open - serdev_device_set_baudrate - serdev_device_set_flow_control - serdev_device_wait_until_sent - serdev_device_write - serdev_device_write_wakeup - -# required by goldfish_battery.ko - power_supply_changed - power_supply_get_drvdata - power_supply_register - power_supply_unregister - -# required by goldfish_pipe.ko - get_user_pages_fast - set_page_dirty - tasklet_init - tasklet_kill - __tasklet_schedule - -# required by goldfish_sync.ko - __close_fd - dma_fence_default_wait - dma_fence_free - -# required by hci_vhci.ko - bt_err - _copy_from_iter_full - hci_alloc_dev - hci_free_dev - hci_recv_frame - hci_register_dev - hci_unregister_dev - skb_pull - skb_queue_head - skb_queue_purge - -# required by ledtrig-audio.ko - led_trigger_event - led_trigger_register_simple - led_trigger_unregister_simple - -# required by lzo-rle.ko - lzorle1x_1_compress - -# required by lzo.ko - lzo1x_1_compress - -# required by mac80211_hwsim.ko - alloc_netdev_mqs - debugfs_attr_read - debugfs_attr_write - dev_alloc_name - device_bind_driver - dst_release - eth_mac_addr - genlmsg_put - genl_notify - genl_register_family - genl_unregister_family - hrtimer_cancel - hrtimer_forward - hrtimer_init - hrtimer_start_range_ns - init_net - __netdev_alloc_skb - netif_rx - netlink_broadcast - netlink_register_notifier - netlink_unicast - netlink_unregister_notifier - net_namespace_list - nla_memcpy - __nla_parse - nla_put_64bit - nla_put - param_ops_ushort - register_pernet_device - rhashtable_destroy - rhashtable_init - rhashtable_insert_slow - __rht_bucket_nested - rht_bucket_nested - rht_bucket_nested_insert - schedule_timeout_interruptible - simple_attr_open - simple_attr_release - skb_copy - skb_copy_expand - __skb_ext_put - skb_trim - skb_unlink - unregister_pernet_device - -# required by md-mod.ko - ack_all_badblocks - alloc_page_buffers - _atomic_dec_and_lock - autoremove_wake_function - badblocks_clear - badblocks_exit - badblocks_init - badblocks_set - badblocks_show - badblocks_store - bdev_check_media_change - bdevname - bdev_read_only - bd_link_disk_holder - bd_unlink_disk_holder - bio_add_page - bio_associate_blkg - bio_put - bioset_exit - bioset_init - blkdev_get_by_dev - blkdev_put - blk_finish_plug - blk_queue_split - blk_register_region - blk_set_stacking_limits - blk_start_plug - blk_sync_queue - blk_unregister_region - bmap - fget - file_path - flush_signals - free_buffer_head - int_pow - invalidate_bdev - invalidate_mapping_pages - kernel_sigaction - kernfs_find_and_get_ns - kernfs_notify - kernfs_put - kobject_del - kobject_get - kstrtoll - kthread_create_on_node - kthread_parkme - kthread_should_park - kthread_should_stop - kthread_stop - mempool_alloc - mempool_create - mempool_destroy - mempool_exit - mempool_free - mempool_init - mempool_kfree - mempool_kmalloc - part_end_io_acct - part_start_io_acct - percpu_ref_exit - percpu_ref_init - percpu_ref_is_zero - percpu_ref_switch_to_atomic_sync - percpu_ref_switch_to_percpu - proc_create - proc_dointvec - register_reboot_notifier - register_sysctl_table - remove_proc_entry - seq_file_path - skip_spaces - strreplace - submit_bh - submit_bio_wait - sync_blockdev - sysfs_create_link - unregister_reboot_notifier - unregister_sysctl_table - vfs_fsync - wake_up_process - -# required by nd_virtio.ko - bio_chain - bio_clone_blkg_association - -# required by net_failover.ko - call_netdevice_notifiers - dev_close - dev_get_stats - dev_mc_sync_multiple - dev_mc_unsync - dev_open - dev_set_mtu - dev_uc_sync_multiple - dev_uc_unsync - __ethtool_get_link_ksettings - netdev_change_features - netdev_increment_features - netdev_lower_state_changed - netdev_pick_tx - pci_bus_type - -# required by psmouse.ko - bus_register_notifier - bus_unregister_notifier - device_add_groups - device_create_file - device_remove_file - device_remove_groups - i2c_adapter_type - i2c_bus_type - i2c_client_type - i2c_for_each_dev - i2c_new_scanned_device - i2c_unregister_device - i2c_verify_adapter - input_mt_assign_slots - input_mt_drop_unused - input_mt_report_finger_count - input_mt_report_pointer_emulation - input_mt_report_slot_state - input_mt_sync_frame - input_set_capability - kstrtou8 - pm_wakeup_dev_event - ps2_begin_command - ps2_cmd_aborted - ps2_command - ps2_drain - ps2_end_command - ps2_handle_ack - ps2_handle_response - ps2_init - ps2_sendbyte - ps2_sliced_command - serio_rescan - serio_unregister_child_port - strcasecmp - -# required by pulse8-cec.ko - cec_allocate_adapter - cec_delete_adapter - cec_received_msg_ts - cec_register_adapter - cec_s_log_addrs - cec_s_phys_addr - cec_transmit_attempt_done_ts - cec_unregister_adapter - strscpy - wait_for_completion_timeout - -# required by rtc-test.ko - add_timer - device_init_wakeup - devm_rtc_allocate_device - platform_device_add - platform_device_alloc - platform_device_del - platform_device_put - __rtc_register_device - rtc_time64_to_tm - rtc_tm_to_time64 - rtc_update_irq - -# required by snd-ac97-codec.ko - snd_ctl_remove_id - snd_info_create_card_entry - snd_info_free_entry - snd_interval_refine - snd_pcm_hw_rule_add - strcat - -# required by snd-hda-codec-generic.ko - devm_led_classdev_register_ext - snd_ctl_boolean_stereo_info - strchr - strlcat - __sw_hweight32 - -# required by snd-hda-codec.ko - bpf_trace_run4 - current_work - device_attach - driver_register - driver_unregister - get_device_system_crosststamp - kvasprintf - ns_to_timespec64 - pm_runtime_forbid - __printk_ratelimit - regcache_mark_dirty - snd_ctl_add_vmaster_hook - snd_ctl_apply_vmaster_followers - snd_ctl_remove - snd_device_disconnect - snd_device_free - snd_jack_new - snd_jack_report - snd_jack_set_key - snd_pcm_hw_constraint_minmax - snd_pcm_hw_constraint_step - snd_pcm_lib_default_mmap - snd_pcm_set_sync - strncat - timecounter_read - -# required by snd-hda-core.ko - add_uevent_var - device_add - device_del - kasprintf - kobject_create_and_add - pm_runtime_get_if_active - __pm_runtime_set_status - regcache_cache_only - regcache_sync - regmap_update_bits_base - snd_pcm_format_width - __sw_hweight64 - timecounter_init - -# required by snd-hda-intel.ko - bpf_trace_run1 - complete_all - param_array_ops - param_get_int - param_set_int - pci_dev_put - pci_disable_msi - pci_enable_msi - pci_get_device - pci_intx - pci_ioremap_bar - pci_match_id - pci_set_power_state - pci_write_config_byte - pci_write_config_word - -# required by snd-intel8x0.ko - snd_pcm_hw_constraint_list - snd_pcm_hw_constraint_msbits - -# required by system_heap.ko - deferred_free - dmabuf_page_pool_alloc - dmabuf_page_pool_create - dmabuf_page_pool_destroy - dmabuf_page_pool_free - dma_heap_add - dma_heap_get_dev - dma_heap_get_name - dma_sync_sg_for_cpu - __sg_page_iter_next - __sg_page_iter_start - vmalloc - vmap - vunmap - -# required by tpm.ko - alloc_chrdev_region - cdev_device_add - cdev_device_del - cdev_init - compat_only_sysfs_link_entry_to_kobj - devm_add_action - efi - efi_tpm_final_log_size - hash_digest_size - idr_get_next - idr_replace - jiffies_to_usecs - memchr_inv - of_property_match_string - pm_suspend_global_flags - securityfs_create_dir - securityfs_create_file - securityfs_remove - seq_putc - seq_write - unregister_chrdev_region - -# required by tpm_vtpm_proxy.ko - anon_inode_getfile - compat_ptr_ioctl - -# required by vexpress-config.ko - devres_add - devres_alloc_node - devres_free - of_device_is_compatible - of_find_compatible_node - of_get_next_parent - of_parse_phandle - of_platform_populate - of_root - -# required by vexpress-sysreg.ko - bgpio_init - devm_gpiochip_add_data_with_key - devm_mfd_add_devices - -# required by virt_wifi.ko - __dev_get_by_index - dev_printk - __module_get - netdev_upper_dev_link - netif_stacked_transfer_operstate - rtnl_link_register - rtnl_link_unregister - skb_clone - unregister_netdevice_many - -# required by virt_wifi_sim.ko - release_firmware - request_firmware - -# required by virtio-gpu.ko - __devm_request_region - dma_fence_match_context - dma_fence_wait_timeout - dma_resv_add_excl_fence - dma_resv_test_signaled_rcu - dma_resv_wait_timeout_rcu - drm_add_edid_modes - drm_add_modes_noedid - drm_atomic_get_crtc_state - drm_atomic_helper_check - drm_atomic_helper_check_plane_state - drm_atomic_helper_commit - drm_atomic_helper_connector_destroy_state - drm_atomic_helper_connector_duplicate_state - drm_atomic_helper_connector_reset - drm_atomic_helper_crtc_destroy_state - drm_atomic_helper_crtc_duplicate_state - drm_atomic_helper_crtc_reset - drm_atomic_helper_damage_merged - drm_atomic_helper_dirtyfb - drm_atomic_helper_disable_plane - drm_atomic_helper_page_flip - drm_atomic_helper_plane_destroy_state - drm_atomic_helper_plane_duplicate_state - drm_atomic_helper_plane_reset - drm_atomic_helper_set_config - drm_atomic_helper_shutdown - drm_atomic_helper_update_plane - drm_compat_ioctl - drm_connector_attach_edid_property - drm_connector_attach_encoder - drm_connector_cleanup - drm_connector_init - drm_connector_register - drm_connector_unregister - drm_connector_update_edid_property - drm_crtc_cleanup - drm_crtc_init_with_planes - drm_cvt_mode - __drm_dbg - drm_debugfs_create_files - drm_dev_alloc - drm_dev_enter - drm_dev_exit - drm_dev_get - drm_dev_printk - drm_dev_put - drm_dev_register - drm_dev_set_unique - drm_dev_unplug - drm_do_get_edid - __drm_err - drm_framebuffer_init - drm_gem_create_mmap_offset - drm_gem_dmabuf_mmap - drm_gem_dmabuf_release - drm_gem_dmabuf_vmap - drm_gem_dmabuf_vunmap - drm_gem_fb_create_handle - drm_gem_fb_destroy - drm_gem_free_mmap_offset - drm_gem_handle_create - drm_gem_lock_reservations - drm_gem_map_attach - drm_gem_map_detach - drm_gem_map_dma_buf - drm_gem_mmap - drm_gem_object_free - drm_gem_object_lookup - drm_gem_object_release - drm_gem_prime_fd_to_handle - drm_gem_prime_handle_to_fd - drm_gem_prime_import - drm_gem_prime_mmap - drm_gem_private_object_init - drm_gem_shmem_create - drm_gem_shmem_free_object - drm_gem_shmem_get_sg_table - drm_gem_shmem_mmap - drm_gem_shmem_pin - drm_gem_shmem_print_info - drm_gem_shmem_unpin - drm_gem_shmem_vmap - drm_gem_shmem_vunmap - drm_gem_unlock_reservations - drm_gem_unmap_dma_buf - drm_gem_vm_close - drm_gem_vm_open - drm_helper_hpd_irq_event - drm_helper_mode_fill_fb_struct - drm_helper_probe_single_connector_modes - drm_ioctl - drm_kms_helper_hotplug_event - drm_mm_init - drm_mm_insert_node_in_range - drmm_mode_config_init - drm_mm_print - drm_mm_remove_node - drm_mm_takedown - drm_mode_config_reset - drm_mode_probed_add - drm_open - drm_plane_cleanup - drm_poll - __drm_printfn_seq_file - __drm_puts_seq_file - drm_read - drm_release - drm_set_preferred_mode - drm_simple_encoder_init - drm_universal_plane_init - __get_task_comm - iomem_resource - is_vmalloc_addr - kmalloc_order_trace - memdup_user - seq_puts - sync_file_get_fence - __traceiter_dma_fence_emit - __traceiter_gpu_mem_total - __tracepoint_dma_fence_emit - __tracepoint_gpu_mem_total - vmalloc_to_page - vmemdup_user - vm_get_page_prot - ww_mutex_lock_interruptible - ww_mutex_unlock - -# required by virtio-rng.ko - wait_for_completion_killable - -# required by virtio_balloon.ko - adjust_managed_page_count - all_vm_events - balloon_aops - balloon_page_alloc - balloon_page_dequeue - balloon_page_enqueue - init_on_free - page_reporting_register - page_reporting_unregister - register_oom_notifier - si_mem_available - si_meminfo - system_freezable_wq - unregister_oom_notifier - vm_event_states - vm_node_stat - -# required by virtio_blk.ko - blk_execute_rq - blk_get_request - blk_mq_alloc_tag_set - blk_mq_complete_request - blk_mq_end_request - blk_mq_free_tag_set - blk_mq_init_queue - blk_mq_quiesce_queue - blk_mq_start_request - blk_mq_start_stopped_hw_queues - blk_mq_stop_hw_queue - blk_mq_unquiesce_queue - blk_mq_virtio_map_queues - blk_put_request - blk_queue_alignment_offset - blk_queue_max_discard_segments - blk_queue_max_hw_sectors - blk_queue_max_segments - blk_queue_max_segment_size - blk_rq_map_kern - __blk_rq_map_sg - set_capacity_revalidate_and_notify - string_get_size - virtio_max_dma_size - -# required by virtio_console.ko - cdev_add - cdev_alloc - cdev_del - device_destroy - fasync_helper - freezing_slow_path - hvc_alloc - hvc_instantiate - hvc_kick - hvc_poll - hvc_remove - __hvc_resize - kill_fasync - pipe_lock - pipe_unlock - __refrigerator - __register_chrdev - single_open - single_release - __splice_from_pipe - system_freezing_cnt - __unregister_chrdev - -# required by virtio_mmio.ko - device_for_each_child - devm_platform_ioremap_resource - platform_device_register_full - sscanf - -# required by virtio_net.ko - bpf_dispatcher_xdp_func - bpf_prog_add - bpf_prog_put - bpf_prog_sub - bpf_stats_enabled_key - bpf_warn_invalid_xdp_action - build_skb - cpumask_next_wrap - cpus_read_lock - cpus_read_unlock - eth_commit_mac_addr_change - eth_prepare_mac_addr_change - ethtool_op_get_ts_info - ethtool_virtdev_set_link_ksettings - eth_type_trans - flow_keys_basic_dissector - __napi_alloc_skb - napi_complete_done - napi_consume_skb - napi_disable - napi_gro_receive - __napi_schedule - napi_schedule_prep - netdev_notify_peers - netdev_warn - netif_device_attach - netif_napi_add - __netif_napi_del - netif_schedule_queue - netif_set_real_num_rx_queues - netif_set_real_num_tx_queues - __netif_set_xps_queue - net_ratelimit - __pskb_pull_tail - _raw_spin_trylock - sched_clock - skb_coalesce_rx_frag - __skb_flow_dissect - skb_page_frag_refill - skb_partial_csum_set - skb_to_sgvec - skb_tstamp_tx - softnet_data - synchronize_net - __traceiter_xdp_exception - __tracepoint_xdp_exception - virtqueue_add_inbuf_ctx - virtqueue_enable_cb_delayed - virtqueue_enable_cb_prepare - virtqueue_get_buf_ctx - virtqueue_poll - xdp_convert_zc_to_xdp_frame - xdp_do_flush - xdp_do_redirect - xdp_return_frame - xdp_return_frame_rx_napi - xdp_rxq_info_reg - xdp_rxq_info_reg_mem_model - xdp_rxq_info_unreg - xdp_warn - -# required by virtio_pci.ko - irq_set_affinity_hint - pci_alloc_irq_vectors_affinity - pci_disable_sriov - pci_enable_sriov - pci_find_capability - pci_find_ext_capability - pci_find_next_capability - pci_free_irq_vectors - pci_iomap_range - pci_irq_get_affinity - pci_irq_vector - pci_release_selected_regions - pci_request_selected_regions - pci_vfs_assigned - synchronize_irq - virtio_device_freeze - virtio_device_restore - -# required by virtio_pmem.ko - nvdimm_bus_register - nvdimm_bus_unregister - nvdimm_pmem_region_create - -# required by vmw_vsock_virtio_transport.ko - lock_sock_nested - release_sock - virtio_transport_connect - virtio_transport_deliver_tap_pkt - virtio_transport_destruct - virtio_transport_dgram_allow - virtio_transport_dgram_bind - virtio_transport_dgram_dequeue - virtio_transport_dgram_enqueue - virtio_transport_do_socket_init - virtio_transport_free_pkt - virtio_transport_notify_buffer_size - virtio_transport_notify_poll_in - virtio_transport_notify_poll_out - virtio_transport_notify_recv_init - virtio_transport_notify_recv_post_dequeue - virtio_transport_notify_recv_pre_block - virtio_transport_notify_recv_pre_dequeue - virtio_transport_notify_send_init - virtio_transport_notify_send_post_enqueue - virtio_transport_notify_send_pre_block - virtio_transport_notify_send_pre_enqueue - virtio_transport_recv_pkt - virtio_transport_release - virtio_transport_shutdown - virtio_transport_stream_allow - virtio_transport_stream_dequeue - virtio_transport_stream_enqueue - virtio_transport_stream_has_data - virtio_transport_stream_has_space - virtio_transport_stream_is_active - virtio_transport_stream_rcvhiwat - vsock_core_register - vsock_core_unregister - vsock_for_each_connected_socket - -# required by zram.ko - __alloc_percpu - bdget_disk - bdput - __class_register - class_unregister - crypto_alloc_base - crypto_comp_compress - crypto_comp_decompress - crypto_destroy_tfm - crypto_has_alg - disk_end_io_acct - disk_start_io_acct - flush_dcache_page - free_percpu - fsync_bdev - idr_find - idr_for_each - kstrtou16 - memset64 - mutex_is_locked - page_endio - sysfs_streq - vzalloc - -# required by zsmalloc.ko - dec_zone_page_state - inc_zone_page_state - __lock_page - page_mapping - _raw_read_lock - _raw_read_unlock - _raw_write_lock - _raw_write_unlock - -# required by gs_usb.ko - usb_kill_anchored_urbs - alloc_candev_mqs - register_candev - free_candev - can_change_mtu - open_candev - usb_anchor_urb - usb_unanchor_urb - alloc_can_skb - can_get_echo_skb - alloc_can_err_skb - close_candev - can_put_echo_skb - can_free_echo_skb - unregister_candev - -# required by vcan.ko - sock_efree - -# required by slcan.ko - tty_mode_ioctl - tty_hangup - hex_asc_upper diff --git a/android/abi_gki_aarch64_vivo b/android/abi_gki_aarch64_vivo deleted file mode 100644 index ff8093ec56b9..000000000000 --- a/android/abi_gki_aarch64_vivo +++ /dev/null @@ -1,1997 +0,0 @@ -[abi_symbol_list] - activate_task - add_cpu - add_device_randomness - add_memory - add_memory_subsection - add_timer - add_uevent_var - add_wait_queue - alarm_cancel - alarm_init - alarm_start - alloc_anon_inode - alloc_chrdev_region - __alloc_disk_node - alloc_io_pgtable_ops - __alloc_pages_nodemask - __alloc_percpu - __alloc_skb - alloc_skb_with_frags - alloc_workqueue - amba_bustype - amba_driver_register - amba_driver_unregister - android_debug_per_cpu_symbol - android_debug_symbol - android_rvh_probe_register - anon_inode_getfile - __arch_copy_from_user - __arch_copy_in_user - __arch_copy_to_user - arch_timer_read_counter - argv_free - argv_split - arm64_const_caps_ready - arm64_use_ng_mappings - __arm_smccc_smc - atomic_notifier_call_chain - atomic_notifier_chain_register - atomic_notifier_chain_unregister - available_idle_cpu - bdget_disk - bdput - bio_add_pc_page - bio_endio - bio_reset - bitmap_allocate_region - __bitmap_clear - bitmap_find_next_zero_area_off - __bitmap_or - bitmap_parselist_user - bitmap_print_to_pagebuf - bitmap_release_region - __bitmap_set - blk_alloc_queue - blk_bio_list_merge - blk_cleanup_queue - blk_execute_rq - blk_execute_rq_nowait - blk_get_request - blk_mq_debugfs_rq_show - blk_mq_rq_cpu - blk_mq_run_hw_queue - blk_mq_sched_mark_restart_hctx - blk_mq_sched_request_inserted - blk_put_request - blk_queue_flag_clear - blk_queue_flag_set - blk_queue_io_min - blk_queue_io_opt - blk_queue_logical_block_size - blk_queue_max_discard_sectors - blk_queue_max_write_zeroes_sectors - blk_queue_physical_block_size - blk_rq_append_bio - blk_rq_map_kern - blk_rq_map_user - blk_rq_map_user_iov - blk_rq_unmap_user - blk_stat_enable_accounting - blk_verify_command - blocking_notifier_call_chain - blocking_notifier_chain_register - blocking_notifier_chain_unregister - bpf_trace_run1 - bpf_trace_run10 - bpf_trace_run12 - bpf_trace_run2 - bpf_trace_run3 - bpf_trace_run4 - bpf_trace_run5 - bpf_trace_run6 - bpf_trace_run7 - bpf_trace_run8 - bpf_trace_run9 - bus_find_device - bus_for_each_dev - bus_register - bus_set_iommu - bus_unregister - cancel_delayed_work - cancel_delayed_work_sync - cancel_work_sync - capable - cdev_add - cdev_alloc - cdev_del - cdev_device_add - cdev_device_del - cdev_init - __cfi_slowpath - cgroup_path_ns - cgroup_taskset_first - cgroup_taskset_next - __check_object_size - check_preempt_curr - check_zeroed_user - __class_create - class_destroy - class_find_device - class_for_each_device - class_interface_unregister - __class_register - class_unregister - cleanup_srcu_struct - clear_page - __ClearPageMovable - clk_bulk_disable - clk_bulk_enable - clk_bulk_prepare - clk_bulk_put_all - clk_bulk_unprepare - __clk_determine_rate - clk_disable - clk_enable - clk_fixed_factor_ops - clk_fixed_rate_ops - clk_get - __clk_get_hw - __clk_get_name - clk_get_parent - clk_get_rate - clk_hw_get_flags - clk_hw_get_name - clk_hw_get_num_parents - clk_hw_get_parent - clk_hw_get_parent_by_index - clk_hw_get_rate - clk_hw_is_enabled - clk_hw_is_prepared - clk_hw_register - clk_hw_round_rate - clk_hw_unregister - __clk_is_enabled - __clk_mux_determine_rate_closest - clk_notifier_register - clk_notifier_unregister - clk_prepare - clk_put - clk_round_rate - clk_set_parent - clk_set_rate - clk_sync_state - clk_unprepare - cma_alloc - cma_get_name - cma_release - compat_alloc_user_space - compat_ptr_ioctl - complete - complete_all - completion_done - component_add - component_bind_all - component_del - component_master_add_with_match - component_master_del - component_match_add_release - component_unbind_all - config_ep_by_speed - configfs_register_subsystem - configfs_unregister_subsystem - config_group_init - config_group_init_type_name - config_item_get - config_item_put - console_stop - console_suspend_enabled - __const_udelay - consume_skb - contig_page_data - _copy_from_iter_full - __cpu_active_mask - cpu_bit_bitmap - cpufreq_cpu_get - cpufreq_cpu_get_raw - cpufreq_cpu_put - cpufreq_disable_fast_switch - cpufreq_driver_fast_switch - cpufreq_driver_resolve_freq - __cpufreq_driver_target - cpufreq_enable_fast_switch - cpufreq_freq_attr_scaling_available_freqs - cpufreq_freq_attr_scaling_boost_freqs - cpufreq_generic_frequency_table_verify - cpufreq_get_policy - cpufreq_register_driver - cpufreq_register_governor - cpufreq_register_notifier - cpufreq_unregister_driver - cpufreq_unregister_notifier - __cpuhp_remove_state - __cpuhp_setup_state - __cpuhp_setup_state_cpuslocked - __cpuhp_state_add_instance - __cpuhp_state_remove_instance - cpu_hwcap_keys - cpu_hwcaps - cpuidle_governor_latency_req - cpuidle_register_governor - cpu_irqtime - cpu_latency_qos_add_request - cpu_latency_qos_remove_request - cpu_latency_qos_request_active - cpu_latency_qos_update_request - cpumask_next - cpumask_next_and - cpu_number - __cpu_online_mask - cpu_pm_register_notifier - cpu_pm_unregister_notifier - __cpu_possible_mask - __cpu_present_mask - cpupri_find_fitness - cpu_scale - cpus_read_lock - cpus_read_unlock - cpu_subsys - cpu_topology - crc8 - crc8_populate_msb - crypto_alloc_base - crypto_comp_compress - crypto_comp_decompress - crypto_destroy_tfm - crypto_has_alg - crypto_register_alg - crypto_register_rngs - crypto_register_scomp - crypto_unregister_alg - crypto_unregister_rngs - crypto_unregister_scomp - css_next_child - _ctype - datagram_poll - deactivate_task - debugfs_attr_read - debugfs_attr_write - debugfs_create_bool - debugfs_create_dir - debugfs_create_file - debugfs_create_file_unsafe - debugfs_create_u32 - debugfs_create_u8 - debugfs_create_x32 - debugfs_create_x8 - debugfs_file_get - debugfs_file_put - debugfs_lookup - debugfs_remove - dec_zone_page_state - default_llseek - deferred_free - delayed_work_timer_fn - del_gendisk - del_timer - del_timer_sync - desc_to_gpio - destroy_workqueue - dev_coredumpv - _dev_crit - dev_driver_string - _dev_err - devfreq_add_device - devfreq_add_governor - devfreq_cooling_unregister - devfreq_remove_device - devfreq_remove_governor - devfreq_resume_device - devfreq_suspend_device - dev_fwnode - dev_get_by_name - dev_get_regmap - device_add - device_add_disk - device_add_groups - device_create - device_create_file - device_del - device_destroy - device_find_child - device_for_each_child - device_get_match_data - device_initialize - device_init_wakeup - device_link_add - device_match_fwnode - device_match_name - device_property_present - device_property_read_string - device_property_read_u16_array - device_property_read_u32_array - device_register - device_remove_file - device_show_int - device_store_int - device_unregister - device_wakeup_disable - device_wakeup_enable - _dev_info - devm_add_action - devm_blk_ksm_init - devm_clk_bulk_get_all - devm_clk_get - devm_clk_hw_register - devm_clk_put - devm_clk_register - devm_device_add_group - devm_device_remove_group - devm_extcon_dev_allocate - devm_extcon_dev_register - devm_extcon_dev_unregister - devm_free_irq - devm_gpiod_get_optional - devm_gpio_request - devm_gpio_request_one - devm_hwspin_lock_register - devm_iio_channel_get - devm_iio_device_alloc - __devm_iio_device_register - devm_input_allocate_device - devm_ioremap - devm_ioremap_resource - devm_ioremap_wc - devm_iounmap - devm_kasprintf - devm_kfree - devm_kmalloc - devm_kmemdup - devm_kstrdup - devm_led_classdev_register_ext - devm_nvmem_cell_get - devm_nvmem_device_get - devm_nvmem_register - devm_of_clk_add_hw_provider - devm_of_icc_get - __devm_of_phy_provider_register - devm_of_platform_populate - devm_of_pwm_get - devm_pci_alloc_host_bridge - devm_phy_create - devm_phy_get - devm_pinctrl_get - devm_pinctrl_put - devm_pinctrl_register - devm_platform_ioremap_resource - devm_platform_ioremap_resource_byname - devm_power_supply_register - devm_regmap_field_alloc - __devm_regmap_init - __devm_regmap_init_i2c - __devm_regmap_init_mmio_clk - devm_regulator_bulk_get - devm_regulator_get - devm_regulator_get_optional - devm_regulator_put - devm_regulator_register - devm_regulator_register_notifier - devm_request_any_context_irq - devm_request_threaded_irq - __devm_reset_control_get - devm_reset_controller_register - devm_rtc_allocate_device - devm_thermal_of_cooling_device_register - devm_thermal_zone_of_sensor_register - devm_usb_get_phy_by_node - _dev_notice - dev_pm_domain_attach - dev_pm_domain_attach_by_name - dev_pm_domain_detach - dev_pm_genpd_add_notifier - dev_pm_genpd_remove_notifier - dev_pm_genpd_set_next_wakeup - dev_pm_genpd_set_performance_state - dev_pm_opp_add - dev_pm_opp_find_freq_ceil - dev_pm_opp_find_freq_exact - dev_pm_opp_find_freq_floor - dev_pm_opp_get_opp_count - dev_pm_opp_get_voltage - dev_pm_opp_of_add_table - dev_pm_opp_of_find_icc_paths - dev_pm_opp_of_register_em - dev_pm_opp_of_remove_table - dev_pm_opp_put - dev_pm_opp_put_clkname - dev_pm_opp_remove_all_dynamic - dev_pm_opp_set_clkname - dev_pm_opp_set_rate - dev_pm_opp_set_sharing_cpus - dev_pm_qos_add_notifier - dev_pm_qos_add_request - dev_pm_qos_read_value - dev_pm_qos_remove_notifier - dev_pm_qos_remove_request - dev_pm_qos_update_request - dev_printk - devres_add - devres_alloc_node - devres_free - devres_release - dev_set_name - _dev_warn - disable_irq - disable_irq_nosync - disable_percpu_irq - disk_end_io_acct - disk_start_io_acct - divider_get_val - divider_recalc_rate - divider_ro_round_rate_parent - divider_round_rate_parent - dma_alloc_attrs - dma_async_device_register - dma_async_device_unregister - dma_async_tx_descriptor_init - dma_buf_attach - dma_buf_begin_cpu_access - dma_buf_begin_cpu_access_partial - dma_buf_detach - dma_buf_end_cpu_access - dma_buf_end_cpu_access_partial - dma_buf_export - dma_buf_fd - dma_buf_get - dma_buf_map_attachment - dma_buf_put - dma_buf_unmap_attachment - dma_buf_vmap - dma_buf_vunmap - dma_fence_add_callback - dma_fence_array_create - dma_fence_array_ops - dma_fence_context_alloc - dma_fence_default_wait - dma_fence_enable_sw_signaling - dma_fence_free - dma_fence_get_status - dma_fence_init - dma_fence_release - dma_fence_remove_callback - dma_fence_signal - dma_fence_signal_locked - dma_fence_wait_timeout - dma_free_attrs - dma_get_sgtable_attrs - dma_get_slave_channel - dma_heap_add - dma_heap_buffer_alloc - dma_heap_find - dma_heap_get_dev - dma_heap_get_drvdata - dma_heap_get_name - dmam_alloc_attrs - dma_map_page_attrs - dma_map_resource - dma_map_sg_attrs - dmam_free_coherent - dma_release_channel - dma_request_chan - dma_set_coherent_mask - dma_set_mask - dma_sync_sg_for_cpu - dma_sync_sg_for_device - dma_sync_single_for_cpu - dma_sync_single_for_device - dma_unmap_page_attrs - dma_unmap_resource - dma_unmap_sg_attrs - do_exit - down_read - down_write - d_path - dput - drain_workqueue - driver_find_device - driver_register - driver_unregister - edac_device_add_device - edac_device_alloc_ctl_info - edac_device_alloc_index - edac_device_del_device - edac_device_free_ctl_info - edac_device_handle_ce_count - edac_device_handle_ue_count - elevator_alloc - elv_register - elv_unregister - enable_irq - enable_percpu_irq - eventfd_ctx_fdget - eventfd_ctx_fileget - eventfd_ctx_put - eventfd_ctx_remove_wait_queue - eventfd_signal - event_triggers_call - extcon_get_edev_by_phandle - extcon_get_edev_name - extcon_get_property - extcon_get_state - extcon_register_notifier - extcon_set_state_sync - failure_tracking - fasync_helper - __fdget - fd_install - fget - filp_close - filp_open_block - find_last_bit - find_next_bit - find_next_zero_bit - find_snd_usb_substream - find_task_by_vpid - find_vma - find_vpid - finish_wait - firmware_request_nowarn - flush_dcache_page - flush_delayed_work - flush_work - flush_workqueue - fput - free_io_pgtable_ops - free_irq - __free_pages - free_pages - free_percpu - free_percpu_irq - freq_qos_add_request - freq_qos_remove_request - freq_qos_update_request - freq_scale - fsync_bdev - fwnode_find_reference - fwnode_get_next_child_node - fwnode_handle_get - fwnode_handle_put - fwnode_property_present - fwnode_property_read_string - fwnode_property_read_u32_array - generic_device_group - generic_handle_irq - generic_iommu_put_resv_regions - genlmsg_put - genl_register_family - genl_unregister_family - gen_pool_add_owner - gen_pool_alloc_algo_owner - gen_pool_avail - gen_pool_best_fit - gen_pool_create - gen_pool_destroy - gen_pool_first_fit_order_align - gen_pool_free_owner - gen_pool_has_addr - gen_pool_set_algo - gen_pool_size - gen_pool_virt_to_phys - getboottime64 - get_cpu_device - get_device - __get_free_pages - get_governor_parent_kobj - get_option - get_pid_task - get_random_bytes - get_random_u32 - get_sg_io_hdr - __get_task_comm - get_task_mm - get_task_pid - get_unmapped_area - get_unused_fd_flags - get_user_pages - gfp_zone - gic_nonsecure_priorities - gov_attr_set_init - gov_attr_set_put - governor_sysfs_ops - gpiochip_add_data_with_key - gpiochip_add_pin_range - gpiochip_generic_free - gpiochip_generic_request - gpiochip_get_data - gpiochip_line_is_valid - gpiochip_lock_as_irq - gpiochip_remove - gpiochip_unlock_as_irq - gpiod_direction_input - gpiod_direction_output - gpiod_direction_output_raw - gpiod_get_optional - gpiod_get_raw_value - gpiod_get_raw_value_cansleep - gpiod_get_value - gpiod_set_raw_value - gpiod_set_value - gpiod_set_value_cansleep - gpiod_to_irq - gpio_free - gpio_request - gpio_request_one - gpio_to_desc - handle_bad_irq - handle_edge_irq - handle_fasteoi_ack_irq - handle_fasteoi_irq - handle_level_irq - handle_nested_irq - handle_simple_irq - handle_sysrq - hashlen_string - hex_dump_to_buffer - hrtimer_active - hrtimer_cancel - hrtimer_forward - __hrtimer_get_remaining - hrtimer_init - hrtimer_start_range_ns - hrtimer_try_to_cancel - hvc_alloc - hvc_kick - hvc_poll - hvc_remove - hwrng_register - hwrng_unregister - hwspin_lock_free - hwspin_lock_request_specific - __hwspin_lock_timeout - __hwspin_unlock - hypervisor_kobj - i2c_add_adapter - i2c_del_adapter - i2c_del_driver - i2c_get_dma_safe_msg_buf - i2c_put_dma_safe_msg_buf - i2c_register_driver - i2c_smbus_read_byte_data - i2c_smbus_write_byte_data - i2c_transfer - i2c_transfer_buffer_flags - icc_get - icc_link_create - icc_node_add - icc_node_create - icc_node_del - icc_node_destroy - icc_provider_add - icc_provider_del - icc_put - icc_set_bw - icc_set_tag - ida_alloc_range - ida_free - idr_alloc - idr_alloc_cyclic - idr_destroy - idr_find - idr_for_each - idr_get_next - idr_preload - idr_remove - idr_replace - iio_channel_get - iio_channel_get_all - iio_channel_release - iio_read_channel_processed - import_iovec - inc_zone_page_state - in_egroup_p - init_iova_domain - init_net - init_pseudo - __init_rwsem - init_srcu_struct - __init_swait_queue_head - init_task - init_timer_key - init_uts_ns - init_wait_entry - __init_waitqueue_head - input_alloc_absinfo - input_allocate_device - input_close_device - input_event - input_free_device - input_mt_init_slots - input_mt_report_pointer_emulation - input_mt_report_slot_state - input_open_device - input_register_device - input_register_handle - input_register_handler - input_set_abs_params - input_set_capability - input_unregister_device - input_unregister_handle - input_unregister_handler - interval_tree_insert - interval_tree_iter_first - interval_tree_iter_next - interval_tree_remove - int_sqrt - iommu_alloc_resv_region - iommu_attach_device - iommu_detach_device - iommu_device_register - iommu_device_sysfs_add - iommu_device_sysfs_remove - iommu_device_unregister - iommu_dma_get_resv_regions - iommu_domain_alloc - iommu_domain_free - iommu_domain_get_attr - iommu_domain_set_attr - iommu_fwspec_add_ids - iommu_fwspec_free - iommu_get_dma_cookie - iommu_get_domain_for_dev - iommu_get_msi_cookie - iommu_group_for_each_dev - iommu_group_get - iommu_group_get_iommudata - iommu_group_put - iommu_group_ref_get - iommu_group_set_iommudata - iommu_iova_to_phys - iommu_map - iommu_map_sg - iommu_present - iommu_put_dma_cookie - iommu_set_fault_handler - iommu_unmap - __ioread32_copy - __ioremap - iounmap - __iowrite32_copy - ipi_desc_get - iput - irq_chip_ack_parent - irq_chip_disable_parent - irq_chip_enable_parent - irq_chip_eoi_parent - irq_chip_get_parent_state - irq_chip_mask_parent - irq_chip_retrigger_hierarchy - irq_chip_set_affinity_parent - irq_chip_set_parent_state - irq_chip_set_type_parent - irq_chip_set_vcpu_affinity_parent - irq_chip_set_wake_parent - irq_chip_unmask_parent - irq_create_fwspec_mapping - irq_dispose_mapping - __irq_domain_add - irq_domain_alloc_irqs_parent - irq_domain_create_hierarchy - irq_domain_free_irqs_common - irq_domain_free_irqs_parent - irq_domain_get_irq_data - irq_domain_remove - irq_domain_set_hwirq_and_chip - irq_domain_set_info - irq_domain_update_bus_token - irq_domain_xlate_twocell - irq_find_mapping - irq_find_matching_fwspec - irq_get_irqchip_state - irq_get_irq_data - irq_modify_status - irq_of_parse_and_map - irq_set_affinity_hint - irq_set_affinity_notifier - irq_set_chained_handler_and_data - irq_set_chip_and_handler_name - irq_set_chip_data - irq_set_irqchip_state - irq_set_irq_type - irq_set_irq_wake - irq_set_parent - irq_to_desc - irq_work_queue - irq_work_queue_on - irq_work_sync - is_dma_buf_file - is_vmalloc_addr - jiffies - jiffies_to_msecs - jiffies_to_usecs - kasan_flag_enabled - kasprintf - kernel_bind - kernel_connect - kernel_getsockname - kernel_kobj - kernel_recvmsg - kernel_restart - kernel_sendmsg - kern_mount - kern_unmount - __kfifo_alloc - __kfifo_in - __kfifo_out - kfree - kfree_const - kfree_sensitive - kfree_skb - kill_anon_super - kill_fasync - kimage_vaddr - kimage_voffset - __kmalloc - kmalloc_caches - kmalloc_order_trace - kmem_cache_alloc - kmem_cache_alloc_trace - kmem_cache_create - kmem_cache_create_usercopy - kmem_cache_destroy - kmem_cache_free - kmemdup - kmemdup_nul - kobject_add - kobject_create_and_add - kobject_del - kobject_init - kobject_init_and_add - kobject_put - kobject_set_name - kobject_uevent - kobj_sysfs_ops - krealloc - kset_create_and_add - ksize - ksoftirqd - kstat - kstat_irqs_cpu - kstat_irqs_usr - kstrdup - kstrdup_const - kstrndup - kstrtobool - kstrtoint - kstrtoll - kstrtou16 - kstrtou16_from_user - kstrtou8 - kstrtou8_from_user - kstrtouint - kstrtouint_from_user - kstrtoul_from_user - kstrtoull - kstrtoull_from_user - kthread_bind_mask - kthread_cancel_work_sync - kthread_create_on_node - kthread_create_worker - kthread_destroy_worker - kthread_flush_worker - __kthread_init_worker - kthread_queue_work - kthread_should_stop - kthread_stop - kthread_worker_fn - ktime_get - ktime_get_mono_fast_ns - ktime_get_real_seconds - ktime_get_real_ts64 - ktime_get_with_offset - kvfree - kvmalloc_node - led_classdev_flash_register_ext - led_classdev_flash_unregister - led_classdev_unregister - __list_add_valid - __list_del_entry_valid - list_sort - llist_add_batch - llist_reverse_order - __lock_page - lock_sock_nested - log_buf_addr_get - log_buf_len_get - __log_post_read_mmio - __log_read_mmio - __log_write_mmio - lzo1x_1_compress - lzo1x_decompress_safe - lzorle1x_1_compress - match_string - mbox_chan_received_data - mbox_chan_txdone - mbox_client_txdone - mbox_controller_register - mbox_controller_unregister - mbox_free_channel - mbox_request_channel - mbox_send_message - memblock_end_of_DRAM - __memcat_p - memcpy - __memcpy_fromio - __memcpy_toio - memdup_user - memmove - memory_block_size_bytes - memory_read_from_buffer - memparse - mempool_alloc - mempool_alloc_slab - mempool_create - mempool_destroy - mempool_free - mempool_free_slab - memremap - memset - memset64 - __memset_io - memstart_addr - memunmap - migrate_swap - misc_deregister - misc_register - mmc_cqe_request_done - mmc_of_parse - mmc_regulator_get_supply - mmc_regulator_set_ocr - mmc_regulator_set_vqmmc - mmc_send_tuning - mmput - mod_delayed_work_on - mod_node_page_state - mod_timer - __module_get - module_layout - module_put - __msecs_to_jiffies - msleep - msleep_interruptible - __mutex_init - mutex_is_locked - mutex_lock - mutex_lock_interruptible - mutex_trylock - mutex_unlock - netlink_broadcast - __netlink_kernel_create - netlink_kernel_release - netlink_unicast - __next_zones_zonelist - nla_find - nla_put - nla_reserve - nla_reserve_64bit - __nla_validate - __nlmsg_put - no_llseek - nonseekable_open - noop_llseek - nr_cpu_ids - nr_ipi_get - nr_irqs - ns_to_timespec64 - __num_online_cpus - nvmem_cell_get - nvmem_cell_put - nvmem_cell_read - nvmem_cell_read_u32 - nvmem_cell_write - nvmem_device_read - nvmem_device_write - of_address_to_resource - of_alias_get_id - of_clk_add_hw_provider - of_clk_add_provider - of_clk_del_provider - of_clk_hw_simple_get - of_clk_src_simple_get - of_count_phandle_with_args - of_cpufreq_cooling_register - of_cpu_node_to_id - of_devfreq_cooling_register - of_device_get_match_data - of_device_is_available - of_device_is_compatible - of_dma_configure_id - of_dma_controller_free - of_dma_controller_register - of_dma_is_coherent - of_drm_find_panel - of_find_compatible_node - of_find_device_by_node - of_find_i2c_device_by_node - of_find_matching_node_and_match - of_find_node_by_name - of_find_node_by_phandle - of_find_node_opts_by_path - of_find_node_with_property - of_find_property - of_fwnode_ops - of_genpd_add_provider_onecell - of_genpd_del_provider - of_get_address - of_get_child_by_name - of_get_cpu_node - of_get_named_gpio_flags - of_get_next_available_child - of_get_next_child - of_get_next_parent - of_get_property - of_get_regulator_init_data - of_graph_get_next_endpoint - of_graph_get_port_parent - of_graph_get_remote_endpoint - of_graph_is_present - of_graph_parse_endpoint - of_hwspin_lock_get_id - of_icc_get - of_icc_xlate_onecell - of_iomap - of_irq_find_parent - of_irq_get - of_irq_get_byname - of_irq_parse_one - of_match_device - of_match_node - of_n_addr_cells - of_node_name_eq - of_n_size_cells - of_parse_phandle - of_parse_phandle_with_args - of_parse_phandle_with_fixed_args - of_phandle_iterator_init - of_phandle_iterator_next - of_phy_simple_xlate - of_platform_depopulate - of_platform_device_create - of_platform_device_destroy - of_platform_populate - of_property_count_elems_of_size - of_property_match_string - of_property_read_string - of_property_read_string_helper - of_property_read_u32_index - of_property_read_u64_index - of_property_read_variable_u16_array - of_property_read_variable_u32_array - of_property_read_variable_u8_array - of_prop_next_string - of_prop_next_u32 - of_reserved_mem_device_init_by_idx - of_reserved_mem_device_release - of_reserved_mem_lookup - of_root - of_thermal_get_ntrips - of_thermal_get_trip_points - of_thermal_is_trip_valid - of_translate_address - on_each_cpu - oops_in_progress - overflowuid - page_endio - page_mapping - __page_pinner_migration_failed - panic - panic_notifier_list - panic_timeout - param_get_int - param_ops_bool - param_ops_int - param_ops_uint - param_set_bool - pause_cpus - pci_alloc_irq_vectors_affinity - pci_assign_resource - pci_bus_type - pci_clear_master - pci_device_group - pci_dev_present - pci_disable_device - pcie_capability_read_word - pci_enable_device - pci_find_ext_capability - pci_free_irq_vectors - pci_get_device - pci_host_probe - pci_iomap - pci_irq_vector - pci_load_and_free_saved_state - pci_load_saved_state - pci_msi_create_irq_domain - pci_msi_mask_irq - pci_msi_unmask_irq - pci_read_config_dword - pci_read_config_word - __pci_register_driver - pci_release_region - pci_request_region - pci_restore_state - pci_save_state - pci_set_master - pci_set_power_state - pci_store_saved_state - pci_unregister_driver - pci_walk_bus - pci_write_config_dword - __per_cpu_offset - per_cpu_ptr_to_phys - perf_aux_output_begin - perf_aux_output_end - perf_aux_output_flag - perf_event_create_kernel_counter - perf_event_disable - perf_event_enable - perf_event_read_local - perf_event_read_value - perf_event_release_kernel - perf_get_aux - perf_pmu_register - perf_pmu_unregister - perf_trace_buf_alloc - perf_trace_run_bpf_submit - pfn_valid - phy_calibrate - phy_exit - phy_init - phy_power_off - phy_power_on - phy_set_mode_ext - pick_highest_pushable_task - pid_nr_ns - pid_task - pinconf_generic_dt_node_to_map - pinctrl_dev_get_drvdata - pinctrl_force_default - pinctrl_force_sleep - pinctrl_lookup_state - pinctrl_pm_select_default_state - pinctrl_pm_select_sleep_state - pinctrl_select_state - pinctrl_utils_free_map - platform_bus_type - platform_device_add - platform_device_alloc - platform_device_del - platform_device_put - platform_device_register_full - platform_device_unregister - __platform_driver_register - platform_driver_unregister - platform_get_irq - platform_get_irq_byname - platform_get_resource - platform_get_resource_byname - platform_irq_count - pm_clk_add - pm_clk_create - pm_clk_destroy - pm_clk_resume - pm_clk_suspend - pm_genpd_add_subdomain - pm_genpd_init - pm_genpd_remove - pm_genpd_remove_subdomain - pm_power_off - __pm_relax - pm_relax - pm_runtime_allow - pm_runtime_barrier - __pm_runtime_disable - pm_runtime_enable - pm_runtime_forbid - pm_runtime_force_resume - pm_runtime_force_suspend - __pm_runtime_idle - pm_runtime_irq_safe - pm_runtime_no_callbacks - __pm_runtime_resume - pm_runtime_set_autosuspend_delay - __pm_runtime_set_status - __pm_runtime_suspend - __pm_runtime_use_autosuspend - __pm_stay_awake - pm_stay_awake - pm_wakeup_dev_event - pm_wakeup_ws_event - power_supply_changed - power_supply_get_by_name - power_supply_get_drvdata - power_supply_get_property - power_supply_put - power_supply_register - power_supply_reg_notifier - power_supply_set_property - power_supply_unregister - power_supply_unreg_notifier - prandom_u32 - preempt_schedule - preempt_schedule_notrace - prepare_to_wait_event - print_hex_dump - printk - printk_deferred - proc_dointvec - proc_dointvec_minmax - proc_dostring - proc_douintvec_minmax - proto_register - proto_unregister - __pskb_pull_tail - put_device - put_disk - put_iova_domain - __put_page - put_pid - put_sg_io_hdr - __put_task_struct - put_unused_fd - pwm_apply_state - pwmchip_add - pwmchip_remove - qcom_smem_state_get - qcom_smem_state_register - qcom_smem_state_unregister - qcom_smem_state_update_bits - queue_delayed_work_on - queue_work_on - radix_tree_insert - radix_tree_iter_delete - radix_tree_lookup - radix_tree_next_chunk - ___ratelimit - rational_best_approximation - raw_notifier_call_chain - raw_notifier_chain_register - raw_notifier_chain_unregister - _raw_read_lock - _raw_read_lock_bh - _raw_read_lock_irq - _raw_read_lock_irqsave - _raw_read_unlock - _raw_read_unlock_bh - _raw_read_unlock_irq - _raw_read_unlock_irqrestore - _raw_spin_lock - _raw_spin_lock_bh - _raw_spin_lock_irq - _raw_spin_lock_irqsave - _raw_spin_trylock - _raw_spin_trylock_bh - _raw_spin_unlock - _raw_spin_unlock_bh - _raw_spin_unlock_irq - _raw_spin_unlock_irqrestore - _raw_write_lock - _raw_write_lock_bh - _raw_write_lock_irq - _raw_write_lock_irqsave - _raw_write_unlock - _raw_write_unlock_bh - _raw_write_unlock_irq - _raw_write_unlock_irqrestore - rb_erase - rb_first - rb_insert_color - rb_last - rb_next - rb_prev - __rcu_read_lock - __rcu_read_unlock - rdev_get_drvdata - reboot_mode - refcount_dec_and_lock - refcount_dec_not_one - refcount_warn_saturate - register_blkdev - __register_chrdev - register_chrdev_region - register_console - register_die_notifier - register_ftrace_export - register_kretprobe - register_memory_notifier - register_module_notifier - register_pm_notifier - register_reboot_notifier - register_restart_handler - __register_rpmsg_driver - register_shrinker - register_syscore_ops - register_sysctl_table - regmap_bulk_read - regmap_bulk_write - regmap_check_range_table - regmap_field_read - regmap_field_update_bits_base - __regmap_init - regmap_mmio_detach_clk - regmap_read - regmap_update_bits_base - regmap_write - regulator_allow_bypass - regulator_bulk_disable - regulator_count_voltages - regulator_disable - regulator_disable_deferred - regulator_enable - regulator_force_disable - regulator_get - regulator_get_drvdata - regulator_get_mode - regulator_get_voltage - regulator_get_voltage_rdev - regulator_is_enabled - regulator_is_supported_voltage - regulator_list_voltage_linear - regulator_notifier_call_chain - regulator_put - regulator_register_notifier - regulator_set_current_limit - regulator_set_load - regulator_set_mode - regulator_set_voltage - regulator_unregister_notifier - release_firmware - release_sock - remap_pfn_range - remove_cpu - remove_memory_subsection - report_iommu_fault - request_any_context_irq - request_firmware - request_firmware_into_buf - request_firmware_nowait - __request_module - __request_percpu_irq - request_threaded_irq - resched_curr - reset_control_assert - reset_control_deassert - resume_cpus - revalidate_disk_size - rfkill_alloc - rfkill_destroy - rfkill_init_sw_state - rfkill_register - rfkill_unregister - rndis_deregister - rndis_free_response - rndis_get_next_response - rndis_msg_parser - rndis_register - rndis_set_host_mac - rndis_set_param_dev - rndis_set_param_medium - rndis_set_param_vendor - rndis_signal_connect - rndis_uninit - root_task_group - round_jiffies_relative - rpmsg_get_signals - rpmsg_poll - rpmsg_register_device - rpmsg_send - rpmsg_set_signals - rpmsg_trysend - rpmsg_unregister_device - rproc_add - rproc_add_subdev - rproc_alloc - rproc_boot - rproc_coredump_add_custom_segment - rproc_coredump_add_segment - rproc_coredump_set_elf_info - rproc_coredump_using_sections - rproc_del - rproc_free - rproc_get_by_child - rproc_get_by_phandle - rproc_put - rproc_remove_subdev - rproc_report_crash - rproc_shutdown - rtc_class_close - rtc_class_open - rtc_read_time - __rtc_register_device - rtc_time64_to_tm - rtc_tm_to_time64 - rtc_update_irq - rtc_valid_tm - runqueues - sbitmap_add_wait_queue - sbitmap_any_bit_set - sbitmap_del_wait_queue - sbitmap_init_node - sbitmap_queue_clear - __sbitmap_queue_get - sbitmap_queue_init_node - sbitmap_queue_min_shallow_depth - sbitmap_queue_resize - sbitmap_queue_show - sched_clock - sched_feat_keys - sched_feat_names - sched_setattr - sched_set_fifo - sched_set_normal - sched_setscheduler - sched_setscheduler_nocheck - sched_uclamp_used - schedule - schedule_timeout - scnprintf - scsi_autopm_get_device - scsi_autopm_put_device - scsi_block_when_processing_errors - scsi_command_size_tbl - scsi_compat_ioctl - scsi_device_get - scsi_device_put - scsi_device_quiesce - scsi_ioctl - scsi_ioctl_block_when_processing_errors - __scsi_iterate_devices - scsi_normalize_sense - __scsi_print_sense - scsi_print_sense_hdr - scsi_register_interface - scsi_remove_device - sdev_prefix_printk - __sdhci_add_host - sdhci_add_host - sdhci_cleanup_host - sdhci_cqe_disable - sdhci_cqe_enable - sdhci_cqe_irq - sdhci_enable_clk - sdhci_get_property - sdhci_pltfm_free - sdhci_pltfm_init - sdhci_remove_host - sdhci_reset - sdhci_set_bus_width - sdhci_set_power_noreg - sdhci_setup_host - seq_buf_printf - seq_list_next - seq_list_start - seq_lseek - seq_open - seq_printf - seq_putc - seq_puts - seq_read - seq_release - set_cpus_allowed_ptr - set_normalized_timespec64 - set_page_dirty_lock - __SetPageMovable - set_task_cpu - set_user_nice - sg_alloc_table - sg_alloc_table_from_pages - sg_free_table - sg_init_one - sg_init_table - sg_miter_next - sg_miter_start - sg_miter_stop - sg_next - __sg_page_iter_dma_next - __sg_page_iter_next - __sg_page_iter_start - sg_scsi_ioctl - show_regs - sigprocmask - si_meminfo - simple_attr_open - simple_attr_release - simple_open - simple_read_from_buffer - simple_write_to_buffer - single_open - single_release - si_swapinfo - sk_alloc - skb_clone - skb_copy_bits - skb_copy_datagram_iter - skb_dequeue - skb_free_datagram - __skb_pad - skb_push - skb_put - skb_queue_purge - skb_queue_tail - skb_recv_datagram - skb_set_owner_w - skb_store_bits - skb_trim - sk_free - skip_spaces - smp_call_function_single - snd_pcm_format_width - snd_soc_add_component_controls - snd_soc_info_volsw - snd_soc_register_component - snd_soc_unregister_component - snd_usb_enable_audio_stream - snprintf - soc_device_register - soc_device_unregister - sock_alloc_send_skb - sock_create_kern - sock_gettstamp - sock_init_data - sock_no_accept - sock_no_listen - sock_no_mmap - sock_no_sendpage - sock_no_shutdown - sock_no_socketpair - sock_queue_rcv_skb - sock_register - sock_release - sock_setsockopt - sock_unregister - sort - __spi_alloc_controller - spi_register_controller - spi_unregister_controller - spmi_controller_add - spmi_controller_alloc - spmi_controller_remove - __spmi_driver_register - spmi_ext_register_read - spmi_ext_register_readl - spmi_ext_register_write - spmi_ext_register_writel - spmi_register_read - spmi_register_write - spmi_register_zero_write - sprintf - srcu_init_notifier_head - srcu_notifier_call_chain - srcu_notifier_chain_register - srcu_notifier_chain_unregister - __srcu_read_lock - __srcu_read_unlock - sscanf - __stack_chk_fail - __stack_chk_guard - stack_trace_save_tsk - static_key_disable - stop_machine - stop_one_cpu_nowait - strcmp - strcpy - strim - strlcat - strlcpy - strlen - strncasecmp - strnchr - strncmp - strncpy - strncpy_from_user - strnlen - strnstr - strpbrk - strrchr - strscpy - strsep - strstr - __sw_hweight32 - __sw_hweight64 - __sw_hweight8 - sync_file_create - sync_file_get_fence - synchronize_irq - synchronize_rcu - synchronize_srcu - syscon_node_to_regmap - syscon_regmap_lookup_by_phandle - sysctl_sched_features - sysctl_vals - sysfs_add_file_to_group - sysfs_add_link_to_group - sysfs_create_bin_file - sysfs_create_file_ns - sysfs_create_files - sysfs_create_group - sysfs_create_link - sysfs_emit - __sysfs_match_string - sysfs_notify - sysfs_remove_bin_file - sysfs_remove_file_from_group - sysfs_remove_file_ns - sysfs_remove_files - sysfs_remove_group - sysfs_remove_link - sysfs_remove_link_from_group - sysfs_streq - sysrq_mask - system_freezable_wq - system_highpri_wq - system_unbound_wq - system_wq - sys_tz - task_active_pid_ns - __tasklet_hi_schedule - tasklet_init - tasklet_kill - __tasklet_schedule - tasklet_setup - tasklist_lock - task_may_not_preempt - __task_pid_nr_ns - __task_rq_lock - thermal_cooling_device_unregister - thermal_of_cooling_device_register - thermal_pressure - thermal_zone_device_enable - thermal_zone_device_register - thermal_zone_device_unregister - thermal_zone_device_update - thermal_zone_get_slope - thermal_zone_get_temp - thermal_zone_get_zone_by_name - thermal_zone_of_sensor_register - thermal_zone_of_sensor_unregister - tick_nohz_get_sleep_length - time64_to_tm - timer_reduce - topology_set_thermal_pressure - total_swapcache_pages - trace_array_get_by_name - trace_array_put - trace_array_set_clr_event - trace_event_buffer_commit - trace_event_buffer_reserve - trace_event_ignore_this_pid - trace_event_raw_init - trace_event_reg - trace_handle_return - __traceiter_android_rvh_account_irq - __traceiter_android_rvh_build_perf_domains - __traceiter_android_rvh_can_migrate_task - __traceiter_android_rvh_check_preempt_wakeup - __traceiter_android_rvh_cpu_cgroup_attach - __traceiter_android_rvh_cpu_cgroup_online - __traceiter_android_rvh_dequeue_task - __traceiter_android_rvh_enqueue_task - __traceiter_android_rvh_find_busiest_queue - __traceiter_android_rvh_find_lowest_rq - __traceiter_android_rvh_flush_task - __traceiter_android_rvh_migrate_queued_task - __traceiter_android_rvh_new_task_stats - __traceiter_android_rvh_replace_next_task_fair - __traceiter_android_rvh_resume_cpus - __traceiter_android_rvh_sched_cpu_dying - __traceiter_android_rvh_sched_cpu_starting - __traceiter_android_rvh_sched_exec - __traceiter_android_rvh_sched_fork - __traceiter_android_rvh_sched_fork_init - __traceiter_android_rvh_sched_newidle_balance - __traceiter_android_rvh_sched_nohz_balancer_kick - __traceiter_android_rvh_sched_setaffinity - __traceiter_android_rvh_schedule - __traceiter_android_rvh_select_task_rq_fair - __traceiter_android_rvh_select_task_rq_rt - __traceiter_android_rvh_set_gfp_zone_flags - __traceiter_android_rvh_set_readahead_gfp_mask - __traceiter_android_rvh_set_skip_swapcache_flags - __traceiter_android_rvh_set_task_cpu - __traceiter_android_rvh_tick_entry - __traceiter_android_rvh_try_to_wake_up - __traceiter_android_rvh_try_to_wake_up_success - __traceiter_android_rvh_ttwu_cond - __traceiter_android_rvh_update_cpu_capacity - __traceiter_android_rvh_update_cpus_allowed - __traceiter_android_rvh_update_misfit_status - __traceiter_android_rvh_wake_up_new_task - __traceiter_android_vh_allow_domain_state - __traceiter_android_vh_binder_restore_priority - __traceiter_android_vh_binder_set_priority - __traceiter_android_vh_binder_wakeup_ilocked - __traceiter_android_vh_cpu_idle_enter - __traceiter_android_vh_cpu_idle_exit - __traceiter_android_vh_ftrace_dump_buffer - __traceiter_android_vh_ftrace_format_check - __traceiter_android_vh_ftrace_oops_enter - __traceiter_android_vh_ftrace_oops_exit - __traceiter_android_vh_ftrace_size_check - __traceiter_android_vh_iommu_setup_dma_ops - __traceiter_android_vh_ipi_stop - __traceiter_android_vh_jiffies_update - __traceiter_android_vh_printk_hotplug - __traceiter_android_vh_scheduler_tick - __traceiter_android_vh_show_max_freq - __traceiter_android_vh_show_resume_epoch_val - __traceiter_android_vh_show_suspend_epoch_val - __traceiter_android_vh_timer_calc_index - __traceiter_android_vh_ufs_check_int_errors - __traceiter_android_vh_ufs_compl_command - __traceiter_android_vh_ufs_send_command - __traceiter_android_vh_ufs_update_sdev - __traceiter_binder_transaction_received - __traceiter_cpu_frequency_limits - __traceiter_cpu_idle - __traceiter_ipi_entry - __traceiter_ipi_raise - __traceiter_rwmmio_post_read - __traceiter_rwmmio_read - __traceiter_rwmmio_write - __traceiter_suspend_resume - __tracepoint_android_rvh_account_irq - __tracepoint_android_rvh_build_perf_domains - __tracepoint_android_rvh_can_migrate_task - __tracepoint_android_rvh_check_preempt_wakeup - __tracepoint_android_rvh_cpu_cgroup_attach - __tracepoint_android_rvh_cpu_cgroup_online - __tracepoint_android_rvh_dequeue_task - __tracepoint_android_rvh_enqueue_task - __tracepoint_android_rvh_find_busiest_queue - __tracepoint_android_rvh_find_lowest_rq - __tracepoint_android_rvh_flush_task - __tracepoint_android_rvh_migrate_queued_task - __tracepoint_android_rvh_new_task_stats - __tracepoint_android_rvh_replace_next_task_fair - __tracepoint_android_rvh_resume_cpus - __tracepoint_android_rvh_sched_cpu_dying - __tracepoint_android_rvh_sched_cpu_starting - __tracepoint_android_rvh_sched_exec - __tracepoint_android_rvh_sched_fork - __tracepoint_android_rvh_sched_fork_init - __tracepoint_android_rvh_sched_newidle_balance - __tracepoint_android_rvh_sched_nohz_balancer_kick - __tracepoint_android_rvh_sched_setaffinity - __tracepoint_android_rvh_schedule - __tracepoint_android_rvh_select_task_rq_fair - __tracepoint_android_rvh_select_task_rq_rt - __tracepoint_android_rvh_set_gfp_zone_flags - __tracepoint_android_rvh_set_readahead_gfp_mask - __tracepoint_android_rvh_set_skip_swapcache_flags - __tracepoint_android_rvh_set_task_cpu - __tracepoint_android_rvh_tick_entry - __tracepoint_android_rvh_try_to_wake_up - __tracepoint_android_rvh_try_to_wake_up_success - __tracepoint_android_rvh_ttwu_cond - __tracepoint_android_rvh_update_cpu_capacity - __tracepoint_android_rvh_update_cpus_allowed - __tracepoint_android_rvh_update_misfit_status - __tracepoint_android_rvh_wake_up_new_task - __tracepoint_android_vh_allow_domain_state - __tracepoint_android_vh_binder_restore_priority - __tracepoint_android_vh_binder_set_priority - __tracepoint_android_vh_binder_wakeup_ilocked - __tracepoint_android_vh_cpu_idle_enter - __tracepoint_android_vh_cpu_idle_exit - __tracepoint_android_vh_ftrace_dump_buffer - __tracepoint_android_vh_ftrace_format_check - __tracepoint_android_vh_ftrace_oops_enter - __tracepoint_android_vh_ftrace_oops_exit - __tracepoint_android_vh_ftrace_size_check - __tracepoint_android_vh_iommu_setup_dma_ops - __tracepoint_android_vh_ipi_stop - __tracepoint_android_vh_jiffies_update - __tracepoint_android_vh_printk_hotplug - __tracepoint_android_vh_scheduler_tick - __tracepoint_android_vh_show_max_freq - __tracepoint_android_vh_show_resume_epoch_val - __tracepoint_android_vh_show_suspend_epoch_val - __tracepoint_android_vh_timer_calc_index - __tracepoint_android_vh_ufs_check_int_errors - __tracepoint_android_vh_ufs_compl_command - __tracepoint_android_vh_ufs_send_command - __tracepoint_android_vh_ufs_update_sdev - __tracepoint_binder_transaction_received - __tracepoint_cpu_frequency_limits - __tracepoint_cpu_idle - __tracepoint_ipi_entry - __tracepoint_ipi_raise - tracepoint_probe_register - tracepoint_probe_register_prio - tracepoint_probe_unregister - __tracepoint_rwmmio_post_read - __tracepoint_rwmmio_read - __tracepoint_rwmmio_write - __tracepoint_suspend_resume - trace_print_array_seq - trace_print_flags_seq - trace_print_symbols_seq - trace_raw_output_prep - trace_seq_printf - trace_seq_putc - try_module_get - try_wait_for_completion - tty_flip_buffer_push - __tty_insert_flip_char - tty_insert_flip_string_fixed_flag - uart_add_one_port - uart_console_device - uart_console_write - uart_get_baud_rate - uart_insert_char - uart_parse_options - uart_register_driver - uart_remove_one_port - uart_resume_port - uart_set_options - uart_suspend_port - uart_try_toggle_sysrq - uart_unregister_driver - uart_update_timeout - uart_write_wakeup - uclamp_eff_value - ucsi_connector_change - ucsi_create - ucsi_destroy - ucsi_get_drvdata - ucsi_register - ucsi_set_drvdata - ucsi_unregister - __udelay - ufshcd_auto_hibern8_update - ufshcd_dme_get_attr - ufshcd_dme_set_attr - ufshcd_dump_regs - ufshcd_fixup_dev_quirks - ufshcd_get_local_unipro_ver - ufshcd_pltfrm_init - ufshcd_pltfrm_resume - ufshcd_pltfrm_runtime_idle - ufshcd_pltfrm_runtime_resume - ufshcd_pltfrm_runtime_suspend - ufshcd_pltfrm_suspend - ufshcd_query_attr - ufshcd_query_attr_retry - ufshcd_query_descriptor_retry - ufshcd_query_flag - ufshcd_read_desc_param - ufshcd_remove - ufshcd_shutdown - ufshcd_uic_hibern8_enter - ufshcd_uic_hibern8_exit - __uio_register_device - uio_unregister_device - unlock_page - unregister_blkdev - __unregister_chrdev - unregister_chrdev_region - unregister_console - unregister_die_notifier - unregister_ftrace_export - unregister_kretprobe - unregister_module_notifier - unregister_pm_notifier - unregister_reboot_notifier - unregister_restart_handler - unregister_rpmsg_driver - unregister_shrinker - unregister_syscore_ops - update_devfreq - update_rq_clock - up_read - up_write - usb_add_phy_dev - usb_alloc_coherent - usb_alloc_dev - usb_alloc_urb - usb_assign_descriptors - usb_composite_setup_continue - usb_control_msg - usb_deregister - usb_ep_alloc_request - usb_ep_autoconfig - usb_ep_dequeue - usb_ep_disable - usb_ep_enable - usb_ep_free_request - usb_ep_queue - usb_ep_set_halt - usb_find_common_endpoints - usb_free_all_descriptors - usb_free_coherent - usb_free_urb - usb_function_register - usb_function_unregister - usb_gadget_wakeup - usb_ifnum_to_if - usb_interface_id - usb_phy_set_charger_current - usb_poison_urb - usb_put_dev - usb_put_function_instance - usb_register_driver - usb_register_notify - usb_remove_phy - usb_role_switch_find_by_fwnode - usb_role_switch_get_drvdata - usb_role_switch_register - usb_role_switch_set_role - usb_role_switch_unregister - usb_set_device_state - usb_speed_string - usb_string_id - usb_submit_urb - usb_unregister_notify - __usecs_to_jiffies - usleep_range - v4l2_compat_ioctl32 - v4l2_ctrl_handler_free - v4l2_device_register - v4l2_device_unregister - vabits_actual - vchan_dma_desc_free_list - vchan_find_desc - vchan_init - vchan_tx_desc_free - vchan_tx_submit - vfree - video_devdata - video_device_release_empty - video_ioctl2 - __video_register_device - video_unregister_device - vmalloc - vmalloc_nr_pages - vmalloc_to_page - vmalloc_to_pfn - vmap - vmf_insert_pfn - vm_insert_page - vm_iomap_memory - vm_map_pages - vm_node_stat - vm_zone_stat - vscnprintf - vsnprintf - vunmap - vzalloc - wait_for_completion - wait_for_completion_interruptible - wait_for_completion_interruptible_timeout - wait_for_completion_killable - wait_for_completion_timeout - __wake_up - wake_up_if_idle - wake_up_process - wakeup_source_add - wakeup_source_register - wakeup_source_remove - wakeup_source_unregister - __warn_printk - ww_mutex_lock - ww_mutex_unlock - __xa_alloc - xa_destroy - xa_erase - xa_find - xa_find_after - xa_load - xa_store - xhci_alloc_command - xhci_alloc_erst - xhci_free_command - xhci_get_endpoint_index - xhci_queue_stop_endpoint - xhci_ring_alloc - xhci_ring_cmd_db - xhci_ring_free - xhci_trb_virt_to_dma - zone_watermark_ok_safe diff --git a/android/abi_gki_aarch64_xiaomi b/android/abi_gki_aarch64_xiaomi deleted file mode 100644 index 867cd0739539..000000000000 --- a/android/abi_gki_aarch64_xiaomi +++ /dev/null @@ -1,114 +0,0 @@ -[abi_symbol_list] -# commonly used symbols - -# required by xxx.ko - -# required by touch module - proc_mkdir_data - -# required by aw8697-haptic.ko - devm_gpio_free - i2c_smbus_read_byte_data - i2c_smbus_write_byte_data - -#required by memory module - blk_execute_rq - blk_rq_map_kern - scsi_device_lookup - scsi_host_lookup - scsi_host_put - ufshcd_read_desc_param - utf16s_to_utf8s - async_schedule_node - blk_ksm_register - blk_ksm_reprogram_all_keys - blk_mq_alloc_tag_set - blk_mq_init_queue - blk_mq_tagset_busy_iter - bsg_job_done - bsg_remove_queue - bsg_setup_queue - dev_pm_opp_remove - scsi_add_host_with_dma - scsi_block_requests - scsi_dma_unmap - scsi_is_host_device - scsi_remove_host - scsi_report_bus_reset - scsi_scan_host - scsi_unblock_requests - sg_copy_from_buffer - sg_copy_to_buffer - ufshcd_alloc_host - ufshcd_config_pwr_mode - ufshcd_dealloc_host - ufshcd_hba_enable - ufshcd_make_hba_operational - ufshcd_map_desc_id_to_length - ufshcd_query_attr_retry - ufshcd_query_flag_retry - wait_for_completion_io_timeout - __scsi_add_device - __scsi_execute - blk_mq_free_tag_set - -#required by cs35l41 module - regmap_raw_write_async - snd_soc_bytes_tlv_callback - regmap_async_complete - snd_compr_stop_error - snd_soc_component_disable_pin - snd_soc_component_force_enable_pin - snd_pcm_format_physical_width - snd_pcm_hw_constraint_list - regmap_multi_reg_write_bypassed - snd_ctl_boolean_mono_info - snd_soc_put_volsw_range - snd_soc_get_volsw_range - snd_soc_info_volsw_range - regmap_raw_write - regcache_drop_region - regmap_raw_read - regmap_multi_reg_write - regulator_bulk_enable - -#required by mtd module - __blk_mq_end_request - balance_dirty_pages_ratelimited - bdi_alloc - bdi_put - bdi_register - blk_mq_freeze_queue - blk_mq_init_sq_queue - blk_mq_quiesce_queue - blk_mq_start_request - blk_mq_unfreeze_queue - blk_mq_unquiesce_queue - blk_queue_write_cache - blk_update_request - blkdev_get_by_dev - blkdev_get_by_path - blkdev_put - deactivate_locked_super - fixed_size_llseek - generic_shutdown_super - kmsg_dump_get_buffer - kmsg_dump_register - kmsg_dump_rewind - kmsg_dump_unregister - ktime_get_coarse_real_ts64 - lockref_get - logfc - lookup_bdev - name_to_dev_t - nvmem_register - nvmem_unregister - proc_create_single_data - read_cache_page - rq_flush_dcache_pages - set_disk_ro - set_page_dirty - sget_fc - simple_strtoul - sync_blockdev - wait_for_device_probe diff --git a/build.config.db845c b/build.config.db845c index 0cf98815f3be..2e59c3f018d8 100644 --- a/build.config.db845c +++ b/build.config.db845c @@ -17,5 +17,4 @@ arch/arm64/boot/Image.gz arch/arm64/boot/dts/qcom/sdm845-db845c.dtb vmlinux " -KMI_SYMBOL_LIST=android/abi_gki_aarch64_db845c GKI_MODULES_LIST=android/gki_aarch64_modules diff --git a/build.config.gki.aarch64 b/build.config.gki.aarch64 index d8e2a2818436..0bd7c7e5976a 100644 --- a/build.config.gki.aarch64 +++ b/build.config.gki.aarch64 @@ -6,23 +6,11 @@ MAKE_GOALS="${MAKE_GOALS} Image.lz4 " -ABI_DEFINITION=android/abi_gki_aarch64.xml TIDY_ABI=1 KMI_SYMBOL_LIST=android/abi_gki_aarch64 ADDITIONAL_KMI_SYMBOL_LISTS=" android/abi_gki_aarch64_core -android/abi_gki_aarch64_db845c -android/abi_gki_aarch64_qcom -android/abi_gki_aarch64_virtual_device -android/abi_gki_aarch64_hikey960 -android/abi_gki_aarch64_generic -android/abi_gki_aarch64_exynos -android/abi_gki_aarch64_exynosauto -android/abi_gki_aarch64_mtk -android/abi_gki_aarch64_xiaomi android/abi_gki_aarch64_fips140 -android/abi_gki_aarch64_vivo -android/abi_gki_aarch64_oplus " FILES="${FILES} diff --git a/build.config.hikey960 b/build.config.hikey960 index 29823f124573..a9204f983b7e 100644 --- a/build.config.hikey960 +++ b/build.config.hikey960 @@ -20,5 +20,4 @@ arch/arm64/boot/dts/hisilicon/hi3660-hikey960.dtb vmlinux System.map " -KMI_SYMBOL_LIST=android/abi_gki_aarch64_hikey960 GKI_MODULES_LIST=android/gki_aarch64_modules