Home | History | Annotate | Download | only in tinker_rk3288
      1 // SPDX-License-Identifier: GPL-2.0+
      2 /*
      3  * (C) Copyright 2016 Rockchip Electronics Co., Ltd
      4  */
      5 
      6 #include <common.h>
      7 #include <dm.h>
      8 #include <environment.h>
      9 #include <i2c_eeprom.h>
     10 #include <netdev.h>
     11 
     12 static int get_ethaddr_from_eeprom(u8 *addr)
     13 {
     14 	int ret;
     15 	struct udevice *dev;
     16 
     17 	ret = uclass_first_device_err(UCLASS_I2C_EEPROM, &dev);
     18 	if (ret)
     19 		return ret;
     20 
     21 	return i2c_eeprom_read(dev, 0, addr, 6);
     22 }
     23 
     24 int rk_board_late_init(void)
     25 {
     26 	u8 ethaddr[6];
     27 
     28 	if (get_ethaddr_from_eeprom(ethaddr))
     29 		return 0;
     30 
     31 	if (is_valid_ethaddr(ethaddr))
     32 		eth_env_set_enetaddr("ethaddr", ethaddr);
     33 
     34 	return 0;
     35 }
     36