Message ID | 20230726150225.483464-6-herve.codina@bootlin.com (mailing list archive) |
---|---|
State | Superseded |
Delegated to: | Netdev Maintainers |
Headers | show |
Series | Add support for QMC HDLC, framer infrastruture and PEF2256 framer | expand |
On Wed, Jul 26, 2023 at 05:02:01PM +0200, Herve Codina wrote: > The QMC (QUICC mutichannel controller) is a controller present in some > PowerQUICC SoC such as MPC885. > The QMC HDLC uses the QMC controller to transfer HDLC data. > > Signed-off-by: Herve Codina <herve.codina@bootlin.com> > --- > .../devicetree/bindings/net/fsl,qmc-hdlc.yaml | 41 +++++++++++++++++++ > 1 file changed, 41 insertions(+) > create mode 100644 Documentation/devicetree/bindings/net/fsl,qmc-hdlc.yaml > > diff --git a/Documentation/devicetree/bindings/net/fsl,qmc-hdlc.yaml b/Documentation/devicetree/bindings/net/fsl,qmc-hdlc.yaml > new file mode 100644 > index 000000000000..8bb6f34602d9 > --- /dev/null > +++ b/Documentation/devicetree/bindings/net/fsl,qmc-hdlc.yaml > @@ -0,0 +1,41 @@ > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/net/fsl,qmc-hdlc.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: QMC HDLC "QMC HDLC" seems excessively terse. > + > +maintainers: > + - Herve Codina <herve.codina@bootlin.com> > + > +description: | > + The QMC HDLC uses a QMC (QUICC Multichannel Controller) channel to transfer > + HDLC data. > + > +properties: > + compatible: > + const: fsl,qmc-hdlc > + > + fsl,qmc-chan: Perhaps I am just showing my lack of knowledge in this area, but what is fsl specific about wanting a reference to the channel of a "QMC"? Is this something that hardware from other manufacturers would not also want to do? > + $ref: /schemas/types.yaml#/definitions/phandle-array > + items: > + - items: > + - description: phandle to QMC node > + - description: Channel number > + description: > + Should be a phandle/number pair. The phandle to QMC node and the QMC > + channel to use. > + > +required: > + - compatible > + - fsl,qmc-chan > + > +additionalProperties: false > + > +examples: > + - | > + hdlc { > + compatible = "fsl,qmc-hdlc"; > + fsl,qmc-chan = <&qmc 16>; > + }; > -- > 2.41.0 >
Hi Conor, On Thu, 27 Jul 2023 09:19:59 +0100 Conor Dooley <conor@kernel.org> wrote: > On Wed, Jul 26, 2023 at 05:02:01PM +0200, Herve Codina wrote: > > The QMC (QUICC mutichannel controller) is a controller present in some > > PowerQUICC SoC such as MPC885. > > The QMC HDLC uses the QMC controller to transfer HDLC data. > > > > Signed-off-by: Herve Codina <herve.codina@bootlin.com> > > --- > > .../devicetree/bindings/net/fsl,qmc-hdlc.yaml | 41 +++++++++++++++++++ > > 1 file changed, 41 insertions(+) > > create mode 100644 Documentation/devicetree/bindings/net/fsl,qmc-hdlc.yaml > > > > diff --git a/Documentation/devicetree/bindings/net/fsl,qmc-hdlc.yaml b/Documentation/devicetree/bindings/net/fsl,qmc-hdlc.yaml > > new file mode 100644 > > index 000000000000..8bb6f34602d9 > > --- /dev/null > > +++ b/Documentation/devicetree/bindings/net/fsl,qmc-hdlc.yaml > > @@ -0,0 +1,41 @@ > > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > > +%YAML 1.2 > > +--- > > +$id: http://devicetree.org/schemas/net/fsl,qmc-hdlc.yaml# > > +$schema: http://devicetree.org/meta-schemas/core.yaml# > > + > > +title: QMC HDLC > > "QMC HDLC" seems excessively terse. The name was based on the fsl,qmc-audio.yaml already present upstream. https://elixir.bootlin.com/linux/v6.4/source/Documentation/devicetree/bindings/sound/fsl,qmc-audio.yaml If needed, I can change to: title: QMC (QUICC Multichannel Controller) HDLC Let me known if it is better to you. > > > + > > +maintainers: > > + - Herve Codina <herve.codina@bootlin.com> > > + > > +description: | > > + The QMC HDLC uses a QMC (QUICC Multichannel Controller) channel to transfer > > + HDLC data. > > + > > +properties: > > + compatible: > > + const: fsl,qmc-hdlc > > + > > + fsl,qmc-chan: > > Perhaps I am just showing my lack of knowledge in this area, but what is > fsl specific about wanting a reference to the channel of a "QMC"? > Is this something that hardware from other manufacturers would not also > want to do? The QMC and the QMC channel are something specific to the SoC. This IP is only available on some Freescale/NXP SoCs. When I upstreamed the 'fsl,qmc-audio.yaml', I first used a generic name for this property and Kristoff asked to change to a vendor prefixed name. https://lore.kernel.org/linux-kernel/1dfade07-f8c4-2e16-00dc-c7d183708259@linaro.org/ Based on this, as the property 'fsl,qmc-chan' has the exact same meaning in fsl,qmc-audio.yaml and fsl,qmc-hdlc.yaml, I use the same name. Best regards, Hervé > > > + $ref: /schemas/types.yaml#/definitions/phandle-array > > + items: > > + - items: > > + - description: phandle to QMC node > > + - description: Channel number > > + description: > > + Should be a phandle/number pair. The phandle to QMC node and the QMC > > + channel to use. > > + > > +required: > > + - compatible > > + - fsl,qmc-chan > > + > > +additionalProperties: false > > + > > +examples: > > + - | > > + hdlc { > > + compatible = "fsl,qmc-hdlc"; > > + fsl,qmc-chan = <&qmc 16>; > > + }; > > -- > > 2.41.0 > >
On Thu, Jul 27, 2023 at 11:09:48AM +0200, Herve Codina wrote: > On Thu, 27 Jul 2023 09:19:59 +0100 > Conor Dooley <conor@kernel.org> wrote: > > On Wed, Jul 26, 2023 at 05:02:01PM +0200, Herve Codina wrote: > If needed, I can change to: > title: QMC (QUICC Multichannel Controller) HDLC > Let me known if it is better to you. If it were me writing the binding, I'd probably use something like "Freescale/NXP QUICC Multichannel Controller (QMC) HDLC", but it is not a big deal, I just had a "wtf is this" moment :) > > > + fsl,qmc-chan: > > > > Perhaps I am just showing my lack of knowledge in this area, but what is > > fsl specific about wanting a reference to the channel of a "QMC"? > > Is this something that hardware from other manufacturers would not also > > want to do? > > The QMC and the QMC channel are something specific to the SoC. This IP is only > available on some Freescale/NXP SoCs. > > When I upstreamed the 'fsl,qmc-audio.yaml', I first used a generic name for this > property and Kristoff asked to change to a vendor prefixed name. > https://lore.kernel.org/linux-kernel/1dfade07-f8c4-2e16-00dc-c7d183708259@linaro.org/ > > Based on this, as the property 'fsl,qmc-chan' has the exact same meaning in > fsl,qmc-audio.yaml and fsl,qmc-hdlc.yaml, I use the same name. Okay, thanks for explaining!
Hi Conor, On Thu, 27 Jul 2023 10:53:15 +0100 Conor Dooley <conor@kernel.org> wrote: > On Thu, Jul 27, 2023 at 11:09:48AM +0200, Herve Codina wrote: > > On Thu, 27 Jul 2023 09:19:59 +0100 > > Conor Dooley <conor@kernel.org> wrote: > > > On Wed, Jul 26, 2023 at 05:02:01PM +0200, Herve Codina wrote: > > > If needed, I can change to: > > title: QMC (QUICC Multichannel Controller) HDLC > > Let me known if it is better to you. > > If it were me writing the binding, I'd probably use something like > "Freescale/NXP QUICC Multichannel Controller (QMC) HDLC", but it is not > a big deal, I just had a "wtf is this" moment :) I will change to "Freescale/NXP QUICC Multichannel Controller (QMC) HDLC" in the next iteration. > > > > > > > + fsl,qmc-chan: > > > > > > Perhaps I am just showing my lack of knowledge in this area, but what is > > > fsl specific about wanting a reference to the channel of a "QMC"? > > > Is this something that hardware from other manufacturers would not also > > > want to do? > > > > The QMC and the QMC channel are something specific to the SoC. This IP is only > > available on some Freescale/NXP SoCs. > > > > When I upstreamed the 'fsl,qmc-audio.yaml', I first used a generic name for this > > property and Kristoff asked to change to a vendor prefixed name. > > https://lore.kernel.org/linux-kernel/1dfade07-f8c4-2e16-00dc-c7d183708259@linaro.org/ > > > > Based on this, as the property 'fsl,qmc-chan' has the exact same meaning in > > fsl,qmc-audio.yaml and fsl,qmc-hdlc.yaml, I use the same name. > > Okay, thanks for explaining! You're welcome. Regards, Hervé
diff --git a/Documentation/devicetree/bindings/net/fsl,qmc-hdlc.yaml b/Documentation/devicetree/bindings/net/fsl,qmc-hdlc.yaml new file mode 100644 index 000000000000..8bb6f34602d9 --- /dev/null +++ b/Documentation/devicetree/bindings/net/fsl,qmc-hdlc.yaml @@ -0,0 +1,41 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/net/fsl,qmc-hdlc.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: QMC HDLC + +maintainers: + - Herve Codina <herve.codina@bootlin.com> + +description: | + The QMC HDLC uses a QMC (QUICC Multichannel Controller) channel to transfer + HDLC data. + +properties: + compatible: + const: fsl,qmc-hdlc + + fsl,qmc-chan: + $ref: /schemas/types.yaml#/definitions/phandle-array + items: + - items: + - description: phandle to QMC node + - description: Channel number + description: + Should be a phandle/number pair. The phandle to QMC node and the QMC + channel to use. + +required: + - compatible + - fsl,qmc-chan + +additionalProperties: false + +examples: + - | + hdlc { + compatible = "fsl,qmc-hdlc"; + fsl,qmc-chan = <&qmc 16>; + };
The QMC (QUICC mutichannel controller) is a controller present in some PowerQUICC SoC such as MPC885. The QMC HDLC uses the QMC controller to transfer HDLC data. Signed-off-by: Herve Codina <herve.codina@bootlin.com> --- .../devicetree/bindings/net/fsl,qmc-hdlc.yaml | 41 +++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 Documentation/devicetree/bindings/net/fsl,qmc-hdlc.yaml