Re: [linux-sunxi] Re: [PATCH 2/4] dt-bindings: add binding for RTL8211E Ethernet PHY

2017-08-21 Thread Florian Fainelli
On 08/21/2017 07:53 AM, icen...@aosc.io wrote:
> 在 2017-05-05 02:29,Florian Fainelli 写道:
>> On 05/04/2017 11:26 AM, Icenowy Zheng wrote:
>>>
>>>
>>> 于 2017年5月5日 GMT+08:00 上午2:21:29, Florian Fainelli
>>>  写到:
 On 05/04/2017 11:10 AM, icen...@aosc.io wrote:
> 在 2017-04-22 08:22,Florian Fainelli 写道:
>> On 04/21/2017 04:24 PM, Icenowy Zheng wrote:
>>> From: Icenowy Zheng 
>>>
>>> Some RTL8211E Ethernet PHY have an issue that needs a workaround
>>> indicated with device tree.
>>>
>>> Add the binding for a property that indicates this workaround.
>>>
>>> Signed-off-by: Icenowy Zheng 
>>> ---
>>>  .../devicetree/bindings/net/realtek,rtl8211e.txt   | 22
>>> ++
>>>  1 file changed, 22 insertions(+)
>>>  create mode 100644
>>> Documentation/devicetree/bindings/net/realtek,rtl8211e.txt
>>>
>>> diff --git
>>> a/Documentation/devicetree/bindings/net/realtek,rtl8211e.txt
>>> b/Documentation/devicetree/bindings/net/realtek,rtl8211e.txt
>>> new file mode 100644
>>> index ..c1913301bfe8
>>> --- /dev/null
>>> +++ b/Documentation/devicetree/bindings/net/realtek,rtl8211e.txt
>>> @@ -0,0 +1,22 @@
>>> +Realtek RTL8211E Ethernet PHY
>>> +
>>> +One batch of RTL8211E is slight broken, that needs some special
 (and
>>> +full of magic numbers) tweaking in order to make GbE to operate
>>> properly.
>>> +The only well-known board that used the broken batch is Pine64+.
>>> +Configure it through an Ethernet OF device node.
>>> +
>>> +Optional properties:
>>> +
>>> +- realtek,disable-rx-delay:
>>> +  If set, RX delay will be completely disabled (according to
>>> Realtek). This
>>> +  will affect the performance on non-broken boards.
>>> +  default: do not disable RX delay.
>>
>> Please don't introduce custom properties to do that, instead correct
>> specify the "phy-mode" such that it is e.g: "rgmii-txid" which
 indicates
>> that there should be no RX internal delay, but a TX internal delay
 added
>> by the PHY.
>
> Checked the document, the meaning of "rgmii-txid" is not correct
 here.
>
> This doesn't effect the MAC, and the MAC should still add TX delay.
>
> The definition of "rgmii-txid" in
> Documentation/devicetree/binding/net/ethernet.txt is "RGMII with
> internal TX delay provided by the PHY, the MAC should not add an TX
 delay
> in this case". However, this do not indicate that the MAC doesn't add
 TX
> delay; in fact that just totally disabled the PHY to provide the RX
 delay.
> MAC still should to add delay on both TX/RX, which is the semantic of
> standard "rgmii".
>
> So I cannot used "rgmii-txid" here, but should continue to use this
> custom property.
> 
> Sorry for replying an old email, but it's because the driver of the MAC I
> used is merged (dwmac-sun8i).
> 
> The driver of the MAC currently only supports "mii", "rmii", and "rgmii",
> and according to the SoC's user manual, the MAC cannot has its delays
> disabled.
> 
> How should it handle this "rgmii-txid" here? Just treat it as "rgmii"?

Considering there are no configurable delays on the MAC side, all you
can do is treat all RGMII variants the same by configuring the MAC for
RGMII mode (with no additional capabilities and as opposed to MII, RMII
which are other clocking/data pins modes) and let the PHY configure the
delay accordingly based on "phy-mode"/phy_interface_t. You can use
phy_interface_is_rgmii() as a helper function to cover all 4 variants.
-- 
Florian


