[PATCH v3 0/2] bus: imx-weim: optionally enable continuous burst clock

STALE1694d

Revision v3 of 2 in this series.

6 messages, 3 authors, 2021-12-14 · open the first message on its own page

[PATCH v3 0/2] bus: imx-weim: optionally enable continuous burst clock

From: Ivan Bornyakov <hidden>
Date: 2021-12-02 06:12:15

Introduce option to enable continuous burst clock, if burst clock itself
is enabled.

Changelog:
  v1 -> v2:
    * documentation about this option added to
      Documentation/devicetree/bindings/bus/imx-weim.txt
  v2 -> v3:
    * added missing Signed-off-by line


Ivan Bornyakov (2):
  bus: imx-weim: optionally enable continuous burst clock
  dt-bindings: bus: imx-weim: add words about continuous bclk

 .../devicetree/bindings/bus/imx-weim.txt       |  5 +++++
 drivers/bus/imx-weim.c                         | 18 ++++++++++++++++--
 2 files changed, 21 insertions(+), 2 deletions(-)

-- 
2.32.0



_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

[PATCH v3 2/2] dt-bindings: bus: imx-weim: add words about continuous bclk

From: Ivan Bornyakov <hidden>
Date: 2021-12-02 06:12:21

Document continuous Burst Clock option. With this option Burst Clock, if
enabled, will output continuous clock, otherwise Burst Clock will output
clock only when necessary.

Signed-off-by: Ivan Bornyakov <redacted>
---
 Documentation/devicetree/bindings/bus/imx-weim.txt | 5 +++++
 1 file changed, 5 insertions(+)
diff --git a/Documentation/devicetree/bindings/bus/imx-weim.txt b/Documentation/devicetree/bindings/bus/imx-weim.txt
index 1b1d1c5c21ea..e7f502070d77 100644
--- a/Documentation/devicetree/bindings/bus/imx-weim.txt
+++ b/Documentation/devicetree/bindings/bus/imx-weim.txt
@@ -48,6 +48,11 @@ Optional properties:
 			devices, the presence of this property indicates that
 			the weim bus should operate in Burst Clock Mode.
 
+ - fsl,continuous-burst-clk	Make Burst Clock to output continuous clock.
+			Without this option Burst Clock will output clock
+			only when necessary. This takes effect only if
+			"fsl,burst-clk-enable" is set.
+
 Timing property for child nodes. It is mandatory, not optional.
 
  - fsl,weim-cs-timing:	The timing array, contains timing values for the
-- 
2.32.0



_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

[PATCH v3 1/2] bus: imx-weim: optionally enable continuous burst clock

From: Ivan Bornyakov <hidden>
Date: 2021-12-02 06:12:31

To enable continuous burst clock, add "fsl,continuous-burst-clk" along
with "fsl,burst-clk-enable" property to the weim bus's devicetree node.

Example:
weim: weim@21b8000 {
	compatible = "fsl,imx6ul-weim", "fsl,imx6q-weim";
	reg = <0x021b8000 0x4000>;
	clocks = <&clks 143>;
	#address-cells = <2>;
	#size-cells = <1>;
	ranges = <0 0 0x50000000 0x08000000>;
	fsl,weim-cs-gpr = <&gpr>;
	fsl,burst-clk-enable;
	fsl,continuous-burst-clk;

	client-device@0 {
		...
	};
};

Signed-off-by: Ivan Bornyakov <redacted>
---
 drivers/bus/imx-weim.c | 18 ++++++++++++++++--
 1 file changed, 16 insertions(+), 2 deletions(-)
