Subject: Re: [PATCH net-next v1 1/1] net: fec: Add VLAN receive HW support.

From: Jim Baxter <[email-masked]>
Date: Thu, 27 Jun 2013 10:35:03 +0100

On 27/06/13 02:41, Duan Fugang-B38611 wrote:
> On 06/26/13 19:45, Jim Baxter wrote:
> 
>> On 26/06/13 12:18, Duan Fugang-B38611 wrote:
>>> On 06/26/13 18:09, Jim Baxter wrote:
>>>>
>>>>> In addition,
>>>>> 	1.	enet IP support hw VLAN detect such as imx28-fec, imx6q-fec and mvf600-fec, so you can add the "BD_ENET_RX_VLAN " to those platform driver_data.
>>>> I have only tested it on the i.MX6, if someone wants to check it on 
>>>> the
>>>> imx28 later they can add it to that option.
>>>
>>>>> 	2.	Enable the VLAN tag extraction with "NETIF_F_HW_VLAN_CTAG_RX" feature in .ndo_fix_features, which is configured by user.
>>>> What do you mean by this, I am only enabling the VLAN code if 
>>>> (ndev->features & NETIF_F_HW_VLAN_CTAG_RX) is set. I am pretty sure 
>>>> this is set by
>>>
>>> You can enable the feature like below, which is reasonable.
>>> .ndo_fix_features   = fec_enet_fix_features
>>>
>>> static netdev_features_t fec_enet_fix_features (struct net_device *dev, 
>>>         netdev_features_t features)
>>> {
>>>         struct fec_enet_private *fep = netdev_priv(dev);
>>> 	  const struct platform_device_id *id_entry =
>>> 					platform_get_device_id(fep->pdev);
>>>
>>> 	  if (id_entry->driver_data & FEC_QUIRK_HAS_VLAN)
>>>         	features |= NETIF_F_HW_VLAN_CTAG_RX;
>>>
>>> 	  return features;
>>> }
>>>
>>>
>>> Thank you,
>>> Andy
>>>
>>>
>>
>> I currently set the features in fec_enet_init() along with setting hw_features, is fec_enet_fix_features() a more correct design for driver implementation point?
> 
> Yes, I think it is more reasonable.
> Can you hold on the patch to hear others' idea.
> 
> Thanks,
> Andy
> 
> 

Yes, I am will wait for other comments.

Thank you,
Jim