Re: [linux-sunxi] Re: [PATCH 2/4] dt-bindings: add binding for RTL8211E Ethernet PHY

2017-08-21 Thread icenowy

在 2017-05-05 02:29,Florian Fainelli 写道:

On 05/04/2017 11:26 AM, Icenowy Zheng wrote:



于 2017年5月5日 GMT+08:00 上午2:21:29, Florian Fainelli 
 写到:

On 05/04/2017 11:10 AM, icen...@aosc.io wrote:

在 2017-04-22 08:22,Florian Fainelli 写道:

On 04/21/2017 04:24 PM, Icenowy Zheng wrote:

From: Icenowy Zheng 

Some RTL8211E Ethernet PHY have an issue that needs a workaround
indicated with device tree.

Add the binding for a property that indicates this workaround.

Signed-off-by: Icenowy Zheng 
---
 .../devicetree/bindings/net/realtek,rtl8211e.txt   | 22
++
 1 file changed, 22 insertions(+)
 create mode 100644
Documentation/devicetree/bindings/net/realtek,rtl8211e.txt

diff --git
a/Documentation/devicetree/bindings/net/realtek,rtl8211e.txt
b/Documentation/devicetree/bindings/net/realtek,rtl8211e.txt
new file mode 100644
index ..c1913301bfe8
--- /dev/null
+++ b/Documentation/devicetree/bindings/net/realtek,rtl8211e.txt
@@ -0,0 +1,22 @@
+Realtek RTL8211E Ethernet PHY
+
+One batch of RTL8211E is slight broken, that needs some special

(and

+full of magic numbers) tweaking in order to make GbE to operate
properly.
+The only well-known board that used the broken batch is Pine64+.
+Configure it through an Ethernet OF device node.
+
+Optional properties:
+
+- realtek,disable-rx-delay:
+  If set, RX delay will be completely disabled (according to
Realtek). This
+  will affect the performance on non-broken boards.
+  default: do not disable RX delay.


Please don't introduce custom properties to do that, instead 
correct

specify the "phy-mode" such that it is e.g: "rgmii-txid" which

indicates

that there should be no RX internal delay, but a TX internal delay

added

by the PHY.


Checked the document, the meaning of "rgmii-txid" is not correct

here.


This doesn't effect the MAC, and the MAC should still add TX delay.

The definition of "rgmii-txid" in
Documentation/devicetree/binding/net/ethernet.txt is "RGMII with
internal TX delay provided by the PHY, the MAC should not add an TX

delay
in this case". However, this do not indicate that the MAC doesn't 
add

TX

delay; in fact that just totally disabled the PHY to provide the RX

delay.
MAC still should to add delay on both TX/RX, which is the semantic 
of

standard "rgmii".

So I cannot used "rgmii-txid" here, but should continue to use this
custom property.


Sorry for replying an old email, but it's because the driver of the MAC 
I

used is merged (dwmac-sun8i).

The driver of the MAC currently only supports "mii", "rmii", and 
"rgmii",

and according to the SoC's user manual, the MAC cannot has its delays
disabled.

How should it handle this "rgmii-txid" here? Just treat it as "rgmii"?



This is absolutely not a correct understanding. The 'phy-mode' 
property

defines the contract between the MAC and PHY. It is defined from the
PHY's perspective of the delay, which means that the MAC has to 
either
also provide an adequate delay (RX or TX) or not (RX or TX). So if 
you

specified 'phy-mode' = "rgmii" this means that the MAC needs to adds
the
TX and RX delay, so implcitly this means that your MAC operates in


The MAC doesn't lose its responsibility to tweak RX/TX delays with 
this property set.


No it does not but now there is no contract binding the MAC and the PHY
together was to what an appropriate delay configuration there should 
be.
This is why using phydev->interface (directly inherited from 
'phy-mode')

is important because it binds the PHY and MAC on a contract.



This situation is that, the PHY's RX delay tweaking function is 
broken. But it doesn't mean that the PHY can take over *all* 
responsibility to tweak TX, it still needs MAC to tweak TX.


