On Thu, Oct 24, 2019 at 07:38:25PM +0800, Andy Pei wrote: > From: Tianfei zhang <tianfei.zh...@intel.com> > > In PAC N3000 card, this is a BMC chip which using MAX10 FPGA > to manage the board configuration, like sensors, flash controller, > QSFP, powers. And this is a SPI bus connected between A10 FPGA and > MAX10, we can access the MAX10 registers over this SPI bus. > > In BMC, there are about 19 sensors in MAX10 chip, including the FPGA > core temperature, Board temperature, board current, voltage and so on. > > We use DTB (Device tree table) to describe it. This DTB file is store > in nor flash partition, which will flashed in Factory when the boards > delivery to customers. And the same time, the customers can easy to > customizate the BMC configuration like change the sensors. > > Add device tree support by using libfdt library in Linux distribution. > The end-user should pre-install the libfdt and libfdt-devel package > before use DPDK on PAC N3000 Card. > > For Centos 7.x: sudo yum install libfdt libfdt-devel > For Ubuntu 18.04: sudo apt install libfdt-dev libfdt1 > > To eliminate build error, we currently do not compile raw/ifpga > and net/ipn3ke. User should install libfdt and libfdt-devel first, > modify config/common_linux, CONFIG_RTE_LIBRTE_PMD_IFPGA_RAWDEV=n > to CONFIG_RTE_LIBRTE_PMD_IFPGA_RAWDEV=y, modify config/common_base, > CONFIG_RTE_LIBRTE_IPN3KE_PMD=n to CONFIG_RTE_LIBRTE_IPN3KE_PMD=y. > Then this function can work. > > Signed-off-by: Tianfei zhang <tianfei.zh...@intel.com> > Signed-off-by: Andy Pei <andy....@intel.com> > --- > config/common_base | 2 +- > config/common_linux | 2 +- > drivers/meson.build | 6 +- > drivers/net/ipn3ke/meson.build | 24 +++- > drivers/raw/ifpga/base/meson.build | 2 +- > drivers/raw/ifpga/base/opae_intel_max10.c | 183 > ++++++++++++++++++++++++++++++ > drivers/raw/ifpga/base/opae_intel_max10.h | 10 ++ > drivers/raw/ifpga/meson.build | 25 ++-- > mk/rte.app.mk | 2 +- > 9 files changed, 235 insertions(+), 21 deletions(-) > > diff --git a/config/common_base b/config/common_base > index fef2f38..3c0ea7e 100644 > --- a/config/common_base > +++ b/config/common_base > @@ -339,7 +339,7 @@ CONFIG_RTE_LIBRTE_IAVF_16BYTE_RX_DESC=n > # > # Compile burst-oriented IPN3KE PMD driver > # > -CONFIG_RTE_LIBRTE_IPN3KE_PMD=y > +CONFIG_RTE_LIBRTE_IPN3KE_PMD=n > > # > # Compile burst-oriented Mellanox ConnectX-3 (MLX4) PMD > diff --git a/config/common_linux b/config/common_linux > index a78b8c6..c5cf3d6 100644 > --- a/config/common_linux > +++ b/config/common_linux > @@ -73,4 +73,4 @@ CONFIG_RTE_LIBRTE_HNS3_PMD=y > # Compile PMD for Intel FPGA raw device > # To compile, CONFIG_RTE_EAL_VFIO should be enabled. > # > -CONFIG_RTE_LIBRTE_PMD_IFPGA_RAWDEV=y > +CONFIG_RTE_LIBRTE_PMD_IFPGA_RAWDEV=n > diff --git a/drivers/meson.build b/drivers/meson.build > index 4a1cb8b..7c0aed1 100644 > --- a/drivers/meson.build > +++ b/drivers/meson.build > @@ -9,12 +9,12 @@ endif > dpdk_driver_classes = ['common', > 'bus', > 'mempool', # depends on common and bus. > - 'net', # depends on common, bus and mempool. > + 'raw', # depends on common and bus. > + 'net', # depends on common, bus, mempool and raw (raw > provide API for net driver).
The comment in brackets is unnecessary here, since that is what is implied by saying that there is a dependency on net. Thinking about it more, I think it would be useful in future to make this more concrete for debugging, and specify what drivers in one set depend on elements in another [assuming it's only one or two]. It's not as though all net drivers depend on the rawdevs. > 'crypto', # depends on common, bus and mempool (net in future). > 'compress', # depends on common, bus, mempool. > 'event', # depends on common, bus, mempool and net. > - 'baseband', # depends on common and bus. > - 'raw'] # depends on common, bus, mempool, net and event. I assume that the comment here is incorrect, and that no rawdev does depend on event drivers or net drivers? Have you checked each driver for such a dependency? > + 'baseband'] # depends on common and bus. > > disabled_drivers = get_option('disable_drivers').split(',') > Assuming that the comment is incorrect, and that no existing rawdev driver depends on a net or event driver, no issues with this meson change. Acked-by: Bruce Richardson <bruce.richard...@intel.com>