All of lore.kernel.org
 help / color / mirror / Atom feed
diff for duplicates of <577C77DF.9060706@rock-chips.com>

diff --git a/a/1.txt b/N1/1.txt
index 16ab669..7f0d3ad 100644
--- a/a/1.txt
+++ b/N1/1.txt
@@ -25,7 +25,7 @@ On 2016年06月09日 16:23, Wadim Egorov wrote:
 >>> So we can reuse the RTC and Clkout functionality.
 >> Swap '.' for ','.
 >>
->>> Signed-off-by: Wadim Egorov <w.egorov@phytec.de>
+>>> Signed-off-by: Wadim Egorov <w.egorov-guT5V/WYfQezQB+pC5nmwQ@public.gmane.org>
 >>> ---
 >>>   drivers/mfd/Kconfig       |   4 +-
 >>>   drivers/mfd/rk808.c       | 231 ++++++++++++++++++++++++++++++++++++++--------
@@ -65,12 +65,12 @@ On 2016年06月09日 16:23, Wadim Egorov wrote:
 >>>    *
 >>>    * Copyright (c) 2014, Fuzhou Rockchip Electronics Co., Ltd
 >>>    *
->>>    * Author: Chris Zhong <zyw@rock-chips.com>
->>>    * Author: Zhang Qing <zhangqing@rock-chips.com>
+>>>    * Author: Chris Zhong <zyw-TNX95d0MmH7DzftRWevZcw@public.gmane.org>
+>>>    * Author: Zhang Qing <zhangqing-TNX95d0MmH7DzftRWevZcw@public.gmane.org>
 >>>    *
 >>> + * Copyright (C) 2016 PHYTEC Messtechnik GmbH
 >>> + *
->>> + * Author: Wadim Egorov <w.egorov@phytec.de>
+>>> + * Author: Wadim Egorov <w.egorov-guT5V/WYfQezQB+pC5nmwQ@public.gmane.org>
 >>> + *
 >>>    * This program is free software; you can redistribute it and/or modify it
 >>>    * under the terms and conditions of the GNU General Public License,
@@ -409,10 +409,10 @@ for RK818, register 0x17 is 0x81, 0x18 is 0x81
 >>>   MODULE_DEVICE_TABLE(i2c, rk808_ids);
 >>> @@ -272,4 +430,5 @@ module_i2c_driver(rk808_i2c_driver);
 >>>   MODULE_LICENSE("GPL");
->>>   MODULE_AUTHOR("Chris Zhong <zyw@rock-chips.com>");
->>>   MODULE_AUTHOR("Zhang Qing <zhangqing@rock-chips.com>");
+>>>   MODULE_AUTHOR("Chris Zhong <zyw-TNX95d0MmH7DzftRWevZcw@public.gmane.org>");
+>>>   MODULE_AUTHOR("Zhang Qing <zhangqing-TNX95d0MmH7DzftRWevZcw@public.gmane.org>");
 >>> -MODULE_DESCRIPTION("RK808 PMIC driver");
->>> +MODULE_AUTHOR("Wadim Egorov <w.egorov@phytec.de>");
+>>> +MODULE_AUTHOR("Wadim Egorov <w.egorov-guT5V/WYfQezQB+pC5nmwQ@public.gmane.org>");
 >>> +MODULE_DESCRIPTION("RK808/RK818 PMIC driver");
 >>> diff --git a/include/linux/mfd/rk808.h b/include/linux/mfd/rk808.h
 >>> index 441b6ee..5ce810c 100644
@@ -425,12 +425,12 @@ for RK818, register 0x17 is 0x81, 0x18 is 0x81
 >>>    *
 >>>    * Copyright (c) 2014, Fuzhou Rockchip Electronics Co., Ltd
 >>>    *
->>>    * Author: Chris Zhong <zyw@rock-chips.com>
->>>    * Author: Zhang Qing <zhangqing@rock-chips.com>
+>>>    * Author: Chris Zhong <zyw-TNX95d0MmH7DzftRWevZcw@public.gmane.org>
+>>>    * Author: Zhang Qing <zhangqing-TNX95d0MmH7DzftRWevZcw@public.gmane.org>
 >>>    *
 >>> + * Copyright (C) 2016 PHYTEC Messtechnik GmbH
 >>> + *
->>> + * Author: Wadim Egorov <w.egorov@phytec.de>
+>>> + * Author: Wadim Egorov <w.egorov-guT5V/WYfQezQB+pC5nmwQ@public.gmane.org>
 >>> + *
 >>>    * This program is free software; you can redistribute it and/or modify it
 >>>    * under the terms and conditions of the GNU General Public License,
@@ -628,8 +628,14 @@ for RK818, register 0x17 is 0x81, 0x18 is 0x81
 >
 > _______________________________________________
 > Linux-rockchip mailing list
-> Linux-rockchip@lists.infradead.org
+> Linux-rockchip-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org
 > http://lists.infradead.org/mailman/listinfo/linux-rockchip
 >
 >
 >
+
+
+--
+To unsubscribe from this list: send the line "unsubscribe devicetree" in
+the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
+More majordomo info at  http://vger.kernel.org/majordomo-info.html
diff --git a/a/content_digest b/N1/content_digest
index 0627020..6ab6b29 100644
--- a/a/content_digest
+++ b/N1/content_digest
@@ -1,29 +1,30 @@
  "ref\01464850228-17244-1-git-send-email-w.egorov@phytec.de\0"
  "ref\020160608141735.GE14888@dell\0"
  "ref\05759277D.7090101@phytec.de\0"
- "From\0Andy Yan <andy.yan@rock-chips.com>\0"
+ "ref\05759277D.7090101-guT5V/WYfQezQB+pC5nmwQ@public.gmane.org\0"
+ "From\0Andy Yan <andy.yan-TNX95d0MmH7DzftRWevZcw@public.gmane.org>\0"
  "Subject\0Re: [RESEND PATCH v5 1/5] mfd: RK808: Add RK818 support\0"
  "Date\0Wed, 6 Jul 2016 11:15:43 +0800\0"
- "To\0Wadim Egorov <w.egorov@phytec.de>"
- " Lee Jones <lee.jones@linaro.org>\0"
- "Cc\0mark.rutland@arm.com"
-  devicetree@vger.kernel.org
-  a.zummo@towertech.it
-  pawel.moll@arm.com
-  rtc-linux@googlegroups.com
-  ijc+devicetree@hellion.org.uk
-  mturquette@baylibre.com
-  sboyd@codeaurora.org
-  linux-kernel@vger.kernel.org
-  lgirdwood@gmail.com
-  linux-rockchip@lists.infradead.org
-  robh+dt@kernel.org
-  alexandre.belloni@free-electrons.com
-  broonie@kernel.org
-  dianders@chromium.org
-  galak@codeaurora.org
-  zyw@rock-chips.com
- " linux-clk@vger.kernel.org\0"
+ "To\0Wadim Egorov <w.egorov-guT5V/WYfQezQB+pC5nmwQ@public.gmane.org>"
+ " Lee Jones <lee.jones-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>\0"
+ "Cc\0mark.rutland-5wv7dgnIgG8@public.gmane.org"
+  devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
+  a.zummo-BfzFCNDTiLLj+vYz1yj4TQ@public.gmane.org
+  pawel.moll-5wv7dgnIgG8@public.gmane.org
+  rtc-linux-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org
+  ijc+devicetree-KcIKpvwj1kUDXYZnReoRVg@public.gmane.org
+  mturquette-rdvid1DuHRBWk0Htik3J/w@public.gmane.org
+  sboyd-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org
+  linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
+  lgirdwood-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org
+  linux-rockchip-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org
+  robh+dt-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org
+  alexandre.belloni-wi1+55ScJUtKEb57/3fJTNBPR1lH4CV8@public.gmane.org
+  broonie-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org
+  dianders-F7+t8E8rja9g9hUCZPvPmw@public.gmane.org
+  galak-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org
+  zyw-TNX95d0MmH7DzftRWevZcw@public.gmane.org
+ " linux-clk-u79uwXL29TY76Z2rM5mHXA@public.gmane.org\0"
  "\00:1\0"
  "b\0"
  "Hi Wadim:\n"
@@ -53,7 +54,7 @@
  ">>> So we can reuse the RTC and Clkout functionality.\n"
  ">> Swap '.' for ','.\n"
  ">>\n"
- ">>> Signed-off-by: Wadim Egorov <w.egorov@phytec.de>\n"
+ ">>> Signed-off-by: Wadim Egorov <w.egorov-guT5V/WYfQezQB+pC5nmwQ@public.gmane.org>\n"
  ">>> ---\n"
  ">>>   drivers/mfd/Kconfig       |   4 +-\n"
  ">>>   drivers/mfd/rk808.c       | 231 ++++++++++++++++++++++++++++++++++++++--------\n"
@@ -93,12 +94,12 @@
  ">>>    *\n"
  ">>>    * Copyright (c) 2014, Fuzhou Rockchip Electronics Co., Ltd\n"
  ">>>    *\n"
- ">>>    * Author: Chris Zhong <zyw@rock-chips.com>\n"
- ">>>    * Author: Zhang Qing <zhangqing@rock-chips.com>\n"
+ ">>>    * Author: Chris Zhong <zyw-TNX95d0MmH7DzftRWevZcw@public.gmane.org>\n"
+ ">>>    * Author: Zhang Qing <zhangqing-TNX95d0MmH7DzftRWevZcw@public.gmane.org>\n"
  ">>>    *\n"
  ">>> + * Copyright (C) 2016 PHYTEC Messtechnik GmbH\n"
  ">>> + *\n"
- ">>> + * Author: Wadim Egorov <w.egorov@phytec.de>\n"
+ ">>> + * Author: Wadim Egorov <w.egorov-guT5V/WYfQezQB+pC5nmwQ@public.gmane.org>\n"
  ">>> + *\n"
  ">>>    * This program is free software; you can redistribute it and/or modify it\n"
  ">>>    * under the terms and conditions of the GNU General Public License,\n"
