diff mbox

[RFC,13/21] reset: uniphier: add reset driver for UniPhier PH1-LD4 SoC

Message ID 1462873862-30940-14-git-send-email-yamada.masahiro@socionext.com (mailing list archive)
State Not Applicable
Headers show

Commit Message

Masahiro Yamada May 10, 2016, 9:50 a.m. UTC
This series is just for review.
Please do not apply this patch.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
---

 drivers/reset/uniphier/Kconfig              |  4 +++
 drivers/reset/uniphier/Makefile             |  2 ++
 drivers/reset/uniphier/reset-uniphier-ld4.c | 46 +++++++++++++++++++++++++++++
 3 files changed, 52 insertions(+)
 create mode 100644 drivers/reset/uniphier/reset-uniphier-ld4.c

Comments

Philipp Zabel May 10, 2016, 12:25 p.m. UTC | #1
Hi Masahiro,

Am Dienstag, den 10.05.2016, 18:50 +0900 schrieb Masahiro Yamada:
> This series is just for review.
> Please do not apply this patch.
> 
> Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>

No need for all these tiny drivers. If you probe from DT as Lee
requests, you can let of_device_id.data point to a compatible specific
uniphier_reset_data.

regards
Philipp

--
To unsubscribe from this list: send the line "unsubscribe linux-clk" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Masahiro Yamada May 11, 2016, 2:52 a.m. UTC | #2
Hi Philipp,


2016-05-10 21:25 GMT+09:00 Philipp Zabel <p.zabel@pengutronix.de>:
> Hi Masahiro,
>
> Am Dienstag, den 10.05.2016, 18:50 +0900 schrieb Masahiro Yamada:
>> This series is just for review.
>> Please do not apply this patch.
>>
>> Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
>
> No need for all these tiny drivers. If you probe from DT as Lee
> requests, you can let of_device_id.data point to a compatible specific
> uniphier_reset_data.
>

I will need to fill the table a bit more to complete this work,
but I do not think this reset driver will become as big as the clk driver.
(I guess it will be less than 1000 lines.)

If you prefer a single file for the whole of this SoC family,
I can squash all the files into one.
(I can split it if I need to do so in the future.)
Philipp Zabel May 11, 2016, 10:34 a.m. UTC | #3
Hi Masahiro,

Am Mittwoch, den 11.05.2016, 11:52 +0900 schrieb Masahiro Yamada:
> Hi Philipp,
> 
> 
> 2016-05-10 21:25 GMT+09:00 Philipp Zabel <p.zabel@pengutronix.de>:
> > Hi Masahiro,
> >
> > Am Dienstag, den 10.05.2016, 18:50 +0900 schrieb Masahiro Yamada:
> >> This series is just for review.
> >> Please do not apply this patch.
> >>
> >> Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
> >
> > No need for all these tiny drivers. If you probe from DT as Lee
> > requests, you can let of_device_id.data point to a compatible specific
> > uniphier_reset_data.
> >
> 
> I will need to fill the table a bit more to complete this work,
> but I do not think this reset driver will become as big as the clk driver.
> (I guess it will be less than 1000 lines.)
> 
> If you prefer a single file for the whole of this SoC family,
> I can squash all the files into one.
> (I can split it if I need to do so in the future.)

I'm fine with split files if you think the complete lists are too long,
but in that case export the uniphier_reset_data
I don't care about the lists being in a single file so much as I'd
prefer to avoid the duplicated boilerplate of one module_platform_driver
per SoC family member.

> 
> 
> 


