From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752710AbdDCNMS (ORCPT ); Mon, 3 Apr 2017 09:12:18 -0400 Received: from us01smtprelay-2.synopsys.com ([198.182.47.9]:45485 "EHLO smtprelay.synopsys.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751376AbdDCNMQ (ORCPT ); Mon, 3 Apr 2017 09:12:16 -0400 Subject: Re: [PATCH] [net-next] stmmac: use netif_set_real_num_{rx,tx}_queues To: Giuseppe CAVALLARO , Joao Pinto , Niklas Cassel , "Thierry Reding" , Corentin Labbe References: <20170328094856.3457886-1-arnd@arndb.de> <20170328.180105.1996071259325891752.davem@davemloft.net> <20170330074536.GA4814@Red> <20170330143435.GA28098@ulmo.ba.sec> <51947833-7559-0794-911d-d9cac65c5065@axis.com> <059fcede-1b71-a074-39c3-4993b0e0bc08@synopsys.com> <799c7a4b-767e-b21c-d3bf-8fd3b639d70f@st.com> CC: David Miller , , , , From: Joao Pinto Message-ID: <21934325-6d37-7aea-793f-71fac2c40bf3@synopsys.com> Date: Mon, 3 Apr 2017 14:12:10 +0100 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:45.0) Gecko/20100101 Thunderbird/45.8.0 MIME-Version: 1.0 In-Reply-To: <799c7a4b-767e-b21c-d3bf-8fd3b639d70f@st.com> Content-Type: text/plain; charset="windows-1252" Content-Transfer-Encoding: 8bit X-Originating-IP: [10.107.19.129] Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hello Peppe, Ās 2:07 PM de 4/3/2017, Giuseppe CAVALLARO escreveu: > Hello Joao > > On 3/30/2017 6:42 PM, Joao Pinto wrote: >> Ās 5:35 PM de 3/30/2017, Niklas Cassel escreveu: >>> On 03/30/2017 04:34 PM, Thierry Reding wrote: >>>> On Thu, Mar 30, 2017 at 09:45:36AM +0200, Corentin Labbe wrote: >>>>> On Tue, Mar 28, 2017 at 06:01:05PM -0700, David Miller wrote: >>>>>> From: Arnd Bergmann >>>>>> Date: Tue, 28 Mar 2017 11:48:21 +0200 >>>>>> >>>>>>> A driver must not access the two fields directly but should instead use >>>>>>> the helper functions to set the values and keep a consistent internal >>>>>>> state: >>>>>>> >>>>>>> ethernet/stmicro/stmmac/stmmac_main.c: In function 'stmmac_dvr_probe': >>>>>>> ethernet/stmicro/stmmac/stmmac_main.c:4083:8: error: 'struct net_device' >>>>>>> has no member named 'real_num_rx_queues'; did you mean 'real_num_tx_queues'? >>>>>>> >>>>>>> Fixes: a8f5102af2a7 ("net: stmmac: TX and RX queue priority configuration") >>>>>>> Signed-off-by: Arnd Bergmann >>>>>> Applied. >>>>> This break my revert patch. (since it patch ("net: stmmac: enable multiple >>>>> buffers"). >>>>> Since dwmac-sunxi is still broken, what can I do ? send two revert patch ? >>>>> or adapt the reverting patch. >>>> Have you tried if the kcalloc() patch I sent on Tuesday fixes things the >>>> issues introduced by the multiple buffers patch? Niklas reported that it >>>> restores functionality on his setup. >>>> >>>> If it makes things work for you as well, we could maybe avoid the revert >>>> altogether. >>> Thierry, I know that you are using DWMAC CORE 4.XX >>> How many RX queues and how many TX queues have you got? >>> >>> I'm also using DWMAC CORE 4.XX >>> We have 2 TX queues and 1 RX queue. >>> >>> I think that Corentin is using DWMAC CORE 3.XX >>> >>> I know that Joao is using an IP Prototyping Kit that uses >>> DWMAC CORE 4.XX (connected via PCIe). >>> It would be nice if Joao could get an IP Prototyping Kit >>> based on DWMAC CORE 3.XX. >>> >>> Doesn't Synopsys have an IP Prototyping Kit based on >>> DWMAC CORE 3.XX laying around somewhere? :) >>> >> I requested a prototyping platform with MAC 100 or a MAC 1000 in order to make >> more tests, but I don't have an ETA for it yet. >> >> The implication of the multiple buffers patch in 3.xx is some flow change in the >> configuration of dma op mode or similar. I would recomend Corentin to dump the >> dma & mac registers in the end of the _open function in order to see if the DMA >> is really being well configured and is really started. > > Old devices managed as stmmac: mac10/100 platform driver have no multi-queue > support. > > It was introduced in the new versions managed by mac1000 but in my opinion > the stmmac driver has to only work with a single queue for tx and rx on ALL > the 3.x versions. > > In fact, although the latest series have the multi-queue and channels there is > just one IRQ and this is a very poor implementation. > The 3.xx is very different from what we have in the 4.XX (QoS) on this part and > AV/B. > > Nobody has ever asked for having this support in all these years for the previous > chips. > > Adding this kind of support we'll spend time for having a no useful optimization > and risking to break the compatibility with a lot platforms that use these chips. > > I image, multi-queue stable on 4.XX and no support on all older versions. > Let me know if you share that. Yes older cores do not support multiple queues and I tried to isolate the features not to affect older versions. Do you think that functions as "ndev = alloc_etherdev_mqs" has some sort of influence? Thanks. > > Regards > Peppe > >> >> Thanks. >> >> Joao >> >> >