From: Biao Huang <biao.huang@mediatek.com>
To: Rob Herring <robh@kernel.org>
Cc: <srv_heupstream@mediatek.com>,
<linux-arm-kernel@lists.infradead.org>, <davem@davemloft.net>,
<linux-stm32@st-md-mailman.stormreply.com>,
<angelogioacchino.delregno@collabora.com>,
Alexandre Torgue <alexandre.torgue@foss.st.com>,
Matthias Brugger <matthias.bgg@gmail.com>,
<linux-mediatek@lists.infradead.org>,
Giuseppe Cavallaro <peppe.cavallaro@st.com>,
Jose Abreu <joabreu@synopsys.com>, <netdev@vger.kernel.org>,
<dkirjanov@suse.de>, <linux-kernel@vger.kernel.org>,
<macpaul.lin@mediatek.com>,
Maxime Coquelin <mcoquelin.stm32@gmail.com>,
<devicetree@vger.kernel.org>, Jakub Kicinski <kuba@kernel.org>,
Rob Herring <robh+dt@kernel.org>
Subject: Re: [PATCH net-next v10 6/6] net: dt-bindings: dwmac: add support for mt8195
Date: Fri, 17 Dec 2021 10:05:58 +0800 [thread overview]
Message-ID: <be023f9d2fb2a8f947bd0075e8732ba07cfd7b89.camel@mediatek.com> (raw)
In-Reply-To: <1639662782.987227.4004875.nullmailer@robh.at.kernel.org>
Dear Rob,
Thanks for your comments~
For mt8195, the eth device node will look like:
eth: ethernet@11021000 {
compatible = "mediatek,mt8195-gmac", "snps,dwmac-5.10a";
...
clock-names = "axi",
"apb",
"mac_cg",
"mac_main",
"ptp_ref",
"rmii_internal";
clocks = <&pericfg_ao CLK_PERI_AO_ETHERNET>,
<&pericfg_ao CLK_PERI_AO_ETHERNET_BUS>,
<&pericfg_ao CLK_PERI_AO_ETHERNET_MAC>,
<&topckgen CLK_TOP_SNPS_ETH_250M>,
<&topckgen CLK_TOP_SNPS_ETH_62P4M_PTP>,
<&topckgen CLK_TOP_SNPS_ETH_50M_RMII>;
...
}
1. "rmii_internal" is a special clock only required for
RMII phy interface, dwmac-mediatek.c will enable clocks
invoking clk_bulk_prepare_enable(xx, 6) for RMII,
and clk_bulk_prepare_enable(xx, 5) for other phy interfaces.
so, mt2712/mt8195 all put "rmii_internal" clock to the
end of clock list to simplify clock handling.
If I put mac_cg as described above, a if condition is required
for clocks description in dt-binding, just like what I do in v7 send:
- if:
properties:
compatible:
contains:
enum:
- mediatek,mt2712-gmac
then:
properties:
clocks:
minItems: 5
items:
- description: AXI clock
- description: APB clock
- description: MAC Main clock
- description: PTP clock
- description: RMII reference clock provided by MAC
clock-names:
minItems: 5
items:
- const: axi
- const: apb
- const: mac_main
- const: ptp_ref
- const: rmii_internal
- if:
properties:
compatible:
contains:
enum:
- mediatek,mt8195-gmac
then:
properties:
clocks:
minItems: 6
items:
- description: AXI clock
- description: APB clock
- description: MAC clock gate
- description: MAC Main clock
- description: PTP clock
- description: RMII reference clock provided by MAC
This introduces some duplicated description.
2. If I put "mac_cg" to the end of clock list,
the dt-binding file can be simple just like
what we do in this v10 patch(need fix warnings reported by "make
DT_CHECKER_FLAGS=-m dt_binding_check").
But for mt8195:
the eth node in dts should be modified,
and eth driver clock handling will be complex;
We prefer 1(duplicated description one).
Can we just descirbe clocks/clocks-names for mt2712/mt8195 seperately?
Please kindly comment about this issue.
Thanks in advance.
On Thu, 2021-12-16 at 07:53 -0600, Rob Herring wrote:
> On Thu, 16 Dec 2021 13:53:28 +0800, Biao Huang wrote:
> > Add binding document for the ethernet on mt8195.
> >
> > Signed-off-by: Biao Huang <biao.huang@mediatek.com>
> > ---
> > .../bindings/net/mediatek-dwmac.yaml | 29
> > ++++++++++++++++---
> > 1 file changed, 25 insertions(+), 4 deletions(-)
> >
>
> 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:
>
> dtschema/dtc warnings/errors:
> /builds/robherring/linux-dt-
> review/Documentation/devicetree/bindings/net/mediatek-dwmac.yaml:
> properties:clock-names: {'minItems': 5, 'maxItems': 6, 'items':
> [{'const': 'axi'}, {'const': 'apb'}, {'const': 'mac_main'}, {'const':
> 'ptp_ref'}, {'const': 'rmii_internal'}, {'const': 'mac_cg'}]} should
> not be valid under {'required': ['maxItems']}
> hint: "maxItems" is not needed with an "items" list
> from schema $id: http://devicetree.org/meta-schemas/items.yaml#
> /builds/robherring/linux-dt-
> review/Documentation/devicetree/bindings/net/mediatek-dwmac.yaml:
> ignoring, error in schema: properties: clock-names
> warning: no schema found in file:
> ./Documentation/devicetree/bindings/net/mediatek-dwmac.yaml
> Documentation/devicetree/bindings/net/mediatek-
> dwmac.example.dt.yaml:0:0: /example-0/ethernet@1101c000: failed to
> match any schema with compatible: ['mediatek,mt2712-gmac',
> 'snps,dwmac-4.20a']
>
> doc reference errors (make refcheckdocs):
>
> See https://patchwork.ozlabs.org/patch/1568902
>
> This check can fail if there are any dependencies. The base for a
> patch
> series is generally the most recent rc1.
>
> 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.
>
WARNING: multiple messages have this Message-ID (diff)
From: Biao Huang <biao.huang@mediatek.com>
To: Rob Herring <robh@kernel.org>
Cc: <srv_heupstream@mediatek.com>,
<linux-arm-kernel@lists.infradead.org>, <davem@davemloft.net>,
<linux-stm32@st-md-mailman.stormreply.com>,
<angelogioacchino.delregno@collabora.com>,
Alexandre Torgue <alexandre.torgue@foss.st.com>,
Matthias Brugger <matthias.bgg@gmail.com>,
<linux-mediatek@lists.infradead.org>,
Giuseppe Cavallaro <peppe.cavallaro@st.com>,
Jose Abreu <joabreu@synopsys.com>, <netdev@vger.kernel.org>,
<dkirjanov@suse.de>, <linux-kernel@vger.kernel.org>,
<macpaul.lin@mediatek.com>,
Maxime Coquelin <mcoquelin.stm32@gmail.com>,
<devicetree@vger.kernel.org>, Jakub Kicinski <kuba@kernel.org>,
Rob Herring <robh+dt@kernel.org>
Subject: Re: [PATCH net-next v10 6/6] net: dt-bindings: dwmac: add support for mt8195
Date: Fri, 17 Dec 2021 10:05:58 +0800 [thread overview]
Message-ID: <be023f9d2fb2a8f947bd0075e8732ba07cfd7b89.camel@mediatek.com> (raw)
In-Reply-To: <1639662782.987227.4004875.nullmailer@robh.at.kernel.org>
Dear Rob,
Thanks for your comments~
For mt8195, the eth device node will look like:
eth: ethernet@11021000 {
compatible = "mediatek,mt8195-gmac", "snps,dwmac-5.10a";
...
clock-names = "axi",
"apb",
"mac_cg",
"mac_main",
"ptp_ref",
"rmii_internal";
clocks = <&pericfg_ao CLK_PERI_AO_ETHERNET>,
<&pericfg_ao CLK_PERI_AO_ETHERNET_BUS>,
<&pericfg_ao CLK_PERI_AO_ETHERNET_MAC>,
<&topckgen CLK_TOP_SNPS_ETH_250M>,
<&topckgen CLK_TOP_SNPS_ETH_62P4M_PTP>,
<&topckgen CLK_TOP_SNPS_ETH_50M_RMII>;
...
}
1. "rmii_internal" is a special clock only required for
RMII phy interface, dwmac-mediatek.c will enable clocks
invoking clk_bulk_prepare_enable(xx, 6) for RMII,
and clk_bulk_prepare_enable(xx, 5) for other phy interfaces.
so, mt2712/mt8195 all put "rmii_internal" clock to the
end of clock list to simplify clock handling.
If I put mac_cg as described above, a if condition is required
for clocks description in dt-binding, just like what I do in v7 send:
- if:
properties:
compatible:
contains:
enum:
- mediatek,mt2712-gmac
then:
properties:
clocks:
minItems: 5
items:
- description: AXI clock
- description: APB clock
- description: MAC Main clock
- description: PTP clock
- description: RMII reference clock provided by MAC
clock-names:
minItems: 5
items:
- const: axi
- const: apb
- const: mac_main
- const: ptp_ref
- const: rmii_internal
- if:
properties:
compatible:
contains:
enum:
- mediatek,mt8195-gmac
then:
properties:
clocks:
minItems: 6
items:
- description: AXI clock
- description: APB clock
- description: MAC clock gate
- description: MAC Main clock
- description: PTP clock
- description: RMII reference clock provided by MAC
This introduces some duplicated description.
2. If I put "mac_cg" to the end of clock list,
the dt-binding file can be simple just like
what we do in this v10 patch(need fix warnings reported by "make
DT_CHECKER_FLAGS=-m dt_binding_check").
But for mt8195:
the eth node in dts should be modified,
and eth driver clock handling will be complex;
We prefer 1(duplicated description one).
Can we just descirbe clocks/clocks-names for mt2712/mt8195 seperately?
Please kindly comment about this issue.
Thanks in advance.
On Thu, 2021-12-16 at 07:53 -0600, Rob Herring wrote:
> On Thu, 16 Dec 2021 13:53:28 +0800, Biao Huang wrote:
> > Add binding document for the ethernet on mt8195.
> >
> > Signed-off-by: Biao Huang <biao.huang@mediatek.com>
> > ---
> > .../bindings/net/mediatek-dwmac.yaml | 29
> > ++++++++++++++++---
> > 1 file changed, 25 insertions(+), 4 deletions(-)
> >
>
> 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:
>
> dtschema/dtc warnings/errors:
> /builds/robherring/linux-dt-
> review/Documentation/devicetree/bindings/net/mediatek-dwmac.yaml:
> properties:clock-names: {'minItems': 5, 'maxItems': 6, 'items':
> [{'const': 'axi'}, {'const': 'apb'}, {'const': 'mac_main'}, {'const':
> 'ptp_ref'}, {'const': 'rmii_internal'}, {'const': 'mac_cg'}]} should
> not be valid under {'required': ['maxItems']}
> hint: "maxItems" is not needed with an "items" list
> from schema $id: http://devicetree.org/meta-schemas/items.yaml#
> /builds/robherring/linux-dt-
> review/Documentation/devicetree/bindings/net/mediatek-dwmac.yaml:
> ignoring, error in schema: properties: clock-names
> warning: no schema found in file:
> ./Documentation/devicetree/bindings/net/mediatek-dwmac.yaml
> Documentation/devicetree/bindings/net/mediatek-
> dwmac.example.dt.yaml:0:0: /example-0/ethernet@1101c000: failed to
> match any schema with compatible: ['mediatek,mt2712-gmac',
> 'snps,dwmac-4.20a']
>
> doc reference errors (make refcheckdocs):
>
> See https://patchwork.ozlabs.org/patch/1568902
>
> This check can fail if there are any dependencies. The base for a
> patch
> series is generally the most recent rc1.
>
> 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.
>
_______________________________________________
Linux-mediatek mailing list
Linux-mediatek@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-mediatek
WARNING: multiple messages have this Message-ID (diff)
From: Biao Huang <biao.huang@mediatek.com>
To: Rob Herring <robh@kernel.org>
Cc: <srv_heupstream@mediatek.com>,
<linux-arm-kernel@lists.infradead.org>, <davem@davemloft.net>,
<linux-stm32@st-md-mailman.stormreply.com>,
<angelogioacchino.delregno@collabora.com>,
Alexandre Torgue <alexandre.torgue@foss.st.com>,
Matthias Brugger <matthias.bgg@gmail.com>,
<linux-mediatek@lists.infradead.org>,
Giuseppe Cavallaro <peppe.cavallaro@st.com>,
Jose Abreu <joabreu@synopsys.com>, <netdev@vger.kernel.org>,
<dkirjanov@suse.de>, <linux-kernel@vger.kernel.org>,
<macpaul.lin@mediatek.com>,
Maxime Coquelin <mcoquelin.stm32@gmail.com>,
<devicetree@vger.kernel.org>, Jakub Kicinski <kuba@kernel.org>,
Rob Herring <robh+dt@kernel.org>
Subject: Re: [PATCH net-next v10 6/6] net: dt-bindings: dwmac: add support for mt8195
Date: Fri, 17 Dec 2021 10:05:58 +0800 [thread overview]
Message-ID: <be023f9d2fb2a8f947bd0075e8732ba07cfd7b89.camel@mediatek.com> (raw)
In-Reply-To: <1639662782.987227.4004875.nullmailer@robh.at.kernel.org>
Dear Rob,
Thanks for your comments~
For mt8195, the eth device node will look like:
eth: ethernet@11021000 {
compatible = "mediatek,mt8195-gmac", "snps,dwmac-5.10a";
...
clock-names = "axi",
"apb",
"mac_cg",
"mac_main",
"ptp_ref",
"rmii_internal";
clocks = <&pericfg_ao CLK_PERI_AO_ETHERNET>,
<&pericfg_ao CLK_PERI_AO_ETHERNET_BUS>,
<&pericfg_ao CLK_PERI_AO_ETHERNET_MAC>,
<&topckgen CLK_TOP_SNPS_ETH_250M>,
<&topckgen CLK_TOP_SNPS_ETH_62P4M_PTP>,
<&topckgen CLK_TOP_SNPS_ETH_50M_RMII>;
...
}
1. "rmii_internal" is a special clock only required for
RMII phy interface, dwmac-mediatek.c will enable clocks
invoking clk_bulk_prepare_enable(xx, 6) for RMII,
and clk_bulk_prepare_enable(xx, 5) for other phy interfaces.
so, mt2712/mt8195 all put "rmii_internal" clock to the
end of clock list to simplify clock handling.
If I put mac_cg as described above, a if condition is required
for clocks description in dt-binding, just like what I do in v7 send:
- if:
properties:
compatible:
contains:
enum:
- mediatek,mt2712-gmac
then:
properties:
clocks:
minItems: 5
items:
- description: AXI clock
- description: APB clock
- description: MAC Main clock
- description: PTP clock
- description: RMII reference clock provided by MAC
clock-names:
minItems: 5
items:
- const: axi
- const: apb
- const: mac_main
- const: ptp_ref
- const: rmii_internal
- if:
properties:
compatible:
contains:
enum:
- mediatek,mt8195-gmac
then:
properties:
clocks:
minItems: 6
items:
- description: AXI clock
- description: APB clock
- description: MAC clock gate
- description: MAC Main clock
- description: PTP clock
- description: RMII reference clock provided by MAC
This introduces some duplicated description.
2. If I put "mac_cg" to the end of clock list,
the dt-binding file can be simple just like
what we do in this v10 patch(need fix warnings reported by "make
DT_CHECKER_FLAGS=-m dt_binding_check").
But for mt8195:
the eth node in dts should be modified,
and eth driver clock handling will be complex;
We prefer 1(duplicated description one).
Can we just descirbe clocks/clocks-names for mt2712/mt8195 seperately?
Please kindly comment about this issue.
Thanks in advance.
On Thu, 2021-12-16 at 07:53 -0600, Rob Herring wrote:
> On Thu, 16 Dec 2021 13:53:28 +0800, Biao Huang wrote:
> > Add binding document for the ethernet on mt8195.
> >
> > Signed-off-by: Biao Huang <biao.huang@mediatek.com>
> > ---
> > .../bindings/net/mediatek-dwmac.yaml | 29
> > ++++++++++++++++---
> > 1 file changed, 25 insertions(+), 4 deletions(-)
> >
>
> 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:
>
> dtschema/dtc warnings/errors:
> /builds/robherring/linux-dt-
> review/Documentation/devicetree/bindings/net/mediatek-dwmac.yaml:
> properties:clock-names: {'minItems': 5, 'maxItems': 6, 'items':
> [{'const': 'axi'}, {'const': 'apb'}, {'const': 'mac_main'}, {'const':
> 'ptp_ref'}, {'const': 'rmii_internal'}, {'const': 'mac_cg'}]} should
> not be valid under {'required': ['maxItems']}
> hint: "maxItems" is not needed with an "items" list
> from schema $id: http://devicetree.org/meta-schemas/items.yaml#
> /builds/robherring/linux-dt-
> review/Documentation/devicetree/bindings/net/mediatek-dwmac.yaml:
> ignoring, error in schema: properties: clock-names
> warning: no schema found in file:
> ./Documentation/devicetree/bindings/net/mediatek-dwmac.yaml
> Documentation/devicetree/bindings/net/mediatek-
> dwmac.example.dt.yaml:0:0: /example-0/ethernet@1101c000: failed to
> match any schema with compatible: ['mediatek,mt2712-gmac',
> 'snps,dwmac-4.20a']
>
> doc reference errors (make refcheckdocs):
>
> See https://patchwork.ozlabs.org/patch/1568902
>
> This check can fail if there are any dependencies. The base for a
> patch
> series is generally the most recent rc1.
>
> 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.
>
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
next prev parent reply other threads:[~2021-12-17 2:06 UTC|newest]
Thread overview: 42+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-12-16 5:53 [PATCH net-next v10 0/6] MediaTek Ethernet Patches on MT8195 Biao Huang
2021-12-16 5:53 ` Biao Huang
2021-12-16 5:53 ` Biao Huang
2021-12-16 5:53 ` [PATCH net-next v10 1/6] stmmac: dwmac-mediatek: add platform level clocks management Biao Huang
2021-12-16 5:53 ` Biao Huang
2021-12-16 5:53 ` Biao Huang
2021-12-16 5:53 ` [PATCH net-next v10 2/6] stmmac: dwmac-mediatek: Reuse more common features Biao Huang
2021-12-16 5:53 ` Biao Huang
2021-12-16 5:53 ` Biao Huang
2021-12-16 5:53 ` [PATCH net-next v10 3/6] arm64: dts: mt2712: update ethernet device node Biao Huang
2021-12-16 5:53 ` Biao Huang
2021-12-16 5:53 ` Biao Huang
2021-12-16 5:53 ` [PATCH net-next v10 4/6] net: dt-bindings: dwmac: Convert mediatek-dwmac to DT schema Biao Huang
2021-12-16 5:53 ` Biao Huang
2021-12-16 5:53 ` Biao Huang
2021-12-16 13:53 ` Rob Herring
2021-12-16 13:53 ` Rob Herring
2021-12-16 13:53 ` Rob Herring
2021-12-16 16:01 ` Rob Herring
2021-12-16 16:01 ` Rob Herring
2021-12-16 16:01 ` Rob Herring
2021-12-17 1:26 ` Biao Huang
2021-12-17 1:26 ` Biao Huang
2021-12-17 1:26 ` Biao Huang
2021-12-16 5:53 ` [PATCH net-next v10 5/6] stmmac: dwmac-mediatek: add support for mt8195 Biao Huang
2021-12-16 5:53 ` Biao Huang
2021-12-16 5:53 ` Biao Huang
2021-12-16 5:53 ` [PATCH net-next v10 6/6] net: dt-bindings: dwmac: " Biao Huang
2021-12-16 5:53 ` Biao Huang
2021-12-16 5:53 ` Biao Huang
2021-12-16 13:53 ` Rob Herring
2021-12-16 13:53 ` Rob Herring
2021-12-16 13:53 ` Rob Herring
2021-12-17 2:05 ` Biao Huang [this message]
2021-12-17 2:05 ` Biao Huang
2021-12-17 2:05 ` Biao Huang
2022-01-11 23:36 ` Rob Herring
2022-01-11 23:36 ` Rob Herring
2022-01-11 23:36 ` Rob Herring
2022-01-14 5:38 ` Biao Huang
2022-01-14 5:38 ` Biao Huang
2022-01-14 5:38 ` Biao Huang
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=be023f9d2fb2a8f947bd0075e8732ba07cfd7b89.camel@mediatek.com \
--to=biao.huang@mediatek.com \
--cc=alexandre.torgue@foss.st.com \
--cc=angelogioacchino.delregno@collabora.com \
--cc=davem@davemloft.net \
--cc=devicetree@vger.kernel.org \
--cc=dkirjanov@suse.de \
--cc=joabreu@synopsys.com \
--cc=kuba@kernel.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mediatek@lists.infradead.org \
--cc=linux-stm32@st-md-mailman.stormreply.com \
--cc=macpaul.lin@mediatek.com \
--cc=matthias.bgg@gmail.com \
--cc=mcoquelin.stm32@gmail.com \
--cc=netdev@vger.kernel.org \
--cc=peppe.cavallaro@st.com \
--cc=robh+dt@kernel.org \
--cc=robh@kernel.org \
--cc=srv_heupstream@mediatek.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.