|
@@ -420,7 +420,8 @@ static void twl4030_current_worker(struct work_struct *data)
|
|
|
|
|
|
if (v < USB_MIN_VOLT) {
|
|
if (v < USB_MIN_VOLT) {
|
|
/* Back up and stop adjusting. */
|
|
/* Back up and stop adjusting. */
|
|
- bci->usb_cur -= USB_CUR_STEP;
|
|
|
|
|
|
+ if (bci->usb_cur >= USB_CUR_STEP)
|
|
|
|
+ bci->usb_cur -= USB_CUR_STEP;
|
|
bci->usb_cur_target = bci->usb_cur;
|
|
bci->usb_cur_target = bci->usb_cur;
|
|
} else if (bci->usb_cur >= bci->usb_cur_target ||
|
|
} else if (bci->usb_cur >= bci->usb_cur_target ||
|
|
bci->usb_cur + USB_CUR_STEP > USB_MAX_CURRENT) {
|
|
bci->usb_cur + USB_CUR_STEP > USB_MAX_CURRENT) {
|