├── .clang-format ├── .gitignore ├── AdvancedDisplay ├── Android.bp ├── AndroidManifest.xml ├── proguard.flags ├── res │ ├── drawable │ │ └── ic_settings_advanced_display.xml │ ├── layout │ │ └── framelayout.xml │ ├── values-af │ │ └── strings.xml │ ├── values-ar │ │ └── strings.xml │ ├── values-as │ │ └── strings.xml │ ├── values-ast-rES │ │ └── strings.xml │ ├── values-az-rAZ │ │ ├── arrays.xml │ │ └── strings.xml │ ├── values-az │ │ └── strings.xml │ ├── values-be-rBY │ │ ├── arrays.xml │ │ └── strings.xml │ ├── values-be │ │ └── strings.xml │ ├── values-bg │ │ └── strings.xml │ ├── values-bn-rBD │ │ ├── arrays.xml │ │ └── strings.xml │ ├── values-bs-rBA │ │ ├── arrays.xml │ │ └── strings.xml │ ├── values-bs │ │ └── strings.xml │ ├── values-ca │ │ └── strings.xml │ ├── values-cs │ │ └── strings.xml │ ├── values-csb-rPL │ │ ├── arrays.xml │ │ └── strings.xml │ ├── values-cy │ │ └── strings.xml │ ├── values-da │ │ └── strings.xml │ ├── values-de │ │ └── strings.xml │ ├── values-el │ │ └── strings.xml │ ├── values-en-rAU │ │ └── strings.xml │ ├── values-en-rCA │ │ └── strings.xml │ ├── values-en-rGB │ │ └── strings.xml │ ├── values-en-rIN │ │ └── strings.xml │ ├── values-eo │ │ └── strings.xml │ ├── values-es-rUS │ │ └── strings.xml │ ├── values-es │ │ └── strings.xml │ ├── values-et-rEE │ │ ├── arrays.xml │ │ └── strings.xml │ ├── values-et │ │ └── strings.xml │ ├── values-eu-rES │ │ ├── arrays.xml │ │ └── strings.xml │ ├── values-eu │ │ └── strings.xml │ ├── values-fa │ │ └── strings.xml │ ├── values-fi │ │ └── strings.xml │ ├── values-fil-rPH │ │ ├── arrays.xml │ │ └── strings.xml │ ├── values-fr │ │ └── strings.xml │ ├── values-frp-rIT │ │ ├── arrays.xml │ │ └── strings.xml │ ├── values-fur-rIT │ │ └── strings.xml │ ├── values-fy-rNL │ │ └── strings.xml │ ├── values-ga-rIE │ │ └── strings.xml │ ├── values-gd-rGB │ │ ├── arrays.xml │ │ └── strings.xml │ ├── values-gd │ │ └── strings.xml │ ├── values-gl-rES │ │ ├── arrays.xml │ │ └── strings.xml │ ├── values-gl │ │ └── strings.xml │ ├── values-gu-rIN │ │ ├── arrays.xml │ │ └── strings.xml │ ├── values-gu │ │ └── strings.xml │ ├── values-hr │ │ └── strings.xml │ ├── values-hu │ │ └── strings.xml │ ├── values-hy-rAM │ │ ├── arrays.xml │ │ └── strings.xml │ ├── values-in │ │ └── strings.xml │ ├── values-is-rIS │ │ ├── arrays.xml │ │ └── strings.xml │ ├── values-is │ │ └── strings.xml │ ├── values-it │ │ └── strings.xml │ ├── values-iw │ │ └── strings.xml │ ├── values-ja │ │ └── strings.xml │ ├── values-ka-rGE │ │ ├── arrays.xml │ │ └── strings.xml │ ├── values-ka │ │ └── strings.xml │ ├── values-kab-rDZ │ │ └── strings.xml │ ├── values-kk-rKZ │ │ ├── arrays.xml │ │ └── strings.xml │ ├── values-km-rKH │ │ ├── arrays.xml │ │ └── strings.xml │ ├── values-kn-rIN │ │ ├── arrays.xml │ │ └── strings.xml │ ├── values-kn │ │ └── strings.xml │ ├── values-ko │ │ └── strings.xml │ ├── values-ku │ │ └── strings.xml │ ├── values-ky-rKG │ │ ├── arrays.xml │ │ └── strings.xml │ ├── values-lb │ │ └── strings.xml │ ├── values-lo-rLA │ │ ├── arrays.xml │ │ └── strings.xml │ ├── values-lu │ │ └── strings.xml │ ├── values-lv │ │ └── strings.xml │ ├── values-mk-rMK │ │ ├── arrays.xml │ │ └── strings.xml │ ├── values-ml-rIN │ │ ├── arrays.xml │ │ └── strings.xml │ ├── values-ml │ │ └── strings.xml │ ├── values-mn-rMN │ │ ├── arrays.xml │ │ └── strings.xml │ ├── values-mr-rIN │ │ ├── arrays.xml │ │ └── strings.xml │ ├── values-mr │ │ └── strings.xml │ ├── values-ms-rMY │ │ ├── arrays.xml │ │ └── strings.xml │ ├── values-my-rMM │ │ ├── arrays.xml │ │ └── strings.xml │ ├── values-my │ │ └── strings.xml │ ├── values-nb │ │ └── strings.xml │ ├── values-ne-rNP │ │ ├── arrays.xml │ │ └── strings.xml │ ├── values-nl │ │ └── strings.xml │ ├── values-oc-rFR │ │ ├── arrays.xml │ │ └── strings.xml │ ├── values-or │ │ └── strings.xml │ ├── values-pa-rIN │ │ ├── arrays.xml │ │ └── strings.xml │ ├── values-pl │ │ └── strings.xml │ ├── values-pt-rBR │ │ └── strings.xml │ ├── values-pt-rPT │ │ └── strings.xml │ ├── values-ro │ │ └── strings.xml │ ├── values-ru │ │ └── strings.xml │ ├── values-sc-rIT │ │ └── strings.xml │ ├── values-si-rLK │ │ ├── arrays.xml │ │ └── strings.xml │ ├── values-sk │ │ └── strings.xml │ ├── values-sl │ │ └── strings.xml │ ├── values-sq-rAL │ │ ├── arrays.xml │ │ └── strings.xml │ ├── values-sq │ │ └── strings.xml │ ├── values-sr-rCS │ │ ├── arrays.xml │ │ └── strings.xml │ ├── values-sr │ │ └── strings.xml │ ├── values-sv │ │ └── strings.xml │ ├── values-ta-rIN │ │ ├── arrays.xml │ │ └── strings.xml │ ├── values-ta │ │ └── strings.xml │ ├── values-te-rIN │ │ ├── arrays.xml │ │ └── strings.xml │ ├── values-te │ │ └── strings.xml │ ├── values-th │ │ └── strings.xml │ ├── values-tr │ │ └── strings.xml │ ├── values-ug │ │ └── strings.xml │ ├── values-uk │ │ └── strings.xml │ ├── values-ur-rPK │ │ ├── arrays.xml │ │ └── strings.xml │ ├── values-uz-rUZ │ │ ├── arrays.xml │ │ └── strings.xml │ ├── values-vi │ │ └── strings.xml │ ├── values-zh-rCN │ │ └── strings.xml │ ├── values-zh-rHK │ │ └── strings.xml │ ├── values-zh-rTW │ │ └── strings.xml │ ├── values │ │ ├── arrays.xml │ │ ├── config.xml │ │ ├── dimens.xml │ │ └── strings.xml │ └── xml │ │ └── screen_preferences.xml └── src │ └── org │ └── lineageos │ └── settings │ └── device │ ├── AdvancedDisplayActivity.java │ ├── AdvancedDisplayFragment.java │ ├── BootCompletedReceiver.java │ ├── Constants.java │ ├── mDNIeAccessibility.java │ └── mDNIeScenario.java ├── Android.bp ├── aidl ├── camera │ ├── common │ │ ├── Android.bp │ │ ├── CameraMetadata.cpp │ │ ├── CameraModule.cpp │ │ ├── CameraParameters.cpp │ │ ├── Exif.cpp │ │ ├── HandleImporter.cpp │ │ ├── SamsungCameraModule.cpp │ │ ├── SimpleThread.cpp │ │ ├── VendorTagDescriptor.cpp │ │ ├── include │ │ └── include_samsung │ │ │ └── SamsungCameraModule.h │ ├── device │ │ ├── Android.bp │ │ ├── CameraDevice.cpp │ │ ├── CameraDevice.h │ │ ├── CameraDeviceSession.cpp │ │ ├── CameraDeviceSession.h │ │ ├── convert.cpp │ │ └── convert.h │ ├── libhardware_headers │ │ ├── Android.bp │ │ └── include │ │ │ └── hardware │ │ │ ├── camera.h │ │ │ ├── camera3.h │ │ │ └── camera_common.h │ └── provider │ │ ├── Android.bp │ │ ├── CameraProvider.cpp │ │ ├── CameraProvider.h │ │ ├── android.hardware.camera.provider-service.samsung.rc │ │ ├── android.hardware.camera.provider-service.samsung.xml │ │ ├── android.hardware.camera.provider-service_32.samsung.rc │ │ └── service.cpp ├── fingerprint │ ├── Android.bp │ ├── CancellationSignal.cpp │ ├── CancellationSignal.h │ ├── Fingerprint.cpp │ ├── Fingerprint.h │ ├── Legacy2Aidl.h │ ├── LegacyHAL.cpp │ ├── LegacyHAL.h │ ├── LockoutTracker.cpp │ ├── LockoutTracker.h │ ├── Session.cpp │ ├── Session.h │ ├── VendorConstants.h │ ├── android.hardware.biometrics.fingerprint-service.samsung.rc │ ├── android.hardware.biometrics.fingerprint-service.samsung.xml │ ├── fingerprint.sysprop │ └── service.cpp ├── health │ ├── Android.bp │ ├── Health.cpp │ ├── android.hardware.health-service.samsung-recovery.rc │ ├── android.hardware.health-service.samsung.rc │ └── android.hardware.health-service.samsung.xml ├── light │ ├── Android.bp │ ├── Lights.cpp │ ├── Lights.h │ ├── android.hardware.light-service.samsung.rc │ ├── android.hardware.light-service.samsung.xml │ ├── samsung_lights.h │ └── service.cpp ├── memtrack │ ├── Android.bp │ ├── GpuSysfsReader.cpp │ ├── GpuSysfsReader.h │ ├── Memtrack.cpp │ ├── Memtrack.h │ ├── filesystem.cpp │ ├── filesystem.h │ ├── main.cpp │ ├── memtrack.rc │ └── memtrack.xml ├── powershare │ ├── Android.bp │ ├── PowerShare.cpp │ ├── PowerShare.h │ ├── samsung_powershare.h │ ├── service.cpp │ ├── vendor.lineage.powershare-service.samsung.rc │ └── vendor.lineage.powershare-service.samsung.xml ├── sensors │ ├── Android.bp │ ├── HalProxySamsung.cpp │ ├── HalProxySamsung.h │ ├── SensorHubWaitForMCUInit.cpp │ ├── android.hardware.sensors-samsung-multihal.xml │ ├── android.hardware.sensors-service.samsung-multihal.rc │ └── service.cpp ├── usb │ ├── Android.bp │ ├── Usb.cpp │ ├── Usb.h │ ├── android.hardware.usb-service.samsung.rc │ ├── android.hardware.usb-service.samsung.xml │ ├── gadget │ │ ├── Android.bp │ │ ├── UsbGadget.cpp │ │ ├── UsbGadget.h │ │ ├── android.hardware.usb.gadget-service.samsung.rc │ │ ├── android.hardware.usb.gadget-service.samsung.xml │ │ └── service_gadget.cpp │ └── service.cpp └── vibrator │ ├── Android.bp │ ├── Vibrator.cpp │ ├── Vibrator.h │ ├── android.hardware.vibrator-service.samsung.rc │ ├── android.hardware.vibrator-service.samsung.xml │ └── service.cpp ├── dap ├── Android.bp ├── AndroidManifest.xml ├── res │ ├── drawable │ │ ├── ic_dolby.xml │ │ └── ic_settings.xml │ ├── values-ast-rES │ │ └── strings.xml │ ├── values-az │ │ └── strings.xml │ ├── values-be │ │ └── strings.xml │ ├── values-bg │ │ └── strings.xml │ ├── values-ca │ │ └── strings.xml │ ├── values-cs │ │ └── strings.xml │ ├── values-cy │ │ └── strings.xml │ ├── values-de │ │ └── strings.xml │ ├── values-el │ │ └── strings.xml │ ├── values-en-rAU │ │ └── strings.xml │ ├── values-en-rCA │ │ └── strings.xml │ ├── values-en-rGB │ │ └── strings.xml │ ├── values-en-rIN │ │ └── strings.xml │ ├── values-es │ │ └── strings.xml │ ├── values-fa │ │ └── strings.xml │ ├── values-fr │ │ └── strings.xml │ ├── values-fur-rIT │ │ └── strings.xml │ ├── values-ga-rIE │ │ └── strings.xml │ ├── values-hu │ │ └── strings.xml │ ├── values-in │ │ └── strings.xml │ ├── values-is │ │ └── strings.xml │ ├── values-it │ │ └── strings.xml │ ├── values-ja │ │ └── strings.xml │ ├── values-ka │ │ └── strings.xml │ ├── values-ko │ │ └── strings.xml │ ├── values-nl │ │ └── strings.xml │ ├── values-pl │ │ └── strings.xml │ ├── values-pt-rBR │ │ └── strings.xml │ ├── values-pt-rPT │ │ └── strings.xml │ ├── values-ro │ │ └── strings.xml │ ├── values-ru │ │ └── strings.xml │ ├── values-sl │ │ └── strings.xml │ ├── values-sq │ │ └── strings.xml │ ├── values-sv │ │ └── strings.xml │ ├── values-ta │ │ └── strings.xml │ ├── values-tr │ │ └── strings.xml │ ├── values-vi │ │ └── strings.xml │ ├── values-zh-rCN │ │ └── strings.xml │ ├── values-zh-rTW │ │ └── strings.xml │ ├── values │ │ └── strings.xml │ └── xml │ │ └── dolby_settings.xml └── src │ └── org │ └── lineageos │ └── dap │ ├── BootCompletedReceiver.kt │ ├── DolbyActivity.kt │ ├── DolbyCore.kt │ ├── DolbyFragment.kt │ ├── DolbySearchIndexablesProvider.kt │ └── DolbyTile.kt ├── doze ├── Android.bp ├── AndroidManifest.xml ├── proguard.flags ├── res │ └── xml │ │ └── gesture_panel.xml └── src │ └── org │ └── lineageos │ └── settings │ └── doze │ ├── BootCompletedReceiver.java │ ├── SamsungDozeActivity.java │ ├── SamsungDozeService.java │ ├── SamsungDozeSettings.java │ └── Utils.java ├── dtbhtool ├── Android.bp ├── bootimg.h ├── dtbimg.c ├── dtbtool.txt ├── libdtbimg │ └── dtbimg.h ├── mkbootimg.c ├── mkdtbimg.c ├── samsung_dtbh.h ├── unpackbootimg.c └── unpackdtbhimg.c ├── fingerprint ├── Android.bp └── UdfpsExtension.cpp ├── hidl ├── camera │ ├── device │ │ ├── 3.2 │ │ │ └── default │ │ │ │ ├── Android.bp │ │ │ │ ├── CameraDevice.cpp │ │ │ │ ├── CameraDeviceSession.cpp │ │ │ │ ├── CameraDeviceSession.h │ │ │ │ ├── CameraDevice_3_2.h │ │ │ │ ├── convert.cpp │ │ │ │ └── include │ │ ├── 3.3 │ │ │ └── default │ │ │ │ ├── Android.bp │ │ │ │ ├── CameraDevice.cpp │ │ │ │ ├── CameraDeviceSession.cpp │ │ │ │ ├── CameraDeviceSession.h │ │ │ │ ├── CameraDevice_3_3.h │ │ │ │ ├── convert.cpp │ │ │ │ └── include │ │ ├── 3.4 │ │ │ └── default │ │ │ │ ├── Android.bp │ │ │ │ ├── CameraDevice.cpp │ │ │ │ ├── CameraDeviceSession.cpp │ │ │ │ ├── convert.cpp │ │ │ │ └── include │ │ └── 3.5 │ │ │ └── default │ │ │ ├── Android.bp │ │ │ ├── CameraDevice.cpp │ │ │ ├── CameraDeviceSession.cpp │ │ │ └── include │ └── provider │ │ ├── 2.4 │ │ ├── Android.bp │ │ ├── CameraProvider_2_4.h │ │ ├── LegacyCameraProviderImpl_2_4.cpp │ │ └── LegacyCameraProviderImpl_2_4.h │ │ └── 2.5 │ │ ├── Android.bp │ │ ├── CameraProvider_2_5.h │ │ ├── LegacyCameraProviderImpl_2_5.cpp │ │ ├── LegacyCameraProviderImpl_2_5.h │ │ ├── SamsungCameraProvider.cpp │ │ ├── SamsungCameraProvider.h │ │ ├── android.hardware.camera.provider@2.5-service.samsung.rc │ │ ├── android.hardware.camera.provider@2.5-service.samsung.xml │ │ ├── android.hardware.camera.provider@2.5-service_64.samsung.rc │ │ └── service.cpp ├── consumerir │ ├── Android.bp │ ├── ConsumerIr.cpp │ ├── ConsumerIr.h │ ├── android.hardware.ir@1.0-service.samsung.rc │ ├── samsung_ir.h │ └── service.cpp ├── fastcharge │ ├── Android.bp │ ├── FastCharge.cpp │ ├── FastCharge.h │ ├── samsung_fastcharge.h │ ├── service.cpp │ ├── vendor.lineage.fastcharge@1.0-service.samsung.rc │ └── vendor.lineage.fastcharge@1.0-service.samsung.xml ├── keymaster │ ├── Android.bp │ ├── android.hardware.keymaster@4.0-service.samsung.rc │ └── service.cpp ├── livedisplay │ ├── AdaptiveBacklight.cpp │ ├── AdaptiveBacklight.h │ ├── Android.bp │ ├── DisplayColorCalibration.cpp │ ├── DisplayColorCalibration.h │ ├── DisplayColorCalibrationExynos.cpp │ ├── DisplayColorCalibrationExynos.h │ ├── DisplayModes.cpp │ ├── DisplayModes.h │ ├── ReadingEnhancement.cpp │ ├── ReadingEnhancement.h │ ├── SunlightEnhancement.cpp │ ├── SunlightEnhancement.h │ ├── SunlightEnhancementExynos.cpp │ ├── SunlightEnhancementExynos.h │ ├── lineage.livedisplay@2.0-service.samsung-exynos.rc │ ├── lineage.livedisplay@2.0-service.samsung-qcom.rc │ ├── service.cpp │ ├── serviceExynos.cpp │ ├── vendor.lineage.livedisplay@2.0-service.samsung-exynos.rc │ └── vendor.lineage.livedisplay@2.0-service.samsung-qcom.rc ├── radio │ └── 1.3 │ │ ├── Android.bp │ │ ├── Radio.cpp │ │ ├── Radio.h │ │ ├── SecRadioIndication.cpp │ │ ├── SecRadioIndication.h │ │ ├── SecRadioResponse.cpp │ │ ├── SecRadioResponse.h │ │ ├── android.hardware.radio@1.3-radio-service.samsung.rc │ │ └── radio-service.cpp ├── sensors │ └── 1.0 │ │ ├── Android.bp │ │ ├── Sensors.cpp │ │ └── Sensors.h ├── touch │ ├── Android.bp │ ├── GloveMode.cpp │ ├── GloveMode.h │ ├── KeyDisabler.cpp │ ├── KeyDisabler.h │ ├── StylusMode.cpp │ ├── StylusMode.h │ ├── TouchscreenGesture.cpp │ ├── TouchscreenGesture.h │ ├── samsung_touch.h │ ├── service.cpp │ └── vendor.lineage.touch@1.0-service.samsung.rc └── vibrator │ └── haptic │ ├── Android.bp │ ├── Vibrator.cpp │ ├── Vibrator.h │ ├── android.hardware.vibrator@1.0-service.samsung-haptic.rc │ └── service.cpp ├── interfaces ├── Android.bp ├── current.txt └── radio │ ├── 1.2 │ ├── Android.bp │ ├── IRadio.hal │ ├── IRadioIndication.hal │ ├── IRadioResponse.hal │ └── types.hal │ ├── 2.0 │ ├── Android.bp │ ├── ISehRadio.hal │ ├── ISehRadioIndication.hal │ ├── ISehRadioResponse.hal │ └── types.hal │ ├── 2.1 │ ├── Android.bp │ ├── ISehRadio.hal │ ├── ISehRadioIndication.hal │ ├── ISehRadioResponse.hal │ └── types.hal │ ├── 2.2 │ ├── Android.bp │ ├── ISehRadio.hal │ ├── ISehRadioIndication.hal │ ├── ISehRadioResponse.hal │ └── types.hal │ └── network │ └── aidl │ ├── Android.bp │ ├── aidl_api │ └── vendor.samsung.hardware.radio.network │ │ ├── 1 │ │ ├── .hash │ │ └── vendor │ │ │ └── samsung │ │ │ └── hardware │ │ │ └── radio │ │ │ └── network │ │ │ ├── ISehRadioNetwork.aidl │ │ │ ├── ISehRadioNetworkIndication.aidl │ │ │ ├── ISehRadioNetworkResponse.aidl │ │ │ ├── SehArfcnInfo.aidl │ │ │ ├── SehCallDetails.aidl │ │ │ ├── SehCsgInfo.aidl │ │ │ ├── SehEriInfo.aidl │ │ │ ├── SehExtendedRegStateResult.aidl │ │ │ ├── SehOperatorInfo.aidl │ │ │ ├── SehPreferredNetworkInfo.aidl │ │ │ ├── SehRadioResponseInfo.aidl │ │ │ ├── SehRoamingNetworkInfo.aidl │ │ │ ├── SehSignalBar.aidl │ │ │ └── SehVendorConfiguration.aidl │ │ └── current │ │ └── vendor │ │ └── samsung │ │ └── hardware │ │ └── radio │ │ └── network │ │ ├── ISehRadioNetwork.aidl │ │ ├── ISehRadioNetworkIndication.aidl │ │ ├── ISehRadioNetworkResponse.aidl │ │ ├── SehArfcnInfo.aidl │ │ ├── SehCallDetails.aidl │ │ ├── SehCsgInfo.aidl │ │ ├── SehEriInfo.aidl │ │ ├── SehExtendedRegStateResult.aidl │ │ ├── SehOperatorInfo.aidl │ │ ├── SehPreferredNetworkInfo.aidl │ │ ├── SehRadioResponseInfo.aidl │ │ ├── SehRoamingNetworkInfo.aidl │ │ ├── SehSignalBar.aidl │ │ └── SehVendorConfiguration.aidl │ └── vendor │ └── samsung │ └── hardware │ └── radio │ └── network │ ├── ISehRadioNetwork.aidl │ ├── ISehRadioNetworkIndication.aidl │ ├── ISehRadioNetworkResponse.aidl │ ├── SehArfcnInfo.aidl │ ├── SehCallDetails.aidl │ ├── SehCsgInfo.aidl │ ├── SehEriInfo.aidl │ ├── SehExtendedRegStateResult.aidl │ ├── SehOperatorInfo.aidl │ ├── SehPreferredNetworkInfo.aidl │ ├── SehRadioResponseInfo.aidl │ ├── SehRoamingNetworkInfo.aidl │ ├── SehSignalBar.aidl │ └── SehVendorConfiguration.aidl ├── loki_tool ├── Android.bp ├── LICENSE.txt ├── Makefile ├── README.txt ├── loki.h ├── loki_find.c ├── loki_flash.c ├── loki_patch.c ├── loki_unlok.c └── main.c ├── mkbootimg.mk ├── rebalance_interrupts ├── Android.bp ├── rebalance_interrupts-samsung.rc └── rebalance_interrupts.cpp ├── ril ├── secril_config_svc │ ├── Android.bp │ └── secril_config_svc.cpp ├── secril_multi │ └── Oem_ril_sap.h └── sehradiomanager │ ├── Android.bp │ ├── aidl │ ├── SehRadioNetworkIndication.cpp │ ├── SehRadioNetworkIndication.h │ ├── SehRadioNetworkResponse.cpp │ └── SehRadioNetworkResponse.h │ ├── hidl │ ├── SehRadioIndication.cpp │ ├── SehRadioIndication.h │ ├── SehRadioResponse.cpp │ └── SehRadioResponse.h │ ├── sehradiomanager.cpp │ └── sehradiomanager.rc ├── sensors ├── Android.bp ├── Sensor.cpp ├── Sensor.h ├── SensorsSubHal.cpp └── SensorsSubHal.h └── vintf └── samsung_framework_compatibility_matrix.xml /.clang-format: -------------------------------------------------------------------------------- 1 | ../../build/soong/scripts/system-clang-format -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | /nfc 2 | -------------------------------------------------------------------------------- /AdvancedDisplay/Android.bp: -------------------------------------------------------------------------------- 1 | // 2 | // Copyright (C) 2020-2021 The LineageOS Project 3 | // 4 | // SPDX-License-Identifier: Apache-2.0 5 | // 6 | 7 | android_app { 8 | name: "AdvancedDisplay", 9 | 10 | srcs: ["src/**/*.java"], 11 | 12 | certificate: "platform", 13 | platform_apis: true, 14 | 15 | static_libs: [ 16 | "org.lineageos.platform.internal", 17 | "org.lineageos.settings.resources", 18 | ], 19 | 20 | optimize: { 21 | proguard_flags_files: ["proguard.flags"], 22 | }, 23 | } 24 | -------------------------------------------------------------------------------- /AdvancedDisplay/proguard.flags: -------------------------------------------------------------------------------- 1 | -keepclasseswithmembers class * { 2 | public (android.content.Context, android.util.AttributeSet); 3 | } 4 | 5 | -keep class ** extends android.support.v14.preference.PreferenceFragment 6 | -------------------------------------------------------------------------------- /AdvancedDisplay/res/drawable/ic_settings_advanced_display.xml: -------------------------------------------------------------------------------- 1 | 2 | 17 | 22 | 23 | 25 | 30 | 31 | -------------------------------------------------------------------------------- /AdvancedDisplay/res/layout/framelayout.xml: -------------------------------------------------------------------------------- 1 | 5 | 6 | -------------------------------------------------------------------------------- /AdvancedDisplay/res/values-af/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 18 | 19 | Gevorderde skerm 20 | Skerm 21 | Kleure 22 | Scenario 23 | Stel die mDNIe scenario 24 | 25 | -------------------------------------------------------------------------------- /AdvancedDisplay/res/values-as/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 18 | 19 | উন্নত প্রদর্শন 20 | স্ক্ৰীণ 21 | ৰংসমূহ 22 | দৃশ্যপট 23 | mDNIe দৃশ্যপট ছেট কৰক 24 | 25 | -------------------------------------------------------------------------------- /AdvancedDisplay/res/values-bn-rBD/arrays.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 18 | 19 | -------------------------------------------------------------------------------- /AdvancedDisplay/res/values-bn-rBD/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 18 | 19 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /AdvancedDisplay/res/values-bs-rBA/arrays.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 18 | 19 | -------------------------------------------------------------------------------- /AdvancedDisplay/res/values-bs-rBA/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 18 | 19 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /AdvancedDisplay/res/values-bs/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 18 | 19 | Ekran 20 | Boje 21 | 22 | -------------------------------------------------------------------------------- /AdvancedDisplay/res/values-csb-rPL/arrays.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 18 | 19 | -------------------------------------------------------------------------------- /AdvancedDisplay/res/values-csb-rPL/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 18 | 19 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /AdvancedDisplay/res/values-eo/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 18 | 19 | Koloroj 20 | 21 | -------------------------------------------------------------------------------- /AdvancedDisplay/res/values-et-rEE/arrays.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 18 | 19 | 20 | LineageOS (default) 21 | UI 22 | Video 23 | Video soe 24 | Video külm 25 | Kaamera 26 | Navigeerimine 27 | Galerii 28 | VT 29 | 30 | 31 | Normaalne 32 | Negatiivne 33 | 34 | 35 | -------------------------------------------------------------------------------- /AdvancedDisplay/res/values-fil-rPH/arrays.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 18 | 19 | -------------------------------------------------------------------------------- /AdvancedDisplay/res/values-fil-rPH/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 18 | 19 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /AdvancedDisplay/res/values-frp-rIT/arrays.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 18 | 19 | -------------------------------------------------------------------------------- /AdvancedDisplay/res/values-frp-rIT/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 18 | 19 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /AdvancedDisplay/res/values-gd-rGB/arrays.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 18 | 19 | -------------------------------------------------------------------------------- /AdvancedDisplay/res/values-gd-rGB/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 18 | 19 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /AdvancedDisplay/res/values-gl-rES/arrays.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 18 | 19 | 20 | LineageOS (predefiniso) 21 | IU 22 | Vídeo 23 | Vídeo cálido 24 | Vídeo frío 25 | Cámara 26 | Navegación 27 | Galería 28 | VT 29 | 30 | 31 | Normal 32 | Invertido 33 | 34 | 35 | -------------------------------------------------------------------------------- /AdvancedDisplay/res/values-gu-rIN/arrays.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 18 | 19 | 20 | LineageOS (default) 21 | UI 22 | વિડિઓ 23 | વિડિઓ વૉર્મ 24 | વિડિઓ કોલ્ડ 25 | કૅમેરો 26 | નાવિક વિદ્યા 27 | ગેલેરી 28 | VT 29 | 30 | 31 | સામાન્ય 32 | ઉલટાવેલ 33 | 34 | 35 | -------------------------------------------------------------------------------- /AdvancedDisplay/res/values-gu/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 18 | 19 | ઍડવાન્સ્ડ ડિસ્પ્લે 20 | સ્ક્રીન 21 | રંગો 22 | દ્રશ્ય 23 | mDNIe દ્રશ્ય સેટ કરો 24 | 25 | -------------------------------------------------------------------------------- /AdvancedDisplay/res/values-hr/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 18 | 19 | Napredni zaslon 20 | Zaslon 21 | Boje 22 | Scenarij 23 | Podesite mDNIe scenarij 24 | 25 | -------------------------------------------------------------------------------- /AdvancedDisplay/res/values-hy-rAM/arrays.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 18 | 19 | -------------------------------------------------------------------------------- /AdvancedDisplay/res/values-hy-rAM/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 18 | 19 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /AdvancedDisplay/res/values-is-rIS/arrays.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 18 | 19 | -------------------------------------------------------------------------------- /AdvancedDisplay/res/values-is-rIS/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 18 | 19 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /AdvancedDisplay/res/values-ka-rGE/arrays.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 18 | 19 | -------------------------------------------------------------------------------- /AdvancedDisplay/res/values-ka-rGE/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 18 | 19 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /AdvancedDisplay/res/values-kk-rKZ/arrays.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 18 | 19 | -------------------------------------------------------------------------------- /AdvancedDisplay/res/values-kk-rKZ/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 18 | 19 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /AdvancedDisplay/res/values-km-rKH/arrays.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 18 | 19 | -------------------------------------------------------------------------------- /AdvancedDisplay/res/values-km-rKH/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 18 | 19 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /AdvancedDisplay/res/values-kn-rIN/arrays.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 18 | 19 | 20 | LineageOS (default) 21 | UI 22 | ವೀಡಿಯೋ 23 | ವೀಡಿಯೋ ಬೆಚ್ಚನೆ 24 | ವೀಡಿಯೋ ತಣ್ಣನೆ 25 | ಕ್ಯಾಮೆರಾ 26 | ನಾವಿಗೇಶನ್ 27 | ಗ್ಯಾಲರಿ 28 | VT 29 | 30 | 31 | ಸಾಧಾರಣ 32 | ಇನ್ವರ್ಟೆಡ್ 33 | 34 | 35 | -------------------------------------------------------------------------------- /AdvancedDisplay/res/values-ku/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 18 | 19 | پیشاندانی پێشکه‌وتوو 20 | شاشە 21 | ڕه‌نگه‌کان 22 | سیناریۆ 23 | دانانی دۆخی mDNIe سیناریۆ 24 | 25 | -------------------------------------------------------------------------------- /AdvancedDisplay/res/values-ky-rKG/arrays.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 18 | 19 | -------------------------------------------------------------------------------- /AdvancedDisplay/res/values-ky-rKG/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 18 | 19 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /AdvancedDisplay/res/values-lb/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 18 | 19 | Erweiderte Schierm 20 | Schierm 21 | Faarwen 22 | Zeenario 23 | mDNIe-Zeenario auswielen 24 | 25 | -------------------------------------------------------------------------------- /AdvancedDisplay/res/values-lo-rLA/arrays.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 18 | 19 | -------------------------------------------------------------------------------- /AdvancedDisplay/res/values-lo-rLA/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 18 | 19 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /AdvancedDisplay/res/values-lu/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 18 | 19 | Erweiderte Schierm 20 | Schierm 21 | Faarwen 22 | Zeenario 23 | mDNIe-Zeenario auswielen 24 | 25 | -------------------------------------------------------------------------------- /AdvancedDisplay/res/values-lv/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 18 | 19 | Papildu displejs 20 | Ekrāns 21 | Krāsas 22 | Scenārijs 23 | Uzstādīt mDNIe scenāriju 24 | 25 | -------------------------------------------------------------------------------- /AdvancedDisplay/res/values-mk-rMK/arrays.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 18 | 19 | -------------------------------------------------------------------------------- /AdvancedDisplay/res/values-mk-rMK/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 18 | 19 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /AdvancedDisplay/res/values-ml/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 18 | 19 | വികസിത ഡിസ്പ്ലേ 20 | സ്ക്രീൻ 21 | നിറങ്ങൾ 22 | അവസ്ഥ 23 | mDNle അവസ്ഥ സജ്ജമാക്കാൻ 24 | 25 | -------------------------------------------------------------------------------- /AdvancedDisplay/res/values-mn-rMN/arrays.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 18 | 19 | -------------------------------------------------------------------------------- /AdvancedDisplay/res/values-mn-rMN/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 18 | 19 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /AdvancedDisplay/res/values-mr/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 18 | 19 | प्रगत प्रदर्शन 20 | स्क्रीन 21 | रंग 22 | परिस्थिती 23 | mDNIe परिस्थिती सेट करा 24 | 25 | -------------------------------------------------------------------------------- /AdvancedDisplay/res/values-ms-rMY/arrays.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 18 | 19 | -------------------------------------------------------------------------------- /AdvancedDisplay/res/values-ms-rMY/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 18 | 19 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /AdvancedDisplay/res/values-my-rMM/arrays.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 18 | 19 | -------------------------------------------------------------------------------- /AdvancedDisplay/res/values-my-rMM/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 18 | 19 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /AdvancedDisplay/res/values-my/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 18 | 19 | မျက်နှာပြင် 20 | အရောင်များ 21 | ဇာတ်ညွှန်း 22 | 23 | -------------------------------------------------------------------------------- /AdvancedDisplay/res/values-nb/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 18 | 19 | Avansert visning 20 | Skjerm 21 | Farger 22 | Scenario 23 | Angi mDNIe scenariet 24 | 25 | -------------------------------------------------------------------------------- /AdvancedDisplay/res/values-ne-rNP/arrays.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 18 | 19 | -------------------------------------------------------------------------------- /AdvancedDisplay/res/values-ne-rNP/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 18 | 19 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /AdvancedDisplay/res/values-oc-rFR/arrays.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 18 | 19 | -------------------------------------------------------------------------------- /AdvancedDisplay/res/values-oc-rFR/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 18 | 19 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /AdvancedDisplay/res/values-or/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 18 | 19 | ଉନ୍ନତ ଡିସ୍‍ପ୍ଲେ 20 | ସ୍କ୍ରିନ୍ 21 | ରଙ୍ଗଗୁଡିକ 22 | ଦୃଶ୍ୟପଟ 23 | mDNIe ଦୃଶ୍ୟପଟ ସେଟ୍‍ କରନ୍ତୁ 24 | 25 | -------------------------------------------------------------------------------- /AdvancedDisplay/res/values-pa-rIN/arrays.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 18 | 19 | -------------------------------------------------------------------------------- /AdvancedDisplay/res/values-pa-rIN/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 18 | 19 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /AdvancedDisplay/res/values-sc-rIT/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 18 | 19 | Ischermu 20 | Colores 21 | Tonu vìdeu callente 22 | 23 | -------------------------------------------------------------------------------- /AdvancedDisplay/res/values-si-rLK/arrays.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 18 | 19 | -------------------------------------------------------------------------------- /AdvancedDisplay/res/values-si-rLK/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 18 | 19 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /AdvancedDisplay/res/values-sq-rAL/arrays.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 18 | 19 | 20 | LineageOS (default) 21 | UI 22 | Video 23 | Video e ngrohtë 24 | Video e ftohtë 25 | Kamera 26 | Lundrimi 27 | Galeria 28 | VT 29 | 30 | 31 | Normal 32 | Negativi 33 | 34 | 35 | -------------------------------------------------------------------------------- /AdvancedDisplay/res/values-sr-rCS/arrays.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 18 | 19 | -------------------------------------------------------------------------------- /AdvancedDisplay/res/values-sr-rCS/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 18 | 19 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /AdvancedDisplay/res/values-te-rIN/arrays.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 18 | 19 | 20 | LineageOS (default) 21 | UI 22 | వీడియో 23 | వీడియో వేడి 24 | వీడియో చల్లదనం 25 | కెమెరా 26 | నావిగేషన్ 27 | గ్యాలరీ 28 | VT 29 | 30 | 31 | సాధారణం 32 | తిరగబడిన 33 | 34 | 35 | -------------------------------------------------------------------------------- /AdvancedDisplay/res/values-te/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 18 | 19 | అధునాతన ప్రదర్శన 20 | స్క్రీన్ 21 | రంగులు 22 | దృశ్యవివరణ 23 | mDNIe దృశ్యవివరణను సెట్ చేయుము 24 | 25 | -------------------------------------------------------------------------------- /AdvancedDisplay/res/values-ug/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 18 | 19 | ئالىي ئېكران 20 | ئېكران 21 | رەڭلەر 22 | كۆرۈنۈش 23 | mDNIe لايىھە تەڭشىكى 24 | 25 | -------------------------------------------------------------------------------- /AdvancedDisplay/res/values-ur-rPK/arrays.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 18 | 19 | -------------------------------------------------------------------------------- /AdvancedDisplay/res/values-ur-rPK/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 18 | 19 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /AdvancedDisplay/res/values-uz-rUZ/arrays.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 18 | 19 | -------------------------------------------------------------------------------- /AdvancedDisplay/res/values-uz-rUZ/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 18 | 19 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /AdvancedDisplay/res/values-zh-rHK/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 18 | 19 | 螢幕 20 | 場景 21 | 設定 mDNIe 場景 22 | 23 | -------------------------------------------------------------------------------- /AdvancedDisplay/res/values/config.xml: -------------------------------------------------------------------------------- 1 | 2 | 16 | 17 | 19 | 20 | 21 | 22 | "/sys/class/mdnie/mdnie/scenario" 23 | "/sys/class/mdnie/mdnie/negative" 24 | 25 | 26 | -------------------------------------------------------------------------------- /AdvancedDisplay/res/values/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | 17 | 18 | 19 | 72dp 20 | 21 | 0dip 22 | 23 | -------------------------------------------------------------------------------- /AdvancedDisplay/res/xml/screen_preferences.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 7 | 8 | 9 | 16 | 17 | 18 | 25 | 26 | 27 | 28 | -------------------------------------------------------------------------------- /AdvancedDisplay/src/org/lineageos/settings/device/AdvancedDisplayActivity.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2018,2022 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.device; 18 | 19 | import android.os.Bundle; 20 | 21 | import com.android.settingslib.collapsingtoolbar.CollapsingToolbarBaseActivity; 22 | 23 | public class AdvancedDisplayActivity extends CollapsingToolbarBaseActivity { 24 | 25 | protected void onCreate(Bundle savedInstanceState) { 26 | super.onCreate(savedInstanceState); 27 | 28 | getFragmentManager().beginTransaction().replace( 29 | com.android.settingslib.collapsingtoolbar.R.id.content_frame, 30 | new AdvancedDisplayFragment()).commit(); 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /AdvancedDisplay/src/org/lineageos/settings/device/BootCompletedReceiver.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2012 The CyanogenMod Project 3 | * 2017 The LineageOS Project 4 | * 5 | * Licensed under the Apache License, Version 2.0 (the "License"); 6 | * you may not use this file except in compliance with the License. 7 | * You may obtain a copy of the License at 8 | * 9 | * http://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | package org.lineageos.settings.device; 19 | 20 | import android.content.BroadcastReceiver; 21 | import android.content.Context; 22 | import android.content.Intent; 23 | 24 | public class BootCompletedReceiver extends BroadcastReceiver { 25 | 26 | @Override 27 | public void onReceive(Context context, Intent intent) { 28 | mDNIeScenario.restore(context); 29 | mDNIeAccessibility.restore(context); 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /AdvancedDisplay/src/org/lineageos/settings/device/Constants.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2017 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.device; 18 | 19 | public class Constants { 20 | static final String KEY_MDNIE_SCENARIO = "mdnie_scenario"; 21 | static final String KEY_MDNIE_ACCESSIBILITY = "mdnie_accessibility"; 22 | } 23 | -------------------------------------------------------------------------------- /Android.bp: -------------------------------------------------------------------------------- 1 | soong_namespace { 2 | imports: [ 3 | "hardware/google/pixel", 4 | "hardware/google/interfaces", 5 | ], 6 | } 7 | 8 | soong_config_module_type { 9 | name: "samsung_header_path", 10 | module_type: "cc_defaults", 11 | config_namespace: "samsungVars", 12 | value_variables: ["target_specific_header_path"], 13 | properties: ["include_dirs"], 14 | } 15 | 16 | samsung_header_path { 17 | name: "samsung_header_path_defaults", 18 | soong_config_variables: { 19 | target_specific_header_path: { 20 | include_dirs: ["%s"], 21 | }, 22 | }, 23 | } 24 | -------------------------------------------------------------------------------- /aidl/camera/common/CameraMetadata.cpp: -------------------------------------------------------------------------------- 1 | ../../../../../hardware/interfaces/camera/common/default/CameraMetadata.cpp -------------------------------------------------------------------------------- /aidl/camera/common/CameraModule.cpp: -------------------------------------------------------------------------------- 1 | ../../../../../hardware/interfaces/camera/common/default/CameraModule.cpp -------------------------------------------------------------------------------- /aidl/camera/common/CameraParameters.cpp: -------------------------------------------------------------------------------- 1 | ../../../../../hardware/interfaces/camera/common/default/CameraParameters.cpp -------------------------------------------------------------------------------- /aidl/camera/common/Exif.cpp: -------------------------------------------------------------------------------- 1 | ../../../../../hardware/interfaces/camera/common/default/Exif.cpp -------------------------------------------------------------------------------- /aidl/camera/common/HandleImporter.cpp: -------------------------------------------------------------------------------- 1 | ../../../../../hardware/interfaces/camera/common/default/HandleImporter.cpp -------------------------------------------------------------------------------- /aidl/camera/common/SamsungCameraModule.cpp: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2024 The LineageOS Project 3 | * 4 | * SPDX-License-Identifier: Apache-2.0 5 | */ 6 | 7 | #define LOG_TAG "CamComm1.0-SamsungCamModule" 8 | #define ATRACE_TAG ATRACE_TAG_CAMERA 9 | 10 | #include 11 | #include 12 | 13 | namespace android { 14 | namespace hardware { 15 | namespace camera { 16 | namespace common { 17 | namespace helper { 18 | 19 | SamsungCameraModule::SamsungCameraModule(camera_module_t* module) 20 | : CameraModule(module), mModule(module) {} 21 | 22 | SamsungCameraModule::~SamsungCameraModule() {} 23 | 24 | bool SamsungCameraModule::isSetTorchModeStrengthSupported() { 25 | return isSetTorchModeSupported() && mModule->set_torch_mode_strength != NULL; 26 | } 27 | 28 | int SamsungCameraModule::setTorchModeStrength(const char* camera_id, bool enable, int strength) { 29 | int res = INVALID_OPERATION; 30 | if (mModule->set_torch_mode_strength != NULL) { 31 | ATRACE_BEGIN("camera_module->set_torch_mode_strength"); 32 | res = mModule->set_torch_mode_strength(camera_id, enable, strength); 33 | ATRACE_END(); 34 | } 35 | return res; 36 | } 37 | 38 | } // namespace helper 39 | } // namespace common 40 | } // namespace camera 41 | } // namespace hardware 42 | } // namespace android 43 | -------------------------------------------------------------------------------- /aidl/camera/common/SimpleThread.cpp: -------------------------------------------------------------------------------- 1 | ../../../../../hardware/interfaces/camera/common/default/SimpleThread.cpp -------------------------------------------------------------------------------- /aidl/camera/common/VendorTagDescriptor.cpp: -------------------------------------------------------------------------------- 1 | ../../../../../hardware/interfaces/camera/common/default/VendorTagDescriptor.cpp -------------------------------------------------------------------------------- /aidl/camera/common/include: -------------------------------------------------------------------------------- 1 | ../../../../../hardware/interfaces/camera/common/default/include -------------------------------------------------------------------------------- /aidl/camera/common/include_samsung/SamsungCameraModule.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2024 The LineageOS Project 3 | * 4 | * SPDX-License-Identifier: Apache-2.0 5 | */ 6 | 7 | #pragma once 8 | 9 | #include 10 | 11 | namespace android { 12 | namespace hardware { 13 | namespace camera { 14 | namespace common { 15 | namespace helper { 16 | 17 | class SamsungCameraModule : public CameraModule { 18 | public: 19 | explicit SamsungCameraModule(camera_module_t* module); 20 | virtual ~SamsungCameraModule(); 21 | 22 | bool isSetTorchModeStrengthSupported(); 23 | int setTorchModeStrength(const char* camera_id, bool enable, int strength); 24 | 25 | private: 26 | camera_module_t* mModule; 27 | }; 28 | 29 | } // namespace helper 30 | } // namespace common 31 | } // namespace camera 32 | } // namespace hardware 33 | } // namespace android 34 | -------------------------------------------------------------------------------- /aidl/camera/device/Android.bp: -------------------------------------------------------------------------------- 1 | // 2 | // Copyright (C) 2024 The LineageOS Project 3 | // 4 | // SPDX-License-Identifier: Apache-2.0 5 | // 6 | 7 | cc_library_shared { 8 | name: "camera.device-impl.samsung", 9 | defaults: [ 10 | "android.hardware.graphics.common-ndk_shared", 11 | "samsung_camera3_defaults", 12 | ], 13 | vendor: true, 14 | srcs: [ 15 | "CameraDevice.cpp", 16 | "CameraDeviceSession.cpp", 17 | "convert.cpp", 18 | ], 19 | shared_libs: [ 20 | "android.hardware.camera.common-V1-ndk", 21 | "android.hardware.camera.device-V1-ndk", 22 | "libbinder_ndk", 23 | "libcamera_metadata", 24 | "libcutils", 25 | "libfmq", 26 | "libgralloctypes", 27 | "libhidlbase", 28 | "liblog", 29 | "libui", 30 | "libutils", 31 | ], 32 | static_libs: [ 33 | "android.hardware.camera.common-helper.samsung", 34 | "libaidlcommonsupport", 35 | ], 36 | header_libs: [ 37 | "libhardware_headers.camera3_samsung", 38 | ], 39 | export_include_dirs: ["."], 40 | } 41 | -------------------------------------------------------------------------------- /aidl/camera/libhardware_headers/Android.bp: -------------------------------------------------------------------------------- 1 | soong_config_module_type { 2 | name: "samsung_camera3", 3 | module_type: "cc_defaults", 4 | config_namespace: "samsungCameraVars", 5 | bool_variables: [ 6 | "needs_sec_get_cam_pos_v1", 7 | "needs_sec_get_cam_pos_v2", 8 | "needs_sec_reserved_field", 9 | "usage_64bit", 10 | ], 11 | properties: ["cflags"], 12 | } 13 | 14 | samsung_camera3 { 15 | name: "samsung_camera3_defaults", 16 | soong_config_variables: { 17 | needs_sec_get_cam_pos_v1: { 18 | cflags: ["-DCAMERA_NEEDS_SEC_GET_CAM_POS_V1"], 19 | }, 20 | needs_sec_get_cam_pos_v2: { 21 | cflags: ["-DCAMERA_NEEDS_SEC_GET_CAM_POS_V2"], 22 | }, 23 | needs_sec_reserved_field: { 24 | cflags: ["-DCAMERA_NEEDS_SEC_RESERVED_FIELD"], 25 | }, 26 | usage_64bit: { 27 | cflags: ["-DCAMERA_64BIT_USAGE"], 28 | }, 29 | }, 30 | } 31 | 32 | cc_library_headers { 33 | name: "libhardware_headers.camera3_samsung", 34 | export_include_dirs: ["include"], 35 | vendor_available: true, 36 | } 37 | -------------------------------------------------------------------------------- /aidl/camera/libhardware_headers/include/hardware/camera.h: -------------------------------------------------------------------------------- 1 | ../../../../../../../hardware/libhardware/include/hardware/camera.h -------------------------------------------------------------------------------- /aidl/camera/provider/android.hardware.camera.provider-service.samsung.rc: -------------------------------------------------------------------------------- 1 | service vendor.camera.provider /vendor/bin/hw/android.hardware.camera.provider-service.samsung 2 | interface aidl android.hardware.camera.provider.ICameraProvider/internal/0 3 | class hal 4 | user cameraserver 5 | group audio camera input drmrpc usb 6 | ioprio rt 4 7 | capabilities SYS_NICE 8 | task_profiles CameraServiceCapacity MaxPerformance 9 | -------------------------------------------------------------------------------- /aidl/camera/provider/android.hardware.camera.provider-service.samsung.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | android.hardware.camera.provider 4 | 1 5 | ICameraProvider/internal/0 6 | 7 | 8 | -------------------------------------------------------------------------------- /aidl/camera/provider/android.hardware.camera.provider-service_32.samsung.rc: -------------------------------------------------------------------------------- 1 | service vendor.camera.provider /vendor/bin/hw/android.hardware.camera.provider-service_32.samsung 2 | interface aidl android.hardware.camera.provider.ICameraProvider/internal/0 3 | class hal 4 | user cameraserver 5 | group audio camera input drmrpc usb 6 | ioprio rt 4 7 | capabilities SYS_NICE 8 | task_profiles CameraServiceCapacity MaxPerformance 9 | -------------------------------------------------------------------------------- /aidl/fingerprint/Android.bp: -------------------------------------------------------------------------------- 1 | // 2 | // Copyright (C) 2024 The LineageOS Project 3 | // 4 | // SPDX-License-Identifier: Apache-2.0 5 | // 6 | 7 | cc_binary { 8 | name: "android.hardware.biometrics.fingerprint-service.samsung", 9 | relative_install_path: "hw", 10 | init_rc: ["android.hardware.biometrics.fingerprint-service.samsung.rc"], 11 | vintf_fragments: ["android.hardware.biometrics.fingerprint-service.samsung.xml"], 12 | srcs: [ 13 | "CancellationSignal.cpp", 14 | "Fingerprint.cpp", 15 | "LegacyHAL.cpp", 16 | "LockoutTracker.cpp", 17 | "Session.cpp", 18 | "service.cpp", 19 | ], 20 | shared_libs: [ 21 | "libbase", 22 | "libbinder_ndk", 23 | "libhardware", 24 | "android.hardware.biometrics.fingerprint-V4-ndk", 25 | "android.hardware.biometrics.common-V4-ndk", 26 | "android.hardware.biometrics.common.util", 27 | ], 28 | static_libs: ["libandroid.hardware.biometrics.fingerprint.SamsungProps"], 29 | vendor: true, 30 | } 31 | 32 | sysprop_library { 33 | name: "android.hardware.biometrics.fingerprint.SamsungProps", 34 | srcs: ["fingerprint.sysprop"], 35 | property_owner: "Vendor", 36 | vendor: true, 37 | } 38 | -------------------------------------------------------------------------------- /aidl/fingerprint/CancellationSignal.cpp: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2024 The LineageOS Project 3 | * 4 | * SPDX-License-Identifier: Apache-2.0 5 | */ 6 | 7 | #include "CancellationSignal.h" 8 | 9 | namespace aidl { 10 | namespace android { 11 | namespace hardware { 12 | namespace biometrics { 13 | namespace fingerprint { 14 | 15 | CancellationSignal::CancellationSignal(Session* session) 16 | : mSession(session) { 17 | } 18 | 19 | ndk::ScopedAStatus CancellationSignal::cancel() { 20 | return mSession->cancel(); 21 | } 22 | 23 | } // namespace fingerprint 24 | } // namespace biometrics 25 | } // namespace hardware 26 | } // namespace android 27 | } // namespace aidl 28 | -------------------------------------------------------------------------------- /aidl/fingerprint/CancellationSignal.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2024 The LineageOS Project 3 | * 4 | * SPDX-License-Identifier: Apache-2.0 5 | */ 6 | 7 | #pragma once 8 | 9 | #include 10 | 11 | #include "Session.h" 12 | 13 | using ::aidl::android::hardware::biometrics::common::BnCancellationSignal; 14 | 15 | namespace aidl { 16 | namespace android { 17 | namespace hardware { 18 | namespace biometrics { 19 | namespace fingerprint { 20 | 21 | class CancellationSignal : public BnCancellationSignal { 22 | public: 23 | CancellationSignal(Session* session); 24 | ndk::ScopedAStatus cancel() override; 25 | 26 | private: 27 | Session* mSession; 28 | }; 29 | 30 | } // namespace fingerprint 31 | } // namespace biometrics 32 | } // namespace hardware 33 | } // namespace android 34 | } // namespace aidl 35 | -------------------------------------------------------------------------------- /aidl/fingerprint/LockoutTracker.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2024 The LineageOS Project 3 | * 4 | * SPDX-License-Identifier: Apache-2.0 5 | */ 6 | 7 | #pragma once 8 | 9 | namespace aidl { 10 | namespace android { 11 | namespace hardware { 12 | namespace biometrics { 13 | namespace fingerprint { 14 | 15 | #define LOCKOUT_TIMED_THRESHOLD 5 16 | #define LOCKOUT_TIMED_DURATION 30 * 1000 17 | #define LOCKOUT_PERMANENT_THRESHOLD 20 18 | 19 | enum class LockoutMode { 20 | NONE, 21 | TIMED, 22 | PERMANENT 23 | }; 24 | 25 | class LockoutTracker { 26 | public: 27 | void reset(bool clearAttemptCounter); 28 | LockoutMode getMode(); 29 | void addFailedAttempt(); 30 | int64_t getLockoutTimeLeft(); 31 | 32 | private: 33 | int32_t mFailedCount = 0; 34 | int64_t mLockoutTimedStart; 35 | LockoutMode mCurrentMode; 36 | }; 37 | 38 | } // namespace fingerprint 39 | } // namespace biometrics 40 | } // namespace hardware 41 | } // namespace android 42 | } // namespace aidl 43 | -------------------------------------------------------------------------------- /aidl/fingerprint/android.hardware.biometrics.fingerprint-service.samsung.rc: -------------------------------------------------------------------------------- 1 | service vendor.fingerprint-default /vendor/bin/hw/android.hardware.biometrics.fingerprint-service.samsung 2 | class hal 3 | user system 4 | group system input uhid 5 | shutdown critical 6 | -------------------------------------------------------------------------------- /aidl/fingerprint/android.hardware.biometrics.fingerprint-service.samsung.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | android.hardware.biometrics.fingerprint 4 | 4 5 | IFingerprint/default 6 | 7 | 8 | -------------------------------------------------------------------------------- /aidl/fingerprint/service.cpp: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2024 The LineageOS Project 3 | * 4 | * SPDX-License-Identifier: Apache-2.0 5 | */ 6 | 7 | #include "Fingerprint.h" 8 | 9 | #include 10 | #include 11 | #include 12 | 13 | using ::aidl::android::hardware::biometrics::fingerprint::Fingerprint; 14 | 15 | int main() { 16 | ABinderProcess_setThreadPoolMaxThreadCount(0); 17 | std::shared_ptr fingerprint = ndk::SharedRefBase::make(); 18 | 19 | const std::string instance = std::string() + Fingerprint::descriptor + "/default"; 20 | binder_status_t status = AServiceManager_addService(fingerprint->asBinder().get(), instance.c_str()); 21 | CHECK(status == STATUS_OK); 22 | 23 | ABinderProcess_joinThreadPool(); 24 | return EXIT_FAILURE; // should not reach 25 | } 26 | -------------------------------------------------------------------------------- /aidl/health/android.hardware.health-service.samsung-recovery.rc: -------------------------------------------------------------------------------- 1 | service vendor.health-samsung /system/bin/hw/android.hardware.health-service.samsung-recovery 2 | class hal 3 | seclabel u:r:hal_health_default:s0 4 | user system 5 | group system 6 | capabilities WAKE_ALARM BLOCK_SUSPEND 7 | file /dev/kmsg w 8 | -------------------------------------------------------------------------------- /aidl/health/android.hardware.health-service.samsung.rc: -------------------------------------------------------------------------------- 1 | service vendor.health-samsung /vendor/bin/hw/android.hardware.health-service.samsung 2 | class hal 3 | user system 4 | group system 5 | capabilities WAKE_ALARM BLOCK_SUSPEND 6 | file /dev/kmsg w 7 | 8 | service vendor.charger /vendor/bin/hw/android.hardware.health-service.samsung --charger 9 | class charger 10 | seclabel u:r:charger_vendor:s0 11 | user system 12 | group system wakelock input 13 | capabilities SYS_BOOT 14 | file /dev/kmsg w 15 | file /sys/fs/pstore/console-ramoops-0 r 16 | file /sys/fs/pstore/console-ramoops r 17 | file /proc/last_kmsg r 18 | 19 | on charger 20 | chown system system /dev/graphics/fb0 21 | -------------------------------------------------------------------------------- /aidl/health/android.hardware.health-service.samsung.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | android.hardware.health 4 | 1 5 | IHealth/default 6 | 7 | 8 | -------------------------------------------------------------------------------- /aidl/light/Android.bp: -------------------------------------------------------------------------------- 1 | // 2 | // Copyright (C) 2021-2024 The LineageOS Project 3 | // 4 | // SPDX-License-Identifier: Apache-2.0 5 | // 6 | 7 | cc_binary { 8 | name: "android.hardware.light-service.samsung", 9 | defaults: ["samsung_header_path_defaults"], 10 | relative_install_path: "hw", 11 | init_rc: ["android.hardware.light-service.samsung.rc"], 12 | vintf_fragments: ["android.hardware.light-service.samsung.xml"], 13 | srcs: [ 14 | "Lights.cpp", 15 | "service.cpp", 16 | ], 17 | shared_libs: [ 18 | "libbase", 19 | "libbinder_ndk", 20 | "android.hardware.light-V2-ndk", 21 | ], 22 | vendor: true, 23 | } 24 | -------------------------------------------------------------------------------- /aidl/light/android.hardware.light-service.samsung.rc: -------------------------------------------------------------------------------- 1 | service vendor.light-default /vendor/bin/hw/android.hardware.light-service.samsung 2 | class hal 3 | user system 4 | group system 5 | shutdown critical 6 | -------------------------------------------------------------------------------- /aidl/light/android.hardware.light-service.samsung.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | android.hardware.light 4 | 2 5 | ILights/default 6 | 7 | 8 | -------------------------------------------------------------------------------- /aidl/light/service.cpp: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2021 The LineageOS Project 3 | * 4 | * SPDX-License-Identifier: Apache-2.0 5 | */ 6 | 7 | #define LOG_TAG "android.hardware.light-service.samsung" 8 | 9 | #include "Lights.h" 10 | 11 | #include 12 | #include 13 | #include 14 | 15 | using ::aidl::android::hardware::light::Lights; 16 | 17 | int main() { 18 | ABinderProcess_setThreadPoolMaxThreadCount(0); 19 | std::shared_ptr lights = ndk::SharedRefBase::make(); 20 | 21 | const std::string instance = std::string() + Lights::descriptor + "/default"; 22 | binder_status_t status = AServiceManager_addService(lights->asBinder().get(), instance.c_str()); 23 | CHECK(status == STATUS_OK); 24 | 25 | ABinderProcess_joinThreadPool(); 26 | return EXIT_FAILURE; // should not reach 27 | } 28 | -------------------------------------------------------------------------------- /aidl/memtrack/Android.bp: -------------------------------------------------------------------------------- 1 | cc_binary { 2 | name: "android.hardware.memtrack-service.samsung-mali", 3 | relative_install_path: "hw", 4 | init_rc: ["memtrack.rc"], 5 | vintf_fragments: ["memtrack.xml"], 6 | vendor: true, 7 | shared_libs: [ 8 | "android.hardware.memtrack-V1-ndk", 9 | "libbase", 10 | "libbinder_ndk", 11 | "liblog", 12 | ], 13 | srcs: [ 14 | "Memtrack.cpp", 15 | "GpuSysfsReader.cpp", 16 | "filesystem.cpp", 17 | "main.cpp", 18 | ], 19 | } 20 | -------------------------------------------------------------------------------- /aidl/memtrack/GpuSysfsReader.h: -------------------------------------------------------------------------------- 1 | 2 | #pragma once 3 | 4 | #include 5 | #include 6 | 7 | namespace GpuSysfsReader { 8 | uint64_t getDmaBufGpuMem(pid_t pid = 0); 9 | uint64_t getGpuMemTotal(pid_t pid = 0); 10 | uint64_t getPrivateGpuMem(pid_t pid = 0); 11 | 12 | constexpr char kSysfsDevicePath[] = "/sys/class/misc/mali0/device"; 13 | constexpr char kProcessDir[] = "kprcs"; 14 | constexpr char kMappedDmaBufsDir[] = "dma_bufs"; 15 | constexpr char kTotalGpuMemNode[] = "total_gpu_mem"; 16 | constexpr char kDmaBufGpuMemNode[] = "dma_buf_gpu_mem"; 17 | } // namespace GpuSysfsReader 18 | -------------------------------------------------------------------------------- /aidl/memtrack/Memtrack.h: -------------------------------------------------------------------------------- 1 | 2 | #pragma once 3 | 4 | #include 5 | #include 6 | #include 7 | #include 8 | 9 | namespace aidl { 10 | namespace android { 11 | namespace hardware { 12 | namespace memtrack { 13 | 14 | class Memtrack : public BnMemtrack { 15 | public: 16 | ndk::ScopedAStatus getMemory(int pid, MemtrackType type, 17 | std::vector* _aidl_return) override; 18 | 19 | ndk::ScopedAStatus getGpuDeviceInfo(std::vector* _aidl_return) override; 20 | }; 21 | 22 | } // namespace memtrack 23 | } // namespace hardware 24 | } // namespace android 25 | } // namespace aidl 26 | -------------------------------------------------------------------------------- /aidl/memtrack/main.cpp: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | 5 | #include "Memtrack.h" 6 | 7 | #undef LOG_TAG 8 | #define LOG_TAG "memtrack-service" 9 | 10 | using aidl::android::hardware::memtrack::Memtrack; 11 | 12 | int main() { 13 | ABinderProcess_setThreadPoolMaxThreadCount(0); 14 | std::shared_ptr memtrack = ndk::SharedRefBase::make(); 15 | 16 | const std::string instance = std::string() + Memtrack::descriptor + "/default"; 17 | binder_status_t status = 18 | AServiceManager_addService(memtrack->asBinder().get(), instance.c_str()); 19 | CHECK(status == STATUS_OK); 20 | 21 | ABinderProcess_joinThreadPool(); 22 | return EXIT_FAILURE; // Unreachable 23 | } 24 | -------------------------------------------------------------------------------- /aidl/memtrack/memtrack.rc: -------------------------------------------------------------------------------- 1 | service vendor.memtrack-default /vendor/bin/hw/android.hardware.memtrack-service.samsung-mali 2 | class hal 3 | user graphics 4 | group system 5 | -------------------------------------------------------------------------------- /aidl/memtrack/memtrack.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | android.hardware.memtrack 4 | 1 5 | IMemtrack/default 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /aidl/powershare/Android.bp: -------------------------------------------------------------------------------- 1 | // 2 | // SPDX-FileCopyrightText: 2025 The LineageOS Project 3 | // SPDX-License-Identifier: Apache-2.0 4 | // 5 | 6 | cc_binary { 7 | name: "vendor.lineage.powershare-service.samsung", 8 | defaults: ["samsung_header_path_defaults"], 9 | vintf_fragments: ["vendor.lineage.powershare-service.samsung.xml"], 10 | init_rc: ["vendor.lineage.powershare-service.samsung.rc"], 11 | vendor: true, 12 | relative_install_path: "hw", 13 | srcs: [ 14 | "PowerShare.cpp", 15 | "service.cpp", 16 | ], 17 | shared_libs: [ 18 | "libbase", 19 | "liblog", 20 | "libbinder_ndk", 21 | "libutils", 22 | "vendor.lineage.powershare-V1-ndk", 23 | ], 24 | } 25 | -------------------------------------------------------------------------------- /aidl/powershare/PowerShare.h: -------------------------------------------------------------------------------- 1 | /* 2 | * SPDX-FileCopyrightText: 2025 The LineageOS Project 3 | * SPDX-License-Identifier: Apache-2.0 4 | */ 5 | 6 | #pragma once 7 | 8 | #include 9 | 10 | namespace aidl { 11 | namespace vendor { 12 | namespace lineage { 13 | namespace powershare { 14 | 15 | class PowerShare : public BnPowerShare { 16 | public: 17 | ndk::ScopedAStatus getMinBattery(int32_t* _aidl_return) override; 18 | ndk::ScopedAStatus isEnabled(bool* _aidl_return) override; 19 | ndk::ScopedAStatus setEnabled(bool enable) override; 20 | ndk::ScopedAStatus setMinBattery(int32_t minBattery) override; 21 | }; 22 | 23 | } // namespace powershare 24 | } // namespace lineage 25 | } // namespace vendor 26 | } // namespace aidl 27 | -------------------------------------------------------------------------------- /aidl/powershare/samsung_powershare.h: -------------------------------------------------------------------------------- 1 | /* 2 | * SPDX-FileCopyrightText: 2025 The LineageOS Project 3 | * SPDX-License-Identifier: Apache-2.0 4 | */ 5 | 6 | #pragma once 7 | 8 | #define POWERSHARE_DISABLED "0" 9 | #define POWERSHARE_ENABLED "1" 10 | 11 | #define POWERSHARE_PATH "/sys/class/power_supply/battery/wc_tx_en" 12 | #define POWERSHARE_STOP_CAPACITY_PATH "/sys/class/power_supply/battery/wc_tx_stop_capacity" 13 | -------------------------------------------------------------------------------- /aidl/powershare/service.cpp: -------------------------------------------------------------------------------- 1 | /* 2 | * SPDX-FileCopyrightText: 2025 The LineageOS Project 3 | * SPDX-License-Identifier: Apache-2.0 4 | */ 5 | 6 | #include "PowerShare.h" 7 | 8 | #include 9 | #include 10 | #include 11 | 12 | using aidl::vendor::lineage::powershare::PowerShare; 13 | 14 | int main() { 15 | ABinderProcess_setThreadPoolMaxThreadCount(0); 16 | std::shared_ptr powershare = ndk::SharedRefBase::make(); 17 | 18 | const std::string instance = std::string(PowerShare::descriptor) + "/default"; 19 | binder_status_t status = 20 | AServiceManager_addService(powershare->asBinder().get(), instance.c_str()); 21 | CHECK_EQ(status, STATUS_OK); 22 | 23 | ABinderProcess_joinThreadPool(); 24 | return EXIT_FAILURE; // should not reach 25 | } 26 | -------------------------------------------------------------------------------- /aidl/powershare/vendor.lineage.powershare-service.samsung.rc: -------------------------------------------------------------------------------- 1 | service vendor.powershare-hal /vendor/bin/hw/vendor.lineage.powershare-service.samsung 2 | class hal 3 | user system 4 | group system 5 | -------------------------------------------------------------------------------- /aidl/powershare/vendor.lineage.powershare-service.samsung.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | vendor.lineage.powershare 4 | 1 5 | IPowerShare/default 6 | 7 | 8 | -------------------------------------------------------------------------------- /aidl/sensors/HalProxySamsung.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2024 The LineageOS Project 3 | * 4 | * SPDX-License-Identifier: Apache-2.0 5 | */ 6 | 7 | #pragma once 8 | 9 | #include 10 | 11 | namespace aidl { 12 | namespace android { 13 | namespace hardware { 14 | namespace sensors { 15 | namespace implementation { 16 | 17 | class HalProxySamsung : public HalProxyAidl { 18 | ndk::ScopedAStatus getSensorsList( 19 | std::vector<::aidl::android::hardware::sensors::SensorInfo>* _aidl_return) override; 20 | }; 21 | 22 | } // namespace implementation 23 | } // namespace sensors 24 | } // namespace hardware 25 | } // namespace android 26 | } // namespace aidl 27 | -------------------------------------------------------------------------------- /aidl/sensors/android.hardware.sensors-samsung-multihal.xml: -------------------------------------------------------------------------------- 1 | 16 | 17 | 18 | 19 | android.hardware.sensors 20 | 3 21 | ISensors/default 22 | 23 | 24 | -------------------------------------------------------------------------------- /aidl/sensors/android.hardware.sensors-service.samsung-multihal.rc: -------------------------------------------------------------------------------- 1 | service vendor.sensors-hal-multihal /vendor/bin/hw/android.hardware.sensors-service.samsung-multihal 2 | class hal 3 | user system 4 | group system wakelock context_hub input uhid 5 | task_profiles ServiceCapacityLow 6 | capabilities BLOCK_SUSPEND 7 | rlimit rtprio 10 10 8 | -------------------------------------------------------------------------------- /aidl/usb/Android.bp: -------------------------------------------------------------------------------- 1 | // 2 | // Copyright (C) 2021 The Android Open Source Project 3 | // Copyright (C) 2022 The LineageOS Project 4 | // 5 | // Licensed under the Apache License, Version 2.0 (the "License"); 6 | // you may not use this file except in compliance with the License. 7 | // You may obtain a copy of the License at 8 | // 9 | // http://www.apache.org/licenses/LICENSE-2.0 10 | // 11 | // Unless required by applicable law or agreed to in writing, software 12 | // distributed under the License is distributed on an "AS IS" BASIS, 13 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | // See the License for the specific language governing permissions and 15 | // limitations under the License. 16 | // 17 | 18 | cc_binary { 19 | name: "android.hardware.usb-service.samsung", 20 | relative_install_path: "hw", 21 | init_rc: ["android.hardware.usb-service.samsung.rc"], 22 | vintf_fragments: ["android.hardware.usb-service.samsung.xml"], 23 | vendor: true, 24 | srcs: [ 25 | "service.cpp", 26 | "Usb.cpp", 27 | ], 28 | shared_libs: [ 29 | "android.hardware.usb-V3-ndk", 30 | "libbase", 31 | "libbinder_ndk", 32 | "libcutils", 33 | "liblog", 34 | "libutils", 35 | ], 36 | } 37 | -------------------------------------------------------------------------------- /aidl/usb/android.hardware.usb-service.samsung.rc: -------------------------------------------------------------------------------- 1 | service vendor.usb_default /vendor/bin/hw/android.hardware.usb-service.samsung 2 | class hal 3 | user system 4 | group system 5 | 6 | on post-fs 7 | chown root system /sys/class/typec/port0/power_role 8 | chown root system /sys/class/typec/port0/data_role 9 | chown root system /sys/class/typec/port0/port_type 10 | chown root system /sys/devices/virtual/sec/ccic/water 11 | chown root system /sys/devices/virtual/usb_notify/usb_control/usb_data_enabled 12 | chmod 664 /sys/class/typec/port0/power_role 13 | chmod 664 /sys/class/typec/port0/data_role 14 | chmod 664 /sys/class/typec/port0/port_type 15 | chmod 664 /sys/devices/virtual/usb_notify/usb_control/usb_data_enabled 16 | -------------------------------------------------------------------------------- /aidl/usb/android.hardware.usb-service.samsung.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | android.hardware.usb 4 | 3 5 | 6 | IUsb 7 | default 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /aidl/usb/gadget/android.hardware.usb.gadget-service.samsung.rc: -------------------------------------------------------------------------------- 1 | service vendor.usb-gadget-hal /vendor/bin/hw/android.hardware.usb.gadget-service.samsung 2 | class hal 3 | user system 4 | group system shell mtp 5 | -------------------------------------------------------------------------------- /aidl/usb/gadget/android.hardware.usb.gadget-service.samsung.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | android.hardware.usb.gadget 4 | 1 5 | 6 | IUsbGadget 7 | default 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /aidl/usb/service.cpp: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2021 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 | #include 18 | #include 19 | #include 20 | 21 | #include "Usb.h" 22 | 23 | using ::aidl::android::hardware::usb::Usb; 24 | 25 | int main() { 26 | ABinderProcess_setThreadPoolMaxThreadCount(0); 27 | std::shared_ptr usb = ndk::SharedRefBase::make(); 28 | 29 | const std::string instance = std::string() + Usb::descriptor + "/default"; 30 | binder_status_t status = AServiceManager_addService(usb->asBinder().get(), instance.c_str()); 31 | CHECK(status == STATUS_OK); 32 | 33 | ABinderProcess_joinThreadPool(); 34 | return -1; // Should never be reached 35 | } 36 | -------------------------------------------------------------------------------- /aidl/vibrator/Android.bp: -------------------------------------------------------------------------------- 1 | // 2 | // Copyright (C) 2021-2023 The LineageOS Project 3 | // 4 | // SPDX-License-Identifier: Apache-2.0 5 | // 6 | 7 | soong_config_module_type { 8 | name: "samsung_vibrator", 9 | module_type: "cc_defaults", 10 | config_namespace: "samsungVibratorVars", 11 | bool_variables: ["duration_amplitude"], 12 | properties: ["cflags"], 13 | } 14 | 15 | samsung_vibrator { 16 | name: "samsung_vibrator_defaults", 17 | soong_config_variables: { 18 | duration_amplitude: { 19 | cflags: [ 20 | "-DVIBRATOR_SUPPORTS_DURATION_AMPLITUDE_CONTROL", 21 | ], 22 | }, 23 | }, 24 | } 25 | 26 | cc_binary { 27 | name: "android.hardware.vibrator-service.samsung", 28 | defaults: ["samsung_vibrator_defaults"], 29 | relative_install_path: "hw", 30 | init_rc: ["android.hardware.vibrator-service.samsung.rc"], 31 | vintf_fragments: ["android.hardware.vibrator-service.samsung.xml"], 32 | srcs: [ 33 | "Vibrator.cpp", 34 | "service.cpp", 35 | ], 36 | shared_libs: [ 37 | "libbase", 38 | "libbinder_ndk", 39 | "android.hardware.vibrator-V2-ndk", 40 | ], 41 | vendor: true, 42 | } 43 | -------------------------------------------------------------------------------- /aidl/vibrator/android.hardware.vibrator-service.samsung.rc: -------------------------------------------------------------------------------- 1 | on init 2 | chown system system /sys/class/timed_output/vibrator/cp_trigger_index 3 | chown system system /sys/class/timed_output/vibrator/enable 4 | chown system system /sys/class/timed_output/vibrator/intensity 5 | 6 | service vendor.vibrator-default /vendor/bin/hw/android.hardware.vibrator-service.samsung 7 | class hal 8 | user system 9 | group system 10 | shutdown critical 11 | -------------------------------------------------------------------------------- /aidl/vibrator/android.hardware.vibrator-service.samsung.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | android.hardware.vibrator 4 | 2 5 | IVibrator/default 6 | 7 | 8 | -------------------------------------------------------------------------------- /aidl/vibrator/service.cpp: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2021 The LineageOS Project 3 | * 4 | * SPDX-License-Identifier: Apache-2.0 5 | */ 6 | 7 | #include "Vibrator.h" 8 | 9 | #include 10 | #include 11 | #include 12 | 13 | using ::aidl::android::hardware::vibrator::Vibrator; 14 | 15 | int main() { 16 | ABinderProcess_setThreadPoolMaxThreadCount(0); 17 | std::shared_ptr vibrator = ndk::SharedRefBase::make(); 18 | 19 | const std::string instance = std::string() + Vibrator::descriptor + "/default"; 20 | binder_status_t status = AServiceManager_addService(vibrator->asBinder().get(), instance.c_str()); 21 | CHECK(status == STATUS_OK); 22 | 23 | ABinderProcess_joinThreadPool(); 24 | return EXIT_FAILURE; // should not reach 25 | } 26 | -------------------------------------------------------------------------------- /dap/Android.bp: -------------------------------------------------------------------------------- 1 | // 2 | // Copyright (C) 2022 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 | android_app { 18 | name: "SamsungDAP", 19 | defaults: ["SettingsLibDefaults"], 20 | srcs: ["src/**/*.kt"], 21 | certificate: "platform", 22 | platform_apis: true, 23 | static_libs: ["androidx.preference_preference"], 24 | system_ext_specific: true, 25 | } 26 | -------------------------------------------------------------------------------- /dap/res/drawable/ic_dolby.xml: -------------------------------------------------------------------------------- 1 | 2 | 8 | 9 | 10 | 13 | 14 | -------------------------------------------------------------------------------- /dap/res/drawable/ic_settings.xml: -------------------------------------------------------------------------------- 1 | 2 | 8 | 11 | 12 | -------------------------------------------------------------------------------- /dap/res/values-ast-rES/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Activar Dolby Atmos 4 | Esperimenta un audiu innovador pa la reproducción multimedia que flúi alredor de ti 5 | Xuegu 6 | Xuegu 1 7 | Xuegu 2 8 | Filme 9 | Música 10 | Audiu espacial 11 | Voz 12 | 13 | -------------------------------------------------------------------------------- /dap/res/values-az/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Dolby Atmos-u fəallaşdır 4 | Üzərinizdə və ətrafınızdan axan medianın oxudulması üçün inqilabi səsi sınaqdan keçirin 5 | Avto 6 | Oyun 7 | Oyun 1 8 | Oyun 2 9 | Film 10 | Musiqi 11 | Profil yoxdur 12 | Xüsusi səs 13 | Səs 14 | 15 | -------------------------------------------------------------------------------- /dap/res/values-be/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Няма профілю 4 | 5 | -------------------------------------------------------------------------------- /dap/res/values-bg/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Включи Dolby Atmos 4 | възпроизвеждане 5 | Авт. 6 | Игра 7 | Игра 1 8 | Игра 2 9 | Филм 10 | Музика 11 | Без профил 12 | Специално аудио 13 | Глас 14 | 15 | -------------------------------------------------------------------------------- /dap/res/values-ca/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Activa Dolby Atmos 4 | Experimenteu un àudio innovador per a la reproducció multimèdia que flueix per sobre i al vostre voltant 5 | Auto 6 | Joc 7 | Joc 1 8 | Joc 2 9 | Pel·lícula 10 | Música 11 | Sense perfil 12 | Àudio espacial 13 | Veu 14 | 15 | -------------------------------------------------------------------------------- /dap/res/values-cs/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Povolit Dolby Atmos 4 | Zažijte průlomový zvuk při přehrávání médií, který proudí nad vámi a kolem vás 5 | Auto 6 | Hra 7 | Hra 1 8 | Hra 2 9 | Film 10 | Hudba 11 | Žádný profil 12 | Prostorový zvuk 13 | Hlas 14 | 15 | -------------------------------------------------------------------------------- /dap/res/values-cy/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Galluogi Dolby Atmos 4 | Cael profiad sain gofodol sy\'n llifo uwch dy ben ac o dy amgylch wrth chwarae cyfryngau. 5 | Awto 6 | Gêm 7 | Gêm 1 8 | Gêm 2 9 | Ffilm 10 | Cerddoriaeth 11 | Dim proffil 12 | Sain gofodol 13 | Llais 14 | 15 | -------------------------------------------------------------------------------- /dap/res/values-de/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Dolby Atmos aktivieren 4 | Komm in den Genuss einer fortschrittlichen Medienwiedergabe mit einem Klang, der sich über dir und um dich herum entfaltet 5 | Auto 6 | Spiel 7 | Spiel 1 8 | Spiel 2 9 | Film 10 | Musik 11 | Kein Profil 12 | Raumklang 13 | Sprache 14 | 15 | -------------------------------------------------------------------------------- /dap/res/values-el/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Ενεργοποίηση Dolby Atmos 4 | Απολαύστε πρωτοποριακό ήχο για αναπαραγωγή πολυμέσων που ρέει πάνω και γύρω σας 5 | Αυτόματο 6 | Παιχνίδι 7 | Παιχνίδι 1 8 | Παιχνίδι 2 9 | Ταινία 10 | Μουσική 11 | Κανένα προφίλ 12 | Χωρικός ήχος 13 | Φωνή 14 | 15 | -------------------------------------------------------------------------------- /dap/res/values-en-rAU/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Enable Dolby Atmos 4 | Experience breakthrough audio for media playback that flows above and around you 5 | Auto 6 | Game 7 | Game 1 8 | Game 2 9 | Movie 10 | Music 11 | No profile 12 | Spacial audio 13 | Voice 14 | 15 | -------------------------------------------------------------------------------- /dap/res/values-en-rCA/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Enable Dolby Atmos 4 | Experience breakthrough audio for media playback that flows above and around you 5 | Auto 6 | Game 7 | Game 1 8 | Game 2 9 | Movie 10 | Music 11 | No profile 12 | Spacial audio 13 | Voice 14 | 15 | -------------------------------------------------------------------------------- /dap/res/values-en-rGB/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Enable Dolby Atmos 4 | Experience breakthrough audio for media playback that flows above and around you 5 | Auto 6 | Game 7 | Game 1 8 | Game 2 9 | Movie 10 | Music 11 | No profile 12 | Spacial audio 13 | Voice 14 | 15 | -------------------------------------------------------------------------------- /dap/res/values-en-rIN/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Enable Dolby Atmos 4 | Experience breakthrough audio for media playback that flows above and around you 5 | Auto 6 | Game 7 | Game 1 8 | Game 2 9 | Movie 10 | Music 11 | No profile 12 | Spacial audio 13 | Voice 14 | 15 | -------------------------------------------------------------------------------- /dap/res/values-es/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Activar Dolby Atmos 4 | Experimenta un sonido innovador para la reproducción de medios que fluye por encima de ti y a tu alrededor 5 | Automático 6 | Juego 7 | Juego 1 8 | Juego 2 9 | Cine 10 | Música 11 | Sin perfil 12 | Audio espacial 13 | Voz 14 | 15 | -------------------------------------------------------------------------------- /dap/res/values-fa/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | فعال کردن Dolby Atmos 4 | تجربه‌ی صدای پیشرفته برای پخش رسانه‌ای که بالای سر و اطرافتان جریان دارد. 5 | خودکار 6 | بازی 7 | بازی 1 8 | بازی 2 9 | فیلم 10 | موسیقی 11 | بدون نمایه 12 | صدای فراگیر 13 | گفتار 14 | 15 | -------------------------------------------------------------------------------- /dap/res/values-fr/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Activer Dolby Atmos 4 | Expérimentez un son révolutionnaire pour la lecture des médias qui circule tout autour de vous 5 | Automatique 6 | Jeu 7 | Jeu 1 8 | Jeu 2 9 | Film 10 | Musique 11 | Aucun profil 12 | Audio spatial 13 | Voix 14 | 15 | -------------------------------------------------------------------------------- /dap/res/values-fur-rIT/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Abilite il Dolby Atmos 4 | Gjolditi une esperience audio che ti cjape dentri dulinvie lis riproduzions di contignûts multimediâi 5 | Automatic 6 | Zûc 7 | Zûc 1 8 | Zûc 2 9 | Film 10 | Musiche 11 | Nissun profîl 12 | Audio spaziâl 13 | Vôs 14 | 15 | -------------------------------------------------------------------------------- /dap/res/values-ga-rIE/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Cumasaigh Dolby Atmos 4 | Taithí fuaime cinn le haghaidh athsheinm meáin a shreabhann thuas agus timpeall ort 5 | Uath 6 | Cluiche 7 | Cluiche 1 8 | Cluiche 2 9 | Scannán 10 | Ceol 11 | Gan próifíl 12 | Fuaim spásúil 13 | Guth 14 | 15 | -------------------------------------------------------------------------------- /dap/res/values-hu/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Dolby Atmos be 4 | Az Ön kürül hallható médialejátszások áttörő audióélménye 5 | Automatikus 6 | Játék 7 | Játék1 8 | Játék2 9 | Mozi 10 | Zene 11 | Nincs profil 12 | Speciális hangzás 13 | Hang 14 | 15 | -------------------------------------------------------------------------------- /dap/res/values-in/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Aktifkan Dolby Atmos 4 | Otomatis 5 | Game 6 | Game 1 7 | Game 2 8 | Film 9 | Musik 10 | Tidak ada profil 11 | Spasial audio 12 | Suara 13 | 14 | -------------------------------------------------------------------------------- /dap/res/values-is/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Virkja Dolby Atmos 4 | Upplifðu framúrskarandi hljómgæði fyrir afspilun margmiðlunar sem flæðir fyrir ofan þig og í kring 5 | Sjálfvirkt 6 | Leikur 7 | Leikur 1 8 | Leikur 2 9 | Kvikmynd 10 | Tónlist 11 | Ekkert snið 12 | Rýmishljómur 13 | Tal 14 | 15 | -------------------------------------------------------------------------------- /dap/res/values-it/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Abilita Dolby Atmos 4 | Goditi un\'esperienza audio coinvolgente durante la riproduzione di contenuti multimediali 5 | Automatico 6 | Gioco 7 | Gioco 1 8 | Gioco 2 9 | Film 10 | Musica 11 | Nessun profilo 12 | Audio spaziale 13 | Voce 14 | 15 | -------------------------------------------------------------------------------- /dap/res/values-ja/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Dolby Atmos を有効化 4 | 迫力ある、臨場感あふれるサウンドをお楽しみください 5 | 自動 6 | ゲーム 7 | ゲーム1 8 | ゲーム2 9 | 動画 10 | 音楽 11 | プロファイルなし 12 | スペーシャルオーディオ 13 | 音声 14 | 15 | -------------------------------------------------------------------------------- /dap/res/values-ka/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | ჩაირთოს Dolby Atmos 4 | ფაილის გაშვებისას ხმის სრულად შეგრძნება გარსშემოდენით 5 | თვითშერჩევა 6 | თამაში 7 | თამაში 1 8 | თამაში 2 9 | ფილმი 10 | მუსიკა 11 | პროფილის გარეშე 12 | სივრცული ხმა 13 | ხმა 14 | 15 | -------------------------------------------------------------------------------- /dap/res/values-ko/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 돌비 애트모스 사용 4 | 사용자 주변을 타고 흐르는 듯한 강력하고 생동감 있는 오디오 경험 제공 5 | 자동 6 | 게임 7 | 게임 1 8 | 게임 2 9 | 영화 10 | 음악 11 | 프로필 없음 12 | 공간 음향 13 | 음성 14 | 15 | -------------------------------------------------------------------------------- /dap/res/values-nl/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Dolby Atmos inschakelen 4 | Ervaar de doorbraakaudio voor het afspelen van media die boven en om je heen stromen 5 | Automatisch 6 | Spel 7 | Spel 1 8 | Spel 2 9 | Film 10 | Muziek 11 | Geen profiel 12 | Ruimtelijke audio 13 | Stem 14 | 15 | -------------------------------------------------------------------------------- /dap/res/values-pl/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Włącz Dolby Atmos 4 | Doświadcz przełomowego dźwięku podczas odtwarzania multimediów, który przepływa powyżej i wokół ciebie 5 | Automatyczny 6 | Gra 7 | Gra 1 8 | Gra 2 9 | Film 10 | Muzyka 11 | Bez profilu 12 | Dźwięk przestrzenny 13 | Głos 14 | 15 | -------------------------------------------------------------------------------- /dap/res/values-pt-rBR/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Ativar Dolby Atmos 4 | Experimente uma mudança dramática no áudio para reprodução de mídia que flui acima e ao seu redor 5 | Automático 6 | Jogo 7 | Jogo 1 8 | Jogo 2 9 | Filme 10 | Música 11 | Nenhum perfil 12 | Áudio espacial 13 | Voz 14 | 15 | -------------------------------------------------------------------------------- /dap/res/values-pt-rPT/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Ativar Dolby Atmos 4 | Experiencie reprodução de multimédia com áudio inovador que flui em todo o seu redor 5 | Automático 6 | Jogo 7 | Jogo 1 8 | Jogo 2 9 | Filme 10 | Música 11 | Sem perfil 12 | Áudio espacial 13 | Voz 14 | 15 | -------------------------------------------------------------------------------- /dap/res/values-ro/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Activează Dolby Atmos 4 | Experimentați un audio revoluționar pentru redarea media care \"curge\" deasupra și dedesubtul dvs. 5 | Auto 6 | Joc 7 | Joc 1 8 | Joc 2 9 | Film 10 | Muzică 11 | Niciun profil 12 | Audio spațial 13 | Voce 14 | 15 | -------------------------------------------------------------------------------- /dap/res/values-ru/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Включить Dolby Atmos 4 | Испытайте революционный звук для воспроизведения мультимедиа, который струится над вами и вокруг вас 5 | Авто 6 | Игра 7 | Игра 1 8 | Игра 2 9 | Фильм 10 | Музыка 11 | Без профиля 12 | Пространственный звук 13 | Голос 14 | 15 | -------------------------------------------------------------------------------- /dap/res/values-sl/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Omogoči Dolby Atmos 4 | Izkusite prodoren zvok za predvajanje predstavnosti, ki kroži nad in okoli vas 5 | Samodejno 6 | Igra 7 | Igra 1 8 | Igra 2 9 | Film 10 | Glasba 11 | Brez profila 12 | Prostorski zvok 13 | Glas 14 | 15 | -------------------------------------------------------------------------------- /dap/res/values-sq/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Aktivizo Dolby Atmos 4 | Përjetoni audion e re për riprodhimin e medias që rrjedh sipër dhe rreth jush 5 | Automatike 6 | Lojë 7 | Loja 1 8 | Loja 2 9 | Film 10 | Muzikë 11 | Asnjë profil 12 | Audio hapësinore 13 | 14 | 15 | -------------------------------------------------------------------------------- /dap/res/values-sv/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Aktivera Dolby Atmos 4 | Upplev banbrytande ljud för mediauppspelning som flödar över och runt dig 5 | Auto 6 | Spel 7 | Spel 1 8 | Spel 2 9 | Film 10 | Musik 11 | Ingen profil 12 | Rymligt ljud 13 | Röst 14 | 15 | -------------------------------------------------------------------------------- /dap/res/values-ta/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | டால்பி அட்மாஸை இயக்குக 4 | உங்களைச் சுற்றிலும் பாயும் ஊடக இயக்கத்திற்கான திருப்புமுனை ஒலியைப் பட்டறிக 5 | தன்னியக்கம் 6 | ஆட்டம் 7 | ஆட்டம் 1 8 | ஆட்டம் 2 9 | திரைப்படம் 10 | இசை 11 | தனியமைப்பு இல்லை 12 | இடஞ்சார்ந்த ஒலி 13 | குரல் 14 | 15 | -------------------------------------------------------------------------------- /dap/res/values-tr/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Dolby Atmos\'u etkinleştir 4 | Medya oynatma için sizi kuşatan çığır açıcı sesi deneyimleyin 5 | Otomatik 6 | Oyun 7 | Oyun 1 8 | Oyun 2 9 | Film 10 | Müzik 11 | Profil yok 12 | Özel ses 13 | Ses 14 | 15 | -------------------------------------------------------------------------------- /dap/res/values-vi/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Bật Công nghệ âm thanh vòm 4 | Trải nghiệm âm thanh đột phá cho việc phát lại phương tiện truyền thông lan tỏa từ trên cao và xung quanh bạn 5 | Tự động 6 | Trò chơi 7 | Trò chơi 1 8 | Trò chơi 2 9 | Phim 10 | Nhạc 11 | Không có cấu hình 12 | Âm thanh không gian 13 | Thoại 14 | 15 | -------------------------------------------------------------------------------- /dap/res/values-zh-rCN/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 启用 Dolby Atmos 4 | 在您的上方和周围的媒体播放体验突破性的音频 5 | 自动 6 | 游戏 7 | 游戏 1 8 | 游戏 2 9 | 电影 10 | 音乐 11 | 没有配置文件 12 | 空间音频 13 | 语音 14 | 15 | -------------------------------------------------------------------------------- /dap/res/values-zh-rTW/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 啟用 Dolby Atmos 4 | 透過突破性的音效技術,感受親臨現場的效果 5 | 自動 6 | 遊戲 7 | 遊戲 1 8 | 遊戲 2 9 | 電影 10 | 音樂 11 | 無設定檔 12 | 空間音訊 13 | 語音 14 | 15 | -------------------------------------------------------------------------------- /dap/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Dolby Atmos 5 | 6 | 7 | Enable Dolby Atmos 8 | 9 | 10 | Experience breakthrough audio for media playback that flows above and around you 11 | 12 | 13 | Auto 14 | Game 15 | Game 1 16 | Game 2 17 | Movie 18 | Music 19 | No profile 20 | Spacial audio 21 | Voice 22 | 23 | -------------------------------------------------------------------------------- /dap/src/org/lineageos/dap/DolbyActivity.kt: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2022 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.dap 18 | 19 | import android.os.Bundle 20 | 21 | import com.android.settingslib.collapsingtoolbar.CollapsingToolbarBaseActivity 22 | 23 | class DolbyActivity : CollapsingToolbarBaseActivity() { 24 | public override fun onCreate(savedInstanceState: Bundle?) { 25 | super.onCreate(savedInstanceState) 26 | fragmentManager.beginTransaction().replace( 27 | com.android.settingslib.collapsingtoolbar.R.id.content_frame, 28 | DolbyFragment() 29 | ).commit() 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /doze/Android.bp: -------------------------------------------------------------------------------- 1 | // 2 | // Copyright (C) 2024 The Pixel Experience Project 3 | // 4 | // SPDX-License-Identifier: Apache-2.0 5 | // 6 | 7 | android_app { 8 | name: "SamsungDoze", 9 | defaults: ["SettingsLibDefaults"], 10 | 11 | srcs: ["src/**/*.java"], 12 | 13 | certificate: "platform", 14 | platform_apis: true, 15 | system_ext_specific: true, 16 | 17 | static_libs: [ 18 | "androidx.window.extensions", 19 | "androidx.window.sidecar", 20 | "org.lineageos.platform.internal", 21 | "org.lineageos.settings.resources", 22 | ], 23 | 24 | optimize: { 25 | proguard_flags_files: ["proguard.flags"], 26 | }, 27 | } 28 | -------------------------------------------------------------------------------- /doze/proguard.flags: -------------------------------------------------------------------------------- 1 | -keep class org.lineageos.settings.doze.* { 2 | *; 3 | } 4 | -------------------------------------------------------------------------------- /doze/src/org/lineageos/settings/doze/BootCompletedReceiver.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2015 The CyanogenMod 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.doze; 18 | 19 | import android.content.BroadcastReceiver; 20 | import android.content.Context; 21 | import android.content.Intent; 22 | import android.util.Log; 23 | 24 | public class BootCompletedReceiver extends BroadcastReceiver { 25 | 26 | private static final boolean DEBUG = false; 27 | private static final String TAG = "SamsungDoze"; 28 | 29 | @Override 30 | public void onReceive(final Context context, Intent intent) { 31 | if (DEBUG) Log.d(TAG, "Received boot completed intent"); 32 | Utils.checkDozeService(context); 33 | } 34 | 35 | } 36 | -------------------------------------------------------------------------------- /doze/src/org/lineageos/settings/doze/SamsungDozeActivity.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2016 The CyanogenMod 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 | package org.lineageos.settings.doze; 17 | 18 | import android.os.Bundle; 19 | 20 | import com.android.settingslib.collapsingtoolbar.CollapsingToolbarBaseActivity; 21 | 22 | public class SamsungDozeActivity extends CollapsingToolbarBaseActivity { 23 | 24 | private static final String TAG = "samsung_doze"; 25 | 26 | protected void onCreate(Bundle savedInstanceState) { 27 | super.onCreate(savedInstanceState); 28 | 29 | getFragmentManager().beginTransaction().replace( 30 | com.android.settingslib.collapsingtoolbar.R.id.content_frame, 31 | new SamsungDozeSettings(), TAG).commit(); 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /dtbhtool/Android.bp: -------------------------------------------------------------------------------- 1 | cc_binary_host { 2 | name: "dtbhtoolExynos", 3 | shared_libs: [ 4 | "libdtbimg", 5 | ], 6 | static_libs: [ 7 | "libfdt", 8 | ], 9 | srcs: [ 10 | "mkdtbimg.c", 11 | ], 12 | local_include_dirs: ["libdtbimg"], 13 | } 14 | 15 | cc_binary_host { 16 | name: "mkdtbhbootimg", 17 | shared_libs: [ 18 | "libdtbimg", 19 | "libcrypto", 20 | ], 21 | static_libs: [ 22 | "libfdt", 23 | ], 24 | srcs: [ 25 | "mkbootimg.c", 26 | ], 27 | } 28 | 29 | cc_binary_host { 30 | name: "unpackdtbhbootimg", 31 | srcs: [ 32 | "unpackbootimg.c", 33 | ], 34 | } 35 | 36 | cc_binary_host { 37 | name: "unpackdtbhimg", 38 | srcs: [ 39 | "unpackdtbhimg.c", 40 | ], 41 | } 42 | 43 | cc_library { 44 | name: "libdtbimg", 45 | host_supported: true, 46 | srcs: [ 47 | "dtbimg.c", 48 | ], 49 | static_libs: [ 50 | "libfdt", 51 | ], 52 | local_include_dirs: ["libdtbimg"], 53 | } 54 | -------------------------------------------------------------------------------- /dtbhtool/libdtbimg/dtbimg.h: -------------------------------------------------------------------------------- 1 | /* tools/libdtbimg/dtbimg.h 2 | ** 3 | ** Copyright 2017, The LineageOS Project 4 | ** 5 | ** Licensed under the Apache License, Version 2.0 (the "License"); 6 | ** you may not use this file except in compliance with the License. 7 | ** You may obtain a copy of the License at 8 | ** 9 | ** http://www.apache.org/licenses/LICENSE-2.0 10 | ** 11 | ** Unless required by applicable law or agreed to in writing, software 12 | ** distributed under the License is distributed on an "AS IS" BASIS, 13 | ** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | ** See the License for the specific language governing permissions and 15 | ** limitations under the License. 16 | */ 17 | 18 | #ifndef _DTBIMG_H_ 19 | #define _DTBIMG_H_ 20 | 21 | /* 22 | * Returns dt image data. 23 | * 24 | * dtb_path: path to the compiled device tree blobs 25 | * pagesize: board pagesize 26 | * _sz: size of the resulting dt image 27 | */ 28 | void *load_dtbh_block(const char *dtb_path, unsigned pagesize, unsigned *_sz); 29 | 30 | #endif // _DTBIMG_H_ 31 | -------------------------------------------------------------------------------- /fingerprint/Android.bp: -------------------------------------------------------------------------------- 1 | // 2 | // Copyright (C) 2022-2024 The LineageOS Project 3 | // 4 | // SPDX-License-Identifier: Apache-2.0 5 | // 6 | 7 | cc_library_static { 8 | name: "libudfps_extension.samsung", 9 | srcs: ["UdfpsExtension.cpp"], 10 | cflags: select(soong_config_variable("samsung_udfps", "udfps_zorder"), { 11 | any @ zorder: ["-DFOD_PRESSED_LAYER_ZORDER=" + zorder], 12 | default: [], 13 | }), 14 | include_dirs: [ 15 | "frameworks/native/services/surfaceflinger/CompositionEngine/include", 16 | ], 17 | } 18 | -------------------------------------------------------------------------------- /fingerprint/UdfpsExtension.cpp: -------------------------------------------------------------------------------- 1 | 2 | /* 3 | * Copyright (C) 2022-2024 The LineageOS Project 4 | * 5 | * SPDX-License-Identifier: Apache-2.0 6 | */ 7 | 8 | #include 9 | 10 | uint32_t getUdfpsDimZOrder(uint32_t z) { 11 | return z; 12 | } 13 | 14 | uint32_t getUdfpsZOrder(uint32_t z, bool touched) { 15 | if (touched) { 16 | z |= FOD_PRESSED_LAYER_ZORDER; 17 | } 18 | return z; 19 | } 20 | 21 | uint64_t getUdfpsUsageBits(uint64_t usageBits, bool touched) { 22 | if (touched) { 23 | usageBits |= 0x400000000LL; 24 | } 25 | return usageBits; 26 | } 27 | -------------------------------------------------------------------------------- /hidl/camera/device/3.2/default/Android.bp: -------------------------------------------------------------------------------- 1 | cc_library_shared { 2 | name: "camera.device@3.2-impl.samsung", 3 | defaults: [ 4 | "hidl_defaults", 5 | "samsung_camera3_defaults", 6 | ], 7 | proprietary: true, 8 | srcs: [ 9 | "CameraDevice.cpp", 10 | "CameraDeviceSession.cpp", 11 | "convert.cpp", 12 | ], 13 | shared_libs: [ 14 | "libhidlbase", 15 | "libutils", 16 | "libcutils", 17 | "android.hardware.camera.device@3.2", 18 | "android.hardware.camera.provider@2.4", 19 | "android.hardware.graphics.mapper@2.0", 20 | "android.hardware.graphics.mapper@3.0", 21 | "android.hardware.graphics.mapper@4.0", 22 | "liblog", 23 | "libgralloctypes", 24 | "libhardware", 25 | "libcamera_metadata", 26 | "libfmq", 27 | "libui", 28 | ], 29 | static_libs: [ 30 | "android.hardware.camera.common@1.0-helper.samsung", 31 | ], 32 | header_libs: ["libhardware_headers.camera3_samsung"], 33 | export_include_dirs: ["."], 34 | export_shared_lib_headers: [ 35 | "libfmq", 36 | ], 37 | } 38 | -------------------------------------------------------------------------------- /hidl/camera/device/3.2/default/CameraDevice.cpp: -------------------------------------------------------------------------------- 1 | ../../../../../../../hardware/interfaces/camera/device/3.2/default/CameraDevice.cpp -------------------------------------------------------------------------------- /hidl/camera/device/3.2/default/CameraDeviceSession.cpp: -------------------------------------------------------------------------------- 1 | ../../../../../../../hardware/interfaces/camera/device/3.2/default/CameraDeviceSession.cpp -------------------------------------------------------------------------------- /hidl/camera/device/3.2/default/CameraDeviceSession.h: -------------------------------------------------------------------------------- 1 | ../../../../../../../hardware/interfaces/camera/device/3.2/default/CameraDeviceSession.h -------------------------------------------------------------------------------- /hidl/camera/device/3.2/default/CameraDevice_3_2.h: -------------------------------------------------------------------------------- 1 | ../../../../../../../hardware/interfaces/camera/device/3.2/default/CameraDevice_3_2.h -------------------------------------------------------------------------------- /hidl/camera/device/3.2/default/convert.cpp: -------------------------------------------------------------------------------- 1 | ../../../../../../../hardware/interfaces/camera/device/3.2/default/convert.cpp -------------------------------------------------------------------------------- /hidl/camera/device/3.2/default/include: -------------------------------------------------------------------------------- 1 | ../../../../../../../hardware/interfaces/camera/device/3.2/default/include -------------------------------------------------------------------------------- /hidl/camera/device/3.3/default/Android.bp: -------------------------------------------------------------------------------- 1 | cc_library_shared { 2 | name: "camera.device@3.3-impl.samsung", 3 | defaults: [ 4 | "hidl_defaults", 5 | "samsung_camera3_defaults", 6 | ], 7 | proprietary: true, 8 | srcs: [ 9 | "CameraDevice.cpp", 10 | "CameraDeviceSession.cpp", 11 | "convert.cpp", 12 | ], 13 | shared_libs: [ 14 | "libhidlbase", 15 | "libutils", 16 | "libcutils", 17 | "camera.device@3.2-impl.samsung", 18 | "android.hardware.camera.device@3.2", 19 | "android.hardware.camera.device@3.3", 20 | "android.hardware.camera.provider@2.4", 21 | "android.hardware.graphics.mapper@2.0", 22 | "android.hardware.graphics.mapper@3.0", 23 | "android.hardware.graphics.mapper@4.0", 24 | "liblog", 25 | "libgralloctypes", 26 | "libhardware", 27 | "libcamera_metadata", 28 | "libfmq", 29 | ], 30 | static_libs: [ 31 | "android.hardware.camera.common@1.0-helper.samsung", 32 | ], 33 | header_libs: ["libhardware_headers.camera3_samsung"], 34 | export_include_dirs: ["."], 35 | export_shared_lib_headers: [ 36 | "libfmq", 37 | ], 38 | } 39 | -------------------------------------------------------------------------------- /hidl/camera/device/3.3/default/CameraDevice.cpp: -------------------------------------------------------------------------------- 1 | ../../../../../../../hardware/interfaces/camera/device/3.3/default/CameraDevice.cpp -------------------------------------------------------------------------------- /hidl/camera/device/3.3/default/CameraDeviceSession.cpp: -------------------------------------------------------------------------------- 1 | ../../../../../../../hardware/interfaces/camera/device/3.3/default/CameraDeviceSession.cpp -------------------------------------------------------------------------------- /hidl/camera/device/3.3/default/CameraDeviceSession.h: -------------------------------------------------------------------------------- 1 | ../../../../../../../hardware/interfaces/camera/device/3.3/default/CameraDeviceSession.h -------------------------------------------------------------------------------- /hidl/camera/device/3.3/default/CameraDevice_3_3.h: -------------------------------------------------------------------------------- 1 | ../../../../../../../hardware/interfaces/camera/device/3.3/default/CameraDevice_3_3.h -------------------------------------------------------------------------------- /hidl/camera/device/3.3/default/convert.cpp: -------------------------------------------------------------------------------- 1 | ../../../../../../../hardware/interfaces/camera/device/3.3/default/convert.cpp -------------------------------------------------------------------------------- /hidl/camera/device/3.3/default/include: -------------------------------------------------------------------------------- 1 | ../../../../../../../hardware/interfaces/camera/device/3.3/default/include -------------------------------------------------------------------------------- /hidl/camera/device/3.4/default/CameraDevice.cpp: -------------------------------------------------------------------------------- 1 | ../../../../../../../hardware/interfaces/camera/device/3.4/default/CameraDevice.cpp -------------------------------------------------------------------------------- /hidl/camera/device/3.4/default/CameraDeviceSession.cpp: -------------------------------------------------------------------------------- 1 | ../../../../../../../hardware/interfaces/camera/device/3.4/default/CameraDeviceSession.cpp -------------------------------------------------------------------------------- /hidl/camera/device/3.4/default/convert.cpp: -------------------------------------------------------------------------------- 1 | ../../../../../../../hardware/interfaces/camera/device/3.4/default/convert.cpp -------------------------------------------------------------------------------- /hidl/camera/device/3.4/default/include: -------------------------------------------------------------------------------- 1 | ../../../../../../../hardware/interfaces/camera/device/3.4/default/include -------------------------------------------------------------------------------- /hidl/camera/device/3.5/default/CameraDevice.cpp: -------------------------------------------------------------------------------- 1 | ../../../../../../../hardware/interfaces/camera/device/3.5/default/CameraDevice.cpp -------------------------------------------------------------------------------- /hidl/camera/device/3.5/default/CameraDeviceSession.cpp: -------------------------------------------------------------------------------- 1 | ../../../../../../../hardware/interfaces/camera/device/3.5/default/CameraDeviceSession.cpp -------------------------------------------------------------------------------- /hidl/camera/device/3.5/default/include: -------------------------------------------------------------------------------- 1 | ../../../../../../../hardware/interfaces/camera/device/3.5/default/include -------------------------------------------------------------------------------- /hidl/camera/provider/2.4/CameraProvider_2_4.h: -------------------------------------------------------------------------------- 1 | ../../../../../../hardware/interfaces/camera/provider/2.4/default/CameraProvider_2_4.h -------------------------------------------------------------------------------- /hidl/camera/provider/2.4/LegacyCameraProviderImpl_2_4.cpp: -------------------------------------------------------------------------------- 1 | ../../../../../../hardware/interfaces/camera/provider/2.4/default/LegacyCameraProviderImpl_2_4.cpp -------------------------------------------------------------------------------- /hidl/camera/provider/2.4/LegacyCameraProviderImpl_2_4.h: -------------------------------------------------------------------------------- 1 | ../../../../../../hardware/interfaces/camera/provider/2.4/default/LegacyCameraProviderImpl_2_4.h -------------------------------------------------------------------------------- /hidl/camera/provider/2.5/CameraProvider_2_5.h: -------------------------------------------------------------------------------- 1 | ../../../../../../hardware/interfaces/camera/provider/2.5/default/CameraProvider_2_5.h -------------------------------------------------------------------------------- /hidl/camera/provider/2.5/LegacyCameraProviderImpl_2_5.cpp: -------------------------------------------------------------------------------- 1 | ../../../../../../hardware/interfaces/camera/provider/2.5/default/LegacyCameraProviderImpl_2_5.cpp -------------------------------------------------------------------------------- /hidl/camera/provider/2.5/LegacyCameraProviderImpl_2_5.h: -------------------------------------------------------------------------------- 1 | ../../../../../../hardware/interfaces/camera/provider/2.5/default/LegacyCameraProviderImpl_2_5.h -------------------------------------------------------------------------------- /hidl/camera/provider/2.5/SamsungCameraProvider.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2021 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 | #ifndef SAMSUNG_CAMERA_PROVIDER_H 18 | 19 | #include "LegacyCameraProviderImpl_2_5.h" 20 | 21 | #define SAMSUNG_CAMERA_DEBUG 22 | 23 | using ::android::hardware::camera::provider::V2_5::implementation::LegacyCameraProviderImpl_2_5; 24 | using ::android::hardware::Return; 25 | 26 | class SamsungCameraProvider : public LegacyCameraProviderImpl_2_5 { 27 | public: 28 | SamsungCameraProvider(); 29 | ~SamsungCameraProvider(); 30 | 31 | private: 32 | std::vector mExtraIDs = { 33 | #ifdef EXTRA_IDS 34 | EXTRA_IDS 35 | #endif 36 | }; 37 | }; 38 | 39 | #endif // SAMSUNG_CAMERA_PROVIDER_H 40 | -------------------------------------------------------------------------------- /hidl/camera/provider/2.5/android.hardware.camera.provider@2.5-service.samsung.rc: -------------------------------------------------------------------------------- 1 | service vendor.camera-provider-2-5 /vendor/bin/hw/android.hardware.camera.provider@2.5-service.samsung 2 | interface android.hardware.camera.provider@2.5::ICameraProvider legacy/0 3 | interface android.hardware.camera.provider@2.4::ICameraProvider legacy/0 4 | class hal 5 | user cameraserver 6 | group audio camera input drmrpc 7 | ioprio rt 4 8 | capabilities SYS_NICE 9 | task_profiles CameraServiceCapacity MaxPerformance 10 | -------------------------------------------------------------------------------- /hidl/camera/provider/2.5/android.hardware.camera.provider@2.5-service.samsung.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | android.hardware.camera.provider 4 | hwbinder 5 | 2.5 6 | 7 | ICameraProvider 8 | legacy/0 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /hidl/camera/provider/2.5/android.hardware.camera.provider@2.5-service_64.samsung.rc: -------------------------------------------------------------------------------- 1 | service vendor.camera-provider-2-5 /vendor/bin/hw/android.hardware.camera.provider@2.5-service_64.samsung 2 | interface android.hardware.camera.provider@2.5::ICameraProvider legacy/0 3 | interface android.hardware.camera.provider@2.4::ICameraProvider legacy/0 4 | class hal 5 | user cameraserver 6 | group audio camera input drmrpc 7 | ioprio rt 4 8 | capabilities SYS_NICE 9 | task_profiles CameraServiceCapacity MaxPerformance 10 | -------------------------------------------------------------------------------- /hidl/consumerir/Android.bp: -------------------------------------------------------------------------------- 1 | // 2 | // Copyright (C) 2020-2024 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 | cc_binary { 18 | name: "android.hardware.ir@1.0-service.samsung", 19 | defaults: ["samsung_header_path_defaults"], 20 | relative_install_path: "hw", 21 | init_rc: ["android.hardware.ir@1.0-service.samsung.rc"], 22 | srcs: [ 23 | "ConsumerIr.cpp", 24 | "service.cpp", 25 | ], 26 | shared_libs: [ 27 | "libbase", 28 | "libbinder", 29 | "libhidlbase", 30 | "libutils", 31 | "android.hardware.ir@1.0", 32 | ], 33 | vendor: true, 34 | } 35 | -------------------------------------------------------------------------------- /hidl/consumerir/android.hardware.ir@1.0-service.samsung.rc: -------------------------------------------------------------------------------- 1 | service vendor.ir-hal-1-0 /vendor/bin/hw/android.hardware.ir@1.0-service.samsung 2 | class hal 3 | user system 4 | group system 5 | -------------------------------------------------------------------------------- /hidl/fastcharge/Android.bp: -------------------------------------------------------------------------------- 1 | // 2 | // Copyright (C) 2024 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 | cc_binary { 18 | name: "vendor.lineage.fastcharge@1.0-service.samsung", 19 | defaults: ["samsung_header_path_defaults"], 20 | relative_install_path: "hw", 21 | init_rc: ["vendor.lineage.fastcharge@1.0-service.samsung.rc"], 22 | vintf_fragments: ["vendor.lineage.fastcharge@1.0-service.samsung.xml"], 23 | srcs: [ 24 | "FastCharge.cpp", 25 | "service.cpp", 26 | ], 27 | shared_libs: [ 28 | "libbase", 29 | "libbinder", 30 | "libcutils", 31 | "libhidlbase", 32 | "libutils", 33 | "vendor.lineage.fastcharge@1.0", 34 | ], 35 | vendor: true, 36 | } 37 | -------------------------------------------------------------------------------- /hidl/fastcharge/samsung_fastcharge.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2020-2022 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 | #pragma once 18 | 19 | #define FASTCHARGE_DEFAULT_SETTING true 20 | #define FASTCHARGE_PATH "/sys/class/sec/switch/afc_disable" 21 | -------------------------------------------------------------------------------- /hidl/fastcharge/vendor.lineage.fastcharge@1.0-service.samsung.rc: -------------------------------------------------------------------------------- 1 | on init 2 | chown system radio /sys/class/sec/switch/afc_disable 3 | 4 | service vendor.fastcharge-hal-1-0 /vendor/bin/hw/vendor.lineage.fastcharge@1.0-service.samsung 5 | class hal 6 | user system 7 | group system 8 | -------------------------------------------------------------------------------- /hidl/fastcharge/vendor.lineage.fastcharge@1.0-service.samsung.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | vendor.lineage.fastcharge 4 | hwbinder 5 | 1.0 6 | 7 | IFastCharge 8 | default 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /hidl/keymaster/Android.bp: -------------------------------------------------------------------------------- 1 | // 2 | // Copyright (C) 2025 The LineageOS Project 3 | // 4 | // SPDX-License-Identifier: Apache-2.0 5 | // 6 | 7 | cc_binary { 8 | name: "android.hardware.keymaster@4.0-service.samsung", 9 | init_rc: ["android.hardware.keymaster@4.0-service.samsung.rc"], 10 | srcs: ["service.cpp"], 11 | 12 | shared_libs: [ 13 | "android.hardware.keymaster@4.0", 14 | "libbase", 15 | "libcutils", 16 | "libhardware", 17 | "libhidlbase", 18 | "liblog", 19 | "libutils", 20 | ] + select(soong_config_variable("samsungVars", "target_keymaster4_library"), { 21 | // link before libkeymaster4 to allow injecting custom libcrypto 22 | any @ flag_val: [flag_val], 23 | default: [], 24 | }) + [ 25 | "libkeymaster4", 26 | ], 27 | 28 | relative_install_path: "hw", 29 | 30 | owner: "samsung", 31 | vendor: true, 32 | } 33 | -------------------------------------------------------------------------------- /hidl/keymaster/android.hardware.keymaster@4.0-service.samsung.rc: -------------------------------------------------------------------------------- 1 | service vendor.keymaster-4-0 /vendor/bin/hw/android.hardware.keymaster@4.0-service.samsung 2 | class early_hal 3 | user system 4 | group system drmrpc 5 | 6 | on post-fs-data 7 | mkdir /mnt/vendor/efs/DAK 0775 system system 8 | restorecon -R /mnt/vendor/efs/DAK 9 | -------------------------------------------------------------------------------- /hidl/livedisplay/lineage.livedisplay@2.0-service.samsung-exynos.rc: -------------------------------------------------------------------------------- 1 | on post-fs-data 2 | mkdir /data/misc/display 0770 system system 3 | 4 | service livedisplay-hal-2-0-samsung-exynos /system/bin/hw/lineage.livedisplay@2.0-service.samsung-exynos 5 | class hal 6 | user system 7 | group system -------------------------------------------------------------------------------- /hidl/livedisplay/lineage.livedisplay@2.0-service.samsung-qcom.rc: -------------------------------------------------------------------------------- 1 | on post-fs-data 2 | mkdir /data/misc/display 0770 system system 3 | 4 | service livedisplay-hal-2-0-samsung-qcom /system/bin/hw/lineage.livedisplay@2.0-service.samsung-qcom 5 | class late_start 6 | user system 7 | group system 8 | -------------------------------------------------------------------------------- /hidl/livedisplay/vendor.lineage.livedisplay@2.0-service.samsung-exynos.rc: -------------------------------------------------------------------------------- 1 | on post-fs-data 2 | mkdir /data/vendor/display 0770 system system 3 | 4 | service vendor.livedisplay-hal-2-0-samsung-exynos /vendor/bin/hw/vendor.lineage.livedisplay@2.0-service.samsung-exynos 5 | class hal 6 | user system 7 | group system -------------------------------------------------------------------------------- /hidl/radio/1.3/Android.bp: -------------------------------------------------------------------------------- 1 | cc_binary { 2 | name: "android.hardware.radio@1.3-radio-service.samsung", 3 | init_rc: ["android.hardware.radio@1.3-radio-service.samsung.rc"], 4 | relative_install_path: "hw", 5 | vendor: true, 6 | srcs: [ 7 | "Radio.cpp", 8 | "SecRadioIndication.cpp", 9 | "SecRadioResponse.cpp", 10 | "radio-service.cpp", 11 | ], 12 | shared_libs: [ 13 | "libhidlbase", 14 | "liblog", 15 | "libutils", 16 | "android.hardware.radio@1.0", 17 | "android.hardware.radio@1.1", 18 | "android.hardware.radio@1.2", 19 | "android.hardware.radio@1.3", 20 | "vendor.samsung.hardware.radio@1.2", 21 | "android.hidl.safe_union@1.0", 22 | ], 23 | } 24 | -------------------------------------------------------------------------------- /hidl/radio/1.3/android.hardware.radio@1.3-radio-service.samsung.rc: -------------------------------------------------------------------------------- 1 | service vendor.radio-1-3 /vendor/bin/hw/android.hardware.radio@1.3-radio-service.samsung 2 | class hal 3 | user system 4 | group system 5 | -------------------------------------------------------------------------------- /hidl/sensors/1.0/Android.bp: -------------------------------------------------------------------------------- 1 | cc_library_shared { 2 | name: "android.hardware.sensors@1.0-impl.samsung", 3 | defaults: ["hidl_defaults"], 4 | proprietary: true, 5 | relative_install_path: "hw", 6 | srcs: ["Sensors.cpp"], 7 | shared_libs: [ 8 | "liblog", 9 | "libcutils", 10 | "libhardware", 11 | "libbase", 12 | "libutils", 13 | "libhidlbase", 14 | "android.hardware.sensors@1.0", 15 | ], 16 | static_libs: [ 17 | "android.hardware.sensors@1.0-convert", 18 | "multihal", 19 | ], 20 | } 21 | -------------------------------------------------------------------------------- /hidl/touch/vendor.lineage.touch@1.0-service.samsung.rc: -------------------------------------------------------------------------------- 1 | service vendor.touch-hal-1-0-samsung /vendor/bin/hw/vendor.lineage.touch@1.0-service.samsung 2 | class hal 3 | user system 4 | group system 5 | -------------------------------------------------------------------------------- /hidl/vibrator/haptic/Android.bp: -------------------------------------------------------------------------------- 1 | // Copyright (C) 2019 The LineageOS 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 | cc_binary { 16 | name: "android.hardware.vibrator@1.0-service.samsung-haptic", 17 | defaults: ["hidl_defaults"], 18 | vendor: true, 19 | relative_install_path: "hw", 20 | init_rc: ["android.hardware.vibrator@1.0-service.samsung-haptic.rc"], 21 | srcs: [ 22 | "service.cpp", 23 | "Vibrator.cpp", 24 | ], 25 | shared_libs: [ 26 | "libbase", 27 | "libhidlbase", 28 | "liblog", 29 | "libutils", 30 | "libhardware", 31 | "android.hardware.vibrator@1.0", 32 | ], 33 | } 34 | -------------------------------------------------------------------------------- /hidl/vibrator/haptic/android.hardware.vibrator@1.0-service.samsung-haptic.rc: -------------------------------------------------------------------------------- 1 | service vendor.vibrator-1-0 /vendor/bin/hw/android.hardware.vibrator@1.0-service.samsung-haptic 2 | class hal 3 | user system 4 | group system 5 | -------------------------------------------------------------------------------- /interfaces/Android.bp: -------------------------------------------------------------------------------- 1 | hidl_package_root { 2 | name: "vendor.samsung.hardware", 3 | use_current: true, 4 | } 5 | -------------------------------------------------------------------------------- /interfaces/current.txt: -------------------------------------------------------------------------------- 1 | d70c073053fc04425ee47b8ce56f01e984cd3af354c91fa9ce0e3833b84e2eda vendor.samsung.hardware.radio@1.2::types 2 | e80adc3606e15e3a71e2b3451e1785287406dca19abd719064927c8477dbb7e7 vendor.samsung.hardware.radio@1.2::IRadio 3 | 482cdc2795dd2d3c89f81f16496a180294b00f05efc0dec599f801823f30c270 vendor.samsung.hardware.radio@1.2::IRadioIndication 4 | baea5e92105d0115d9b1167a21513b5d6c77fdbac78c2e53742b550d548ef8c5 vendor.samsung.hardware.radio@1.2::IRadioResponse 5 | -------------------------------------------------------------------------------- /interfaces/radio/1.2/Android.bp: -------------------------------------------------------------------------------- 1 | // This file is autogenerated by hidl-gen -Landroidbp. 2 | 3 | hidl_interface { 4 | name: "vendor.samsung.hardware.radio@1.2", 5 | root: "vendor.samsung.hardware", 6 | product_specific: true, 7 | srcs: [ 8 | "types.hal", 9 | "IRadio.hal", 10 | "IRadioIndication.hal", 11 | "IRadioResponse.hal", 12 | ], 13 | interfaces: [ 14 | "android.hardware.radio@1.0", 15 | "android.hardware.radio@1.1", 16 | "android.hardware.radio@1.2", 17 | "android.hidl.base@1.0", 18 | ], 19 | gen_java: true, 20 | } 21 | -------------------------------------------------------------------------------- /interfaces/radio/2.0/Android.bp: -------------------------------------------------------------------------------- 1 | // This file is autogenerated by hidl-gen -Landroidbp. 2 | 3 | hidl_interface { 4 | name: "vendor.samsung.hardware.radio@2.0", 5 | root: "vendor.samsung.hardware", 6 | system_ext_specific: true, 7 | srcs: [ 8 | "types.hal", 9 | "ISehRadio.hal", 10 | "ISehRadioIndication.hal", 11 | "ISehRadioResponse.hal", 12 | ], 13 | interfaces: [ 14 | "android.hardware.radio@1.0", 15 | "android.hardware.radio@1.1", 16 | "android.hardware.radio@1.2", 17 | "android.hardware.radio@1.4", 18 | "android.hidl.base@1.0", 19 | "android.hidl.safe_union@1.0", 20 | ], 21 | gen_java: true, 22 | } 23 | -------------------------------------------------------------------------------- /interfaces/radio/2.1/Android.bp: -------------------------------------------------------------------------------- 1 | // This file is autogenerated by hidl-gen -Landroidbp. 2 | 3 | hidl_interface { 4 | name: "vendor.samsung.hardware.radio@2.1", 5 | root: "vendor.samsung.hardware", 6 | system_ext_specific: true, 7 | srcs: [ 8 | "types.hal", 9 | "ISehRadio.hal", 10 | "ISehRadioIndication.hal", 11 | "ISehRadioResponse.hal", 12 | ], 13 | interfaces: [ 14 | "android.hardware.radio@1.0", 15 | "android.hardware.radio@1.1", 16 | "android.hardware.radio@1.2", 17 | "android.hardware.radio@1.4", 18 | "android.hidl.base@1.0", 19 | "android.hidl.safe_union@1.0", 20 | "vendor.samsung.hardware.radio@2.0", 21 | ], 22 | gen_java: true, 23 | } 24 | -------------------------------------------------------------------------------- /interfaces/radio/2.1/ISehRadio.hal: -------------------------------------------------------------------------------- 1 | package vendor.samsung.hardware.radio@2.1; 2 | 3 | import @2.0::ISehRadio; 4 | import android.hardware.radio@1.0::RadioResponseInfo; 5 | 6 | interface ISehRadio extends @2.0::ISehRadio { 7 | oneway setNrMode(int32_t serial, int32_t mode); 8 | 9 | oneway getNrMode(int32_t serial); 10 | 11 | oneway getNrIconType(int32_t serial); 12 | }; 13 | -------------------------------------------------------------------------------- /interfaces/radio/2.1/ISehRadioIndication.hal: -------------------------------------------------------------------------------- 1 | package vendor.samsung.hardware.radio@2.1; 2 | 3 | import @2.0::ISehRadioIndication; 4 | import android.hardware.radio@1.0::RadioResponseInfo; 5 | 6 | interface ISehRadioIndication extends @2.0::ISehRadioIndication { 7 | oneway nrIconTypeChanged(uint32_t type, uint32_t nrIconType); 8 | }; 9 | -------------------------------------------------------------------------------- /interfaces/radio/2.1/ISehRadioResponse.hal: -------------------------------------------------------------------------------- 1 | package vendor.samsung.hardware.radio@2.1; 2 | 3 | import @2.0::ISehRadioResponse; 4 | import android.hardware.radio@1.0::RadioResponseInfo; 5 | 6 | interface ISehRadioResponse extends @2.0::ISehRadioResponse { 7 | oneway setNrModeResponse(RadioResponseInfo info); 8 | 9 | oneway getNrModeResponse(RadioResponseInfo info, uint32_t nrMode); 10 | 11 | oneway getNrIconResponse(RadioResponseInfo info, uint32_t nrIconType); 12 | 13 | oneway getIccCardStatusResponse_2_1(RadioResponseInfo info, SehCardStatus cardStatus); 14 | }; 15 | -------------------------------------------------------------------------------- /interfaces/radio/2.1/types.hal: -------------------------------------------------------------------------------- 1 | package vendor.samsung.hardware.radio@2.1; 2 | 3 | import @2.0::types; 4 | 5 | struct SehCardStatus { 6 | vendor.samsung.hardware.radio@2.0::SehCardStatus base; 7 | 8 | string eid; 9 | }; 10 | -------------------------------------------------------------------------------- /interfaces/radio/2.2/Android.bp: -------------------------------------------------------------------------------- 1 | // This file is autogenerated by hidl-gen -Landroidbp. 2 | 3 | hidl_interface { 4 | name: "vendor.samsung.hardware.radio@2.2", 5 | root: "vendor.samsung.hardware", 6 | system_ext_specific: true, 7 | srcs: [ 8 | "types.hal", 9 | "ISehRadio.hal", 10 | "ISehRadioIndication.hal", 11 | "ISehRadioResponse.hal", 12 | ], 13 | interfaces: [ 14 | "android.hardware.radio@1.0", 15 | "android.hardware.radio@1.1", 16 | "android.hardware.radio@1.2", 17 | "android.hardware.radio@1.4", 18 | "android.hidl.base@1.0", 19 | "android.hidl.safe_union@1.0", 20 | "vendor.samsung.hardware.radio@2.0", 21 | "vendor.samsung.hardware.radio@2.1", 22 | ], 23 | gen_java: true, 24 | } 25 | -------------------------------------------------------------------------------- /interfaces/radio/2.2/ISehRadio.hal: -------------------------------------------------------------------------------- 1 | package vendor.samsung.hardware.radio@2.2; 2 | 3 | import @2.1::ISehRadio; 4 | import android.hardware.radio@1.0::RadioResponseInfo; 5 | 6 | interface ISehRadio extends @2.1::ISehRadio { 7 | oneway setNrMode_2_2(int32_t serial, int32_t mode, bool force); 8 | 9 | oneway getVendorSpecificConfiguration(int32_t serial); 10 | 11 | oneway setVendorSpecificConfiguration(int32_t serial, 12 | vec configurations); 13 | }; 14 | -------------------------------------------------------------------------------- /interfaces/radio/2.2/ISehRadioIndication.hal: -------------------------------------------------------------------------------- 1 | package vendor.samsung.hardware.radio@2.2; 2 | 3 | import @2.1::ISehRadioIndication; 4 | import android.hardware.radio@1.0::RadioResponseInfo; 5 | import @2.0::types; 6 | 7 | interface ISehRadioIndication extends @2.1::ISehRadioIndication { 8 | oneway callDetailsChanged(uint32_t type, vec callDetails); 9 | 10 | oneway vendorConfigurationChanged(uint32_t type, vec configurations); 11 | 12 | oneway eriInfoReceived(uint32_t type, SehEriInfo eriInfo); 13 | }; 14 | -------------------------------------------------------------------------------- /interfaces/radio/2.2/ISehRadioResponse.hal: -------------------------------------------------------------------------------- 1 | package vendor.samsung.hardware.radio@2.2; 2 | 3 | import @2.1::ISehRadioResponse; 4 | import android.hardware.radio@1.0::RadioResponseInfo; 5 | import @2.0::types; 6 | 7 | interface ISehRadioResponse extends @2.1::ISehRadioResponse { 8 | oneway setNrModeResponse_2_2(RadioResponseInfo info); 9 | 10 | oneway getVendorSpecificConfigurationResponse(RadioResponseInfo info, 11 | vec configurations); 12 | 13 | oneway setVendorSpecificConfigurationResponse(RadioResponseInfo info); 14 | }; 15 | -------------------------------------------------------------------------------- /interfaces/radio/2.2/types.hal: -------------------------------------------------------------------------------- 1 | package vendor.samsung.hardware.radio@2.2; 2 | 3 | struct SehVendorConfiguration { 4 | string name; 5 | 6 | string value; 7 | }; 8 | 9 | struct SehEriInfo { 10 | uint8_t roamingIndicator; 11 | 12 | uint8_t iconIndex; 13 | 14 | uint8_t iconMode; 15 | 16 | string eriText; 17 | }; 18 | -------------------------------------------------------------------------------- /interfaces/radio/network/aidl/Android.bp: -------------------------------------------------------------------------------- 1 | aidl_interface { 2 | name: "vendor.samsung.hardware.radio.network", 3 | vendor_available: true, 4 | srcs: [ 5 | "vendor/samsung/hardware/radio/network/*.aidl", 6 | ], 7 | stability: "vintf", 8 | backend: { 9 | cpp: { 10 | enabled: true, 11 | }, 12 | java: { 13 | sdk_version: "module_current", 14 | }, 15 | }, 16 | versions_with_info: [ 17 | { 18 | version: "1", 19 | imports: [], 20 | }, 21 | ], 22 | owner: "samsung", 23 | } 24 | -------------------------------------------------------------------------------- /interfaces/radio/network/aidl/aidl_api/vendor.samsung.hardware.radio.network/1/.hash: -------------------------------------------------------------------------------- 1 | 0fac7647ce0de55319d9c5fa53bdf92cfdc1a5c2 2 | -------------------------------------------------------------------------------- /interfaces/radio/network/aidl/vendor/samsung/hardware/radio/network/SehArfcnInfo.aidl: -------------------------------------------------------------------------------- 1 | package vendor.samsung.hardware.radio.network; 2 | 3 | import vendor.samsung.hardware.radio.network.SehArfcnInfo; 4 | 5 | @VintfStability 6 | parcelable SehArfcnInfo { 7 | byte rat; 8 | int band; 9 | int arfcn; 10 | } 11 | -------------------------------------------------------------------------------- /interfaces/radio/network/aidl/vendor/samsung/hardware/radio/network/SehCallDetails.aidl: -------------------------------------------------------------------------------- 1 | package vendor.samsung.hardware.radio.network; 2 | 3 | @VintfStability 4 | parcelable SehCallDetails { 5 | int callType; 6 | String[] extras; 7 | } 8 | -------------------------------------------------------------------------------- /interfaces/radio/network/aidl/vendor/samsung/hardware/radio/network/SehCsgInfo.aidl: -------------------------------------------------------------------------------- 1 | package vendor.samsung.hardware.radio.network; 2 | 3 | @VintfStability 4 | parcelable SehCsgInfo { 5 | int csgId; 6 | String name; 7 | String plmn; 8 | int rat; 9 | int category; 10 | int signalStrength; 11 | } 12 | -------------------------------------------------------------------------------- /interfaces/radio/network/aidl/vendor/samsung/hardware/radio/network/SehEriInfo.aidl: -------------------------------------------------------------------------------- 1 | package vendor.samsung.hardware.radio.network; 2 | 3 | @VintfStability 4 | parcelable SehEriInfo { 5 | String eriText; 6 | byte roamingIndicator; 7 | byte iconIndex; 8 | byte iconMode; 9 | } 10 | -------------------------------------------------------------------------------- /interfaces/radio/network/aidl/vendor/samsung/hardware/radio/network/SehExtendedRegStateResult.aidl: -------------------------------------------------------------------------------- 1 | package vendor.samsung.hardware.radio.network; 2 | 3 | @VintfStability 4 | parcelable SehExtendedRegStateResult { 5 | int unprocessedDataRegState; 6 | int unprocessedVoiceRegState; 7 | boolean isValid; 8 | int snapshotStatus; 9 | int unprocessedDataRat; 10 | int mobileOptionalRat; 11 | int imsEmergencyCallBarring; 12 | boolean isPsOnlyReg; 13 | } 14 | -------------------------------------------------------------------------------- /interfaces/radio/network/aidl/vendor/samsung/hardware/radio/network/SehOperatorInfo.aidl: -------------------------------------------------------------------------------- 1 | package vendor.samsung.hardware.radio.network; 2 | 3 | @VintfStability 4 | parcelable SehOperatorInfo { 5 | String alphaLong; 6 | String alphaShort; 7 | String operatorNumeric; 8 | int status; 9 | String rat; 10 | String lac; 11 | } 12 | -------------------------------------------------------------------------------- /interfaces/radio/network/aidl/vendor/samsung/hardware/radio/network/SehPreferredNetworkInfo.aidl: -------------------------------------------------------------------------------- 1 | package vendor.samsung.hardware.radio.network; 2 | 3 | @VintfStability 4 | parcelable SehPreferredNetworkInfo { 5 | int index; 6 | String oper; 7 | String plmn; 8 | int gsmAct; 9 | int gsmCompactAct; 10 | int utranAct; 11 | int mode; 12 | } 13 | -------------------------------------------------------------------------------- /interfaces/radio/network/aidl/vendor/samsung/hardware/radio/network/SehRadioResponseInfo.aidl: -------------------------------------------------------------------------------- 1 | package vendor.samsung.hardware.radio.network; 2 | 3 | @VintfStability 4 | parcelable SehRadioResponseInfo { 5 | int error; 6 | int serial; 7 | int type; 8 | } 9 | -------------------------------------------------------------------------------- /interfaces/radio/network/aidl/vendor/samsung/hardware/radio/network/SehRoamingNetworkInfo.aidl: -------------------------------------------------------------------------------- 1 | package vendor.samsung.hardware.radio.network; 2 | 3 | import vendor.samsung.hardware.radio.network.SehArfcnInfo; 4 | 5 | @VintfStability 6 | parcelable SehRoamingNetworkInfo { 7 | byte[] plmn; 8 | byte rat; 9 | byte regState; 10 | byte opResult; 11 | byte[] date; 12 | SehArfcnInfo[] arfcnInfo; 13 | } 14 | -------------------------------------------------------------------------------- /interfaces/radio/network/aidl/vendor/samsung/hardware/radio/network/SehSignalBar.aidl: -------------------------------------------------------------------------------- 1 | package vendor.samsung.hardware.radio.network; 2 | 3 | @VintfStability 4 | parcelable SehSignalBar { 5 | int cdmaLevel; 6 | int evdoLevel; 7 | int gsmLevel; 8 | int wcdmaLevel; 9 | int tdscdmaLevel; 10 | int lteLevel; 11 | int nrLevel; 12 | } 13 | -------------------------------------------------------------------------------- /interfaces/radio/network/aidl/vendor/samsung/hardware/radio/network/SehVendorConfiguration.aidl: -------------------------------------------------------------------------------- 1 | package vendor.samsung.hardware.radio.network; 2 | 3 | @VintfStability 4 | parcelable SehVendorConfiguration { 5 | String name; 6 | String value; 7 | } 8 | -------------------------------------------------------------------------------- /loki_tool/Android.bp: -------------------------------------------------------------------------------- 1 | cc_binary_host { 2 | name: "loki_tool", 3 | cflags: [ 4 | "-Wno-pointer-arith", 5 | "-Wno-unused-result", 6 | "-Wno-sign-compare", 7 | ], 8 | srcs: [ 9 | "loki_flash.c", 10 | "loki_patch.c", 11 | "loki_find.c", 12 | "loki_unlok.c", 13 | "main.c", 14 | ], 15 | } 16 | -------------------------------------------------------------------------------- /loki_tool/Makefile: -------------------------------------------------------------------------------- 1 | SRC_LOKI := loki_flash.c loki_patch.c loki_find.c loki_unlok.c main.c 2 | OBJ_LOKI = $(SRC_LOKI:.c=.o) 3 | MODULE_LOKI := loki_tool 4 | 5 | CC := arm-linux-androideabi-gcc 6 | CC_STRIP := arm-linux-androideabi-strip 7 | 8 | CFLAGS += -g -static -Wall 9 | #$(LDFLAGS) += 10 | 11 | all: $(MODULE_LOKI) 12 | 13 | host: CC := gcc 14 | host: $(MODULE_LOKI) 15 | 16 | %.o: %.c 17 | $(CC) -c -o $@ $< $(CFLAGS) 18 | 19 | $(MODULE_LOKI): $(OBJ_LOKI) 20 | $(CC) -o $@ $^ $(CFLAGS) $(LDFLAGS) 21 | 22 | strip: 23 | $(CC_STRIP) --strip-unneeded $(MODULE_LOKI) 24 | $(CC_STRIP) --strip-debug $(MODULE_LOKI) 25 | 26 | clean: 27 | rm -f *.o 28 | rm -f loki_tool 29 | 30 | .phony: host all 31 | -------------------------------------------------------------------------------- /rebalance_interrupts/Android.bp: -------------------------------------------------------------------------------- 1 | package { 2 | default_applicable_licenses: ["Android-Apache-2.0"], 3 | } 4 | 5 | cc_binary { 6 | name: "rebalance_interrupts-samsung", 7 | init_rc: ["rebalance_interrupts-samsung.rc"], 8 | srcs: ["rebalance_interrupts.cpp"], 9 | shared_libs: [ 10 | "libbase", 11 | "liblog", 12 | ], 13 | proprietary: true, 14 | } 15 | -------------------------------------------------------------------------------- /rebalance_interrupts/rebalance_interrupts-samsung.rc: -------------------------------------------------------------------------------- 1 | service vendor.rebalance_interrupts-samsung /vendor/bin/rebalance_interrupts-samsung 2 | disabled 3 | oneshot 4 | user root 5 | group system 6 | 7 | on early-boot 8 | start vendor.rebalance_interrupts-samsung 9 | 10 | on property:sys.boot_completed=1 11 | start vendor.rebalance_interrupts-samsung 12 | 13 | -------------------------------------------------------------------------------- /ril/secril_config_svc/Android.bp: -------------------------------------------------------------------------------- 1 | // 2 | // Copyright (C) 2021 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 | cc_binary { 18 | name: "secril_config_svc", 19 | vendor: true, 20 | srcs: ["secril_config_svc.cpp"], 21 | shared_libs: [ 22 | "libbase", 23 | ], 24 | } 25 | -------------------------------------------------------------------------------- /ril/sehradiomanager/Android.bp: -------------------------------------------------------------------------------- 1 | // 2 | // Copyright (C) 2024 The LineageOS Project 3 | // 4 | // SPDX-License-Identifier: Apache-2.0 5 | // 6 | 7 | cc_binary { 8 | name: "sehradiomanager", 9 | vendor: true, 10 | relative_install_path: "hw", 11 | srcs: [ 12 | "aidl/SehRadioNetworkIndication.cpp", 13 | "aidl/SehRadioNetworkResponse.cpp", 14 | "hidl/SehRadioIndication.cpp", 15 | "hidl/SehRadioResponse.cpp", 16 | "sehradiomanager.cpp", 17 | ], 18 | init_rc: ["sehradiomanager.rc"], 19 | shared_libs: [ 20 | "libbase", 21 | "libbinder", 22 | "libbinder_ndk", 23 | "libhidlbase", 24 | "libutils", 25 | "vendor.samsung.hardware.radio@2.0", 26 | "vendor.samsung.hardware.radio@2.1", 27 | "vendor.samsung.hardware.radio@2.2", 28 | "vendor.samsung.hardware.radio.network-V1-ndk", 29 | ], 30 | cflags: ["-Wno-unused-parameter"], 31 | } 32 | -------------------------------------------------------------------------------- /ril/sehradiomanager/sehradiomanager.rc: -------------------------------------------------------------------------------- 1 | service vendor.sehradiomanager /vendor/bin/hw/sehradiomanager 2 | class main 3 | user radio 4 | group radio 5 | disabled 6 | 7 | on property:sys.boot_completed=1 8 | start vendor.sehradiomanager 9 | -------------------------------------------------------------------------------- /sensors/Android.bp: -------------------------------------------------------------------------------- 1 | // 2 | // Copyright (C) 2022 The LineageOS Project 3 | // 4 | // SPDX-License-Identifier: Apache-2.0 5 | // 6 | 7 | cc_library_shared { 8 | name: "sensors.samsung", 9 | defaults: ["hidl_defaults"], 10 | srcs: [ 11 | "Sensor.cpp", 12 | "SensorsSubHal.cpp", 13 | ], 14 | shared_libs: [ 15 | "android.hardware.sensors@1.0", 16 | "android.hardware.sensors@2.0", 17 | "android.hardware.sensors@2.0-ScopedWakelock", 18 | "android.hardware.sensors@2.1", 19 | "libcutils", 20 | "libfmq", 21 | "libhardware", 22 | "libhidlbase", 23 | "liblog", 24 | "libpower", 25 | "libutils", 26 | ], 27 | static_libs: [ 28 | "android.hardware.sensors@1.0-convert", 29 | "android.hardware.sensors@2.X-multihal", 30 | ], 31 | cflags: [ 32 | "-DLOG_TAG=\"sensors.samsung\"", 33 | ], 34 | vendor: true, 35 | } 36 | --------------------------------------------------------------------------------