Re: [PATCH] net: stmmac: add dcrs parameter
From: Vince Bridgers
Date: Mon Aug 25 2014 - 11:10:18 EST
On Mon, Aug 25, 2014 at 7:51 AM, Giuseppe CAVALLARO
> On 8/25/2014 2:34 PM, Chen-Yu Tsai wrote:
>> On Mon, Aug 25, 2014 at 7:50 PM, Ley Foon Tan <lftan@xxxxxxxxxx> wrote:
>>> This patch add the option to enable DCRS bit in GMAC control register.
>>> Default is disabled if snps,dcrs is not defined.
>>> For MII, Carrier Sense (CRS) must be asserted during transmission
>>> whereas in RGMII, CRS is not. RGMII does not provide a way to signal
>>> loss of carrier during a transmission.
While technically true, from a practical point of view, this is only
useful if using true half-duplex media (like the now obsolete 10Base2
and 10Base5 - think old school coax with vampire taps).
>>> When DCRS bit set high in control register, the MAC transmitter
>>> ignore the (G)MII Carrier Sense signal during frame transmission
>>> in the half-duplex mode. This request results in no errors generated
>>> because of Loss of Carrier or No Carrier during such transmission.
>>> Signed-off-by: Ley Foon Tan <lftan@xxxxxxxxxx>
>> Since you know this is only required under (G)MII, could you not re-use
>> the "phy-mode" property, instead of adding another one?
>> Better yet, use the "interface" field in the platform data. This way
>> fix non-DT devices as well. You could then avoid touching the platform
>> and just modify the driver core.
> yes this is what I asked. Thx ChenYu for the this detail.
> Ley Foon Tan, could you do that? Let me know
In the Synopsys EMAC case, carrier sense is used to stop transmitting
if no carrier is sensed during a transmission. This is only useful if
the media in use is true half duplex media (like obsolete 10Base2 or
10Base5). If no one in using true half duplex media, then is it
possible to set this disable by default? If we're not sure, then
having an option feels like the right thing to do.
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/