universal7885: SamsungParts: Move to AIDL

This commit is contained in:
roynatech2544 2022-10-06 15:47:32 +00:00
commit 9030e2eb7b
16 changed files with 148 additions and 269 deletions

View file

@ -1,5 +1,5 @@
cc_library_shared {
name: "libsamsungparts_jni",
name: "libSwapStorageHelper",
defaults: ["eureka_defaults"],
cflags: [
"-Wall",
@ -10,10 +10,4 @@ cc_library_shared {
srcs: ["*.cpp"],
header_libs: ["jni_headers"],
static_libs: ["libc++fs"],
shared_libs: [
"libhidlbase",
"liblog",
"libutils",
"vendor.eureka.hardware.parts@1.0",
],
}

View file

@ -1,88 +0,0 @@
#include "jni.h"
#include <hardware/hardware.h>
#include <hidl/HidlSupport.h>
#include <hidl/LegacySupport.h>
#include <hidl/Status.h>
#include <vendor/eureka/hardware/parts/1.0/IBatteryStats.h>
using android::sp;
using vendor::eureka::hardware::parts::V1_0::IBatteryStats;
using vendor::eureka::hardware::parts::V1_0::Status;
using vendor::eureka::hardware::parts::V1_0::BatterySys;
enum {
BATTERY_CAPACITY_MAX = 1,
BATTERY_CAPACITY_CURRENT,
BATTERY_CAPACITY_CURRENT_MAH,
CHARGING_STATE,
BATTERY_TEMP,
BATTERY_CURRENT = 6
};
static android::sp<IBatteryStats> service = IBatteryStats::getService();
extern "C" JNIEXPORT void JNICALL
Java_com_eurekateam_samsungextras_interfaces_Battery_setChargeSysfs(
JNIEnv /*env*/, __unused jclass obj, jint enable) {
if (enable == 1) {
service->setBatteryWritable(BatterySys::CHARGE, Status::ENABLE);
} else {
service->setBatteryWritable(BatterySys::CHARGE, Status::DISABLE);
}
}
extern "C" JNIEXPORT jint JNICALL
Java_com_eurekateam_samsungextras_interfaces_Battery_getChargeSysfs(
JNIEnv /*env*/, __unused jclass obj) {
int ret = service->getBatteryStats(BatterySys::CHARGE);
return ret;
}
extern "C" JNIEXPORT void JNICALL
Java_com_eurekateam_samsungextras_interfaces_Battery_setFastCharge(
JNIEnv /*env*/, __unused jobject obj, jint enable) {
if (enable == 1) {
service->setBatteryWritable(BatterySys::FASTCHARGE, Status::ENABLE);
} else {
service->setBatteryWritable(BatterySys::FASTCHARGE, Status::DISABLE);
}
}
extern "C" JNIEXPORT jint JNICALL
Java_com_eurekateam_samsungextras_interfaces_Battery_getFastChargeSysfs(
JNIEnv /*env*/, __unused jclass obj) {
int ret = service->getBatteryStats(BatterySys::FASTCHARGE);
return ret;
}
extern "C" JNIEXPORT jint JNICALL
Java_com_eurekateam_samsungextras_interfaces_Battery_getGeneralBatteryStats(
JNIEnv /*env*/, __unused jobject obj, jint id) {
int ret;
switch (id) {
case BATTERY_CAPACITY_MAX:
ret = service->getBatteryStats(BatterySys::CAPACITY_MAX) / 1000;
break;
case BATTERY_CAPACITY_CURRENT:
ret = service->getBatteryStats(BatterySys::CAPACITY_CURRENT);
break;
case BATTERY_CAPACITY_CURRENT_MAH:
ret = (float)service->getBatteryStats(BatterySys::CAPACITY_CURRENT) *
(float)service->getBatteryStats(BatterySys::CAPACITY_MAX) / 100000;
break;
case CHARGING_STATE:
if (service->getBatteryStats(BatterySys::CURRENT) > 0) {
ret = 1;
} else {
ret = 0;
}
break;
case BATTERY_TEMP:
ret = service->getBatteryStats(BatterySys::TEMP) / 10;
break;
case BATTERY_CURRENT:
ret = service->getBatteryStats(BatterySys::CURRENT);
break;
default:
ret = -1;
break;
}
return ret;
}

View file

@ -1,34 +0,0 @@
#include "jni.h"
#include <hardware/hardware.h>
#include <hidl/HidlSupport.h>
#include <hidl/LegacySupport.h>
#include <hidl/Status.h>
#include <vendor/eureka/hardware/parts/1.0/IDisplayConfigs.h>
using android::sp;
using vendor::eureka::hardware::parts::V1_0::DisplaySys;
using vendor::eureka::hardware::parts::V1_0::IDisplayConfigs;
using vendor::eureka::hardware::parts::V1_0::Status;
static android::sp<IDisplayConfigs> service = IDisplayConfigs::getService();
extern "C" JNIEXPORT void JNICALL
Java_com_eurekateam_samsungextras_interfaces_Display_setDT2W(JNIEnv /*env*/,
jclass /*clazz*/,
jboolean enable) {
if (enable) {
service->writeDisplay(Status::ENABLE, DisplaySys::DOUBLE_TAP);
} else {
service->writeDisplay(Status::DISABLE, DisplaySys::DOUBLE_TAP);
}
}
extern "C" JNIEXPORT void JNICALL
Java_com_eurekateam_samsungextras_interfaces_Display_setGloveMode(
JNIEnv /**env*/, jclass /*clazz*/, jboolean enable) {
if (enable) {
service->writeDisplay(Status::ENABLE, DisplaySys::GLOVE_MODE);
} else {
service->writeDisplay(Status::DISABLE, DisplaySys::GLOVE_MODE);
}
}

View file

@ -1,41 +0,0 @@
#include "jni.h"
#include <hardware/hardware.h>
#include <hidl/HidlSupport.h>
#include <hidl/LegacySupport.h>
#include <hidl/Status.h>
#include <vendor/eureka/hardware/parts/1.0/IFlashBrightness.h>
using android::sp;
using vendor::eureka::hardware::parts::V1_0::IFlashBrightness;
using vendor::eureka::hardware::parts::V1_0::Status;
static android::sp<IFlashBrightness> service = IFlashBrightness::getService();
extern "C" JNIEXPORT void JNICALL
Java_com_eurekateam_samsungextras_interfaces_Flashlight_setEnabled(
JNIEnv /*env*/, __unused jobject obj, jboolean enabled) {
if (enabled) {
service->setFlashlightEnable(Status::ENABLE);
} else {
service->setFlashlightEnable(Status::DISABLE);
}
}
extern "C" JNIEXPORT void JNICALL
Java_com_eurekateam_samsungextras_interfaces_Flashlight_setFlash(
JNIEnv /*env*/, __unused jobject obj, jint value) {
service->setFlashlightWritable(value);
}
extern "C" JNIEXPORT jint JNICALL
Java_com_eurekateam_samsungextras_interfaces_Flashlight_getFlash(JNIEnv /*env*/,
jobject /*clazz*/,
jint isA10) {
int ret;
if (isA10 == 1) {
ret = service->readFlashlightstats(false);
} else {
ret = service->readFlashlightstats(true);
}
return ret;
}

View file

@ -1,29 +0,0 @@
#include "jni.h"
#include <hardware/hardware.h>
#include <hidl/HidlSupport.h>
#include <hidl/LegacySupport.h>
#include <hidl/Status.h>
#include <vendor/eureka/hardware/parts/1.0/ISwapOnData.h>
using android::sp;
using vendor::eureka::hardware::parts::V1_0::ISwapOnData;
static sp<ISwapOnData> service = ISwapOnData::getService();
extern "C" JNIEXPORT void JNICALL
Java_com_eurekateam_samsungextras_interfaces_Swap_setSize(JNIEnv /*env*/,
jclass /*clazz*/,
jint size) {
service->setSwapSize(size);
}
extern "C" JNIEXPORT void JNICALL
Java_com_eurekateam_samsungextras_interfaces_Swap_setSwapOn(JNIEnv /*env*/,
jclass /*clazz*/,
jboolean enable) {
if (enable) {
service->setSwapOn();
} else {
service->setSwapOff();
}
}