Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 261c5136 authored by Rabin Vincent's avatar Rabin Vincent Committed by Lee Jones
Browse files

ab8500-charger: Run detect workaround only on AB8500



Only AB8500 has this hardware bug, so these works only need to be run
there.

Signed-off-by: default avatarRabin Vincent <rabin.vincent@stericsson.com>
Signed-off-by: default avatarLee Jones <lee.jones@linaro.org>
Reviewed-by: default avatarMarcus COOPER <marcus.xm.cooper@stericsson.com>
Reviewed-by: default avatarMartin SJOBLOM <martin.w.sjoblom@stericsson.com>
Reviewed-by: default avatarJonas ABERG <jonas.aberg@stericsson.com>
parent aee2b846
Loading
Loading
Loading
Loading
+13 −8
Original line number Original line Diff line number Diff line
@@ -441,6 +441,7 @@ static void ab8500_charger_set_usb_connected(struct ab8500_charger *di,
			mutex_lock(&di->charger_attached_mutex);
			mutex_lock(&di->charger_attached_mutex);
			mutex_unlock(&di->charger_attached_mutex);
			mutex_unlock(&di->charger_attached_mutex);


			if (is_ab8500(di->parent))
				queue_delayed_work(di->charger_wq,
				queue_delayed_work(di->charger_wq,
					   &di->usb_charger_attached_work,
					   &di->usb_charger_attached_work,
					   HZ);
					   HZ);
@@ -2622,6 +2623,8 @@ static irqreturn_t ab8500_charger_mainchplugdet_handler(int irq, void *_di)


	mutex_lock(&di->charger_attached_mutex);
	mutex_lock(&di->charger_attached_mutex);
	mutex_unlock(&di->charger_attached_mutex);
	mutex_unlock(&di->charger_attached_mutex);

	if (is_ab8500(di->parent))
		queue_delayed_work(di->charger_wq,
		queue_delayed_work(di->charger_wq,
			   &di->ac_charger_attached_work,
			   &di->ac_charger_attached_work,
			   HZ);
			   HZ);
@@ -3690,11 +3693,13 @@ static int ab8500_charger_probe(struct platform_device *pdev)
	ch_stat = ab8500_charger_detect_chargers(di, false);
	ch_stat = ab8500_charger_detect_chargers(di, false);


	if ((ch_stat & AC_PW_CONN) == AC_PW_CONN) {
	if ((ch_stat & AC_PW_CONN) == AC_PW_CONN) {
		if (is_ab8500(di->parent))
			queue_delayed_work(di->charger_wq,
			queue_delayed_work(di->charger_wq,
					   &di->ac_charger_attached_work,
					   &di->ac_charger_attached_work,
					   HZ);
					   HZ);
	}
	}
	if ((ch_stat & USB_PW_CONN) == USB_PW_CONN) {
	if ((ch_stat & USB_PW_CONN) == USB_PW_CONN) {
		if (is_ab8500(di->parent))
			queue_delayed_work(di->charger_wq,
			queue_delayed_work(di->charger_wq,
					   &di->usb_charger_attached_work,
					   &di->usb_charger_attached_work,
					   HZ);
					   HZ);