xilinx: Move zynq_board_read_rom_ethaddr to shared location
Zynq and ZynqMP are sharing similar code and there is no reason to do code duplication. Move zynq_board_read_rom_ethaddr() to common file for easier conversion to DM. Use ZynqMP version that's why also add CONFIG_ZYNQ_EEPROM_BUS to Syzygy which is only one Zynq board which is using this feature. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
This commit is contained in:
parent
ad78d2641f
commit
9755e3db8b
@ -1 +1,3 @@
|
|||||||
|
#include "../../xilinx/common/board.c"
|
||||||
|
|
||||||
#include "../../xilinx/zynq/board.c"
|
#include "../../xilinx/zynq/board.c"
|
||||||
|
25
board/xilinx/common/board.c
Normal file
25
board/xilinx/common/board.c
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
// SPDX-License-Identifier: GPL-2.0+
|
||||||
|
/*
|
||||||
|
* (C) Copyright 2014 - 2019 Xilinx, Inc.
|
||||||
|
* Michal Simek <michal.simek@xilinx.com>
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <common.h>
|
||||||
|
#include <dm/uclass.h>
|
||||||
|
#include <i2c.h>
|
||||||
|
|
||||||
|
int zynq_board_read_rom_ethaddr(unsigned char *ethaddr)
|
||||||
|
{
|
||||||
|
#if defined(CONFIG_ZYNQ_GEM_EEPROM_ADDR) && \
|
||||||
|
defined(CONFIG_ZYNQ_GEM_I2C_MAC_OFFSET) && \
|
||||||
|
defined(CONFIG_ZYNQ_EEPROM_BUS)
|
||||||
|
i2c_set_bus_num(CONFIG_ZYNQ_EEPROM_BUS);
|
||||||
|
|
||||||
|
if (eeprom_read(CONFIG_ZYNQ_GEM_EEPROM_ADDR,
|
||||||
|
CONFIG_ZYNQ_GEM_I2C_MAC_OFFSET,
|
||||||
|
ethaddr, 6))
|
||||||
|
printf("I2C EEPROM MAC address read failed\n");
|
||||||
|
#endif
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
@ -4,6 +4,7 @@
|
|||||||
# Wolfgang Denk, DENX Software Engineering, wd@denx.de.
|
# Wolfgang Denk, DENX Software Engineering, wd@denx.de.
|
||||||
|
|
||||||
obj-y := board.o
|
obj-y := board.o
|
||||||
|
obj-y += ../common/board.o
|
||||||
|
|
||||||
ifneq ($(CONFIG_XILINX_PS_INIT_FILE),"")
|
ifneq ($(CONFIG_XILINX_PS_INIT_FILE),"")
|
||||||
PS_INIT_FILE := $(shell cd $(srctree); readlink -f $(CONFIG_XILINX_PS_INIT_FILE))
|
PS_INIT_FILE := $(shell cd $(srctree); readlink -f $(CONFIG_XILINX_PS_INIT_FILE))
|
||||||
|
@ -77,19 +77,6 @@ int board_late_init(void)
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
int zynq_board_read_rom_ethaddr(unsigned char *ethaddr)
|
|
||||||
{
|
|
||||||
#if defined(CONFIG_ZYNQ_GEM_EEPROM_ADDR) && \
|
|
||||||
defined(CONFIG_ZYNQ_GEM_I2C_MAC_OFFSET)
|
|
||||||
if (eeprom_read(CONFIG_ZYNQ_GEM_EEPROM_ADDR,
|
|
||||||
CONFIG_ZYNQ_GEM_I2C_MAC_OFFSET,
|
|
||||||
ethaddr, 6))
|
|
||||||
printf("I2C EEPROM MAC address read failed\n");
|
|
||||||
#endif
|
|
||||||
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
#if !defined(CONFIG_SYS_SDRAM_BASE) && !defined(CONFIG_SYS_SDRAM_SIZE)
|
#if !defined(CONFIG_SYS_SDRAM_BASE) && !defined(CONFIG_SYS_SDRAM_SIZE)
|
||||||
int dram_init_banksize(void)
|
int dram_init_banksize(void)
|
||||||
{
|
{
|
||||||
|
@ -4,6 +4,7 @@
|
|||||||
# Michal Simek <michal.simek@xilinx.com>
|
# Michal Simek <michal.simek@xilinx.com>
|
||||||
|
|
||||||
obj-y := zynqmp.o
|
obj-y := zynqmp.o
|
||||||
|
obj-y += ../common/board.o
|
||||||
|
|
||||||
ifneq ($(CONFIG_XILINX_PS_INIT_FILE),"")
|
ifneq ($(CONFIG_XILINX_PS_INIT_FILE),"")
|
||||||
PS_INIT_FILE := $(shell cd $(srctree); readlink -f $(CONFIG_XILINX_PS_INIT_FILE))
|
PS_INIT_FILE := $(shell cd $(srctree); readlink -f $(CONFIG_XILINX_PS_INIT_FILE))
|
||||||
|
@ -20,7 +20,6 @@
|
|||||||
#include <usb.h>
|
#include <usb.h>
|
||||||
#include <dwc3-uboot.h>
|
#include <dwc3-uboot.h>
|
||||||
#include <zynqmppl.h>
|
#include <zynqmppl.h>
|
||||||
#include <i2c.h>
|
|
||||||
#include <g_dnl.h>
|
#include <g_dnl.h>
|
||||||
|
|
||||||
DECLARE_GLOBAL_DATA_PTR;
|
DECLARE_GLOBAL_DATA_PTR;
|
||||||
@ -409,22 +408,6 @@ int board_early_init_r(void)
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
int zynq_board_read_rom_ethaddr(unsigned char *ethaddr)
|
|
||||||
{
|
|
||||||
#if defined(CONFIG_ZYNQ_GEM_EEPROM_ADDR) && \
|
|
||||||
defined(CONFIG_ZYNQ_GEM_I2C_MAC_OFFSET) && \
|
|
||||||
defined(CONFIG_ZYNQ_EEPROM_BUS)
|
|
||||||
i2c_set_bus_num(CONFIG_ZYNQ_EEPROM_BUS);
|
|
||||||
|
|
||||||
if (eeprom_read(CONFIG_ZYNQ_GEM_EEPROM_ADDR,
|
|
||||||
CONFIG_ZYNQ_GEM_I2C_MAC_OFFSET,
|
|
||||||
ethaddr, 6))
|
|
||||||
printf("I2C EEPROM MAC address read failed\n");
|
|
||||||
#endif
|
|
||||||
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
unsigned long do_go_exec(ulong (*entry)(int, char * const []), int argc,
|
unsigned long do_go_exec(ulong (*entry)(int, char * const []), int argc,
|
||||||
char * const argv[])
|
char * const argv[])
|
||||||
{
|
{
|
||||||
|
@ -12,6 +12,7 @@
|
|||||||
|
|
||||||
#define CONFIG_SYS_I2C_EEPROM_ADDR_LEN 1
|
#define CONFIG_SYS_I2C_EEPROM_ADDR_LEN 1
|
||||||
#define CONFIG_ZYNQ_GEM_EEPROM_ADDR 0x57
|
#define CONFIG_ZYNQ_GEM_EEPROM_ADDR 0x57
|
||||||
|
#define CONFIG_ZYNQ_EEPROM_BUS 0
|
||||||
|
|
||||||
#define CONFIG_EXTRA_ENV_SETTINGS \
|
#define CONFIG_EXTRA_ENV_SETTINGS \
|
||||||
"fit_image=fit.itb\0" \
|
"fit_image=fit.itb\0" \
|
||||||
|
Loading…
Reference in New Issue
Block a user