@@ -437,10 +438,10 @@
  ">>>   MODULE_DEVICE_TABLE(i2c, rk808_ids);\n"
  ">>> @@ -272,4 +430,5 @@ module_i2c_driver(rk808_i2c_driver);\n"
  ">>>   MODULE_LICENSE(\"GPL\");\n"
- ">>>   MODULE_AUTHOR(\"Chris Zhong <zyw@rock-chips.com>\");\n"
- ">>>   MODULE_AUTHOR(\"Zhang Qing <zhangqing@rock-chips.com>\");\n"
+ ">>>   MODULE_AUTHOR(\"Chris Zhong <zyw-TNX95d0MmH7DzftRWevZcw@public.gmane.org>\");\n"
+ ">>>   MODULE_AUTHOR(\"Zhang Qing <zhangqing-TNX95d0MmH7DzftRWevZcw@public.gmane.org>\");\n"
  ">>> -MODULE_DESCRIPTION(\"RK808 PMIC driver\");\n"
- ">>> +MODULE_AUTHOR(\"Wadim Egorov <w.egorov@phytec.de>\");\n"
+ ">>> +MODULE_AUTHOR(\"Wadim Egorov <w.egorov-guT5V/WYfQezQB+pC5nmwQ@public.gmane.org>\");\n"
  ">>> +MODULE_DESCRIPTION(\"RK808/RK818 PMIC driver\");\n"
  ">>> diff --git a/include/linux/mfd/rk808.h b/include/linux/mfd/rk808.h\n"
  ">>> index 441b6ee..5ce810c 100644\n"
@@ -453,12 +454,12 @@
  ">>>    *\n"
  ">>>    * Copyright (c) 2014, Fuzhou Rockchip Electronics Co., Ltd\n"
  ">>>    *\n"
- ">>>    * Author: Chris Zhong <zyw@rock-chips.com>\n"
- ">>>    * Author: Zhang Qing <zhangqing@rock-chips.com>\n"
+ ">>>    * Author: Chris Zhong <zyw-TNX95d0MmH7DzftRWevZcw@public.gmane.org>\n"
+ ">>>    * Author: Zhang Qing <zhangqing-TNX95d0MmH7DzftRWevZcw@public.gmane.org>\n"
  ">>>    *\n"
  ">>> + * Copyright (C) 2016 PHYTEC Messtechnik GmbH\n"
  ">>> + *\n"
- ">>> + * Author: Wadim Egorov <w.egorov@phytec.de>\n"
+ ">>> + * Author: Wadim Egorov <w.egorov-guT5V/WYfQezQB+pC5nmwQ@public.gmane.org>\n"
  ">>> + *\n"
  ">>>    * This program is free software; you can redistribute it and/or modify it\n"
  ">>>    * under the terms and conditions of the GNU General Public License,\n"
@@ -656,10 +657,16 @@
  ">\n"
  "> _______________________________________________\n"
  "> Linux-rockchip mailing list\n"
- "> Linux-rockchip@lists.infradead.org\n"
+ "> Linux-rockchip-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org\n"
  "> http://lists.infradead.org/mailman/listinfo/linux-rockchip\n"
  ">\n"
  ">\n"
- >
+ ">\n"
+ "\n"
+ "\n"
+ "--\n"
+ "To unsubscribe from this list: send the line \"unsubscribe devicetree\" in\n"
+ "the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org\n"
+ More majordomo info at  http://vger.kernel.org/majordomo-info.html
 
-88aafefe5f14b0557f06d4c61aa788057a080e0ec4eff452fe8cc41ee3d5bb5a
+ec27b9ae42220995c15df9c7fb7c108c588893b6fb674e35622e38fb64314d5d

diff --git a/a/1.txt b/N2/1.txt
index 16ab669..ca390fd 100644
--- a/a/1.txt
+++ b/N2/1.txt
@@ -1,6 +1,6 @@
 Hi Wadim:
 
-On 2016年06月09日 16:23, Wadim Egorov wrote:
+On 2016=E5=B9=B406=E6=9C=8809=E6=97=A5 16:23, Wadim Egorov wrote:
 > Hi,
 >
 > On 08.06.2016 16:17, Lee Jones wrote:
@@ -28,7 +28,8 @@ On 2016年06月09日 16:23, Wadim Egorov wrote:
 >>> Signed-off-by: Wadim Egorov <w.egorov@phytec.de>
 >>> ---
 >>>   drivers/mfd/Kconfig       |   4 +-
->>>   drivers/mfd/rk808.c       | 231 ++++++++++++++++++++++++++++++++++++++--------
+>>>   drivers/mfd/rk808.c       | 231 +++++++++++++++++++++++++++++++++++++=
++--------
 >>>   include/linux/mfd/rk808.h | 162 ++++++++++++++++++++++++++++++--
 >>>   3 files changed, 350 insertions(+), 47 deletions(-)
 >>>
@@ -38,7 +39,7 @@ On 2016年06月09日 16:23, Wadim Egorov wrote:
 >>> +++ b/drivers/mfd/Kconfig
 >>> @@ -839,13 +839,13 @@ config MFD_RC5T583
 >>>   	  different functionality of the device.
->>>   
+>>>  =20
 >>>   config MFD_RK808
 >>> -	tristate "Rockchip RK808 Power Management chip"
 >>> +	tristate "Rockchip RK808/RK818 Power Management chip"
@@ -72,7 +73,8 @@ On 2016年06月09日 16:23, Wadim Egorov wrote:
 >>> + *
 >>> + * Author: Wadim Egorov <w.egorov@phytec.de>
 >>> + *
->>>    * This program is free software; you can redistribute it and/or modify it
+>>>    * This program is free software; you can redistribute it and/or modi=
+fy it
 >>>    * under the terms and conditions of the GNU General Public License,
 >>>    * version 2, as published by the Free Software Foundation.
 >>> @@ -22,12 +26,7 @@
@@ -89,53 +91,56 @@ On 2016年06月09日 16:23, Wadim Egorov wrote:
 > It is now part of the rk808 struct.
 >
 >>> +#include <linux/of_device.h>
->>>   
->>>   static bool rk808_is_volatile_reg(struct device *dev, unsigned int reg)
+>>>  =20
+>>>   static bool rk808_is_volatile_reg(struct device *dev, unsigned int re=
+g)
 >>>   {
->>> @@ -57,6 +56,14 @@ static bool rk808_is_volatile_reg(struct device *dev, unsigned int reg)
+>>> @@ -57,6 +56,14 @@ static bool rk808_is_volatile_reg(struct device *dev=
+, unsigned int reg)
 >>>   	return false;
 >>>   }
