[dpdk-dev] [PATCH v3 0/2] Support compressed firmwares

David Marchand david.marchand at redhat.com
Tue Jun 29 10:06:30 CEST 2021


Fedora 34 only provides compressed firmwares.

Introduce an internal driver helper to handle transparently compression.

I chose libarchive for decompressing as it seems widely available and
DPDK had used it in the past.

Windows support only matters for net/ice and firmware loading was skipped
in this driver before this series. Since I don't know if/how we want to
load firmwares on Windows, I let an empty stub for this OS.

This series has been compile tested on Linux (I'll trust the CI for
others OSes).
I only tested basic init with a net/ice device (no DCF test).

So please drivers maintainers, check nothing is broken.


-- 
David Marchand

Changes since v2:
- update comment on libarchive link dependency,

Changes since v1:
- address comments on patch2,


David Marchand (2):
  net/ice: factorize firmware loading
  eal: handle compressed firmwares

 .github/workflows/build.yml      |   1 +
 .travis.yml                      |   1 +
 config/meson.build               |  10 ++
 drivers/net/bnx2x/bnx2x.c        |  35 +++----
 drivers/net/ice/base/ice_osdep.h |   6 --
 drivers/net/ice/ice_dcf_parent.c |  97 ++---------------
 drivers/net/ice/ice_ethdev.c     | 175 ++++++++++++-------------------
 drivers/net/ice/ice_ethdev.h     |   3 +-
 drivers/net/nfp/nfp_net.c        |  57 +++-------
 drivers/net/qede/qede_main.c     |  45 ++++----
 lib/eal/include/rte_firmware.h   |  32 ++++++
 lib/eal/unix/eal_firmware.c      | 149 ++++++++++++++++++++++++++
 lib/eal/unix/meson.build         |   1 +
 lib/eal/version.map              |   1 +
 lib/eal/windows/eal.c            |   9 ++
 15 files changed, 324 insertions(+), 298 deletions(-)
 create mode 100644 lib/eal/include/rte_firmware.h
 create mode 100644 lib/eal/unix/eal_firmware.c

-- 
2.23.0



More information about the dev mailing list