From: Judith Mendez <jm@ti.com>
To: Chandrasekar Ramakrishnan <rcsekar@samsung.com>,
Wolfgang Grandegger <wg@grandegger.com>,
Marc Kleine-Budde <mkl@pengutronix.de>,
Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>
Cc: "David S . Miller" <davem@davemloft.net>,
Eric Dumazet <edumazet@google.com>,
Jakub Kicinski <kuba@kernel.org>, Paolo Abeni <pabeni@redhat.com>,
<linux-can@vger.kernel.org>, <netdev@vger.kernel.org>,
<linux-kernel@vger.kernel.org>, Schuyler Patton <spatton@ti.com>,
Nishanth Menon <nm@ti.com>, Vignesh Raghavendra <vigneshr@ti.com>,
Tero Kristo <kristo@kernel.org>, Rob Herring <robh+dt@kernel.org>,
<linux-arm-kernel@lists.infradead.org>,
<devicetree@vger.kernel.org>,
Oliver Hartkopp <socketcan@hartkopp.net>,
Simon Horman <simon.horman@corigine.com>
Subject: [PATCH v4 1/4] dt-bindings: net: can: Add poll-interval for MCAN
Date: Mon, 1 May 2023 17:46:21 -0500 [thread overview]
Message-ID: <20230501224624.13866-2-jm@ti.com> (raw)
In-Reply-To: <20230501224624.13866-1-jm@ti.com>
On AM62x SoC, MCANs on MCU domain do not have hardware interrupt
routed to A53 Linux, instead they will use software interrupt by
hrtimer. To enable timer method, interrupts should be optional so
remove interrupts property from required section and introduce
poll-interval property.
Signed-off-by: Judith Mendez <jm@ti.com>
---
Changelog:
v3:
1. Move binding patch to first in series
2. Update description for poll-interval
3. Add oneOf to specify using interrupts/interrupt-names or poll-interval
4. Fix example property: add comment below 'example'
v2:
1. Add poll-interval property to enable timer polling method
2. Add example using poll-interval property
.../bindings/net/can/bosch,m_can.yaml | 36 +++++++++++++++++--
1 file changed, 34 insertions(+), 2 deletions(-)
diff --git a/Documentation/devicetree/bindings/net/can/bosch,m_can.yaml b/Documentation/devicetree/bindings/net/can/bosch,m_can.yaml
index 67879aab623b..c024ee49962c 100644
--- a/Documentation/devicetree/bindings/net/can/bosch,m_can.yaml
+++ b/Documentation/devicetree/bindings/net/can/bosch,m_can.yaml
@@ -14,6 +14,13 @@ maintainers:
allOf:
- $ref: can-controller.yaml#
+oneOf:
+ - required:
+ - interrupts
+ - interrupt-names
+ - required:
+ - poll-interval
+
properties:
compatible:
const: bosch,m_can
@@ -40,6 +47,14 @@ properties:
- const: int1
minItems: 1
+ poll-interval:
+ $ref: /schemas/types.yaml#/definitions/flag
+ description: Enable hrtimer polling method for an M_CAN device.
+ If this property is defined in MCAN node, it tells the driver to
+ enable polling method for an MCAN device. If for an MCAN device,
+ hardware interrupt is found and hrtimer polling method is enabled,
+ the driver will use hardware interrupt method.
+
clocks:
items:
- description: peripheral clock
@@ -122,8 +137,6 @@ required:
- compatible
- reg
- reg-names
- - interrupts
- - interrupt-names
- clocks
- clock-names
- bosch,mram-cfg
@@ -132,6 +145,7 @@ additionalProperties: false
examples:
- |
+ // Example with interrupts
#include <dt-bindings/clock/imx6sx-clock.h>
can@20e8000 {
compatible = "bosch,m_can";
@@ -149,4 +163,22 @@ examples:
};
};
+ - |
+ // Example with timer polling
+ #include <dt-bindings/clock/imx6sx-clock.h>
+ can@20e8000 {
+ compatible = "bosch,m_can";
+ reg = <0x020e8000 0x4000>, <0x02298000 0x4000>;
+ reg-names = "m_can", "message_ram";
+ poll-interval;
+ clocks = <&clks IMX6SX_CLK_CANFD>,
+ <&clks IMX6SX_CLK_CANFD>;
+ clock-names = "hclk", "cclk";
+ bosch,mram-cfg = <0x0 0 0 32 0 0 0 1>;
+
+ can-transceiver {
+ max-bitrate = <5000000>;
+ };
+ };
+
...
--
2.17.1
next prev parent reply other threads:[~2023-05-01 22:46 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-05-01 22:46 [PATCH v4 0/4] Enable multiple MCAN on AM62x Judith Mendez
2023-05-01 22:46 ` Judith Mendez [this message]
2023-05-05 21:29 ` [PATCH v4 1/4] dt-bindings: net: can: Add poll-interval for MCAN Rob Herring
2023-05-09 12:27 ` Marc Kleine-Budde
2023-05-09 17:02 ` Judith Mendez
2023-05-01 22:46 ` [PATCH v4 2/4] can: m_can: Add hrtimer to generate software interrupt Judith Mendez
2023-05-02 6:37 ` Marc Kleine-Budde
2023-05-02 18:09 ` Judith Mendez
2023-05-09 22:18 ` Judith Mendez
2023-05-10 7:21 ` Marc Kleine-Budde
2023-05-10 14:23 ` Judith Mendez
2023-05-01 22:46 ` [PATCH v4 3/4] DO_NOT_MERGE arm64: dts: ti: Add AM62x MCAN MAIN domain transceiver overlay Judith Mendez
2023-05-02 0:18 ` Nishanth Menon
2023-05-01 22:46 ` [PATCH v4 4/4] DO_NOT_MERGE arm64: dts: ti: Enable MCU MCANs for AM62x Judith Mendez
2023-05-02 6:52 ` [PATCH v4 0/4] Enable multiple MCAN on AM62x Krzysztof Kozlowski
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20230501224624.13866-2-jm@ti.com \
--to=jm@ti.com \
--cc=davem@davemloft.net \
--cc=devicetree@vger.kernel.org \
--cc=edumazet@google.com \
--cc=kristo@kernel.org \
--cc=krzysztof.kozlowski+dt@linaro.org \
--cc=kuba@kernel.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-can@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mkl@pengutronix.de \
--cc=netdev@vger.kernel.org \
--cc=nm@ti.com \
--cc=pabeni@redhat.com \
--cc=rcsekar@samsung.com \
--cc=robh+dt@kernel.org \
--cc=simon.horman@corigine.com \
--cc=socketcan@hartkopp.net \
--cc=spatton@ti.com \
--cc=vigneshr@ti.com \
--cc=wg@grandegger.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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).