Re: [PATCH v2 3/4] Regulators: TPS65218: Add Regulator driver for TPS65218 PMIC

2014-02-18 Thread Keerthy

On Saturday 15 February 2014 01:51 AM, Mark Brown wrote:

On Thu, Feb 06, 2014 at 11:20:13AM +0530, Keerthy wrote:

This patch adds support for TPS65218 PMIC regulators.

The regulators set consists of 6 DCDCs and 1 LDO. The output
voltages are configurable and are meant to supply power to the
main processor and other components.

Applied, thanks.  Please use subject lines consistent with the
subsystem.

Sure. Thanks a lot Mark.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH v2 3/4] Regulators: TPS65218: Add Regulator driver for TPS65218 PMIC

2014-02-15 Thread Mark Brown
On Thu, Feb 06, 2014 at 11:20:13AM +0530, Keerthy wrote:
> This patch adds support for TPS65218 PMIC regulators.
> 
> The regulators set consists of 6 DCDCs and 1 LDO. The output
> voltages are configurable and are meant to supply power to the
> main processor and other components.

Applied, thanks.  Please use subject lines consistent with the
subsystem.


signature.asc
Description: Digital signature


Re: [PATCH v2 3/4] Regulators: TPS65218: Add Regulator driver for TPS65218 PMIC

2014-02-07 Thread Mark Brown
On Fri, Feb 07, 2014 at 07:28:29PM +0530, Keerthy wrote:
> On Thursday 06 February 2014 11:20 AM, Keerthy wrote:

> If there are no further comments on this could you
> please pull this?

You've sent this mail a day after sending the original patch, don't do
that.


signature.asc
Description: Digital signature


Re: [PATCH v2 3/4] Regulators: TPS65218: Add Regulator driver for TPS65218 PMIC

2014-02-07 Thread Keerthy

Hi Mark,

On Thursday 06 February 2014 11:20 AM, Keerthy wrote:

This patch adds support for TPS65218 PMIC regulators.

The regulators set consists of 6 DCDCs and 1 LDO. The output
voltages are configurable and are meant to supply power to the
main processor and other components.


If there are no further comments on this could you
please pull this?

Regards,
Keerthy

Signed-off-by: Keerthy 
---
  drivers/regulator/Kconfig  |9 +
  drivers/regulator/Makefile |1 +
  drivers/regulator/tps65218-regulator.c |  304 
  3 files changed, 314 insertions(+)
  create mode 100644 drivers/regulator/tps65218-regulator.c

diff --git a/drivers/regulator/Kconfig b/drivers/regulator/Kconfig
index 6a79328..b05da880 100644
--- a/drivers/regulator/Kconfig
+++ b/drivers/regulator/Kconfig
@@ -513,6 +513,15 @@ config REGULATOR_TPS65217
  voltage regulators. It supports software based voltage control
  for different voltage domains
  
+config REGULATOR_TPS65218

+   tristate "TI TPS65218 Power regulators"
+   depends on MFD_TPS65218
+   help
+ This driver supports TPS65218 voltage regulator chips. TPS65218
+ provides six step-down converters and one general-purpose LDO
+ voltage regulators. It supports software based voltage control
+ for different voltage domains
+
  config REGULATOR_TPS6524X
tristate "TI TPS6524X Power regulators"
depends on SPI
diff --git a/drivers/regulator/Makefile b/drivers/regulator/Makefile
index 979f9dd..ba801a5 100644
--- a/drivers/regulator/Makefile
+++ b/drivers/regulator/Makefile
@@ -67,6 +67,7 @@ obj-$(CONFIG_REGULATOR_TPS65023) += tps65023-regulator.o
  obj-$(CONFIG_REGULATOR_TPS6507X) += tps6507x-regulator.o
  obj-$(CONFIG_REGULATOR_TPS65090) += tps65090-regulator.o
  obj-$(CONFIG_REGULATOR_TPS65217) += tps65217-regulator.o
