From 53a86c3b26732240d6eec3d3b7a5f9222568dc1f Mon Sep 17 00:00:00 2001
From: Stefan Haun <tux@netz39.de>
Date: Thu, 22 Aug 2019 09:27:07 +0200
Subject: [PATCH] pmic: Add functions to read various PMIC values

* battery_voltage (already existed)
* battery_current
* chargein_voltage
* chargein_current
* system_voltage
* thermistor_voltage
---
 epicardium/modules/pmic.c | 44 +++++++++++++++++++++++++++++++++++++++
 1 file changed, 44 insertions(+)

diff --git a/epicardium/modules/pmic.c b/epicardium/modules/pmic.c
index b2105dc2..093e97ec 100644
--- a/epicardium/modules/pmic.c
+++ b/epicardium/modules/pmic.c
@@ -231,6 +231,50 @@ int epic_read_battery_voltage(float *result)
 	return pmic_read_amux(PMIC_AMUX_BATT_U, result);
 }
 
+/*
+ * API-call for battery current
+ */
+int epic_read_battery_current(float *result)
+{
+	return pmic_read_amux(PMIC_AMUX_BATT_CHG_I, result);
+}
+
+/*
+ * API-call for charge voltage
+ */
+int epic_read_chargein_voltage(float *result)
+{
+	return pmic_read_amux(PMIC_AMUX_CHGIN_U, result);
+}
+
+/*
+ * API-call for charge voltage
+ */
+int epic_read_chargein_current(float *result)
+{
+	return pmic_read_amux(PMIC_AMUX_BATT_CHG_I, result);
+}
+
+/*
+ * API-call for system voltage
+ */
+int epic_read_system_voltage(float *result)
+{
+	return pmic_read_amux(PMIC_AMUX_SYS_U, result);
+}
+
+/*
+ * API-call for thermistor voltage
+ *
+ * Thermistor is as 10k at room temperature,
+ * voltage divided with another 10k.
+ * (50% V_bias at room temperature)
+ */
+int epic_read_thermistor_voltage(float *result)
+{
+	return pmic_read_amux(PMIC_AMUX_THM_U, result);
+}
+
 static StaticTimer_t pmic_timer_data;
 static void vPmicTimerCb(TimerHandle_t xTimer)
 {
-- 
GitLab