On 24.04.2023 14:54:00, Judith Mendez wrote: > 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@xxxxxx> The bindings update should go in before the patch. > --- > Changelog: > 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 | 26 ++++++++++++++++--- > 1 file changed, 23 insertions(+), 3 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..1c64c7a0c3df 100644 > --- a/Documentation/devicetree/bindings/net/can/bosch,m_can.yaml > +++ b/Documentation/devicetree/bindings/net/can/bosch,m_can.yaml > @@ -40,6 +40,10 @@ properties: > - const: int1 > minItems: 1 > > + poll-interval: > + $ref: /schemas/types.yaml#/definitions/flag > + description: Poll interval time in milliseconds. ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ That's not what the code does. > + > clocks: > items: > - description: peripheral clock > @@ -122,15 +126,13 @@ required: > - compatible > - reg > - reg-names > - - interrupts > - - interrupt-names > - clocks > - clock-names > - bosch,mram-cfg Is it possible to specify that you either need "interrupts" and "interrupt-names" or "poll-interval"? > > additionalProperties: false > > -examples: > +example with interrupts: > - | > #include <dt-bindings/clock/imx6sx-clock.h> > can@20e8000 { > @@ -149,4 +151,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 > > Marc -- Pengutronix e.K. | Marc Kleine-Budde | Embedded Linux | https://www.pengutronix.de | Vertretung Nürnberg | Phone: +49-5121-206917-129 | Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-9 |
Attachment:
signature.asc
Description: PGP signature