From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S933558AbdKBSEc (ORCPT ); Thu, 2 Nov 2017 14:04:32 -0400 Received: from mail-pg0-f53.google.com ([74.125.83.53]:47747 "EHLO mail-pg0-f53.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932196AbdKBSEa (ORCPT ); Thu, 2 Nov 2017 14:04:30 -0400 X-Google-Smtp-Source: ABhQp+QnRqnpDm73T1VLA7YODC0+Smye1eO9XafszPUtm9fIXGUhggh78ErYlQEf2/3ODmw6rCAufw== Subject: Re: [PATCH 4/7] MIPS: Octeon: Add Free Pointer Unit (FPA) support. To: David Daney , David Daney , linux-mips@linux-mips.org, ralf@linux-mips.org, James Hogan , netdev@vger.kernel.org, "David S. Miller" , Rob Herring , Mark Rutland Cc: linux-kernel@vger.kernel.org, "Steven J. Hill" , devicetree@vger.kernel.org, Carlos Munoz References: <20171102003606.19913-1-david.daney@cavium.com> <20171102003606.19913-5-david.daney@cavium.com> From: Florian Fainelli Message-ID: <70fa7ec2-3e6d-e420-ff57-b34dc7ec311e@gmail.com> Date: Thu, 2 Nov 2017 11:04:26 -0700 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.2.1 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 11/02/2017 09:27 AM, David Daney wrote: > On 11/01/2017 08:29 PM, Florian Fainelli wrote: >> Le 11/01/17 à 17:36, David Daney a écrit : >>> From: Carlos Munoz >>> >>> From the hardware user manual: "The FPA is a unit that maintains >>> pools of pointers to free L2/DRAM memory. To provide QoS, the pools >>> are referenced indirectly through 1024 auras. Both core software >>> and hardware units allocate and free pointers." >> >> This looks like a possibly similar implement to what >> drivers/net/ethernet/marvell/mvneta_bm.c, can you see if you can make >> any use of genpool_* and include/net/hwbm.h here as well? > > Yikes! Is it permitted to put function definitions that are not "static > inline" in header files? Meh well, this is not even ressembling what we initially discussed, so I was hoping we could build more interesting features on top of this. > > The driver currently doesn't use page fragments, so I don't think that > the hwbm thing can be used. > > Also the FPA unit is used to control RED and back pressure in the PKI > (packet input processor), which are features that are features not > considered in hwbm. > > The OCTEON-III hardware also uses the FPA for non-packet-buffer memory > allocations. So for those, it seems that hwbm is also not a good fit. OK, let me see if I understand how FPA works, can we say that this is more or less a buffer tokenizer in that, you give it a buffer physical address and it returns an unique identifier that the FPA uses for actual packet passing, transmission and other manipulations? There were a few funky things in the network driver, I will comment there. -- Florian