[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <3bc7fd6f-df27-2e18-f489-5f9f7cd0abca@gmail.com>
Date: Mon, 4 Mar 2019 10:36:56 -0800
From: Florian Fainelli <f.fainelli@...il.com>
To: Heiner Kallweit <hkallweit1@...il.com>,
Andrew Lunn <andrew@...n.ch>,
Zhangshaokun <zhangshaokun@...ilicon.com>
Cc: netdev@...r.kernel.org, linux-kernel@...r.kernel.org,
Vivien Didelot <vivien.didelot@...il.com>,
"David S. Miller" <davem@...emloft.net>
Subject: Re: [PATCH -next] net: dsa: mv88e6xxx: Fix build warning when
CONFIG_NET_DSA_LEGACY is n
On 3/4/19 10:31 AM, Heiner Kallweit wrote:
> On 04.03.2019 19:24, Florian Fainelli wrote:
>> On 3/4/19 10:18 AM, Heiner Kallweit wrote:
>>> On 04.03.2019 15:57, Andrew Lunn wrote:
>>>> On Mon, Mar 04, 2019 at 10:16:08PM +0800, Zhangshaokun wrote:
>>>>> Hi Andrew,
>>>>>
>>>>> On 2019/3/4 21:26, Andrew Lunn wrote:
>>>>>> On Mon, Mar 04, 2019 at 08:43:01PM +0800, Shaokun Zhang wrote:
>>>>>>> When CONFIG_NET_DSA_LEGACY is n, there is a GCC bulid warning:
>>>>>>> drivers/net/dsa/mv88e6xxx/chip.c:4623:13: warning: ‘mv88e6xxx_ports_cmode_init’ defined but not used [-Wunused-function]
>>>>>>> static void mv88e6xxx_ports_cmode_init(struct mv88e6xxx_chip *chip)
>>>>>>> Let's fix it.
>>>>>>
>>>>>> Hi Shaokun, Heiner
>>>>>>
>>>>>> Although this fixes the warning, i suspect there i something wrong
>>>>>> with the original patch adding mv88e6390x_port_set_cmode(). It should
>>>>>> also be used without CONFIG_NET_DSA_LEGACY.
>>>>>
>>>>> I checked the commit-id 2a93c1a3651f ("net: dsa: Allow compiling out legacy support") by Florian.
>>>>> Do you mean that CONFIG_NET_DSA_LEGACY shall be removed completely? :-)
>>>>
>>>> No, i suspect mv88e6390x_ports_cmode_init() is being called from the
>>>> wrong place, or needs to be called from a second location.
>>>>
>>>> [Goes and looks at the code]
>>>>
>>>> Yes, it should also be called in mv88e6xxx_probe(). I would call it
>>>> just after the call to mv88e6xxx_detect(), so that it is the same as
>>>> in mv88e6xxx_drv_probe().
>>>>
>>>> There are two ways DSA drivers can be probed. The legacy way, which is
>>>> optional, and is slowly getting removed, and the current way. Heiner
>>>> is new to DSA and probably missed that, and only handled the legacy
>>>> probe method. I also missed checking when i reviewed to patch :-(
>>>>
>>> Right, I missed that, will submit a fix.
>>>
>>> I just saw that the Kconfig entry comment for NET_DSA_LEGACY says:
>>> "This feature is scheduled for removal in 4.17."
>>>
>>> Was forgotten to remove it or did somebody scream loud enough
>>> "But I depend on it" ?
>>
>> The intent was to remove it by that kernel version but the 88e6060
>> driver still depends on it, and there appears to be some active users
>> that Andrew worked with.
>>
> I see, thanks. And migrating this driver to the new DSA framework
> version isn't possible or not worth the effort?
Andrew is working on it actually. We could have 88E6060 select
NET_DSA_LEGACY and drop legacy probing from mv88e6xxx as an in between
solution.
--
Florian
Powered by blists - more mailing lists