From: George Moussalem <george.moussalem@xxxxxxxxxxx> Many embedded devices with ath11k wifi chips store their mac address in nvmem partitions. Currently, the ath11k driver supports getting the mac address from the 'mac-address', 'local-mac-address', and 'address' device tree properties only. As such, add support for obtaining the mac address from nvmem if defined in a 'mac-address' cell by replacing the call to device_get_mac_address by of_get_mac_address which does exactly the same as the former but tries to get it from nvmem if it is not set by above mentioned DT properties, Tested-on: IPQ5018, QCN6122, and QCN9074 Signed-off-by: George Moussalem <george.moussalem@xxxxxxxxxxx> --- drivers/net/wireless/ath/ath11k/mac.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/net/wireless/ath/ath11k/mac.c b/drivers/net/wireless/ath/ath11k/mac.c index 97816916abac..49af6b9fc867 100644 --- a/drivers/net/wireless/ath/ath11k/mac.c +++ b/drivers/net/wireless/ath/ath11k/mac.c @@ -9,6 +9,7 @@ #include <linux/etherdevice.h> #include <linux/bitfield.h> #include <linux/inetdevice.h> +#include <linux/of_net.h> #include <net/if_inet6.h> #include <net/ipv6.h> @@ -10379,7 +10380,7 @@ int ath11k_mac_register(struct ath11k_base *ab) if (ret) return ret; - device_get_mac_address(ab->dev, mac_addr); + of_get_mac_address(ab->dev->of_node, mac_addr); for (i = 0; i < ab->num_radios; i++) { pdev = &ab->pdevs[i]; --- base-commit: 9388ec571cb1adba59d1cded2300eeb11827679c change-id: 20250324-ath11k-nvmem-9b4f54f44188 Best regards, -- George Moussalem <george.moussalem@xxxxxxxxxxx>