NAK: [SRU][F:linux-bluefield][Pull Request] Cherry-pick the upstreamed mlxbf-gige driver

Asmaa Mnebhi asmaa at
Tue Jul 13 19:28:22 UTC 2021

Hi Tim,

Indeed the last commit in the pull request "UBUNTU: SAUCE: Add code not included in upstreamed mlxbf-gige and gpio-mlxbf2" has many changes:

1) in the gpio-mlxbf2.c, I added changes that go hand in hand with the upstreamed version of the mlxbf-gige driver. We removed the dependency of mlxbf-gige on gpio-mlxbf2.c driver so we had to adjust the gpio code accordingly like removing the PHY interrupt.
2) Couple of new macros were added to the gpio driver.
3) The gige driver version was removed in the upstreamed mlxbf-gige because maintainers don't like that. But internally, we would like to keep it since it is very helpful in determining whether the gige driver is up to date.
4) the mlxbf_gige_set_ringparam function was also removed from mlxbf-gige because the maintainers did not like that. But internally, it is very useful.

So you want me to separate the above commit into 4 different commits and integrate them within the pull request?

-----Original Message-----
From: Tim Gardner <tim.gardner at> 
Sent: Tuesday, July 13, 2021 2:51 PM
To: Asmaa Mnebhi <asmaa at>; kernel-team at
Cc: David Thompson <davthompson at>
Subject: NAK: [SRU][F:linux-bluefield][Pull Request] Cherry-pick the upstreamed mlxbf-gige driver

Asmaa - your pull request looks fine, though the path should be:

git:// master-next

I have some comments about the last patch, "UBUNTU: SAUCE: Add code not included in upstreamed mlxbf-gige and gpio-mlxbf2". It looks like there are at least 4 distinct logical changes in that one patch. Surely they weren't applied originally in one big glob ? It should be split into multiple patches, each with a functional change. For example, there are macro changes, driver version change, module parameters added, exclusion, and irq handler changes. There is no way you can upstream that patch in its current form.


On 7/13/21 12:11 PM, Asmaa Mnebhi wrote:
> This pull request (23 commits) includes reverting all mlxbf-gige 
> changes in linux-bluefield. Then it cherry-picks the newly upstreamed 
> version of the mlxbf-gige driver. It also adds code that was left out 
> in the upstreamed version and the code that was reverted in gpio-mlxbf2.c.
> BugLink: 
> 7C81ed9661449b4def3c9608d9462f1f7a%7C43083d15727340c1b7db39efd9ccc17a%
> 7C0%7C0%7C637617990476956729%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwM
> DAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=6Z3
> OW44oSG%2FrVelWzJhO7RRFIVFcDbqTMg27gsxr5m8%3D&reserved=0
> The pull request page can be found at:
> it%2Fversion-seeds%2F%2Bmerge%2F405646&data=04%7C01%7Casmaa%40nvid
> ccc17a%7C0%7C0%7C637617990476956729%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC
> 4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sd
> ata=skDSC%2BqTFDPGXsy%2FqGlnbWwrQ7PbOhlMyMp1w3L3ovQ%3D&reserved=0
> Git repo can be found at:
> git+ssh://
> git+eld master-next
> for you to fetch changes starting from commit 
> cfabdc1ef2b73553a7ecc5908902cbaf290f4f4b
>      Revert "UBUNTU: SAUCE: mlxbf_gige: syncup with v1.23 content"
> Signed-off-by: David Thompson <davthompson at>
> Signed-off-by: Asmaa Mnebhi <asmaa at>
> Asmaa Mnebhi (22):
>    Revert "UBUNTU: SAUCE: mlxbf_gige: syncup with v1.23 content"
>    Revert "UBUNTU: SAUCE: mlxbf_gige: syncup with v1.21 content"
>    Revert "UBUNTU: SAUCE: Automate soft reset of BlueField ARM via GPIO7"
>    Revert "UBUNTU: SAUCE: Syncup with the latest gpio-mlxbf2 and
>      mlxbf-gige drivers"
>    Revert "Revert "UBUNTU: SAUCE: Fix intermittent OOB link up issue""
>    Revert "UBUNTU: SAUCE: Fix intermittent OOB link up issue"
>    Revert "UBUNTU: SAUCE: mlxbf_gige_mdio.c: Support PHY interrupt on
>      Bluesphere"
>    Revert "UBUNTU: SAUCE: mlxbf_gige_main.c: Fix OOB PHY interrupt"
>    Revert "UBUNTU: SAUCE: mlxbf_gige: use streaming DMA mapping for
>      packet buffers"
>    Revert "UBUNTU: SAUCE: mlxbf_gige: address upstream comments on RX and
>      TX"
>    Revert "UBUNTU: SAUCE: mlxbf-gige: remove gpio interrupt coalesce
>      resources"
>    Revert "UBUNTU: SAUCE: mlxbf_gige: add support for ndo_get_stats64"
>    Revert "UBUNTU: SAUCE: mlxbf_gige: address some general upstream
>      comments"
>    Revert "UBUNTU: SAUCE: Address upstream comments from patch v6 for PHY
>      driver"
>    Revert "UBUNTU: SAUCE: mlxbf-gige: cleanups from review"
>    Revert "UBUNTU: SAUCE: mlxbf-gige: v5 patch cleanup and napi_schedule"
>    Revert "UBUNTU: SAUCE: mlxbf_gige_main.c: Fix OOB's ethtool command"
>    Revert "UBUNTU: SAUCE: mlxbf_gige_main.c: Support ethtool options"
>    Revert "UBUNTU: SAUCE: mlxbf-gige: multiple fixes for stability"
>    Revert "UBUNTU: SAUCE: Remove built-in tests from mlxbf_gige driver"
>    Revert "UBUNTU: SAUCE: Add Mellanox BlueField Gigabit Ethernet driver"
>    UBUNTU: SAUCE: Add code not included in upstreamed mlxbf-gige and
>      gpio-mlxbf2
> David Thompson (1):
>    Add Mellanox BlueField Gigabit Ethernet driver
>   drivers/gpio/gpio-mlxbf2.c                    |  42 +---
>   .../net/ethernet/mellanox/mlxbf_gige/Kconfig  |   2 +-
>   .../net/ethernet/mellanox/mlxbf_gige/Makefile |  10 +-
>   .../ethernet/mellanox/mlxbf_gige/mlxbf_gige.h |  20 +-
>   .../mellanox/mlxbf_gige/mlxbf_gige_ethtool.c  |  11 +-
>   .../mellanox/mlxbf_gige/mlxbf_gige_gpio.c     | 212 ++++++++++++++++++
>   .../mellanox/mlxbf_gige/mlxbf_gige_intr.c     |   3 +-
>   .../mellanox/mlxbf_gige/mlxbf_gige_main.c     |  72 +++---
>   .../mellanox/mlxbf_gige/mlxbf_gige_mdio.c     |   2 +-
>   .../mellanox/mlxbf_gige/mlxbf_gige_regs.h     |   2 +-
>   .../mellanox/mlxbf_gige/mlxbf_gige_rx.c       |   8 +-
>   .../mellanox/mlxbf_gige/mlxbf_gige_tx.c       |   5 +-
>   12 files changed, 284 insertions(+), 105 deletions(-)
>   create mode 100644 
> drivers/net/ethernet/mellanox/mlxbf_gige/mlxbf_gige_gpio.c

Tim Gardner
Canonical, Inc

More information about the kernel-team mailing list