summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAidan MacDonald <amachronic@protonmail.com>2022-01-02 20:09:28 +0000
committerAidan MacDonald <amachronic@protonmail.com>2022-01-02 20:11:03 +0000
commit42999913ba3a76221fceb04b1f935ed4e0e71476 (patch)
treef2a2af90c3c0fcc4d96c49af239772a2e08c795c
parent83c23983841fd363a5a2c0e5cbd194110025226c (diff)
downloadrockbox-42999913ba3a76221fceb04b1f935ed4e0e71476.tar.gz
rockbox-42999913ba3a76221fceb04b1f935ed4e0e71476.zip
x1000: Increase USB current limit to 500 mA at all times
The 100 mA USB current limit added in commit 90dd2f84a9 is a problem when booting with a completely dead battery. Often 100 mA isn't enough to power the player, never mind charge the battery, so revert to the old behavior of only limiting charge current. Given that the original firmware on these devices isn't following the USB spec to the letter, it's probably not worth trying to make Rockbox do so unless and until it causes a real problem - which hasn't happened yet. Change-Id: I179a08310c226fe01460680c62fd25fd69079256
-rw-r--r--firmware/target/mips/ingenic_x1000/erosqnative/power-erosqnative.c4
-rw-r--r--firmware/target/mips/ingenic_x1000/fiiom3k/power-fiiom3k.c4
-rw-r--r--firmware/target/mips/ingenic_x1000/shanlingq1/power-shanlingq1.c4
3 files changed, 6 insertions, 6 deletions
diff --git a/firmware/target/mips/ingenic_x1000/erosqnative/power-erosqnative.c b/firmware/target/mips/ingenic_x1000/erosqnative/power-erosqnative.c
index 7ad9479a96..9cf64cee01 100644
--- a/firmware/target/mips/ingenic_x1000/erosqnative/power-erosqnative.c
+++ b/firmware/target/mips/ingenic_x1000/erosqnative/power-erosqnative.c
@@ -103,8 +103,8 @@ void usb_charging_maxcurrent_change(int maxcurrent)
103 * reduced dynamically by the AXP192 so the combined load is less 103 * reduced dynamically by the AXP192 so the combined load is less
104 * than the set VBUS current limit. */ 104 * than the set VBUS current limit. */
105 if(maxcurrent <= 100) { 105 if(maxcurrent <= 100) {
106 vbus_limit = AXP_VBUS_LIMIT_100mA; 106 vbus_limit = AXP_VBUS_LIMIT_500mA;
107 charge_current = 550; 107 charge_current = 100;
108 } else { 108 } else {
109 vbus_limit = AXP_VBUS_LIMIT_500mA; 109 vbus_limit = AXP_VBUS_LIMIT_500mA;
110 charge_current = 550; 110 charge_current = 550;
diff --git a/firmware/target/mips/ingenic_x1000/fiiom3k/power-fiiom3k.c b/firmware/target/mips/ingenic_x1000/fiiom3k/power-fiiom3k.c
index c8498c4dbc..b20bbd9e8c 100644
--- a/firmware/target/mips/ingenic_x1000/fiiom3k/power-fiiom3k.c
+++ b/firmware/target/mips/ingenic_x1000/fiiom3k/power-fiiom3k.c
@@ -96,8 +96,8 @@ void usb_charging_maxcurrent_change(int maxcurrent)
96 * reduced dynamically by the AXP192 so the combined load is less 96 * reduced dynamically by the AXP192 so the combined load is less
97 * than the set VBUS current limit. */ 97 * than the set VBUS current limit. */
98 if(maxcurrent <= 100) { 98 if(maxcurrent <= 100) {
99 vbus_limit = AXP_VBUS_LIMIT_100mA; 99 vbus_limit = AXP_VBUS_LIMIT_500mA;
100 charge_current = 550; 100 charge_current = 100;
101 } else { 101 } else {
102 vbus_limit = AXP_VBUS_LIMIT_500mA; 102 vbus_limit = AXP_VBUS_LIMIT_500mA;
103 charge_current = 550; 103 charge_current = 550;
diff --git a/firmware/target/mips/ingenic_x1000/shanlingq1/power-shanlingq1.c b/firmware/target/mips/ingenic_x1000/shanlingq1/power-shanlingq1.c
index 9637ceef2f..86ee84c37a 100644
--- a/firmware/target/mips/ingenic_x1000/shanlingq1/power-shanlingq1.c
+++ b/firmware/target/mips/ingenic_x1000/shanlingq1/power-shanlingq1.c
@@ -116,8 +116,8 @@ void usb_charging_maxcurrent_change(int maxcurrent)
116 * reduced dynamically by the AXP192 so the combined load is less 116 * reduced dynamically by the AXP192 so the combined load is less
117 * than the set VBUS current limit. */ 117 * than the set VBUS current limit. */
118 if(maxcurrent <= 100) { 118 if(maxcurrent <= 100) {
119 vbus_limit = AXP_VBUS_LIMIT_100mA; 119 vbus_limit = AXP_VBUS_LIMIT_500mA;
120 charge_current = 550; 120 charge_current = 100;
121 } else { 121 } else {
122 vbus_limit = AXP_VBUS_LIMIT_500mA; 122 vbus_limit = AXP_VBUS_LIMIT_500mA;
123 charge_current = 550; 123 charge_current = 550;