LKML Archive on lore.kernel.org
help / color / mirror / Atom feed
From: Dan Murphy <dmurphy@ti.com>
To: <jacek.anaszewski@gmail.com>, <pavel@ucw.cz>,
<broonie@kernel.org>, <lgirdwood@gmail.com>
Cc: <lee.jones@linaro.org>, <linux-leds@vger.kernel.org>,
<linux-kernel@vger.kernel.org>, Dan Murphy <dmurphy@ti.com>
Subject: [RESEND PATCH v4 3/6] mfd: ti-lmu: Add LM36274 support to the ti-lmu
Date: Wed, 22 May 2019 14:27:30 -0500 [thread overview]
Message-ID: <20190522192733.13422-4-dmurphy@ti.com> (raw)
In-Reply-To: <20190522192733.13422-1-dmurphy@ti.com>
Add the LM36274 register support to the ti-lmu MFD driver.
Signed-off-by: Dan Murphy <dmurphy@ti.com>
---
drivers/mfd/Kconfig | 5 ++---
drivers/mfd/ti-lmu.c | 14 ++++++++++++++
include/linux/mfd/ti-lmu-register.h | 23 +++++++++++++++++++++++
include/linux/mfd/ti-lmu.h | 4 ++++
4 files changed, 43 insertions(+), 3 deletions(-)
diff --git a/drivers/mfd/Kconfig b/drivers/mfd/Kconfig
index fcae244229b3..5606411038bb 100644
--- a/drivers/mfd/Kconfig
+++ b/drivers/mfd/Kconfig
@@ -1311,9 +1311,8 @@ config MFD_TI_LMU
select REGMAP_I2C
help
Say yes here to enable support for TI LMU chips.
-
- TI LMU MFD supports LM3532, LM3631, LM3632, LM3633, and LM3695.
- It consists of backlight, LED and regulator driver.
+ TI LMU MFD supports LM3532, LM3631, LM3632, LM3633, LM3695 and
+ LM36274. It consists of backlight, LED and regulator driver.
It provides consistent device controls for lighting functions.
config MFD_OMAP_USB_HOST
diff --git a/drivers/mfd/ti-lmu.c b/drivers/mfd/ti-lmu.c
index 89b1c5b584af..691ab9dd6236 100644
--- a/drivers/mfd/ti-lmu.c
+++ b/drivers/mfd/ti-lmu.c
@@ -111,6 +111,17 @@ static const struct mfd_cell lm3695_devices[] = {
},
};
+static const struct mfd_cell lm36274_devices[] = {
+ LM363X_REGULATOR(LM36274_BOOST),
+ LM363X_REGULATOR(LM36274_LDO_POS),
+ LM363X_REGULATOR(LM36274_LDO_NEG),
+ {
+ .name = "lm36274-leds",
+ .id = LM36274,
+ .of_compatible = "ti,lm36274-backlight",
+ },
+};
+
#define TI_LMU_DATA(chip, max_reg) \
static const struct ti_lmu_data chip##_data = \
{ \
@@ -123,6 +134,7 @@ TI_LMU_DATA(lm3631, LM3631_MAX_REG);
TI_LMU_DATA(lm3632, LM3632_MAX_REG);
TI_LMU_DATA(lm3633, LM3633_MAX_REG);
TI_LMU_DATA(lm3695, LM3695_MAX_REG);
+TI_LMU_DATA(lm36274, LM36274_MAX_REG);
static int ti_lmu_probe(struct i2c_client *cl, const struct i2c_device_id *id)
{
@@ -191,6 +203,7 @@ static const struct of_device_id ti_lmu_of_match[] = {
{ .compatible = "ti,lm3632", .data = &lm3632_data },
{ .compatible = "ti,lm3633", .data = &lm3633_data },
{ .compatible = "ti,lm3695", .data = &lm3695_data },
+ { .compatible = "ti,lm36274", .data = &lm36274_data },
{ }
};
MODULE_DEVICE_TABLE(of, ti_lmu_of_match);
@@ -200,6 +213,7 @@ static const struct i2c_device_id ti_lmu_ids[] = {
{ "lm3632", LM3632 },
{ "lm3633", LM3633 },
{ "lm3695", LM3695 },
+ { "lm36274", LM36274 },
{ }
};
MODULE_DEVICE_TABLE(i2c, ti_lmu_ids);
diff --git a/include/linux/mfd/ti-lmu-register.h b/include/linux/mfd/ti-lmu-register.h
index 76998b01764b..076d8dea38fd 100644
--- a/include/linux/mfd/ti-lmu-register.h
+++ b/include/linux/mfd/ti-lmu-register.h
@@ -189,4 +189,27 @@
#define LM3695_REG_BRT_MSB 0x14
#define LM3695_MAX_REG 0x14
+
+/* LM36274 */
+#define LM36274_REG_REV 0x01
+#define LM36274_REG_BL_CFG_1 0x02
+#define LM36274_REG_BL_CFG_2 0x03
+#define LM36274_REG_BRT_LSB 0x04
+#define LM36274_REG_BRT_MSB 0x05
+#define LM36274_REG_BL_EN 0x08
+
+#define LM36274_REG_BIAS_CONFIG_1 0x09
+#define LM36274_EXT_EN_MASK BIT(0)
+#define LM36274_EN_VNEG_MASK BIT(1)
+#define LM36274_EN_VPOS_MASK BIT(2)
+
+#define LM36274_REG_BIAS_CONFIG_2 0x0a
+#define LM36274_REG_BIAS_CONFIG_3 0x0b
+#define LM36274_REG_VOUT_BOOST 0x0c
+#define LM36274_REG_VOUT_POS 0x0d
+#define LM36274_REG_VOUT_NEG 0x0e
+#define LM36274_VOUT_MASK 0x3F
+
+#define LM36274_MAX_REG 0x13
+
#endif
diff --git a/include/linux/mfd/ti-lmu.h b/include/linux/mfd/ti-lmu.h
index 54e9d272e81c..0957598c7d41 100644
--- a/include/linux/mfd/ti-lmu.h
+++ b/include/linux/mfd/ti-lmu.h
@@ -26,6 +26,7 @@ enum ti_lmu_id {
LM3632,
LM3633,
LM3695,
+ LM36274,
LMU_MAX_ID,
};
@@ -67,6 +68,9 @@ enum lm363x_regulator_id {
LM3632_BOOST, /* Boost output */
LM3632_LDO_POS, /* Positive display bias output */
LM3632_LDO_NEG, /* Negative display bias output */
+ LM36274_BOOST, /* Boost output */
+ LM36274_LDO_POS, /* Positive display bias output */
+ LM36274_LDO_NEG, /* Negative display bias output */
};
/**
--
2.21.0.5.gaeb582a983
next prev parent reply other threads:[~2019-05-22 19:45 UTC|newest]
Thread overview: 37+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-05-22 19:27 [PATCH v4 0/6] LM36274 Introduction Dan Murphy
2019-05-22 19:27 ` [RESEND PATCH v4 1/6] regulator: lm363x: Make the gpio register enable flexible Dan Murphy
2019-05-22 21:22 ` Pavel Machek
2019-05-23 13:03 ` Mark Brown
2019-05-23 13:50 ` Dan Murphy
2019-05-26 12:48 ` Mark Brown
2019-05-29 11:51 ` Dan Murphy
2019-05-29 15:10 ` Mark Brown
2019-05-29 20:47 ` Dan Murphy
2019-05-30 15:26 ` Mark Brown
2019-06-04 15:14 ` Dan Murphy
2019-06-04 15:33 ` Mark Brown
2019-05-22 19:27 ` [RESEND PATCH v4 2/6] dt-bindings: mfd: Add lm36274 bindings to ti-lmu Dan Murphy
2019-05-22 21:22 ` Pavel Machek
2019-05-22 19:27 ` Dan Murphy [this message]
2019-05-23 8:09 ` [RESEND PATCH v4 3/6] mfd: ti-lmu: Add LM36274 support to the ti-lmu Pavel Machek
2019-05-22 19:27 ` [RESEND PATCH v4 4/6] regulator: lm363x: Add support for LM36274 Dan Murphy
2019-05-23 8:12 ` Pavel Machek
2019-05-23 13:04 ` Mark Brown
2019-05-22 19:27 ` [RESEND PATCH v4 5/6] dt-bindings: leds: Add LED bindings for the LM36274 Dan Murphy
2019-05-23 12:43 ` Pavel Machek
2019-05-22 19:27 ` [RESEND PATCH v4 6/6] leds: lm36274: Introduce the TI LM36274 LED driver Dan Murphy
2019-05-23 12:50 ` Pavel Machek
2019-05-23 19:09 ` Dan Murphy
2019-05-24 20:51 ` Jacek Anaszewski
2019-05-29 13:58 ` Lee Jones
2019-05-29 20:50 ` Jacek Anaszewski
2019-05-30 7:38 ` Lee Jones
2019-05-30 19:58 ` Jacek Anaszewski
2019-05-31 6:23 ` Lee Jones
2019-05-31 19:44 ` Jacek Anaszewski
2019-05-31 21:07 ` Dan Murphy
2019-05-31 21:57 ` Jacek Anaszewski
2019-05-31 22:41 ` Dan Murphy
2019-06-01 13:55 ` Jacek Anaszewski
2019-05-22 19:37 ` [PATCH v4 0/6] LM36274 Introduction Jacek Anaszewski
2019-05-22 19:39 ` Dan Murphy
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20190522192733.13422-4-dmurphy@ti.com \
--to=dmurphy@ti.com \
--cc=broonie@kernel.org \
--cc=jacek.anaszewski@gmail.com \
--cc=lee.jones@linaro.org \
--cc=lgirdwood@gmail.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-leds@vger.kernel.org \
--cc=pavel@ucw.cz \
--subject='Re: [RESEND PATCH v4 3/6] mfd: ti-lmu: Add LM36274 support to the ti-lmu' \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).