+obj-$(CONFIG_REGULATOR_TPS65218) += tps65218-regulator.o
  obj-$(CONFIG_REGULATOR_TPS6524X) += tps6524x-regulator.o
  obj-$(CONFIG_REGULATOR_TPS6586X) += tps6586x-regulator.o
  obj-$(CONFIG_REGULATOR_TPS65910) += tps65910-regulator.o
diff --git a/drivers/regulator/tps65218-regulator.c 
b/drivers/regulator/tps65218-regulator.c
new file mode 100644
index 000..39fb189
--- /dev/null
+++ b/drivers/regulator/tps65218-regulator.c
@@ -0,0 +1,304 @@
+/*
+ * tps65218-regulator.c
+ *
+ * Regulator driver for TPS65218 PMIC
+ *
+ * Copyright (C) 2014 Texas Instruments Incorporated - http://www.ti.com/
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License version 2 as
+ * published by the Free Software Foundation.
+ *
+ * This program is distributed "as is" WITHOUT ANY WARRANTY of any
+ * kind, whether expressed or implied; without even the implied warranty
+ * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License version 2 for more details.
+ */
+
+#include 
+#include 
+#include 
+#include 
+#include 
+#include 
+#include 
+#include 
+#include 
+#include 
+#include 
+
+static unsigned int tps65218_ramp_delay = 4000;
+
+enum tps65218_regulators { DCDC1, DCDC2, DCDC3, DCDC4, DCDC5, DCDC6, LDO1 };
+
+#define TPS65218_REGULATOR(_name, _id, _ops, _n, _vr, _vm, _er, _em, _t, \
+   _lr, _nlr)  \
+   {   \
+   .name   = _name,\
+   .id = _id,  \
+   .ops= &_ops,\
+   .n_voltages = _n,   \
+   .type   = REGULATOR_VOLTAGE,\
+   .owner  = THIS_MODULE,  \
+   .vsel_reg   = _vr,  \
+   .vsel_mask  = _vm,  \
+   .enable_reg = _er,  \
+   .enable_mask= _em,  \
+   .volt_table = _t,   \
+   .linear_ranges  = _lr,  \
+   .n_linear_ranges= _nlr, \
+   }   \
+
+#define TPS65218_INFO(_id, _nm, _min, _max)\
+   {   \
+   .id = _id,  \
+   .name   = _nm,  \
+   .min_uV = _min, \
+   .max_uV = _max, \
+   }
+
+static const struct regulator_linear_range dcdc1_dcdc2_ranges[] = {
+   REGULATOR_LINEAR_RANGE(85, 0x0, 0x32, 1),
+   REGULATOR_LINEAR_RANGE(1375000, 0x33, 0x3f, 25000),
+};
+
+static const struct regulator_linear_range ldo1_dcdc3_ranges[] = {
+   REGULATOR_LINEAR

[PATCH v2 3/4] Regulators: TPS65218: Add Regulator driver for TPS65218 PMIC

2014-02-05 Thread Keerthy
This patch adds support for TPS65218 PMIC regulators.

The regulators set consists of 6 DCDCs and 1 LDO. The output
voltages are configurable and are meant to supply power to the
main processor and other components.

Signed-off-by: Keerthy 
---
 drivers/regulator/Kconfig  |9 +
 drivers/regulator/Makefile |1 +
 drivers/regulator/tps65218-regulator.c |  304 
 3 files changed, 314 insertions(+)
 create mode 100644 drivers/regulator/tps65218-regulator.c

diff --git a/drivers/regulator/Kconfig b/drivers/regulator/Kconfig
index 6a79328..b05da880 100644
--- a/drivers/regulator/Kconfig
+++ b/drivers/regulator/Kconfig
@@ -513,6 +513,15 @@ config REGULATOR_TPS65217
  voltage regulators. It supports software based voltage control
  for different voltage domains
 
+config REGULATOR_TPS65218
+   tristate "TI TPS65218 Power regulators"
+   depends on MFD_TPS65218
+   help
+ This driver supports TPS65218 voltage regulator chips. TPS65218
+ provides six step-down converters and one general-purpose LDO
+ voltage regulators. It supports software based voltage control
+ for different voltage domains
+
 config REGULATOR_TPS6524X
tristate "TI TPS6524X Power regulators"
depends on SPI
diff --git a/drivers/regulator/Makefile b/drivers/regulator/Makefile
index 979f9dd..ba801a5 100644
--- a/drivers/regulator/Makefile
+++ b/drivers/regulator/Makefile
@@ -67,6 +67,7 @@ obj-$(CONFIG_REGULATOR_TPS65023) += tps65023-regulator.o
 obj-$(CONFIG_REGULATOR_TPS6507X) += tps6507x-regulator.o
 obj-$(CONFIG_REGULATOR_TPS65090) += tps65090-regulator.o
 obj-$(CONFIG_REGULATOR_TPS65217) += tps65217-regulator.o
+obj-$(CONFIG_REGULATOR_TPS65218) += tps65218-regulator.o
 obj-$(CONFIG_REGULATOR_TPS6524X) += tps6524x-regulator.o
 obj-$(CONFIG_REGULATOR_TPS6586X) += tps6586x-regulator.o
 obj-$(CONFIG_REGULATOR_TPS65910) += tps65910-regulator.o
diff --git a/drivers/regulator/tps65218-regulator.c 
b/drivers/regulator/tps65218-regulator.c
new file mode 100644
index 000..39fb189
--- /dev/null
+++ b/drivers/regulator/tps65218-regulator.c
@@ -0,0 +1,304 @@
+/*
+ * tps65218-regulator.c
+ *
+ * Regulator driver for TPS65218 PMIC
+ *
+ * Copyright (C) 2014 Texas Instruments Incorporated - http://www.ti.com/
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License version 2 as
+ * published by the Free Software Foundation.
+ *
+ * This program is distributed "as is" WITHOUT ANY WARRANTY of any
+ * kind, whether expressed or implied; without even the implied warranty
+ * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License version 2 for more details.
+ */
+
+#include 
+#include 
+#include 
+#include 
+#include 
+#include 
+#include 
+#include 
+#include 
+#include 
+#include 
+
+static unsigned int tps65218_ramp_delay = 4000;
+
+enum tps65218_regulators { DCDC1, DCDC2, DCDC3, DCDC4, DCDC5, DCDC6, LDO1 };
+
+#define TPS65218_REGULATOR(_name, _id, _ops, _n, _vr, _vm, _er, _em, _t, \
+   _lr, _nlr)  \
+   {   \
+   .name   = _name,\
+   .id = _id,  \
+   .ops= &_ops,\
+   .n_voltages = _n,   \
+   .type   = REGULATOR_VOLTAGE,\
+   .owner  = THIS_MODULE,  \
+   .vsel_reg   = _vr,  \
+   .vsel_mask  = _vm,  \
+   .enable_reg = _er,  \
+   .enable_mask= _em,  \
+   .volt_table = _t,   \
+   .linear_ranges  = _lr,  \
+   .n_linear_ranges= _nlr, \
+   }   \
+
+#define TPS65218_INFO(_id, _nm, _min, _max)\
+   {   \
+   .id = _id,  \
+   .name   = _nm,  \
+   .min_uV = _min, \
+   .max_uV = _max, \
+   }
+
+static const struct regulator_linear_range dcdc1_dcdc2_ranges[] = {
+   REGULATOR_LINEAR_RANGE(85, 0x0, 0x32, 1),
+   REGULATOR_LINEAR_RANGE(1375000, 0x33, 0x3f, 25000),
+};
+
+static const struct regulator_linear_range ldo1_dcdc3_ranges[] = {
+   REGULATOR_LINEAR_RANGE(90, 0x0, 0x1a, 25000),
+   REGULATOR_LINEAR_RANGE(160, 0x1b, 0x3f, 5),
+};
+
+static const struct regulator_linear_range dcdc4_ranges[] = {
+