* [PATCH v2 0/3] add UniPhier efuse support
@ 2017-10-06 5:02 Keiji Hayashibara
2017-10-06 5:02 ` [PATCH v2 1/3] dt-bindings: nvmem: add description for UniPhier eFuse Keiji Hayashibara
` (2 more replies)
0 siblings, 3 replies; 11+ messages in thread
From: Keiji Hayashibara @ 2017-10-06 5:02 UTC (permalink / raw)
To: srinivas.kandagatla-QSEj5FYQhm4dnm+yROfE0A
Cc: robh+dt-DgEjT+Ai2ygdnm+yROfE0A, devicetree-u79uwXL29TY76Z2rM5mHXA,
linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r,
linux-kernel-u79uwXL29TY76Z2rM5mHXA,
masami.hiramatsu-QSEj5FYQhm4dnm+yROfE0A,
jaswinder.singh-QSEj5FYQhm4dnm+yROfE0A,
yamada.masahiro-uWyLwvC0a2jby3iVrkZq2A,
hayashi.kunihiko-uWyLwvC0a2jby3iVrkZq2A,
owada.kiyoshi-uWyLwvC0a2jby3iVrkZq2A, Keiji Hayashibara
This series adds support for eFuse implemented on UniPhier LD20 SoCs.
The eFuse device is under soc-glue and this register implements as read only.
patch V1
https://lkml.org/lkml/2017/8/31/880
Changes between V2 and V1
=========================
1. Fix sparse warnings
2. Changed to implement without regmap
3. Convert devm_kzalloc to stack
4. Divide efuse into two areas in devicetree
5. Remove .owner settings of struct nvmem_config
6. Remove enable of CONFIG_UNIPHIER_EFUSE in defconfig
7. Other minor fixes
Keiji Hayashibara (3):
dt-bindings: nvmem: add description for UniPhier eFuse
nvmem: uniphier: add UniPhier eFuse driver
arm64: dts: uniphier: add efuse node for LD20
.../devicetree/bindings/nvmem/uniphier-efuse.txt | 49 +++++++++++
arch/arm64/boot/dts/socionext/uniphier-ld20.dtsi | 18 ++++
drivers/nvmem/Kconfig | 11 +++
drivers/nvmem/Makefile | 2 +
drivers/nvmem/uniphier-efuse.c | 97 ++++++++++++++++++++++
5 files changed, 177 insertions(+)
create mode 100644 Documentation/devicetree/bindings/nvmem/uniphier-efuse.txt
create mode 100644 drivers/nvmem/uniphier-efuse.c
--
2.7.4
--
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
^ permalink raw reply [flat|nested] 11+ messages in thread
* [PATCH v2 1/3] dt-bindings: nvmem: add description for UniPhier eFuse
2017-10-06 5:02 [PATCH v2 0/3] add UniPhier efuse support Keiji Hayashibara
@ 2017-10-06 5:02 ` Keiji Hayashibara
[not found] ` <1507266180-11840-2-git-send-email-hayashibara.keiji-uWyLwvC0a2jby3iVrkZq2A@public.gmane.org>
2017-10-06 5:02 ` [PATCH v2 2/3] nvmem: uniphier: add UniPhier eFuse driver Keiji Hayashibara
[not found] ` <1507266180-11840-1-git-send-email-hayashibara.keiji-uWyLwvC0a2jby3iVrkZq2A@public.gmane.org>
2 siblings, 1 reply; 11+ messages in thread
From: Keiji Hayashibara @ 2017-10-06 5:02 UTC (permalink / raw)
To: srinivas.kandagatla
Cc: robh+dt, devicetree, linux-arm-kernel, linux-kernel,
masami.hiramatsu, jaswinder.singh, yamada.masahiro,
hayashi.kunihiko, owada.kiyoshi, Keiji Hayashibara
Add uniphier-efuse dt-bindings documentation.
Signed-off-by: Keiji Hayashibara <hayashibara.keiji@socionext.com>
---
.../devicetree/bindings/nvmem/uniphier-efuse.txt | 49 ++++++++++++++++++++++
1 file changed, 49 insertions(+)
create mode 100644 Documentation/devicetree/bindings/nvmem/uniphier-efuse.txt
diff --git a/Documentation/devicetree/bindings/nvmem/uniphier-efuse.txt b/Documentation/devicetree/bindings/nvmem/uniphier-efuse.txt
new file mode 100644
index 0000000..1a394e5
--- /dev/null
+++ b/Documentation/devicetree/bindings/nvmem/uniphier-efuse.txt
@@ -0,0 +1,49 @@
+= UniPhier eFuse device tree bindings =
+
+This UniPhier eFuse must be under soc-glue.
+
+Required properties:
+- compatible: should be "socionext,uniphier-efuse"
+- reg: should contain the register location and length
+
+= Data cells =
+Are child nodes of efuse, bindings of which as described in
+bindings/nvmem/nvmem.txt
+
+Example:
+
+ soc-glue@5f900000 {
+ compatible = "socionext,uniphier-ld20-soc-glue-debug",
+ "simple-mfd";
+ #address-cells = <1>;
+ #size-cells = <1>;
+ ranges = <0x0 0x5f900000 0x2000>;
+
+ efuse@100 {
+ compatible = "socionext,uniphier-efuse";
+ reg = <0x100 0x28>;
+ };
+
+ efuse@200 {
+ compatible = "socionext,uniphier-efuse";
+ reg = <0x200 0x68>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ /* Data cells */
+ usb_mon: usb_mon {
+ reg = <0x54 0xc>;
+ };
+ };
+ };
+
+= Data consumers =
+Are device nodes which consume nvmem data cells.
+
+Example:
+
+ usb {
+ ...
+ nvmem-cells = <&usb_mon>;
+ nvmem-cell-names = "usb_mon";
+ }
--
2.7.4
^ permalink raw reply related [flat|nested] 11+ messages in thread
* [PATCH v2 2/3] nvmem: uniphier: add UniPhier eFuse driver
2017-10-06 5:02 [PATCH v2 0/3] add UniPhier efuse support Keiji Hayashibara
2017-10-06 5:02 ` [PATCH v2 1/3] dt-bindings: nvmem: add description for UniPhier eFuse Keiji Hayashibara
@ 2017-10-06 5:02 ` Keiji Hayashibara
[not found] ` <1507266180-11840-1-git-send-email-hayashibara.keiji-uWyLwvC0a2jby3iVrkZq2A@public.gmane.org>
2 siblings, 0 replies; 11+ messages in thread
From: Keiji Hayashibara @ 2017-10-06 5:02 UTC (permalink / raw)
To: srinivas.kandagatla
Cc: robh+dt, devicetree, linux-arm-kernel, linux-kernel,
masami.hiramatsu, jaswinder.singh, yamada.masahiro,
hayashi.kunihiko, owada.kiyoshi, Keiji Hayashibara
Add eFuse driver for Socionext UniPhier series SoC.
Note that eFuse device is under soc-glue and this register
implements as read only.
Signed-off-by: Keiji Hayashibara <hayashibara.keiji@socionext.com>
---
drivers/nvmem/Kconfig | 11 +++++
drivers/nvmem/Makefile | 2 +
drivers/nvmem/uniphier-efuse.c | 97 ++++++++++++++++++++++++++++++++++++++++++
3 files changed, 110 insertions(+)
create mode 100644 drivers/nvmem/uniphier-efuse.c
diff --git a/drivers/nvmem/Kconfig b/drivers/nvmem/Kconfig
index 101ced4..9c32cfe 100644
--- a/drivers/nvmem/Kconfig
+++ b/drivers/nvmem/Kconfig
@@ -123,6 +123,17 @@ config NVMEM_SUNXI_SID
This driver can also be built as a module. If so, the module
will be called nvmem_sunxi_sid.
+config UNIPHIER_EFUSE
+ tristate "UniPhier SoCs eFuse support"
+ depends on ARCH_UNIPHIER || COMPILE_TEST
+ depends on HAS_IOMEM
+ help
+ This is a simple driver to dump specified values of UniPhier SoC
+ from eFuse.
+
+ This driver can also be built as a module. If so, the module
+ will be called nvmem-uniphier-efuse.
+
config NVMEM_VF610_OCOTP
tristate "VF610 SoC OCOTP support"
depends on SOC_VF610 || COMPILE_TEST
diff --git a/drivers/nvmem/Makefile b/drivers/nvmem/Makefile
index 1731406..2d07162 100644
--- a/drivers/nvmem/Makefile
+++ b/drivers/nvmem/Makefile
@@ -26,6 +26,8 @@ obj-$(CONFIG_ROCKCHIP_EFUSE) += nvmem_rockchip_efuse.o
nvmem_rockchip_efuse-y := rockchip-efuse.o
obj-$(CONFIG_NVMEM_SUNXI_SID) += nvmem_sunxi_sid.o
nvmem_sunxi_sid-y := sunxi_sid.o
+obj-$(CONFIG_UNIPHIER_EFUSE) += nvmem-uniphier-efuse.o
+nvmem-uniphier-efuse-y := uniphier-efuse.o
obj-$(CONFIG_NVMEM_VF610_OCOTP) += nvmem-vf610-ocotp.o
nvmem-vf610-ocotp-y := vf610-ocotp.o
obj-$(CONFIG_MESON_EFUSE) += nvmem_meson_efuse.o
diff --git a/drivers/nvmem/uniphier-efuse.c b/drivers/nvmem/uniphier-efuse.c
new file mode 100644
index 0000000..2bb45c4
--- /dev/null
+++ b/drivers/nvmem/uniphier-efuse.c
@@ -0,0 +1,97 @@
+/*
+ * UniPhier eFuse driver
+ *
+ * Copyright (C) 2017 Socionext Inc.
+ *
+ * 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 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/device.h>
+#include <linux/io.h>
+#include <linux/module.h>
+#include <linux/nvmem-provider.h>
+#include <linux/platform_device.h>
+
+struct uniphier_efuse_priv {
+ void __iomem *base;
+};
+
+static int uniphier_reg_read(void *context,
+ unsigned int reg, void *_val, size_t bytes)
+{
+ struct uniphier_efuse_priv *priv = context;
+ u32 *val = _val;
+ int offs;
+
+ for (offs = 0; offs < bytes; offs += sizeof(u32))
+ *val++ = readl(priv->base + reg + offs);
+
+ return 0;
+}
+
+static int uniphier_efuse_probe(struct platform_device *pdev)
+{
+ struct device *dev = &pdev->dev;
+ struct resource *res;
+ struct nvmem_device *nvmem;
+ struct nvmem_config econfig ={};
+ struct uniphier_efuse_priv *priv;
+
+ priv = devm_kzalloc(dev, sizeof(*priv), GFP_KERNEL);
+ if (!priv)
+ return -ENOMEM;
+
+ res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
+ priv->base = devm_ioremap_resource(dev, res);
+ if (IS_ERR(priv->base))
+ return PTR_ERR(priv->base);
+
+ econfig.stride = 4;
+ econfig.word_size = 4;
+ econfig.read_only = true;
+ econfig.reg_read = uniphier_reg_read;
+ econfig.size = resource_size(res);
+ econfig.priv = priv;
+ econfig.dev = dev;
+ nvmem = nvmem_register(&econfig);
+ if (IS_ERR(nvmem))
+ return PTR_ERR(nvmem);
+
+ platform_set_drvdata(pdev, nvmem);
+
+ return 0;
+}
+
+static int uniphier_efuse_remove(struct platform_device *pdev)
+{
+ struct nvmem_device *nvmem = platform_get_drvdata(pdev);
+
+ return nvmem_unregister(nvmem);
+}
+
+static const struct of_device_id uniphier_efuse_of_match[] = {
+ { .compatible = "socionext,uniphier-efuse",},
+ {/* sentinel */},
+};
+MODULE_DEVICE_TABLE(of, uniphier_efuse_of_match);
+
+static struct platform_driver uniphier_efuse_driver = {
+ .probe = uniphier_efuse_probe,
+ .remove = uniphier_efuse_remove,
+ .driver = {
+ .name = "uniphier-efuse",
+ .of_match_table = uniphier_efuse_of_match,
+ },
+};
+module_platform_driver(uniphier_efuse_driver);
+
+MODULE_AUTHOR("Keiji Hayashibara <hayashibara.keiji@socionext.com>");
+MODULE_DESCRIPTION("UniPhier eFuse driver");
+MODULE_LICENSE("GPL v2");
--
2.7.4
^ permalink raw reply related [flat|nested] 11+ messages in thread
* [PATCH v2 3/3] arm64: dts: uniphier: add efuse node for LD20
[not found] ` <1507266180-11840-1-git-send-email-hayashibara.keiji-uWyLwvC0a2jby3iVrkZq2A@public.gmane.org>
@ 2017-10-06 5:03 ` Keiji Hayashibara
[not found] ` <1507266180-11840-4-git-send-email-hayashibara.keiji-uWyLwvC0a2jby3iVrkZq2A@public.gmane.org>
0 siblings, 1 reply; 11+ messages in thread
From: Keiji Hayashibara @ 2017-10-06 5:03 UTC (permalink / raw)
To: srinivas.kandagatla-QSEj5FYQhm4dnm+yROfE0A
Cc: robh+dt-DgEjT+Ai2ygdnm+yROfE0A, devicetree-u79uwXL29TY76Z2rM5mHXA,
linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r,
linux-kernel-u79uwXL29TY76Z2rM5mHXA,
masami.hiramatsu-QSEj5FYQhm4dnm+yROfE0A,
jaswinder.singh-QSEj5FYQhm4dnm+yROfE0A,
yamada.masahiro-uWyLwvC0a2jby3iVrkZq2A,
hayashi.kunihiko-uWyLwvC0a2jby3iVrkZq2A,
owada.kiyoshi-uWyLwvC0a2jby3iVrkZq2A, Keiji Hayashibara
Add efuse node for UniPhier LD20 SoC.
This efuse node is included in soc-glue.
Signed-off-by: Keiji Hayashibara <hayashibara.keiji-uWyLwvC0a2jby3iVrkZq2A@public.gmane.org>
---
arch/arm64/boot/dts/socionext/uniphier-ld20.dtsi | 18 ++++++++++++++++++
1 file changed, 18 insertions(+)
diff --git a/arch/arm64/boot/dts/socionext/uniphier-ld20.dtsi b/arch/arm64/boot/dts/socionext/uniphier-ld20.dtsi
index a29c279..ddefde6 100644
--- a/arch/arm64/boot/dts/socionext/uniphier-ld20.dtsi
+++ b/arch/arm64/boot/dts/socionext/uniphier-ld20.dtsi
@@ -376,6 +376,24 @@
};
};
+ soc-glue@5f900000 {
+ compatible = "socionext,uniphier-ld20-soc-glue-debug",
+ "simple-mfd";
+ #address-cells = <1>;
+ #size-cells = <1>;
+ ranges = <0x0 0x5f900000 0x2000>;
+
+ efuse@100 {
+ compatible = "socionext,uniphier-efuse";
+ reg = <0x100 0x28>;
+ };
+
+ efuse@200 {
+ compatible = "socionext,uniphier-efuse";
+ reg = <0x200 0x68>;
+ };
+ };
+
aidet: aidet@5fc20000 {
compatible = "socionext,uniphier-ld20-aidet";
reg = <0x5fc20000 0x200>;
--
2.7.4
--
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
^ permalink raw reply related [flat|nested] 11+ messages in thread
* Re: [PATCH v2 3/3] arm64: dts: uniphier: add efuse node for LD20
[not found] ` <1507266180-11840-4-git-send-email-hayashibara.keiji-uWyLwvC0a2jby3iVrkZq2A@public.gmane.org>
@ 2017-10-09 14:07 ` Masahiro Yamada
0 siblings, 0 replies; 11+ messages in thread
From: Masahiro Yamada @ 2017-10-09 14:07 UTC (permalink / raw)
To: Keiji Hayashibara
Cc: Srinivas Kandagatla, Rob Herring,
devicetree-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel,
Linux Kernel Mailing List, Masami Hiramatsu, Jassi Brar,
Kunihiko Hayashi, Kiyoshi Owada
2017-10-06 14:03 GMT+09:00 Keiji Hayashibara <hayashibara.keiji-uWyLwvC0a2jby3iVrkZq2A@public.gmane.org>:
> Add efuse node for UniPhier LD20 SoC.
> This efuse node is included in soc-glue.
>
> Signed-off-by: Keiji Hayashibara <hayashibara.keiji-uWyLwvC0a2jby3iVrkZq2A@public.gmane.org>
Applied to linux-uniphier. Thanks.
--
Best Regards
Masahiro Yamada
--
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
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH v2 1/3] dt-bindings: nvmem: add description for UniPhier eFuse
[not found] ` <1507266180-11840-2-git-send-email-hayashibara.keiji-uWyLwvC0a2jby3iVrkZq2A@public.gmane.org>
@ 2017-10-13 13:49 ` Rob Herring
2017-10-13 16:04 ` Masahiro Yamada
0 siblings, 1 reply; 11+ messages in thread
From: Rob Herring @ 2017-10-13 13:49 UTC (permalink / raw)
To: Keiji Hayashibara
Cc: srinivas.kandagatla-QSEj5FYQhm4dnm+yROfE0A,
devicetree-u79uwXL29TY76Z2rM5mHXA,
linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r,
linux-kernel-u79uwXL29TY76Z2rM5mHXA,
masami.hiramatsu-QSEj5FYQhm4dnm+yROfE0A,
jaswinder.singh-QSEj5FYQhm4dnm+yROfE0A,
yamada.masahiro-uWyLwvC0a2jby3iVrkZq2A,
hayashi.kunihiko-uWyLwvC0a2jby3iVrkZq2A,
owada.kiyoshi-uWyLwvC0a2jby3iVrkZq2A
On Fri, Oct 06, 2017 at 02:02:58PM +0900, Keiji Hayashibara wrote:
> Add uniphier-efuse dt-bindings documentation.
>
> Signed-off-by: Keiji Hayashibara <hayashibara.keiji-uWyLwvC0a2jby3iVrkZq2A@public.gmane.org>
> ---
> .../devicetree/bindings/nvmem/uniphier-efuse.txt | 49 ++++++++++++++++++++++
> 1 file changed, 49 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/nvmem/uniphier-efuse.txt
>
> diff --git a/Documentation/devicetree/bindings/nvmem/uniphier-efuse.txt b/Documentation/devicetree/bindings/nvmem/uniphier-efuse.txt
> new file mode 100644
> index 0000000..1a394e5
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/nvmem/uniphier-efuse.txt
> @@ -0,0 +1,49 @@
> += UniPhier eFuse device tree bindings =
> +
> +This UniPhier eFuse must be under soc-glue.
> +
> +Required properties:
> +- compatible: should be "socionext,uniphier-efuse"
> +- reg: should contain the register location and length
> +
> += Data cells =
> +Are child nodes of efuse, bindings of which as described in
> +bindings/nvmem/nvmem.txt
> +
> +Example:
> +
> + soc-glue@5f900000 {
> + compatible = "socionext,uniphier-ld20-soc-glue-debug",
> + "simple-mfd";
> + #address-cells = <1>;
> + #size-cells = <1>;
> + ranges = <0x0 0x5f900000 0x2000>;
> +
> + efuse@100 {
> + compatible = "socionext,uniphier-efuse";
> + reg = <0x100 0x28>;
> + };
> +
> + efuse@200 {
> + compatible = "socionext,uniphier-efuse";
> + reg = <0x200 0x68>;
> + #address-cells = <1>;
> + #size-cells = <1>;
> +
> + /* Data cells */
> + usb_mon: usb_mon {
Don't use '_' and needs a unit-address. Build your dtb with W=2 option
and you'll get these warnings.
> + reg = <0x54 0xc>;
Without ranges above, this is address 5f900054. I think you want
5f900254. You need:
ranges = <0x0 0x200 0x68>;
> + };
> + };
> + };
> +
> += Data consumers =
> +Are device nodes which consume nvmem data cells.
> +
> +Example:
> +
> + usb {
> + ...
> + nvmem-cells = <&usb_mon>;
> + nvmem-cell-names = "usb_mon";
> + }
> --
> 2.7.4
>
--
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
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH v2 1/3] dt-bindings: nvmem: add description for UniPhier eFuse
2017-10-13 13:49 ` Rob Herring
@ 2017-10-13 16:04 ` Masahiro Yamada
[not found] ` <CAK7LNARg6G152joHq06RkPab=NoWEkFArvF+Ccc1behdXFokmg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
0 siblings, 1 reply; 11+ messages in thread
From: Masahiro Yamada @ 2017-10-13 16:04 UTC (permalink / raw)
To: Rob Herring
Cc: Keiji Hayashibara, Srinivas Kandagatla,
devicetree-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel,
Linux Kernel Mailing List, Masami Hiramatsu, Jassi Brar,
Kunihiko Hayashi, Kiyoshi Owada
Hi Rob,
2017-10-13 22:49 GMT+09:00 Rob Herring <robh-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>:
> On Fri, Oct 06, 2017 at 02:02:58PM +0900, Keiji Hayashibara wrote:
>> Add uniphier-efuse dt-bindings documentation.
>>
>> Signed-off-by: Keiji Hayashibara <hayashibara.keiji-uWyLwvC0a2jby3iVrkZq2A@public.gmane.org>
>> ---
>> .../devicetree/bindings/nvmem/uniphier-efuse.txt | 49 ++++++++++++++++++++++
>> 1 file changed, 49 insertions(+)
>> create mode 100644 Documentation/devicetree/bindings/nvmem/uniphier-efuse.txt
>>
>> diff --git a/Documentation/devicetree/bindings/nvmem/uniphier-efuse.txt b/Documentation/devicetree/bindings/nvmem/uniphier-efuse.txt
>> new file mode 100644
>> index 0000000..1a394e5
>> --- /dev/null
>> +++ b/Documentation/devicetree/bindings/nvmem/uniphier-efuse.txt
>> @@ -0,0 +1,49 @@
>> += UniPhier eFuse device tree bindings =
>> +
>> +This UniPhier eFuse must be under soc-glue.
>> +
>> +Required properties:
>> +- compatible: should be "socionext,uniphier-efuse"
>> +- reg: should contain the register location and length
>> +
>> += Data cells =
>> +Are child nodes of efuse, bindings of which as described in
>> +bindings/nvmem/nvmem.txt
>> +
>> +Example:
>> +
>> + soc-glue@5f900000 {
>> + compatible = "socionext,uniphier-ld20-soc-glue-debug",
>> + "simple-mfd";
>> + #address-cells = <1>;
>> + #size-cells = <1>;
>> + ranges = <0x0 0x5f900000 0x2000>;
>> +
>> + efuse@100 {
>> + compatible = "socionext,uniphier-efuse";
>> + reg = <0x100 0x28>;
>> + };
>> +
>> + efuse@200 {
>> + compatible = "socionext,uniphier-efuse";
>> + reg = <0x200 0x68>;
>> + #address-cells = <1>;
>> + #size-cells = <1>;
>> +
>> + /* Data cells */
>> + usb_mon: usb_mon {
>
> Don't use '_' and needs a unit-address. Build your dtb with W=2 option
> and you'll get these warnings.
Do you mean "usb_mon: usb-mon@54" ?
DT files in kernel sprinkle tons of warnings even with W=1.
I always eliminate W=1, so I agree with "@54".
I do not care W=2 much.
If you see arch/arm64/boot/dts/socionext/uniphier-ld20.dtsi,
yeah, I generally use '-' for node names, but I see some exceptions.
You admitted -Wnode_name_chars_strict is "subjective"
in commit 8654cb8d0371.
If you are unhappy about it, we can fix,
but I am not sure how picky we should be.
>> + reg = <0x54 0xc>;
>
> Without ranges above, this is address 5f900054. I think you want
> 5f900254. You need:
>
> ranges = <0x0 0x200 0x68>;
I do not get it.
The parent is an efuse, not any kind of bus.
<0x54, 0c> just represents the offset and size
within the efuse device, so this is not mapped in
CPU address view.
The is apparent from of_nvmem_cell_get().
Some efuse devices _may_ be directly accessed
as MMIO from CPU, but it is abstracted under an efuse driver.
I believe missing "ranges" is correct.
>> + };
>> + };
>> + };
>> +
>> += Data consumers =
>> +Are device nodes which consume nvmem data cells.
>> +
>> +Example:
>> +
>> + usb {
>> + ...
>> + nvmem-cells = <&usb_mon>;
>> + nvmem-cell-names = "usb_mon";
>> + }
>> --
>> 2.7.4
>>
> --
> 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
--
Best Regards
Masahiro Yamada
--
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
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH v2 1/3] dt-bindings: nvmem: add description for UniPhier eFuse
[not found] ` <CAK7LNARg6G152joHq06RkPab=NoWEkFArvF+Ccc1behdXFokmg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
@ 2017-10-13 18:42 ` Rob Herring
[not found] ` <CAL_JsqJdbLFHqEU8+1e_hvA3Hd1MLJHETWAkd2pcsXpDKwONog-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
0 siblings, 1 reply; 11+ messages in thread
From: Rob Herring @ 2017-10-13 18:42 UTC (permalink / raw)
To: Masahiro Yamada
Cc: Keiji Hayashibara, Srinivas Kandagatla,
devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
linux-arm-kernel, Linux Kernel Mailing List, Masami Hiramatsu,
Jassi Brar, Kunihiko Hayashi, Kiyoshi Owada
On Fri, Oct 13, 2017 at 11:04 AM, Masahiro Yamada
<yamada.masahiro-uWyLwvC0a2jby3iVrkZq2A@public.gmane.org> wrote:
> Hi Rob,
>
>
> 2017-10-13 22:49 GMT+09:00 Rob Herring <robh-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>:
>> On Fri, Oct 06, 2017 at 02:02:58PM +0900, Keiji Hayashibara wrote:
>>> Add uniphier-efuse dt-bindings documentation.
>>>
>>> Signed-off-by: Keiji Hayashibara <hayashibara.keiji-uWyLwvC0a2jby3iVrkZq2A@public.gmane.org>
>>> ---
>>> .../devicetree/bindings/nvmem/uniphier-efuse.txt | 49 ++++++++++++++++++++++
>>> 1 file changed, 49 insertions(+)
>>> create mode 100644 Documentation/devicetree/bindings/nvmem/uniphier-efuse.txt
>>>
>>> diff --git a/Documentation/devicetree/bindings/nvmem/uniphier-efuse.txt b/Documentation/devicetree/bindings/nvmem/uniphier-efuse.txt
>>> new file mode 100644
>>> index 0000000..1a394e5
>>> --- /dev/null
>>> +++ b/Documentation/devicetree/bindings/nvmem/uniphier-efuse.txt
>>> @@ -0,0 +1,49 @@
>>> += UniPhier eFuse device tree bindings =
>>> +
>>> +This UniPhier eFuse must be under soc-glue.
>>> +
>>> +Required properties:
>>> +- compatible: should be "socionext,uniphier-efuse"
>>> +- reg: should contain the register location and length
>>> +
>>> += Data cells =
>>> +Are child nodes of efuse, bindings of which as described in
>>> +bindings/nvmem/nvmem.txt
>>> +
>>> +Example:
>>> +
>>> + soc-glue@5f900000 {
>>> + compatible = "socionext,uniphier-ld20-soc-glue-debug",
>>> + "simple-mfd";
>>> + #address-cells = <1>;
>>> + #size-cells = <1>;
>>> + ranges = <0x0 0x5f900000 0x2000>;
>>> +
>>> + efuse@100 {
>>> + compatible = "socionext,uniphier-efuse";
>>> + reg = <0x100 0x28>;
>>> + };
>>> +
>>> + efuse@200 {
>>> + compatible = "socionext,uniphier-efuse";
>>> + reg = <0x200 0x68>;
>>> + #address-cells = <1>;
>>> + #size-cells = <1>;
>>> +
>>> + /* Data cells */
>>> + usb_mon: usb_mon {
>>
>> Don't use '_' and needs a unit-address. Build your dtb with W=2 option
>> and you'll get these warnings.
>
>
> Do you mean "usb_mon: usb-mon@54" ?
Yes.
> DT files in kernel sprinkle tons of warnings even with W=1.
>
> I always eliminate W=1, so I agree with "@54".
>
> I do not care W=2 much.
> If you see arch/arm64/boot/dts/socionext/uniphier-ld20.dtsi,
> yeah, I generally use '-' for node names, but I see some exceptions.
>
> You admitted -Wnode_name_chars_strict is "subjective"
> in commit 8654cb8d0371.
Yes, meaning fixing existing cases is questionable and I'd put doing
so at a lower priority. I didn't mean it is up to each person to
decide whether they like to use '_' or not.
> If you are unhappy about it, we can fix,
> but I am not sure how picky we should be.
Let me put it clearly: Don't add new warnings with W=2.
>
>
>>> + reg = <0x54 0xc>;
>>
>> Without ranges above, this is address 5f900054. I think you want
>> 5f900254. You need:
>>
>> ranges = <0x0 0x200 0x68>;
>
>
> I do not get it.
>
> The parent is an efuse, not any kind of bus.
>
> <0x54, 0c> just represents the offset and size
> within the efuse device, so this is not mapped in
> CPU address view.
> The is apparent from of_nvmem_cell_get().
>
> Some efuse devices _may_ be directly accessed
> as MMIO from CPU, but it is abstracted under an efuse driver.
>
> I believe missing "ranges" is correct.
Okay, you're right. If those are not memory mapped then it is fine.
Rob
--
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
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH v2 1/3] dt-bindings: nvmem: add description for UniPhier eFuse
[not found] ` <CAL_JsqJdbLFHqEU8+1e_hvA3Hd1MLJHETWAkd2pcsXpDKwONog-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
@ 2017-10-15 8:04 ` Masahiro Yamada
2017-10-16 9:12 ` Srinivas Kandagatla
0 siblings, 1 reply; 11+ messages in thread
From: Masahiro Yamada @ 2017-10-15 8:04 UTC (permalink / raw)
To: Rob Herring
Cc: Keiji Hayashibara, Srinivas Kandagatla,
devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
linux-arm-kernel, Linux Kernel Mailing List, Masami Hiramatsu,
Jassi Brar, Kunihiko Hayashi, Kiyoshi Owada
2017-10-14 3:42 GMT+09:00 Rob Herring <robh-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>:
> On Fri, Oct 13, 2017 at 11:04 AM, Masahiro Yamada
> <yamada.masahiro-uWyLwvC0a2jby3iVrkZq2A@public.gmane.org> wrote:
>> Hi Rob,
>>
>>
>> 2017-10-13 22:49 GMT+09:00 Rob Herring <robh-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>:
>>> On Fri, Oct 06, 2017 at 02:02:58PM +0900, Keiji Hayashibara wrote:
>>>> Add uniphier-efuse dt-bindings documentation.
>>>>
>>>> Signed-off-by: Keiji Hayashibara <hayashibara.keiji-uWyLwvC0a2jby3iVrkZq2A@public.gmane.org>
>>>> ---
>>>> .../devicetree/bindings/nvmem/uniphier-efuse.txt | 49 ++++++++++++++++++++++
>>>> 1 file changed, 49 insertions(+)
>>>> create mode 100644 Documentation/devicetree/bindings/nvmem/uniphier-efuse.txt
>>>>
>>>> diff --git a/Documentation/devicetree/bindings/nvmem/uniphier-efuse.txt b/Documentation/devicetree/bindings/nvmem/uniphier-efuse.txt
>>>> new file mode 100644
>>>> index 0000000..1a394e5
>>>> --- /dev/null
>>>> +++ b/Documentation/devicetree/bindings/nvmem/uniphier-efuse.txt
>>>> @@ -0,0 +1,49 @@
>>>> += UniPhier eFuse device tree bindings =
>>>> +
>>>> +This UniPhier eFuse must be under soc-glue.
>>>> +
>>>> +Required properties:
>>>> +- compatible: should be "socionext,uniphier-efuse"
>>>> +- reg: should contain the register location and length
>>>> +
>>>> += Data cells =
>>>> +Are child nodes of efuse, bindings of which as described in
>>>> +bindings/nvmem/nvmem.txt
>>>> +
>>>> +Example:
>>>> +
>>>> + soc-glue@5f900000 {
>>>> + compatible = "socionext,uniphier-ld20-soc-glue-debug",
>>>> + "simple-mfd";
>>>> + #address-cells = <1>;
>>>> + #size-cells = <1>;
>>>> + ranges = <0x0 0x5f900000 0x2000>;
>>>> +
>>>> + efuse@100 {
>>>> + compatible = "socionext,uniphier-efuse";
>>>> + reg = <0x100 0x28>;
>>>> + };
>>>> +
>>>> + efuse@200 {
>>>> + compatible = "socionext,uniphier-efuse";
>>>> + reg = <0x200 0x68>;
>>>> + #address-cells = <1>;
>>>> + #size-cells = <1>;
>>>> +
>>>> + /* Data cells */
>>>> + usb_mon: usb_mon {
>>>
>>> Don't use '_' and needs a unit-address. Build your dtb with W=2 option
>>> and you'll get these warnings.
>>
>>
>> Do you mean "usb_mon: usb-mon@54" ?
>
> Yes.
>
>> DT files in kernel sprinkle tons of warnings even with W=1.
>>
>> I always eliminate W=1, so I agree with "@54".
>>
>> I do not care W=2 much.
>> If you see arch/arm64/boot/dts/socionext/uniphier-ld20.dtsi,
>> yeah, I generally use '-' for node names, but I see some exceptions.
>>
>> You admitted -Wnode_name_chars_strict is "subjective"
>> in commit 8654cb8d0371.
>
> Yes, meaning fixing existing cases is questionable and I'd put doing
> so at a lower priority. I didn't mean it is up to each person to
> decide whether they like to use '_' or not.
>
>> If you are unhappy about it, we can fix,
>> but I am not sure how picky we should be.
>
> Let me put it clearly: Don't add new warnings with W=2.
OK.
usb_mon: usb_mon {
should be fixed.
Srinivas forwarded this to Greg,
but I guess Greg has not applied this yet.
The author can do re-spin,
or a follow-up patch will do if it is too late.
--
Best Regards
Masahiro Yamada
--
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
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH v2 1/3] dt-bindings: nvmem: add description for UniPhier eFuse
2017-10-15 8:04 ` Masahiro Yamada
@ 2017-10-16 9:12 ` Srinivas Kandagatla
[not found] ` <370eba21-1da8-9994-65c1-b51f564343fb-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
0 siblings, 1 reply; 11+ messages in thread
From: Srinivas Kandagatla @ 2017-10-16 9:12 UTC (permalink / raw)
To: Masahiro Yamada, Rob Herring
Cc: Keiji Hayashibara, devicetree@vger.kernel.org, linux-arm-kernel,
Linux Kernel Mailing List, Masami Hiramatsu, Jassi Brar,
Kunihiko Hayashi, Kiyoshi Owada
On 15/10/17 09:04, Masahiro Yamada wrote:
> OK.
>
> usb_mon: usb_mon {
>
> should be fixed.
>
> Srinivas forwarded this to Greg,
> but I guess Greg has not applied this yet.
>
> The author can do re-spin,
> or a follow-up patch will do if it is too late.
Please send a patch to fix!
Thanks,
srini
^ permalink raw reply [flat|nested] 11+ messages in thread
* RE: [PATCH v2 1/3] dt-bindings: nvmem: add description for UniPhier eFuse
[not found] ` <370eba21-1da8-9994-65c1-b51f564343fb-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
@ 2017-10-17 1:10 ` Keiji Hayashibara
0 siblings, 0 replies; 11+ messages in thread
From: Keiji Hayashibara @ 2017-10-17 1:10 UTC (permalink / raw)
To: 'Srinivas Kandagatla',
Yamada, Masahiro/山田 真弘, Rob Herring
Cc: devicetree-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel,
Linux Kernel Mailing List, Masami Hiramatsu, Jassi Brar,
Hayashi, Kunihiko/林 邦彦,
Owada, Kiyoshi/大和田 清志
Hello Srinivas,
OK. I will send fixed patch as soon as possible.
Thank you.
Best Regards,
Keiji Hayashibara
> -----Original Message-----
> From: Srinivas Kandagatla [mailto:srinivas.kandagatla-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org]
> Sent: Monday, October 16, 2017 6:12 PM
>
> On 15/10/17 09:04, Masahiro Yamada wrote:
> > OK.
> >
> > usb_mon: usb_mon {
> >
> > should be fixed.
> >
> > Srinivas forwarded this to Greg,
> > but I guess Greg has not applied this yet.
> >
> > The author can do re-spin,
> > or a follow-up patch will do if it is too late.
>
> Please send a patch to fix!
>
> Thanks,
> srini
--
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
^ permalink raw reply [flat|nested] 11+ messages in thread
end of thread, other threads:[~2017-10-17 1:10 UTC | newest]
Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-10-06 5:02 [PATCH v2 0/3] add UniPhier efuse support Keiji Hayashibara
2017-10-06 5:02 ` [PATCH v2 1/3] dt-bindings: nvmem: add description for UniPhier eFuse Keiji Hayashibara
[not found] ` <1507266180-11840-2-git-send-email-hayashibara.keiji-uWyLwvC0a2jby3iVrkZq2A@public.gmane.org>
2017-10-13 13:49 ` Rob Herring
2017-10-13 16:04 ` Masahiro Yamada
[not found] ` <CAK7LNARg6G152joHq06RkPab=NoWEkFArvF+Ccc1behdXFokmg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2017-10-13 18:42 ` Rob Herring
[not found] ` <CAL_JsqJdbLFHqEU8+1e_hvA3Hd1MLJHETWAkd2pcsXpDKwONog-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2017-10-15 8:04 ` Masahiro Yamada
2017-10-16 9:12 ` Srinivas Kandagatla
[not found] ` <370eba21-1da8-9994-65c1-b51f564343fb-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
2017-10-17 1:10 ` Keiji Hayashibara
2017-10-06 5:02 ` [PATCH v2 2/3] nvmem: uniphier: add UniPhier eFuse driver Keiji Hayashibara
[not found] ` <1507266180-11840-1-git-send-email-hayashibara.keiji-uWyLwvC0a2jby3iVrkZq2A@public.gmane.org>
2017-10-06 5:03 ` [PATCH v2 3/3] arm64: dts: uniphier: add efuse node for LD20 Keiji Hayashibara
[not found] ` <1507266180-11840-4-git-send-email-hayashibara.keiji-uWyLwvC0a2jby3iVrkZq2A@public.gmane.org>
2017-10-09 14:07 ` Masahiro Yamada
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).