Re: [PATCH/RFC net-next] ravb: Avoid unsupported internal delay mode for R-Car E3/D3

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Apr 09, 2019 at 06:03:24PM +0300, Sergei Shtylyov wrote:
> Hello!
> 
> On 04/09/2019 01:45 PM, Simon Horman wrote:
> 
> >>>> @@ -1979,8 +1985,9 @@ static void ravb_set_delay_mode(struct net_device *ndev)
> >>>>  	    priv->phy_interface == PHY_INTERFACE_MODE_RGMII_RXID)
> >>>>  		set |= APSR_DM_RDM;
> >>>>  
> >>>> -	if (priv->phy_interface == PHY_INTERFACE_MODE_RGMII_ID ||
> >>>> -	    priv->phy_interface == PHY_INTERFACE_MODE_RGMII_TXID)
> >>>> +	if ((priv->phy_interface == PHY_INTERFACE_MODE_RGMII_ID ||
> >>>> +	     priv->phy_interface == PHY_INTERFACE_MODE_RGMII_TXID) &&
> >>>> +	    !soc_device_match(ravb_delay_mode_quirk_match))
> >>>
> >>>    But don't we need to error out of the probing as we can't set the delay mode
> >>> requested?
> >>
> >> Yes, if we can, we should error out. It just depends on if there are
> >> broken DT blobs out there. We recently had a lot of pain from broken
> >> DT blobs using the at803x PHY and getting RGMII modes wrong. In the
> >> long run, it is best to if DT, but i've no idea how many boards are
> >> affected.
> > 
> > Hi Andrew,
> > 
> > I suspect there are such blobs out there and I'm not sure
> > what the fall-out may or may not be.
> 
>    You mean the out-of-tree blobs? Because I'm not seeing any in-kernel
> breakage... 

I am referring to older upstream blobs built from older upstream or
out-of-tree BSP kernel source where the phy mode is rgmii-txid or rgmii-id.
F.e. Ebisu and upstream v5.0 or out-of-tree R-Car Gen3 BSP v3.8.0.



[Index of Archives]     [Linux Samsung SOC]     [Linux Wireless]     [Linux Kernel]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Device Mapper]

  Powered by Linux