lede/package/qca/qca-ssdk/patches/0007-SSDK-dts-fix-of_get_mac_address.patch
1054009064 f6d0acb91b
qca-ssdk: refresh patches (#10845)
Fixed patch application failure.

Fixes: 89200af ("bump qca-ssdk nss-dp and ssdk-shell, Add tplink-tl-er2260t basic support (#10777)")
Fixes: #10844
2023-02-02 12:42:41 +08:00

28 lines
868 B
Diff

--- a/src/init/ssdk_dts.c
+++ b/src/init/ssdk_dts.c
@@ -824,8 +824,9 @@ static void ssdk_dt_parse_intf_mac(void)
{
struct device_node *dp_node = NULL;
a_uint32_t dp = 0;
- a_uint8_t *maddr = NULL;
+ u8 maddr[ETH_ALEN];
char dp_name[8] = {0};
+ int ret;
for (dp = 1; dp <= SSDK_MAX_NR_ETH; dp++) {
snprintf(dp_name, sizeof(dp_name), "dp%d", dp);
@@ -833,11 +834,11 @@ static void ssdk_dt_parse_intf_mac(void)
if (!dp_node) {
continue;
}
- maddr = (a_uint8_t *)of_get_mac_address(dp_node);
+ ret = of_get_mac_address(dp_node, maddr);
#if (LINUX_VERSION_CODE < KERNEL_VERSION(5, 0, 0))
if (maddr && is_valid_ether_addr(maddr)) {
#else
- if (!IS_ERR(maddr) && is_valid_ether_addr(maddr)) {
+ if (!ret && is_valid_ether_addr(maddr)) {
#endif
ssdk_dt_global.num_intf_mac++;
ether_addr_copy(ssdk_dt_global.intf_mac[dp-1].uc, maddr);