Re: [PATCH v5 4/5] net: rnpgbe: Add basic mbx_fw support
From: Yibo Dong <dong100@mucse.com>
Date: 2025-08-21 02:05:12
Also in:
linux-doc, lkml
From: Yibo Dong <dong100@mucse.com>
Date: 2025-08-21 02:05:12
Also in:
linux-doc, lkml
On Wed, Aug 20, 2025 at 10:30:17PM +0200, Andrew Lunn wrote:
quoted
+int mucse_mbx_get_capability(struct mucse_hw *hw) +{ + struct hw_abilities ability = {}; + int try_cnt = 3; + int err = -EIO; + + while (try_cnt--) { + err = mucse_fw_get_capability(hw, &ability); + if (err) + continue; + hw->pfvfnum = le16_to_cpu(ability.pfnum); + hw->fw_version = le32_to_cpu(ability.fw_version); + hw->usecstocount = le32_to_cpu(ability.axi_mhz);If you can get it from the hardware, why do you need to initialise it in the earlier patch? I guess you have a bootstrap problem, you need it to get it. But cannot you just initialise it to a single pessimistic value which will work well enough for all hardware variants until you can actually ask the hardware? Andrew
It is a problem related with fw version. Older fw may return with axi_mhz 0, So I init a no-zero default value first. Also, I missed to check the axi_mhz here. The 'usecstocount' is removed in v6, I will update here like this in the patch which truely use 'usecstocount': if (le32_to_cpu(ability.axi_mhz)) hw->usecstocount = le32_to_cpu(ability.axi_mhz); /* else keep use the default value */ Thanks for your feedback.