mirror of
https://source.denx.de/u-boot/u-boot.git
synced 2025-11-29 06:31:28 +01:00
arm: mx6: cm_fx6: use eeprom
Use Compulab eeprom module to obtain revision number, serial number, and mac address from the EEPROM. Cc: Igor Grinberg <grinberg@compulab.co.il> Cc: Stefano Babic <sbabic@denx.de> Cc: Tom Rini <trini@ti.com> Signed-off-by: Nikita Kiryanov <nikita@compulab.co.il>
This commit is contained in:
parent
f42b2f6061
commit
f66113c0ef
@ -20,6 +20,7 @@
|
|||||||
#include <asm/io.h>
|
#include <asm/io.h>
|
||||||
#include <asm/gpio.h>
|
#include <asm/gpio.h>
|
||||||
#include "common.h"
|
#include "common.h"
|
||||||
|
#include "../common/eeprom.h"
|
||||||
|
|
||||||
DECLARE_GLOBAL_DATA_PTR;
|
DECLARE_GLOBAL_DATA_PTR;
|
||||||
|
|
||||||
@ -209,8 +210,31 @@ static iomux_v3_cfg_t const enet_pads[] = {
|
|||||||
MUX_PAD_CTRL(ENET_PAD_CTRL)),
|
MUX_PAD_CTRL(ENET_PAD_CTRL)),
|
||||||
};
|
};
|
||||||
|
|
||||||
|
static int handle_mac_address(void)
|
||||||
|
{
|
||||||
|
unsigned char enetaddr[6];
|
||||||
|
int rc;
|
||||||
|
|
||||||
|
rc = eth_getenv_enetaddr("ethaddr", enetaddr);
|
||||||
|
if (rc)
|
||||||
|
return 0;
|
||||||
|
|
||||||
|
rc = cl_eeprom_read_mac_addr(enetaddr);
|
||||||
|
if (rc)
|
||||||
|
return rc;
|
||||||
|
|
||||||
|
if (!is_valid_ether_addr(enetaddr))
|
||||||
|
return -1;
|
||||||
|
|
||||||
|
return eth_setenv_enetaddr("ethaddr", enetaddr);
|
||||||
|
}
|
||||||
|
|
||||||
int board_eth_init(bd_t *bis)
|
int board_eth_init(bd_t *bis)
|
||||||
{
|
{
|
||||||
|
int res = handle_mac_address();
|
||||||
|
if (res)
|
||||||
|
puts("No MAC address found\n");
|
||||||
|
|
||||||
SETUP_IOMUX_PADS(enet_pads);
|
SETUP_IOMUX_PADS(enet_pads);
|
||||||
/* phy reset */
|
/* phy reset */
|
||||||
gpio_direction_output(CM_FX6_ENET_NRST, 0);
|
gpio_direction_output(CM_FX6_ENET_NRST, 0);
|
||||||
@ -364,3 +388,9 @@ int dram_init(void)
|
|||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
u32 get_board_rev(void)
|
||||||
|
{
|
||||||
|
return cl_eeprom_get_board_rev();
|
||||||
|
}
|
||||||
|
|
||||||
|
|||||||
@ -232,6 +232,8 @@
|
|||||||
#define CONFIG_SYS_BOOTMAPSZ (8 << 20)
|
#define CONFIG_SYS_BOOTMAPSZ (8 << 20)
|
||||||
#define CONFIG_SETUP_MEMORY_TAGS
|
#define CONFIG_SETUP_MEMORY_TAGS
|
||||||
#define CONFIG_INITRD_TAG
|
#define CONFIG_INITRD_TAG
|
||||||
|
#define CONFIG_REVISION_TAG
|
||||||
|
#define CONFIG_SERIAL_TAG
|
||||||
|
|
||||||
/* misc */
|
/* misc */
|
||||||
#define CONFIG_SYS_GENERIC_BOARD
|
#define CONFIG_SYS_GENERIC_BOARD
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user