Message ID | 20231023154649.45931-5-Parthiban.Veerasooran@microchip.com (mailing list archive) |
---|---|
State | Changes Requested |
Delegated to: | Netdev Maintainers |
Headers | show |
Series | Add support for OPEN Alliance 10BASE-T1x MACPHY Serial Interface | expand |
On Mon, 23 Oct 2023 21:16:44 +0530, Parthiban Veerasooran wrote: > Add DT bindings OPEN Alliance 10BASE-T1x MACPHY Serial Interface > parameters. These are generic properties that can apply to any 10BASE-T1x > MAC-PHY which uses OPEN Alliance TC6 specification. > > Signed-off-by: Parthiban Veerasooran <Parthiban.Veerasooran@microchip.com> > --- > .../devicetree/bindings/net/oa-tc6.yaml | 72 +++++++++++++++++++ > MAINTAINERS | 1 + > 2 files changed, 73 insertions(+) > create mode 100644 Documentation/devicetree/bindings/net/oa-tc6.yaml > My bot found errors running 'make DT_CHECKER_FLAGS=-m dt_binding_check' on your patch (DT_CHECKER_FLAGS is new in v5.13): yamllint warnings/errors: ./Documentation/devicetree/bindings/net/oa-tc6.yaml:16:68: [error] syntax error: mapping values are not allowed here (syntax) dtschema/dtc warnings/errors: make[2]: *** Deleting file 'Documentation/devicetree/bindings/net/oa-tc6.example.dts' Documentation/devicetree/bindings/net/oa-tc6.yaml:16:68: mapping values are not allowed in this context make[2]: *** [Documentation/devicetree/bindings/Makefile:26: Documentation/devicetree/bindings/net/oa-tc6.example.dts] Error 1 make[2]: *** Waiting for unfinished jobs.... ./Documentation/devicetree/bindings/net/oa-tc6.yaml:16:68: mapping values are not allowed in this context /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/net/oa-tc6.yaml: ignoring, error parsing file make[1]: *** [/builds/robherring/dt-review-ci/linux/Makefile:1427: dt_binding_check] Error 2 make: *** [Makefile:234: __sub-make] Error 2 doc reference errors (make refcheckdocs): See https://patchwork.ozlabs.org/project/devicetree-bindings/patch/20231023154649.45931-5-Parthiban.Veerasooran@microchip.com The base for the series is generally the latest rc1. A different dependency should be noted in *this* patch. If you already ran 'make dt_binding_check' and didn't see the above error(s), then make sure 'yamllint' is installed and dt-schema is up to date: pip3 install dtschema --upgrade Please check and re-submit after running the above command yourself. Note that DT_SCHEMA_FILES can be set to your schema file to speed up checking your schema. However, it must be unset to test all examples with your schema.
> + oa-cps: > + maxItems: 1 > + description: > + Chunk Payload Size. Configures the data chunk payload size to 2^N, > + where N is the value of this bitfield. The minimum possible data > + chunk payload size is 8 bytes or N = 3. The default data chunk > + payload size is 64 bytes, or N = 6. The minimum supported data chunk > + payload size for this MAC-PHY device is indicated in the CPSMIN > + field of the CAPABILITY register. Valid values for this parameter > + are 8, 16, 32 and 64. All other values are reserved. > + > + oa-txcte: > + maxItems: 1 > + description: > + Transmit Cut-Through Enable. When supported by this MAC-PHY device, > + this bit enables the cut-through mode of frame transfer through the > + MAC-PHY device from the SPI host to the network. > + > + oa-rxcte: > + maxItems: 1 > + description: > + Receive Cut-Through Enable. When supported by this MAC-PHY device, > + this bit enables the cut-through mode of frame transfer through the > + MAC-PHY device from the network to the SPI host. > + > + oa-prote: > + maxItems: 1 > + description: > + Control data read/write Protection Enable. When set, all control > + data written to and read from the MAC-PHY will be transferred with > + its complement for detection of bit errors. Device tree described hardware. Its not supposed to be used to describe configuration. So it is not clear to me if any of these are valid in DT. It seems to me, the amount of control transfers should be very small compared to data transfers. So why not just set protection enable to be true? What is the effect of chunk payload size ? Is there a reason to use a lower value than the default 64? I assume smaller sizes make data transfer more expensive, since you need more DMA setup and completion handing etc. An Ethernet driver is allowed to have driver specific private flags. See ethtool(1) --show-priv-flags and --set-priv-flags You could maybe use these to configure cut through? Andrew
On 23/10/2023 17:46, Parthiban Veerasooran wrote: > Add DT bindings OPEN Alliance 10BASE-T1x MACPHY Serial Interface > parameters. These are generic properties that can apply to any 10BASE-T1x > MAC-PHY which uses OPEN Alliance TC6 specification. Except that it was not tested at all few more issues. > > Signed-off-by: Parthiban Veerasooran <Parthiban.Veerasooran@microchip.com> > --- > .../devicetree/bindings/net/oa-tc6.yaml | 72 +++++++++++++++++++ > MAINTAINERS | 1 + > 2 files changed, 73 insertions(+) > create mode 100644 Documentation/devicetree/bindings/net/oa-tc6.yaml > > diff --git a/Documentation/devicetree/bindings/net/oa-tc6.yaml b/Documentation/devicetree/bindings/net/oa-tc6.yaml > new file mode 100644 > index 000000000000..9f442fa6cace > --- /dev/null > +++ b/Documentation/devicetree/bindings/net/oa-tc6.yaml Filename based on compatible. > @@ -0,0 +1,72 @@ > +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/net/oa-tc6.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: OPEN Alliance 10BASE-T1x MAC-PHY Specification Common Properties > + > +maintainers: > + - Parthiban Veerasooran <parthiban.veerasooran@microchip.com> > + > +description: > + These are generic properties that can apply to any 10BASE-T1x MAC-PHY > + which uses OPEN Alliance TC6 specification. > + > + 10BASE-T1x MAC-PHY Serial Interface Specification can be found at: > + https://opensig.org/about/specifications/ > + > +properties: > + $nodename: > + pattern: "^oa-tc6(@.*)?" Drop > + > + "#address-cells": > + const: 1 > + > + "#size-cells": > + const: 0 Why? > + > + oa-cps: > + maxItems: 1 > + description: > + Chunk Payload Size. Configures the data chunk payload size to 2^N, > + where N is the value of this bitfield. The minimum possible data > + chunk payload size is 8 bytes or N = 3. The default data chunk > + payload size is 64 bytes, or N = 6. The minimum supported data chunk > + payload size for this MAC-PHY device is indicated in the CPSMIN > + field of the CAPABILITY register. Valid values for this parameter > + are 8, 16, 32 and 64. All other values are reserved. > + > + oa-txcte: > + maxItems: 1 > + description: > + Transmit Cut-Through Enable. When supported by this MAC-PHY device, > + this bit enables the cut-through mode of frame transfer through the > + MAC-PHY device from the SPI host to the network. > + > + oa-rxcte: > + maxItems: 1 > + description: > + Receive Cut-Through Enable. When supported by this MAC-PHY device, > + this bit enables the cut-through mode of frame transfer through the > + MAC-PHY device from the network to the SPI host. > + > + oa-prote: > + maxItems: 1 > + description: > + Control data read/write Protection Enable. When set, all control > + data written to and read from the MAC-PHY will be transferred with > + its complement for detection of bit errors. > + > +additionalProperties: true > + > +examples: > + - | > + oa-tc6 { > + #address-cells = <1>; > + #size-cells = <0>; That's some total mess in indentation. > + oa-cps = <64>; > + oa-txcte; > + oa-rxcte; > + oa-prote; > + }; Best regards, Krzysztof
On 23/10/23 11:10 pm, Rob Herring wrote: > EXTERNAL EMAIL: Do not click links or open attachments unless you know the content is safe > > On Mon, 23 Oct 2023 21:16:44 +0530, Parthiban Veerasooran wrote: >> Add DT bindings OPEN Alliance 10BASE-T1x MACPHY Serial Interface >> parameters. These are generic properties that can apply to any 10BASE-T1x >> MAC-PHY which uses OPEN Alliance TC6 specification. >> >> Signed-off-by: Parthiban Veerasooran <Parthiban.Veerasooran@microchip.com> >> --- >> .../devicetree/bindings/net/oa-tc6.yaml | 72 +++++++++++++++++++ >> MAINTAINERS | 1 + >> 2 files changed, 73 insertions(+) >> create mode 100644 Documentation/devicetree/bindings/net/oa-tc6.yaml >> > > My bot found errors running 'make DT_CHECKER_FLAGS=-m dt_binding_check' > on your patch (DT_CHECKER_FLAGS is new in v5.13): > > yamllint warnings/errors: > ./Documentation/devicetree/bindings/net/oa-tc6.yaml:16:68: [error] syntax error: mapping values are not allowed here (syntax) > > dtschema/dtc warnings/errors: > make[2]: *** Deleting file 'Documentation/devicetree/bindings/net/oa-tc6.example.dts' > Documentation/devicetree/bindings/net/oa-tc6.yaml:16:68: mapping values are not allowed in this context > make[2]: *** [Documentation/devicetree/bindings/Makefile:26: Documentation/devicetree/bindings/net/oa-tc6.example.dts] Error 1 > make[2]: *** Waiting for unfinished jobs.... > ./Documentation/devicetree/bindings/net/oa-tc6.yaml:16:68: mapping values are not allowed in this context > /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/net/oa-tc6.yaml: ignoring, error parsing file > make[1]: *** [/builds/robherring/dt-review-ci/linux/Makefile:1427: dt_binding_check] Error 2 > make: *** [Makefile:234: __sub-make] Error 2 > > doc reference errors (make refcheckdocs): > > See https://patchwork.ozlabs.org/project/devicetree-bindings/patch/20231023154649.45931-5-Parthiban.Veerasooran@microchip.com > > The base for the series is generally the latest rc1. A different dependency > should be noted in *this* patch. > > If you already ran 'make dt_binding_check' and didn't see the above > error(s), then make sure 'yamllint' is installed and dt-schema is up to > date: > > pip3 install dtschema --upgrade > > Please check and re-submit after running the above command yourself. Note > that DT_SCHEMA_FILES can be set to your schema file to speed up checking > your schema. However, it must be unset to test all examples with your schema. > Sorry, somehow I missed doing this check. Will fix this in the next revision. Best Regards, Parthiban V
Hi Andrew, On 24/10/23 6:07 am, Andrew Lunn wrote: > EXTERNAL EMAIL: Do not click links or open attachments unless you know the content is safe > >> + oa-cps: >> + maxItems: 1 >> + description: >> + Chunk Payload Size. Configures the data chunk payload size to 2^N, >> + where N is the value of this bitfield. The minimum possible data >> + chunk payload size is 8 bytes or N = 3. The default data chunk >> + payload size is 64 bytes, or N = 6. The minimum supported data chunk >> + payload size for this MAC-PHY device is indicated in the CPSMIN >> + field of the CAPABILITY register. Valid values for this parameter >> + are 8, 16, 32 and 64. All other values are reserved. >> + >> + oa-txcte: >> + maxItems: 1 >> + description: >> + Transmit Cut-Through Enable. When supported by this MAC-PHY device, >> + this bit enables the cut-through mode of frame transfer through the >> + MAC-PHY device from the SPI host to the network. >> + >> + oa-rxcte: >> + maxItems: 1 >> + description: >> + Receive Cut-Through Enable. When supported by this MAC-PHY device, >> + this bit enables the cut-through mode of frame transfer through the >> + MAC-PHY device from the network to the SPI host. >> + >> + oa-prote: >> + maxItems: 1 >> + description: >> + Control data read/write Protection Enable. When set, all control >> + data written to and read from the MAC-PHY will be transferred with >> + its complement for detection of bit errors. > > Device tree described hardware. Its not supposed to be used to > describe configuration. So it is not clear to me if any of these are > valid in DT. > > It seems to me, the amount of control transfers should be very small > compared to data transfers. So why not just set protection enable to > be true? Yes having protection enabled for control transfer doesn't hurt anything. The only intention for keeping this as configurable is, it is defined in the OPEN Alliance specification to enable/disable. > > What is the effect of chunk payload size ? Is there a reason to use a > lower value than the default 64? I assume smaller sizes make data > transfer more expensive, since you need more DMA setup and completion > handing etc. Again the intention for keeping this as configurable is, it is defined in the OPEN Alliance specification as user configurable. They can be 8, 16, 32 and 64. And the default is 64. Also Microchip's LAN8650 supports for 32 and 64. > > An Ethernet driver is allowed to have driver specific private > flags. See ethtool(1) --show-priv-flags and --set-priv-flags You could > maybe use these to configure cut through? So you mean, we have to implement the support in the ethtool interface to enable/disable tx/rx cut through feature, isn't it? If you feel like the above configurations are not needed, so by keeping protection true always, chunk payload size (cps) 64 always and moving tx/rx cut through to ethtool, we can get rid of this DT bindings? Best Regards, Parthiban V > > Andrew > > >
> > Device tree described hardware. Its not supposed to be used to > > describe configuration. So it is not clear to me if any of these are > > valid in DT. > > > > It seems to me, the amount of control transfers should be very small > > compared to data transfers. So why not just set protection enable to > > be true? > Yes having protection enabled for control transfer doesn't hurt > anything. The only intention for keeping this as configurable is, it is > defined in the OPEN Alliance specification to enable/disable. Standards often have options which nobody ever use, or are only useful in particular niches. Its often best to keep it simple, get the basic feature working, and then add these optional features if anybody actually needs them. > > What is the effect of chunk payload size ? Is there a reason to use a > > lower value than the default 64? I assume smaller sizes make data > > transfer more expensive, since you need more DMA setup and completion > > handing etc. > Again the intention for keeping this as configurable is, it is defined > in the OPEN Alliance specification as user configurable. They can be 8, > 16, 32 and 64. And the default is 64. Also Microchip's LAN8650 supports > for 32 and 64. Do you have any idea why the standard has different sizes? Why would you want to use 32? If you can answer this, it helps decide how important it is to support multiple sizes, or just hard code it to 64. There are plenty of old research on Ethernet frame sizes, but they are for LAN/Internet usage. You typically see two peeks, one around 64-80 bytes, and other around the full frame size. The small packets are TCP ACKS, and the rest is TCP data. However, this is a T1S device for automotive. I personally have no idea if the same traffic distribution is seen in that application? Are there protocols running which use a lot of frames smaller than 64 bytes? If so, 64 byte chunk size i assume could be wasteful, if there are lots of 32 byte frames. The other potential issue is latency and the way the SPI bus works. Its a synchronised bi-directional bus. You can receive and transmit at the same time, but you have to setup the transfer to do that. If you are busy doing a receive only, and there is a new packet to send, you have to wait for the chunk transfer to complete before you can start a bi-directional chunk transfer. So a 32 byte chunk might make your link more efficient if you have heavy but bursty traffic. However, you have to consider the overheads of setting up the transfer and running the completion handler afterwards. This can be costly. Do you have real use cases for using different chunks sizes? If not, i probably would just hard code it to 64, until somebody comes along needing something else. > > An Ethernet driver is allowed to have driver specific private > > flags. See ethtool(1) --show-priv-flags and --set-priv-flags You could > > maybe use these to configure cut through? > So you mean, we have to implement the support in the ethtool interface > to enable/disable tx/rx cut through feature, isn't it? > > If you feel like the above configurations are not needed, so by keeping > protection true always, chunk payload size (cps) 64 always and moving > tx/rx cut through to ethtool, we can get rid of this DT bindings? Again, do you have a real use case for cut through? Or maybe flip it around, Why would you not use cut through? Andrew
Hi Andrew, On 27/10/23 6:02 pm, Andrew Lunn wrote: > EXTERNAL EMAIL: Do not click links or open attachments unless you know the content is safe > >>> Device tree described hardware. Its not supposed to be used to >>> describe configuration. So it is not clear to me if any of these are >>> valid in DT. >>> >>> It seems to me, the amount of control transfers should be very small >>> compared to data transfers. So why not just set protection enable to >>> be true? >> Yes having protection enabled for control transfer doesn't hurt >> anything. The only intention for keeping this as configurable is, it is >> defined in the OPEN Alliance specification to enable/disable. > > Standards often have options which nobody ever use, or are only useful > in particular niches. Its often best to keep it simple, get the basic > feature working, and then add these optional features if anybody > actually needs them. > >>> What is the effect of chunk payload size ? Is there a reason to use a >>> lower value than the default 64? I assume smaller sizes make data >>> transfer more expensive, since you need more DMA setup and completion >>> handing etc. >> Again the intention for keeping this as configurable is, it is defined >> in the OPEN Alliance specification as user configurable. They can be 8, >> 16, 32 and 64. And the default is 64. Also Microchip's LAN8650 supports >> for 32 and 64. > > Do you have any idea why the standard has different sizes? Why would > you want to use 32? If you can answer this, it helps decide how > important it is to support multiple sizes, or just hard code it to 64. > > There are plenty of old research on Ethernet frame sizes, but they are > for LAN/Internet usage. You typically see two peeks, one around 64-80 > bytes, and other around the full frame size. The small packets are TCP > ACKS, and the rest is TCP data. However, this is a T1S device for > automotive. I personally have no idea if the same traffic distribution > is seen in that application? > > Are there protocols running which use a lot of frames smaller than 64 > bytes? If so, 64 byte chunk size i assume could be wasteful, if there > are lots of 32 byte frames. > > The other potential issue is latency and the way the SPI bus > works. Its a synchronised bi-directional bus. You can receive and > transmit at the same time, but you have to setup the transfer to do > that. If you are busy doing a receive only, and there is a new packet > to send, you have to wait for the chunk transfer to complete before > you can start a bi-directional chunk transfer. So a 32 byte chunk > might make your link more efficient if you have heavy but bursty > traffic. However, you have to consider the overheads of setting up the > transfer and running the completion handler afterwards. This can be > costly. > > Do you have real use cases for using different chunks sizes? If not, i > probably would just hard code it to 64, until somebody comes along > needing something else. > >>> An Ethernet driver is allowed to have driver specific private >>> flags. See ethtool(1) --show-priv-flags and --set-priv-flags You could >>> maybe use these to configure cut through? >> So you mean, we have to implement the support in the ethtool interface >> to enable/disable tx/rx cut through feature, isn't it? >> >> If you feel like the above configurations are not needed, so by keeping >> protection true always, chunk payload size (cps) 64 always and moving >> tx/rx cut through to ethtool, we can get rid of this DT bindings? > > Again, do you have a real use case for cut through? Or maybe flip it > around, Why would you not use cut through? Thanks a lot for your detailed explanation. From this what I understand is, 1. Will make protection enabled always for control transfer. 2. Keep the default chunk payload size (64) as it is. 3. Default tx/rx cut through modes are disabled. So will not touch them. So that we don't need DT bindings. Best Regards, Parthiban V > > Andrew
Hi Krzysztof As per the comments in the other email of this patch, this DT bindings are going to be removed. Best Regards, Parthiban V On 24/10/23 1:14 pm, Krzysztof Kozlowski wrote: > EXTERNAL EMAIL: Do not click links or open attachments unless you know the content is safe > > On 23/10/2023 17:46, Parthiban Veerasooran wrote: >> Add DT bindings OPEN Alliance 10BASE-T1x MACPHY Serial Interface >> parameters. These are generic properties that can apply to any 10BASE-T1x >> MAC-PHY which uses OPEN Alliance TC6 specification. > > Except that it was not tested at all few more issues. > >> >> Signed-off-by: Parthiban Veerasooran <Parthiban.Veerasooran@microchip.com> >> --- >> .../devicetree/bindings/net/oa-tc6.yaml | 72 +++++++++++++++++++ >> MAINTAINERS | 1 + >> 2 files changed, 73 insertions(+) >> create mode 100644 Documentation/devicetree/bindings/net/oa-tc6.yaml >> >> diff --git a/Documentation/devicetree/bindings/net/oa-tc6.yaml b/Documentation/devicetree/bindings/net/oa-tc6.yaml >> new file mode 100644 >> index 000000000000..9f442fa6cace >> --- /dev/null >> +++ b/Documentation/devicetree/bindings/net/oa-tc6.yaml > > Filename based on compatible. > >> @@ -0,0 +1,72 @@ >> +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause >> +%YAML 1.2 >> +--- >> +$id: http://devicetree.org/schemas/net/oa-tc6.yaml# >> +$schema: http://devicetree.org/meta-schemas/core.yaml# >> + >> +title: OPEN Alliance 10BASE-T1x MAC-PHY Specification Common Properties >> + >> +maintainers: >> + - Parthiban Veerasooran <parthiban.veerasooran@microchip.com> >> + >> +description: >> + These are generic properties that can apply to any 10BASE-T1x MAC-PHY >> + which uses OPEN Alliance TC6 specification. >> + >> + 10BASE-T1x MAC-PHY Serial Interface Specification can be found at: >> + https://opensig.org/about/specifications/ >> + >> +properties: >> + $nodename: >> + pattern: "^oa-tc6(@.*)?" > > Drop > >> + >> + "#address-cells": >> + const: 1 >> + >> + "#size-cells": >> + const: 0 > > Why? > >> + >> + oa-cps: >> + maxItems: 1 >> + description: >> + Chunk Payload Size. Configures the data chunk payload size to 2^N, >> + where N is the value of this bitfield. The minimum possible data >> + chunk payload size is 8 bytes or N = 3. The default data chunk >> + payload size is 64 bytes, or N = 6. The minimum supported data chunk >> + payload size for this MAC-PHY device is indicated in the CPSMIN >> + field of the CAPABILITY register. Valid values for this parameter >> + are 8, 16, 32 and 64. All other values are reserved. >> + >> + oa-txcte: >> + maxItems: 1 >> + description: >> + Transmit Cut-Through Enable. When supported by this MAC-PHY device, >> + this bit enables the cut-through mode of frame transfer through the >> + MAC-PHY device from the SPI host to the network. >> + >> + oa-rxcte: >> + maxItems: 1 >> + description: >> + Receive Cut-Through Enable. When supported by this MAC-PHY device, >> + this bit enables the cut-through mode of frame transfer through the >> + MAC-PHY device from the network to the SPI host. >> + >> + oa-prote: >> + maxItems: 1 >> + description: >> + Control data read/write Protection Enable. When set, all control >> + data written to and read from the MAC-PHY will be transferred with >> + its complement for detection of bit errors. >> + >> +additionalProperties: true >> + >> +examples: >> + - | >> + oa-tc6 { >> + #address-cells = <1>; >> + #size-cells = <0>; > > That's some total mess in indentation. > >> + oa-cps = <64>; >> + oa-txcte; >> + oa-rxcte; >> + oa-prote; >> + }; > Best regards, > Krzysztof >
diff --git a/Documentation/devicetree/bindings/net/oa-tc6.yaml b/Documentation/devicetree/bindings/net/oa-tc6.yaml new file mode 100644 index 000000000000..9f442fa6cace --- /dev/null +++ b/Documentation/devicetree/bindings/net/oa-tc6.yaml @@ -0,0 +1,72 @@ +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/net/oa-tc6.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: OPEN Alliance 10BASE-T1x MAC-PHY Specification Common Properties + +maintainers: + - Parthiban Veerasooran <parthiban.veerasooran@microchip.com> + +description: + These are generic properties that can apply to any 10BASE-T1x MAC-PHY + which uses OPEN Alliance TC6 specification. + + 10BASE-T1x MAC-PHY Serial Interface Specification can be found at: + https://opensig.org/about/specifications/ + +properties: + $nodename: + pattern: "^oa-tc6(@.*)?" + + "#address-cells": + const: 1 + + "#size-cells": + const: 0 + + oa-cps: + maxItems: 1 + description: + Chunk Payload Size. Configures the data chunk payload size to 2^N, + where N is the value of this bitfield. The minimum possible data + chunk payload size is 8 bytes or N = 3. The default data chunk + payload size is 64 bytes, or N = 6. The minimum supported data chunk + payload size for this MAC-PHY device is indicated in the CPSMIN + field of the CAPABILITY register. Valid values for this parameter + are 8, 16, 32 and 64. All other values are reserved. + + oa-txcte: + maxItems: 1 + description: + Transmit Cut-Through Enable. When supported by this MAC-PHY device, + this bit enables the cut-through mode of frame transfer through the + MAC-PHY device from the SPI host to the network. + + oa-rxcte: + maxItems: 1 + description: + Receive Cut-Through Enable. When supported by this MAC-PHY device, + this bit enables the cut-through mode of frame transfer through the + MAC-PHY device from the network to the SPI host. + + oa-prote: + maxItems: 1 + description: + Control data read/write Protection Enable. When set, all control + data written to and read from the MAC-PHY will be transferred with + its complement for detection of bit errors. + +additionalProperties: true + +examples: + - | + oa-tc6 { + #address-cells = <1>; + #size-cells = <0>; + oa-cps = <64>; + oa-txcte; + oa-rxcte; + oa-prote; + }; diff --git a/MAINTAINERS b/MAINTAINERS index 1c165026bbd4..9580be91f5e9 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -15975,6 +15975,7 @@ OPEN ALLIANCE 10BASE-T1S MACPHY SERIAL INTERFACE FRAMEWORK M: Parthiban Veerasooran <parthiban.veerasooran@microchip.com> L: netdev@vger.kernel.org S: Maintained +F: Documentation/devicetree/bindings/net/oa-tc6.yaml F: Documentation/networking/oa-tc6-framework.rst F: drivers/include/linux/oa_tc6.h F: drivers/net/ethernet/oa_tc6.c
Add DT bindings OPEN Alliance 10BASE-T1x MACPHY Serial Interface parameters. These are generic properties that can apply to any 10BASE-T1x MAC-PHY which uses OPEN Alliance TC6 specification. Signed-off-by: Parthiban Veerasooran <Parthiban.Veerasooran@microchip.com> --- .../devicetree/bindings/net/oa-tc6.yaml | 72 +++++++++++++++++++ MAINTAINERS | 1 + 2 files changed, 73 insertions(+) create mode 100644 Documentation/devicetree/bindings/net/oa-tc6.yaml