From 50a212ec906f7524620675f0c57357691c26c81f Mon Sep 17 00:00:00 2001
From: hc <hc@nodka.com>
Date: Wed, 16 Oct 2024 01:20:19 +0000
Subject: [PATCH] 修改GPIO导出默认初始值
---
kernel/drivers/net/ethernet/stmicro/stmmac/dwmac-rk.c | 40 +++++++++++++++++++++++++---------------
1 files changed, 25 insertions(+), 15 deletions(-)
diff --git a/kernel/drivers/net/ethernet/stmicro/stmmac/dwmac-rk.c b/kernel/drivers/net/ethernet/stmicro/stmmac/dwmac-rk.c
index 8e1b354..47bb2b3 100644
--- a/kernel/drivers/net/ethernet/stmicro/stmmac/dwmac-rk.c
+++ b/kernel/drivers/net/ethernet/stmicro/stmmac/dwmac-rk.c
@@ -2718,9 +2718,10 @@
struct rk_priv_data *bsp_priv = priv;
struct device *dev = &bsp_priv->pdev->dev;
//unsigned char ethaddr[ETH_ALEN * MAX_ETH] = {0};
- //int ret, id = bsp_priv->bus_id;
- int i;
+ int ret, id = bsp_priv->bus_id;
+ //int i;
+ printk("hw-debug:enter rk_get_eth_addr.. \n");
#if 0
if (is_valid_ether_addr(addr))
goto out;
@@ -2753,21 +2754,30 @@
}
#endif
- #if 1
- if (at24_mac_read(macaddr) > 0) {
- printk("ben %s: at24_mac_read Success!! \n", __func__);
- memcpy(addr, macaddr, 6);
- printk("Read the Ethernet MAC address from :");
- for (i = 0; i < 5; i++)
- printk("%2.2x:", addr[i]);
+ //eeprom
+ ret = at24_mac_read(macaddr);
+ if (ret > 0)
+ {
+ printk("ben %s: at24_mac_read Success!! \n", __func__);
+ memcpy(addr, macaddr, 6);
- printk("%2.2x\n", addr[i]);
- } else {
- printk("ben %s: at24_mac_read Failed!! \n", __func__);
- goto out;
- }
- #endif
+ if ((addr[0] == 0x68) && (addr[1] == 0xed))
+ {
+ printk("at24_eeprom mac is valid \n", __func__);
+ goto out;
+ }
+ else
+ {
+ printk("at24_eeprom mac is invalid \n", __func__);
+ addr[0] = 0x68;
+ addr[1] = 0xed;
+ addr[2] = 0x01;
+ addr[3] = 0x02;
+ addr[4] = 0x03;
+ addr[5] = 0x04;
+ }
+ }
out:
dev_err(dev, "%s: mac address: %pM\n", __func__, addr);
}
--
Gitblit v1.6.2