Correct, so what part of my answer was not clear in that sense?




"rgmii-id", if the property was defined from the perspective of the
MAC,
which it is not.

Both the Ethernet PHY driver and the MAC driver need to take care of
adjusting the delays based on the phydev->interface value.

The property you are introducing here is absolutely not appropriate
because it is entirely redundant with what 'phy-mode' already 
defines,

except the latter also covers a lot more cases.


Re: [linux-sunxi] Re: [PATCH 2/4] dt-bindings: add binding for RTL8211E Ethernet PHY

2017-05-04 Thread Florian Fainelli
On 05/04/2017 11:26 AM, Icenowy Zheng wrote:
> 
> 
> 于 2017年5月5日 GMT+08:00 上午2:21:29, Florian Fainelli  写到:
>> On 05/04/2017 11:10 AM, icen...@aosc.io wrote:
>>> 在 2017-04-22 08:22,Florian Fainelli 写道:
 On 04/21/2017 04:24 PM, Icenowy Zheng wrote:
> From: Icenowy Zheng 
>
> Some RTL8211E Ethernet PHY have an issue that needs a workaround
> indicated with device tree.
>
> Add the binding for a property that indicates this workaround.
>
> Signed-off-by: Icenowy Zheng 
> ---
>  .../devicetree/bindings/net/realtek,rtl8211e.txt   | 22
> ++
>  1 file changed, 22 insertions(+)
>  create mode 100644
> Documentation/devicetree/bindings/net/realtek,rtl8211e.txt
>
> diff --git
> a/Documentation/devicetree/bindings/net/realtek,rtl8211e.txt
> b/Documentation/devicetree/bindings/net/realtek,rtl8211e.txt
> new file mode 100644
> index ..c1913301bfe8
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/net/realtek,rtl8211e.txt
> @@ -0,0 +1,22 @@
> +Realtek RTL8211E Ethernet PHY
> +
> +One batch of RTL8211E is slight broken, that needs some special
>> (and
> +full of magic numbers) tweaking in order to make GbE to operate
> properly.
> +The only well-known board that used the broken batch is Pine64+.
> +Configure it through an Ethernet OF device node.
> +
> +Optional properties:
> +
> +- realtek,disable-rx-delay:
> +  If set, RX delay will be completely disabled (according to
> Realtek). This
> +  will affect the performance on non-broken boards.
> +  default: do not disable RX delay.

 Please don't introduce custom properties to do that, instead correct
 specify the "phy-mode" such that it is e.g: "rgmii-txid" which
>> indicates
 that there should be no RX internal delay, but a TX internal delay
>> added
 by the PHY.
>>>
>>> Checked the document, the meaning of "rgmii-txid" is not correct
>> here.
>>>
>>> This doesn't effect the MAC, and the MAC should still add TX delay.
>>>
>>> The definition of "rgmii-txid" in
>>> Documentation/devicetree/binding/net/ethernet.txt is "RGMII with
>>> internal TX delay provided by the PHY, the MAC should not add an TX
>> delay
>>> in this case". However, this do not indicate that the MAC doesn't add
>> TX
>>> delay; in fact that just totally disabled the PHY to provide the RX
>> delay.
>>> MAC still should to add delay on both TX/RX, which is the semantic of
>>> standard "rgmii".
>>>
>>> So I cannot used "rgmii-txid" here, but should continue to use this
>>> custom property.
>>
>> This is absolutely not a correct understanding. The 'phy-mode' property
>> defines the contract between the MAC and PHY. It is defined from the
>> PHY's perspective of the delay, which means that the MAC has to either
>> also provide an adequate delay (RX or TX) or not (RX or TX). So if you
>> specified 'phy-mode' = "rgmii" this means that the MAC needs to adds
>> the
>> TX and RX delay, so implcitly this means that your MAC operates in
> 
> The MAC doesn't lose its responsibility to tweak RX/TX delays with this 
> property set.

No it does not but now there is no contract binding the MAC and the PHY
together was to what an appropriate delay configuration there should be.
This is why using phydev->interface (directly inherited from 'phy-mode')
is important because it binds the PHY and MAC on a contract.

