├── odm.prop
├── product.prop
├── sepolicy
├── vendor
│ ├── rild.te
│ ├── sensors.te
│ ├── hal_wifi_default.te
│ ├── mediaserver.te
│ ├── service.te
│ ├── hal_bootctl_default.te
│ ├── hal_neuralnetworks_default.te
│ ├── hal_ir_default.te
│ ├── init.te
│ ├── app.te
│ ├── vendor_qtelephony.te
│ ├── hal_secure_element_default.te
│ ├── dumpstate.te
│ ├── hal_nfc_default.te
│ ├── hal_bluetooth_default.te
│ ├── tee.te
│ ├── hal_gnss_qti.te
│ ├── surfaceflinger.te
│ ├── hal_lineage_powershare_default.te
│ ├── qti_init_shell.te
│ ├── hal_lineage_health_default.te
│ ├── property.te
│ ├── hal_audio_default.te
│ ├── hal_power_default.te
│ ├── hal_cameraperf.te
│ ├── service_contexts
│ ├── vendor_init.te
│ ├── hal_googlebattery.te
│ ├── hal_wlc.te
│ ├── attributes
│ ├── hal_camerapostproc_xiaomi.te
│ ├── system_server.te
│ ├── gmscore_app.te
│ ├── untrusted_app.te
│ ├── hal_perf_default.te
│ ├── hal_sensors_default.te
│ ├── hal_mlipay.te
│ ├── hal_camera_default.te
│ ├── property_contexts
│ ├── vendor_hal_citsensorservice_xiaomi.te
│ ├── mi_thermald.te
│ ├── hal_fingerprint_default.te
│ ├── battery.te
│ ├── system_app.te
│ ├── hwservice_contexts
│ └── platform_app.te
├── dolby
│ ├── hwservice.te
│ ├── attributes
│ ├── mediacodec.te
│ ├── priv_app.te
│ ├── hwservice_contexts
│ ├── platform_app.te
│ ├── hal_audio_default.te
│ ├── file_contexts
│ ├── hal_dms.te
│ └── hal_dms_default.te
├── private
│ ├── mediaprovider_app.te
│ ├── vendor_qtelephony.te
│ ├── vold_prepare_subdirs.te
│ ├── system_server.te
│ ├── platform_app.te
│ ├── dontaudit.te
│ ├── service_contexts
│ ├── system_app.te
│ └── property_contexts
└── public
│ └── attributes
├── gps
├── android
│ ├── Android.mk
│ ├── 1.0
│ │ ├── android.hardware.gnss@1.0-service-qti.rc
│ │ ├── android.hardware.gnss@1.0-service-qti.xml
│ │ ├── GnssDebug.h
│ │ ├── GnssConfiguration.h
│ │ ├── GnssNi.h
│ │ └── AGnss.h
│ ├── 1.1
│ │ ├── android.hardware.gnss@1.1-service-qti.rc
│ │ ├── android.hardware.gnss@1.1-service-qti.xml
│ │ ├── GnssDebug.h
│ │ ├── GnssNi.h
│ │ └── AGnss.h
│ ├── 2.0
│ │ ├── android.hardware.gnss@2.0-service-qti.rc
│ │ ├── android.hardware.gnss@2.0-service-qti.xml
│ │ ├── GnssDebug.h
│ │ ├── GnssNi.h
│ │ └── AGnss.h
│ ├── 2.1
│ │ ├── android.hardware.gnss@2.1-service-qti.rc
│ │ ├── android.hardware.gnss@2.1-service-qti.xml
│ │ ├── GnssDebug.h
│ │ ├── GnssNi.h
│ │ └── AGnss.h
│ └── utils
│ │ └── Android.bp
├── pla
│ └── Android.bp
├── Makefile.am
├── gps_vendor_board.mk
├── core
│ ├── loc-core.pc.in
│ ├── Android.bp
│ ├── data-items
│ │ └── DataItemsFactoryProxy.h
│ ├── Makefile.am
│ └── LocContext.h
├── utils
│ ├── gps-utils.pc.in
│ ├── Android.bp
│ ├── LocLoggerBase.h
│ ├── Makefile.am
│ └── MsgTask.h
├── location
│ ├── location-api.pc.in
│ ├── Android.bp
│ └── Makefile.am
├── batching
│ ├── location-batching.pc.in
│ ├── Android.bp
│ ├── Makefile.am
│ └── configure.ac
├── geofence
│ ├── location-geofence.pc.in
│ ├── Android.bp
│ ├── Makefile.am
│ └── configure.ac
├── loc-hal.pc.in
├── Android.bp
├── gnss
│ ├── Android.bp
│ └── Makefile.am
├── Android.mk
├── etc
│ ├── lowi.conf
│ ├── Android.bp
│ ├── seccomp_policy
│ │ └── gnss@2.0-xtra-daemon.policy
│ └── flp.conf
├── gps_vendor_product.mk
└── CleanSpec.mk
├── README.md
├── Android.bp
├── parts
├── res
│ ├── raw
│ │ └── clear_speaker_sound.mp3
│ ├── mipmap-anydpi
│ │ └── ic_launcher.xml
│ ├── drawable
│ │ ├── ic_launcher_background.xml
│ │ ├── ic_thermal_camera.xml
│ │ ├── ic_thermal_video.xml
│ │ ├── ic_thermal_default.xml
│ │ ├── ic_thermal_navigation.xml
│ │ ├── ic_refresh_default.xml
│ │ ├── ic_thermal_streaming.xml
│ │ ├── ic_thermal_dialer.xml
│ │ ├── ic_thermal_gaming.xml
│ │ ├── ic_thermal_benchmark.xml
│ │ ├── ic_refresh_60.xml
│ │ ├── ic_clear_speaker.xml
│ │ ├── ic_thermal_browser.xml
│ │ ├── ic_refresh_120.xml
│ │ └── ic_launcher_foreground.xml
│ ├── xml
│ │ └── clear_speaker_settings.xml
│ ├── layout
│ │ ├── refresh_layout.xml
│ │ └── thermal_layout.xml
│ ├── values
│ │ ├── themes.xml
│ │ └── strings.xml
│ └── values-tr
│ │ └── strings.xml
├── proguard.flags
├── Android.bp
└── src
│ └── org
│ └── lineageos
│ └── settings
│ ├── BootCompletedReceiver.java
│ ├── speaker
│ └── ClearSpeakerActivity.java
│ ├── refreshrate
│ └── RefreshActivity.java
│ ├── thermal
│ └── ThermalSettingsActivity.java
│ └── dolby
│ └── DolbyActivity.java
├── wifi
├── p2p_supplicant_overlay.conf
└── wpa_supplicant_overlay.conf
├── configs
├── public.libraries.txt
├── perf
│ └── msm_irqbalance.conf
├── privapp-permissions-hotword.xml
├── camera_cnf.txt
├── telephony_system-ext_privapp-permissions-qti.xml
└── qti_whitelist.xml
├── rro_overlays
├── WifiOverlay
│ ├── Android.bp
│ └── AndroidManifest.xml
└── CarrierConfigOverlay
│ ├── Android.bp
│ └── AndroidManifest.xml
├── vibrator
├── aidl
│ ├── vendor.qti.hardware.vibrator.service.xiaomi_sm8350.rc
│ ├── vendor.qti.hardware.vibrator.service.xiaomi_sm8350.xml
│ ├── Android.bp
│ └── service.cpp
├── effect
│ ├── Android.bp
│ └── effect.h
└── excluded-input-devices.xml
├── system_ext.prop
├── rootdir
├── etc
│ ├── init.mi_thermald.rc
│ ├── init.recovery.qcom.rc
│ ├── charger_fstab.qcom
│ ├── init.xiaomi-sm8350.perf.rc
│ └── init.batterysecret.rc
└── bin
│ ├── vendor_modprobe.sh
│ └── init.kernel.post_boot.sh
├── hidl
├── manifest_lineage.xml
├── manifest_xiaomi.xml
└── xiaomi_framework_compatibility_matrix.xml
├── udfps
└── Android.bp
├── removepackagesgms
└── Android.mk
├── overlay
├── frameworks
│ └── base
│ │ └── packages
│ │ └── SystemUI
│ │ └── res
│ │ └── values-sw372dp
│ │ └── dimens.xml
└── packages
│ └── services
│ └── Telephony
│ └── res
│ └── values
│ └── config.xml
├── bootctrl
└── Android.bp
├── overlay-superior
├── packages
│ └── apps
│ │ └── Dialer
│ │ └── java
│ │ └── com
│ │ └── android
│ │ └── dialer
│ │ └── callrecord
│ │ └── res
│ │ └── values
│ │ └── config.xml
└── frameworks
│ └── base
│ ├── core
│ └── res
│ │ └── res
│ │ └── values
│ │ └── config.xml
│ └── packages
│ └── SystemUI
│ └── res
│ └── values
│ └── config.xml
├── media
└── media_codecs_vendor_audio.xml
├── gpt-utils
└── Android.bp
├── setup-makefiles.sh
├── dolby
└── permissions
│ ├── privapp-com.dolby.daxappui.xml
│ └── privapp-com.dolby.daxservice.xml
├── power
└── power-mode.cpp
├── system.prop
└── config.fs
/odm.prop:
--------------------------------------------------------------------------------
1 | # Qcom
2 | ro.vendor.qti.va_odm.support=1
3 |
--------------------------------------------------------------------------------
/product.prop:
--------------------------------------------------------------------------------
1 | # Blur
2 | ro.launcher.blur.appLaunch=0
3 |
--------------------------------------------------------------------------------
/sepolicy/vendor/rild.te:
--------------------------------------------------------------------------------
1 | # IMEI
2 | set_prop(rild, vendor_deviceid_prop)
3 |
--------------------------------------------------------------------------------
/sepolicy/vendor/sensors.te:
--------------------------------------------------------------------------------
1 | r_dir_file(vendor_sensors, vendor_sysfs_graphics)
2 |
--------------------------------------------------------------------------------
/sepolicy/dolby/hwservice.te:
--------------------------------------------------------------------------------
1 | # Dolby
2 | type hal_dms_hwservice, hwservice_manager_type;
3 |
--------------------------------------------------------------------------------
/sepolicy/vendor/hal_wifi_default.te:
--------------------------------------------------------------------------------
1 | allow hal_wifi_default self:capability sys_module;
2 |
--------------------------------------------------------------------------------
/gps/android/Android.mk:
--------------------------------------------------------------------------------
1 | LOCAL_PATH := $(call my-dir)
2 | include $(call all-subdir-makefiles)
3 |
--------------------------------------------------------------------------------
/sepolicy/private/mediaprovider_app.te:
--------------------------------------------------------------------------------
1 | allow mediaprovider_app radio_service:service_manager find;
2 |
--------------------------------------------------------------------------------
/sepolicy/vendor/mediaserver.te:
--------------------------------------------------------------------------------
1 | allow mediaserver package_native_service:service_manager { find };
2 |
--------------------------------------------------------------------------------
/sepolicy/vendor/service.te:
--------------------------------------------------------------------------------
1 | type hal_googlebattery_service, hal_service_type, service_manager_type;
2 |
--------------------------------------------------------------------------------
/sepolicy/vendor/hal_bootctl_default.te:
--------------------------------------------------------------------------------
1 | allow hal_bootctl_default vendor_uefi_block_device:blk_file getattr;
2 |
--------------------------------------------------------------------------------
/sepolicy/private/vendor_qtelephony.te:
--------------------------------------------------------------------------------
1 | allow vendor_qtelephony vendor_hal_telephony_service:service_manager find;
2 |
--------------------------------------------------------------------------------
/sepolicy/public/attributes:
--------------------------------------------------------------------------------
1 | attribute hal_mlipay;
2 | attribute hal_mlipay_client;
3 | attribute hal_mlipay_server;
4 |
--------------------------------------------------------------------------------
/sepolicy/vendor/hal_neuralnetworks_default.te:
--------------------------------------------------------------------------------
1 | get_prop(vendor_hal_neuralnetworks_default, graphics_config_prop)
2 |
--------------------------------------------------------------------------------
/sepolicy/dolby/attributes:
--------------------------------------------------------------------------------
1 | # HALs
2 | attribute hal_dms;
3 | attribute hal_dms_client;
4 | attribute hal_dms_server;
5 |
--------------------------------------------------------------------------------
/sepolicy/private/vold_prepare_subdirs.te:
--------------------------------------------------------------------------------
1 | allow vold_prepare_subdirs {
2 | checkin_data_file
3 | }:dir relabelfrom;
4 |
--------------------------------------------------------------------------------
/sepolicy/private/system_server.te:
--------------------------------------------------------------------------------
1 | # Allow system_server to read wifi_hal_prop
2 | get_prop(system_server, wifi_hal_prop)
3 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | Copyright (C) 2020 - The LineageOS Project
2 |
3 | Common device tree for Xiaomi SM8350 based devices
4 | ==============
5 |
--------------------------------------------------------------------------------
/sepolicy/dolby/mediacodec.te:
--------------------------------------------------------------------------------
1 | allow mediacodec hal_dms_hwservice:hwservice_manager find;
2 | binder_call(mediacodec, hal_dms_default)
3 |
--------------------------------------------------------------------------------
/sepolicy/vendor/hal_ir_default.te:
--------------------------------------------------------------------------------
1 | type ir_spi_device, dev_type;
2 |
3 | allow hal_ir_default ir_spi_device:chr_file rw_file_perms;
4 |
--------------------------------------------------------------------------------
/Android.bp:
--------------------------------------------------------------------------------
1 | soong_namespace {
2 | imports: [
3 | "hardware/qcom-caf/bootctrl",
4 | "hardware/xiaomi",
5 | ],
6 | }
7 |
--------------------------------------------------------------------------------
/sepolicy/dolby/priv_app.te:
--------------------------------------------------------------------------------
1 | # Dolby
2 | allow priv_app hal_dms_hwservice:hwservice_manager find;
3 | binder_call(priv_app, hal_dms_default)
4 |
--------------------------------------------------------------------------------
/sepolicy/vendor/init.te:
--------------------------------------------------------------------------------
1 | # FPS info
2 | allow init vendor_sysfs_graphics:dir search;
3 | allow init vendor_sysfs_graphics:file rw_file_perms;
4 |
--------------------------------------------------------------------------------
/sepolicy/vendor/app.te:
--------------------------------------------------------------------------------
1 | get_prop({ appdomain -isolated_app_all }, vendor_fp_prop)
2 | get_prop({ appdomain -isolated_app_all }, vendor_mlipay_prop)
3 |
--------------------------------------------------------------------------------
/sepolicy/dolby/hwservice_contexts:
--------------------------------------------------------------------------------
1 | # Dolby
2 | vendor.dolby.hardware.dms::IDms u:object_r:hal_dms_hwservice:s0
3 |
--------------------------------------------------------------------------------
/sepolicy/dolby/platform_app.te:
--------------------------------------------------------------------------------
1 | # Dolby
2 | allow platform_app hal_dms_hwservice:hwservice_manager find;
3 | binder_call(platform_app, hal_dms_default)
4 |
--------------------------------------------------------------------------------
/gps/pla/Android.bp:
--------------------------------------------------------------------------------
1 |
2 | cc_library_headers {
3 |
4 | name: "libloc_pla_headers",
5 | export_include_dirs: ["android"],
6 | vendor: true,
7 | }
8 |
--------------------------------------------------------------------------------
/parts/res/raw/clear_speaker_sound.mp3:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SuperiorOS-Devices/device_xiaomi_haydn-common/fourteen/parts/res/raw/clear_speaker_sound.mp3
--------------------------------------------------------------------------------
/sepolicy/dolby/hal_audio_default.te:
--------------------------------------------------------------------------------
1 | # Dolby
2 | allow hal_audio_default hal_dms_hwservice:hwservice_manager find;
3 | binder_call(hal_audio_default, hal_dms_default)
4 |
--------------------------------------------------------------------------------
/sepolicy/vendor/vendor_qtelephony.te:
--------------------------------------------------------------------------------
1 | set_prop(vendor_qtelephony, radio_prop)
2 |
3 | allow vendor_qtelephony vendor_hal_datafactory_hwservice:hwservice_manager find;
4 |
--------------------------------------------------------------------------------
/wifi/p2p_supplicant_overlay.conf:
--------------------------------------------------------------------------------
1 | disable_scan_offload=1
2 | p2p_no_group_iface=1
3 | persistent_reconnect=1
4 | bss_max_count=400
5 | p2p_go_he=1
6 | p2p_6ghz_disable=1
7 |
--------------------------------------------------------------------------------
/configs/public.libraries.txt:
--------------------------------------------------------------------------------
1 | libqti-perfd-client.so
2 | libadsprpc.so
3 | libcdsprpc.so
4 | libsdsprpc.so
5 | libfastcvopt.so
6 | liblistensoundmodel2.so
7 | libOpenCL.so
8 |
--------------------------------------------------------------------------------
/sepolicy/vendor/hal_secure_element_default.te:
--------------------------------------------------------------------------------
1 | # Allow Secure Element hal to access /date/vendor/nfc/
2 | r_dir_file(hal_secure_element_default, vendor_nfc_vendor_data_file)
3 |
--------------------------------------------------------------------------------
/sepolicy/vendor/dumpstate.te:
--------------------------------------------------------------------------------
1 | # To find and bind Google Battery HAL
2 | allow dumpstate hal_googlebattery_service:service_manager find;
3 | binder_call(dumpstate, hal_googlebattery)
4 |
--------------------------------------------------------------------------------
/sepolicy/vendor/hal_nfc_default.te:
--------------------------------------------------------------------------------
1 | allow hal_nfc_default vendor_nfc_vendor_data_file:dir create_dir_perms;
2 | allow hal_nfc_default vendor_nfc_vendor_data_file:file create_file_perms;
3 |
--------------------------------------------------------------------------------
/rro_overlays/WifiOverlay/Android.bp:
--------------------------------------------------------------------------------
1 | runtime_resource_overlay {
2 | name: "WifiOverlay",
3 | theme: "WifiOverlay",
4 | sdk_version: "current",
5 | product_specific: true
6 | }
7 |
--------------------------------------------------------------------------------
/sepolicy/vendor/hal_bluetooth_default.te:
--------------------------------------------------------------------------------
1 | allow hal_bluetooth_default vendor_wifi_vendor_data_file:dir { search };
2 | allow hal_bluetooth_default vendor_wifi_vendor_data_file:file { read open };
3 |
--------------------------------------------------------------------------------
/sepolicy/vendor/tee.te:
--------------------------------------------------------------------------------
1 | allow tee vendor_fingerprint_data_file:dir create_dir_perms;
2 | allow tee vendor_fingerprint_data_file:file create_file_perms;
3 | allow tee vendor_bsg_device:chr_file { setattr };
4 |
--------------------------------------------------------------------------------
/sepolicy/vendor/hal_gnss_qti.te:
--------------------------------------------------------------------------------
1 | # xtra-daemon control
2 | get_prop(vendor_hal_gnss_qti, xtra_control_prop)
3 |
4 | # Allow gnss to read boot status prop
5 | get_prop(vendor_hal_gnss_qti, boot_status_prop)
6 |
--------------------------------------------------------------------------------
/gps/android/1.0/android.hardware.gnss@1.0-service-qti.rc:
--------------------------------------------------------------------------------
1 | service gnss_service /vendor/bin/hw/android.hardware.gnss@1.0-service-qti
2 | class hal
3 | user gps
4 | group system gps radio vendor_qti_diag
5 |
--------------------------------------------------------------------------------
/gps/android/1.1/android.hardware.gnss@1.1-service-qti.rc:
--------------------------------------------------------------------------------
1 | service gnss_service /vendor/bin/hw/android.hardware.gnss@1.1-service-qti
2 | class hal
3 | user gps
4 | group system gps radio vendor_qti_diag
5 |
--------------------------------------------------------------------------------
/gps/android/2.0/android.hardware.gnss@2.0-service-qti.rc:
--------------------------------------------------------------------------------
1 | service gnss_service /vendor/bin/hw/android.hardware.gnss@2.0-service-qti
2 | class hal
3 | user gps
4 | group system gps radio vendor_qti_diag
5 |
--------------------------------------------------------------------------------
/gps/android/2.1/android.hardware.gnss@2.1-service-qti.rc:
--------------------------------------------------------------------------------
1 | service gnss_service /vendor/bin/hw/android.hardware.gnss@2.1-service-qti
2 | class hal
3 | user gps
4 | group system gps radio vendor_qti_diag
5 |
--------------------------------------------------------------------------------
/sepolicy/vendor/surfaceflinger.te:
--------------------------------------------------------------------------------
1 | allow surfaceflinger hal_graphics_composer_default:file r_file_perms;
2 |
3 | # Allow to use release fence fds supplied by hal_camera
4 | allow surfaceflinger hal_camera:fd use;
5 |
--------------------------------------------------------------------------------
/sepolicy/vendor/hal_lineage_powershare_default.te:
--------------------------------------------------------------------------------
1 | allow hal_lineage_powershare_default vendor_sysfs_battery_supply:dir search;
2 | allow hal_lineage_powershare_default vendor_sysfs_battery_supply:file rw_file_perms;
3 |
--------------------------------------------------------------------------------
/vibrator/aidl/vendor.qti.hardware.vibrator.service.xiaomi_sm8350.rc:
--------------------------------------------------------------------------------
1 | service vendor.qti.vibrator /vendor/bin/hw/vendor.qti.hardware.vibrator.service.xiaomi_sm8350
2 | class hal
3 | user system
4 | group system input
5 |
--------------------------------------------------------------------------------
/parts/proguard.flags:
--------------------------------------------------------------------------------
1 | -keep class org.lineageos.settings.speaker.* {
2 | *;
3 | }
4 |
5 | -keep class org.lineageos.settings.refreshrate.* {
6 | *;
7 | }
8 |
9 | -keep class org.lineageos.settings.thermal.* {
10 | *;
11 | }
12 |
--------------------------------------------------------------------------------
/sepolicy/vendor/qti_init_shell.te:
--------------------------------------------------------------------------------
1 | allow vendor_qti_init_shell proc_page_cluster:file rw_file_perms;
2 |
3 | # Set ro.vendor.media_performance_class in QCV init shell script
4 | set_prop(vendor_qti_init_shell, vendor_media_performance_class)
5 |
--------------------------------------------------------------------------------
/gps/Makefile.am:
--------------------------------------------------------------------------------
1 | # Makefile.am - Automake script for gps loc_api
2 | #
3 |
4 | ACLOCAL_AMFLAGS = -I m4
5 |
6 | SUBDIRS = gnss
7 |
8 | pkgconfigdir = $(libdir)/pkgconfig
9 | pkgconfig_DATA = loc-hal.pc
10 | EXTRA_DIST = $(pkgconfig_DATA)
11 |
--------------------------------------------------------------------------------
/sepolicy/vendor/hal_lineage_health_default.te:
--------------------------------------------------------------------------------
1 | # Grant access to battery supply nodes
2 | allow hal_lineage_health_default vendor_sysfs_battery_supply:dir r_dir_perms;
3 | allow hal_lineage_health_default vendor_sysfs_battery_supply:file rw_file_perms;
4 |
--------------------------------------------------------------------------------
/rro_overlays/CarrierConfigOverlay/Android.bp:
--------------------------------------------------------------------------------
1 | runtime_resource_overlay {
2 | name: "CarrierConfigOverlay",
3 | theme: "CarrierConfigOverlay",
4 | sdk_version: "current",
5 | product_specific: true,
6 | aaptflags: ["--keep-raw-values"],
7 | }
8 |
--------------------------------------------------------------------------------
/sepolicy/vendor/property.te:
--------------------------------------------------------------------------------
1 | # Aware
2 | vendor_restricted_prop(vendor_aware_available_prop);
3 |
4 | # IMEI
5 | vendor_internal_prop(vendor_deviceid_prop);
6 |
7 | # Property to set media performance class
8 | vendor_internal_prop(vendor_media_performance_class);
9 |
--------------------------------------------------------------------------------
/gps/gps_vendor_board.mk:
--------------------------------------------------------------------------------
1 | # Flags from BoardConfigVendor.mk
2 | ifneq ($(TARGET_USES_QMAA),true)
3 | BOARD_VENDOR_QCOM_GPS_LOC_API_HARDWARE := default
4 | else ifneq ($(TARGET_USES_QMAA_OVERRIDE_GPS),false)
5 | BOARD_VENDOR_QCOM_GPS_LOC_API_HARDWARE := default
6 | endif
7 |
8 |
--------------------------------------------------------------------------------
/gps/core/loc-core.pc.in:
--------------------------------------------------------------------------------
1 | prefix=@prefix@
2 | exec_prefix=@exec_prefix@
3 | libdir=@libdir@
4 | includedir=@includedir@
5 |
6 | Name: loc-core
7 | Description: QTI GPS Loc Core
8 | Version: @VERSION@
9 | Libs: -L${libdir} -lloc_core
10 | Cflags: -I${includedir}/loc-core
11 |
--------------------------------------------------------------------------------
/sepolicy/dolby/file_contexts:
--------------------------------------------------------------------------------
1 | # Data files
2 | /data/vendor/dolby(/.*)? u:object_r:vendor_data_file:s0
3 |
4 | # HALs
5 | /(vendor|system/vendor)/bin/hw/vendor\.dolby\.hardware\.dms@2\.0-service u:object_r:hal_dms_default_exec:s0
6 |
--------------------------------------------------------------------------------
/gps/utils/gps-utils.pc.in:
--------------------------------------------------------------------------------
1 | prefix=@prefix@
2 | exec_prefix=@exec_prefix@
3 | libdir=@libdir@
4 | includedir=@includedir@
5 |
6 | Name: gps-utils
7 | Description: QTI GPS Location utils
8 | Version: @VERSION
9 | Libs: -L${libdir} -lgps_utils
10 | Cflags: -I${includedir}/gps-utils
11 |
--------------------------------------------------------------------------------
/wifi/wpa_supplicant_overlay.conf:
--------------------------------------------------------------------------------
1 | disable_scan_offload=1
2 | p2p_disabled=1
3 | tdls_external_control=1
4 | wowlan_triggers=magic_pkt
5 | bss_max_count=400
6 | interworking=1
7 | config_methods=virtual_display virtual_push_button keypad
8 | driver_param="use_p2p_group_interface=1 no_rrm=1"
9 |
--------------------------------------------------------------------------------
/gps/location/location-api.pc.in:
--------------------------------------------------------------------------------
1 | prefix=@prefix@
2 | exec_prefix=@exec_prefix@
3 | libdir=@libdir@
4 | includedir=@includedir@
5 |
6 | Name: location-api
7 | Description: Location API
8 | Version: @VERSION
9 | Libs: -L${libdir} -llocation_api
10 | Cflags: -I${includedir}/location-api
11 |
--------------------------------------------------------------------------------
/sepolicy/private/platform_app.te:
--------------------------------------------------------------------------------
1 | allow platform_app config_gz:file r_file_perms;
2 |
3 | # Allow bypassing the FUSE layer
4 | r_dir_file(platform_app, mnt_pass_through_file)
5 |
6 | # Allow externalstorage access
7 | allow platform_app mnt_pass_through_file:dir { create_dir_perms mounton };
8 |
--------------------------------------------------------------------------------
/sepolicy/vendor/hal_audio_default.te:
--------------------------------------------------------------------------------
1 | type audio_socket, file_type;
2 | type sound_device, dev_type;
3 |
4 | set_prop(hal_audio_default, vendor_audio_prop)
5 |
6 | allow hal_audio_default audio_socket:sock_file rw_file_perms;
7 | allow hal_audio_default sound_device:chr_file rw_file_perms;
8 |
--------------------------------------------------------------------------------
/sepolicy/vendor/hal_power_default.te:
--------------------------------------------------------------------------------
1 | type vendor_sysfs_double_tap, sysfs_type, fs_type;
2 | type vendor_touchfeature_device, dev_type;
3 |
4 | allow hal_power_default vendor_sysfs_double_tap:file rw_file_perms;
5 | allow hal_power_default vendor_touchfeature_device:chr_file rw_file_perms;
6 |
--------------------------------------------------------------------------------
/sepolicy/dolby/hal_dms.te:
--------------------------------------------------------------------------------
1 | # HwBinder IPC from client to server, and callbacks
2 | binder_call(hal_dms_client, hal_dms_server)
3 | binder_call(hal_dms_server, hal_dms_client)
4 |
5 | add_hwservice(hal_dms_server, hal_dms_hwservice)
6 | allow hal_dms_client hal_dms_hwservice:hwservice_manager find;
7 |
--------------------------------------------------------------------------------
/gps/batching/location-batching.pc.in:
--------------------------------------------------------------------------------
1 | prefix=@prefix@
2 | exec_prefix=@exec_prefix@
3 | libdir=@libdir@
4 | includedir=@includedir@
5 |
6 | Name: location-batching
7 | Description: QTI GPS Batching
8 | Version: @VERSION
9 | Libs: -L${libdir} -lbatching
10 | Cflags: -I${includedir}/location-batching
11 |
--------------------------------------------------------------------------------
/gps/geofence/location-geofence.pc.in:
--------------------------------------------------------------------------------
1 | prefix=@prefix@
2 | exec_prefix=@exec_prefix@
3 | libdir=@libdir@
4 | includedir=@includedir@
5 |
6 | Name: location-geofence
7 | Description: QTI GPS Geofence
8 | Version: @VERSION
9 | Libs: -L${libdir} -lgeofencing
10 | Cflags: -I${includedir}/location-geofence
11 |
--------------------------------------------------------------------------------
/gps/loc-hal.pc.in:
--------------------------------------------------------------------------------
1 | prefix=@prefix@
2 | exec_prefix=@exec_prefix@
3 | libdir=@libdir@
4 | includedir=@includedir@
5 |
6 | Name: loc-hal
7 | Description: QTI GPS Loc HAL
8 | Version: @VERSION
9 | Libs: -L${libdir} -lgnss
10 | Cflags: -I${includedir} -I${includedir}/utils -I${includedir}/core -I${includedir}/loc-hal
11 |
--------------------------------------------------------------------------------
/system_ext.prop:
--------------------------------------------------------------------------------
1 | # DPM
2 | persist.vendor.dpm.feature=11
3 |
4 | # EGL - Blobcache configuration
5 | ro.egl.blobcache.multifile=true
6 | ro.egl.blobcache.multifile_limit=33554432
7 |
8 | # MTE
9 | persist.arm64.memtag.system_server=off
10 |
11 | # Telephony
12 | ro.telephony.sim_slots.count=2
13 | telephony.active_modems.max_count=2
14 |
--------------------------------------------------------------------------------
/sepolicy/vendor/hal_cameraperf.te:
--------------------------------------------------------------------------------
1 | add_hwservice(vendor_hal_cameraperf_server, vendor_hal_cameraperf_hwservice)
2 | allow vendor_hal_cameraperf_client vendor_hal_cameraperf_hwservice:hwservice_manager find;
3 | binder_call(vendor_hal_cameraperf_client, vendor_hal_cameraperf_server)
4 | binder_call(vendor_hal_cameraperf_server, vendor_hal_cameraperf_client)
5 |
--------------------------------------------------------------------------------
/rootdir/etc/init.mi_thermald.rc:
--------------------------------------------------------------------------------
1 | on property:init.svc.vendor.charger=running
2 | wait /sys/class/power_supply/usb/type
3 | start mi_thermald
4 | on boot
5 | wait /sys/class/power_supply/usb/type
6 | start mi_thermald
7 |
8 | service mi_thermald /vendor/bin/mi_thermald
9 | class main
10 | user root
11 | group system
12 | seclabel u:r:mi_thermald:s0
13 |
--------------------------------------------------------------------------------
/sepolicy/vendor/service_contexts:
--------------------------------------------------------------------------------
1 | # NFC
2 | vendor.nxp.nxpnfc_aidl.INxpNfc/default u:object_r:hal_nfc_service:s0
3 |
4 | # Google
5 | vendor.google.google_battery.IGoogleBattery u:object_r:hal_googlebattery_service:s0
6 | vendor.google.google_battery.IGoogleBattery/default u:object_r:hal_googlebattery_service:s0
7 |
--------------------------------------------------------------------------------
/sepolicy/vendor/vendor_init.te:
--------------------------------------------------------------------------------
1 | # Allow vendor_init to set vendor_thermal_normal_prop
2 | set_prop(vendor_init, vendor_thermal_normal_prop)
3 |
4 | # Allow vendor_init to read vendor_media_performance_class
5 | get_prop(vendor_init, vendor_media_performance_class);
6 |
7 | # Allow vendor_init to change watermark_scale_factor
8 | allow vendor_init proc_watermark_scale_factor:file w_file_perms;
9 |
--------------------------------------------------------------------------------
/vibrator/effect/Android.bp:
--------------------------------------------------------------------------------
1 | Common_CFlags = ["-Wall"]
2 | Common_CFlags += ["-Werror"]
3 |
4 | cc_library_shared {
5 | name: "libxiaomivibratoreffect",
6 | vendor: true,
7 | cflags: Common_CFlags,
8 | srcs: ["effect.cpp"],
9 | shared_libs: [
10 | "libcutils",
11 | "liblog",
12 | "libutils",
13 | ],
14 | export_include_dirs: ["."]
15 | }
16 |
--------------------------------------------------------------------------------
/hidl/manifest_lineage.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | vendor.lineage.livedisplay
4 | hwbinder
5 | 2.0
6 |
7 | IPictureAdjustment
8 | default
9 |
10 |
11 |
12 |
--------------------------------------------------------------------------------
/udfps/Android.bp:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (C) 2022 The LineageOS Project
3 | //
4 | // SPDX-License-Identifier: Apache-2.0
5 | //
6 |
7 | cc_library {
8 | name: "libudfpshandler",
9 | vendor: true,
10 | srcs: ["UdfpsHandler.cpp"],
11 | shared_libs: [
12 | "libbase",
13 | ],
14 | header_libs: [
15 | "//hardware/xiaomi:xiaomifingerprint_headers",
16 | ],
17 | }
18 |
--------------------------------------------------------------------------------
/sepolicy/vendor/hal_googlebattery.te:
--------------------------------------------------------------------------------
1 | type hal_googlebattery, domain;
2 | type hal_googlebattery_exec, exec_type, vendor_file_type, file_type;
3 |
4 | init_daemon_domain(hal_googlebattery)
5 |
6 | binder_call(hal_googlebattery, servicemanager)
7 | add_service(hal_googlebattery, hal_googlebattery_service)
8 |
9 | allow hal_googlebattery dumpstate:fd use;
10 | allow hal_googlebattery dumpstate:fifo_file write;
11 |
--------------------------------------------------------------------------------
/rootdir/etc/init.recovery.qcom.rc:
--------------------------------------------------------------------------------
1 | on fs
2 | wait /dev/block/platform/soc/${ro.boot.bootdevice}
3 | symlink /dev/block/platform/soc/${ro.boot.bootdevice} /dev/block/bootdevice
4 |
5 | on init
6 | setprop sys.usb.configfs 1
7 |
8 | on property:ro.boot.usbcontroller=*
9 | setprop sys.usb.controller ${ro.boot.usbcontroller}
10 | write /sys/class/udc/${ro.boot.usbcontroller}/device/../mode peripheral
11 |
--------------------------------------------------------------------------------
/sepolicy/private/dontaudit.te:
--------------------------------------------------------------------------------
1 | dontaudit vdc self:capability kill;
2 | dontaudit fsck self:capability kill;
3 | dontaudit odrefresh self:capability kill;
4 | dontaudit linkerconfig self:capability kill;
5 | dontaudit zygote self:capability kill;
6 | dontaudit kernel self:capability { dac_read_search sys_admin kill };
7 | dontaudit isolated_app content_capture_service:service_manager find;
8 | dontaudit system_server fuse:file rw_file_perms;
9 |
--------------------------------------------------------------------------------
/parts/res/mipmap-anydpi/ic_launcher.xml:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
8 |
9 |
10 |
--------------------------------------------------------------------------------
/sepolicy/private/service_contexts:
--------------------------------------------------------------------------------
1 | # IMS
2 | vendor.qti.hardware.radio.ims.IImsRadio/imsradio0 u:object_r:vendor_hal_telephony_service:s0
3 | vendor.qti.hardware.radio.ims.IImsRadio/imsradio1 u:object_r:vendor_hal_telephony_service:s0
4 | vendor.qti.hardware.radio.am.IQcRilAudio/slot1 u:object_r:vendor_hal_telephony_service:s0
5 | vendor.qti.hardware.radio.am.IQcRilAudio/slot2 u:object_r:vendor_hal_telephony_service:s0
6 |
--------------------------------------------------------------------------------
/removepackagesgms/Android.mk:
--------------------------------------------------------------------------------
1 | LOCAL_PATH := $(call my-dir)
2 | include $(CLEAR_VARS)
3 | LOCAL_MODULE := RemovePackagesGms
4 | LOCAL_MODULE_CLASS := APPS
5 | LOCAL_MODULE_TAGS := optional
6 | LOCAL_OVERRIDES_PACKAGES += Maps FilesPrebuilt talkback PrebuiltGmail ScribePrebuilt TouchGestures DotGallery ViaBrowser DuckDuckGo
7 | LOCAL_UNINSTALLABLE_MODULE := true
8 | LOCAL_CERTIFICATE := PRESIGNED
9 | LOCAL_SRC_FILES := /dev/null
10 | include $(BUILD_PREBUILT)
11 |
--------------------------------------------------------------------------------
/sepolicy/vendor/hal_wlc.te:
--------------------------------------------------------------------------------
1 | type hal_wlc, domain;
2 | type hal_wlc_exec, exec_type, vendor_file_type, file_type;
3 | type hal_wlc_hwservice, hwservice_manager_type, vendor_hwservice_type;
4 |
5 | hwbinder_use(hal_wlc)
6 | add_hwservice(hal_wlc, hal_wlc_hwservice)
7 | get_prop(hal_wlc, hwservicemanager_prop)
8 |
9 | init_daemon_domain(hal_wlc)
10 |
11 | allow hal_wlc self:netlink_kobject_uevent_socket create_socket_perms_no_ioctl;
12 |
13 | binder_call(hal_wlc, platform_app)
14 |
--------------------------------------------------------------------------------
/gps/Android.bp:
--------------------------------------------------------------------------------
1 | GNSS_CFLAGS = [
2 | "-Werror",
3 | "-Wno-error=reorder",
4 | "-Wno-undefined-bool-conversion",
5 | ]
6 |
7 | /* Activate the following for debug purposes only,
8 | comment out for production */
9 | GNSS_SANITIZE_DIAG = {
10 | /*
11 | diag: {
12 | cfi: true,
13 | misc_undefined: [
14 | "bounds",
15 | "null",
16 | "unreachable",
17 | "integer",
18 | ],
19 | },
20 | */
21 | }
22 |
--------------------------------------------------------------------------------
/sepolicy/vendor/attributes:
--------------------------------------------------------------------------------
1 | # Camera
2 | attribute vendor_hal_cameraperf;
3 | attribute vendor_hal_cameraperf_client;
4 | attribute vendor_hal_cameraperf_server;
5 | attribute vendor_hal_camerapostproc_xiaomi;
6 | attribute vendor_hal_camerapostproc_xiaomi_client;
7 | attribute vendor_hal_camerapostproc_xiaomi_server;
8 |
9 | # Citsensor
10 | attribute vendor_hal_citsensorservice_xiaomi;
11 | attribute vendor_hal_citsensorservice_xiaomi_client;
12 | attribute vendor_hal_citsensorservice_xiaomi_server;
13 |
--------------------------------------------------------------------------------
/sepolicy/vendor/hal_camerapostproc_xiaomi.te:
--------------------------------------------------------------------------------
1 | add_hwservice(vendor_hal_camerapostproc_xiaomi_server, vendor_hal_camerapostproc_xiaomi_hwservice)
2 | allow vendor_hal_camerapostproc_xiaomi_client vendor_hal_camerapostproc_xiaomi_hwservice:hwservice_manager find;
3 | binder_call(vendor_hal_camerapostproc_xiaomi_client, vendor_hal_camerapostproc_xiaomi_server)
4 | binder_call(vendor_hal_camerapostproc_xiaomi_server, vendor_hal_camerapostproc_xiaomi_client)
5 | binder_call(vendor_hal_camerapostproc_xiaomi, platform_app)
6 |
--------------------------------------------------------------------------------
/sepolicy/private/system_app.te:
--------------------------------------------------------------------------------
1 | binder_call(system_app, system_suspend)
2 | binder_call(system_app, storaged)
3 | binder_call(system_app, wificond)
4 |
5 | # Allow system app to find services
6 | dontaudit system_app tracingproxy_service:service_manager find;
7 |
8 | # Allow bypassing the FUSE layer
9 | r_dir_file(system_app, mnt_pass_through_file)
10 |
11 | # Allow externalstorage access
12 | allow system_app mnt_pass_through_file:dir { create_dir_perms mounton };
13 |
14 | hal_client_domain(system_app, hal_mlipay)
15 |
--------------------------------------------------------------------------------
/parts/res/drawable/ic_launcher_background.xml:
--------------------------------------------------------------------------------
1 |
2 |
6 |
11 |
14 |
15 |
--------------------------------------------------------------------------------
/parts/res/drawable/ic_thermal_camera.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/parts/res/drawable/ic_thermal_video.xml:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 |
12 |
13 |
--------------------------------------------------------------------------------
/sepolicy/vendor/system_server.te:
--------------------------------------------------------------------------------
1 | allow system_server vendor_sysfs_battery_supply:file r_file_perms;
2 |
3 | # Allow system process to setup fs-verity
4 | allowxperm system_server { apk_data_file system_data_file apex_system_server_data_file }:file ioctl {
5 | FS_IOC_ENABLE_VERITY FS_IOC_MEASURE_VERITY
6 | };
7 |
8 | # Allow system process to measure fs-verity for apps, apps being installed and system files
9 | allowxperm system_server { apk_data_file apk_tmp_file system_file }:file ioctl {
10 | FS_IOC_ENABLE_VERITY FS_IOC_MEASURE_VERITY
11 | };
12 |
--------------------------------------------------------------------------------
/configs/perf/msm_irqbalance.conf:
--------------------------------------------------------------------------------
1 | ################################################################################################################################
2 | # Copyright (c) 2019 Qualcomm Technologies, Inc.
3 | # All Rights Reserved.
4 | # Confidential and Proprietary - Qualcomm Technologies, Inc.
5 | ################################################################################################################################
6 |
7 | PRIO=1,1,1,1,0,0,0,0
8 | #arch_timer, arm-pmu, arch_mem_timer,msm_drm,kgsl_3d0_irq
9 | IGNORED_IRQ=27,23,38,278,275
10 |
--------------------------------------------------------------------------------
/sepolicy/dolby/hal_dms_default.te:
--------------------------------------------------------------------------------
1 | type hal_dms_default, domain;
2 | hal_server_domain(hal_dms_default, hal_dms)
3 |
4 | type hal_dms_default_exec, exec_type, vendor_file_type, file_type;
5 | init_daemon_domain(hal_dms_default)
6 |
7 | allow hal_dms_default vendor_data_file:file { rw_file_perms create unlink };
8 | allow hal_dms_default vendor_data_file:dir { rw_file_perms add_name remove_name };
9 | binder_call(hal_dms_default, mediacodec)
10 | binder_call(hal_dms_default, hal_audio_default)
11 | binder_call(hal_dms_default, platform_app)
12 | binder_call(hal_dms_default, priv_app)
13 |
--------------------------------------------------------------------------------
/parts/res/drawable/ic_thermal_default.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/parts/res/drawable/ic_thermal_navigation.xml:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 |
12 |
13 |
--------------------------------------------------------------------------------
/gps/geofence/Android.bp:
--------------------------------------------------------------------------------
1 |
2 |
3 | cc_library_shared {
4 |
5 | name: "libgeofencing",
6 | vendor: true,
7 |
8 |
9 |
10 | srcs: [
11 | "GeofenceAdapter.cpp",
12 | "location_geofence.cpp",
13 | ],
14 |
15 | shared_libs: [
16 | "libutils",
17 | "libcutils",
18 | "libgps.utils",
19 | "liblog",
20 | "libloc_core",
21 | ],
22 |
23 | header_libs: [
24 | "libgps.utils_headers",
25 | "libloc_core_headers",
26 | "libloc_pla_headers",
27 | "liblocation_api_headers",
28 | ],
29 |
30 | cflags: GNSS_CFLAGS,
31 | }
32 |
--------------------------------------------------------------------------------
/gps/batching/Android.bp:
--------------------------------------------------------------------------------
1 |
2 | cc_library_shared {
3 |
4 | name: "libbatching",
5 | vendor: true,
6 |
7 |
8 |
9 | shared_libs: [
10 | "libutils",
11 | "libcutils",
12 | "liblog",
13 | "libloc_core",
14 | "libgps.utils",
15 | "libdl",
16 | ],
17 |
18 | srcs: [
19 | "location_batching.cpp",
20 | "BatchingAdapter.cpp",
21 | ],
22 |
23 | header_libs: [
24 | "libgps.utils_headers",
25 | "libloc_core_headers",
26 | "libloc_pla_headers",
27 | "liblocation_api_headers",
28 | ],
29 |
30 | cflags: GNSS_CFLAGS,
31 | }
32 |
--------------------------------------------------------------------------------
/configs/privapp-permissions-hotword.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/parts/Android.bp:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (C) 2017-2023 The LineageOS Project
3 | //
4 | // SPDX-License-Identifier: Apache-2.0
5 | //
6 |
7 | android_app {
8 | name: "XiaomiParts",
9 | defaults: [
10 | "SettingsLibDefaults",
11 | ],
12 |
13 | srcs: ["src/**/*.java"],
14 | resource_dirs: ["res"],
15 | certificate: "platform",
16 | platform_apis: true,
17 | system_ext_specific: true,
18 | privileged: true,
19 |
20 | static_libs: [
21 | "androidx.core_core",
22 | "androidx.preference_preference",
23 | ],
24 |
25 | optimize: {
26 | proguard_flags_files: ["proguard.flags"],
27 | },
28 | }
29 |
--------------------------------------------------------------------------------
/sepolicy/vendor/gmscore_app.te:
--------------------------------------------------------------------------------
1 | # Incremental
2 | get_prop(gmscore_app, incremental_prop)
3 |
4 | # To get signature of an APK installed on Incremental File System, and fill in data
5 | # blocks and get the filesystem state
6 | allowxperm gmscore_app apk_data_file:file ioctl {
7 | INCFS_IOCTL_READ_SIGNATURE
8 | INCFS_IOCTL_FILL_BLOCKS
9 | INCFS_IOCTL_GET_FILLED_BLOCKS
10 | INCFS_IOCTL_GET_BLOCK_COUNT
11 | F2FS_IOC_GET_FEATURES
12 | F2FS_IOC_GET_COMPRESS_BLOCKS
13 | F2FS_IOC_COMPRESS_FILE
14 | F2FS_IOC_DECOMPRESS_FILE
15 | F2FS_IOC_RELEASE_COMPRESS_BLOCKS
16 | F2FS_IOC_RESERVE_COMPRESS_BLOCKS
17 | FS_IOC_SETFLAGS
18 | FS_IOC_GETFLAGS
19 | };
20 |
--------------------------------------------------------------------------------
/sepolicy/vendor/untrusted_app.te:
--------------------------------------------------------------------------------
1 | # Incremental
2 | get_prop(untrusted_app, incremental_prop)
3 |
4 | # To get signature of an APK installed on Incremental File System, and fill in data
5 | # blocks and get the filesystem state
6 | allowxperm untrusted_app apk_data_file:file ioctl {
7 | INCFS_IOCTL_READ_SIGNATURE
8 | INCFS_IOCTL_FILL_BLOCKS
9 | INCFS_IOCTL_GET_FILLED_BLOCKS
10 | INCFS_IOCTL_GET_BLOCK_COUNT
11 | F2FS_IOC_GET_FEATURES
12 | F2FS_IOC_GET_COMPRESS_BLOCKS
13 | F2FS_IOC_COMPRESS_FILE
14 | F2FS_IOC_DECOMPRESS_FILE
15 | F2FS_IOC_RELEASE_COMPRESS_BLOCKS
16 | F2FS_IOC_RESERVE_COMPRESS_BLOCKS
17 | FS_IOC_SETFLAGS
18 | FS_IOC_GETFLAGS
19 | };
20 |
--------------------------------------------------------------------------------
/parts/res/drawable/ic_refresh_default.xml:
--------------------------------------------------------------------------------
1 |
2 |
8 |
11 |
--------------------------------------------------------------------------------
/sepolicy/vendor/hal_perf_default.te:
--------------------------------------------------------------------------------
1 | dontaudit vendor_hal_perf_default self:capability { dac_read_search };
2 | allow vendor_hal_perf_default hal_audio_default:dir r_dir_perms;
3 | allow vendor_hal_perf_default hal_audio_default:file r_file_perms;
4 | allow vendor_hal_perf_default hal_fingerprint_default:dir r_dir_perms;
5 | allow vendor_hal_perf_default hal_fingerprint_default:file r_file_perms;
6 | allow vendor_hal_perf_default hal_camera_default:dir r_dir_perms;
7 | allow vendor_hal_perf_default hal_camera_default:file r_file_perms;
8 | allow vendor_hal_perf_default hal_graphics_composer_default:dir r_dir_perms;
9 | allow vendor_hal_perf_default hal_graphics_composer_default:file r_file_perms;
10 |
--------------------------------------------------------------------------------
/hidl/manifest_xiaomi.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | android.hardware.ir
4 | hwbinder
5 | 1.0
6 |
7 | IConsumerIr
8 | default
9 |
10 |
11 |
12 | vendor.xiaomi.hardware.campostproc
13 | hwbinder
14 | 1.0
15 |
16 | IMiPostProcService
17 | default
18 |
19 |
20 |
21 |
--------------------------------------------------------------------------------
/parts/res/xml/clear_speaker_settings.xml:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
11 |
12 |
16 |
17 |
18 |
--------------------------------------------------------------------------------
/gps/location/Android.bp:
--------------------------------------------------------------------------------
1 |
2 | cc_library_shared {
3 |
4 | name: "liblocation_api",
5 | vendor: true,
6 |
7 |
8 |
9 | shared_libs: [
10 | "libutils",
11 | "libcutils",
12 | "libgps.utils",
13 | "libdl",
14 | "liblog",
15 | ],
16 |
17 | srcs: [
18 | "LocationAPI.cpp",
19 | "LocationAPIClientBase.cpp",
20 | ],
21 |
22 | cflags: ["-fno-short-enums"] + GNSS_CFLAGS,
23 |
24 | header_libs: [
25 | "libloc_pla_headers",
26 | "libgps.utils_headers",
27 | ],
28 |
29 | }
30 |
31 | cc_library_headers {
32 |
33 | name: "liblocation_api_headers",
34 | export_include_dirs: ["."],
35 | vendor: true,
36 | }
37 |
--------------------------------------------------------------------------------
/parts/res/drawable/ic_thermal_streaming.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
12 |
15 |
16 |
--------------------------------------------------------------------------------
/gps/gnss/Android.bp:
--------------------------------------------------------------------------------
1 |
2 |
3 | cc_library_shared {
4 |
5 | name: "libgnss",
6 | vendor: true,
7 |
8 |
9 |
10 | shared_libs: [
11 | "libutils",
12 | "libcutils",
13 | "libdl",
14 | "liblog",
15 | "libloc_core",
16 | "libgps.utils",
17 | ],
18 |
19 | srcs: [
20 | "location_gnss.cpp",
21 | "GnssAdapter.cpp",
22 | "Agps.cpp",
23 | "XtraSystemStatusObserver.cpp",
24 | "NativeAgpsHandler.cpp",
25 | ],
26 |
27 | cflags: ["-fno-short-enums"] + GNSS_CFLAGS,
28 | header_libs: [
29 | "libgps.utils_headers",
30 | "libloc_core_headers",
31 | "libloc_pla_headers",
32 | "liblocation_api_headers",
33 | ],
34 |
35 | }
36 |
--------------------------------------------------------------------------------
/parts/res/drawable/ic_thermal_dialer.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/sepolicy/vendor/hal_sensors_default.te:
--------------------------------------------------------------------------------
1 | type vendor_sysfs_iio, fs_type, sysfs_type;
2 | type vendor_sysfs_palm_sensor, fs_type, sysfs_type;
3 |
4 | allow hal_sensors_default audio_socket:sock_file rw_file_perms;
5 | allow hal_sensors_default sound_device:chr_file rw_file_perms;
6 | allow hal_sensors_default hal_audio_default:unix_stream_socket connectto;
7 |
8 | allow hal_sensors_default iio_device:chr_file r_file_perms;
9 | allow hal_sensors_default vendor_sysfs_iio:dir r_dir_perms;
10 | allow hal_sensors_default vendor_sysfs_iio:file rw_file_perms;
11 | allow hal_sensors_default vendor_sysfs_palm_sensor:dir r_dir_perms;
12 | allow hal_sensors_default vendor_sysfs_palm_sensor:file rw_file_perms;
13 |
14 | hal_client_domain(hal_sensors_default, hal_audio)
15 | allow hal_sensors_default hal_audio_hwservice:hwservice_manager find;
16 |
--------------------------------------------------------------------------------
/parts/res/drawable/ic_thermal_gaming.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
12 |
15 |
16 |
--------------------------------------------------------------------------------
/overlay/frameworks/base/packages/SystemUI/res/values-sw372dp/dimens.xml:
--------------------------------------------------------------------------------
1 |
2 |
18 |
19 | 16dp
20 |
21 |
--------------------------------------------------------------------------------
/rootdir/etc/charger_fstab.qcom:
--------------------------------------------------------------------------------
1 | #
2 | # Copyright (c) 2019 Qualcomm Technologies, Inc.
3 | # All Rights Reserved.
4 | # Confidential and Proprietary - Qualcomm Technologies, Inc.
5 | #
6 | # Copyright (c) 2018-2019 The Linux Foundation. All rights reserved.
7 | #
8 |
9 | # Android fstab file.
10 | # The filesystem that contains the filesystem checker binary (typically /system) cannot
11 | # specify MF_CHECK, and must come before any filesystems that do specify MF_CHECK
12 |
13 | #
14 | /dev/block/bootdevice/by-name/persist /mnt/vendor/persist ext4 noatime,nosuid,nodev,barrier=1 wait
15 | /dev/block/bootdevice/by-name/modem /vendor/firmware_mnt vfat ro,shortname=lower,uid=1000,gid=1000,dmask=227,fmask=337,context=u:object_r:firmware_file:s0 wait,slotselect
16 |
--------------------------------------------------------------------------------
/parts/res/drawable/ic_thermal_benchmark.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
12 |
13 |
--------------------------------------------------------------------------------
/gps/android/utils/Android.bp:
--------------------------------------------------------------------------------
1 | cc_library_static {
2 |
3 | name: "liblocbatterylistener",
4 | vendor: true,
5 |
6 |
7 |
8 | cflags: GNSS_CFLAGS + ["-DBATTERY_LISTENER_ENABLED"],
9 | local_include_dirs: ["."],
10 |
11 | srcs: ["battery_listener.cpp"],
12 |
13 | shared_libs: [
14 | "liblog",
15 | "libhidlbase",
16 | "libbinder_ndk",
17 | "libcutils",
18 | "libutils",
19 | "android.hardware.health-V1-ndk",
20 | "android.hardware.health@1.0",
21 | "android.hardware.health@2.0",
22 | "android.hardware.health@2.1",
23 | "libbase",
24 | ],
25 |
26 | static_libs: ["libhealthhalutils"],
27 |
28 | header_libs: [
29 | "libgps.utils_headers",
30 | "libloc_pla_headers",
31 | ],
32 | }
33 |
34 | cc_library_headers {
35 |
36 | name: "liblocbatterylistener_headers",
37 | export_include_dirs: ["."],
38 | }
39 |
--------------------------------------------------------------------------------
/rootdir/bin/vendor_modprobe.sh:
--------------------------------------------------------------------------------
1 | #! /vendor/bin/sh
2 | #=============================================================================
3 | # Copyright (c) 2019-2020 Qualcomm Technologies, Inc.
4 | # All Rights Reserved.
5 | # Confidential and Proprietary - Qualcomm Technologies, Inc.
6 | #=============================================================================
7 |
8 | MODULES_PATH="/vendor/lib/modules/"
9 |
10 | MODPROBE="/vendor/bin/modprobe"
11 | MODULES=`${MODPROBE} -d ${MODULES_PATH} -l`
12 |
13 | # Iterate over module list and modprobe them in background.
14 | for MODULE in ${MODULES}; do
15 | if [ ${MODULE} == "qca_cld3_wlan" ]; then
16 | echo "Xiaomi Wifi:" ${MODULE}
17 | elif [ ${MODULE} == "cnss2" ]; then
18 | echo "Xiaomi Wifi:" ${MODULE}
19 | else
20 | ${MODPROBE} -a -b -d ${MODULES_PATH} ${MODULE} &
21 | fi
22 | done
23 |
24 | # Wait until all the modprobes are finished
25 | wait
26 |
--------------------------------------------------------------------------------
/bootctrl/Android.bp:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (C) 2018 The Android Open Source Project
3 | //
4 | // Licensed under the Apache License, Version 2.0 (the "License");
5 | // you may not use this file except in compliance with the License.
6 | // You may obtain a copy of the License at
7 | //
8 | // http://www.apache.org/licenses/LICENSE-2.0
9 | //
10 | // Unless required by applicable law or agreed to in writing, software
11 | // distributed under the License is distributed on an "AS IS" BASIS,
12 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | // See the License for the specific language governing permissions and
14 | // limitations under the License.
15 | //
16 |
17 | cc_library_shared {
18 | name: "android.hardware.boot@1.2-impl-qti",
19 | stem: "android.hardware.boot@1.0-impl-1.2-qti",
20 | defaults: ["android.hardware.boot@1.2-impl-qti_defaults"],
21 | static_libs: ["libgptutils.xiaomi_sm8350"],
22 | }
23 |
--------------------------------------------------------------------------------
/overlay-superior/packages/apps/Dialer/java/com/android/dialer/callrecord/res/values/config.xml:
--------------------------------------------------------------------------------
1 |
2 |
15 |
16 | true
17 | 4
18 |
19 |
--------------------------------------------------------------------------------
/rootdir/etc/init.xiaomi-sm8350.perf.rc:
--------------------------------------------------------------------------------
1 | # Copyright (C) 2024 Paranoid Android
2 | #
3 | #
4 | # SPDX-License-Identifier: Apache-2.0
5 |
6 | on property:vendor.post_boot.parsed=1
7 | # IRQ Tuning
8 | # IRQ 278: msm_drm0
9 | # IRQ 275: kgsl_3d0_irq
10 | write /proc/irq/278/smp_affinity_list 2
11 | write /proc/irq/275/smp_affinity_list 1
12 |
13 | # CPU Boost
14 | write /sys/devices/system/cpu/cpu_boost/input_boost_ms 200
15 |
16 | # CPUFreq
17 | write /sys/devices/system/cpu/cpu0/cpufreq/schedutil/up_rate_limit_us 500
18 | write /sys/devices/system/cpu/cpu0/cpufreq/schedutil/down_rate_limit_us 20000
19 | write /sys/devices/system/cpu/cpu4/cpufreq/schedutil/up_rate_limit_us 500
20 | write /sys/devices/system/cpu/cpu4/cpufreq/schedutil/down_rate_limit_us 20000
21 | write /sys/devices/system/cpu/cpu7/cpufreq/schedutil/up_rate_limit_us 500
22 | write /sys/devices/system/cpu/cpu7/cpufreq/schedutil/down_rate_limit_us 20000
23 |
24 | # CPUSets
25 | write /dev/cpuset/background/cpus 0-1
26 |
--------------------------------------------------------------------------------
/sepolicy/vendor/hal_mlipay.te:
--------------------------------------------------------------------------------
1 | type hal_mlipay_hwservice, hwservice_manager_type;
2 |
3 | type hal_mlipay_default, domain;
4 | hal_server_domain(hal_mlipay_default, hal_mlipay)
5 |
6 | type hal_mlipay_default_exec, exec_type, vendor_file_type, file_type;
7 | init_daemon_domain(hal_mlipay_default)
8 |
9 | vendor_public_prop(vendor_mlipay_prop)
10 |
11 | # Allow hwbinder call from hal client to server
12 | binder_call(hal_mlipay_client, hal_mlipay_server)
13 |
14 | # Add hwservice related rules
15 | add_hwservice(hal_mlipay_server, hal_mlipay_hwservice)
16 | allow hal_mlipay_client hal_mlipay_hwservice:hwservice_manager find;
17 |
18 | allow hal_mlipay_default tee_device:chr_file rw_file_perms;
19 | allow hal_mlipay_default ion_device:chr_file r_file_perms;
20 |
21 | r_dir_file(hal_mlipay_default, firmware_file)
22 | set_prop(hal_mlipay_default, vendor_mlipay_prop);
23 |
24 | get_prop(hal_mlipay_default, vendor_fp_prop)
25 | get_prop(hal_mlipay_default, vendor_fp_info_prop)
26 |
--------------------------------------------------------------------------------
/parts/res/layout/refresh_layout.xml:
--------------------------------------------------------------------------------
1 |
2 |
14 |
19 |
--------------------------------------------------------------------------------
/parts/res/layout/thermal_layout.xml:
--------------------------------------------------------------------------------
1 |
2 |
17 |
23 |
--------------------------------------------------------------------------------
/gps/gnss/Makefile.am:
--------------------------------------------------------------------------------
1 | AM_CFLAGS = \
2 | $(LOCPLA_CFLAGS) \
3 | $(LOCHAL_CFLAGS) \
4 | $(GPSUTILS_CFLAGS) \
5 | $(LOCCORE_CFLAGS) \
6 | -I./ \
7 | -I../utils \
8 | -I$(WORKSPACE)/hardware/qcom/gps/core/data-items \
9 | -I../location \
10 | -std=c++1y
11 |
12 | libgnss_la_SOURCES = \
13 | location_gnss.cpp \
14 | GnssAdapter.cpp \
15 | XtraSystemStatusObserver.cpp \
16 | Agps.cpp \
17 | NativeAgpsHandler.cpp
18 |
19 | if USE_GLIB
20 | libgnss_la_CFLAGS = -DUSE_GLIB $(AM_CFLAGS) @GLIB_CFLAGS@
21 | libgnss_la_LDFLAGS = -lstdc++ -Wl,-z,defs -lpthread @GLIB_LIBS@ -shared -avoid-version
22 | libgnss_la_CPPFLAGS = -DUSE_GLIB $(AM_CFLAGS) $(AM_CPPFLAGS) @GLIB_CFLAGS@
23 | else
24 | libgnss_la_CFLAGS = $(AM_CFLAGS)
25 | libgnss_la_LDFLAGS = -Wl,-z,defs -lpthread -shared -version-info 1:0:0
26 | libgnss_la_CPPFLAGS = $(AM_CFLAGS) $(AM_CPPFLAGS)
27 | endif
28 |
29 | libgnss_la_LIBADD = -lstdc++ -ldl $(GPSUTILS_LIBS) $(LOCCORE_LIBS)
30 |
31 | #Create and Install libraries
32 | lib_LTLIBRARIES = libgnss.la
33 |
--------------------------------------------------------------------------------
/sepolicy/vendor/hal_camera_default.te:
--------------------------------------------------------------------------------
1 | type camera_persist_file, vendor_persist_type, file_type;
2 | type vendor_hal_cameraperf_hwservice, hwservice_manager_type, protected_hwservice;
3 | type vendor_hal_camerapostproc_xiaomi_hwservice, hwservice_manager_type;
4 | vendor_public_prop(vendor_camera_sensor_prop)
5 |
6 | set_prop(hal_camera_default, vendor_camera_sensor_prop)
7 | r_dir_file(hal_camera_default, camera_persist_file)
8 | r_dir_file(hal_camera_default, mnt_vendor_file)
9 | get_prop(hal_camera_default, graphics_config_prop)
10 |
11 | allow hal_camera_default proc_stat:file r_file_perms;
12 |
13 | hal_server_domain(hal_camera_default, vendor_hal_cameraperf)
14 | hal_server_domain(hal_camera_default, vendor_hal_camerapostproc_xiaomi)
15 | add_hwservice(hal_camera_server, vendor_hal_cameraperf_hwservice)
16 | add_hwservice(hal_camera_server, vendor_hal_camerapostproc_xiaomi_hwservice)
17 | allow hal_camera_client vendor_hal_cameraperf_hwservice:hwservice_manager find;
18 | allow hal_camera_client vendor_hal_camerapostproc_xiaomi_hwservice:hwservice_manager find;
19 |
--------------------------------------------------------------------------------
/gps/Android.mk:
--------------------------------------------------------------------------------
1 | ifneq ($(BOARD_VENDOR_QCOM_GPS_LOC_API_HARDWARE),)
2 |
3 | # Set required flags
4 | GNSS_CFLAGS := \
5 | -Werror \
6 | -Wno-error=reorder \
7 | -Wno-undefined-bool-conversion
8 |
9 | GNSS_HIDL_VERSION = 2.1
10 |
11 | GNSS_HIDL_LEGACY_MEASURMENTS_TARGET_LIST += msm8937
12 | GNSS_HIDL_LEGACY_MEASURMENTS_TARGET_LIST += msm8953
13 | GNSS_HIDL_LEGACY_MEASURMENTS_TARGET_LIST += msm8998
14 | GNSS_HIDL_LEGACY_MEASURMENTS_TARGET_LIST += apq8098_latv
15 | GNSS_HIDL_LEGACY_MEASURMENTS_TARGET_LIST += sdm710
16 | GNSS_HIDL_LEGACY_MEASURMENTS_TARGET_LIST += qcs605
17 | GNSS_HIDL_LEGACY_MEASURMENTS_TARGET_LIST += sdm845
18 | GNSS_HIDL_LEGACY_MEASURMENTS_TARGET_LIST += sdm660
19 |
20 | ifneq (,$(filter $(GNSS_HIDL_LEGACY_MEASURMENTS_TARGET_LIST),$(TARGET_BOARD_PLATFORM)))
21 | GNSS_HIDL_LEGACY_MEASURMENTS = true
22 | endif
23 |
24 | LOCAL_PATH := $(call my-dir)
25 | include $(call all-makefiles-under,$(LOCAL_PATH))
26 |
27 | GNSS_SANITIZE_DIAG := cfi bounds null unreachable integer address
28 |
29 | endif # ifneq ($(BOARD_VENDOR_QCOM_GPS_LOC_API_HARDWARE),)
30 |
--------------------------------------------------------------------------------
/media/media_codecs_vendor_audio.xml:
--------------------------------------------------------------------------------
1 |
2 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
--------------------------------------------------------------------------------
/gps/etc/lowi.conf:
--------------------------------------------------------------------------------
1 | #*====*====*====*====*====*====*====*====*====*====*====*====*====*====*====*
2 | #
3 | # LOWI Config file - lahaina
4 | #
5 | # GENERAL DESCRIPTION
6 | # This file contains the config params for LOWI
7 | #
8 | # Copyright (c) 2019 Qualcomm Technologies, Inc.
9 | # All Rights Reserved.
10 | # Confidential and Proprietary - Qualcomm Technologies, Inc.
11 | #
12 | # 2012-2013 Qualcomm Atheros, Inc.
13 | # All Rights Reserved.
14 | # Qualcomm Atheros Confidential and Proprietary.
15 | #
16 | # Export of this technology or software is regulated by the U.S. Government.
17 | # Diversion contrary to U.S. law prohibited.
18 | #=============================================================================*/
19 |
20 | # X86 ONLY - UBUNTU:
21 | # Copy this file in the same directory where the executable is
22 |
23 | # Log level
24 | # EL_LOG_OFF = 0, EL_ERROR = 1, EL_WARNING = 2, EL_INFO = 3, EL_DEBUG = 4, EL_VERBOSE = 5, EL_LOG_ALL = 100
25 | LOWI_LOG_LEVEL = 2
26 | LOWI_USE_LOWI_LP = 0
27 | LOWI_HE_RTT_SUPPORT = 1
28 | LOWI_USE_NLMSG_FOR_CAPS = 1
29 | LOWI_RTT_WEIGHTED_MEAN = 1
30 | LOWI_USE_6G_CHANNELS = 1
31 |
--------------------------------------------------------------------------------
/gps/etc/Android.bp:
--------------------------------------------------------------------------------
1 | prebuilt_etc {
2 | name: "apdr.conf",
3 | vendor: true,
4 | src: "apdr.conf",
5 | }
6 |
7 | prebuilt_etc {
8 | name: "flp.conf",
9 | vendor: true,
10 | src: "flp.conf",
11 | }
12 |
13 | prebuilt_etc {
14 | name: "gnss_antenna_info.conf",
15 | vendor: true,
16 | src: "gnss_antenna_info.conf",
17 | }
18 |
19 | prebuilt_etc {
20 | name: "gps.conf",
21 | vendor: true,
22 | src: "gps.conf",
23 | }
24 |
25 | prebuilt_etc {
26 | name: "izat.conf",
27 | vendor: true,
28 | src: "izat.conf",
29 | }
30 |
31 | prebuilt_etc {
32 | name: "lowi.conf",
33 | vendor: true,
34 | src: "lowi.conf",
35 | }
36 |
37 | prebuilt_etc {
38 | name: "sap.conf",
39 | vendor: true,
40 | src: "sap.conf",
41 | }
42 |
43 | prebuilt_etc {
44 | name: "gnss@2.0-base.policy",
45 | vendor: true,
46 | sub_dir: "seccomp_policy",
47 | src: "seccomp_policy/gnss@2.0-base.policy",
48 | }
49 |
50 | prebuilt_etc {
51 | name: "gnss@2.0-xtra-daemon.policy",
52 | vendor: true,
53 | sub_dir: "seccomp_policy",
54 | src: "seccomp_policy/gnss@2.0-xtra-daemon.policy",
55 | }
56 |
--------------------------------------------------------------------------------
/parts/src/org/lineageos/settings/BootCompletedReceiver.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (C) 2023 LineageOS Project
3 | *
4 | * SPDX-License-Identifier: Apache-2.0
5 | */
6 |
7 | package org.lineageos.settings;
8 |
9 | import android.content.BroadcastReceiver;
10 | import android.content.Context;
11 | import android.content.Intent;
12 | import android.content.IntentFilter;
13 | import android.util.Log;
14 |
15 | import org.lineageos.settings.refreshrate.RefreshUtils;
16 | import org.lineageos.settings.thermal.ThermalUtils;
17 |
18 | public class BootCompletedReceiver extends BroadcastReceiver {
19 |
20 | private static final String TAG = "XiaomiParts";
21 | private static final boolean DEBUG = true;
22 |
23 | @Override
24 | public void onReceive(final Context context, Intent intent) {
25 | if (!intent.getAction().equals(Intent.ACTION_LOCKED_BOOT_COMPLETED)) {
26 | return;
27 | }
28 | if (DEBUG) Log.d(TAG, "Received boot completed intent");
29 |
30 | // Refreshrate
31 | RefreshUtils.startService(context);
32 |
33 | // Thermal
34 | ThermalUtils.startService(context);
35 | }
36 | }
37 |
--------------------------------------------------------------------------------
/gps/utils/Android.bp:
--------------------------------------------------------------------------------
1 |
2 | cc_library_shared {
3 |
4 | name: "libgps.utils",
5 | vendor: true,
6 |
7 |
8 |
9 | //# Libs
10 | shared_libs: [
11 | "libdl",
12 | "libutils",
13 | "libcutils",
14 | "liblog",
15 | "libprocessgroup",
16 | ],
17 |
18 | srcs: [
19 | "loc_log.cpp",
20 | "loc_cfg.cpp",
21 | "msg_q.c",
22 | "linked_list.c",
23 | "loc_target.cpp",
24 | "LocHeap.cpp",
25 | "LocTimer.cpp",
26 | "LocThread.cpp",
27 | "MsgTask.cpp",
28 | "loc_misc_utils.cpp",
29 | "loc_nmea.cpp",
30 | "LocIpc.cpp",
31 | "LogBuffer.cpp",
32 | ],
33 |
34 | cflags: [
35 | "-fno-short-enums",
36 | "-D_ANDROID_",
37 | ] + GNSS_CFLAGS,
38 |
39 | //# Includes
40 | ldflags: ["-Wl,--export-dynamic"],
41 |
42 | header_libs: [
43 | "libutils_headers",
44 | "libloc_pla_headers",
45 | "liblocation_api_headers",
46 | ],
47 | }
48 |
49 | cc_library_headers {
50 |
51 | name: "libgps.utils_headers",
52 | export_include_dirs: ["."],
53 | vendor: true,
54 | }
55 |
--------------------------------------------------------------------------------
/gps/core/Android.bp:
--------------------------------------------------------------------------------
1 |
2 | cc_library_shared {
3 |
4 | name: "libloc_core",
5 | vendor: true,
6 |
7 |
8 |
9 | shared_libs: [
10 | "liblog",
11 | "libutils",
12 | "libcutils",
13 | "libgps.utils",
14 | "libdl",
15 | "liblog",
16 | ],
17 |
18 | srcs: [
19 | "LocApiBase.cpp",
20 | "LocAdapterBase.cpp",
21 | "ContextBase.cpp",
22 | "LocContext.cpp",
23 | "loc_core_log.cpp",
24 | "data-items/DataItemsFactoryProxy.cpp",
25 | "SystemStatusOsObserver.cpp",
26 | "SystemStatus.cpp",
27 | ],
28 |
29 | cflags: [
30 | "-fno-short-enums",
31 | "-D_ANDROID_",
32 | ] + GNSS_CFLAGS,
33 |
34 | local_include_dirs: [
35 | "data-items",
36 | "observer",
37 | ],
38 |
39 | header_libs: [
40 | "libutils_headers",
41 | "libgps.utils_headers",
42 | "libloc_pla_headers",
43 | "liblocation_api_headers",
44 | ],
45 |
46 | }
47 |
48 | cc_library_headers {
49 |
50 | name: "libloc_core_headers",
51 | vendor: true,
52 | export_include_dirs: ["."] + [
53 | "data-items",
54 | "observer",
55 | ],
56 | }
57 |
--------------------------------------------------------------------------------
/rootdir/etc/init.batterysecret.rc:
--------------------------------------------------------------------------------
1 | on property:sys.boot_completed=1
2 | chmod 0664 /sys/class/qcom-battery/pd_verifed
3 | chmod 0664 /sys/class/qcom-battery/request_vdm_cmd
4 | chmod 0664 /sys/class/qcom-battery/verify_process
5 | chmod 0664 /sys/class/qcom-battery/authentic
6 | chmod 0664 /sys/class/qcom-battery/verify_slave_flag
7 | chmod 0664 /sys/class/qcom-battery/slave_authentic
8 | chmod 0664 /sys/class/qcom-battery/is_old_hw
9 |
10 | service batterysecret /vendor/bin/batterysecret
11 | class last_start
12 | user root
13 | group system system wakelock
14 | disabled
15 | seclabel u:r:batterysecret:s0
16 |
17 | on property:sys.boot_completed=1
18 | start batterysecret
19 |
20 | #run batterysecret in off-charge mode
21 | on property:init.svc.vendor.charger=running
22 | start batterysecret
23 | chmod 0664 /sys/class/qcom-battery/pd_verifed
24 | chmod 0664 /sys/class/qcom-battery/request_vdm_cmd
25 | chmod 0664 /sys/class/qcom-battery/verify_process
26 | chmod 0664 /sys/class/qcom-battery/authentic
27 | chmod 0664 /sys/class/qcom-battery/verify_slave_flag
28 | chmod 0664 /sys/class/qcom-battery/slave_authentic
29 | chmod 0664 /sys/class/qcom-battery/is_old_hw
--------------------------------------------------------------------------------
/rro_overlays/CarrierConfigOverlay/AndroidManifest.xml:
--------------------------------------------------------------------------------
1 |
2 |
16 |
17 |
21 |
22 |
26 |
27 |
--------------------------------------------------------------------------------
/parts/res/drawable/ic_refresh_60.xml:
--------------------------------------------------------------------------------
1 |
2 |
8 |
11 |
14 |
17 |
--------------------------------------------------------------------------------
/rro_overlays/WifiOverlay/AndroidManifest.xml:
--------------------------------------------------------------------------------
1 |
2 |
16 |
17 |
21 |
22 |
27 |
28 |
--------------------------------------------------------------------------------
/gpt-utils/Android.bp:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (C) 2018 The Android Open Source Project
3 | //
4 | // Licensed under the Apache License, Version 2.0 (the "License");
5 | // you may not use this file except in compliance with the License.
6 | // You may obtain a copy of the License at
7 | //
8 | // http://www.apache.org/licenses/LICENSE-2.0
9 | //
10 | // Unless required by applicable law or agreed to in writing, software
11 | // distributed under the License is distributed on an "AS IS" BASIS,
12 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | // See the License for the specific language governing permissions and
14 | // limitations under the License.
15 | //
16 |
17 |
18 | cc_library {
19 | name: "libgptutils.xiaomi_sm8350",
20 | vendor: true,
21 | recovery_available: true,
22 | shared_libs: [
23 | "libcutils",
24 | "liblog",
25 | "libz",
26 | ],
27 | cflags: [
28 | "-Wall",
29 | "-Werror",
30 | "-D_BSG_FRAMEWORK_KERNEL_HEADERS",
31 | ],
32 | srcs: [
33 | "gpt-utils.cpp",
34 | "recovery-ufs-bsg.cpp",
35 | ],
36 | owner: "qti",
37 | header_libs: [
38 | "generated_kernel_headers",
39 | ],
40 | export_include_dirs: ["."],
41 | }
42 |
--------------------------------------------------------------------------------
/overlay/packages/services/Telephony/res/values/config.xml:
--------------------------------------------------------------------------------
1 |
2 |
13 |
14 |
16 |
17 |
18 | org.codeaurora.ims
19 |
20 |
21 | org.codeaurora.ims
22 |
23 |
--------------------------------------------------------------------------------
/gps/batching/Makefile.am:
--------------------------------------------------------------------------------
1 | AM_CFLAGS = \
2 | $(GPSUTILS_CFLAGS) \
3 | $(LOCCORE_CFLAGS) \
4 | -I./ \
5 | -std=c++1y \
6 | -D__func__=__PRETTY_FUNCTION__ \
7 | -fno-short-enums
8 |
9 | ACLOCAL_AMFLAGS = -I m4
10 |
11 | requiredlibs = \
12 | $(GPSUTILS_LIBS) \
13 | $(LOCCORE_LIBS) \
14 | -llog
15 |
16 | h_sources = \
17 | BatchingAdapter.h
18 |
19 | libbatching_la_SOURCES = \
20 | location_batching.cpp \
21 | BatchingAdapter.cpp
22 |
23 | if USE_GLIB
24 | libbatching_la_CFLAGS = -DUSE_GLIB $(AM_CFLAGS) @GLIB_CFLAGS@
25 | libbatching_la_LDFLAGS = -lstdc++ -g -Wl,-z,defs -lpthread $(requiredlibs) @GLIB_LIBS@ -shared -version-info 1:0:0
26 | libbatching_la_CPPFLAGS = -DUSE_GLIB $(AM_CFLAGS) $(AM_CPPFLAGS) @GLIB_CFLAGS@
27 | else
28 | libbatching_la_CFLAGS = $(AM_CFLAGS)
29 | libbatching_la_LDFLAGS = -Wl,-z,defs -lpthread $(requiredlibs) -shared -version-info 1:0:0
30 | libbatching_la_CPPFLAGS = $(AM_CFLAGS) $(AM_CPPFLAGS)
31 | endif
32 |
33 | library_include_HEADERS = $(h_sources)
34 |
35 | library_includedir = $(pkgincludedir)
36 |
37 | #Create and Install libraries
38 | lib_LTLIBRARIES = libbatching.la
39 |
40 | pkgconfigdir = $(libdir)/pkgconfig
41 | pkgconfig_DATA = location-batching.pc
42 | sysconf_DATA = $(WORKSPACE)/hardware/qcom/gps/etc/flp.conf
43 | EXTRA_DIST = $(pkgconfig_DATA)
44 |
45 |
--------------------------------------------------------------------------------
/gps/location/Makefile.am:
--------------------------------------------------------------------------------
1 | ACLOCAL_AMFLAGS = -I m4
2 |
3 | AM_CFLAGS = \
4 | -I./ \
5 | -I../utils \
6 | $(LOCPLA_CFLAGS) \
7 | $(GPSUTILS_CFLAGS) \
8 | -std=c++11
9 |
10 | liblocation_api_la_SOURCES = \
11 | LocationAPI.cpp \
12 | LocationAPIClientBase.cpp
13 |
14 | if USE_EXTERNAL_AP
15 | AM_CFLAGS += -DFEATURE_EXTERNAL_AP
16 | endif
17 |
18 | if USE_GLIB
19 | liblocation_api_la_CFLAGS = -DUSE_GLIB $(AM_CFLAGS) @GLIB_CFLAGS@
20 | liblocation_api_la_LDFLAGS = -lstdc++ -Wl,-z,defs -lpthread @GLIB_LIBS@ -shared -version-info 1:0:0
21 | liblocation_api_la_CPPFLAGS = -DUSE_GLIB $(AM_CFLAGS) $(AM_CPPFLAGS) @GLIB_CFLAGS@
22 | else
23 | liblocation_api_la_CFLAGS = $(AM_CFLAGS)
24 | liblocation_api_la_LDFLAGS = -Wl,-z,defs -lpthread -shared -version-info 1:0:0
25 | liblocation_api_la_CPPFLAGS = $(AM_CFLAGS) $(AM_CPPFLAGS)
26 | endif
27 |
28 | liblocation_api_la_LIBADD = -lstdc++ -ldl $(GPSUTILS_LIBS)
29 |
30 | library_include_HEADERS = \
31 | LocationAPI.h \
32 | LocationAPIClientBase.h \
33 | location_interface.h \
34 | LocationDataTypes.h \
35 | ILocationAPI.h
36 |
37 | #Create and Install libraries
38 | lib_LTLIBRARIES = liblocation_api.la
39 |
40 | library_includedir = $(pkgincludedir)
41 |
42 | pkgconfigdir = $(libdir)/pkgconfig
43 | pkgconfig_DATA = location-api.pc
44 | EXTRA_DIST = $(pkgconfig_DATA)
45 |
--------------------------------------------------------------------------------
/overlay-superior/frameworks/base/core/res/res/values/config.xml:
--------------------------------------------------------------------------------
1 |
2 |
17 |
18 |
19 | false
20 | false
21 |
22 |
23 | /sys/class/qcom-battery/fastchg_mode
24 |
25 |
26 | 1
27 |
28 |
--------------------------------------------------------------------------------
/setup-makefiles.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | #
3 | # Copyright (C) 2016 The CyanogenMod Project
4 | # Copyright (C) 2017-2022 The LineageOS Project
5 | #
6 | # SPDX-License-Identifier: Apache-2.0
7 | #
8 |
9 | set -e
10 |
11 | # Load extract_utils and do some sanity checks
12 | MY_DIR="${BASH_SOURCE%/*}"
13 | if [[ ! -d "${MY_DIR}" ]]; then MY_DIR="${PWD}"; fi
14 |
15 | ANDROID_ROOT="${MY_DIR}/../../.."
16 |
17 | HELPER="${ANDROID_ROOT}/tools/extract-utils/extract_utils.sh"
18 | if [ ! -f "${HELPER}" ]; then
19 | echo "Unable to find helper script at ${HELPER}"
20 | exit 1
21 | fi
22 | source "${HELPER}"
23 |
24 | # Initialize the helper for common
25 | setup_vendor "${DEVICE_COMMON}" "${VENDOR}" "${ANDROID_ROOT}" true
26 |
27 | # Warning headers and guards
28 | write_headers "haydn lisa odin renoir venus"
29 |
30 | # The standard common blobs
31 | write_makefiles "${MY_DIR}/proprietary-files.txt" true
32 |
33 | # Finish
34 | write_footers
35 |
36 | if [ -s "${MY_DIR}/../${DEVICE}/proprietary-files.txt" ]; then
37 | # Reinitialize the helper for device
38 | setup_vendor "${DEVICE}" "${VENDOR}" "${ANDROID_ROOT}" false
39 |
40 | # Warning headers and guards
41 | write_headers
42 |
43 | # The standard device blobs
44 | write_makefiles "${MY_DIR}/../${DEVICE}/proprietary-files.txt" true
45 |
46 | # Finish
47 | write_footers
48 | fi
49 |
--------------------------------------------------------------------------------
/parts/res/drawable/ic_clear_speaker.xml:
--------------------------------------------------------------------------------
1 |
7 |
9 |
10 |
--------------------------------------------------------------------------------
/parts/res/drawable/ic_thermal_browser.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/parts/src/org/lineageos/settings/speaker/ClearSpeakerActivity.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (C) 2020 Paranoid Android
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * http://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | */
16 |
17 | package org.lineageos.settings.speaker;
18 |
19 | import android.os.Bundle;
20 |
21 | import com.android.settingslib.collapsingtoolbar.CollapsingToolbarBaseActivity;
22 | import com.android.settingslib.widget.R;
23 |
24 | public class ClearSpeakerActivity extends CollapsingToolbarBaseActivity {
25 |
26 | private static final String TAG_CLEARSPEAKER = "clearspeaker";
27 |
28 | @Override
29 | protected void onCreate(Bundle savedInstanceState) {
30 | super.onCreate(savedInstanceState);
31 |
32 | getFragmentManager().beginTransaction().replace(R.id.content_frame,
33 | new ClearSpeakerFragment(), TAG_CLEARSPEAKER).commit();
34 | }
35 | }
36 |
--------------------------------------------------------------------------------
/parts/res/drawable/ic_refresh_120.xml:
--------------------------------------------------------------------------------
1 |
2 |
8 |
11 |
14 |
17 |
22 |
--------------------------------------------------------------------------------
/sepolicy/vendor/property_contexts:
--------------------------------------------------------------------------------
1 | # Aware
2 | ro.vendor.aware_available u:object_r:vendor_aware_available_prop:s0
3 |
4 | # Camera
5 | vendor.camera.sensor. u:object_r:vendor_camera_sensor_prop:s0
6 | ro.boot.camera.config u:object_r:vendor_camera_sensor_prop:s0
7 | persist.camera. u:object_r:vendor_camera_prop:s0
8 | vendor.panel.display u:object_r:vendor_camera_prop:s0
9 | persist.vendor.low.cutoff u:object_r:vendor_camera_prop:s0
10 | persist.vendor.aiie_capture_log.debug u:object_r:vendor_camera_prop:s0
11 |
12 | # Fingerprint
13 | ro.hardware.fp.fod u:object_r:vendor_fp_prop:s0
14 | persist.vendor.sys.fp. u:object_r:vendor_fp_prop:s0
15 | persist.vendor.sys.fp.info u:object_r:vendor_fp_info_prop:s0
16 | persist.vendor.sys.fp.uid u:object_r:vendor_fp_info_prop:s0
17 | ro.hardware.fp u:object_r:vendor_fp_prop:s0
18 |
19 | # IMEI
20 | ro.vendor.oem. u:object_r:vendor_deviceid_prop:s0
21 |
22 | # Mlipay
23 | persist.vendor.sys.pay. u:object_r:vendor_mlipay_prop:s0
24 | persist.vendor.sys.provision.status u:object_r:vendor_mlipay_prop:s0
25 |
26 | # Property to set media performance class
27 | ro.vendor.media_performance_class u:object_r:vendor_media_performance_class:s0
28 |
29 | # Thermal
30 | vendor.sys.thermal. u:object_r:vendor_thermal_normal_prop:s0
31 |
--------------------------------------------------------------------------------
/overlay-superior/frameworks/base/packages/SystemUI/res/values/config.xml:
--------------------------------------------------------------------------------
1 |
2 |
17 |
18 |
19 | true
20 |
21 |
22 | 60
23 |
24 |
25 | 90
26 |
27 |
28 | /sys/class/drm/card0/sde-crtc-0/measured_fps
29 |
30 |
--------------------------------------------------------------------------------
/sepolicy/vendor/vendor_hal_citsensorservice_xiaomi.te:
--------------------------------------------------------------------------------
1 | type vendor_hal_citsensorservice_xiaomi_hwservice, hwservice_manager_type, protected_hwservice;
2 |
3 | type vendor_hal_citsensorservice_xiaomi_default, domain;
4 | hal_server_domain(vendor_hal_citsensorservice_xiaomi_default, vendor_hal_citsensorservice_xiaomi)
5 |
6 | type vendor_hal_citsensorservice_xiaomi_default_exec, exec_type, vendor_file_type, file_type;
7 | init_daemon_domain(vendor_hal_citsensorservice_xiaomi_default)
8 |
9 | hal_attribute_hwservice(vendor_hal_citsensorservice_xiaomi, vendor_hal_citsensorservice_xiaomi_hwservice)
10 |
11 | binder_call(vendor_hal_citsensorservice_xiaomi_client, vendor_hal_citsensorservice_xiaomi_server)
12 | binder_call(vendor_hal_citsensorservice_xiaomi_server, vendor_hal_citsensorservice_xiaomi_client)
13 |
14 | allow vendor_hal_citsensorservice_xiaomi self:{ socket qipcrtr_socket } create_socket_perms;
15 | allowxperm vendor_hal_citsensorservice_xiaomi self:{ socket qipcrtr_socket } ioctl msm_sock_ipc_ioctls;
16 |
17 | allow vendor_hal_citsensorservice_xiaomi_default fwk_sensor_hwservice:hwservice_manager find;
18 | allow vendor_hal_citsensorservice_xiaomi_default system_server:binder call;
19 |
20 | r_dir_file(vendor_hal_citsensorservice_xiaomi_default, vendor_sysfs_graphics)
21 |
22 | allow vendor_hal_citsensorservice_xiaomi_default input_device:dir r_dir_perms;
23 | allow vendor_hal_citsensorservice_xiaomi_default input_device:chr_file rw_file_perms;
24 |
--------------------------------------------------------------------------------
/dolby/permissions/privapp-com.dolby.daxappui.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/sepolicy/vendor/mi_thermald.te:
--------------------------------------------------------------------------------
1 | type mi_thermald, domain;
2 | type mi_thermald_exec, exec_type, vendor_file_type, file_type;
3 | type thermal_data_file, data_file_type, file_type;
4 | vendor_public_prop(vendor_thermal_normal_prop)
5 |
6 | init_daemon_domain(mi_thermald)
7 |
8 | r_dir_file(mi_thermald, sysfs)
9 | r_dir_file(mi_thermald, sysfs_leds)
10 | r_dir_file(mi_thermald, sysfs_thermal)
11 | r_dir_file(mi_thermald, vendor_sysfs_kgsl)
12 | r_dir_file(mi_thermald, vendor_sysfs_battery_supply)
13 | r_dir_file(mi_thermald, vendor_sysfs_graphics)
14 | r_dir_file(mi_thermald, thermal_data_file)
15 | r_dir_file(mi_thermald, vendor_data_file)
16 |
17 | allow mi_thermald init:unix_stream_socket { connectto };
18 | allow mi_thermald property_socket:sock_file write;
19 | allow mi_thermald sysfs:file w_file_perms;
20 | allow mi_thermald sysfs_thermal:file w_file_perms;
21 | allow mi_thermald vendor_sysfs_kgsl:file w_file_perms;
22 | allow mi_thermald vendor_sysfs_battery_supply:file w_file_perms;
23 | allow mi_thermald vendor_sysfs_graphics:file w_file_perms;
24 | allow mi_thermald thermal_data_file:dir w_dir_perms;
25 | allow mi_thermald thermal_data_file:file create_file_perms;
26 | allow mi_thermald vendor_data_file:file rw_file_perms;
27 | allow mi_thermald vendor_data_file:dir w_dir_perms;
28 | allow mi_thermald sysfs_devices_system_cpu:file rw_file_perms;
29 |
30 | allow mi_thermald self:capability { fsetid sys_boot chown fowner };
31 | allow mi_thermald self:capability2 { wake_alarm block_suspend };
32 |
33 | set_prop(mi_thermald, vendor_thermal_normal_prop)
34 |
--------------------------------------------------------------------------------
/gps/geofence/Makefile.am:
--------------------------------------------------------------------------------
1 | AM_CFLAGS = -Wundef \
2 | -Wno-trigraphs \
3 | -g -O0 \
4 | -fno-inline \
5 | -fno-short-enums \
6 | -fpic \
7 | ${GPSUTILS_CFLAGS} \
8 | ${LOCCORE_CFLAGS} \
9 | $(LOCPLA_CFLAGS) \
10 | -D__func__=__PRETTY_FUNCTION__ \
11 | -std=c++1y
12 |
13 | AM_CPPFLAGS = $(AM_CFLAGS)
14 |
15 | ACLOCAL_AMFLAGS = -I m4
16 |
17 | requiredlibs = \
18 | ${LOCCORE_LIBS} \
19 | $(GPSUTILS_LIBS) \
20 | -llog
21 |
22 | h_sources = \
23 | GeofenceAdapter.h
24 |
25 | c_sources = \
26 | GeofenceAdapter.cpp \
27 | location_geofence.cpp
28 |
29 | libgeofencing_la_SOURCES = $(c_sources)
30 | if USE_GLIB
31 | libgeofencing_la_CFLAGS = -DUSE_GLIB @GLIB_CFLAGS@ $(AM_CFLAGS)
32 | libgeofencing_la_CPPFLAGS = -DUSE_GLIB @GLIB_CFLAGS@ $(AM_CFLAGS) $(AM_CPPFLAGS)
33 | libgeofencing_la_LDFLAGS = -lstdc++ -Wl,-z,defs @GLIB_LIBS@ $(requiredlibs) -shared -version-info 1:0:0
34 | libgeofencing_la_LIBDADD = $(requiredlibs) -lstdc++ @GLIB_LIBS@
35 | else
36 | libgeofencing_la_CFLAGS = $(AM_CFLAGS)
37 | libgeofencing_la_CPPFLAGS = $(AM_CFLAGS) $(AM_CPPFLAGS)
38 | libgeofencing_la_LDFLAGS = -lstdc++ -Wl,-z,defs $(requiredlibs) -shared -version-info 1:0:0
39 | libgeofencing_la_LIBDADD = $(requiredlibs) -lstdc++
40 | endif
41 |
42 | library_include_HEADERS = $(h_sources)
43 |
44 | library_includedir = $(pkgincludedir)
45 |
46 | lib_LTLIBRARIES = libgeofencing.la
47 |
48 | pkgconfigdir = $(libdir)/pkgconfig
49 | pkgconfig_DATA = location-geofence.pc
50 | EXTRA_DIST = $(pkgconfig_DATA)
51 |
--------------------------------------------------------------------------------
/parts/res/values/themes.xml:
--------------------------------------------------------------------------------
1 |
2 |
17 |
18 |
19 |
20 |
21 |
32 |
33 |
34 |
--------------------------------------------------------------------------------
/power/power-mode.cpp:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (C) 2021 The LineageOS Project
3 | *
4 | * SPDX-License-Identifier: Apache-2.0
5 | */
6 |
7 | #include
8 | #include
9 | #include
10 | #include
11 |
12 | // defines from drivers/input/touchscreen/xiaomi/xiaomi_touch.h
13 | #define SET_CUR_VALUE 0
14 | #define Touch_Doubletap_Mode 14
15 |
16 | #define TOUCH_DEV_PATH "/dev/xiaomi-touch"
17 | #define TOUCH_ID 0
18 | #define TOUCH_MAGIC 0x5400
19 | #define TOUCH_IOC_SETMODE TOUCH_MAGIC + SET_CUR_VALUE
20 |
21 | namespace aidl {
22 | namespace android {
23 | namespace hardware {
24 | namespace power {
25 | namespace impl {
26 |
27 | using ::aidl::android::hardware::power::Mode;
28 |
29 | bool isDeviceSpecificModeSupported(Mode type, bool* _aidl_return) {
30 | switch (type) {
31 | case Mode::DOUBLE_TAP_TO_WAKE:
32 | *_aidl_return = true;
33 | return true;
34 | default:
35 | return false;
36 | }
37 | }
38 |
39 | bool setDeviceSpecificMode(Mode type, bool enabled) {
40 | switch (type) {
41 | case Mode::DOUBLE_TAP_TO_WAKE: {
42 | int fd = open(TOUCH_DEV_PATH, O_RDWR);
43 | int arg[3] = {TOUCH_ID, Touch_Doubletap_Mode, enabled ? 1 : 0};
44 | ioctl(fd, TOUCH_IOC_SETMODE, &arg);
45 | close(fd);
46 | return true;
47 | }
48 | default:
49 | return false;
50 | }
51 | }
52 |
53 | } // namespace impl
54 | } // namespace power
55 | } // namespace hardware
56 | } // namespace android
57 | } // namespace aidl
58 |
--------------------------------------------------------------------------------
/system.prop:
--------------------------------------------------------------------------------
1 | # Bluetooth
2 | vendor.bluetooth.soc=hastings
3 |
4 | # CNE
5 | persist.vendor.cne.feature=1
6 |
7 | # Disable vsync for cpu rendered apps
8 | debug.cpurend.vsync=false
9 |
10 | # Graphics
11 | debug.sf.disable_backpressure=1
12 | debug.sf.enable_hwc_vds=1
13 |
14 | # FUSE
15 | persist.sys.fuse.passthrough.enable=true
16 |
17 | # FS-verity
18 | ro.apk_verity.mode=2
19 |
20 | # Fling velocities
21 | ro.min.fling_velocity=70
22 | ro.max.fling_velocity=21000
23 |
24 | # Log
25 | persist.log.tag.CVP=S
26 | persist.log.tag.CamX=S
27 | persist.log.tag.SYNX-UMD=S
28 | persist.log.tag.CHIUSECASE=S
29 |
30 | # LMK properties
31 | ro.lmk.kill_heaviest_task=true
32 | ro.lmk.kill_timeout_ms=50
33 |
34 | # IMS
35 | persist.dbg.volte_avail_ovr=1
36 | persist.dbg.vt_avail_ovr=1
37 | persist.dbg.wfc_avail_ovr=1
38 |
39 | # Media
40 | media.aac_51_output_enabled=true
41 | media.stagefright.enable-aac=true
42 | media.stagefright.enable-fma2dp=true
43 | media.stagefright.enable-http=true
44 | media.stagefright.enable-player=true
45 | media.stagefright.enable-qcp=true
46 | media.stagefright.enable-scan=true
47 | persist.mm.enable.prefetch=true
48 | ro.media.recorder-max-base-layer-fps=60
49 | vendor.mm.enable.qcom_parser=16777215
50 |
51 | # NFC
52 | ro.nfc.port=I2C
53 |
54 | # QC framework value-adds
55 | ro.vendor.qti.va_aosp.support=1
56 |
57 | # Qcom
58 | ro.vendor.qti.sys.fw.bservice_enable=true
59 |
60 | # Radio
61 | DEVICE_PROVISIONED=1
62 | ril.subscription.types=NV,RUIM
63 |
64 | # Radio VoNR Calling
65 | persist.radio.is_vonr_enabled_0=true
66 | persist.radio.is_vonr_enabled_1=true
67 |
68 | # Sensors
69 | persist.vendor.sensors.enable.mag_filter=true
70 |
--------------------------------------------------------------------------------
/parts/src/org/lineageos/settings/refreshrate/RefreshActivity.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (C) 2023 The LineageOS Project
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * http://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | */
16 |
17 | package org.lineageos.settings.refreshrate;
18 |
19 | import android.os.Bundle;
20 | import android.view.MenuItem;
21 |
22 | import com.android.settingslib.collapsingtoolbar.CollapsingToolbarBaseActivity;
23 | import com.android.settingslib.widget.R;
24 |
25 | public class RefreshActivity extends CollapsingToolbarBaseActivity {
26 |
27 | private static final String TAG_REFRESH = "refresh";
28 |
29 | @Override
30 | protected void onCreate(Bundle savedInstanceState) {
31 | super.onCreate(savedInstanceState);
32 |
33 | getFragmentManager().beginTransaction().replace(R.id.content_frame,
34 | new RefreshSettingsFragment(), TAG_REFRESH).commit();
35 | }
36 |
37 |
38 | @Override
39 | public boolean onOptionsItemSelected(MenuItem item) {
40 | if (item.getItemId() == android.R.id.home) {
41 | onBackPressed();
42 | return true;
43 | }
44 | return false;
45 | }
46 | }
47 |
--------------------------------------------------------------------------------
/parts/src/org/lineageos/settings/thermal/ThermalSettingsActivity.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (C) 2020 The LineageOS Project
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * http://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | */
16 |
17 | package org.lineageos.settings.thermal;
18 |
19 | import android.os.Bundle;
20 | import android.view.MenuItem;
21 |
22 | import com.android.settingslib.collapsingtoolbar.CollapsingToolbarBaseActivity;
23 | import com.android.settingslib.widget.R;
24 |
25 | public class ThermalSettingsActivity extends CollapsingToolbarBaseActivity {
26 |
27 | private static final String TAG_THERMAL = "thermal";
28 |
29 | @Override
30 | protected void onCreate(Bundle savedInstanceState) {
31 | super.onCreate(savedInstanceState);
32 | getFragmentManager().beginTransaction().replace(R.id.content_frame,
33 | new ThermalSettingsFragment(), TAG_THERMAL).commit();
34 | }
35 |
36 | @Override
37 | public boolean onOptionsItemSelected(MenuItem item) {
38 | if (item.getItemId() == android.R.id.home) {
39 | onBackPressed();
40 | return true;
41 | }
42 | return false;
43 | }
44 | }
45 |
--------------------------------------------------------------------------------
/sepolicy/vendor/hal_fingerprint_default.te:
--------------------------------------------------------------------------------
1 | type vendor_fingerprint_data_file, data_file_type, file_type;
2 | type vendor_fingerprint_device, dev_type;
3 | type vendor_hal_fingerprint_hwservice_xiaomi, hwservice_manager_type;
4 | type vendor_sysfs_udfps, sysfs_type, fs_type;
5 | vendor_restricted_prop(vendor_fp_prop)
6 | vendor_internal_prop(vendor_fp_info_prop)
7 |
8 | # Binder
9 | allow hal_fingerprint_default vendor_hal_fingerprint_hwservice_xiaomi:hwservice_manager find;
10 | allow hal_fingerprint_default vendor_hal_perf_default:binder call;
11 | allow hal_fingerprint_default vendor_hal_perf_hwservice:hwservice_manager find;
12 |
13 | # Props
14 | set_prop(hal_fingerprint_default, vendor_fp_prop)
15 | set_prop(hal_fingerprint_default, vendor_fp_info_prop)
16 |
17 | # Sysfs
18 | allow hal_fingerprint_default sysfs_rtc:dir r_dir_perms;
19 | allow hal_fingerprint_default sysfs_rtc:file rw_file_perms;
20 | allow hal_fingerprint_default vendor_sysfs_spss:dir r_dir_perms;
21 | allow hal_fingerprint_default vendor_sysfs_spss:file rw_file_perms;
22 | allow hal_fingerprint_default vendor_sysfs_fingerprint:dir r_dir_perms;
23 | allow hal_fingerprint_default vendor_sysfs_fingerprint:file rw_file_perms;
24 | allow hal_fingerprint_default vendor_sysfs_udfps:file rw_file_perms;
25 | allow hal_fingerprint_default vendor_sysfs_graphics:dir r_dir_perms;
26 | allow hal_fingerprint_default vendor_sysfs_graphics:file rw_file_perms;
27 |
28 | # Dev nodes
29 | allow hal_fingerprint_default tee_device:chr_file rw_file_perms;
30 | allow hal_fingerprint_default uhid_device:chr_file rw_file_perms;
31 |
32 | # Data
33 | allow hal_fingerprint_default vendor_fingerprint_data_file:dir rw_dir_perms;
34 | allow hal_fingerprint_default vendor_fingerprint_data_file:file create_file_perms;
35 |
--------------------------------------------------------------------------------
/sepolicy/vendor/battery.te:
--------------------------------------------------------------------------------
1 | define(`battery_daemons', `{ batteryd batterysecret }')
2 |
3 | type batteryd, domain;
4 | type batteryd_exec, exec_type, vendor_file_type, file_type;
5 | type batterysecret, domain;
6 | type batterysecret_exec, exec_type, vendor_file_type, file_type;
7 | type persist_subsys_file, vendor_persist_type, file_type;
8 |
9 | init_daemon_domain(batteryd)
10 | init_daemon_domain(batterysecret)
11 |
12 | r_dir_file(battery_daemons, cgroup)
13 | r_dir_file(battery_daemons, mnt_vendor_file)
14 | r_dir_file(battery_daemons, persist_subsys_file)
15 | r_dir_file(battery_daemons, rootfs)
16 | r_dir_file(battery_daemons, vendor_sysfs_battery_supply)
17 | r_dir_file(battery_daemons, sysfs_batteryinfo)
18 | r_dir_file(battery_daemons, sysfs_type)
19 | r_dir_file(battery_daemons, vendor_sysfs_usb_supply)
20 | r_dir_file(battery_daemons, vendor_sysfs_usbpd_device)
21 |
22 |
23 | allow battery_daemons persist_subsys_file:dir w_dir_perms;
24 | allow battery_daemons rootfs:dir w_dir_perms;
25 |
26 | allow battery_daemons kmsg_device:chr_file rw_file_perms;
27 | allow battery_daemons persist_subsys_file:file w_file_perms;
28 | allow battery_daemons sysfs:file w_file_perms;
29 | allow battery_daemons vendor_sysfs_battery_supply:file w_file_perms;
30 | allow battery_daemons sysfs_usb:file w_file_perms;
31 | allow battery_daemons vendor_sysfs_usb_supply:file w_file_perms;
32 | allow battery_daemons vendor_sysfs_usbpd_device:file w_file_perms;
33 |
34 | allow battery_daemons self:global_capability_class_set sys_tty_config;
35 | allow battery_daemons self:global_capability_class_set sys_boot;
36 |
37 | allow battery_daemons self:netlink_kobject_uevent_socket create_socket_perms_no_ioctl;
38 |
39 | allow battery_daemons self:capability { chown fsetid };
40 |
41 | wakelock_use(battery_daemons)
42 |
--------------------------------------------------------------------------------
/sepolicy/vendor/system_app.te:
--------------------------------------------------------------------------------
1 | # Allow system app to access HALs
2 | binder_call(system_app, hal_fingerprint_default)
3 | binder_call(system_app, hal_audio_default)
4 | binder_call(system_app, hal_camera_default)
5 | binder_call(system_app, hal_contexthub_default)
6 | binder_call(system_app, hal_health_default)
7 | binder_call(system_app, hal_lineage_health_default)
8 | binder_call(system_app, hal_gnss_default)
9 | binder_call(system_app, hal_power_default)
10 | binder_call(system_app, hal_vibrator_default)
11 | binder_call(system_app, hal_wifi_default)
12 | binder_call(system_app, hal_wifi_supplicant_default)
13 |
14 | # Allow system app to find services
15 | dontaudit system_app system_suspend_control_service:service_manager find;
16 | dontaudit system_app system_suspend_control_internal_service:service_manager find;
17 |
18 | # Aware
19 | get_prop(system_app, vendor_aware_available_prop)
20 |
21 | # To allow Settings to find and bind Google Battery HAL
22 | allow system_app hal_googlebattery_service:service_manager find;
23 | binder_call(system_app, hal_googlebattery)
24 |
25 | # Memory
26 | r_dir_file(system_app, proc_pagetypeinfo)
27 |
28 | # Incremental
29 | get_prop(system_app, incremental_prop)
30 |
31 | # allow apps like settings to check the file signature of an apk installed on
32 | # the Incremental File System, fill missing blocks and get the app status and loading progress
33 | allowxperm system_app apk_data_file:file ioctl {
34 | INCFS_IOCTL_READ_SIGNATURE
35 | INCFS_IOCTL_FILL_BLOCKS
36 | INCFS_IOCTL_GET_BLOCK_COUNT
37 | INCFS_IOCTL_GET_FILLED_BLOCKS
38 | };
39 |
40 | # Battery Health
41 | r_dir_file(system_app, sysfs_battery_supply)
42 |
43 | # Zram
44 | r_dir_file(system_app, sysfs_zram)
45 |
46 | # Xiaomi Parts
47 | allow system_app sysfs_thermal:file rw_file_perms;
48 |
--------------------------------------------------------------------------------
/dolby/permissions/privapp-com.dolby.daxservice.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
--------------------------------------------------------------------------------
/config.fs:
--------------------------------------------------------------------------------
1 | [AID_VENDOR_QTI_DIAG]
2 | value:2901
3 |
4 | [AID_VENDOR_QDSS]
5 | value:2902
6 |
7 | [AID_VENDOR_RFS]
8 | value:2903
9 |
10 | [AID_VENDOR_RFS_SHARED]
11 | value:2904
12 |
13 | [AID_VENDOR_ADPL_ODL]
14 | value:2905
15 |
16 | [AID_VENDOR_QRTR]
17 | value:2906
18 |
19 | [AID_VENDOR_THERMAL]
20 | value:2907
21 |
22 | [AID_VENDOR_FASTRPC]
23 | value:2908
24 |
25 | [AID_VENDOR_QTR]
26 | value:2909
27 |
28 | [vendor/bin/hw/android.hardware.bluetooth@1.0-service-qti]
29 | mode: 0755
30 | user: AID_BLUETOOTH
31 | group: AID_BLUETOOTH
32 | caps: BLOCK_SUSPEND NET_ADMIN
33 |
34 | [vendor/bin/pm-service]
35 | mode: 0755
36 | user: AID_SYSTEM
37 | group: AID_SYSTEM
38 | caps: NET_BIND_SERVICE SYS_BOOT
39 |
40 | [vendor/bin/pd-mapper]
41 | mode: 0755
42 | user: AID_SYSTEM
43 | group: AID_SYSTEM
44 | caps: NET_BIND_SERVICE
45 |
46 | [vendor/bin/imsdatadaemon]
47 | mode: 0755
48 | user: AID_RADIO
49 | group: AID_RADIO
50 | caps: NET_BIND_SERVICE
51 |
52 | [vendor/bin/ims_rtp_daemon]
53 | mode: 0755
54 | user: AID_RADIO
55 | group: AID_RADIO
56 | caps: NET_BIND_SERVICE
57 |
58 | [vendor/bin/imsrcsd]
59 | mode: 0755
60 | user: AID_RADIO
61 | group: AID_RADIO
62 | caps: NET_BIND_SERVICE BLOCK_SUSPEND WAKE_ALARM
63 |
64 | [vendor/bin/imsdaemon]
65 | mode: 0755
66 | user: AID_RADIO
67 | group: AID_RADIO
68 | caps: NET_BIND_SERVICE BLOCK_SUSPEND WAKE_ALARM
69 |
70 | [vendor/bin/cnd]
71 | mode: 0755
72 | user: AID_SYSTEM
73 | group: AID_SYSTEM
74 | caps: NET_BIND_SERVICE BLOCK_SUSPEND NET_ADMIN
75 |
76 | [vendor/bin/loc_launcher]
77 | mode: 0755
78 | user: AID_GPS
79 | group: AID_GPS
80 | caps: SETUID SETGID
81 |
82 | [vendor/bin/sensors.qti]
83 | mode: 0755
84 | user: AID_SYSTEM
85 | group: AID_SYSTEM
86 | caps: NET_BIND_SERVICE
87 |
88 | [vendor/firmware_mnt/image/*]
89 | mode: 0771
90 | user: AID_SYSTEM
91 | group: AID_SYSTEM
92 | caps: 0
93 |
--------------------------------------------------------------------------------
/parts/src/org/lineageos/settings/dolby/DolbyActivity.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (C) 2023 The LineageOS Project
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * http://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | */
16 |
17 | package org.lineageos.settings.dolby;
18 |
19 | import android.content.ComponentName;
20 | import android.content.Intent;
21 | import android.os.Bundle;
22 | import android.widget.Toast;
23 |
24 | import com.android.settingslib.collapsingtoolbar.CollapsingToolbarBaseActivity;
25 |
26 | public class DolbyActivity extends CollapsingToolbarBaseActivity {
27 |
28 | private static final String DAX_PACKAGE_NAME = "com.dolby.daxappui";
29 | private static final String DAX_ACTIVITY = "com.dolby.daxappui.MainActivity";
30 |
31 | @Override
32 | protected void onCreate(Bundle savedInstanceState) {
33 | // super.onCreate(savedInstanceState);
34 |
35 | ComponentName componentName = new ComponentName(DAX_PACKAGE_NAME, DAX_ACTIVITY);
36 | Intent intent = new Intent();
37 | intent.setComponent(componentName);
38 | startActivity(intent);
39 | // if (intent != null) {
40 | // startActivity(intent);
41 | // } else {
42 | // Toast.makeText(getApplicationContext(), "DaxUI not installed", Toast.LENGTH_SHORT).show();
43 | // }
44 |
45 | }
46 | }
47 |
--------------------------------------------------------------------------------
/vibrator/aidl/vendor.qti.hardware.vibrator.service.xiaomi_sm8350.xml:
--------------------------------------------------------------------------------
1 |
28 |
29 |
30 | android.hardware.vibrator
31 | IVibrator/default
32 |
33 |
34 |
--------------------------------------------------------------------------------
/sepolicy/vendor/hwservice_contexts:
--------------------------------------------------------------------------------
1 | # Camera
2 | vendor.xiaomi.hardware.cameraperf::IMiCameraPerfService u:object_r:vendor_hal_cameraperf_hwservice:s0
3 | vendor.xiaomi.hardware.campostproc::IMiPostProcService u:object_r:vendor_hal_camerapostproc_xiaomi_hwservice:s0
4 |
5 | # Fingerprint
6 | vendor.xiaomi.hardware.fx.tunnel::IMiFxTunnel u:object_r:vendor_hal_fingerprint_hwservice_xiaomi:s0
7 | vendor.xiaomi.hardware.fingerprintextension::IXiaomiFingerprint u:object_r:vendor_hal_fingerprint_hwservice_xiaomi:s0
8 | com.fingerprints.extension::IFingerprintEngineering u:object_r:vendor_hal_fingerprint_hwservice_xiaomi:s0
9 | com.fingerprints.extension::IFingerprintAuthenticator u:object_r:vendor_hal_fingerprint_hwservice_xiaomi:s0
10 | com.fingerprints.extension::IFingerprintNavigation u:object_r:vendor_hal_fingerprint_hwservice_xiaomi:s0
11 | com.fingerprints.extension::IFingerprintSensorTest u:object_r:vendor_hal_fingerprint_hwservice_xiaomi:s0
12 | com.fingerprints.extension::IFingerprintCalibration u:object_r:vendor_hal_fingerprint_hwservice_xiaomi:s0
13 | com.fingerprints.extension::IFingerprintOptical u:object_r:vendor_hal_fingerprint_hwservice_xiaomi:s0
14 |
15 | # Google WirelessCharger
16 | vendor.google.wireless_charger::IWirelessCharger u:object_r:hal_wlc_hwservice:s0
17 |
18 | # Mlipay
19 | vendor.xiaomi.hardware.mlipay::IMlipayService u:object_r:hal_mlipay_hwservice:s0
20 |
21 | # Sensors
22 | vendor.xiaomi.hardware.citsensorservice::ICitSensorService u:object_r:vendor_hal_citsensorservice_xiaomi_hwservice:s0
23 |
--------------------------------------------------------------------------------
/gps/gps_vendor_product.mk:
--------------------------------------------------------------------------------
1 | # HAL packages
2 | ifneq ($(BOARD_VENDOR_QCOM_GPS_LOC_API_HARDWARE),)
3 |
4 | # GPS-HIDL
5 | LOC_BOARD_PLATFORM_LIST += msm8937
6 | LOC_BOARD_PLATFORM_LIST += msm8953
7 | LOC_BOARD_PLATFORM_LIST += msm8998
8 | LOC_BOARD_PLATFORM_LIST += apq8098_latv
9 | LOC_BOARD_PLATFORM_LIST += sdm710
10 | LOC_BOARD_PLATFORM_LIST += qcs605
11 | LOC_BOARD_PLATFORM_LIST += sdm845
12 | LOC_BOARD_PLATFORM_LIST += sdm660
13 | LOC_BOARD_PLATFORM_LIST += msmnile
14 | LOC_BOARD_PLATFORM_LIST += sdmshrike
15 | LOC_BOARD_PLATFORM_LIST += $(MSMSTEPPE)
16 | LOC_BOARD_PLATFORM_LIST += $(TRINKET)
17 | LOC_BOARD_PLATFORM_LIST += kona
18 | LOC_BOARD_PLATFORM_LIST += atoll
19 | LOC_BOARD_PLATFORM_LIST += lito
20 | LOC_BOARD_PLATFORM_LIST += bengal
21 | LOC_BOARD_PLATFORM_LIST += lahaina
22 | LOC_BOARD_PLATFORM_LIST += holi
23 |
24 | # Add product packages
25 | ifneq (,$(filter $(LOC_BOARD_PLATFORM_LIST),$(TARGET_BOARD_PLATFORM)))
26 |
27 | PRODUCT_PACKAGES += gps.conf
28 | PRODUCT_PACKAGES += flp.conf
29 | PRODUCT_PACKAGES += gnss_antenna_info.conf
30 | PRODUCT_PACKAGES += gnss@2.0-base.policy
31 | PRODUCT_PACKAGES += gnss@2.0-xtra-daemon.policy
32 | PRODUCT_PACKAGES += gnss@2.0-xtwifi-client.policy
33 | PRODUCT_PACKAGES += gnss@2.0-xtwifi-inet-agent.policy
34 | PRODUCT_PACKAGES += libloc_pla_headers
35 | PRODUCT_PACKAGES += liblocation_api_headers
36 | PRODUCT_PACKAGES += libgps.utils_headers
37 | PRODUCT_PACKAGES += liblocation_api
38 | PRODUCT_PACKAGES += libgps.utils
39 | PRODUCT_PACKAGES += libbatching
40 | PRODUCT_PACKAGES += libgeofencing
41 | PRODUCT_PACKAGES += libloc_core
42 | PRODUCT_PACKAGES += libgnss
43 |
44 | PRODUCT_PACKAGES += android.hardware.gnss@2.1-impl-qti
45 | PRODUCT_PACKAGES += android.hardware.gnss@2.1-service-qti
46 |
47 | endif # ifneq (,$(filter $(LOC_BOARD_PLATFORM_LIST),$(TARGET_BOARD_PLATFORM)))
48 | endif # ifneq ($(BOARD_VENDOR_QCOM_GPS_LOC_API_HARDWARE),)
49 |
--------------------------------------------------------------------------------
/gps/utils/LocLoggerBase.h:
--------------------------------------------------------------------------------
1 | /* Copyright (c) 2020 The Linux Foundation. All rights reserved.
2 | *
3 | * Redistribution and use in source and binary forms, with or without
4 | * modification, are permitted provided that the following conditions are
5 | * met:
6 | * * Redistributions of source code must retain the above copyright
7 | * notice, this list of conditions and the following disclaimer.
8 | * * Redistributions in binary form must reproduce the above
9 | * copyright notice, this list of conditions and the following
10 | * disclaimer in the documentation and/or other materials provided
11 | * with the distribution.
12 | * * Neither the name of The Linux Foundation, nor the names of its
13 | * contributors may be used to endorse or promote products derived
14 | * from this software without specific prior written permission.
15 | *
16 | * THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED
17 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
18 | * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT
19 | * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS
20 | * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
21 | * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
22 | * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
23 | * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
24 | * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
25 | * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
26 | * IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
27 | *
28 | */
29 | #ifndef LOC_LOGGER_BASE_H
30 | #define LOC_LOGGER_BASE_H
31 |
32 | namespace loc_util {
33 | class LocLoggerBase {
34 | public:
35 | virtual void log() {}
36 | };
37 | }
38 |
39 | #endif
40 |
--------------------------------------------------------------------------------
/gps/android/1.0/android.hardware.gnss@1.0-service-qti.xml:
--------------------------------------------------------------------------------
1 |
28 |
29 |
30 | android.hardware.gnss
31 | hwbinder
32 | @1.0::IGnss/default
33 |
34 |
35 |
36 |
--------------------------------------------------------------------------------
/gps/android/1.1/android.hardware.gnss@1.1-service-qti.xml:
--------------------------------------------------------------------------------
1 |
28 |
29 |
30 | android.hardware.gnss
31 | hwbinder
32 | @1.1::IGnss/default
33 |
34 |
35 |
36 |
--------------------------------------------------------------------------------
/vibrator/aidl/Android.bp:
--------------------------------------------------------------------------------
1 | Common_CFlags = ["-Wall"]
2 | Common_CFlags += ["-Werror"]
3 |
4 | soong_config_module_type {
5 | name: "vibrator_effect_stream",
6 | module_type: "cc_defaults",
7 | config_namespace: "xiaomiSm8350Vars",
8 | bool_variables: ["vibrator_use_effect_stream"],
9 | properties: [
10 | "cflags",
11 | "shared_libs",
12 | ],
13 | }
14 |
15 | vibrator_effect_stream {
16 | name: "vibrator_effect_stream_defaults",
17 | soong_config_variables: {
18 | vibrator_use_effect_stream: {
19 | cflags: ["-DUSE_EFFECT_STREAM"],
20 | shared_libs: [
21 | "libxiaomivibratoreffect",
22 | ],
23 | },
24 | },
25 | }
26 |
27 | cc_library_shared {
28 | name: "vendor.qti.hardware.vibrator.impl.xiaomi_sm8350",
29 | defaults: [
30 | "vibrator_effect_stream_defaults",
31 | ],
32 | vendor: true,
33 | cflags: Common_CFlags,
34 | srcs: [
35 | "Vibrator.cpp",
36 | ],
37 | shared_libs: [
38 | "libcutils",
39 | "libutils",
40 | "liblog",
41 | "libbinder_ndk",
42 | "android.hardware.vibrator-V1-ndk",
43 | ],
44 | export_include_dirs: ["include"]
45 | }
46 |
47 | cc_binary {
48 | name: "vendor.qti.hardware.vibrator.service.xiaomi_sm8350",
49 | vendor: true,
50 | relative_install_path: "hw",
51 | init_rc: ["vendor.qti.hardware.vibrator.service.xiaomi_sm8350.rc"],
52 | vintf_fragments: [
53 | "vendor.qti.hardware.vibrator.service.xiaomi_sm8350.xml",
54 | ],
55 | cflags: Common_CFlags,
56 | srcs: [
57 | "service.cpp",
58 | ],
59 | shared_libs: [
60 | "libcutils",
61 | "libutils",
62 | "libbase",
63 | "libbinder_ndk",
64 | "android.hardware.vibrator-V1-ndk",
65 | "vendor.qti.hardware.vibrator.impl.xiaomi_sm8350",
66 | ],
67 | }
68 |
--------------------------------------------------------------------------------
/gps/android/1.0/GnssDebug.h:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (C) 2016 The Android Open Source Project
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * http://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | */
16 |
17 | #ifndef ANDROID_HARDWARE_GNSS_V1_0_GNSSDEBUG_H
18 | #define ANDROID_HARDWARE_GNSS_V1_0_GNSSDEBUG_H
19 |
20 |
21 | #include
22 | #include
23 |
24 | namespace android {
25 | namespace hardware {
26 | namespace gnss {
27 | namespace V1_0 {
28 | namespace implementation {
29 |
30 | using ::android::hardware::gnss::V1_0::IGnssDebug;
31 | using ::android::hardware::Return;
32 | using ::android::hardware::Void;
33 | using ::android::hardware::hidl_vec;
34 | using ::android::hardware::hidl_string;
35 | using ::android::sp;
36 |
37 | /* Interface for GNSS Debug support. */
38 | struct Gnss;
39 | struct GnssDebug : public IGnssDebug {
40 | GnssDebug(Gnss* gnss);
41 | ~GnssDebug() {};
42 |
43 | /*
44 | * Methods from ::android::hardware::gnss::V1_0::IGnssDebug follow.
45 | * These declarations were generated from IGnssDebug.hal.
46 | */
47 | Return getDebugData(getDebugData_cb _hidl_cb) override;
48 |
49 | private:
50 | Gnss* mGnss = nullptr;
51 | };
52 |
53 | } // namespace implementation
54 | } // namespace V1_0
55 | } // namespace gnss
56 | } // namespace hardware
57 | } // namespace android
58 |
59 | #endif // ANDROID_HARDWARE_GNSS_V1_0_GNSSDEBUG_H
60 |
--------------------------------------------------------------------------------
/gps/android/1.1/GnssDebug.h:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (C) 2016 The Android Open Source Project
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * http://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | */
16 |
17 | #ifndef ANDROID_HARDWARE_GNSS_V1_1_GNSSDEBUG_H
18 | #define ANDROID_HARDWARE_GNSS_V1_1_GNSSDEBUG_H
19 |
20 |
21 | #include
22 | #include
23 |
24 | namespace android {
25 | namespace hardware {
26 | namespace gnss {
27 | namespace V1_1 {
28 | namespace implementation {
29 |
30 | using ::android::hardware::gnss::V1_0::IGnssDebug;
31 | using ::android::hardware::Return;
32 | using ::android::hardware::Void;
33 | using ::android::hardware::hidl_vec;
34 | using ::android::hardware::hidl_string;
35 | using ::android::sp;
36 |
37 | /* Interface for GNSS Debug support. */
38 | struct Gnss;
39 | struct GnssDebug : public IGnssDebug {
40 | GnssDebug(Gnss* gnss);
41 | ~GnssDebug() {};
42 |
43 | /*
44 | * Methods from ::android::hardware::gnss::V1_0::IGnssDebug follow.
45 | * These declarations were generated from IGnssDebug.hal.
46 | */
47 | Return getDebugData(getDebugData_cb _hidl_cb) override;
48 |
49 | private:
50 | Gnss* mGnss = nullptr;
51 | };
52 |
53 | } // namespace implementation
54 | } // namespace V1_1
55 | } // namespace gnss
56 | } // namespace hardware
57 | } // namespace android
58 |
59 | #endif // ANDROID_HARDWARE_GNSS_V1_1_GNSSDEBUG_H
60 |
--------------------------------------------------------------------------------
/gps/android/2.0/android.hardware.gnss@2.0-service-qti.xml:
--------------------------------------------------------------------------------
1 |
28 |
29 |
30 | android.hardware.gnss
31 | hwbinder
32 | @1.1::IGnss/default
33 | @2.0::IGnss/default
34 |
35 |
36 |
37 |
--------------------------------------------------------------------------------
/gps/android/2.1/android.hardware.gnss@2.1-service-qti.xml:
--------------------------------------------------------------------------------
1 |
28 |
29 |
30 | android.hardware.gnss
31 | hwbinder
32 | @1.1::IGnss/default
33 | @2.1::IGnss/default
34 |
35 |
36 |
37 |
--------------------------------------------------------------------------------
/sepolicy/private/property_contexts:
--------------------------------------------------------------------------------
1 | # Camera
2 | ro.camera.req.fmq.size u:object_r:vendor_camera_prop:s0
3 | ro.camera.res.fmq.size u:object_r:vendor_camera_prop:s0
4 | persist.al.ldc.log u:object_r:vendor_camera_prop:s0
5 | persist.al.cfr.loglevel u:object_r:vendor_camera_prop:s0
6 | persist.wa.log.level u:object_r:vendor_camera_prop:s0
7 | persist.sys.camlog.system.af u:object_r:vendor_camera_prop:s0
8 | MACE_CPP_MIN_VLOG_LEVEL u:object_r:vendor_camera_prop:s0
9 | vendor.camera.skip_unconfigure.packagelist u:object_r:vendor_persist_camera_prop:s0
10 |
11 | # Dolby Properties
12 | ro.vendor.dolby.dax.version u:object_r:exported_system_prop:s0
13 | ro.vendor.audio.dolby.dax.support u:object_r:exported_system_prop:s0
14 | ro.vendor.audio.dolby.dax.version u:object_r:exported_system_prop:s0
15 | ro.vendor.audio.dolby.surround.enable u:object_r:exported_system_prop:s0
16 |
17 | # Fs-verity
18 | pm.dexopt.dm.require_fsverity u:object_r:exported_pm_prop:s0
19 | pm.dexopt.dm.require_manifest u:object_r:exported_pm_prop:s0
20 |
21 | # Graphics
22 | ro.vendor.gfx.32bit.target u:object_r:graphics_config_prop:s0
23 |
24 | # Hardware
25 | ro.hardware.chipname u:object_r:build_prop:s0
26 | ro.hardware.alter u:object_r:build_prop:s0
27 |
28 | # Global
29 | ro.product.marketname u:object_r:build_prop:s0
30 | ro.product.mod_device u:object_r:build_prop:s0
31 |
32 | # MIUI
33 | ro.miui. u:object_r:exported_system_prop:s0
34 | ro.cust.test u:object_r:exported_system_prop:s0
35 | ro.carrier.name u:object_r:exported_default_prop:s0
36 | persist.hydra.mem_trace u:object_r:exported_system_prop:s0
37 |
38 | # Sensors
39 | persist.sensor.sardisable u:object_r:vendor_sensors_prop:s0
40 |
--------------------------------------------------------------------------------
/configs/camera_cnf.txt:
--------------------------------------------------------------------------------
1 | ############################################################
2 | TPmnQaPPrA5eO2LOLggh1VwFuUBAQi6vEmWKy+JON6Act6n6MGo43ZInplaA
3 | PkAWvl1vAK99VbPSAmKaGj3r0ApwMSyO7ARlfli0Rza5rajanjJtMe321Rdi
4 | mCxJUAslvAx8lI51rwJYoblkTVzCMdqbaZ6la/BSCUfYzpPsCdg4Q67gMoKA
5 | m0GdTo2ZG/NkAIInCAxYHFEX3+YA2sM+OXania4E+R23CmRyBcXTB8AseVf7
6 | FwAOVLGy078DgBUpgWdRCP1WDOJJrvTsJ62f4SUwAkJULwdTbXH/7bHAUdiU
7 | FDDYgzs/B89uQVNsnqC7lv1hgHmKGBej2SkYQuidn+m4HdY4I1D4BmqSurJp
8 | NbA9gAkZAb3YwNDyUO3F6eCBhAGQrJjWvebF9Xx0UlAeQ9GdKAEhjCyFrwLA
9 | l32n2JCtKXA7v+iL2R8BBtAQ4fTho588RAB6fo26LpJsic6BrWmAt8dhnecq
10 | 0ryTnaENemXf23KWdj7OLZFQz1J77bXfXjk0z4HMGyJefS1+FGXv7bjSAoct
11 | xbqU87cg5oMCD2GIW0jzp6nBuF8x1MYc5Wlgo3cfQiKWUQWAKRqd56UIuVcP
12 | yA8mAWjAdr4sAP2VY19QwrYUyrPAAD/bhFII/DZAIVCI7mUasbwaVzZoyjAq
13 | DSPyPR2UNhLiTMgfL7YQ1fxUC2YxQJoA5KTZ2sm6a7rG/K+fq0oYO/spitHO
14 | zEuzaAv6ANu9mo2cuMHn4swebZH+X9T86R+OQbhttMuAnSXecs1FhF9eePiV
15 | qbU/bl5ueAlTYGgO2d67IYzYdIdqxo7nam8qy7is
16 | ------------------------------------------------------------
17 | F/gynyvlxXePc8KOceHbsSKnVGf8bWafLB5WtvUQGEqM63eOqEXWS6PlgOAQ
18 | YCiZ/J4AEXUXH45fYQaeYTd3W/ldAYUOC5Z/eRbmJzp26A/iVpGQSunH8IXx
19 | 8OLZhhh/ttxz4YN/MxvChmz1aDT+AF/Vl+kgw/5lHhAAQlMBH7ywAkYZgACo
20 | j7sPljJG6AiJOxA1GwfovOM6V+2RqYwDHmcO9BOLS6zO+wgf8JqGAIjLPkOG
21 | PZSWOG79yPkEVfGDS/28TLAyYj3dTPAPtrp1rTsAC3omAzvM1iaAle2E5run
22 | I0QtwKzEIoaFgYyOP91M/1oTlCllXCCDwUlQkVecGfiat3FqAam5GQAPDEvK
23 | uAJNKoOcD37XvJjLCRwPmA5AajShfBVxBBmbY+tJO+qRHlBia123MzZQQ4AN
24 | c5VLwME+fzg57VxTgNFl2QPMR7sQn1kD3aEwSAdlqSWZDAnGzpOEBAk29O9V
25 | 230eCArDRZpL1G48vPZ037fyt2X9AnDbbwAeQ8jNaOIpy4odHEHc+6xgKZ/e
26 | dk7AJSmA9vL0EQcOeYC4dwy7A2rqTAMv6lka7ROPXo38IEgOEvw0nZD+t4DA
27 | 730G7OTrt84fgc8JALvS9ql5vhTIAkQ2aJTMMZo0rnYNN3AyoojhSI6jr6EG
28 | DFvxjgXtV8SOCE+OYE8y9Z9sTiAw+IOYegLcN/6QiBYrBs1P0dS83PhmWTWM
29 | AROfMlZrzG5Jg+42i3B8AuWCsWASk/Nx9BAN6K8SUVeAe4wMAW1/pO2zOmWp
30 | n5cADc72lDd0orMTAVHaObIXgQ+ufHh6Mvr6paPQYSuGA4RN191QZlx7g7gu
31 | lR5EAClbgpUbB/OdjONVmcb/aluYmcM9ShpMBwAY9uD/
32 | ############################################################
33 |
--------------------------------------------------------------------------------
/configs/telephony_system-ext_privapp-permissions-qti.xml:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 |
13 |
14 |
29 |
30 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 |
50 |
--------------------------------------------------------------------------------
/vibrator/effect/effect.h:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2020, The Linux Foundation. All rights reserved.
3 | *
4 | * Redistribution and use in source and binary forms, with or without
5 | * modification, are permitted provided that the following conditions are
6 | * met:
7 | * * Redistributions of source code must retain the above copyright
8 | * notice, this list of conditions and the following disclaimer.
9 | * * Redistributions in binary form must reproduce the above
10 | * copyright notice, this list of conditions and the following
11 | * disclaimer in the documentation and/or other materials provided
12 | * with the distribution.
13 | * * Neither the name of The Linux Foundation nor the names of its
14 | * contributors may be used to endorse or promote products derived
15 | * from this software without specific prior written permission.
16 | *
17 | * THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED
18 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
19 | * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT
20 | * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS
21 | * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
22 | * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
23 | * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
24 | * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
25 | * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
26 | * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
27 | * IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28 | */
29 |
30 | #ifndef XIAOMI_VIBRATOR_EFFECT_STREAM_H
31 | #define XIAOMI_VIBRATOR_EFFECT_STREAM_H
32 | #include
33 |
34 | struct effect_stream {
35 | uint32_t effect_id;
36 | uint32_t length;
37 | uint32_t play_rate_hz;
38 | const int8_t *data;
39 | };
40 |
41 | const struct effect_stream *get_effect_stream(uint32_t effect_id);
42 |
43 | #endif
44 |
--------------------------------------------------------------------------------
/gps/android/2.0/GnssDebug.h:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2017-2019, The Linux Foundation. All rights reserved.
3 | * Not a Contribution
4 | */
5 | /*
6 | * Copyright (C) 2016 The Android Open Source Project
7 | *
8 | * Licensed under the Apache License, Version 2.0 (the "License");
9 | * you may not use this file except in compliance with the License.
10 | * You may obtain a copy of the License at
11 | *
12 | * http://www.apache.org/licenses/LICENSE-2.0
13 | *
14 | * Unless required by applicable law or agreed to in writing, software
15 | * distributed under the License is distributed on an "AS IS" BASIS,
16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17 | * See the License for the specific language governing permissions and
18 | * limitations under the License.
19 | */
20 |
21 | #ifndef ANDROID_HARDWARE_GNSS_V2_0_GNSSDEBUG_H
22 | #define ANDROID_HARDWARE_GNSS_V2_0_GNSSDEBUG_H
23 |
24 |
25 | #include
26 | #include
27 |
28 | namespace android {
29 | namespace hardware {
30 | namespace gnss {
31 | namespace V2_0 {
32 | namespace implementation {
33 |
34 | using ::android::hardware::gnss::V2_0::IGnssDebug;
35 | using ::android::hardware::Return;
36 | using ::android::hardware::Void;
37 | using ::android::hardware::hidl_vec;
38 | using ::android::hardware::hidl_string;
39 | using ::android::sp;
40 |
41 | /* Interface for GNSS Debug support. */
42 | struct Gnss;
43 | struct GnssDebug : public IGnssDebug {
44 | GnssDebug(Gnss* gnss);
45 | ~GnssDebug() {};
46 |
47 | // Methods from ::android::hardware::gnss::V1_0::IGnssDebug follow
48 | Return getDebugData(getDebugData_cb _hidl_cb) override;
49 | // Methods from ::android::hardware::gnss::V2_0::IGnssDebug follow.
50 | Return getDebugData_2_0(getDebugData_2_0_cb _hidl_cb) override;
51 |
52 | private:
53 | Gnss* mGnss = nullptr;
54 | };
55 |
56 | } // namespace implementation
57 | } // namespace V2_0
58 | } // namespace gnss
59 | } // namespace hardware
60 | } // namespace android
61 |
62 | #endif // ANDROID_HARDWARE_GNSS_V2_0_GNSSDEBUG_H
63 |
--------------------------------------------------------------------------------
/gps/android/2.1/GnssDebug.h:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2017-2020, The Linux Foundation. All rights reserved.
3 | * Not a Contribution
4 | */
5 | /*
6 | * Copyright (C) 2016 The Android Open Source Project
7 | *
8 | * Licensed under the Apache License, Version 2.0 (the "License");
9 | * you may not use this file except in compliance with the License.
10 | * You may obtain a copy of the License at
11 | *
12 | * http://www.apache.org/licenses/LICENSE-2.0
13 | *
14 | * Unless required by applicable law or agreed to in writing, software
15 | * distributed under the License is distributed on an "AS IS" BASIS,
16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17 | * See the License for the specific language governing permissions and
18 | * limitations under the License.
19 | */
20 |
21 | #ifndef ANDROID_HARDWARE_GNSS_V2_0_GNSSDEBUG_H
22 | #define ANDROID_HARDWARE_GNSS_V2_0_GNSSDEBUG_H
23 |
24 |
25 | #include
26 | #include
27 |
28 | namespace android {
29 | namespace hardware {
30 | namespace gnss {
31 | namespace V2_1 {
32 | namespace implementation {
33 |
34 | using ::android::hardware::gnss::V2_0::IGnssDebug;
35 | using ::android::hardware::Return;
36 | using ::android::hardware::Void;
37 | using ::android::hardware::hidl_vec;
38 | using ::android::hardware::hidl_string;
39 | using ::android::sp;
40 |
41 | /* Interface for GNSS Debug support. */
42 | struct Gnss;
43 | struct GnssDebug : public IGnssDebug {
44 | GnssDebug(Gnss* gnss);
45 | ~GnssDebug() {};
46 |
47 | // Methods from ::android::hardware::gnss::V1_0::IGnssDebug follow
48 | Return getDebugData(getDebugData_cb _hidl_cb) override;
49 | // Methods from ::android::hardware::gnss::V2_0::IGnssDebug follow.
50 | Return getDebugData_2_0(getDebugData_2_0_cb _hidl_cb) override;
51 |
52 | private:
53 | Gnss* mGnss = nullptr;
54 | };
55 |
56 | } // namespace implementation
57 | } // namespace V2_1
58 | } // namespace gnss
59 | } // namespace hardware
60 | } // namespace android
61 |
62 | #endif // ANDROID_HARDWARE_GNSS_V2_0_GNSSDEBUG_H
63 |
--------------------------------------------------------------------------------
/gps/geofence/configure.ac:
--------------------------------------------------------------------------------
1 | AC_PREREQ(2.61)
2 | AC_INIT([location-geofence], 1.0.0)
3 | AM_INIT_AUTOMAKE([foreign subdir-objects])
4 | AC_CONFIG_SRCDIR([Makefile.am])
5 | AC_CONFIG_HEADERS([config.h])
6 | AC_CONFIG_MACRO_DIR([m4])
7 |
8 | # Check for programs
9 | AC_PROG_LIBTOOL
10 | AC_PROG_CXX
11 | AC_PROG_CC
12 | AM_PROG_CC_C_O
13 | AC_PROG_AWK
14 | AC_PROG_CPP
15 | AC_PROG_INSTALL
16 | AC_PROG_LN_S
17 | AC_PROG_MAKE_SET
18 | PKG_PROG_PKG_CONFIG
19 |
20 | # Check for libraries
21 | PKG_CHECK_MODULES([GPSUTILS], [gps-utils])
22 | AC_SUBST([GPSUTILS_CFLAGS])
23 | AC_SUBST([GPSUTILS_LIBS])
24 |
25 | PKG_CHECK_MODULES([LOCCORE], [loc-core])
26 | AC_SUBST([LOCCORE_CFLAGS])
27 | AC_SUBST([LOCCORE_LIBS])
28 |
29 | AS_CASE([$host],
30 | [arm*], [ARM=yes],
31 | [ARM=no]
32 | )
33 |
34 | AC_ARG_WITH([locpla_includes],
35 | AC_HELP_STRING([--with-locpla-includes=@<:@dir@:>@],
36 | [specify the path to locpla-includes in loc-pla_git.bb]),
37 | [locpla_incdir=$withval],
38 | with_locpla_includes=no)
39 |
40 | if test "x$with_locpla_includes" != "xno"; then
41 | AC_SUBST(LOCPLA_CFLAGS, "-I${locpla_incdir}")
42 | fi
43 |
44 | AC_ARG_WITH([glib],
45 | AC_HELP_STRING([--with-glib],
46 | [enable glib, building HLOS systems which use glib]))
47 |
48 | if (test "x${with_glib}" = "xyes"); then
49 | AC_DEFINE(ENABLE_USEGLIB, 1, [Define if HLOS systems uses glib])
50 | PKG_CHECK_MODULES(GTHREAD, gthread-2.0 >= 2.16, dummy=yes,
51 | AC_MSG_ERROR(GThread >= 2.16 is required))
52 | PKG_CHECK_MODULES(GLIB, glib-2.0 >= 2.16, dummy=yes,
53 | AC_MSG_ERROR(GLib >= 2.16 is required))
54 | GLIB_CFLAGS="$GLIB_CFLAGS $GTHREAD_CFLAGS"
55 | GLIB_LIBS="$GLIB_LIBS $GTHREAD_LIBS"
56 |
57 | AC_SUBST(GLIB_CFLAGS)
58 | AC_SUBST(GLIB_LIBS)
59 | fi
60 |
61 | AM_CONDITIONAL(USE_GLIB, test "x${with_glib}" = "xyes")
62 |
63 | AC_SUBST([CFLAGS])
64 | AC_SUBST([CPPFLAGS])
65 | AC_SUBST([LIBS])
66 |
67 | AC_CONFIG_FILES([ \
68 | Makefile \
69 | location-geofence.pc
70 | ])
71 |
72 | AC_OUTPUT
73 |
--------------------------------------------------------------------------------
/gps/etc/seccomp_policy/gnss@2.0-xtra-daemon.policy:
--------------------------------------------------------------------------------
1 | #*******************************************************************************
2 | # Copyright (c) 2020 The Linux Foundation. All rights reserved.
3 | #
4 | # Redistribution and use in source and binary forms, with or without
5 | # modification, are permitted provided that the following conditions are
6 | # met:
7 | # * Redistributions of source code must retain the above copyright
8 | # notice, this list of conditions and the following disclaimer.
9 | # * Redistributions in binary form must reproduce the above
10 | # copyright notice, this list of conditions and the following
11 | # disclaimer in the documentation and/or other materials provided
12 | # with the distribution.
13 | # * Neither the name of The Linux Foundation, nor the names of its
14 | # contributors may be used to endorse or promote products derived
15 | # from this software without specific prior written permission.
16 | #
17 | # THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED
18 | # WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
19 | # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT
20 | # ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS
21 | # BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
22 | # CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
23 | # SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
24 | # BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
25 | # WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
26 | # OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
27 | # IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28 | #
29 | #******************************************************************************
30 | bind: 1
31 | getrlimit: 1
32 |
33 | pipe2: 1
34 |
35 | sched_getaffinity: 1
36 | timerfd_create: 1
37 | unlinkat: 1
38 | setpriority: 1
39 |
40 | epoll_create1: 1
41 | epoll_ctl: 1
42 | epoll_pwait: 1
43 | timerfd_settime: 1
44 |
45 | fdatasync: 1
46 | madvise: 1
47 | ftruncate: 1
48 |
49 |
--------------------------------------------------------------------------------
/gps/etc/flp.conf:
--------------------------------------------------------------------------------
1 | ###################################
2 | ##### FLP settings #####
3 | ###################################
4 |
5 | ###################################
6 | # FLP BATCH SIZE
7 | ###################################
8 | # The number of batched locations
9 | # requested to modem. The desired number
10 | # defined below may not be satisfied, as
11 | # the modem can only return the number
12 | # of batched locations that can be allocated,
13 | # which is limited by memory. The default
14 | # batch size defined as 20 as below.
15 | BATCH_SIZE=40
16 |
17 | ###################################
18 | # FLP OUTDOOR TRIP BATCH SIZE
19 | ###################################
20 | # The number of batched locations
21 | # requested to modem for outdoor
22 | # trip batching. The desired number
23 | # defined below may not be satisfied, as
24 | # the modem can only return the number
25 | # of batched locations that can be allocated,
26 | # which is limited by memory. The default
27 | # trip batch size defined as 600 as below.
28 | OUTDOOR_TRIP_BATCH_SIZE=600
29 |
30 | ###################################
31 | # FLP BATCHING SESSION TIMEOUT
32 | ###################################
33 | # Duration with which batch session timeout
34 | # happens in milliseconds. If not specified
35 | # or set to zero, batching session timeout
36 | # defaults to 20 seconds by the modem.
37 | # BATCH_SESSION_TIMEOUT=20000
38 |
39 | ###################################
40 | # FLP BATCHING ACCURACY
41 | ###################################
42 | # Set to one of the defined values below
43 | # to define the accuracy of batching.
44 | # If not specified, accuracy defaults
45 | # to LOW.
46 | # FLP BATCHING ACCURACY values:
47 | # Low accuracy = 0
48 | # Medium accuracy = 1
49 | # High accuracy = 2
50 | ACCURACY=1
51 |
52 | ####################################
53 | # By default if network fixes are not sensor assisted
54 | # these fixes must be dropped. This parameter adds an exception
55 | # for targets where there is no PDR and we still want to
56 | # report out network fixes
57 | # 0: MUST NOT ALLOW NETWORK FIXES
58 | # 1: ALLOW NETWORK FIXES
59 | ####################################
60 | ALLOW_NETWORK_FIXES = 0
61 |
--------------------------------------------------------------------------------
/sepolicy/vendor/platform_app.te:
--------------------------------------------------------------------------------
1 | allow platform_app vendor_hal_soter_hwservice:hwservice_manager find;
2 | binder_call(platform_app, vendor_hal_soter_qti)
3 |
4 | # Audio
5 | get_prop(platform_app, audio_config_prop)
6 |
7 | # allow SystemUI to find and bind Google Battery HAL
8 | allow platform_app hal_googlebattery_service:service_manager find;
9 | binder_call(platform_app, hal_googlebattery)
10 |
11 | # To find and bind hal_wlc
12 | allow platform_app hal_wlc_hwservice:hwservice_manager find;
13 | binder_call(platform_app, hal_wlc)
14 |
15 | # Leica Camera
16 | get_prop(platform_app, vendor_display_prop)
17 | get_prop(platform_app, vendor_camera_sensor_prop)
18 | allow platform_app vendor_hal_camerapostproc_xiaomi_hwservice:hwservice_manager find;
19 | binder_call(platform_app, vendor_hal_camerapostproc_xiaomi)
20 |
21 | # FPS info
22 | allow platform_app vendor_sysfs_graphics:dir search;
23 | allow platform_app vendor_sysfs_graphics:file r_file_perms;
24 |
25 | # Face Unlock
26 | get_prop(platform_app, vendor_camera_prop)
27 |
28 | # Incremental
29 | get_prop(platform_app, incremental_prop)
30 |
31 | # To create files, get permission to fill blocks, and configure Incremental File System
32 | allow platform_app incremental_control_file:file { ioctl r_file_perms };
33 | allowxperm platform_app incremental_control_file:file ioctl {
34 | INCFS_IOCTL_CREATE_FILE
35 | INCFS_IOCTL_CREATE_MAPPED_FILE
36 | INCFS_IOCTL_PERMIT_FILL
37 | INCFS_IOCTL_GET_READ_TIMEOUTS
38 | INCFS_IOCTL_SET_READ_TIMEOUTS
39 | INCFS_IOCTL_GET_LAST_READ_ERROR
40 | };
41 |
42 | # To get signature of an APK installed on Incremental File System, and fill in data
43 | # blocks and get the filesystem state
44 | allowxperm platform_app apk_data_file:file ioctl {
45 | INCFS_IOCTL_READ_SIGNATURE
46 | INCFS_IOCTL_FILL_BLOCKS
47 | INCFS_IOCTL_GET_FILLED_BLOCKS
48 | INCFS_IOCTL_GET_BLOCK_COUNT
49 | F2FS_IOC_GET_FEATURES
50 | F2FS_IOC_GET_COMPRESS_BLOCKS
51 | F2FS_IOC_COMPRESS_FILE
52 | F2FS_IOC_DECOMPRESS_FILE
53 | F2FS_IOC_RELEASE_COMPRESS_BLOCKS
54 | F2FS_IOC_RESERVE_COMPRESS_BLOCKS
55 | FS_IOC_SETFLAGS
56 | FS_IOC_GETFLAGS
57 | };
58 |
59 | # Zram
60 | r_dir_file(platform_app, sysfs_zram)
61 |
--------------------------------------------------------------------------------
/gps/utils/Makefile.am:
--------------------------------------------------------------------------------
1 | ACLOCAL_AMFLAGS = -I m4
2 |
3 | AM_CFLAGS = -Wundef \
4 | -MD \
5 | -Wno-trigraphs \
6 | -g -O0 \
7 | -fno-inline \
8 | -fno-short-enums \
9 | -fpic \
10 | -I./ \
11 | -std=c++14 \
12 | $(LOCPLA_CFLAGS)
13 |
14 | libgps_utils_la_h_sources = \
15 | msg_q.h \
16 | linked_list.h \
17 | loc_cfg.h \
18 | loc_log.h \
19 | loc_target.h \
20 | loc_timer.h \
21 | MsgTask.h \
22 | LocHeap.h \
23 | LocThread.h \
24 | LocTimer.h \
25 | LocIpc.h \
26 | SkipList.h\
27 | loc_misc_utils.h \
28 | loc_nmea.h \
29 | gps_extended_c.h \
30 | gps_extended.h \
31 | loc_gps.h \
32 | log_util.h \
33 | LocSharedLock.h \
34 | LocUnorderedSetMap.h\
35 | LocLoggerBase.h
36 |
37 | libgps_utils_la_c_sources = \
38 | linked_list.c \
39 | msg_q.c \
40 | loc_cfg.cpp \
41 | loc_log.cpp \
42 | loc_target.cpp \
43 | LocHeap.cpp \
44 | LocTimer.cpp \
45 | LocThread.cpp \
46 | LocIpc.cpp \
47 | LogBuffer.cpp \
48 | MsgTask.cpp \
49 | loc_misc_utils.cpp \
50 | loc_nmea.cpp
51 |
52 | library_includedir = $(pkgincludedir)
53 |
54 | library_include_HEADERS = $(libgps_utils_la_h_sources)
55 |
56 | libgps_utils_la_SOURCES = $(libgps_utils_la_c_sources)
57 |
58 | if USE_GLIB
59 | libgps_utils_la_CFLAGS = -DUSE_GLIB $(AM_CFLAGS) @GLIB_CFLAGS@
60 | libgps_utils_la_LDFLAGS = -lstdc++ -Wl,-z,defs -lpthread @GLIB_LIBS@ -shared -version-info 1:0:0
61 | libgps_utils_la_CPPFLAGS = -DUSE_GLIB $(AM_CFLAGS) $(AM_CPPFLAGS) @GLIB_CFLAGS@
62 | else
63 | libgps_utils_la_CFLAGS = $(AM_CFLAGS)
64 | libgps_utils_la_LDFLAGS = -Wl,-z,defs -lpthread -shared -version-info 1:0:0
65 | libgps_utils_la_CPPFLAGS = $(AM_CFLAGS) $(AM_CPPFLAGS)
66 | endif
67 |
68 | libgps_utils_la_LIBADD = $(CUTILS_LIBS) -ldl
69 |
70 | #Create and Install libraries
71 | lib_LTLIBRARIES = libgps_utils.la
72 |
73 | pkgconfigdir = $(libdir)/pkgconfig
74 | pkgconfig_DATA = gps-utils.pc
75 | EXTRA_DIST = $(pkgconfig_DATA)
76 |
--------------------------------------------------------------------------------
/hidl/xiaomi_framework_compatibility_matrix.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | com.fingerprints.extension
4 | 3.0
5 |
6 | IFingerprintNavigation
7 | default
8 |
9 |
10 | IFingerprintSensorTest
11 | default
12 |
13 |
14 |
15 | vendor.xiaomi.hardware.cameraperf
16 | 1.0
17 |
18 | IMiCameraPerfService
19 | default
20 |
21 |
22 |
23 | vendor.xiaomi.hardware.campostproc
24 | 1.0
25 |
26 | IMiPostProcService
27 | default
28 |
29 |
30 |
31 | vendor.xiaomi.hardware.citsensorservice
32 | hwbinder
33 | 1.1
34 |
35 | ICitSensorService
36 | default
37 |
38 |
39 |
40 | vendor.xiaomi.hardware.fingerprintextension
41 | 1.0
42 |
43 | IXiaomiFingerprint
44 | default
45 |
46 |
47 |
48 | vendor.xiaomi.hardware.fx.tunnel
49 | 1.0
50 |
51 | IMiFxTunnel
52 | default
53 |
54 |
55 |
56 | vendor.xiaomi.hardware.mlipay
57 | 1.1
58 |
59 | IMlipayService
60 | default
61 |
62 |
63 |
64 |
--------------------------------------------------------------------------------
/gps/utils/MsgTask.h:
--------------------------------------------------------------------------------
1 | /* Copyright (c) 2011-2013, 2015, 2020 The Linux Foundation. All rights reserved.
2 | *
3 | * Redistribution and use in source and binary forms, with or without
4 | * modification, are permitted provided that the following conditions are
5 | * met:
6 | * * Redistributions of source code must retain the above copyright
7 | * notice, this list of conditions and the following disclaimer.
8 | * * Redistributions in binary form must reproduce the above
9 | * copyright notice, this list of conditions and the following
10 | * disclaimer in the documentation and/or other materials provided
11 | * with the distribution.
12 | * * Neither the name of The Linux Foundation, nor the names of its
13 | * contributors may be used to endorse or promote products derived
14 | * from this software without specific prior written permission.
15 | *
16 | * THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED
17 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
18 | * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT
19 | * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS
20 | * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
21 | * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
22 | * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
23 | * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
24 | * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
25 | * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
26 | * IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
27 | *
28 | */
29 | #ifndef __MSG_TASK__
30 | #define __MSG_TASK__
31 |
32 | #include
33 | #include
34 |
35 | namespace loc_util {
36 |
37 | struct LocMsg {
38 | inline LocMsg() {}
39 | inline virtual ~LocMsg() {}
40 | virtual void proc() const = 0;
41 | inline virtual void log() const {}
42 | };
43 |
44 | class MsgTask {
45 | const void* mQ;
46 | LocThread mThread;
47 | public:
48 | ~MsgTask() = default;
49 | MsgTask(const char* threadName = NULL);
50 | void sendMsg(const LocMsg* msg) const;
51 | void sendMsg(const std::function runnable) const;
52 | };
53 |
54 | } //
55 |
56 | #endif //__MSG_TASK__
57 |
--------------------------------------------------------------------------------
/vibrator/excluded-input-devices.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
--------------------------------------------------------------------------------
/configs/qti_whitelist.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
44 |
--------------------------------------------------------------------------------
/gps/core/data-items/DataItemsFactoryProxy.h:
--------------------------------------------------------------------------------
1 | /* Copyright (c) 2017, The Linux Foundation. All rights reserved.
2 | *
3 | * Redistribution and use in source and binary forms, with or without
4 | * modification, are permitted provided that the following conditions are
5 | * met:
6 | * * Redistributions of source code must retain the above copyright
7 | * notice, this list of conditions and the following disclaimer.
8 | * * Redistributions in binary form must reproduce the above
9 | * copyright notice, this list of conditions and the following
10 | * disclaimer in the documentation and/or other materials provided
11 | * with the distribution.
12 | * * Neither the name of The Linux Foundation, nor the names of its
13 | * contributors may be used to endorse or promote products derived
14 | * from this software without specific prior written permission.
15 | *
16 | * THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED
17 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
18 | * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT
19 | * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS
20 | * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
21 | * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
22 | * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
23 | * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
24 | * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
25 | * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
26 | * IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
27 | *
28 | */
29 |
30 | #ifndef __DATAITEMFACTORYBASE__
31 | #define __DATAITEMFACTORYBASE__
32 |
33 | #include
34 | #include
35 |
36 | namespace loc_core
37 | {
38 |
39 | #define DATA_ITEMS_LIB_NAME "libdataitems.so"
40 | #define DATA_ITEMS_GET_CONCRETE_DI "getConcreteDataItem"
41 |
42 | typedef IDataItemCore * (get_concrete_data_item_fn)(DataItemId);
43 |
44 | class DataItemsFactoryProxy {
45 | public:
46 | static IDataItemCore* createNewDataItem(DataItemId id);
47 | static void closeDataItemLibraryHandle();
48 | static void *dataItemLibHandle;
49 | static get_concrete_data_item_fn *getConcreteDIFunc;
50 | };
51 |
52 | } // namespace loc_core
53 |
54 | #endif //__DATAITEMFACTORYBASE__
55 |
56 |
--------------------------------------------------------------------------------
/vibrator/aidl/service.cpp:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2020, The Linux Foundation. All rights reserved.
3 | *
4 | * Redistribution and use in source and binary forms, with or without
5 | * modification, are permitted provided that the following conditions are
6 | * met:
7 | * * Redistributions of source code must retain the above copyright
8 | * notice, this list of conditions and the following disclaimer.
9 | * * Redistributions in binary form must reproduce the above
10 | * copyright notice, this list of conditions and the following
11 | * disclaimer in the documentation and/or other materials provided
12 | * with the distribution.
13 | * * Neither the name of The Linux Foundation nor the names of its
14 | * contributors may be used to endorse or promote products derived
15 | * from this software without specific prior written permission.
16 | *
17 | * THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED
18 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
19 | * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT
20 | * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS
21 | * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
22 | * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
23 | * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
24 | * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
25 | * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
26 | * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
27 | * IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28 | */
29 |
30 | #define LOG_TAG "vendor.qti.hardware.vibrator.service"
31 |
32 | #include
33 | #include
34 | #include
35 |
36 | #include "Vibrator.h"
37 |
38 | using aidl::android::hardware::vibrator::Vibrator;
39 |
40 | int main() {
41 | ABinderProcess_setThreadPoolMaxThreadCount(0);
42 | std::shared_ptr vib = ndk::SharedRefBase::make();
43 |
44 | const std::string instance = std::string() + Vibrator::descriptor + "/default";
45 | binder_status_t status = AServiceManager_addService(vib->asBinder().get(), instance.c_str());
46 | CHECK(status == STATUS_OK);
47 |
48 | ABinderProcess_joinThreadPool();
49 | return EXIT_FAILURE; // should not reach
50 | }
51 |
--------------------------------------------------------------------------------
/gps/batching/configure.ac:
--------------------------------------------------------------------------------
1 | # configure.ac -- Autoconf script for gps location-batching
2 | #
3 | # Process this file with autoconf to produce a configure script
4 |
5 | # Requires autoconf tool later than 2.61
6 | AC_PREREQ(2.61)
7 | # Initialize the gps location-batching package version 1.0.0
8 | AC_INIT([location-batching],1.0.0)
9 | # Does not strictly follow GNU Coding standards
10 | AM_INIT_AUTOMAKE([foreign subdir-objects])
11 | # Disables auto rebuilding of configure, Makefile.ins
12 | AM_MAINTAINER_MODE
13 | # Verifies the --srcdir is correct by checking for the path
14 | AC_CONFIG_SRCDIR([Makefile.am])
15 | # defines some macros variable to be included by source
16 | AC_CONFIG_HEADERS([config.h])
17 | AC_CONFIG_MACRO_DIR([m4])
18 |
19 | # Checks for programs.
20 | AC_PROG_LIBTOOL
21 | AC_PROG_CXX
22 | AC_PROG_CC
23 | AM_PROG_CC_C_O
24 | AC_PROG_AWK
25 | AC_PROG_CPP
26 | AC_PROG_INSTALL
27 | AC_PROG_LN_S
28 | AC_PROG_MAKE_SET
29 | PKG_PROG_PKG_CONFIG
30 |
31 | # Checks for libraries.
32 | PKG_CHECK_MODULES([GPSUTILS], [gps-utils])
33 | AC_SUBST([GPSUTILS_CFLAGS])
34 | AC_SUBST([GPSUTILS_LIBS])
35 |
36 | PKG_CHECK_MODULES([LOCCORE], [loc-core])
37 | AC_SUBST([LOCCORE_CFLAGS])
38 | AC_SUBST([LOCCORE_LIBS])
39 |
40 | AC_ARG_WITH([locpla_includes],
41 | AC_HELP_STRING([--with-locpla-includes=@<:@dir@:>@],
42 | [specify the path to locpla-includes in loc-pla_git.bb]),
43 | [locpla_incdir=$withval],
44 | with_locpla_includes=no)
45 |
46 | if test "x$with_locpla_includes" != "xno"; then
47 | AC_SUBST(LOCPLA_CFLAGS, "-I${locpla_incdir}")
48 | fi
49 |
50 | AC_ARG_WITH([glib],
51 | AC_HELP_STRING([--with-glib],
52 | [enable glib, building HLOS systems which use glib]))
53 |
54 | if (test "x${with_glib}" = "xyes"); then
55 | AC_DEFINE(ENABLE_USEGLIB, 1, [Define if HLOS systems uses glib])
56 | PKG_CHECK_MODULES(GTHREAD, gthread-2.0 >= 2.16, dummy=yes,
57 | AC_MSG_ERROR(GThread >= 2.16 is required))
58 | PKG_CHECK_MODULES(GLIB, glib-2.0 >= 2.16, dummy=yes,
59 | AC_MSG_ERROR(GLib >= 2.16 is required))
60 | GLIB_CFLAGS="$GLIB_CFLAGS $GTHREAD_CFLAGS"
61 | GLIB_LIBS="$GLIB_LIBS $GTHREAD_LIBS"
62 |
63 | AC_SUBST(GLIB_CFLAGS)
64 | AC_SUBST(GLIB_LIBS)
65 | fi
66 |
67 | AM_CONDITIONAL(USE_GLIB, test "x${with_glib}" = "xyes")
68 |
69 | AC_CONFIG_FILES([ \
70 | Makefile \
71 | location-batching.pc
72 | ])
73 |
74 | AC_OUTPUT
75 |
--------------------------------------------------------------------------------
/gps/core/Makefile.am:
--------------------------------------------------------------------------------
1 | ACLOCAL_AMFLAGS = -I m4
2 |
3 | AM_CFLAGS = -I./ \
4 | $(LOCPLA_CFLAGS) \
5 | $(GPSUTILS_CFLAGS) \
6 | -I./data-items/ \
7 | -I./data-items/common \
8 | -I./observer \
9 | -I$(WORKSPACE)/gps-noship/flp \
10 | -D__func__=__PRETTY_FUNCTION__ \
11 | -fno-short-enums \
12 | -std=c++11
13 |
14 | libloc_core_la_h_sources = \
15 | LocApiBase.h \
16 | LocAdapterBase.h \
17 | ContextBase.h \
18 | LocContext.h \
19 | LBSProxyBase.h \
20 | loc_core_log.h \
21 | LocAdapterProxyBase.h \
22 | EngineHubProxyBase.h \
23 | data-items/DataItemId.h \
24 | data-items/IDataItemCore.h \
25 | data-items/DataItemConcreteTypesBase.h \
26 | observer/IDataItemObserver.h \
27 | observer/IDataItemSubscription.h \
28 | observer/IFrameworkActionReq.h \
29 | observer/IOsObserver.h \
30 | SystemStatusOsObserver.h \
31 | SystemStatus.h
32 |
33 | libloc_core_la_c_sources = \
34 | LocApiBase.cpp \
35 | LocAdapterBase.cpp \
36 | ContextBase.cpp \
37 | LocContext.cpp \
38 | loc_core_log.cpp \
39 | data-items/DataItemsFactoryProxy.cpp \
40 | SystemStatusOsObserver.cpp \
41 | SystemStatus.cpp
42 |
43 | if USE_EXTERNAL_AP
44 | AM_CFLAGS += -DFEATURE_EXTERNAL_AP
45 | endif
46 |
47 | library_includedir = $(pkgincludedir)
48 |
49 | library_include_HEADERS = $(libloc_core_la_h_sources)
50 |
51 | libloc_core_la_SOURCES = $(libloc_core_la_c_sources)
52 |
53 | if USE_GLIB
54 | libloc_core_la_CFLAGS = -DUSE_GLIB $(AM_CFLAGS) @GLIB_CFLAGS@
55 | libloc_core_la_LDFLAGS = -lstdc++ -Wl,-z,defs -lpthread @GLIB_LIBS@ -shared -version-info 1:0:0
56 | libloc_core_la_CPPFLAGS = -DUSE_GLIB $(AM_CFLAGS) $(AM_CPPFLAGS) @GLIB_CFLAGS@
57 | else
58 | libloc_core_la_CFLAGS = $(AM_CFLAGS)
59 | libloc_core_la_LDFLAGS = -Wl,-z,defs -lpthread -shared -version-info 1:0:0
60 | libloc_core_la_CPPFLAGS = $(AM_CFLAGS) $(AM_CPPFLAGS)
61 | endif
62 |
63 | if USE_FEATURE_AUTOMOTIVE
64 | AM_CFLAGS += -DFEATURE_AUTOMOTIVE
65 | endif
66 |
67 | libloc_core_la_LIBADD = -ldl $(GPSUTILS_LIBS)
68 |
69 | #Create and Install libraries
70 | lib_LTLIBRARIES = libloc_core.la
71 |
72 | pkgconfigdir = $(libdir)/pkgconfig
73 | pkgconfig_DATA = loc-core.pc
74 | EXTRA_DIST = $(pkgconfig_DATA)
75 |
--------------------------------------------------------------------------------
/gps/CleanSpec.mk:
--------------------------------------------------------------------------------
1 | # Copyright (C) 2007 The Android Open Source Project
2 | #
3 | # Licensed under the Apache License, Version 2.0 (the "License");
4 | # you may not use this file except in compliance with the License.
5 | # You may obtain a copy of the License at
6 | #
7 | # http://www.apache.org/licenses/LICENSE-2.0
8 | #
9 | # Unless required by applicable law or agreed to in writing, software
10 | # distributed under the License is distributed on an "AS IS" BASIS,
11 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 | # See the License for the specific language governing permissions and
13 | # limitations under the License.
14 | #
15 |
16 | # If you don't need to do a full clean build but would like to touch
17 | # a file or delete some intermediate files, add a clean step to the end
18 | # of the list. These steps will only be run once, if they haven't been
19 | # run before.
20 | #
21 | # E.g.:
22 | # $(call add-clean-step, touch -c external/sqlite/sqlite3.h)
23 | # $(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/STATIC_LIBRARIES/libz_intermediates)
24 | #
25 | # Always use "touch -c" and "rm -f" or "rm -rf" to gracefully deal with
26 | # files that are missing or have been moved.
27 | #
28 | # Use $(PRODUCT_OUT) to get to the "out/target/product/blah/" directory.
29 | # Use $(OUT_DIR) to refer to the "out" directory.
30 | #
31 | # If you need to re-do something that's already mentioned, just copy
32 | # the command and add it to the bottom of the list. E.g., if a change
33 | # that you made last week required touching a file and a change you
34 | # made today requires touching the same file, just copy the old
35 | # touch step and add it to the end of the list.
36 | #
37 | # ************************************************
38 | # NEWER CLEAN STEPS MUST BE AT THE END OF THE LIST
39 | # ************************************************
40 |
41 | # For example:
42 | #$(call add-clean-step, rm -rf $(OUT_DIR)/target/common/obj/APPS/AndroidTests_intermediates)
43 | #$(call add-clean-step, rm -rf $(OUT_DIR)/target/common/obj/JAVA_LIBRARIES/core_intermediates)
44 | #$(call add-clean-step, find $(OUT_DIR) -type f -name "IGTalkSession*" -print0 | xargs -0 rm -f)
45 | #$(call add-clean-step, rm -rf $(PRODUCT_OUT)/data/*)
46 |
47 | # ************************************************
48 | # NEWER CLEAN STEPS MUST BE AT THE END OF THE LIST
49 | # ************************************************
50 | $(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/SHARED_LIBRARIES/libloc_api*)
51 |
--------------------------------------------------------------------------------
/gps/core/LocContext.h:
--------------------------------------------------------------------------------
1 | /* Copyright (c) 2011-2014, 2017-2020 The Linux Foundation. All rights reserved.
2 | *
3 | * Redistribution and use in source and binary forms, with or without
4 | * modification, are permitted provided that the following conditions are
5 | * met:
6 | * * Redistributions of source code must retain the above copyright
7 | * notice, this list of conditions and the following disclaimer.
8 | * * Redistributions in binary form must reproduce the above
9 | * copyright notice, this list of conditions and the following
10 | * disclaimer in the documentation and/or other materials provided
11 | * with the distribution.
12 | * * Neither the name of The Linux Foundation, nor the names of its
13 | * contributors may be used to endorse or promote products derived
14 | * from this software without specific prior written permission.
15 | *
16 | * THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED
17 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
18 | * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT
19 | * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS
20 | * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
21 | * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
22 | * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
23 | * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
24 | * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
25 | * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
26 | * IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
27 | *
28 | */
29 | #ifndef __LOC_CONTEXT__
30 | #define __LOC_CONTEXT__
31 |
32 | #include
33 | #include
34 | #include
35 | #include
36 |
37 | namespace loc_core {
38 |
39 | class LocContext : public ContextBase {
40 | static const MsgTask* mMsgTask;
41 | static ContextBase* mContext;
42 | static const MsgTask* getMsgTask(const char* name);
43 | static pthread_mutex_t mGetLocContextMutex;
44 |
45 | protected:
46 | LocContext(const MsgTask* msgTask);
47 | inline virtual ~LocContext() {}
48 |
49 | public:
50 | static const char* mLBSLibName;
51 | static const char* mLocationHalName;
52 |
53 | static ContextBase* getLocContext(const char* name);
54 |
55 | static void injectFeatureConfig(ContextBase *context);
56 | };
57 |
58 | }
59 |
60 | #endif //__LOC_CONTEXT__
61 |
--------------------------------------------------------------------------------
/gps/android/1.0/GnssConfiguration.h:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2017-2018, The Linux Foundation. All rights reserved.
3 | * Not a Contribution
4 | */
5 |
6 | /* Copyright (C) 2016 The Android Open Source Project
7 | *
8 | * Licensed under the Apache License, Version 2.0 (the "License");
9 | * you may not use this file except in compliance with the License.
10 | * You may obtain a copy of the License at
11 | *
12 | * http://www.apache.org/licenses/LICENSE-2.0
13 | *
14 | * Unless required by applicable law or agreed to in writing, software
15 | * distributed under the License is distributed on an "AS IS" BASIS,
16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17 | * See the License for the specific language governing permissions and
18 | * limitations under the License.
19 | */
20 |
21 |
22 | #ifndef ANDROID_HARDWARE_GNSS_V1_0_GNSSCONFIGURATION_H
23 | #define ANDROID_HARDWARE_GNSS_V1_0_GNSSCONFIGURATION_H
24 |
25 | #include
26 | #include
27 |
28 | namespace android {
29 | namespace hardware {
30 | namespace gnss {
31 | namespace V1_0 {
32 | namespace implementation {
33 |
34 | using ::android::hardware::gnss::V1_0::IGnssConfiguration;
35 | using ::android::hardware::Return;
36 | using ::android::hardware::Void;
37 | using ::android::hardware::hidl_vec;
38 | using ::android::hardware::hidl_string;
39 | using ::android::sp;
40 |
41 | /*
42 | * Interface for passing GNSS configuration info from platform to HAL.
43 | */
44 | struct Gnss;
45 | struct GnssConfiguration : public IGnssConfiguration {
46 | GnssConfiguration(Gnss* gnss);
47 | ~GnssConfiguration() = default;
48 |
49 | /*
50 | * Methods from ::android::hardware::gnss::V1_0::IGnssConfiguration follow.
51 | * These declarations were generated from IGnssConfiguration.hal.
52 | */
53 | Return setSuplVersion(uint32_t version) override;
54 | Return setSuplMode(uint8_t mode) override;
55 | Return setSuplEs(bool enabled) override;
56 | Return setLppProfile(uint8_t lppProfileMask) override;
57 | Return setGlonassPositioningProtocol(uint8_t protocol) override;
58 | Return setEmergencySuplPdn(bool enable) override;
59 | Return setGpsLock(uint8_t lock) override;
60 |
61 | private:
62 | Gnss* mGnss = nullptr;
63 | };
64 |
65 | } // namespace implementation
66 | } // namespace V1_0
67 | } // namespace gnss
68 | } // namespace hardware
69 | } // namespace android
70 |
71 | #endif // ANDROID_HARDWARE_GNSS_V1_0_GNSSCONFIGURATION_H
72 |
--------------------------------------------------------------------------------
/parts/res/drawable/ic_launcher_foreground.xml:
--------------------------------------------------------------------------------
1 |
2 |
6 |
12 |
13 |
15 |
19 |
22 |
23 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
--------------------------------------------------------------------------------
/rootdir/bin/init.kernel.post_boot.sh:
--------------------------------------------------------------------------------
1 | #=============================================================================
2 | # Copyright (c) 2019-2021 Qualcomm Technologies, Inc.
3 | # All Rights Reserved.
4 | # Confidential and Proprietary - Qualcomm Technologies, Inc.
5 | #
6 | # Copyright (c) 2009-2012, 2014-2019, The Linux Foundation. All rights reserved.
7 | #
8 | # Redistribution and use in source and binary forms, with or without
9 | # modification, are permitted provided that the following conditions are met:
10 | # * Redistributions of source code must retain the above copyright
11 | # notice, this list of conditions and the following disclaimer.
12 | # * Redistributions in binary form must reproduce the above copyright
13 | # notice, this list of conditions and the following disclaimer in the
14 | # documentation and/or other materials provided with the distribution.
15 | # * Neither the name of The Linux Foundation nor
16 | # the names of its contributors may be used to endorse or promote
17 | # products derived from this software without specific prior written
18 | # permission.
19 | #
20 | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
21 | # AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
22 | # IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
23 | # NON-INFRINGEMENT ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
24 | # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
25 | # EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
26 | # PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
27 | # OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
28 | # WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
29 | # OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
30 | # ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
31 | #=============================================================================
32 |
33 | if [ -f /sys/devices/soc0/soc_id ]; then
34 | platformid=`cat /sys/devices/soc0/soc_id`
35 | fi
36 |
37 | case "$platformid" in
38 | "415"|"439"|"456"|"501"|"502")
39 | /vendor/bin/sh /vendor/bin/init.kernel.post_boot-lahaina.sh
40 | ;;
41 |
42 | "450")
43 | /vendor/bin/sh /vendor/bin/init.kernel.post_boot-shima.sh
44 | ;;
45 | "475"|"499"|"487"|"488"|"498"|"497"|"515")
46 | /vendor/bin/sh /vendor/bin/init.kernel.post_boot-yupik.sh
47 | ;;
48 | *)
49 | echo "***WARNING***: Invalid SoC ID\n\t No postboot settings applied!!\n"
50 | ;;
51 | esac
52 |
53 |
--------------------------------------------------------------------------------
/parts/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 |
17 |
18 |
19 | Xiaomi Parts
20 |
21 |
22 | Clear speaker
23 | Play a 30-second audio to clear the speaker
24 | Run this feature once or twice if you find that your speaker is lightly blocked by dust. Set media volume to maximum.\n\nIf the speaker is blocked heavily, run this feature 2-5 times while shaking your device with the speaker facing downwards.\n\nWARNING: Ensure that any headphones are unplugged.
25 |
26 |
27 | Dolby Atmos
28 | Setting Dolby Atmos
29 |
30 |
31 | Per-app refresh rate
32 | Set the maximum refresh rate for a specific application
33 | Default
34 | 60Hz
35 | 120Hz
36 |
37 |
38 | Thermal profiles
39 | Per-app thermal profile configuration
40 | Default
41 | Benchmark
42 | Browser
43 | Camera
44 | Dialer
45 | Gaming
46 | Navigation
47 | Streaming
48 | Video
49 |
50 |
--------------------------------------------------------------------------------
/gps/android/1.0/GnssNi.h:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2017-2018, The Linux Foundation. All rights reserved.
3 | * Not a Contribution
4 | */
5 | /*
6 | * Copyright (C) 2016 The Android Open Source Project
7 | *
8 | * Licensed under the Apache License, Version 2.0 (the "License");
9 | * you may not use this file except in compliance with the License.
10 | * You may obtain a copy of the License at
11 | *
12 | * http://www.apache.org/licenses/LICENSE-2.0
13 | *
14 | * Unless required by applicable law or agreed to in writing, software
15 | * distributed under the License is distributed on an "AS IS" BASIS,
16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17 | * See the License for the specific language governing permissions and
18 | * limitations under the License.
19 | */
20 |
21 | #ifndef ANDROID_HARDWARE_GNSS_V1_0_GNSSNI_H
22 | #define ANDROID_HARDWARE_GNSS_V1_0_GNSSNI_H
23 |
24 | #include
25 | #include
26 |
27 | namespace android {
28 | namespace hardware {
29 | namespace gnss {
30 | namespace V1_0 {
31 | namespace implementation {
32 |
33 | using ::android::hardware::gnss::V1_0::IGnssNi;
34 | using ::android::hardware::gnss::V1_0::IGnssNiCallback;
35 | using ::android::hardware::Return;
36 | using ::android::hardware::Void;
37 | using ::android::hardware::hidl_vec;
38 | using ::android::hardware::hidl_string;
39 | using ::android::sp;
40 |
41 | struct Gnss;
42 | struct GnssNi : public IGnssNi {
43 | GnssNi(Gnss* gnss);
44 | ~GnssNi() = default;
45 |
46 | /*
47 | * Methods from ::android::hardware::gnss::V1_0::IGnssNi follow.
48 | * These declarations were generated from IGnssNi.hal.
49 | */
50 | Return setCallback(const sp& callback) override;
51 | Return respond(int32_t notifId,
52 | IGnssNiCallback::GnssUserResponseType userResponse) override;
53 |
54 | private:
55 | struct GnssNiDeathRecipient : hidl_death_recipient {
56 | GnssNiDeathRecipient(sp gnssNi) : mGnssNi(gnssNi) {
57 | }
58 | ~GnssNiDeathRecipient() = default;
59 | virtual void serviceDied(uint64_t cookie, const wp& who) override;
60 | sp mGnssNi;
61 | };
62 |
63 | private:
64 | sp mGnssNiDeathRecipient = nullptr;
65 | sp mGnssNiCbIface = nullptr;
66 | Gnss* mGnss = nullptr;
67 | };
68 |
69 | } // namespace implementation
70 | } // namespace V1_0
71 | } // namespace gnss
72 | } // namespace hardware
73 | } // namespace android
74 |
75 | #endif // ANDROID_HARDWARE_GNSS_V1_0_GNSSNI_H
76 |
--------------------------------------------------------------------------------
/gps/android/1.1/GnssNi.h:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2017-2018, The Linux Foundation. All rights reserved.
3 | * Not a Contribution
4 | */
5 | /*
6 | * Copyright (C) 2016 The Android Open Source Project
7 | *
8 | * Licensed under the Apache License, Version 2.0 (the "License");
9 | * you may not use this file except in compliance with the License.
10 | * You may obtain a copy of the License at
11 | *
12 | * http://www.apache.org/licenses/LICENSE-2.0
13 | *
14 | * Unless required by applicable law or agreed to in writing, software
15 | * distributed under the License is distributed on an "AS IS" BASIS,
16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17 | * See the License for the specific language governing permissions and
18 | * limitations under the License.
19 | */
20 |
21 | #ifndef ANDROID_HARDWARE_GNSS_V1_1_GNSSNI_H
22 | #define ANDROID_HARDWARE_GNSS_V1_1_GNSSNI_H
23 |
24 | #include
25 | #include
26 |
27 | namespace android {
28 | namespace hardware {
29 | namespace gnss {
30 | namespace V1_1 {
31 | namespace implementation {
32 |
33 | using ::android::hardware::gnss::V1_0::IGnssNi;
34 | using ::android::hardware::gnss::V1_0::IGnssNiCallback;
35 | using ::android::hardware::Return;
36 | using ::android::hardware::Void;
37 | using ::android::hardware::hidl_vec;
38 | using ::android::hardware::hidl_string;
39 | using ::android::sp;
40 |
41 | struct Gnss;
42 | struct GnssNi : public IGnssNi {
43 | GnssNi(Gnss* gnss);
44 | ~GnssNi() = default;
45 |
46 | /*
47 | * Methods from ::android::hardware::gnss::V1_0::IGnssNi follow.
48 | * These declarations were generated from IGnssNi.hal.
49 | */
50 | Return setCallback(const sp& callback) override;
51 | Return respond(int32_t notifId,
52 | IGnssNiCallback::GnssUserResponseType userResponse) override;
53 |
54 | private:
55 | struct GnssNiDeathRecipient : hidl_death_recipient {
56 | GnssNiDeathRecipient(sp gnssNi) : mGnssNi(gnssNi) {
57 | }
58 | ~GnssNiDeathRecipient() = default;
59 | virtual void serviceDied(uint64_t cookie, const wp& who) override;
60 | sp mGnssNi;
61 | };
62 |
63 | private:
64 | sp mGnssNiDeathRecipient = nullptr;
65 | sp mGnssNiCbIface = nullptr;
66 | Gnss* mGnss = nullptr;
67 | };
68 |
69 | } // namespace implementation
70 | } // namespace V1_1
71 | } // namespace gnss
72 | } // namespace hardware
73 | } // namespace android
74 |
75 | #endif // ANDROID_HARDWARE_GNSS_V1_1_GNSSNI_H
76 |
--------------------------------------------------------------------------------
/gps/android/2.0/GnssNi.h:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2017-2019, The Linux Foundation. All rights reserved.
3 | * Not a Contribution
4 | */
5 | /*
6 | * Copyright (C) 2016 The Android Open Source Project
7 | *
8 | * Licensed under the Apache License, Version 2.0 (the "License");
9 | * you may not use this file except in compliance with the License.
10 | * You may obtain a copy of the License at
11 | *
12 | * http://www.apache.org/licenses/LICENSE-2.0
13 | *
14 | * Unless required by applicable law or agreed to in writing, software
15 | * distributed under the License is distributed on an "AS IS" BASIS,
16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17 | * See the License for the specific language governing permissions and
18 | * limitations under the License.
19 | */
20 |
21 | #ifndef ANDROID_HARDWARE_GNSS_V2_0_GNSSNI_H
22 | #define ANDROID_HARDWARE_GNSS_V2_0_GNSSNI_H
23 |
24 | #include
25 | #include
26 |
27 | namespace android {
28 | namespace hardware {
29 | namespace gnss {
30 | namespace V2_0 {
31 | namespace implementation {
32 |
33 | using ::android::hardware::gnss::V1_0::IGnssNi;
34 | using ::android::hardware::gnss::V1_0::IGnssNiCallback;
35 | using ::android::hardware::Return;
36 | using ::android::hardware::Void;
37 | using ::android::hardware::hidl_vec;
38 | using ::android::hardware::hidl_string;
39 | using ::android::sp;
40 |
41 | struct Gnss;
42 | struct GnssNi : public IGnssNi {
43 | GnssNi(Gnss* gnss);
44 | ~GnssNi() = default;
45 |
46 | /*
47 | * Methods from ::android::hardware::gnss::V1_0::IGnssNi follow.
48 | * These declarations were generated from IGnssNi.hal.
49 | */
50 | Return setCallback(const sp& callback) override;
51 | Return respond(int32_t notifId,
52 | IGnssNiCallback::GnssUserResponseType userResponse) override;
53 |
54 | private:
55 | struct GnssNiDeathRecipient : hidl_death_recipient {
56 | GnssNiDeathRecipient(sp gnssNi) : mGnssNi(gnssNi) {
57 | }
58 | ~GnssNiDeathRecipient() = default;
59 | virtual void serviceDied(uint64_t cookie, const wp& who) override;
60 | sp mGnssNi;
61 | };
62 |
63 | private:
64 | sp mGnssNiDeathRecipient = nullptr;
65 | sp mGnssNiCbIface = nullptr;
66 | Gnss* mGnss = nullptr;
67 | };
68 |
69 | } // namespace implementation
70 | } // namespace V2_0
71 | } // namespace gnss
72 | } // namespace hardware
73 | } // namespace android
74 |
75 | #endif // ANDROID_HARDWARE_GNSS_V2_0_GNSSNI_H
76 |
--------------------------------------------------------------------------------
/gps/android/2.1/GnssNi.h:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2017-2020, The Linux Foundation. All rights reserved.
3 | * Not a Contribution
4 | */
5 | /*
6 | * Copyright (C) 2016 The Android Open Source Project
7 | *
8 | * Licensed under the Apache License, Version 2.0 (the "License");
9 | * you may not use this file except in compliance with the License.
10 | * You may obtain a copy of the License at
11 | *
12 | * http://www.apache.org/licenses/LICENSE-2.0
13 | *
14 | * Unless required by applicable law or agreed to in writing, software
15 | * distributed under the License is distributed on an "AS IS" BASIS,
16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17 | * See the License for the specific language governing permissions and
18 | * limitations under the License.
19 | */
20 |
21 | #ifndef ANDROID_HARDWARE_GNSS_V2_0_GNSSNI_H
22 | #define ANDROID_HARDWARE_GNSS_V2_0_GNSSNI_H
23 |
24 | #include
25 | #include
26 |
27 | namespace android {
28 | namespace hardware {
29 | namespace gnss {
30 | namespace V2_1 {
31 | namespace implementation {
32 |
33 | using ::android::hardware::gnss::V1_0::IGnssNi;
34 | using ::android::hardware::gnss::V1_0::IGnssNiCallback;
35 | using ::android::hardware::Return;
36 | using ::android::hardware::Void;
37 | using ::android::hardware::hidl_vec;
38 | using ::android::hardware::hidl_string;
39 | using ::android::sp;
40 |
41 | struct Gnss;
42 | struct GnssNi : public IGnssNi {
43 | GnssNi(Gnss* gnss);
44 | ~GnssNi() = default;
45 |
46 | /*
47 | * Methods from ::android::hardware::gnss::V1_0::IGnssNi follow.
48 | * These declarations were generated from IGnssNi.hal.
49 | */
50 | Return setCallback(const sp& callback) override;
51 | Return respond(int32_t notifId,
52 | IGnssNiCallback::GnssUserResponseType userResponse) override;
53 |
54 | private:
55 | struct GnssNiDeathRecipient : hidl_death_recipient {
56 | GnssNiDeathRecipient(sp gnssNi) : mGnssNi(gnssNi) {
57 | }
58 | ~GnssNiDeathRecipient() = default;
59 | virtual void serviceDied(uint64_t cookie, const wp& who) override;
60 | sp mGnssNi;
61 | };
62 |
63 | private:
64 | sp mGnssNiDeathRecipient = nullptr;
65 | sp mGnssNiCbIface = nullptr;
66 | Gnss* mGnss = nullptr;
67 | };
68 |
69 | } // namespace implementation
70 | } // namespace V2_1
71 | } // namespace gnss
72 | } // namespace hardware
73 | } // namespace android
74 |
75 | #endif // ANDROID_HARDWARE_GNSS_V2_0_GNSSNI_H
76 |
--------------------------------------------------------------------------------
/gps/android/2.0/AGnss.h:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2017-2019, The Linux Foundation. All rights reserved.
3 | * Not a Contribution
4 | */
5 | /*
6 | * Copyright (C) 2016 The Android Open Source Project
7 | *
8 | * Licensed under the Apache License, Version 2.0 (the "License");
9 | * you may not use this file except in compliance with the License.
10 | * You may obtain a copy of the License at
11 | *
12 | * http://www.apache.org/licenses/LICENSE-2.0
13 | *
14 | * Unless required by applicable law or agreed to in writing, software
15 | * distributed under the License is distributed on an "AS IS" BASIS,
16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17 | * See the License for the specific language governing permissions and
18 | * limitations under the License.
19 | */
20 |
21 | #ifndef ANDROID_HARDWARE_GNSS_V2_0_AGNSS_H
22 | #define ANDROID_HARDWARE_GNSS_V2_0_AGNSS_H
23 |
24 | #include
25 | #include
26 | #include
27 |
28 | namespace android {
29 | namespace hardware {
30 | namespace gnss {
31 | namespace V2_0 {
32 | namespace implementation {
33 |
34 | using ::android::hardware::Return;
35 | using ::android::hardware::Void;
36 | using ::android::hardware::hidl_vec;
37 | using ::android::hardware::hidl_string;
38 | using ::android::sp;
39 |
40 | struct Gnss;
41 | struct AGnss : public V2_0::IAGnss {
42 |
43 | AGnss(Gnss* gnss);
44 | ~AGnss();
45 | /*
46 | * Methods from ::android::hardware::gnss::V2_0::IAGnss interface follow.
47 | * These declarations were generated from IAGnss.hal.
48 | */
49 | Return setCallback(const sp& callback) override;
50 |
51 | Return dataConnClosed() override;
52 |
53 | Return dataConnFailed() override;
54 |
55 | Return dataConnOpen(uint64_t networkHandle, const hidl_string& apn,
56 | V2_0::IAGnss::ApnIpType apnIpType) override;
57 |
58 | Return setServer(V2_0::IAGnssCallback::AGnssType type,
59 | const hidl_string& hostname, int32_t port) override;
60 |
61 | void statusCb(AGpsExtType type, LocAGpsStatusValue status);
62 |
63 | /* Data call setup callback passed down to GNSS HAL implementation */
64 | static void agnssStatusIpV4Cb(AGnssExtStatusIpV4 status);
65 |
66 | private:
67 | Gnss* mGnss = nullptr;
68 | sp mAGnssCbIface = nullptr;
69 | };
70 |
71 | } // namespace implementation
72 | } // namespace V2_0
73 | } // namespace gnss
74 | } // namespace hardware
75 | } // namespace android
76 |
77 | #endif // ANDROID_HARDWARE_GNSS_V2_0_AGNSS_H
78 |
--------------------------------------------------------------------------------
/gps/android/1.0/AGnss.h:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2017-2018, The Linux Foundation. All rights reserved.
3 | * Not a Contribution
4 | */
5 | /*
6 | * Copyright (C) 2016 The Android Open Source Project
7 | *
8 | * Licensed under the Apache License, Version 2.0 (the "License");
9 | * you may not use this file except in compliance with the License.
10 | * You may obtain a copy of the License at
11 | *
12 | * http://www.apache.org/licenses/LICENSE-2.0
13 | *
14 | * Unless required by applicable law or agreed to in writing, software
15 | * distributed under the License is distributed on an "AS IS" BASIS,
16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17 | * See the License for the specific language governing permissions and
18 | * limitations under the License.
19 | */
20 |
21 | #ifndef ANDROID_HARDWARE_GNSS_V1_0_AGNSS_H
22 | #define ANDROID_HARDWARE_GNSS_V1_0_AGNSS_H
23 |
24 | #include
25 | #include
26 | #include
27 |
28 | namespace android {
29 | namespace hardware {
30 | namespace gnss {
31 | namespace V1_0 {
32 | namespace implementation {
33 |
34 | using ::android::hardware::gnss::V1_0::IAGnss;
35 | using ::android::hardware::gnss::V1_0::IAGnssCallback;
36 | using ::android::hardware::Return;
37 | using ::android::hardware::Void;
38 | using ::android::hardware::hidl_vec;
39 | using ::android::hardware::hidl_string;
40 | using ::android::sp;
41 |
42 | struct Gnss;
43 | struct AGnss : public IAGnss {
44 |
45 | AGnss(Gnss* gnss);
46 | ~AGnss();
47 | /*
48 | * Methods from ::android::hardware::gnss::V1_0::IAGnss interface follow.
49 | * These declarations were generated from IAGnss.hal.
50 | */
51 | Return setCallback(const sp& callback) override;
52 |
53 | Return dataConnClosed() override;
54 |
55 | Return dataConnFailed() override;
56 |
57 | Return dataConnOpen(const hidl_string& apn,
58 | IAGnss::ApnIpType apnIpType) override;
59 |
60 | Return setServer(IAGnssCallback::AGnssType type,
61 | const hidl_string& hostname, int32_t port) override;
62 |
63 | void statusIpV4Cb(AGnssExtStatusIpV4 status);
64 |
65 | /* Data call setup callback passed down to GNSS HAL implementation */
66 | static void agnssStatusIpV4Cb(AGnssExtStatusIpV4 status);
67 |
68 | private:
69 | Gnss* mGnss = nullptr;
70 | sp mAGnssCbIface = nullptr;
71 | };
72 |
73 | } // namespace implementation
74 | } // namespace V1_0
75 | } // namespace gnss
76 | } // namespace hardware
77 | } // namespace android
78 |
79 | #endif // ANDROID_HARDWARE_GNSS_V1_0_AGNSS_H
80 |
--------------------------------------------------------------------------------
/gps/android/1.1/AGnss.h:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2017-2018, The Linux Foundation. All rights reserved.
3 | * Not a Contribution
4 | */
5 | /*
6 | * Copyright (C) 2016 The Android Open Source Project
7 | *
8 | * Licensed under the Apache License, Version 2.0 (the "License");
9 | * you may not use this file except in compliance with the License.
10 | * You may obtain a copy of the License at
11 | *
12 | * http://www.apache.org/licenses/LICENSE-2.0
13 | *
14 | * Unless required by applicable law or agreed to in writing, software
15 | * distributed under the License is distributed on an "AS IS" BASIS,
16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17 | * See the License for the specific language governing permissions and
18 | * limitations under the License.
19 | */
20 |
21 | #ifndef ANDROID_HARDWARE_GNSS_V1_1_AGNSS_H
22 | #define ANDROID_HARDWARE_GNSS_V1_1_AGNSS_H
23 |
24 | #include
25 | #include
26 | #include
27 |
28 | namespace android {
29 | namespace hardware {
30 | namespace gnss {
31 | namespace V1_1 {
32 | namespace implementation {
33 |
34 | using ::android::hardware::gnss::V1_0::IAGnss;
35 | using ::android::hardware::gnss::V1_0::IAGnssCallback;
36 | using ::android::hardware::Return;
37 | using ::android::hardware::Void;
38 | using ::android::hardware::hidl_vec;
39 | using ::android::hardware::hidl_string;
40 | using ::android::sp;
41 |
42 | struct Gnss;
43 | struct AGnss : public IAGnss {
44 |
45 | AGnss(Gnss* gnss);
46 | ~AGnss();
47 | /*
48 | * Methods from ::android::hardware::gnss::V1_0::IAGnss interface follow.
49 | * These declarations were generated from IAGnss.hal.
50 | */
51 | Return setCallback(const sp& callback) override;
52 |
53 | Return dataConnClosed() override;
54 |
55 | Return dataConnFailed() override;
56 |
57 | Return dataConnOpen(const hidl_string& apn,
58 | IAGnss::ApnIpType apnIpType) override;
59 |
60 | Return setServer(IAGnssCallback::AGnssType type,
61 | const hidl_string& hostname, int32_t port) override;
62 |
63 | void statusIpV4Cb(AGnssExtStatusIpV4 status);
64 |
65 | /* Data call setup callback passed down to GNSS HAL implementation */
66 | static void agnssStatusIpV4Cb(AGnssExtStatusIpV4 status);
67 |
68 | private:
69 | Gnss* mGnss = nullptr;
70 | sp mAGnssCbIface = nullptr;
71 | };
72 |
73 | } // namespace implementation
74 | } // namespace V1_1
75 | } // namespace gnss
76 | } // namespace hardware
77 | } // namespace android
78 |
79 | #endif // ANDROID_HARDWARE_GNSS_V1_1_AGNSS_H
80 |
--------------------------------------------------------------------------------
/parts/res/values-tr/strings.xml:
--------------------------------------------------------------------------------
1 |
2 |
17 |
18 |
19 | Xiaomi Parts
20 |
21 |
22 | Dolby Atmos
23 | Dolby Atmos Ayarları
24 |
25 |
26 | Hoparlörü temizle
27 | Hoparlörü temizlemek için 30 saniyelik bir ses çalın
28 | Hoparlörünüzün tozdan dolayı hafifçe tıkandığını fark ederseniz bu özelliği bir veya iki kez çalıştırın. Medya ses seviyesini maksimuma ayarlayın.\n\nHoparlör yoğun bir şekilde engellenmişse, hoparlör aşağı bakacak şekilde cihazınızı sallayarak bu özelliği 2-5 kez çalıştırın.\n\nUYARI: Tüm kulaklıkların takılı olmadığından emin olun.
29 |
30 |
31 | Uygulama başına yenileme hızı
32 | Belirli bir uygulama için maksimum yenileme hızını ayarlayın
33 | Varsayılan
34 | 60Hz
35 | 120Hz
36 |
37 |
38 | Termal profilleri
39 | Uygulama başına termal profili yapılandırması
40 | Varsayılan
41 | Performans
42 | Tarayıcı
43 | Kamera
44 | Çevirici
45 | Oyun
46 | Navigasyon
47 | Yayın
48 | Video
49 |
50 |
--------------------------------------------------------------------------------
/gps/android/2.1/AGnss.h:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2017-2020, The Linux Foundation. All rights reserved.
3 | * Not a Contribution
4 | */
5 | /*
6 | * Copyright (C) 2016 The Android Open Source Project
7 | *
8 | * Licensed under the Apache License, Version 2.0 (the "License");
9 | * you may not use this file except in compliance with the License.
10 | * You may obtain a copy of the License at
11 | *
12 | * http://www.apache.org/licenses/LICENSE-2.0
13 | *
14 | * Unless required by applicable law or agreed to in writing, software
15 | * distributed under the License is distributed on an "AS IS" BASIS,
16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17 | * See the License for the specific language governing permissions and
18 | * limitations under the License.
19 | */
20 |
21 | #ifndef ANDROID_HARDWARE_GNSS_V2_0_AGNSS_H
22 | #define ANDROID_HARDWARE_GNSS_V2_0_AGNSS_H
23 |
24 | #include
25 | #include
26 | #include
27 |
28 | namespace android {
29 | namespace hardware {
30 | namespace gnss {
31 | namespace V2_1 {
32 | namespace implementation {
33 |
34 | using ::android::hardware::Return;
35 | using ::android::hardware::Void;
36 | using ::android::hardware::hidl_vec;
37 | using ::android::hardware::hidl_string;
38 | using ::android::sp;
39 | using ::android::hardware::gnss::V2_0::IAGnssCallback;
40 |
41 | struct Gnss;
42 | struct AGnss : public V2_0::IAGnss {
43 |
44 | AGnss(Gnss* gnss);
45 | ~AGnss();
46 | /*
47 | * Methods from ::android::hardware::gnss::V2_0::IAGnss interface follow.
48 | * These declarations were generated from IAGnss.hal.
49 | */
50 | Return setCallback(const sp& callback) override;
51 |
52 | Return dataConnClosed() override;
53 |
54 | Return dataConnFailed() override;
55 |
56 | Return dataConnOpen(uint64_t networkHandle, const hidl_string& apn,
57 | V2_0::IAGnss::ApnIpType apnIpType) override;
58 |
59 | Return setServer(V2_0::IAGnssCallback::AGnssType type,
60 | const hidl_string& hostname, int32_t port) override;
61 |
62 | void statusCb(AGpsExtType type, LocAGpsStatusValue status);
63 |
64 | /* Data call setup callback passed down to GNSS HAL implementation */
65 | static void agnssStatusIpV4Cb(AGnssExtStatusIpV4 status);
66 |
67 | private:
68 | Gnss* mGnss = nullptr;
69 | sp mAGnssCbIface = nullptr;
70 |
71 | AGpsExtType mType;
72 | };
73 |
74 | } // namespace implementation
75 | } // namespace V2_1
76 | } // namespace gnss
77 | } // namespace hardware
78 | } // namespace android
79 |
80 | #endif // ANDROID_HARDWARE_GNSS_V2_0_AGNSS_H
81 |
--------------------------------------------------------------------------------