summaryrefslogtreecommitdiff
path: root/firmware/target/arm/imx233
diff options
context:
space:
mode:
Diffstat (limited to 'firmware/target/arm/imx233')
-rw-r--r--firmware/target/arm/imx233/power-imx233.c3
-rw-r--r--firmware/target/arm/imx233/powermgmt-imx233.c4
-rw-r--r--firmware/target/arm/imx233/usb-imx233.c7
-rw-r--r--firmware/target/arm/imx233/usb-target.h1
4 files changed, 5 insertions, 10 deletions
diff --git a/firmware/target/arm/imx233/power-imx233.c b/firmware/target/arm/imx233/power-imx233.c
index ac1a407ba0..f532f3303f 100644
--- a/firmware/target/arm/imx233/power-imx233.c
+++ b/firmware/target/arm/imx233/power-imx233.c
@@ -112,7 +112,8 @@ void power_off(void)
112 112
113unsigned int power_input_status(void) 113unsigned int power_input_status(void)
114{ 114{
115 return usb_plugged() ? POWER_INPUT_MAIN_CHARGER : POWER_INPUT_NONE; 115 return (usb_detect == USB_INSERTED)
116 ? POWER_INPUT_MAIN_CHARGER : POWER_INPUT_NONE;
116} 117}
117 118
118bool charging_state(void) 119bool charging_state(void)
diff --git a/firmware/target/arm/imx233/powermgmt-imx233.c b/firmware/target/arm/imx233/powermgmt-imx233.c
index 97f6e08e12..87c48e7655 100644
--- a/firmware/target/arm/imx233/powermgmt-imx233.c
+++ b/firmware/target/arm/imx233/powermgmt-imx233.c
@@ -21,7 +21,7 @@
21 21
22#include "powermgmt.h" 22#include "powermgmt.h"
23#include "power-imx233.h" 23#include "power-imx233.h"
24#include "usb-target.h" 24#include "usb.h"
25#include "string.h" 25#include "string.h"
26//#define LOGF_ENABLE 26//#define LOGF_ENABLE
27#include "logf.h" 27#include "logf.h"
@@ -60,7 +60,7 @@ void powermgmt_init_target(void)
60 60
61void charging_algorithm_step(void) 61void charging_algorithm_step(void)
62{ 62{
63 bool is_5v_present = usb_plugged(); 63 bool is_5v_present = usb_detect() == USB_INSERTED;
64 64
65 /* initial state & 5v -> battery transition */ 65 /* initial state & 5v -> battery transition */
66 if(!is_5v_present && charge_state != DISCHARGING) 66 if(!is_5v_present && charge_state != DISCHARGING)
diff --git a/firmware/target/arm/imx233/usb-imx233.c b/firmware/target/arm/imx233/usb-imx233.c
index 91fb770190..8aaa90c46b 100644
--- a/firmware/target/arm/imx233/usb-imx233.c
+++ b/firmware/target/arm/imx233/usb-imx233.c
@@ -68,12 +68,7 @@ void usb_init_device(void)
68 68
69int usb_detect(void) 69int usb_detect(void)
70{ 70{
71 return usb_plugged() ? USB_INSERTED : USB_EXTRACTED; 71 return (HW_POWER_STS & HW_POWER_STS__VBUSVALID) ? USB_INSERTED : USB_EXTRACTED;
72}
73
74bool usb_plugged(void)
75{
76 return !!(HW_POWER_STS & HW_POWER_STS__VBUSVALID);
77} 72}
78 73
79void usb_enable(bool on) 74void usb_enable(bool on)
diff --git a/firmware/target/arm/imx233/usb-target.h b/firmware/target/arm/imx233/usb-target.h
index 976d954038..600fc990ed 100644
--- a/firmware/target/arm/imx233/usb-target.h
+++ b/firmware/target/arm/imx233/usb-target.h
@@ -29,6 +29,5 @@
29 29
30void usb_insert_int(void); 30void usb_insert_int(void);
31void usb_remove_int(void); 31void usb_remove_int(void);
32bool usb_plugged(void);
33 32
34#endif /* USB_TARGET_H */ 33#endif /* USB_TARGET_H */