> 
> This situation is that, the PHY's RX delay tweaking function is broken. But 
> it doesn't mean that the PHY can take over *all* responsibility to tweak TX, 
> it still needs MAC to tweak TX.

Correct, so what part of my answer was not clear in that sense?

> 
>> "rgmii-id", if the property was defined from the perspective of the
>> MAC,
>> which it is not.
>>
>> Both the Ethernet PHY driver and the MAC driver need to take care of
>> adjusting the delays based on the phydev->interface value.
>>
>> The property you are introducing here is absolutely not appropriate
>> because it is entirely redundant with what 'phy-mode' already defines,
>> except the latter also covers a lot more cases.


-- 
Florian


Re: [linux-sunxi] Re: [PATCH 2/4] dt-bindings: add binding for RTL8211E Ethernet PHY

2017-05-04 Thread Icenowy Zheng


于 2017年5月5日 GMT+08:00 上午2:21:29, Florian Fainelli  写到:
>On 05/04/2017 11:10 AM, icen...@aosc.io wrote:
>> 在 2017-04-22 08:22,Florian Fainelli 写道:
>>> On 04/21/2017 04:24 PM, Icenowy Zheng wrote:
 From: Icenowy Zheng 

 Some RTL8211E Ethernet PHY have an issue that needs a workaround
 indicated with device tree.

 Add the binding for a property that indicates this workaround.

 Signed-off-by: Icenowy Zheng 
 ---
  .../devicetree/bindings/net/realtek,rtl8211e.txt   | 22
 ++
  1 file changed, 22 insertions(+)
  create mode 100644
 Documentation/devicetree/bindings/net/realtek,rtl8211e.txt

 diff --git
 a/Documentation/devicetree/bindings/net/realtek,rtl8211e.txt
 b/Documentation/devicetree/bindings/net/realtek,rtl8211e.txt
 new file mode 100644
 index ..c1913301bfe8
 --- /dev/null
 +++ b/Documentation/devicetree/bindings/net/realtek,rtl8211e.txt
 @@ -0,0 +1,22 @@
 +Realtek RTL8211E Ethernet PHY
 +
 +One batch of RTL8211E is slight broken, that needs some special
>(and
 +full of magic numbers) tweaking in order to make GbE to operate
 properly.
 +The only well-known board that used the broken batch is Pine64+.
 +Configure it through an Ethernet OF device node.
 +
 +Optional properties:
 +
 +- realtek,disable-rx-delay:
 +  If set, RX delay will be completely disabled (according to
 Realtek). This
 +  will affect the performance on non-broken boards.
 +  default: do not disable RX delay.
>>>
>>> Please don't introduce custom properties to do that, instead correct
>>> specify the "phy-mode" such that it is e.g: "rgmii-txid" which
>indicates
>>> that there should be no RX internal delay, but a TX internal delay
>added
>>> by the PHY.
>> 
>> Checked the document, the meaning of "rgmii-txid" is not correct
>here.
>> 
>> This doesn't effect the MAC, and the MAC should still add TX delay.
>> 
>> The definition of "rgmii-txid" in
>> Documentation/devicetree/binding/net/ethernet.txt is "RGMII with
>> internal TX delay provided by the PHY, the MAC should not add an TX
>delay
>> in this case". However, this do not indicate that the MAC doesn't add
>TX
>> delay; in fact that just totally disabled the PHY to provide the RX
>delay.
>> MAC still should to add delay on both TX/RX, which is the semantic of
>> standard "rgmii".
>> 
>> So I cannot used "rgmii-txid" here, but should continue to use this
>> custom property.
>
>This is absolutely not a correct understanding. The 'phy-mode' property
>defines the contract between the MAC and PHY. It is defined from the
>PHY's perspective of the delay, which means that the MAC has to either
>also provide an adequate delay (RX or TX) or not (RX or TX). So if you
>specified 'phy-mode' = "rgmii" this means that the MAC needs to adds
>the
>TX and RX delay, so implcitly this means that your MAC operates in

The MAC doesn't lose its responsibility to tweak RX/TX delays with this 
property set.