->>>   
->>> +static const struct regmap_config rk818_regmap_config = {
->>> +	.reg_bits = 8,
->>> +	.val_bits = 8,
->>> +	.max_register = RK818_USB_CTRL_REG,
->>> +	.cache_type = REGCACHE_RBTREE,
->>> +	.volatile_reg = rk808_is_volatile_reg,
+>>>  =20
+>>> +static const struct regmap_config rk818_regmap_config =3D {
+>>> +	.reg_bits =3D 8,
+>>> +	.val_bits =3D 8,
+>>> +	.max_register =3D RK818_USB_CTRL_REG,
+>>> +	.cache_type =3D REGCACHE_RBTREE,
+>>> +	.volatile_reg =3D rk808_is_volatile_reg,
 >>> +};
 >>> +
->>>   static const struct regmap_config rk808_regmap_config = {
->>>   	.reg_bits = 8,
->>>   	.val_bits = 8,
->>> @@ -83,7 +90,17 @@ static const struct mfd_cell rk808s[] = {
+>>>   static const struct regmap_config rk808_regmap_config =3D {
+>>>   	.reg_bits =3D 8,
+>>>   	.val_bits =3D 8,
+>>> @@ -83,7 +90,17 @@ static const struct mfd_cell rk808s[] =3D {
 >>>   	},
 >>>   };
->>>   
->>> -static const struct rk808_reg_data pre_init_reg[] = {
->>> +static const struct mfd_cell rk818s[] = {
->>> +	{ .name = "rk808-clkout", },
+>>>  =20
+>>> -static const struct rk808_reg_data pre_init_reg[] =3D {
+>>> +static const struct mfd_cell rk818s[] =3D {
+>>> +	{ .name =3D "rk808-clkout", },
 >> How does this differ to a normal -clock driver?
 > I don't know. It is a normal clock driver.
 >
->>> +	{ .name = "rk808-regulator", },
+>>> +	{ .name =3D "rk808-regulator", },
 >>> +	{
->>> +		.name = "rk808-rtc",
->>> +		.num_resources = ARRAY_SIZE(rtc_resources),
->>> +		.resources = &rtc_resources[0],
->> .resources = rtc_resources,  ?
+>>> +		.name =3D "rk808-rtc",
+>>> +		.num_resources =3D ARRAY_SIZE(rtc_resources),
+>>> +		.resources =3D &rtc_resources[0],
+>> .resources =3D rtc_resources,  ?
 >>
 >>> +	},
 >>> +};
 >>> +
->>> +static const struct rk8xx_reg_data rk808_pre_init_reg[] = {
+>>> +static const struct rk8xx_reg_data rk808_pre_init_reg[] =3D {
 >>>   	{ RK808_BUCK3_CONFIG_REG, BUCK_ILMIN_MASK,  BUCK_ILMIN_150MA },
 >>>   	{ RK808_BUCK4_CONFIG_REG, BUCK_ILMIN_MASK,  BUCK_ILMIN_200MA },
 >>>   	{ RK808_BOOST_CONFIG_REG, BOOST_ILMIN_MASK, BOOST_ILMIN_100MA },
->>> @@ -94,6 +111,22 @@ static const struct rk808_reg_data pre_init_reg[] = {
+>>> @@ -94,6 +111,22 @@ static const struct rk808_reg_data pre_init_reg[] =
+=3D {
 >>>   						    VB_LO_SEL_3500MV },
 >>>   };
->>>   
->>> +static const struct rk8xx_reg_data rk818_pre_init_reg[] = {
+>>>  =20
+>>> +static const struct rk8xx_reg_data rk818_pre_init_reg[] =3D {
 >>> +	{ RK818_USB_CTRL_REG,	RK818_USB_ILIM_SEL_MASK,
 >>> +						RK818_USB_ILMIN_2000MA },
 >>> +	/* close charger when usb lower then 3.4V */
@@ -153,100 +158,100 @@ On 2016年06月09日 16:23, Wadim Egorov wrote:
 >> The alignment here looks odd.
 > I will fix it in the next version.
 >
->>>   static const struct regmap_irq rk808_irqs[] = {
+>>>   static const struct regmap_irq rk808_irqs[] =3D {
 >>>   	/* INT_STS */
->>>   	[RK808_IRQ_VOUT_LO] = {
->>> @@ -136,6 +169,76 @@ static const struct regmap_irq rk808_irqs[] = {
+>>>   	[RK808_IRQ_VOUT_LO] =3D {
+>>> @@ -136,6 +169,76 @@ static const struct regmap_irq rk808_irqs[] =3D {
 >>>   	},
 >>>   };
->>>   
->>> +static const struct regmap_irq rk818_irqs[] = {
+>>>  =20
+>>> +static const struct regmap_irq rk818_irqs[] =3D {
 >>> +	/* INT_STS */
->>> +	[RK818_IRQ_VOUT_LO] = {
->>> +		.mask = RK818_IRQ_VOUT_LO_MSK,
->>> +		.reg_offset = 0,
+>>> +	[RK818_IRQ_VOUT_LO] =3D {
+>>> +		.mask =3D RK818_IRQ_VOUT_LO_MSK,
+>>> +		.reg_offset =3D 0,
 >>> +	},
->>> +	[RK818_IRQ_VB_LO] = {
->>> +		.mask = RK818_IRQ_VB_LO_MSK,
->>> +		.reg_offset = 0,
+>>> +	[RK818_IRQ_VB_LO] =3D {
+>>> +		.mask =3D RK818_IRQ_VB_LO_MSK,
+>>> +		.reg_offset =3D 0,
 >>> +	},
->>> +	[RK818_IRQ_PWRON] = {
->>> +		.mask = RK818_IRQ_PWRON_MSK,
->>> +		.reg_offset = 0,
+>>> +	[RK818_IRQ_PWRON] =3D {
+>>> +		.mask =3D RK818_IRQ_PWRON_MSK,
+>>> +		.reg_offset =3D 0,
 >>> +	},
->>> +	[RK818_IRQ_PWRON_LP] = {
->>> +		.mask = RK818_IRQ_PWRON_LP_MSK,
->>> +		.reg_offset = 0,
+>>> +	[RK818_IRQ_PWRON_LP] =3D {
+>>> +		.mask =3D RK818_IRQ_PWRON_LP_MSK,
+>>> +		.reg_offset =3D 0,
 >>> +	},
->>> +	[RK818_IRQ_HOTDIE] = {
->>> +		.mask = RK818_IRQ_HOTDIE_MSK,
->>> +		.reg_offset = 0,
+>>> +	[RK818_IRQ_HOTDIE] =3D {
+>>> +		.mask =3D RK818_IRQ_HOTDIE_MSK,
+>>> +		.reg_offset =3D 0,
 >>> +	},
->>> +	[RK818_IRQ_RTC_ALARM] = {
->>> +		.mask = RK818_IRQ_RTC_ALARM_MSK,
->>> +		.reg_offset = 0,
+>>> +	[RK818_IRQ_RTC_ALARM] =3D {
+>>> +		.mask =3D RK818_IRQ_RTC_ALARM_MSK,
+>>> +		.reg_offset =3D 0,
 >>> +	},
->>> +	[RK818_IRQ_RTC_PERIOD] = {
->>> +		.mask = RK818_IRQ_RTC_PERIOD_MSK,
->>> +		.reg_offset = 0,
+>>> +	[RK818_IRQ_RTC_PERIOD] =3D {
+>>> +		.mask =3D RK818_IRQ_RTC_PERIOD_MSK,
+>>> +		.reg_offset =3D 0,
 >>> +	},
->>> +	[RK818_IRQ_USB_OV] = {
->>> +		.mask = RK818_IRQ_USB_OV_MSK,
->>> +		.reg_offset = 0,
+>>> +	[RK818_IRQ_USB_OV] =3D {
+>>> +		.mask =3D RK818_IRQ_USB_OV_MSK,
+>>> +		.reg_offset =3D 0,
 >>> +	},
 >>> +
 >>> +	/* INT_STS2 */
->>> +	[RK818_IRQ_PLUG_IN] = {
->>> +		.mask = RK818_IRQ_PLUG_IN_MSK,
->>> +		.reg_offset = 1,
+>>> +	[RK818_IRQ_PLUG_IN] =3D {
+>>> +		.mask =3D RK818_IRQ_PLUG_IN_MSK,
+>>> +		.reg_offset =3D 1,
 >>> +	},
->>> +	[RK818_IRQ_PLUG_OUT] = {
->>> +		.mask = RK818_IRQ_PLUG_OUT_MSK,
->>> +		.reg_offset = 1,
+>>> +	[RK818_IRQ_PLUG_OUT] =3D {
+>>> +		.mask =3D RK818_IRQ_PLUG_OUT_MSK,
+>>> +		.reg_offset =3D 1,
 >>> +	},
->>> +	[RK818_IRQ_CHG_OK] = {
->>> +		.mask = RK818_IRQ_CHG_OK_MSK,
->>> +		.reg_offset = 1,
+>>> +	[RK818_IRQ_CHG_OK] =3D {
+>>> +		.mask =3D RK818_IRQ_CHG_OK_MSK,
+>>> +		.reg_offset =3D 1,
 >>> +	},
->>> +	[RK818_IRQ_CHG_TE] = {
->>> +		.mask = RK818_IRQ_CHG_TE_MSK,
->>> +		.reg_offset = 1,
+>>> +	[RK818_IRQ_CHG_TE] =3D {
+>>> +		.mask =3D RK818_IRQ_CHG_TE_MSK,
+>>> +		.reg_offset =3D 1,
 >>> +	},
->>> +	[RK818_IRQ_CHG_TS1] = {
->>> +		.mask = RK818_IRQ_CHG_TS1_MSK,
->>> +		.reg_offset = 1,
+>>> +	[RK818_IRQ_CHG_TS1] =3D {
+>>> +		.mask =3D RK818_IRQ_CHG_TS1_MSK,
+>>> +		.reg_offset =3D 1,
 >>> +	},
->>> +	[RK818_IRQ_TS2] = {
->>> +		.mask = RK818_IRQ_TS2_MSK,
->>> +		.reg_offset = 1,
+>>> +	[RK818_IRQ_TS2] =3D {
+>>> +		.mask =3D RK818_IRQ_TS2_MSK,
+>>> +		.reg_offset =3D 1,
 >>> +	},
->>> +	[RK818_IRQ_CHG_CVTLIM] = {
->>> +		.mask = RK818_IRQ_CHG_CVTLIM_MSK,
->>> +		.reg_offset = 1,
+>>> +	[RK818_IRQ_CHG_CVTLIM] =3D {
+>>> +		.mask =3D RK818_IRQ_CHG_CVTLIM_MSK,
+>>> +		.reg_offset =3D 1,
 >>> +	},
->>> +	[RK818_IRQ_DISCHG_ILIM] = {
->>> +		.mask = RK818_IRQ_DISCHG_ILIM_MSK,
->>> +		.reg_offset = 1,
+>>> +	[RK818_IRQ_DISCHG_ILIM] =3D {
+>>> +		.mask =3D RK818_IRQ_DISCHG_ILIM_MSK,
+>>> +		.reg_offset =3D 1,
 >>> +	},
 >>> +};
 >>> +
->>>   static struct regmap_irq_chip rk808_irq_chip = {
->>>   	.name = "rk808",
->>>   	.irqs = rk808_irqs,
->>> @@ -148,6 +251,18 @@ static struct regmap_irq_chip rk808_irq_chip = {
->>>   	.init_ack_masked = true,
+>>>   static struct regmap_irq_chip rk808_irq_chip =3D {
+>>>   	.name =3D "rk808",
+>>>   	.irqs =3D rk808_irqs,
+>>> @@ -148,6 +251,18 @@ static struct regmap_irq_chip rk808_irq_chip =3D {
+>>>   	.init_ack_masked =3D true,
 >>>   };
->>>   
->>> +static struct regmap_irq_chip rk818_irq_chip = {
->>> +	.name = "rk818",
->>> +	.irqs = rk818_irqs,
->>> +	.num_irqs = ARRAY_SIZE(rk818_irqs),
->>> +	.num_regs = 2,
->>> +	.irq_reg_stride = 2,
->>> +	.status_base = RK818_INT_STS_REG1,
->>> +	.mask_base = RK818_INT_STS_MSK_REG1,
->>> +	.ack_base = RK818_INT_STS_REG1,
->>> +	.init_ack_masked = true,
+>>>  =20
+>>> +static struct regmap_irq_chip rk818_irq_chip =3D {
+>>> +	.name =3D "rk818",
+>>> +	.irqs =3D rk818_irqs,
+>>> +	.num_irqs =3D ARRAY_SIZE(rk818_irqs),
+>>> +	.num_regs =3D 2,
+>>> +	.irq_reg_stride =3D 2,
+>>> +	.status_base =3D RK818_INT_STS_REG1,
+>>> +	.mask_base =3D RK818_INT_STS_MSK_REG1,
+>>> +	.ack_base =3D RK818_INT_STS_REG1,
+>>> +	.init_ack_masked =3D true,
 >>> +};
 >>> +
 >>>   static struct i2c_client *rk808_i2c_client;
@@ -255,10 +260,10 @@ On 2016年06月09日 16:23, Wadim Egorov wrote:
 >>> @@ -167,6 +282,48 @@ static void rk808_device_shutdown(void)
 >>>   		dev_err(&rk808_i2c_client->dev, "power off error!\n");
 >>>   }
->>>   
->>> +static const struct of_device_id rk808_of_match[] = {
->>> +	{ .compatible = "rockchip,rk808", .data = (void *) RK808_ID },
->>> +	{ .compatible = "rockchip,rk818", .data = (void *) RK818_ID },
+>>>  =20
+>>> +static const struct of_device_id rk808_of_match[] =3D {
+>>> +	{ .compatible =3D "rockchip,rk808", .data =3D (void *) RK808_ID },
+>>> +	{ .compatible =3D "rockchip,rk818", .data =3D (void *) RK818_ID },
 >>> +	{ },
 >>> +};
 >>> +MODULE_DEVICE_TABLE(of, rk808_of_match);
@@ -272,29 +277,29 @@ On 2016年06月09日 16:23, Wadim Egorov wrote:
 >>> +{
 >>> +	const struct of_device_id *of_id;
 >>> +
->>> +	of_id = of_match_device(rk808_of_match, dev);
+>>> +	of_id =3D of_match_device(rk808_of_match, dev);
 >>> +	if (!of_id) {
 >>> +		dev_err(dev, "Unable to match OF ID\n");
 >>> +		return -ENODEV;
 >>> +	}
->>> +	rk808->variant = (long) of_id->data;
+>>> +	rk808->variant =3D (long) of_id->data;
 >>> +
 >>> +	switch (rk808->variant) {
 >>> +	case RK808_ID:
->>> +		rk808->nr_cells = ARRAY_SIZE(rk808s);
->>> +		rk808->cells = rk808s;
->>> +		rk808->regmap_cfg = &rk808_regmap_config;
->>> +		rk808->regmap_irq_chip = &rk808_irq_chip;
->>> +		rk808->pre_init_reg = rk808_pre_init_reg;
->>> +		rk808->nr_pre_init_regs = ARRAY_SIZE(rk808_pre_init_reg);
+>>> +		rk808->nr_cells =3D ARRAY_SIZE(rk808s);
+>>> +		rk808->cells =3D rk808s;
+>>> +		rk808->regmap_cfg =3D &rk808_regmap_config;
+>>> +		rk808->regmap_irq_chip =3D &rk808_irq_chip;
+>>> +		rk808->pre_init_reg =3D rk808_pre_init_reg;
+>>> +		rk808->nr_pre_init_regs =3D ARRAY_SIZE(rk808_pre_init_reg);
 >>> +		break;
 >>> +	case RK818_ID:
->>> +		rk808->nr_cells = ARRAY_SIZE(rk818s);
->>> +		rk808->cells = rk818s;
->>> +		rk808->regmap_cfg = &rk818_regmap_config;
->>> +		rk808->regmap_irq_chip = &rk818_irq_chip;
->>> +		rk808->pre_init_reg = rk818_pre_init_reg;
->>> +		rk808->nr_pre_init_regs = ARRAY_SIZE(rk818_pre_init_reg);
+>>> +		rk808->nr_cells =3D ARRAY_SIZE(rk818s);
+>>> +		rk808->cells =3D rk818s;
+>>> +		rk808->regmap_cfg =3D &rk818_regmap_config;
+>>> +		rk808->regmap_irq_chip =3D &rk818_irq_chip;
+>>> +		rk808->pre_init_reg =3D rk818_pre_init_reg;
+>>> +		rk808->nr_pre_init_regs =3D ARRAY_SIZE(rk818_pre_init_reg);
 >>> +		break;
 >>> +	default:
 >>> +		dev_err(dev, "unsupported RK8XX ID %lu\n", rk808->variant);
@@ -309,18 +314,18 @@ On 2016年06月09日 16:23, Wadim Egorov wrote:
 >>> @@ -176,46 +333,52 @@ static int rk808_probe(struct i2c_client *client,
 >>>   	int ret;
 >>>   	int i;
->>>   
+>>>  =20
 >>> -	if (!client->irq) {
 >>> -		dev_err(&client->dev, "No interrupt support, no core IRQ\n");
 >>> -		return -EINVAL;
 >>> -	}
 >>> -
->>>   	rk808 = devm_kzalloc(&client->dev, sizeof(*rk808), GFP_KERNEL);
+>>>   	rk808 =3D devm_kzalloc(&client->dev, sizeof(*rk808), GFP_KERNEL);
 >>>   	if (!rk808)
 >>>   		return -ENOMEM;
->>>   
->>> -	rk808->regmap = devm_regmap_init_i2c(client, &rk808_regmap_config);
->>> +	ret = rk8xx_match_device(rk808, &client->dev);
+>>>  =20
+>>> -	rk808->regmap =3D devm_regmap_init_i2c(client, &rk808_regmap_config);
+>>> +	ret =3D rk8xx_match_device(rk808, &client->dev);
 >> Is there a way to dynamically probe the device?  No device ID you can
 >> read directly from the silicon?
 > AFAIK there is no device ID register. At least it is not documented in
@@ -335,17 +340,17 @@ for RK818, register 0x17 is 0x81, 0x18 is 0x81
 >>> +	if (ret)
 >>> +		return ret;
 >>> +
->>> +	rk808->i2c = client;
+>>> +	rk808->i2c =3D client;
 >>> +	i2c_set_clientdata(client, rk808);
 >>> +
->>> +	rk808->regmap = devm_regmap_init_i2c(client, rk808->regmap_cfg);
+>>> +	rk808->regmap =3D devm_regmap_init_i2c(client, rk808->regmap_cfg);
 >>>   	if (IS_ERR(rk808->regmap)) {
 >>>   		dev_err(&client->dev, "regmap initialization failed\n");
 >>>   		return PTR_ERR(rk808->regmap);
 >>>   	}
->>>   
->>> -	for (i = 0; i < ARRAY_SIZE(pre_init_reg); i++) {
->>> -		ret = regmap_update_bits(rk808->regmap, pre_init_reg[i].addr,
+>>>  =20
+>>> -	for (i =3D 0; i < ARRAY_SIZE(pre_init_reg); i++) {
+>>> -		ret =3D regmap_update_bits(rk808->regmap, pre_init_reg[i].addr,
 >>> -					 pre_init_reg[i].mask,
 >>> -					 pre_init_reg[i].value);
 >>> -		if (ret) {
@@ -357,8 +362,8 @@ for RK818, register 0x17 is 0x81, 0x18 is 0x81
 >>> +		dev_err(&client->dev, "No interrupt support, no core IRQ\n");
 >>> +		return -EINVAL;
 >>>   	}
->>>   
->>>   	ret = regmap_add_irq_chip(rk808->regmap, client->irq,
+>>>  =20
+>>>   	ret =3D regmap_add_irq_chip(rk808->regmap, client->irq,
 >>>   				  IRQF_ONESHOT, -1,
 >>> -				  &rk808_irq_chip, &rk808->irq_data);
 >>> +				  rk808->regmap_irq_chip, &rk808->irq_data);
@@ -366,11 +371,11 @@ for RK818, register 0x17 is 0x81, 0x18 is 0x81
 >>>   		dev_err(&client->dev, "Failed to add irq_chip %d\n", ret);
 >>>   		return ret;
 >>>   	}
->>>   
->>> -	rk808->i2c = client;
+>>>  =20
+>>> -	rk808->i2c =3D client;
 >>> -	i2c_set_clientdata(client, rk808);
->>> +	for (i = 0; i < rk808->nr_pre_init_regs; i++) {
->>> +		ret = regmap_update_bits(rk808->regmap,
+>>> +	for (i =3D 0; i < rk808->nr_pre_init_regs; i++) {
+>>> +		ret =3D regmap_update_bits(rk808->regmap,
 >>> +					rk808->pre_init_reg[i].addr,
 >>> +					rk808->pre_init_reg[i].mask,
 >>> +					rk808->pre_init_reg[i].value);
@@ -381,11 +386,11 @@ for RK818, register 0x17 is 0x81, 0x18 is 0x81
 >>> +			return ret;
 >>> +		}
 >>> +	}
->>>   
->>> -	ret = devm_mfd_add_devices(&client->dev, -1,
+>>>  =20
+>>> -	ret =3D devm_mfd_add_devices(&client->dev, -1,
 >>> -				   rk808s, ARRAY_SIZE(rk808s), NULL, 0,
 >>> -				   regmap_irq_get_domain(rk808->irq_data));
->>> +	ret = devm_mfd_add_devices(&client->dev, PLATFORM_DEVID_NONE,
+>>> +	ret =3D devm_mfd_add_devices(&client->dev, PLATFORM_DEVID_NONE,
 >>> +			      rk808->cells, rk808->nr_cells, NULL, 0,
 >>> +			      regmap_irq_get_domain(rk808->irq_data));
 >>>   	if (ret) {
@@ -394,14 +399,14 @@ for RK818, register 0x17 is 0x81, 0x18 is 0x81
 >>> @@ -245,14 +408,9 @@ static int rk808_remove(struct i2c_client *client)
 >>>   	return 0;
 >>>   }
->>>   
->>> -static const struct of_device_id rk808_of_match[] = {
->>> -	{ .compatible = "rockchip,rk808" },
+>>>  =20
+>>> -static const struct of_device_id rk808_of_match[] =3D {
+>>> -	{ .compatible =3D "rockchip,rk808" },
 >>> -	{ },
 >>> -};
 >>> -MODULE_DEVICE_TABLE(of, rk808_of_match);
 >>> -
->>>   static const struct i2c_device_id rk808_ids[] = {
+>>>   static const struct i2c_device_id rk808_ids[] =3D {
 >>>   	{ "rk808" },
 >>> +	{ "rk818" },
 >>>   	{ },
@@ -432,33 +437,34 @@ for RK818, register 0x17 is 0x81, 0x18 is 0x81
 >>> + *
 >>> + * Author: Wadim Egorov <w.egorov@phytec.de>
 >>> + *
->>>    * This program is free software; you can redistribute it and/or modify it
+>>>    * This program is free software; you can redistribute it and/or modi=
+fy it
 >>>    * under the terms and conditions of the GNU General Public License,
 >>>    * version 2, as published by the Free Software Foundation.
 >>> @@ -16,8 +20,8 @@
 >>>    * more details.
 >>>    */
->>>   
+>>>  =20
 >>> -#ifndef __LINUX_REGULATOR_rk808_H
 >>> -#define __LINUX_REGULATOR_rk808_H
 >>> +#ifndef __LINUX_REGULATOR_RK808_H
 >>> +#define __LINUX_REGULATOR_RK808_H
->>>   
+>>>  =20
 >>>   #include <linux/regulator/machine.h>
 >>>   #include <linux/regmap.h>
 >>> @@ -28,7 +32,7 @@
->>>   
+>>>  =20
 >>>   #define RK808_DCDC1	0 /* (0+RK808_START) */
 >>>   #define RK808_LDO1	4 /* (4+RK808_START) */
 >>> -#define RK808_NUM_REGULATORS   14
 >>> +#define RK808_NUM_REGULATORS	14
->>>   
+>>>  =20
 >>>   enum rk808_reg {
 >>>   	RK808_ID_DCDC1,
 >>> @@ -115,7 +119,92 @@ enum rk808_reg {
 >>>   #define RK808_INT_STS_MSK_REG2	0x4f
 >>>   #define RK808_IO_POL_REG	0x50
->>>   
+>>>  =20
 >>> -/* IRQ Definitions */
 >>> +/* RK818 */
 >>> +#define RK818_DCDC1			0
@@ -552,7 +558,7 @@ for RK818, register 0x17 is 0x81, 0x18 is 0x81
 >>> @@ -137,6 +226,43 @@ enum rk808_reg {
 >>>   #define RK808_IRQ_PLUG_IN_INT_MSK	BIT(0)
 >>>   #define RK808_IRQ_PLUG_OUT_INT_MSK	BIT(1)
->>>   
+>>>  =20
 >>> +/* RK818 IRQ Definitions */
 >>> +#define RK818_IRQ_VOUT_LO	0
 >>> +#define RK818_IRQ_VB_LO		1
@@ -596,7 +602,7 @@ for RK818, register 0x17 is 0x81, 0x18 is 0x81
 >>> @@ -191,9 +317,27 @@ enum {
 >>>   	BOOST_ILMIN_250MA,
 >>>   };
->>>   
+>>>  =20
 >>> +enum {
 >>> +	RK808_ID,
 >>> +	RK818_ID,
@@ -633,3 +639,16 @@ for RK818, register 0x17 is 0x81, 0x18 is 0x81
 >
 >
 >
+
+
+--=20
+You received this message because you are subscribed to "rtc-linux".
+Membership options at http://groups.google.com/group/rtc-linux .
+Please read http://groups.google.com/group/rtc-linux/web/checklist
+before submitting a driver.
+---=20
+You received this message because you are subscribed to the Google Groups "=
+rtc-linux" group.
+To unsubscribe from this group and stop receiving emails from it, send an e=
+mail to rtc-linux+unsubscribe@googlegroups.com.
+For more options, visit https://groups.google.com/d/optout.
diff --git a/a/content_digest b/N2/content_digest
index 0627020..a94a144 100644
--- a/a/content_digest
+++ b/N2/content_digest
@@ -2,7 +2,7 @@
  "ref\020160608141735.GE14888@dell\0"
  "ref\05759277D.7090101@phytec.de\0"
  "From\0Andy Yan <andy.yan@rock-chips.com>\0"
- "Subject\0Re: [RESEND PATCH v5 1/5] mfd: RK808: Add RK818 support\0"
+ "Subject\0[rtc-linux] Re: [RESEND PATCH v5 1/5] mfd: RK808: Add RK818 support\0"
  "Date\0Wed, 6 Jul 2016 11:15:43 +0800\0"
  "To\0Wadim Egorov <w.egorov@phytec.de>"
  " Lee Jones <lee.jones@linaro.org>\0"
@@ -28,7 +28,7 @@
  "b\0"
  "Hi Wadim:\n"
  "\n"
- "On 2016\345\271\26406\346\234\21009\346\227\245 16:23, Wadim Egorov wrote:\n"
+ "On 2016=E5=B9=B406=E6=9C=8809=E6=97=A5 16:23, Wadim Egorov wrote:\n"
  "> Hi,\n"
  ">\n"
  "> On 08.06.2016 16:17, Lee Jones wrote:\n"
@@ -56,7 +56,8 @@
  ">>> Signed-off-by: Wadim Egorov <w.egorov@phytec.de>\n"
  ">>> ---\n"
  ">>>   drivers/mfd/Kconfig       |   4 +-\n"
- ">>>   drivers/mfd/rk808.c       | 231 ++++++++++++++++++++++++++++++++++++++--------\n"
+ ">>>   drivers/mfd/rk808.c       | 231 +++++++++++++++++++++++++++++++++++++=\n"
+ "+--------\n"
  ">>>   include/linux/mfd/rk808.h | 162 ++++++++++++++++++++++++++++++--\n"
  ">>>   3 files changed, 350 insertions(+), 47 deletions(-)\n"
  ">>>\n"
@@ -66,7 +67,7 @@
  ">>> +++ b/drivers/mfd/Kconfig\n"
  ">>> @@ -839,13 +839,13 @@ config MFD_RC5T583\n"
  ">>>   \t  different functionality of the device.\n"
- ">>>   \n"
+ ">>>  =20\n"
  ">>>   config MFD_RK808\n"
  ">>> -\ttristate \"Rockchip RK808 Power Management chip\"\n"
  ">>> +\ttristate \"Rockchip RK808/RK818 Power Management chip\"\n"
@@ -100,7 +101,8 @@
  ">>> + *\n"
  ">>> + * Author: Wadim Egorov <w.egorov@phytec.de>\n"
  ">>> + *\n"
- ">>>    * This program is free software; you can redistribute it and/or modify it\n"
+ ">>>    * This program is free software; you can redistribute it and/or modi=\n"
+ "fy it\n"
  ">>>    * under the terms and conditions of the GNU General Public License,\n"
  ">>>    * version 2, as published by the Free Software Foundation.\n"
  ">>> @@ -22,12 +26,7 @@\n"
@@ -117,53 +119,56 @@
  "> It is now part of the rk808 struct.\n"
  ">\n"
  ">>> +#include <linux/of_device.h>\n"
- ">>>   \n"
- ">>>   static bool rk808_is_volatile_reg(struct device *dev, unsigned int reg)\n"
+ ">>>  =20\n"
+ ">>>   static bool rk808_is_volatile_reg(struct device *dev, unsigned int re=\n"
+ "g)\n"
  ">>>   {\n"
- ">>> @@ -57,6 +56,14 @@ static bool rk808_is_volatile_reg(struct device *dev, unsigned int reg)\n"
+ ">>> @@ -57,6 +56,14 @@ static bool rk808_is_volatile_reg(struct device *dev=\n"
+ ", unsigned int reg)\n"
  ">>>   \treturn false;\n"
  ">>>   }\n"
- ">>>   \n"
- ">>> +static const struct regmap_config rk818_regmap_config = {\n"
- ">>> +\t.reg_bits = 8,\n"
- ">>> +\t.val_bits = 8,\n"
- ">>> +\t.max_register = RK818_USB_CTRL_REG,\n"
- ">>> +\t.cache_type = REGCACHE_RBTREE,\n"
- ">>> +\t.volatile_reg = rk808_is_volatile_reg,\n"
+ ">>>  =20\n"
+ ">>> +static const struct regmap_config rk818_regmap_config =3D {\n"
+ ">>> +\t.reg_bits =3D 8,\n"
+ ">>> +\t.val_bits =3D 8,\n"
+ ">>> +\t.max_register =3D RK818_USB_CTRL_REG,\n"
+ ">>> +\t.cache_type =3D REGCACHE_RBTREE,\n"
+ ">>> +\t.volatile_reg =3D rk808_is_volatile_reg,\n"
  ">>> +};\n"
  ">>> +\n"
- ">>>   static const struct regmap_config rk808_regmap_config = {\n"
- ">>>   \t.reg_bits = 8,\n"
- ">>>   \t.val_bits = 8,\n"
- ">>> @@ -83,7 +90,17 @@ static const struct mfd_cell rk808s[] = {\n"
+ ">>>   static const struct regmap_config rk808_regmap_config =3D {\n"
+ ">>>   \t.reg_bits =3D 8,\n"
+ ">>>   \t.val_bits =3D 8,\n"
+ ">>> @@ -83,7 +90,17 @@ static const struct mfd_cell rk808s[] =3D {\n"
  ">>>   \t},\n"
  ">>>   };\n"
- ">>>   \n"
- ">>> -static const struct rk808_reg_data pre_init_reg[] = {\n"
- ">>> +static const struct mfd_cell rk818s[] = {\n"
- ">>> +\t{ .name = \"rk808-clkout\", },\n"
+ ">>>  =20\n"
+ ">>> -static const struct rk808_reg_data pre_init_reg[] =3D {\n"
+ ">>> +static const struct mfd_cell rk818s[] =3D {\n"
+ ">>> +\t{ .name =3D \"rk808-clkout\", },\n"
  ">> How does this differ to a normal -clock driver?\n"
  "> I don't know. It is a normal clock driver.\n"
  ">\n"
- ">>> +\t{ .name = \"rk808-regulator\", },\n"
+ ">>> +\t{ .name =3D \"rk808-regulator\", },\n"
  ">>> +\t{\n"
- ">>> +\t\t.name = \"rk808-rtc\",\n"
- ">>> +\t\t.num_resources = ARRAY_SIZE(rtc_resources),\n"
- ">>> +\t\t.resources = &rtc_resources[0],\n"
- ">> .resources = rtc_resources,  ?\n"
+ ">>> +\t\t.name =3D \"rk808-rtc\",\n"
+ ">>> +\t\t.num_resources =3D ARRAY_SIZE(rtc_resources),\n"
+ ">>> +\t\t.resources =3D &rtc_resources[0],\n"
+ ">> .resources =3D rtc_resources,  ?\n"
  ">>\n"
  ">>> +\t},\n"
  ">>> +};\n"
  ">>> +\n"
- ">>> +static const struct rk8xx_reg_data rk808_pre_init_reg[] = {\n"
+ ">>> +static const struct rk8xx_reg_data rk808_pre_init_reg[] =3D {\n"
  ">>>   \t{ RK808_BUCK3_CONFIG_REG, BUCK_ILMIN_MASK,  BUCK_ILMIN_150MA },\n"
  ">>>   \t{ RK808_BUCK4_CONFIG_REG, BUCK_ILMIN_MASK,  BUCK_ILMIN_200MA },\n"
  ">>>   \t{ RK808_BOOST_CONFIG_REG, BOOST_ILMIN_MASK, BOOST_ILMIN_100MA },\n"
- ">>> @@ -94,6 +111,22 @@ static const struct rk808_reg_data pre_init_reg[] = {\n"
+ ">>> @@ -94,6 +111,22 @@ static const struct rk808_reg_data pre_init_reg[] =\n"
+ "=3D {\n"
  ">>>   \t\t\t\t\t\t    VB_LO_SEL_3500MV },\n"
  ">>>   };\n"
- ">>>   \n"
- ">>> +static const struct rk8xx_reg_data rk818_pre_init_reg[] = {\n"
+ ">>>  =20\n"
+ ">>> +static const struct rk8xx_reg_data rk818_pre_init_reg[] =3D {\n"
  ">>> +\t{ RK818_USB_CTRL_REG,\tRK818_USB_ILIM_SEL_MASK,\n"
  ">>> +\t\t\t\t\t\tRK818_USB_ILMIN_2000MA },\n"
  ">>> +\t/* close charger when usb lower then 3.4V */\n"
@@ -181,100 +186,100 @@
  ">> The alignment here looks odd.\n"
  "> I will fix it in the next version.\n"
  ">\n"
- ">>>   static const struct regmap_irq rk808_irqs[] = {\n"
+ ">>>   static const struct regmap_irq rk808_irqs[] =3D {\n"
  ">>>   \t/* INT_STS */\n"
- ">>>   \t[RK808_IRQ_VOUT_LO] = {\n"
- ">>> @@ -136,6 +169,76 @@ static const struct regmap_irq rk808_irqs[] = {\n"
+ ">>>   \t[RK808_IRQ_VOUT_LO] =3D {\n"
+ ">>> @@ -136,6 +169,76 @@ static const struct regmap_irq rk808_irqs[] =3D {\n"
  ">>>   \t},\n"
  ">>>   };\n"
- ">>>   \n"
- ">>> +static const struct regmap_irq rk818_irqs[] = {\n"
+ ">>>  =20\n"
+ ">>> +static const struct regmap_irq rk818_irqs[] =3D {\n"
  ">>> +\t/* INT_STS */\n"
- ">>> +\t[RK818_IRQ_VOUT_LO] = {\n"
- ">>> +\t\t.mask = RK818_IRQ_VOUT_LO_MSK,\n"
- ">>> +\t\t.reg_offset = 0,\n"
+ ">>> +\t[RK818_IRQ_VOUT_LO] =3D {\n"
+ ">>> +\t\t.mask =3D RK818_IRQ_VOUT_LO_MSK,\n"
+ ">>> +\t\t.reg_offset =3D 0,\n"
  ">>> +\t},\n"
- ">>> +\t[RK818_IRQ_VB_LO] = {\n"
- ">>> +\t\t.mask = RK818_IRQ_VB_LO_MSK,\n"
- ">>> +\t\t.reg_offset = 0,\n"
+ ">>> +\t[RK818_IRQ_VB_LO] =3D {\n"
+ ">>> +\t\t.mask =3D RK818_IRQ_VB_LO_MSK,\n"
+ ">>> +\t\t.reg_offset =3D 0,\n"
  ">>> +\t},\n"
- ">>> +\t[RK818_IRQ_PWRON] = {\n"
- ">>> +\t\t.mask = RK818_IRQ_PWRON_MSK,\n"
- ">>> +\t\t.reg_offset = 0,\n"
+ ">>> +\t[RK818_IRQ_PWRON] =3D {\n"
+ ">>> +\t\t.mask =3D RK818_IRQ_PWRON_MSK,\n"
+ ">>> +\t\t.reg_offset =3D 0,\n"
  ">>> +\t},\n"
- ">>> +\t[RK818_IRQ_PWRON_LP] = {\n"
- ">>> +\t\t.mask = RK818_IRQ_PWRON_LP_MSK,\n"
- ">>> +\t\t.reg_offset = 0,\n"
+ ">>> +\t[RK818_IRQ_PWRON_LP] =3D {\n"
+ ">>> +\t\t.mask =3D RK818_IRQ_PWRON_LP_MSK,\n"
+ ">>> +\t\t.reg_offset =3D 0,\n"
  ">>> +\t},\n"
- ">>> +\t[RK818_IRQ_HOTDIE] = {\n"
- ">>> +\t\t.mask = RK818_IRQ_HOTDIE_MSK,\n"
- ">>> +\t\t.reg_offset = 0,\n"
+ ">>> +\t[RK818_IRQ_HOTDIE] =3D {\n"
+ ">>> +\t\t.mask =3D RK818_IRQ_HOTDIE_MSK,\n"
+ ">>> +\t\t.reg_offset =3D 0,\n"
  ">>> +\t},\n"
- ">>> +\t[RK818_IRQ_RTC_ALARM] = {\n"
- ">>> +\t\t.mask = RK818_IRQ_RTC_ALARM_MSK,\n"
- ">>> +\t\t.reg_offset = 0,\n"
+ ">>> +\t[RK818_IRQ_RTC_ALARM] =3D {\n"
+ ">>> +\t\t.mask =3D RK818_IRQ_RTC_ALARM_MSK,\n"
+ ">>> +\t\t.reg_offset =3D 0,\n"
  ">>> +\t},\n"
- ">>> +\t[RK818_IRQ_RTC_PERIOD] = {\n"
- ">>> +\t\t.mask = RK818_IRQ_RTC_PERIOD_MSK,\n"
- ">>> +\t\t.reg_offset = 0,\n"
+ ">>> +\t[RK818_IRQ_RTC_PERIOD] =3D {\n"
+ ">>> +\t\t.mask =3D RK818_IRQ_RTC_PERIOD_MSK,\n"
+ ">>> +\t\t.reg_offset =3D 0,\n"
  ">>> +\t},\n"
- ">>> +\t[RK818_IRQ_USB_OV] = {\n"
- ">>> +\t\t.mask = RK818_IRQ_USB_OV_MSK,\n"
- ">>> +\t\t.reg_offset = 0,\n"
+ ">>> +\t[RK818_IRQ_USB_OV] =3D {\n"
+ ">>> +\t\t.mask =3D RK818_IRQ_USB_OV_MSK,\n"
+ ">>> +\t\t.reg_offset =3D 0,\n"
  ">>> +\t},\n"
  ">>> +\n"
  ">>> +\t/* INT_STS2 */\n"
- ">>> +\t[RK818_IRQ_PLUG_IN] = {\n"
- ">>> +\t\t.mask = RK818_IRQ_PLUG_IN_MSK,\n"
- ">>> +\t\t.reg_offset = 1,\n"
+ ">>> +\t[RK818_IRQ_PLUG_IN] =3D {\n"
+ ">>> +\t\t.mask =3D RK818_IRQ_PLUG_IN_MSK,\n"
+ ">>> +\t\t.reg_offset =3D 1,\n"
  ">>> +\t},\n"
- ">>> +\t[RK818_IRQ_PLUG_OUT] = {\n"
- ">>> +\t\t.mask = RK818_IRQ_PLUG_OUT_MSK,\n"
- ">>> +\t\t.reg_offset = 1,\n"
+ ">>> +\t[RK818_IRQ_PLUG_OUT] =3D {\n"
+ ">>> +\t\t.mask =3D RK818_IRQ_PLUG_OUT_MSK,\n"
+ ">>> +\t\t.reg_offset =3D 1,\n"
  ">>> +\t},\n"
- ">>> +\t[RK818_IRQ_CHG_OK] = {\n"
- ">>> +\t\t.mask = RK818_IRQ_CHG_OK_MSK,\n"
- ">>> +\t\t.reg_offset = 1,\n"
+ ">>> +\t[RK818_IRQ_CHG_OK] =3D {\n"
+ ">>> +\t\t.mask =3D RK818_IRQ_CHG_OK_MSK,\n"
+ ">>> +\t\t.reg_offset =3D 1,\n"
  ">>> +\t},\n"
- ">>> +\t[RK818_IRQ_CHG_TE] = {\n"
- ">>> +\t\t.mask = RK818_IRQ_CHG_TE_MSK,\n"
- ">>> +\t\t.reg_offset = 1,\n"
+ ">>> +\t[RK818_IRQ_CHG_TE] =3D {\n"
+ ">>> +\t\t.mask =3D RK818_IRQ_CHG_TE_MSK,\n"
+ ">>> +\t\t.reg_offset =3D 1,\n"
  ">>> +\t},\n"
- ">>> +\t[RK818_IRQ_CHG_TS1] = {\n"
- ">>> +\t\t.mask = RK818_IRQ_CHG_TS1_MSK,\n"
- ">>> +\t\t.reg_offset = 1,\n"
+ ">>> +\t[RK818_IRQ_CHG_TS1] =3D {\n"
+ ">>> +\t\t.mask =3D RK818_IRQ_CHG_TS1_MSK,\n"
+ ">>> +\t\t.reg_offset =3D 1,\n"
  ">>> +\t},\n"
- ">>> +\t[RK818_IRQ_TS2] = {\n"
- ">>> +\t\t.mask = RK818_IRQ_TS2_MSK,\n"
- ">>> +\t\t.reg_offset = 1,\n"
+ ">>> +\t[RK818_IRQ_TS2] =3D {\n"
+ ">>> +\t\t.mask =3D RK818_IRQ_TS2_MSK,\n"
+ ">>> +\t\t.reg_offset =3D 1,\n"
  ">>> +\t},\n"
- ">>> +\t[RK818_IRQ_CHG_CVTLIM] = {\n"
- ">>> +\t\t.mask = RK818_IRQ_CHG_CVTLIM_MSK,\n"
- ">>> +\t\t.reg_offset = 1,\n"
+ ">>> +\t[RK818_IRQ_CHG_CVTLIM] =3D {\n"
+ ">>> +\t\t.mask =3D RK818_IRQ_CHG_CVTLIM_MSK,\n"
+ ">>> +\t\t.reg_offset =3D 1,\n"
  ">>> +\t},\n"
- ">>> +\t[RK818_IRQ_DISCHG_ILIM] = {\n"
- ">>> +\t\t.mask = RK818_IRQ_DISCHG_ILIM_MSK,\n"
- ">>> +\t\t.reg_offset = 1,\n"
+ ">>> +\t[RK818_IRQ_DISCHG_ILIM] =3D {\n"
+ ">>> +\t\t.mask =3D RK818_IRQ_DISCHG_ILIM_MSK,\n"
+ ">>> +\t\t.reg_offset =3D 1,\n"
  ">>> +\t},\n"
  ">>> +};\n"
  ">>> +\n"
- ">>>   static struct regmap_irq_chip rk808_irq_chip = {\n"
- ">>>   \t.name = \"rk808\",\n"
- ">>>   \t.irqs = rk808_irqs,\n"
- ">>> @@ -148,6 +251,18 @@ static struct regmap_irq_chip rk808_irq_chip = {\n"
- ">>>   \t.init_ack_masked = true,\n"
+ ">>>   static struct regmap_irq_chip rk808_irq_chip =3D {\n"
+ ">>>   \t.name =3D \"rk808\",\n"
+ ">>>   \t.irqs =3D rk808_irqs,\n"
+ ">>> @@ -148,6 +251,18 @@ static struct regmap_irq_chip rk808_irq_chip =3D {\n"
+ ">>>   \t.init_ack_masked =3D true,\n"
  ">>>   };\n"
- ">>>   \n"
- ">>> +static struct regmap_irq_chip rk818_irq_chip = {\n"
- ">>> +\t.name = \"rk818\",\n"
- ">>> +\t.irqs = rk818_irqs,\n"
- ">>> +\t.num_irqs = ARRAY_SIZE(rk818_irqs),\n"
- ">>> +\t.num_regs = 2,\n"
- ">>> +\t.irq_reg_stride = 2,\n"
- ">>> +\t.status_base = RK818_INT_STS_REG1,\n"
- ">>> +\t.mask_base = RK818_INT_STS_MSK_REG1,\n"
- ">>> +\t.ack_base = RK818_INT_STS_REG1,\n"
- ">>> +\t.init_ack_masked = true,\n"
+ ">>>  =20\n"
+ ">>> +static struct regmap_irq_chip rk818_irq_chip =3D {\n"
+ ">>> +\t.name =3D \"rk818\",\n"
+ ">>> +\t.irqs =3D rk818_irqs,\n"
+ ">>> +\t.num_irqs =3D ARRAY_SIZE(rk818_irqs),\n"
+ ">>> +\t.num_regs =3D 2,\n"
+ ">>> +\t.irq_reg_stride =3D 2,\n"
+ ">>> +\t.status_base =3D RK818_INT_STS_REG1,\n"
+ ">>> +\t.mask_base =3D RK818_INT_STS_MSK_REG1,\n"
+ ">>> +\t.ack_base =3D RK818_INT_STS_REG1,\n"
+ ">>> +\t.init_ack_masked =3D true,\n"
  ">>> +};\n"
  ">>> +\n"
  ">>>   static struct i2c_client *rk808_i2c_client;\n"
@@ -283,10 +288,10 @@
  ">>> @@ -167,6 +282,48 @@ static void rk808_device_shutdown(void)\n"
  ">>>   \t\tdev_err(&rk808_i2c_client->dev, \"power off error!\\n\");\n"
  ">>>   }\n"
- ">>>   \n"
- ">>> +static const struct of_device_id rk808_of_match[] = {\n"
- ">>> +\t{ .compatible = \"rockchip,rk808\", .data = (void *) RK808_ID },\n"
- ">>> +\t{ .compatible = \"rockchip,rk818\", .data = (void *) RK818_ID },\n"
+ ">>>  =20\n"
+ ">>> +static const struct of_device_id rk808_of_match[] =3D {\n"
+ ">>> +\t{ .compatible =3D \"rockchip,rk808\", .data =3D (void *) RK808_ID },\n"
+ ">>> +\t{ .compatible =3D \"rockchip,rk818\", .data =3D (void *) RK818_ID },\n"
  ">>> +\t{ },\n"
  ">>> +};\n"
  ">>> +MODULE_DEVICE_TABLE(of, rk808_of_match);\n"
@@ -300,29 +305,29 @@
  ">>> +{\n"
  ">>> +\tconst struct of_device_id *of_id;\n"
  ">>> +\n"
- ">>> +\tof_id = of_match_device(rk808_of_match, dev);\n"
+ ">>> +\tof_id =3D of_match_device(rk808_of_match, dev);\n"
  ">>> +\tif (!of_id) {\n"
  ">>> +\t\tdev_err(dev, \"Unable to match OF ID\\n\");\n"
  ">>> +\t\treturn -ENODEV;\n"
  ">>> +\t}\n"
- ">>> +\trk808->variant = (long) of_id->data;\n"
+ ">>> +\trk808->variant =3D (long) of_id->data;\n"
  ">>> +\n"
  ">>> +\tswitch (rk808->variant) {\n"
  ">>> +\tcase RK808_ID:\n"
- ">>> +\t\trk808->nr_cells = ARRAY_SIZE(rk808s);\n"
- ">>> +\t\trk808->cells = rk808s;\n"
- ">>> +\t\trk808->regmap_cfg = &rk808_regmap_config;\n"
- ">>> +\t\trk808->regmap_irq_chip = &rk808_irq_chip;\n"
- ">>> +\t\trk808->pre_init_reg = rk808_pre_init_reg;\n"
- ">>> +\t\trk808->nr_pre_init_regs = ARRAY_SIZE(rk808_pre_init_reg);\n"
+ ">>> +\t\trk808->nr_cells =3D ARRAY_SIZE(rk808s);\n"
+ ">>> +\t\trk808->cells =3D rk808s;\n"
+ ">>> +\t\trk808->regmap_cfg =3D &rk808_regmap_config;\n"
+ ">>> +\t\trk808->regmap_irq_chip =3D &rk808_irq_chip;\n"
+ ">>> +\t\trk808->pre_init_reg =3D rk808_pre_init_reg;\n"
+ ">>> +\t\trk808->nr_pre_init_regs =3D ARRAY_SIZE(rk808_pre_init_reg);\n"
  ">>> +\t\tbreak;\n"
  ">>> +\tcase RK818_ID:\n"
- ">>> +\t\trk808->nr_cells = ARRAY_SIZE(rk818s);\n"
- ">>> +\t\trk808->cells = rk818s;\n"
- ">>> +\t\trk808->regmap_cfg = &rk818_regmap_config;\n"
- ">>> +\t\trk808->regmap_irq_chip = &rk818_irq_chip;\n"
- ">>> +\t\trk808->pre_init_reg = rk818_pre_init_reg;\n"
- ">>> +\t\trk808->nr_pre_init_regs = ARRAY_SIZE(rk818_pre_init_reg);\n"
+ ">>> +\t\trk808->nr_cells =3D ARRAY_SIZE(rk818s);\n"
+ ">>> +\t\trk808->cells =3D rk818s;\n"
+ ">>> +\t\trk808->regmap_cfg =3D &rk818_regmap_config;\n"
+ ">>> +\t\trk808->regmap_irq_chip =3D &rk818_irq_chip;\n"
+ ">>> +\t\trk808->pre_init_reg =3D rk818_pre_init_reg;\n"
+ ">>> +\t\trk808->nr_pre_init_regs =3D ARRAY_SIZE(rk818_pre_init_reg);\n"
  ">>> +\t\tbreak;\n"
  ">>> +\tdefault:\n"
  ">>> +\t\tdev_err(dev, \"unsupported RK8XX ID %lu\\n\", rk808->variant);\n"
@@ -337,18 +342,18 @@
  ">>> @@ -176,46 +333,52 @@ static int rk808_probe(struct i2c_client *client,\n"
  ">>>   \tint ret;\n"
  ">>>   \tint i;\n"
- ">>>   \n"
+ ">>>  =20\n"
  ">>> -\tif (!client->irq) {\n"
  ">>> -\t\tdev_err(&client->dev, \"No interrupt support, no core IRQ\\n\");\n"
  ">>> -\t\treturn -EINVAL;\n"
  ">>> -\t}\n"
  ">>> -\n"
- ">>>   \trk808 = devm_kzalloc(&client->dev, sizeof(*rk808), GFP_KERNEL);\n"
+ ">>>   \trk808 =3D devm_kzalloc(&client->dev, sizeof(*rk808), GFP_KERNEL);\n"
  ">>>   \tif (!rk808)\n"
  ">>>   \t\treturn -ENOMEM;\n"
- ">>>   \n"
- ">>> -\trk808->regmap = devm_regmap_init_i2c(client, &rk808_regmap_config);\n"
- ">>> +\tret = rk8xx_match_device(rk808, &client->dev);\n"
+ ">>>  =20\n"
+ ">>> -\trk808->regmap =3D devm_regmap_init_i2c(client, &rk808_regmap_config);\n"
+ ">>> +\tret =3D rk8xx_match_device(rk808, &client->dev);\n"
  ">> Is there a way to dynamically probe the device?  No device ID you can\n"
  ">> read directly from the silicon?\n"
  "> AFAIK there is no device ID register. At least it is not documented in\n"
@@ -363,17 +368,17 @@
  ">>> +\tif (ret)\n"
  ">>> +\t\treturn ret;\n"
  ">>> +\n"
- ">>> +\trk808->i2c = client;\n"
+ ">>> +\trk808->i2c =3D client;\n"
  ">>> +\ti2c_set_clientdata(client, rk808);\n"
  ">>> +\n"
- ">>> +\trk808->regmap = devm_regmap_init_i2c(client, rk808->regmap_cfg);\n"
+ ">>> +\trk808->regmap =3D devm_regmap_init_i2c(client, rk808->regmap_cfg);\n"
  ">>>   \tif (IS_ERR(rk808->regmap)) {\n"
  ">>>   \t\tdev_err(&client->dev, \"regmap initialization failed\\n\");\n"
  ">>>   \t\treturn PTR_ERR(rk808->regmap);\n"
  ">>>   \t}\n"
- ">>>   \n"
- ">>> -\tfor (i = 0; i < ARRAY_SIZE(pre_init_reg); i++) {\n"
- ">>> -\t\tret = regmap_update_bits(rk808->regmap, pre_init_reg[i].addr,\n"
+ ">>>  =20\n"
+ ">>> -\tfor (i =3D 0; i < ARRAY_SIZE(pre_init_reg); i++) {\n"
+ ">>> -\t\tret =3D regmap_update_bits(rk808->regmap, pre_init_reg[i].addr,\n"
  ">>> -\t\t\t\t\t pre_init_reg[i].mask,\n"
  ">>> -\t\t\t\t\t pre_init_reg[i].value);\n"
  ">>> -\t\tif (ret) {\n"
@@ -385,8 +390,8 @@
  ">>> +\t\tdev_err(&client->dev, \"No interrupt support, no core IRQ\\n\");\n"
  ">>> +\t\treturn -EINVAL;\n"
  ">>>   \t}\n"
- ">>>   \n"
- ">>>   \tret = regmap_add_irq_chip(rk808->regmap, client->irq,\n"
+ ">>>  =20\n"
+ ">>>   \tret =3D regmap_add_irq_chip(rk808->regmap, client->irq,\n"
  ">>>   \t\t\t\t  IRQF_ONESHOT, -1,\n"
  ">>> -\t\t\t\t  &rk808_irq_chip, &rk808->irq_data);\n"
  ">>> +\t\t\t\t  rk808->regmap_irq_chip, &rk808->irq_data);\n"
@@ -394,11 +399,11 @@
  ">>>   \t\tdev_err(&client->dev, \"Failed to add irq_chip %d\\n\", ret);\n"
  ">>>   \t\treturn ret;\n"
  ">>>   \t}\n"
- ">>>   \n"
- ">>> -\trk808->i2c = client;\n"
+ ">>>  =20\n"
+ ">>> -\trk808->i2c =3D client;\n"
  ">>> -\ti2c_set_clientdata(client, rk808);\n"
- ">>> +\tfor (i = 0; i < rk808->nr_pre_init_regs; i++) {\n"
- ">>> +\t\tret = regmap_update_bits(rk808->regmap,\n"
+ ">>> +\tfor (i =3D 0; i < rk808->nr_pre_init_regs; i++) {\n"
+ ">>> +\t\tret =3D regmap_update_bits(rk808->regmap,\n"
  ">>> +\t\t\t\t\trk808->pre_init_reg[i].addr,\n"
  ">>> +\t\t\t\t\trk808->pre_init_reg[i].mask,\n"
  ">>> +\t\t\t\t\trk808->pre_init_reg[i].value);\n"
@@ -409,11 +414,11 @@
  ">>> +\t\t\treturn ret;\n"
  ">>> +\t\t}\n"
  ">>> +\t}\n"
- ">>>   \n"
- ">>> -\tret = devm_mfd_add_devices(&client->dev, -1,\n"
+ ">>>  =20\n"
+ ">>> -\tret =3D devm_mfd_add_devices(&client->dev, -1,\n"
  ">>> -\t\t\t\t   rk808s, ARRAY_SIZE(rk808s), NULL, 0,\n"
  ">>> -\t\t\t\t   regmap_irq_get_domain(rk808->irq_data));\n"
- ">>> +\tret = devm_mfd_add_devices(&client->dev, PLATFORM_DEVID_NONE,\n"
+ ">>> +\tret =3D devm_mfd_add_devices(&client->dev, PLATFORM_DEVID_NONE,\n"
  ">>> +\t\t\t      rk808->cells, rk808->nr_cells, NULL, 0,\n"
  ">>> +\t\t\t      regmap_irq_get_domain(rk808->irq_data));\n"
  ">>>   \tif (ret) {\n"
@@ -422,14 +427,14 @@
  ">>> @@ -245,14 +408,9 @@ static int rk808_remove(struct i2c_client *client)\n"
  ">>>   \treturn 0;\n"
  ">>>   }\n"
- ">>>   \n"
- ">>> -static const struct of_device_id rk808_of_match[] = {\n"
- ">>> -\t{ .compatible = \"rockchip,rk808\" },\n"
+ ">>>  =20\n"
+ ">>> -static const struct of_device_id rk808_of_match[] =3D {\n"
+ ">>> -\t{ .compatible =3D \"rockchip,rk808\" },\n"
  ">>> -\t{ },\n"
  ">>> -};\n"
  ">>> -MODULE_DEVICE_TABLE(of, rk808_of_match);\n"
  ">>> -\n"
- ">>>   static const struct i2c_device_id rk808_ids[] = {\n"
+ ">>>   static const struct i2c_device_id rk808_ids[] =3D {\n"
  ">>>   \t{ \"rk808\" },\n"
  ">>> +\t{ \"rk818\" },\n"
  ">>>   \t{ },\n"
@@ -460,33 +465,34 @@
  ">>> + *\n"
  ">>> + * Author: Wadim Egorov <w.egorov@phytec.de>\n"
  ">>> + *\n"
- ">>>    * This program is free software; you can redistribute it and/or modify it\n"
+ ">>>    * This program is free software; you can redistribute it and/or modi=\n"
+ "fy it\n"
  ">>>    * under the terms and conditions of the GNU General Public License,\n"
  ">>>    * version 2, as published by the Free Software Foundation.\n"
  ">>> @@ -16,8 +20,8 @@\n"
  ">>>    * more details.\n"
  ">>>    */\n"
- ">>>   \n"
+ ">>>  =20\n"
  ">>> -#ifndef __LINUX_REGULATOR_rk808_H\n"
  ">>> -#define __LINUX_REGULATOR_rk808_H\n"
  ">>> +#ifndef __LINUX_REGULATOR_RK808_H\n"
  ">>> +#define __LINUX_REGULATOR_RK808_H\n"
- ">>>   \n"
+ ">>>  =20\n"
  ">>>   #include <linux/regulator/machine.h>\n"
  ">>>   #include <linux/regmap.h>\n"
  ">>> @@ -28,7 +32,7 @@\n"
- ">>>   \n"
+ ">>>  =20\n"
  ">>>   #define RK808_DCDC1\t0 /* (0+RK808_START) */\n"
  ">>>   #define RK808_LDO1\t4 /* (4+RK808_START) */\n"
  ">>> -#define RK808_NUM_REGULATORS   14\n"
  ">>> +#define RK808_NUM_REGULATORS\t14\n"
- ">>>   \n"
+ ">>>  =20\n"
  ">>>   enum rk808_reg {\n"
  ">>>   \tRK808_ID_DCDC1,\n"
  ">>> @@ -115,7 +119,92 @@ enum rk808_reg {\n"
  ">>>   #define RK808_INT_STS_MSK_REG2\t0x4f\n"
  ">>>   #define RK808_IO_POL_REG\t0x50\n"
- ">>>   \n"
+ ">>>  =20\n"
  ">>> -/* IRQ Definitions */\n"
  ">>> +/* RK818 */\n"
  ">>> +#define RK818_DCDC1\t\t\t0\n"
@@ -580,7 +586,7 @@
  ">>> @@ -137,6 +226,43 @@ enum rk808_reg {\n"
  ">>>   #define RK808_IRQ_PLUG_IN_INT_MSK\tBIT(0)\n"
  ">>>   #define RK808_IRQ_PLUG_OUT_INT_MSK\tBIT(1)\n"
- ">>>   \n"
+ ">>>  =20\n"
  ">>> +/* RK818 IRQ Definitions */\n"
  ">>> +#define RK818_IRQ_VOUT_LO\t0\n"
  ">>> +#define RK818_IRQ_VB_LO\t\t1\n"
@@ -624,7 +630,7 @@
  ">>> @@ -191,9 +317,27 @@ enum {\n"
  ">>>   \tBOOST_ILMIN_250MA,\n"
  ">>>   };\n"
- ">>>   \n"
+ ">>>  =20\n"
  ">>> +enum {\n"
  ">>> +\tRK808_ID,\n"
  ">>> +\tRK818_ID,\n"
@@ -660,6 +666,19 @@
  "> http://lists.infradead.org/mailman/listinfo/linux-rockchip\n"
  ">\n"
  ">\n"
- >
+ ">\n"
+ "\n"
+ "\n"
+ "--=20\n"
+ "You received this message because you are subscribed to \"rtc-linux\".\n"
+ "Membership options at http://groups.google.com/group/rtc-linux .\n"
+ "Please read http://groups.google.com/group/rtc-linux/web/checklist\n"
+ "before submitting a driver.\n"
+ "---=20\n"
+ "You received this message because you are subscribed to the Google Groups \"=\n"
+ "rtc-linux\" group.\n"
+ "To unsubscribe from this group and stop receiving emails from it, send an e=\n"
+ "mail to rtc-linux+unsubscribe@googlegroups.com.\n"
+ For more options, visit https://groups.google.com/d/optout.
 
-88aafefe5f14b0557f06d4c61aa788057a080e0ec4eff452fe8cc41ee3d5bb5a
+12736d4730660632425b25401fbb917ae7c7a533554c8d366e5bd214922af568

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.