leds: leds-pm8xxx: Fix incorrect register macros
Some of the register macros are incorrectly used. Fix
them to be used properly.
CRs-fixed: 421968
Change-Id: I036b6cc0146c6a5d6276f7a48e313d3cd948c8ef
Signed-off-by: Mohan Pallaka <mpallaka@codeaurora.org>
diff --git a/drivers/leds/leds-pm8xxx.c b/drivers/leds/leds-pm8xxx.c
index 255920e..a641ce9 100644
--- a/drivers/leds/leds-pm8xxx.c
+++ b/drivers/leds/leds-pm8xxx.c
@@ -46,8 +46,8 @@
/* wled control registers */
#define WLED_MOD_CTRL_REG SSBI_REG_ADDR_WLED_CTRL(1)
#define WLED_MAX_CURR_CFG_REG(n) SSBI_REG_ADDR_WLED_CTRL(n + 2)
-#define WLED_BRIGHTNESS_CNTL_REG1(n) SSBI_REG_ADDR_WLED_CTRL(n + 5)
-#define WLED_BRIGHTNESS_CNTL_REG2(n) SSBI_REG_ADDR_WLED_CTRL(n + 6)
+#define WLED_BRIGHTNESS_CNTL_REG1(n) SSBI_REG_ADDR_WLED_CTRL((2 * n) + 5)
+#define WLED_BRIGHTNESS_CNTL_REG2(n) SSBI_REG_ADDR_WLED_CTRL((2 * n) + 6)
#define WLED_SYNC_REG SSBI_REG_ADDR_WLED_CTRL(11)
#define WLED_OVP_CFG_REG SSBI_REG_ADDR_WLED_CTRL(13)
#define WLED_BOOST_CFG_REG SSBI_REG_ADDR_WLED_CTRL(14)
@@ -640,7 +640,7 @@
/* program activation delay and maximum current */
for (i = 0; i < num_wled_strings; i++) {
rc = pm8xxx_readb(led->dev->parent,
- WLED_MAX_CURR_CFG_REG(i + 2), &val);
+ WLED_MAX_CURR_CFG_REG(i), &val);
if (rc) {
dev_err(led->dev->parent, "can't read wled max current"
" config register rc=%d\n", rc);
@@ -665,7 +665,7 @@
val = (val & ~WLED_MAX_CURR_MASK) | led->max_current;
rc = pm8xxx_writeb(led->dev->parent,
- WLED_MAX_CURR_CFG_REG(i + 2), val);
+ WLED_MAX_CURR_CFG_REG(i), val);
if (rc) {
dev_err(led->dev->parent, "can't write wled max current"
" config register rc=%d\n", rc);