682fef9ff6
CMD_EEPROM and ENV_IS_IN_EEPROM can be selected independently, and cmd/eeprom.o gets built in either case, so whether to declare the real prototypes needs to follow the same logic as whether cmd/eeprom.c is built. Otherwise a ENV_IS_IN_EEPROM=y, CMD_EEPROM=n build fails cmd/eeprom.c:73:1: error: expected identifier or ‘(’ before ‘{’ token { While at it, fix the dummy replacements (at least assuming they are meant to allow the code to compile) - they need to have the same type as the expression they replace, or one gets errors such as env/eeprom.c: In function ‘eeprom_bus_read’: env/eeprom.c:37:8: error: void value not ignored as it ought to be rcode = eeprom_read(dev_addr, offset, buffer, cnt); Signed-off-by: Rasmus Villemoes <rasmus.villemoes@prevas.dk> Reviewed-by: Tom Rini <trini@konsulko.com>
29 lines
897 B
C
29 lines
897 B
C
/* SPDX-License-Identifier: GPL-2.0+ */
|
|
/*
|
|
* (C) Copyright 2000-2009
|
|
* Wolfgang Denk, DENX Software Engineering, wd@denx.de.
|
|
*/
|
|
|
|
#ifndef __EEPROM_LEGACY_H
|
|
#define __EEPROM_LEGACY_H
|
|
|
|
#if defined(CONFIG_CMD_EEPROM) || defined(CONFIG_ENV_IS_IN_EEPROM)
|
|
void eeprom_init(int bus);
|
|
int eeprom_read(uint dev_addr, uint offset, uchar *buffer, uint cnt);
|
|
int eeprom_write(uint dev_addr, uint offset, uchar *buffer, uint cnt);
|
|
#else
|
|
/*
|
|
* Some EEPROM code is depecated because it used the legacy I2C interface. Add
|
|
* some macros here so we don't have to touch every one of those uses
|
|
*/
|
|
#define eeprom_init(bus)
|
|
#define eeprom_read(dev_addr, offset, buffer, cnt) (-ENOSYS)
|
|
#define eeprom_write(dev_addr, offset, buffer, cnt) (-ENOSYS)
|
|
#endif
|
|
|
|
#if !defined(CONFIG_ENV_EEPROM_IS_ON_I2C) && defined(CONFIG_SYS_I2C_EEPROM_ADDR)
|
|
# define CONFIG_SYS_DEF_EEPROM_ADDR CONFIG_SYS_I2C_EEPROM_ADDR
|
|
#endif
|
|
|
|
#endif
|