With the introduction of mlx5 firmware flash support, we get a link
error with CONFIG_MLXFW=m and CONFIG_MLX5_CORE=y:
drivers/net/ethernet/mellanox/mlx5/core/fw.o: In function `mlx5_firmware_flash':
fw.c:(.text+0x9d4): undefined reference to `mlxfw_firmware_flash'
We could have a more elaborate method to force MLX5 to be a loadable
module in this case, but the easiest fix seems to be to always enable
MLXFW as well, like we do for CONFIG_MLXSW_SPECTRUM, which is the other
user of mlxfw_firmware_flash.
Fixes: 3ffaabecd1a1 ("net/mlx5e: Support the flash device ethtool callback")
Signed-off-by: Arnd Bergmann <redacted>
---
drivers/net/ethernet/mellanox/mlx5/core/Kconfig | 1 +
1 file changed, 1 insertion(+)
--
2.9.0
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
From: Or Gerlitz <hidden> Date: 2017-06-29 03:47:22
On Wed, Jun 28, 2017 at 11:10 PM, Arnd Bergmann [off-list ref] wrote:
With the introduction of mlx5 firmware flash support, we get a link
error with CONFIG_MLXFW=m and CONFIG_MLX5_CORE=y:
drivers/net/ethernet/mellanox/mlx5/core/fw.o: In function `mlx5_firmware_flash':
fw.c:(.text+0x9d4): undefined reference to `mlxfw_firmware_flash'
Thanks Arnd, I got a report on that from Jakub but you were before me here..
We could have a more elaborate method to force MLX5 to be a loadable
module in this case, but the easiest fix seems to be to always enable
MLXFW as well, like we do for CONFIG_MLXSW_SPECTRUM, which is the other
user of mlxfw_firmware_flash.
We would not want to force mlx5 users to build mlxfw.
So lets either use the more elaborate method or maybe instead of using
IS_ENABLED in mlxfw.h use IS_REACHABLE (this was suggested by Jakub)
Or.
On Thu, Jun 29, 2017 at 5:47 AM, Or Gerlitz [off-list ref] wrote:
On Wed, Jun 28, 2017 at 11:10 PM, Arnd Bergmann [off-list ref] wrote:
quoted
With the introduction of mlx5 firmware flash support, we get a link
error with CONFIG_MLXFW=m and CONFIG_MLX5_CORE=y:
drivers/net/ethernet/mellanox/mlx5/core/fw.o: In function `mlx5_firmware_flash':
fw.c:(.text+0x9d4): undefined reference to `mlxfw_firmware_flash'
Thanks Arnd, I got a report on that from Jakub but you were before me here..
quoted
We could have a more elaborate method to force MLX5 to be a loadable
module in this case, but the easiest fix seems to be to always enable
MLXFW as well, like we do for CONFIG_MLXSW_SPECTRUM, which is the other
user of mlxfw_firmware_flash.
We would not want to force mlx5 users to build mlxfw.
So lets either use the more elaborate method or maybe instead of using
IS_ENABLED in mlxfw.h use IS_REACHABLE (this was suggested by Jakub)
Sure, that works. I generally try to avoid IS_REACHABLE(), as I find it more
confusing than adding a dependency like
depends on MLXFW || MLXFW=n
(and yes, I was the one who introduced IS_REACHABLE() ;-) ).
Arnd