dev: pm8x41: Add feedback interface for WLED

Some of devices have backlight not on issue in LK, like
QRD8x26 DVT and 8x26 MTP. Fix this by selecting LED1
output as feedback node for the Boost.

By the way, fix an issue in pm8x41 wled interface for
iled_sync control.

Change-Id: Ibad6f7ad42b43f5d512c40d23d2afc9386b2541b
diff --git a/dev/pmic/pm8x41/include/pm8x41_wled.h b/dev/pmic/pm8x41/include/pm8x41_wled.h
index 0ef9091..300c0b9 100644
--- a/dev/pmic/pm8x41/include/pm8x41_wled.h
+++ b/dev/pmic/pm8x41/include/pm8x41_wled.h
@@ -42,6 +42,7 @@
 #define PM_WLED_LED3_BRIGHTNESS_MSB  PM_WLED_CTNL_REG(0x45)
 #define PM_WLED_ENABLE               PM_WLED_CTNL_REG(0x46)
 #define PM_WLED_ILED_SYNC_BIT        PM_WLED_CTNL_REG(0x47)
+#define PM_WLED_FDBCK_CONTROL        PM_WLED_CTNL_REG(0x48)
 #define PM_WLED_MODULATION_SCHEME    PM_WLED_CTNL_REG(0x4A)
 #define PM_WLED_MAX_DUTY_CYCLE       PM_WLED_CTNL_REG(0x4B)
 #define PM_WLED_OVP                  PM_WLED_CTNL_REG(0x4D)
@@ -65,7 +66,8 @@
 	uint16_t led3_brightness;
 	uint8_t max_duty_cycle;
 	uint8_t ovp;
-	uint8_t full_current_scale;;
+	uint8_t full_current_scale;
+	uint8_t fdbck;
 };
 
 void pm8x41_wled_config(struct pm8x41_wled_data *wled_ctrl);
diff --git a/dev/pmic/pm8x41/pm8x41_wled.c b/dev/pmic/pm8x41/pm8x41_wled.c
index 8c37e12..e879f1f 100644
--- a/dev/pmic/pm8x41/pm8x41_wled.c
+++ b/dev/pmic/pm8x41/pm8x41_wled.c
@@ -72,6 +72,7 @@
 	wled_reg_write(LEDn_FULL_SCALE_CURRENT(2), wled_ctrl->full_current_scale);
 	wled_reg_write(LEDn_FULL_SCALE_CURRENT(3), wled_ctrl->full_current_scale);
 
+	wled_reg_write(PM_WLED_FDBCK_CONTROL, wled_ctrl->fdbck);
 	dprintf(SPEW, "WLED Configuration Success.\n");
 
 }
@@ -98,8 +99,8 @@
 
 	if (enable) {
 		value = PM_WLED_LED1_ILED_SYNC_MASK |
-			PM_WLED_LED1_ILED_SYNC_MASK |
-			PM_WLED_LED1_ILED_SYNC_MASK;
+			PM_WLED_LED2_ILED_SYNC_MASK |
+			PM_WLED_LED3_ILED_SYNC_MASK;
 	}
 
 	wled_reg_write(PM_WLED_ILED_SYNC_BIT, value);