mirror of
https://github.com/chararomandroid/android_device_samsung_a20
synced 2026-08-23 12:35:33 -04:00
universal7885: Add prebuilt GCam
This commit is contained in:
parent
7329c87196
commit
d195a1d848
73 changed files with 20 additions and 39 deletions
100
universal7885-common/apps/SamsungParts/jni/BatteryBridge.cpp
Normal file
100
universal7885-common/apps/SamsungParts/jni/BatteryBridge.cpp
Normal file
|
|
@ -0,0 +1,100 @@
|
|||
#include <vendor/eureka/hardware/battery/1.0/IBattery.h>
|
||||
#include <hidl/Status.h>
|
||||
#include <hidl/LegacySupport.h>
|
||||
#include <hardware/hardware.h>
|
||||
#include <hidl/HidlSupport.h>
|
||||
#include "jni.h"
|
||||
|
||||
using vendor::eureka::hardware::battery::V1_0::IBattery;
|
||||
using vendor::eureka::hardware::battery::V1_0::SysfsType;
|
||||
using vendor::eureka::hardware::battery::V1_0::Number;
|
||||
using android::sp;
|
||||
|
||||
extern "C" JNIEXPORT void
|
||||
JNICALL
|
||||
Java_com_eurekateam_samsungextras_interfaces_Battery_setChargeSysfs
|
||||
(JNIEnv *env , __unused jclass obj, jint enable) {
|
||||
android::sp<IBattery> service = IBattery::getService();
|
||||
if (enable == 1){
|
||||
service->setBatteryWritable(SysfsType::CHARGE, Number::ENABLE);
|
||||
}else{
|
||||
service->setBatteryWritable(SysfsType::CHARGE, Number::DISABLE);
|
||||
}
|
||||
}
|
||||
|
||||
extern "C" JNIEXPORT jint
|
||||
JNICALL
|
||||
Java_com_eurekateam_samsungextras_interfaces_Battery_getChargeSysfs
|
||||
(JNIEnv *env , __unused jclass obj) {
|
||||
android::sp<IBattery> service = IBattery::getService();
|
||||
int ret = service->getBatteryStats(SysfsType::CHARGE);
|
||||
return ret;
|
||||
}
|
||||
|
||||
extern "C"
|
||||
JNIEXPORT void JNICALL
|
||||
Java_com_eurekateam_samsungextras_interfaces_Battery_setFastCharge(JNIEnv *env, __unused jclass obj,
|
||||
jint enable) {
|
||||
android::sp<IBattery> service = IBattery::getService();
|
||||
if (enable == 1){
|
||||
service->setBatteryWritable(SysfsType::FASTCHARGE, Number::ENABLE);
|
||||
}else{
|
||||
service->setBatteryWritable(SysfsType::FASTCHARGE, Number::DISABLE);
|
||||
}
|
||||
}
|
||||
extern "C"
|
||||
JNIEXPORT jint JNICALL
|
||||
Java_com_eurekateam_samsungextras_interfaces_Battery_getFastChargeSysfs(JNIEnv *env, __unused
|
||||
jclass obj) {
|
||||
android::sp<IBattery> service = IBattery::getService();
|
||||
int ret = service->getBatteryStats(SysfsType::FASTCHARGE);
|
||||
return ret;
|
||||
}
|
||||
extern "C"
|
||||
JNIEXPORT jint JNICALL
|
||||
Java_com_eurekateam_samsungextras_interfaces_Battery_getGeneralBatteryStats(JNIEnv *env,
|
||||
__unused
|
||||
jclass obj, jint id) {
|
||||
/**
|
||||
* id:
|
||||
* 1 = BATTERY_CAPACITY_MAX
|
||||
* 2 = BATTERY_CAPACITY_CURRENT (%)
|
||||
* 3 = BATTERY_CAPACITY_CURRENT (mAh)
|
||||
* 4 = CHARGING_STATE
|
||||
* 5 = BATTERY_TEMP
|
||||
* 6 = BATTERY_CURRENT
|
||||
*/
|
||||
android::sp<IBattery> service = IBattery::getService();
|
||||
int ret;
|
||||
switch (id) {
|
||||
case 1:
|
||||
ret = service->getBatteryStats(SysfsType::CAPACITY_MAX) / 1000;
|
||||
break;
|
||||
case 2:
|
||||
ret = service->getBatteryStats(SysfsType::CAPACITY_CURRENT);
|
||||
break;
|
||||
case 3:
|
||||
ret = (float) service->getBatteryStats(SysfsType::CAPACITY_CURRENT) *
|
||||
(float) service->getBatteryStats(SysfsType::CAPACITY_MAX) / 100000;
|
||||
break;
|
||||
case 4:
|
||||
if (service->getBatteryStats(SysfsType::CURRENT) > 0){
|
||||
ret = 1;
|
||||
}else{
|
||||
ret = 0;
|
||||
}
|
||||
break;
|
||||
case 5:
|
||||
ret = service->getBatteryStats(SysfsType::TEMP) / 10;
|
||||
break;
|
||||
case 6:
|
||||
ret = service->getBatteryStats(SysfsType::CURRENT);
|
||||
break;
|
||||
default:
|
||||
ret = -1;
|
||||
break;
|
||||
}
|
||||
return ret;
|
||||
|
||||
|
||||
}
|
||||
Loading…
Reference in a new issue