This situation is that, the PHY's RX delay tweaking function is broken. But it 
doesn't mean that the PHY can take over *all* responsibility to tweak TX, it 
still needs MAC to tweak TX.

>"rgmii-id", if the property was defined from the perspective of the
>MAC,
>which it is not.
>
>Both the Ethernet PHY driver and the MAC driver need to take care of
>adjusting the delays based on the phydev->interface value.
>
>The property you are introducing here is absolutely not appropriate
>because it is entirely redundant with what 'phy-mode' already defines,
>except the latter also covers a lot more cases.


Re: [PATCH 2/4] dt-bindings: add binding for RTL8211E Ethernet PHY

2017-05-04 Thread Florian Fainelli
On 05/04/2017 11:10 AM, icen...@aosc.io wrote:
> 在 2017-04-22 08:22,Florian Fainelli 写道:
>> On 04/21/2017 04:24 PM, Icenowy Zheng wrote:
>>> From: Icenowy Zheng 
>>>
>>> Some RTL8211E Ethernet PHY have an issue that needs a workaround
>>> indicated with device tree.
>>>
>>> Add the binding for a property that indicates this workaround.
>>>
>>> Signed-off-by: Icenowy Zheng 
>>> ---
>>>  .../devicetree/bindings/net/realtek,rtl8211e.txt   | 22
>>> ++
>>>  1 file changed, 22 insertions(+)
>>>  create mode 100644
>>> Documentation/devicetree/bindings/net/realtek,rtl8211e.txt
>>>
>>> diff --git
>>> a/Documentation/devicetree/bindings/net/realtek,rtl8211e.txt
>>> b/Documentation/devicetree/bindings/net/realtek,rtl8211e.txt
>>> new file mode 100644
>>> index ..c1913301bfe8
>>> --- /dev/null
>>> +++ b/Documentation/devicetree/bindings/net/realtek,rtl8211e.txt
>>> @@ -0,0 +1,22 @@
>>> +Realtek RTL8211E Ethernet PHY
>>> +
>>> +One batch of RTL8211E is slight broken, that needs some special (and
>>> +full of magic numbers) tweaking in order to make GbE to operate
>>> properly.
>>> +The only well-known board that used the broken batch is Pine64+.
>>> +Configure it through an Ethernet OF device node.
>>> +
>>> +Optional properties:
>>> +
>>> +- realtek,disable-rx-delay:
>>> +  If set, RX delay will be completely disabled (according to
>>> Realtek). This
>>> +  will affect the performance on non-broken boards.
>>> +  default: do not disable RX delay.
>>
>> Please don't introduce custom properties to do that, instead correct
>> specify the "phy-mode" such that it is e.g: "rgmii-txid" which indicates
>> that there should be no RX internal delay, but a TX internal delay added
>> by the PHY.
> 
> Checked the document, the meaning of "rgmii-txid" is not correct here.
> 
> This doesn't effect the MAC, and the MAC should still add TX delay.
> 
> The definition of "rgmii-txid" in
> Documentation/devicetree/binding/net/ethernet.txt is "RGMII with
> internal TX delay provided by the PHY, the MAC should not add an TX delay
> in this case". However, this do not indicate that the MAC doesn't add TX
> delay; in fact that just totally disabled the PHY to provide the RX delay.
> MAC still should to add delay on both TX/RX, which is the semantic of
> standard "rgmii".
> 
> So I cannot used "rgmii-txid" here, but should continue to use this
> custom property.

This is absolutely not a correct understanding. The 'phy-mode' property
defines the contract between the MAC and PHY. It is defined from the
PHY's perspective of the delay, which means that the MAC has to either
also provide an adequate delay (RX or TX) or not (RX or TX). So if you
specified 'phy-mode' = "rgmii" this means that the MAC needs to adds the
TX and RX delay, so implcitly this means that your MAC operates in
"rgmii-id", if the property was defined from the perspective of the MAC,
which it is not.

Both the Ethernet PHY driver and the MAC driver need to take care of
adjusting the delays based on the phydev->interface value.

