Re: [PATCH 4/7] MIPS: Octeon: Add Free Pointer Unit (FPA) support.

From: David Daney
Date: Thu Nov 02 2017 - 12:27:11 EST


On 11/01/2017 08:29 PM, Florian Fainelli wrote:
Le 11/01/17 Ã 17:36, David Daney a ÃcritÂ:
From: Carlos Munoz <cmunoz@xxxxxxxxxx>

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?

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.

David Daney