From mboxrd@z Thu Jan 1 00:00:00 1970 From: lee.jones@linaro.org (Lee Jones) Date: Thu, 25 Jun 2015 15:48:00 +0100 Subject: [PATCH-v4 1/3] mfd: 88pm800: Add device tree support In-Reply-To: <558BE1B7.2060308@linaro.org> References: <1435217189-19578-1-git-send-email-vaibhav.hiremath@linaro.org> <1435217189-19578-2-git-send-email-vaibhav.hiremath@linaro.org> <20150625101916.GB15013@x1> <558BE1B7.2060308@linaro.org> Message-ID: <20150625144800.GC23990@x1> To: linux-arm-kernel@lists.infradead.org List-Id: linux-arm-kernel.lists.infradead.org On Thu, 25 Jun 2015, Vaibhav Hiremath wrote: > On Thursday 25 June 2015 03:49 PM, Lee Jones wrote: > >On Thu, 25 Jun 2015, Vaibhav Hiremath wrote: > > > >>Add DT support to the 88pm800 driver, along with compatible > >>field for it's sub-devices (rtc, onkey and regulator) > >> > >>Signed-off-by: Chao Xie > >>Signed-off-by: Vaibhav Hiremath > >>--- > >> drivers/mfd/88pm800.c | 23 +++++++++++++++++++++++ > >> 1 file changed, 23 insertions(+) > >> > >>diff --git a/drivers/mfd/88pm800.c b/drivers/mfd/88pm800.c > >>index 841717a..40fd014 100644 > >>--- a/drivers/mfd/88pm800.c > >>+++ b/drivers/mfd/88pm800.c > >>@@ -27,6 +27,7 @@ > >> #include > >> #include > >> #include > >>+#include > >> > >> /* Interrupt Registers */ > >> #define PM800_INT_STATUS1 (0x05) > >>@@ -121,6 +122,11 @@ static const struct i2c_device_id pm80x_id_table[] = { > >> }; > >> MODULE_DEVICE_TABLE(i2c, pm80x_id_table); > >> > >>+static const struct of_device_id pm80x_of_match_table[] = { > >>+ { .compatible = "marvell,88pm800", }, > >>+ {}, > >>+}; > >>+ > >> static struct resource rtc_resources[] = { > >> { > >> .name = "88pm80x-rtc", > >>@@ -133,6 +139,7 @@ static struct resource rtc_resources[] = { > >> static struct mfd_cell rtc_devs[] = { > >> { > >> .name = "88pm80x-rtc", > >>+ .of_compatible = "marvell,88pm80x-rtc", > >> .num_resources = ARRAY_SIZE(rtc_resources), > >> .resources = &rtc_resources[0], > >> .id = -1, > >>@@ -151,6 +158,7 @@ static struct resource onkey_resources[] = { > >> static const struct mfd_cell onkey_devs[] = { > >> { > >> .name = "88pm80x-onkey", > >>+ .of_compatible = "marvell,88pm80x-onkey", > >> .num_resources = 1, > >> .resources = &onkey_resources[0], > >> .id = -1, > >>@@ -160,6 +168,7 @@ static const struct mfd_cell onkey_devs[] = { > >> static const struct mfd_cell regulator_devs[] = { > >> { > >> .name = "88pm80x-regulator", > >>+ .of_compatible = "marvell,88pm80x-regulator", > >> .id = -1, > >> }, > >> }; > >>@@ -544,8 +553,21 @@ static int pm800_probe(struct i2c_client *client, > >> int ret = 0; > >> struct pm80x_chip *chip; > >> struct pm80x_platform_data *pdata = dev_get_platdata(&client->dev); > >>+ struct device_node *np = client->dev.of_node; > >> struct pm80x_subchip *subchip; > >> > >>+ if (!pdata && !np) { > >>+ dev_err(&client->dev, > >>+ "pm80x requires platform data or of_node\n"); > >>+ return -EINVAL; > >>+ } > >>+ > >>+ if (!pdata) { > >>+ pdata = devm_kzalloc(&client->dev, sizeof(*pdata), GFP_KERNEL); > >>+ if (!pdata) > >>+ return -ENOMEM; > >>+ } > > > >Why have you allocated data for pdata, then done nothing with it? > > > > Not in this patch, but subsequent patches would use it. Only provide it when you start using it please. -- Lee Jones Linaro STMicroelectronics Landing Team Lead Linaro.org ? Open source software for ARM SoCs Follow Linaro: Facebook | Twitter | Blog From mboxrd@z Thu Jan 1 00:00:00 1970 From: Lee Jones Subject: Re: [PATCH-v4 1/3] mfd: 88pm800: Add device tree support Date: Thu, 25 Jun 2015 15:48:00 +0100 Message-ID: <20150625144800.GC23990@x1> References: <1435217189-19578-1-git-send-email-vaibhav.hiremath@linaro.org> <1435217189-19578-2-git-send-email-vaibhav.hiremath@linaro.org> <20150625101916.GB15013@x1> <558BE1B7.2060308@linaro.org> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: QUOTED-PRINTABLE Return-path: Content-Disposition: inline In-Reply-To: <558BE1B7.2060308-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org> Sender: devicetree-owner-u79uwXL29TY76Z2rM5mHXA@public.gmane.org To: Vaibhav Hiremath Cc: linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org, devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, robh+dt-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org, yizhang-eYqpPyKDWXRBDgjK7y7TUQ@public.gmane.org, Chao Xie List-Id: devicetree@vger.kernel.org On Thu, 25 Jun 2015, Vaibhav Hiremath wrote: > On Thursday 25 June 2015 03:49 PM, Lee Jones wrote: > >On Thu, 25 Jun 2015, Vaibhav Hiremath wrote: > > > >>Add DT support to the 88pm800 driver, along with compatible > >>field for it's sub-devices (rtc, onkey and regulator) > >> > >>Signed-off-by: Chao Xie > >>Signed-off-by: Vaibhav Hiremath > >>--- > >> drivers/mfd/88pm800.c | 23 +++++++++++++++++++++++ > >> 1 file changed, 23 insertions(+) > >> > >>diff --git a/drivers/mfd/88pm800.c b/drivers/mfd/88pm800.c > >>index 841717a..40fd014 100644 > >>--- a/drivers/mfd/88pm800.c > >>+++ b/drivers/mfd/88pm800.c > >>@@ -27,6 +27,7 @@ > >> #include > >> #include > >> #include > >>+#include > >> > >> /* Interrupt Registers */ > >> #define PM800_INT_STATUS1 (0x05) > >>@@ -121,6 +122,11 @@ static const struct i2c_device_id pm80x_id_tab= le[] =3D { > >> }; > >> MODULE_DEVICE_TABLE(i2c, pm80x_id_table); > >> > >>+static const struct of_device_id pm80x_of_match_table[] =3D { > >>+ { .compatible =3D "marvell,88pm800", }, > >>+ {}, > >>+}; > >>+ > >> static struct resource rtc_resources[] =3D { > >> { > >> .name =3D "88pm80x-rtc", > >>@@ -133,6 +139,7 @@ static struct resource rtc_resources[] =3D { > >> static struct mfd_cell rtc_devs[] =3D { > >> { > >> .name =3D "88pm80x-rtc", > >>+ .of_compatible =3D "marvell,88pm80x-rtc", > >> .num_resources =3D ARRAY_SIZE(rtc_resources), > >> .resources =3D &rtc_resources[0], > >> .id =3D -1, > >>@@ -151,6 +158,7 @@ static struct resource onkey_resources[] =3D { > >> static const struct mfd_cell onkey_devs[] =3D { > >> { > >> .name =3D "88pm80x-onkey", > >>+ .of_compatible =3D "marvell,88pm80x-onkey", > >> .num_resources =3D 1, > >> .resources =3D &onkey_resources[0], > >> .id =3D -1, > >>@@ -160,6 +168,7 @@ static const struct mfd_cell onkey_devs[] =3D { > >> static const struct mfd_cell regulator_devs[] =3D { > >> { > >> .name =3D "88pm80x-regulator", > >>+ .of_compatible =3D "marvell,88pm80x-regulator", > >> .id =3D -1, > >> }, > >> }; > >>@@ -544,8 +553,21 @@ static int pm800_probe(struct i2c_client *clie= nt, > >> int ret =3D 0; > >> struct pm80x_chip *chip; > >> struct pm80x_platform_data *pdata =3D dev_get_platdata(&client->= dev); > >>+ struct device_node *np =3D client->dev.of_node; > >> struct pm80x_subchip *subchip; > >> > >>+ if (!pdata && !np) { > >>+ dev_err(&client->dev, > >>+ "pm80x requires platform data or of_node\n"); > >>+ return -EINVAL; > >>+ } > >>+ > >>+ if (!pdata) { > >>+ pdata =3D devm_kzalloc(&client->dev, sizeof(*pdata), GFP_KERNEL)= ; > >>+ if (!pdata) > >>+ return -ENOMEM; > >>+ } > > > >Why have you allocated data for pdata, then done nothing with it? > > >=20 > Not in this patch, but subsequent patches would use it. Only provide it when you start using it please. --=20 Lee Jones Linaro STMicroelectronics Landing Team Lead Linaro.org =E2=94=82 Open source software for ARM SoCs =46ollow Linaro: Facebook | Twitter | Blog -- To unsubscribe from this list: send the line "unsubscribe devicetree" i= n the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752419AbbFYOsQ (ORCPT ); Thu, 25 Jun 2015 10:48:16 -0400 Received: from mail-wg0-f53.google.com ([74.125.82.53]:35606 "EHLO mail-wg0-f53.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751469AbbFYOsH (ORCPT ); Thu, 25 Jun 2015 10:48:07 -0400 Date: Thu, 25 Jun 2015 15:48:00 +0100 From: Lee Jones To: Vaibhav Hiremath Cc: linux-arm-kernel@lists.infradead.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, robh+dt@kernel.org, yizhang@marvell.com, Chao Xie Subject: Re: [PATCH-v4 1/3] mfd: 88pm800: Add device tree support Message-ID: <20150625144800.GC23990@x1> References: <1435217189-19578-1-git-send-email-vaibhav.hiremath@linaro.org> <1435217189-19578-2-git-send-email-vaibhav.hiremath@linaro.org> <20150625101916.GB15013@x1> <558BE1B7.2060308@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <558BE1B7.2060308@linaro.org> User-Agent: Mutt/1.5.21 (2010-09-15) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Thu, 25 Jun 2015, Vaibhav Hiremath wrote: > On Thursday 25 June 2015 03:49 PM, Lee Jones wrote: > >On Thu, 25 Jun 2015, Vaibhav Hiremath wrote: > > > >>Add DT support to the 88pm800 driver, along with compatible > >>field for it's sub-devices (rtc, onkey and regulator) > >> > >>Signed-off-by: Chao Xie > >>Signed-off-by: Vaibhav Hiremath > >>--- > >> drivers/mfd/88pm800.c | 23 +++++++++++++++++++++++ > >> 1 file changed, 23 insertions(+) > >> > >>diff --git a/drivers/mfd/88pm800.c b/drivers/mfd/88pm800.c > >>index 841717a..40fd014 100644 > >>--- a/drivers/mfd/88pm800.c > >>+++ b/drivers/mfd/88pm800.c > >>@@ -27,6 +27,7 @@ > >> #include > >> #include > >> #include > >>+#include > >> > >> /* Interrupt Registers */ > >> #define PM800_INT_STATUS1 (0x05) > >>@@ -121,6 +122,11 @@ static const struct i2c_device_id pm80x_id_table[] = { > >> }; > >> MODULE_DEVICE_TABLE(i2c, pm80x_id_table); > >> > >>+static const struct of_device_id pm80x_of_match_table[] = { > >>+ { .compatible = "marvell,88pm800", }, > >>+ {}, > >>+}; > >>+ > >> static struct resource rtc_resources[] = { > >> { > >> .name = "88pm80x-rtc", > >>@@ -133,6 +139,7 @@ static struct resource rtc_resources[] = { > >> static struct mfd_cell rtc_devs[] = { > >> { > >> .name = "88pm80x-rtc", > >>+ .of_compatible = "marvell,88pm80x-rtc", > >> .num_resources = ARRAY_SIZE(rtc_resources), > >> .resources = &rtc_resources[0], > >> .id = -1, > >>@@ -151,6 +158,7 @@ static struct resource onkey_resources[] = { > >> static const struct mfd_cell onkey_devs[] = { > >> { > >> .name = "88pm80x-onkey", > >>+ .of_compatible = "marvell,88pm80x-onkey", > >> .num_resources = 1, > >> .resources = &onkey_resources[0], > >> .id = -1, > >>@@ -160,6 +168,7 @@ static const struct mfd_cell onkey_devs[] = { > >> static const struct mfd_cell regulator_devs[] = { > >> { > >> .name = "88pm80x-regulator", > >>+ .of_compatible = "marvell,88pm80x-regulator", > >> .id = -1, > >> }, > >> }; > >>@@ -544,8 +553,21 @@ static int pm800_probe(struct i2c_client *client, > >> int ret = 0; > >> struct pm80x_chip *chip; > >> struct pm80x_platform_data *pdata = dev_get_platdata(&client->dev); > >>+ struct device_node *np = client->dev.of_node; > >> struct pm80x_subchip *subchip; > >> > >>+ if (!pdata && !np) { > >>+ dev_err(&client->dev, > >>+ "pm80x requires platform data or of_node\n"); > >>+ return -EINVAL; > >>+ } > >>+ > >>+ if (!pdata) { > >>+ pdata = devm_kzalloc(&client->dev, sizeof(*pdata), GFP_KERNEL); > >>+ if (!pdata) > >>+ return -ENOMEM; > >>+ } > > > >Why have you allocated data for pdata, then done nothing with it? > > > > Not in this patch, but subsequent patches would use it. Only provide it when you start using it please. -- Lee Jones Linaro STMicroelectronics Landing Team Lead Linaro.org │ Open source software for ARM SoCs Follow Linaro: Facebook | Twitter | Blog