The property you are introducing here is absolutely not appropriate
because it is entirely redundant with what 'phy-mode' already defines,
except the latter also covers a lot more cases.
-- 
Florian


Re: [PATCH 2/4] dt-bindings: add binding for RTL8211E Ethernet PHY

2017-05-04 Thread icenowy

在 2017-04-22 08:22,Florian Fainelli 写道:

On 04/21/2017 04:24 PM, Icenowy Zheng wrote:

From: Icenowy Zheng 

Some RTL8211E Ethernet PHY have an issue that needs a workaround
indicated with device tree.

Add the binding for a property that indicates this workaround.

Signed-off-by: Icenowy Zheng 
---
 .../devicetree/bindings/net/realtek,rtl8211e.txt   | 22 
++

 1 file changed, 22 insertions(+)
 create mode 100644 
Documentation/devicetree/bindings/net/realtek,rtl8211e.txt


diff --git 
a/Documentation/devicetree/bindings/net/realtek,rtl8211e.txt 
b/Documentation/devicetree/bindings/net/realtek,rtl8211e.txt

new file mode 100644
index ..c1913301bfe8
--- /dev/null
+++ b/Documentation/devicetree/bindings/net/realtek,rtl8211e.txt
@@ -0,0 +1,22 @@
+Realtek RTL8211E Ethernet PHY
+
+One batch of RTL8211E is slight broken, that needs some special (and
+full of magic numbers) tweaking in order to make GbE to operate 
properly.

+The only well-known board that used the broken batch is Pine64+.
+Configure it through an Ethernet OF device node.
+
+Optional properties:
+
+- realtek,disable-rx-delay:
+  If set, RX delay will be completely disabled (according to 
Realtek). This

+  will affect the performance on non-broken boards.
+  default: do not disable RX delay.


Please don't introduce custom properties to do that, instead correct
specify the "phy-mode" such that it is e.g: "rgmii-txid" which 
indicates
that there should be no RX internal delay, but a TX internal delay 
added

by the PHY.


Checked the document, the meaning of "rgmii-txid" is not correct here.

This doesn't effect the MAC, and the MAC should still add TX delay.

The definition of "rgmii-txid" in
Documentation/devicetree/binding/net/ethernet.txt is "RGMII with
internal TX delay provided by the PHY, the MAC should not add an TX 
delay

in this case". However, this do not indicate that the MAC doesn't add TX
delay; in fact that just totally disabled the PHY to provide the RX 
delay.

MAC still should to add delay on both TX/RX, which is the semantic of
standard "rgmii".

So I cannot used "rgmii-txid" here, but should continue to use this
custom property.


Re: [PATCH 2/4] dt-bindings: add binding for RTL8211E Ethernet PHY

2017-04-21 Thread icenowy

在 2017-04-22 08:22,Florian Fainelli 写道:

On 04/21/2017 04:24 PM, Icenowy Zheng wrote:

From: Icenowy Zheng 

Some RTL8211E Ethernet PHY have an issue that needs a workaround
indicated with device tree.

Add the binding for a property that indicates this workaround.

Signed-off-by: Icenowy Zheng 
---
 .../devicetree/bindings/net/realtek,rtl8211e.txt   | 22 
++

 1 file changed, 22 insertions(+)
 create mode 100644 
Documentation/devicetree/bindings/net/realtek,rtl8211e.txt


diff --git 
a/Documentation/devicetree/bindings/net/realtek,rtl8211e.txt 
b/Documentation/devicetree/bindings/net/realtek,rtl8211e.txt

new file mode 100644
index ..c1913301bfe8
--- /dev/null
+++ b/Documentation/devicetree/bindings/net/realtek,rtl8211e.txt
@@ -0,0 +1,22 @@
+Realtek RTL8211E Ethernet PHY
+
+One batch of RTL8211E is slight broken, that needs some special (and
+full of magic numbers) tweaking in order to make GbE to operate 
properly.

+The only well-known board that used the broken batch is Pine64+.
+Configure it through an Ethernet OF device node.
+
+Optional properties:
+
+- realtek,disable-rx-delay:
+  If set, RX delay will be completely disabled (according to 
Realtek). This

