[PATCH v2 1/1 net-next] NET: FEC: dynamtic check DMA desc buff type

Frank Li lznuaa at gmail.com
Sat Dec 29 20:01:31 EST 2012


2012/12/28 Lothar Waßmann <LW at karo-electronics.de>:
> Frank Li writes:
>> MX6 and mx28 support enhanced DMA descript buff to support 1588
>> ptp. But MX25, MX3x, MX5x can't support enhanced DMA descript buff.
>> Check fec type and choose correct DAM descript buff type.
>                                     ^^^
> s/DAM/DMA/
> s/descript/descriptor/g
>
> [...]
>> diff --git a/drivers/net/ethernet/freescale/fec.c b/drivers/net/ethernet/freescale/fec.c
>> index 0704bca..290f91c 100644
>> --- a/drivers/net/ethernet/freescale/fec.c
>> +++ b/drivers/net/ethernet/freescale/fec.c
>> @@ -76,6 +76,8 @@
>>  #define FEC_QUIRK_USE_GASKET         (1 << 2)
>>  /* Controller has GBIT support */
>>  #define FEC_QUIRK_HAS_GBIT           (1 << 3)
>> +/* Controller has extend desc buffer */
>> +#define FEC_QUICK_HAS_BUFDESC_EX     (1 << 4)
>                ^^^^^
> As Sascha has already pointed out, this should be 'QUIRK' rather than
> 'QUICK' (like in the preceeding lines)!
>
>>  static struct platform_device_id fec_devtype[] = {
>>       {
>> @@ -93,7 +95,8 @@ static struct platform_device_id fec_devtype[] = {
>>               .driver_data = FEC_QUIRK_ENET_MAC | FEC_QUIRK_SWAP_FRAME,
>>       }, {
>>               .name = "imx6q-fec",
>> -             .driver_data = FEC_QUIRK_ENET_MAC | FEC_QUIRK_HAS_GBIT,
>> +             .driver_data = FEC_QUIRK_ENET_MAC | FEC_QUIRK_HAS_GBIT |
>> +                             FEC_QUICK_HAS_BUFDESC_EX,
>                                     ^^^^^
> same as above.
>
> [...]
>> @@ -1574,6 +1617,8 @@ fec_probe(struct platform_device *pdev)
>>       fep->pdev = pdev;
>>       fep->dev_id = dev_id++;
>>
>> +     fep->bufdesc_ex = 0;
>> +
>>       if (!fep->hwp) {
>>               ret = -ENOMEM;
>>               goto failed_ioremap;
>> @@ -1628,19 +1673,19 @@ fec_probe(struct platform_device *pdev)
>>               goto failed_clk;
>>       }
>>
>> -#ifdef CONFIG_FEC_PTP
>>       fep->clk_ptp = devm_clk_get(&pdev->dev, "ptp");
>> +     fep->bufdesc_ex =
>> +             pdev->id_entry->driver_data & FEC_QUICK_HAS_BUFDESC_EX;
>                                                   ^^^^^
> same as above.

Okay, I will fix it after new year holiday.

>
>
> Lothar Waßmann
> --
> ___________________________________________________________
>
> Ka-Ro electronics GmbH | Pascalstraße 22 | D - 52076 Aachen
> Phone: +49 2408 1402-0 | Fax: +49 2408 1402-10
> Geschäftsführer: Matthias Kaussen
> Handelsregistereintrag: Amtsgericht Aachen, HRB 4996
>
> www.karo-electronics.de | info at karo-electronics.de
> ___________________________________________________________



More information about the linux-arm-kernel mailing list