Re: [PATCH] [v3] power/fsl: add MDIO dt binding for FMan
Hello Scott, On 01/07/2015 07:12 PM, Scott Wood wrote: On Wed, 2015-01-07 at 13:44 -0600, Emil Medve wrote: Hello Scott, On 01/07/2015 12:05 PM, Scott Wood wrote: On Tue, 2015-01-06 at 23:29 -0600, Xie Shaohui-B21989 wrote: +- interrupts + Usage: optional + Value type: prop-encoded-array + Definition: Event interrupt of external MDIO controller. + 1 Gb/s MDIO and 10 Gb/s MDIO has one interrupt respectively. I'm confused by respectively here. Does fsl,fman-memac-mdio have two interrupts (one for 1 Gb/s and one for 10 Gb/s)? [S.H] We use two MDIO controllers for external PHY management. One for 1 Gb/s, One for 10 Gb/s, and two MDIO interrupts connected to MPIC. If there can be two interrupts you need to make that clear and specify the order. Is it possible for one MDIO controller to have an interrupt connected but not the other, on the same system? How would you represent that in the device tree? If there are two MDIO controllers why are they in the same node? Historically (FMan v2 and even before/legacy) we've had each MAC include an MDIO controller, but only one MDIO controller per MAC type/speed (1 Gb/s vs 10 Gb/s) is pinned out and all the same speed PHY(s) are connected to the respective MDIO controllers. As such the first 1 Gb/s MAC/MDIO controller is used to manage all the 1 Gb/s PHY(s) and the first 10 Gb/s MAC/MDIO controller is used to manage all the 10 Gb/s PHY(s). Each MDIO controller has the ability to generate interrupts but only pinned out MDIO controllers are hooked up to the MPIC (as such the talk about two interrupts) (Each MAC has also integrated a SERDES/TBI/internal PHY that is connected to the local MDIO controller) As you can imagine this creates a number of problems in a partitioning scenario (and not just, imagine RCWs where the first MAC is not used/enabled). In order to help a bit (but not quite enough), in FMan v3, two additional MDIO controllers (one for 1 the Gb/s PHY(s) and one for 1 the 10 Gb/s PHY(s)) have been integrated that are not associated with any MAC and these are the pinned out MDIO controllers on such SoC(s) (chassis v2) I'm happy to hear that. Is that what is meant by external here? External doesn't mean external to the MAC nodes. External doesn't even properly apply to the MDIO controller(s) at all but to the PHY(s). I thought it meant external to the SoC. Is this the term used by hardware documentation? The documentation (mostly chip errata documents) refers to external/internal MDIO accesses and as on FMan v3 external PHY accesses are always made via these extra MDIO controllers (pinned oud) and the internal SERDES PHY accesses are always made via the in-MAC MDIO controllers some level of confusion is easy to be achieved. All the MDIO controllers are identical whether they are in-MAC or standalone I'd have called it independent or similar. To make things even more confusing, some documents call these extra MDIO controllers dedicated Cheers, Does optional mean it's used if and only if external MDIO is used, or is it optional even with external MDIO? I see it's not present in the example -- do we not have a real example that has the interrupt? [S.H] optional means it's available on hardware, but MDIO driver does not use interrupt. So we don't have a real example. record type=brokenThe device tree describes the hardware, not the driver/record Anyway, only two MDIO nodes (out of 4 to 14) would have an interrupt property describing exactly one interrupt. What language should we use to convey this situation So the answer is that there will not be more than one MDIO controller per MDIO node, or more than one interrupt per MDIO node? In that case just get rid of the confusing respectively sentence -- and always describe the interrupt if it exists in hardware. -Scott . ___ Linuxppc-dev mailing list Linuxppc-dev@lists.ozlabs.org https://lists.ozlabs.org/listinfo/linuxppc-dev
RE: [PATCH] [v3] power/fsl: add MDIO dt binding for FMan
-Original Message- From: Wood Scott-B07421 Sent: Thursday, January 08, 2015 9:13 AM To: Medve Emilian-EMMEDVE1 Cc: Xie Shaohui-B21989; linuxppc-dev@lists.ozlabs.org; devicet...@vger.kernel.org Subject: Re: [PATCH] [v3] power/fsl: add MDIO dt binding for FMan On Wed, 2015-01-07 at 13:44 -0600, Emil Medve wrote: Hello Scott, On 01/07/2015 12:05 PM, Scott Wood wrote: On Tue, 2015-01-06 at 23:29 -0600, Xie Shaohui-B21989 wrote: +- interrupts + Usage: optional + Value type: prop-encoded-array + Definition: Event interrupt of external MDIO controller. + 1 Gb/s MDIO and 10 Gb/s MDIO has one interrupt respectively. I'm confused by respectively here. Does fsl,fman-memac-mdio have two interrupts (one for 1 Gb/s and one for 10 Gb/s)? [S.H] We use two MDIO controllers for external PHY management. One for 1 Gb/s, One for 10 Gb/s, and two MDIO interrupts connected to MPIC. If there can be two interrupts you need to make that clear and specify the order. Is it possible for one MDIO controller to have an interrupt connected but not the other, on the same system? How would you represent that in the device tree? If there are two MDIO controllers why are they in the same node? Historically (FMan v2 and even before/legacy) we've had each MAC include an MDIO controller, but only one MDIO controller per MAC type/speed (1 Gb/s vs 10 Gb/s) is pinned out and all the same speed PHY(s) are connected to the respective MDIO controllers. As such the first 1 Gb/s MAC/MDIO controller is used to manage all the 1 Gb/s PHY(s) and the first 10 Gb/s MAC/MDIO controller is used to manage all the 10 Gb/s PHY(s). Each MDIO controller has the ability to generate interrupts but only pinned out MDIO controllers are hooked up to the MPIC (as such the talk about two interrupts) (Each MAC has also integrated a SERDES/TBI/internal PHY that is connected to the local MDIO controller) As you can imagine this creates a number of problems in a partitioning scenario (and not just, imagine RCWs where the first MAC is not used/enabled). In order to help a bit (but not quite enough), in FMan v3, two additional MDIO controllers (one for 1 the Gb/s PHY(s) and one for 1 the 10 Gb/s PHY(s)) have been integrated that are not associated with any MAC and these are the pinned out MDIO controllers on such SoC(s) (chassis v2) I'm happy to hear that. Is that what is meant by external here? I thought it meant external to the SoC. Is this the term used by hardware documentation? [S.H] Yes. external internal are used by hardware documentation. I'd have called it independent or similar. Does optional mean it's used if and only if external MDIO is used, or is it optional even with external MDIO? I see it's not present in the example -- do we not have a real example that has the interrupt? [S.H] optional means it's available on hardware, but MDIO driver does not use interrupt. So we don't have a real example. record type=brokenThe device tree describes the hardware, not the driver/record Anyway, only two MDIO nodes (out of 4 to 14) would have an interrupt property describing exactly one interrupt. What language should we use to convey this situation So the answer is that there will not be more than one MDIO controller per MDIO node, or more than one interrupt per MDIO node? [S.H] Yes, one MDIO controller per MDIO node, and one interrupt per external MDIO node. In that case just get rid of the confusing respectively sentence -- and always describe the interrupt if it exists in hardware. [S.H] OK. Thanks! Shaohui ___ Linuxppc-dev mailing list Linuxppc-dev@lists.ozlabs.org https://lists.ozlabs.org/listinfo/linuxppc-dev
Re: [PATCH] [v3] power/fsl: add MDIO dt binding for FMan
On Wed, 2015-01-07 at 13:44 -0600, Emil Medve wrote: Hello Scott, On 01/07/2015 12:05 PM, Scott Wood wrote: On Tue, 2015-01-06 at 23:29 -0600, Xie Shaohui-B21989 wrote: +- interrupts + Usage: optional + Value type: prop-encoded-array + Definition: Event interrupt of external MDIO controller. + 1 Gb/s MDIO and 10 Gb/s MDIO has one interrupt respectively. I'm confused by respectively here. Does fsl,fman-memac-mdio have two interrupts (one for 1 Gb/s and one for 10 Gb/s)? [S.H] We use two MDIO controllers for external PHY management. One for 1 Gb/s, One for 10 Gb/s, and two MDIO interrupts connected to MPIC. If there can be two interrupts you need to make that clear and specify the order. Is it possible for one MDIO controller to have an interrupt connected but not the other, on the same system? How would you represent that in the device tree? If there are two MDIO controllers why are they in the same node? Historically (FMan v2 and even before/legacy) we've had each MAC include an MDIO controller, but only one MDIO controller per MAC type/speed (1 Gb/s vs 10 Gb/s) is pinned out and all the same speed PHY(s) are connected to the respective MDIO controllers. As such the first 1 Gb/s MAC/MDIO controller is used to manage all the 1 Gb/s PHY(s) and the first 10 Gb/s MAC/MDIO controller is used to manage all the 10 Gb/s PHY(s). Each MDIO controller has the ability to generate interrupts but only pinned out MDIO controllers are hooked up to the MPIC (as such the talk about two interrupts) (Each MAC has also integrated a SERDES/TBI/internal PHY that is connected to the local MDIO controller) As you can imagine this creates a number of problems in a partitioning scenario (and not just, imagine RCWs where the first MAC is not used/enabled). In order to help a bit (but not quite enough), in FMan v3, two additional MDIO controllers (one for 1 the Gb/s PHY(s) and one for 1 the 10 Gb/s PHY(s)) have been integrated that are not associated with any MAC and these are the pinned out MDIO controllers on such SoC(s) (chassis v2) I'm happy to hear that. Is that what is meant by external here? I thought it meant external to the SoC. Is this the term used by hardware documentation? I'd have called it independent or similar. Does optional mean it's used if and only if external MDIO is used, or is it optional even with external MDIO? I see it's not present in the example -- do we not have a real example that has the interrupt? [S.H] optional means it's available on hardware, but MDIO driver does not use interrupt. So we don't have a real example. record type=brokenThe device tree describes the hardware, not the driver/record Anyway, only two MDIO nodes (out of 4 to 14) would have an interrupt property describing exactly one interrupt. What language should we use to convey this situation So the answer is that there will not be more than one MDIO controller per MDIO node, or more than one interrupt per MDIO node? In that case just get rid of the confusing respectively sentence -- and always describe the interrupt if it exists in hardware. -Scott ___ Linuxppc-dev mailing list Linuxppc-dev@lists.ozlabs.org https://lists.ozlabs.org/listinfo/linuxppc-dev
Re: [PATCH] [v3] power/fsl: add MDIO dt binding for FMan
On Tue, 2015-01-06 at 23:29 -0600, Xie Shaohui-B21989 wrote: +- interrupts + Usage: optional + Value type: prop-encoded-array + Definition: Event interrupt of external MDIO controller. + 1 Gb/s MDIO and 10 Gb/s MDIO has one interrupt respectively. I'm confused by respectively here. Does fsl,fman-memac-mdio have two interrupts (one for 1 Gb/s and one for 10 Gb/s)? [S.H] We use two MDIO controllers for external PHY management. One for 1 Gb/s, One for 10 Gb/s, and two MDIO interrupts connected to MPIC. If there can be two interrupts you need to make that clear and specify the order. Is it possible for one MDIO controller to have an interrupt connected but not the other, on the same system? How would you represent that in the device tree? If there are two MDIO controllers why are they in the same node? Does optional mean it's used if and only if external MDIO is used, or is it optional even with external MDIO? I see it's not present in the example -- do we not have a real example that has the interrupt? [S.H] optional means it's available on hardware, but MDIO driver does not use interrupt. So we don't have a real example. record type=brokenThe device tree describes the hardware, not the driver/record -Scott ___ Linuxppc-dev mailing list Linuxppc-dev@lists.ozlabs.org https://lists.ozlabs.org/listinfo/linuxppc-dev
Re: [PATCH] [v3] power/fsl: add MDIO dt binding for FMan
Hello Scott, On 01/07/2015 12:05 PM, Scott Wood wrote: On Tue, 2015-01-06 at 23:29 -0600, Xie Shaohui-B21989 wrote: +- interrupts + Usage: optional + Value type: prop-encoded-array + Definition: Event interrupt of external MDIO controller. + 1 Gb/s MDIO and 10 Gb/s MDIO has one interrupt respectively. I'm confused by respectively here. Does fsl,fman-memac-mdio have two interrupts (one for 1 Gb/s and one for 10 Gb/s)? [S.H] We use two MDIO controllers for external PHY management. One for 1 Gb/s, One for 10 Gb/s, and two MDIO interrupts connected to MPIC. If there can be two interrupts you need to make that clear and specify the order. Is it possible for one MDIO controller to have an interrupt connected but not the other, on the same system? How would you represent that in the device tree? If there are two MDIO controllers why are they in the same node? Historically (FMan v2 and even before/legacy) we've had each MAC include an MDIO controller, but only one MDIO controller per MAC type/speed (1 Gb/s vs 10 Gb/s) is pinned out and all the same speed PHY(s) are connected to the respective MDIO controllers. As such the first 1 Gb/s MAC/MDIO controller is used to manage all the 1 Gb/s PHY(s) and the first 10 Gb/s MAC/MDIO controller is used to manage all the 10 Gb/s PHY(s). Each MDIO controller has the ability to generate interrupts but only pinned out MDIO controllers are hooked up to the MPIC (as such the talk about two interrupts) (Each MAC has also integrated a SERDES/TBI/internal PHY that is connected to the local MDIO controller) As you can imagine this creates a number of problems in a partitioning scenario (and not just, imagine RCWs where the first MAC is not used/enabled). In order to help a bit (but not quite enough), in FMan v3, two additional MDIO controllers (one for 1 the Gb/s PHY(s) and one for 1 the 10 Gb/s PHY(s)) have been integrated that are not associated with any MAC and these are the pinned out MDIO controllers on such SoC(s) (chassis v2) Does optional mean it's used if and only if external MDIO is used, or is it optional even with external MDIO? I see it's not present in the example -- do we not have a real example that has the interrupt? [S.H] optional means it's available on hardware, but MDIO driver does not use interrupt. So we don't have a real example. record type=brokenThe device tree describes the hardware, not the driver/record Anyway, only two MDIO nodes (out of 4 to 14) would have an interrupt property describing exactly one interrupt. What language should we use to convey this situation Cheers, ___ Linuxppc-dev mailing list Linuxppc-dev@lists.ozlabs.org https://lists.ozlabs.org/listinfo/linuxppc-dev
Re: [PATCH] [v3] power/fsl: add MDIO dt binding for FMan
On Mon, 2015-01-05 at 05:21 -0600, Xie Shaohui-B21989 wrote: Hello Scott, Is this v3 OK? Best Regards, Shaohui Xie -Original Message- From: shh@gmail.com [mailto:shh@gmail.com] Sent: Tuesday, December 23, 2014 3:58 PM To: linuxppc-dev@lists.ozlabs.org; devicet...@vger.kernel.org; Wood Scott-B07421 Cc: Medve Emilian-EMMEDVE1; Xie Shaohui-B21989 Subject: [PATCH] [v3] power/fsl: add MDIO dt binding for FMan From: Shaohui Xie shaohui@freescale.com This binding is for FMan MDIO, it covers FMan v2 FMan v3. Signed-off-by: Shaohui Xie shaohui@freescale.com --- changes in v3: rephrase the 'Definition' of property 'bus-frequency', don't include the property in example. changes in v2: addressed comments from Scott in V1. .../devicetree/bindings/powerpc/fsl/fman.txt | 69 ++ 1 file changed, 69 insertions(+) diff --git a/Documentation/devicetree/bindings/powerpc/fsl/fman.txt b/Documentation/devicetree/bindings/powerpc/fsl/fman.txt index edeea16..737aa4c 100644 --- a/Documentation/devicetree/bindings/powerpc/fsl/fman.txt +++ b/Documentation/devicetree/bindings/powerpc/fsl/fman.txt @@ -7,6 +7,7 @@ CONTENTS - FMan MURAM Node - FMan dTSEC/XGEC/mEMAC Node - FMan IEEE 1588 Node + - FMan MDIO Node - Example = @@ -357,6 +358,69 @@ ptp-timer@fe000 { }; = +FMan MDIO Node + +DESCRIPTION + +The MDIO is a bus to which the PHY devices are connected. + +PROPERTIES + +- compatible + Usage: required + Value type: stringlist + Definition: A standard property. + Must include fsl,fman-mdio for 1 Gb/s MDIO from FMan v2. + Must include fsl,fman-xmdio for 10 Gb/s MDIO from FMan v2. + Must include fsl,fman-memac-mdio for 1/10 Gb/s MDIO from + FMan v3. + +- reg + Usage: required + Value type: prop-encoded-array + Definition: A standard property. + +- bus-frequency + Usage: optional + Value type: u32 + Definition: Specifies the external MDIO bus clock speed to + be used, if different from the standard 2.5 MHz. + This may be due to the standard speed being unsupported (e.g. + due to a hardware problem), or to advertise that all relevant + components in the system support a faster speed. + +- interrupts + Usage: optional + Value type: prop-encoded-array + Definition: Event interrupt of external MDIO controller. + 1 Gb/s MDIO and 10 Gb/s MDIO has one interrupt respectively. I'm confused by respectively here. Does fsl,fman-memac-mdio have two interrupts (one for 1 Gb/s and one for 10 Gb/s)? If there's only (at most) one interrupt per MDIO controller then just delete this line. What interrupt is used for internal MDIO? Does optional mean it's used if and only if external MDIO is used, or is it optional even with external MDIO? I see it's not present in the example -- do we not have a real example that has the interrupt? -Scott ___ Linuxppc-dev mailing list Linuxppc-dev@lists.ozlabs.org https://lists.ozlabs.org/listinfo/linuxppc-dev
RE: [PATCH] [v3] power/fsl: add MDIO dt binding for FMan
-Original Message- From: shh@gmail.com [mailto:shh@gmail.com] Sent: Tuesday, December 23, 2014 3:58 PM To: linuxppc-dev@lists.ozlabs.org; devicet...@vger.kernel.org; Wood Scott-B07421 Cc: Medve Emilian-EMMEDVE1; Xie Shaohui-B21989 Subject: [PATCH] [v3] power/fsl: add MDIO dt binding for FMan From: Shaohui Xie shaohui@freescale.com This binding is for FMan MDIO, it covers FMan v2 FMan v3. Signed-off-by: Shaohui Xie shaohui@freescale.com --- changes in v3: rephrase the 'Definition' of property 'bus-frequency', don't include the property in example. changes in v2: addressed comments from Scott in V1. .../devicetree/bindings/powerpc/fsl/fman.txt | 69 ++ 1 file changed, 69 insertions(+) diff --git a/Documentation/devicetree/bindings/powerpc/fsl/fman.txt b/Documentation/devicetree/bindings/powerpc/fsl/fman.txt index edeea16..737aa4c 100644 --- a/Documentation/devicetree/bindings/powerpc/fsl/fman.txt +++ b/Documentation/devicetree/bindings/powerpc/fsl/fman.txt @@ -7,6 +7,7 @@ CONTENTS - FMan MURAM Node - FMan dTSEC/XGEC/mEMAC Node - FMan IEEE 1588 Node + - FMan MDIO Node - Example = @@ -357,6 +358,69 @@ ptp-timer@fe000 { }; = +FMan MDIO Node + +DESCRIPTION + +The MDIO is a bus to which the PHY devices are connected. + +PROPERTIES + +- compatible + Usage: required + Value type: stringlist + Definition: A standard property. + Must include fsl,fman-mdio for 1 Gb/s MDIO from FMan v2. + Must include fsl,fman-xmdio for 10 Gb/s MDIO from FMan v2. + Must include fsl,fman-memac-mdio for 1/10 Gb/s MDIO from + FMan v3. + +- reg + Usage: required + Value type: prop-encoded-array + Definition: A standard property. + +- bus-frequency + Usage: optional + Value type: u32 + Definition: Specifies the external MDIO bus clock speed to + be used, if different from the standard 2.5 MHz. + This may be due to the standard speed being unsupported (e.g. + due to a hardware problem), or to advertise that all relevant + components in the system support a faster speed. + +- interrupts + Usage: optional + Value type: prop-encoded-array + Definition: Event interrupt of external MDIO controller. + 1 Gb/s MDIO and 10 Gb/s MDIO has one interrupt respectively. I'm confused by respectively here. Does fsl,fman-memac-mdio have two interrupts (one for 1 Gb/s and one for 10 Gb/s)? [S.H] We use two MDIO controllers for external PHY management. One for 1 Gb/s, One for 10 Gb/s, and two MDIO interrupts connected to MPIC. If there's only (at most) one interrupt per MDIO controller then just delete this line. What interrupt is used for internal MDIO? [S.H] internal MDIO has no interrupt. Does optional mean it's used if and only if external MDIO is used, or is it optional even with external MDIO? I see it's not present in the example -- do we not have a real example that has the interrupt? [S.H] optional means it's available on hardware, but MDIO driver does not use interrupt. So we don't have a real example. Thanks! Shaohui ___ Linuxppc-dev mailing list Linuxppc-dev@lists.ozlabs.org https://lists.ozlabs.org/listinfo/linuxppc-dev
RE: [PATCH] [v3] power/fsl: add MDIO dt binding for FMan
Hello Scott, Is this v3 OK? Best Regards, Shaohui Xie -Original Message- From: shh@gmail.com [mailto:shh@gmail.com] Sent: Tuesday, December 23, 2014 3:58 PM To: linuxppc-dev@lists.ozlabs.org; devicet...@vger.kernel.org; Wood Scott-B07421 Cc: Medve Emilian-EMMEDVE1; Xie Shaohui-B21989 Subject: [PATCH] [v3] power/fsl: add MDIO dt binding for FMan From: Shaohui Xie shaohui@freescale.com This binding is for FMan MDIO, it covers FMan v2 FMan v3. Signed-off-by: Shaohui Xie shaohui@freescale.com --- changes in v3: rephrase the 'Definition' of property 'bus-frequency', don't include the property in example. changes in v2: addressed comments from Scott in V1. .../devicetree/bindings/powerpc/fsl/fman.txt | 69 ++ 1 file changed, 69 insertions(+) diff --git a/Documentation/devicetree/bindings/powerpc/fsl/fman.txt b/Documentation/devicetree/bindings/powerpc/fsl/fman.txt index edeea16..737aa4c 100644 --- a/Documentation/devicetree/bindings/powerpc/fsl/fman.txt +++ b/Documentation/devicetree/bindings/powerpc/fsl/fman.txt @@ -7,6 +7,7 @@ CONTENTS - FMan MURAM Node - FMan dTSEC/XGEC/mEMAC Node - FMan IEEE 1588 Node + - FMan MDIO Node - Example = @@ -357,6 +358,69 @@ ptp-timer@fe000 { }; = +FMan MDIO Node + +DESCRIPTION + +The MDIO is a bus to which the PHY devices are connected. + +PROPERTIES + +- compatible + Usage: required + Value type: stringlist + Definition: A standard property. + Must include fsl,fman-mdio for 1 Gb/s MDIO from FMan v2. + Must include fsl,fman-xmdio for 10 Gb/s MDIO from FMan v2. + Must include fsl,fman-memac-mdio for 1/10 Gb/s MDIO from + FMan v3. + +- reg + Usage: required + Value type: prop-encoded-array + Definition: A standard property. + +- bus-frequency + Usage: optional + Value type: u32 + Definition: Specifies the external MDIO bus clock speed to + be used, if different from the standard 2.5 MHz. + This may be due to the standard speed being unsupported (e.g. + due to a hardware problem), or to advertise that all relevant + components in the system support a faster speed. + +- interrupts + Usage: optional + Value type: prop-encoded-array + Definition: Event interrupt of external MDIO controller. + 1 Gb/s MDIO and 10 Gb/s MDIO has one interrupt respectively. + +- fsl,fman-internal-mdio + Usage: required for internal MDIO + Value type: boolean + Definition: Fman has internal MDIO for internal PCS(Physical + Coding Sublayer) PHYs and external MDIO for external PHYs. + The settings and programming routines for internal/external + MDIO are different. Must be included for internal MDIO. + +EXAMPLE + +Example for FMan v2 external MDIO: + +mdio@f1000 { + compatible = fsl,fman-xmdio; + reg = 0xf1000 0x1000; +}; + +Example for FMan v3 internal MDIO: + +mdio@f1000 { + compatible = fsl,fman-memac-mdio; + reg = 0xf1000 0x1000; + fsl,fman-internal-mdio; +}; + +=== +== Example fman@40 { @@ -531,4 +595,9 @@ fman@40 { compatible = fsl,fman-ptp-timer; reg = 0xfe000 0x1000; }; + + mdio@f1000 { + compatible = fsl,fman-xmdio; + reg = 0xf1000 0x1000; + }; }; -- 1.8.4.1 ___ Linuxppc-dev mailing list Linuxppc-dev@lists.ozlabs.org https://lists.ozlabs.org/listinfo/linuxppc-dev
[PATCH] [v3] power/fsl: add MDIO dt binding for FMan
From: Shaohui Xie shaohui@freescale.com This binding is for FMan MDIO, it covers FMan v2 FMan v3. Signed-off-by: Shaohui Xie shaohui@freescale.com --- changes in v3: rephrase the 'Definition' of property 'bus-frequency', don't include the property in example. changes in v2: addressed comments from Scott in V1. .../devicetree/bindings/powerpc/fsl/fman.txt | 69 ++ 1 file changed, 69 insertions(+) diff --git a/Documentation/devicetree/bindings/powerpc/fsl/fman.txt b/Documentation/devicetree/bindings/powerpc/fsl/fman.txt index edeea16..737aa4c 100644 --- a/Documentation/devicetree/bindings/powerpc/fsl/fman.txt +++ b/Documentation/devicetree/bindings/powerpc/fsl/fman.txt @@ -7,6 +7,7 @@ CONTENTS - FMan MURAM Node - FMan dTSEC/XGEC/mEMAC Node - FMan IEEE 1588 Node + - FMan MDIO Node - Example = @@ -357,6 +358,69 @@ ptp-timer@fe000 { }; = +FMan MDIO Node + +DESCRIPTION + +The MDIO is a bus to which the PHY devices are connected. + +PROPERTIES + +- compatible + Usage: required + Value type: stringlist + Definition: A standard property. + Must include fsl,fman-mdio for 1 Gb/s MDIO from FMan v2. + Must include fsl,fman-xmdio for 10 Gb/s MDIO from FMan v2. + Must include fsl,fman-memac-mdio for 1/10 Gb/s MDIO from + FMan v3. + +- reg + Usage: required + Value type: prop-encoded-array + Definition: A standard property. + +- bus-frequency + Usage: optional + Value type: u32 + Definition: Specifies the external MDIO bus clock speed to + be used, if different from the standard 2.5 MHz. + This may be due to the standard speed being unsupported (e.g. + due to a hardware problem), or to advertise that all relevant + components in the system support a faster speed. + +- interrupts + Usage: optional + Value type: prop-encoded-array + Definition: Event interrupt of external MDIO controller. + 1 Gb/s MDIO and 10 Gb/s MDIO has one interrupt respectively. + +- fsl,fman-internal-mdio + Usage: required for internal MDIO + Value type: boolean + Definition: Fman has internal MDIO for internal PCS(Physical + Coding Sublayer) PHYs and external MDIO for external PHYs. + The settings and programming routines for internal/external + MDIO are different. Must be included for internal MDIO. + +EXAMPLE + +Example for FMan v2 external MDIO: + +mdio@f1000 { + compatible = fsl,fman-xmdio; + reg = 0xf1000 0x1000; +}; + +Example for FMan v3 internal MDIO: + +mdio@f1000 { + compatible = fsl,fman-memac-mdio; + reg = 0xf1000 0x1000; + fsl,fman-internal-mdio; +}; + += Example fman@40 { @@ -531,4 +595,9 @@ fman@40 { compatible = fsl,fman-ptp-timer; reg = 0xfe000 0x1000; }; + + mdio@f1000 { + compatible = fsl,fman-xmdio; + reg = 0xf1000 0x1000; + }; }; -- 1.8.4.1 ___ Linuxppc-dev mailing list Linuxppc-dev@lists.ozlabs.org https://lists.ozlabs.org/listinfo/linuxppc-dev