--
To unsubscribe from this list: send the line "unsubscribe linux-clk" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Philipp Zabel May 11, 2016, 10:37 a.m. UTC | #4
Am Mittwoch, den 11.05.2016, 12:34 +0200 schrieb Philipp Zabel:
> Hi Masahiro,
> 
> Am Mittwoch, den 11.05.2016, 11:52 +0900 schrieb Masahiro Yamada:
> > Hi Philipp,
> > 
> > 
> > 2016-05-10 21:25 GMT+09:00 Philipp Zabel <p.zabel@pengutronix.de>:
> > > Hi Masahiro,
> > >
> > > Am Dienstag, den 10.05.2016, 18:50 +0900 schrieb Masahiro Yamada:
> > >> This series is just for review.
> > >> Please do not apply this patch.
> > >>
> > >> Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
> > >
> > > No need for all these tiny drivers. If you probe from DT as Lee
> > > requests, you can let of_device_id.data point to a compatible specific
> > > uniphier_reset_data.
> > >
> > 
> > I will need to fill the table a bit more to complete this work,
> > but I do not think this reset driver will become as big as the clk driver.
> > (I guess it will be less than 1000 lines.)
> > 
> > If you prefer a single file for the whole of this SoC family,
> > I can squash all the files into one.
> > (I can split it if I need to do so in the future.)
> 
> I'm fine with split files if you think the complete lists are too long,
> but in that case export the uniphier_reset_data

"... and use them from a single platform driver." I wanted to add here
before I tripped over the send button.

> I don't care about the lists being in a single file so much as I'd
> prefer to avoid the duplicated boilerplate of one module_platform_driver
> per SoC family member.

best regards
Philipp
--
To unsubscribe from this list: send the line "unsubscribe linux-clk" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
diff mbox

Patch

diff --git a/drivers/reset/uniphier/Kconfig b/drivers/reset/uniphier/Kconfig
index e82f7a7..875afd9 100644
--- a/drivers/reset/uniphier/Kconfig
+++ b/drivers/reset/uniphier/Kconfig
@@ -6,4 +6,8 @@  menuconfig RESET_UNIPHIER
 
 if RESET_UNIPHIER
 
+config RESET_UNIPHIER_LD4
+	tristate "Reset driver for UniPhier PH1-LD4 SoC"
+	default ARM
+
 endif
diff --git a/drivers/reset/uniphier/Makefile b/drivers/reset/uniphier/Makefile
index ba660bc..c99a420 100644
--- a/drivers/reset/uniphier/Makefile
+++ b/drivers/reset/uniphier/Makefile
@@ -1 +1,3 @@ 
 obj-y					+= reset-uniphier-core.o
+
+obj-$(CONFIG_RESET_UNIPHIER_LD4)	+= reset-uniphier-ld4.o
diff --git a/drivers/reset/uniphier/reset-uniphier-ld4.c b/drivers/reset/uniphier/reset-uniphier-ld4.c
new file mode 100644
index 0000000..be6e06c
--- /dev/null
+++ b/drivers/reset/uniphier/reset-uniphier-ld4.c
@@ -0,0 +1,46 @@ 
+/*
+ * Copyright (C) 2016 Socionext Inc.
+ *   Author: Masahiro Yamada <yamada.masahiro@socionext.com>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ */
+
+#include <linux/module.h>
+#include <linux/platform_device.h>
+
+#include "reset-uniphier.h"
+
+static const struct uniphier_reset_data uniphier_ld4_reset_data[] = {
+	{
+		.id = 7,
+		.reg = 0x2000,
+		.mask = BIT(10),
+		.deassert_val = BIT(10),
+	},
+	{ .id = UNIPHIER_RESET_ID_END }
+};
+
+static int uniphier_ld4_reset_probe(struct platform_device *pdev)
+{
+	return uniphier_reset_probe(pdev, uniphier_ld4_reset_data);
+}
+
+static struct platform_driver uniphier_ld4_reset_driver = {
+	.probe = uniphier_ld4_reset_probe,
+	.driver = {
+		.name = "uniphier-ld4-reset",
+	},
+};
+module_platform_driver(uniphier_ld4_reset_driver);
+
+MODULE_AUTHOR("Masahiro Yamada <yamada.masahiro@socionext.com>");
+MODULE_DESCRIPTION("UniPhier PH1-LD4 Reset Controller Driver");
+MODULE_LICENSE("GPL");