.. | .. |
---|
2346 | 2346 | { |
---|
2347 | 2347 | } |
---|
2348 | 2348 | |
---|
| 2349 | + |
---|
| 2350 | +static unsigned char macaddr[6]; |
---|
| 2351 | +extern ssize_t at24_mac_read(unsigned char* addr); |
---|
2349 | 2352 | void rk_get_eth_addr(void *priv, unsigned char *addr) |
---|
2350 | 2353 | { |
---|
2351 | 2354 | struct rk_priv_data *bsp_priv = priv; |
---|
2352 | 2355 | struct device *dev = &bsp_priv->pdev->dev; |
---|
2353 | 2356 | unsigned char ethaddr[ETH_ALEN * MAX_ETH] = {0}; |
---|
2354 | | - int ret, id = bsp_priv->bus_id; |
---|
2355 | | - |
---|
| 2357 | + int ret,i, id = bsp_priv->bus_id; |
---|
| 2358 | +#if 0 |
---|
2356 | 2359 | rk_devinfo_get_eth_mac(addr); |
---|
2357 | 2360 | if (is_valid_ether_addr(addr)) |
---|
2358 | 2361 | goto out; |
---|
.. | .. |
---|
2383 | 2386 | } else { |
---|
2384 | 2387 | memcpy(addr, ðaddr[id * ETH_ALEN], ETH_ALEN); |
---|
2385 | 2388 | } |
---|
| 2389 | +#endif |
---|
| 2390 | + #if 1 |
---|
| 2391 | + if (at24_mac_read(macaddr) > 0) { |
---|
| 2392 | + printk("ben %s: at24_mac_read Success!! \n", __func__); |
---|
| 2393 | + memcpy(addr, macaddr, 6); |
---|
| 2394 | + |
---|
| 2395 | + printk("Read the Ethernet MAC address from :"); |
---|
| 2396 | + for (i = 0; i < 5; i++) |
---|
| 2397 | + printk("%2.2x:", addr[i]); |
---|
| 2398 | + |
---|
| 2399 | + printk("%2.2x\n", addr[i]); |
---|
| 2400 | + } else { |
---|
| 2401 | + printk("ben %s: at24_mac_read Failed!! \n", __func__); |
---|
| 2402 | + goto out; |
---|
| 2403 | + } |
---|
| 2404 | + #endif |
---|
2386 | 2405 | |
---|
2387 | 2406 | out: |
---|
2388 | 2407 | dev_err(dev, "%s: mac address: %pM\n", __func__, addr); |
---|