+  will affect the performance on non-broken boards.
+  default: do not disable RX delay.


Please don't introduce custom properties to do that, instead correct
specify the "phy-mode" such that it is e.g: "rgmii-txid" which 
indicates
that there should be no RX internal delay, but a TX internal delay 
added

by the PHY.


According to Realtek and Pine64 people, set that register is equal to
hardwire RDDLY line to low.

Is it the standard definition of RGMII-TXID?

(P.S. as it's only provided as a workaround, there's no implementation
known for RGMII-RXID and RGMII-ID)

Thanks,
Icenowy


Re: [PATCH 2/4] dt-bindings: add binding for RTL8211E Ethernet PHY

2017-04-21 Thread Florian Fainelli
On 04/21/2017 04:24 PM, Icenowy Zheng wrote:
> From: Icenowy Zheng 
> 
> Some RTL8211E Ethernet PHY have an issue that needs a workaround
> indicated with device tree.
> 
> Add the binding for a property that indicates this workaround.
> 
> Signed-off-by: Icenowy Zheng 
> ---
>  .../devicetree/bindings/net/realtek,rtl8211e.txt   | 22 
> ++
>  1 file changed, 22 insertions(+)
>  create mode 100644 Documentation/devicetree/bindings/net/realtek,rtl8211e.txt
> 
> diff --git a/Documentation/devicetree/bindings/net/realtek,rtl8211e.txt 
> b/Documentation/devicetree/bindings/net/realtek,rtl8211e.txt
> new file mode 100644
> index ..c1913301bfe8
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/net/realtek,rtl8211e.txt
> @@ -0,0 +1,22 @@
> +Realtek RTL8211E Ethernet PHY
> +
> +One batch of RTL8211E is slight broken, that needs some special (and
> +full of magic numbers) tweaking in order to make GbE to operate properly.
> +The only well-known board that used the broken batch is Pine64+.
> +Configure it through an Ethernet OF device node.
> +
> +Optional properties:
> +
> +- realtek,disable-rx-delay:
> +  If set, RX delay will be completely disabled (according to Realtek). This
> +  will affect the performance on non-broken boards.
> +  default: do not disable RX delay.

Please don't introduce custom properties to do that, instead correct
specify the "phy-mode" such that it is e.g: "rgmii-txid" which indicates
that there should be no RX internal delay, but a TX internal delay added
by the PHY.
-- 
Florian


[PATCH 2/4] dt-bindings: add binding for RTL8211E Ethernet PHY

2017-04-21 Thread Icenowy Zheng
From: Icenowy Zheng 

Some RTL8211E Ethernet PHY have an issue that needs a workaround
indicated with device tree.

Add the binding for a property that indicates this workaround.

Signed-off-by: Icenowy Zheng 
---
 .../devicetree/bindings/net/realtek,rtl8211e.txt   | 22 ++
 1 file changed, 22 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/net/realtek,rtl8211e.txt

diff --git a/Documentation/devicetree/bindings/net/realtek,rtl8211e.txt 
b/Documentation/devicetree/bindings/net/realtek,rtl8211e.txt
new file mode 100644
index ..c1913301bfe8
--- /dev/null
+++ b/Documentation/devicetree/bindings/net/realtek,rtl8211e.txt
@@ -0,0 +1,22 @@
+Realtek RTL8211E Ethernet PHY
+
+One batch of RTL8211E is slight broken, that needs some special (and
+full of magic numbers) tweaking in order to make GbE to operate properly.
+The only well-known board that used the broken batch is Pine64+.
+Configure it through an Ethernet OF device node.
+
+Optional properties:
+
+- realtek,disable-rx-delay:
+  If set, RX delay will be completely disabled (according to Realtek). This
+  will affect the performance on non-broken boards.
+  default: do not disable RX delay.
+
+Examples:
+Pine64+ with broken RTL8211E:
+ {
+   ext_phy: ethernet-phy@0 {
+   reg = <0>;
+   realtek,disable-rx-delay;
+   };
+};
-- 
2.12.2