diff --git a/drivers/bus/imx-weim.c b/drivers/bus/imx-weim.c
index 28bb65a5613f..bccb275b65ba 100644
--- a/drivers/bus/imx-weim.c
+++ b/drivers/bus/imx-weim.c
@@ -21,6 +21,7 @@ struct imx_weim_devtype {
 	unsigned int	cs_stride;
 	unsigned int	wcr_offset;
 	unsigned int	wcr_bcm;
+	unsigned int	wcr_cont_bclk;
 };
 
 static const struct imx_weim_devtype imx1_weim_devtype = {
@@ -41,6 +42,7 @@ static const struct imx_weim_devtype imx50_weim_devtype = {
 	.cs_stride	= 0x18,
 	.wcr_offset	= 0x90,
 	.wcr_bcm	= BIT(0),
+	.wcr_cont_bclk	= BIT(3),
 };
 
 static const struct imx_weim_devtype imx51_weim_devtype = {
@@ -206,8 +208,20 @@ static int weim_parse_dt(struct platform_device *pdev, void __iomem *base)
 	if (of_property_read_bool(pdev->dev.of_node, "fsl,burst-clk-enable")) {
 		if (devtype->wcr_bcm) {
 			reg = readl(base + devtype->wcr_offset);
-			writel(reg | devtype->wcr_bcm,
-				base + devtype->wcr_offset);
+			reg |= devtype->wcr_bcm;
+
+			if (of_property_read_bool(pdev->dev.of_node,
+						"fsl,continuous-burst-clk")) {
+				if (devtype->wcr_cont_bclk) {
+					reg |= devtype->wcr_cont_bclk;
+				} else {
+					dev_err(&pdev->dev,
+						"continuous burst clk not supported.\n");
+					return -EINVAL;
+				}
+			}
+
+			writel(reg, base + devtype->wcr_offset);
 		} else {
 			dev_err(&pdev->dev, "burst clk mode not supported.\n");
 			return -EINVAL;
-- 
2.32.0



_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

Re: [PATCH v3 0/2] bus: imx-weim: optionally enable continuous burst clock

From: Ivan Bornyakov <hidden>
Date: 2021-12-09 06:11:15

On Thu, Dec 02, 2021 at 08:57:22AM +0300, Ivan Bornyakov wrote:
Introduce option to enable continuous burst clock, if burst clock itself
is enabled.

Changelog:
  v1 -> v2:
    * documentation about this option added to
      Documentation/devicetree/bindings/bus/imx-weim.txt
  v2 -> v3:
    * added missing Signed-off-by line


Ivan Bornyakov (2):
  bus: imx-weim: optionally enable continuous burst clock
  dt-bindings: bus: imx-weim: add words about continuous bclk

 .../devicetree/bindings/bus/imx-weim.txt       |  5 +++++
 drivers/bus/imx-weim.c                         | 18 ++++++++++++++++--
 2 files changed, 21 insertions(+), 2 deletions(-)

-- 
2.32.0
Kindly ping.


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

Re: [PATCH v3 2/2] dt-bindings: bus: imx-weim: add words about continuous bclk

From: Rob Herring <robh@kernel.org>
Date: 2021-12-10 22:13:56

On Thu, 02 Dec 2021 08:57:24 +0300, Ivan Bornyakov wrote:
Document continuous Burst Clock option. With this option Burst Clock, if
enabled, will output continuous clock, otherwise Burst Clock will output
clock only when necessary.

Signed-off-by: Ivan Bornyakov <redacted>
---
 Documentation/devicetree/bindings/bus/imx-weim.txt | 5 +++++
 1 file changed, 5 insertions(+)
Reviewed-by: Rob Herring <robh@kernel.org>

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

Re: [PATCH v3 0/2] bus: imx-weim: optionally enable continuous burst clock

From: Shawn Guo <shawnguo@kernel.org>
Date: 2021-12-14 02:36:07

On Thu, Dec 02, 2021 at 08:57:22AM +0300, Ivan Bornyakov wrote:
Introduce option to enable continuous burst clock, if burst clock itself
is enabled.

Changelog:
  v1 -> v2:
    * documentation about this option added to
      Documentation/devicetree/bindings/bus/imx-weim.txt
  v2 -> v3:
    * added missing Signed-off-by line


Ivan Bornyakov (2):
  bus: imx-weim: optionally enable continuous burst clock
  dt-bindings: bus: imx-weim: add words about continuous bclk
Applied both, thanks!

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help