[U-Boot,v2,41/41] common: Move old EEPROM functions into a new header
diff mbox series

Message ID 20191108125120.v2.41.Ie3ccf685b6e2d4a0152740a4b4cde164da52447c@changeid
State Changes Requested
Delegated to: Tom Rini
Headers show
Series
  • common: Further reduce common.h
Related show

Commit Message

Simon Glass Nov. 8, 2019, 7:53 p.m. UTC
These functions do not use driver model but are still used. Move them to a
new eeprom_legacy.h header file.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

Changes in v2: None

 board/atmel/common/mac_eeprom.c               |  1 +
 board/compulab/common/eeprom.c                |  1 +
 board/corscience/tricorder/tricorder-eeprom.c |  1 +
 board/dhelectronics/dh_imx6/dh_imx6.c         |  1 +
 board/freescale/mpc8323erdb/mpc8323erdb.c     |  1 +
 board/kosagi/novena/novena.c                  |  1 +
 board/phytec/phycore_rk3288/phycore-rk3288.c  |  1 +
 board/rockchip/tinker_rk3288/tinker-rk3288.c  |  1 +
 board/softing/vining_fpga/socfpga.c           |  1 +
 board/ti/am43xx/board.c                       |  1 +
 board/ti/common/board_detect.c                |  1 +
 board/ti/ks2_evm/board_k2g.c                  |  1 +
 cmd/eeprom.c                                  |  1 +
 drivers/misc/i2c_eeprom.c                     |  1 +
 drivers/mtd/mw_eeprom.c                       |  1 +
 drivers/rtc/rv3029.c                          |  1 +
 env/eeprom.c                                  |  1 +
 include/common.h                              | 15 ------------
 include/eeprom_legacy.h                       | 24 +++++++++++++++++++
 19 files changed, 41 insertions(+), 15 deletions(-)
 create mode 100644 include/eeprom_legacy.h

Comments

Tom Rini Nov. 11, 2019, 3:08 p.m. UTC | #1
On Fri, Nov 08, 2019 at 12:53:48PM -0700, Simon Glass wrote:

> These functions do not use driver model but are still used. Move them to a
> new eeprom_legacy.h header file.
> 
> Signed-off-by: Simon Glass <sjg@chromium.org>

I'm not sure if calling this legacy is correct or not as well.  Looking
over cmd/eeprom.c it unwinds to "use DM for i2c if available, not if
not".  It could be enhanced in the future to handle non-i2c eeproms
perhaps, yes.  And then consolidate this with drivers/misc/i2c_eeprom.c
should also be done.

Patch
diff mbox series

diff --git a/board/atmel/common/mac_eeprom.c b/board/atmel/common/mac_eeprom.c
index 83a7778e99..cb9df31a6a 100644
--- a/board/atmel/common/mac_eeprom.c
+++ b/board/atmel/common/mac_eeprom.c
@@ -6,6 +6,7 @@ 
 
 #include <common.h>
 #include <dm.h>
+#include <eeprom_legacy.h>
 #include <env.h>
 #include <i2c_eeprom.h>
 #include <netdev.h>
diff --git a/board/compulab/common/eeprom.c b/board/compulab/common/eeprom.c
index 81f69d3850..7e4ce89367 100644
--- a/board/compulab/common/eeprom.c
+++ b/board/compulab/common/eeprom.c
@@ -7,6 +7,7 @@ 
  */
 
 #include <common.h>
+#include <eeprom_legacy.h>
 #include <i2c.h>
 #include <eeprom_layout.h>
 #include <eeprom_field.h>
diff --git a/board/corscience/tricorder/tricorder-eeprom.c b/board/corscience/tricorder/tricorder-eeprom.c
index b28189dafd..faec265fd9 100644
--- a/board/corscience/tricorder/tricorder-eeprom.c
+++ b/board/corscience/tricorder/tricorder-eeprom.c
@@ -5,6 +5,7 @@ 
  * Andreas BieƟmann <andreas.biessmann@corscience.de>
  */
 #include <common.h>
+#include <eeprom_legacy.h>
 #include <i2c.h>
 #include <u-boot/crc.h>
 
diff --git a/board/dhelectronics/dh_imx6/dh_imx6.c b/board/dhelectronics/dh_imx6/dh_imx6.c
index 037be01f8b..aef27817c6 100644
--- a/board/dhelectronics/dh_imx6/dh_imx6.c
+++ b/board/dhelectronics/dh_imx6/dh_imx6.c
@@ -7,6 +7,7 @@ 
 
 #include <common.h>
 #include <dm.h>
+#include <eeprom_legacy.h>
 #include <init.h>
 #include <dm/device-internal.h>
 #include <asm/arch/clock.h>
diff --git a/board/freescale/mpc8323erdb/mpc8323erdb.c b/board/freescale/mpc8323erdb/mpc8323erdb.c
index cbec8a44e4..a6f4dd06c2 100644
--- a/board/freescale/mpc8323erdb/mpc8323erdb.c
+++ b/board/freescale/mpc8323erdb/mpc8323erdb.c
@@ -10,6 +10,7 @@ 
  */
 
 #include <common.h>
+#include <eeprom_legacy.h>
 #include <env.h>
 #include <init.h>
 #include <ioports.h>
diff --git a/board/kosagi/novena/novena.c b/board/kosagi/novena/novena.c
index e4f0e81004..9b2bd8f1dc 100644
--- a/board/kosagi/novena/novena.c
+++ b/board/kosagi/novena/novena.c
@@ -7,6 +7,7 @@ 
 
 #include <common.h>
 #include <dm.h>
+#include <eeprom_legacy.h>
 #include <init.h>
 #include <dm/device-internal.h>
 #include <ahci.h>
diff --git a/board/phytec/phycore_rk3288/phycore-rk3288.c b/board/phytec/phycore_rk3288/phycore-rk3288.c
index dac59cd55d..da3119d3ce 100644
--- a/board/phytec/phycore_rk3288/phycore-rk3288.c
+++ b/board/phytec/phycore_rk3288/phycore-rk3288.c
@@ -4,6 +4,7 @@ 
  * Author: Wadim Egorov <w.egorov@phytec.de>
  */
 
+#include <eeprom_legacy.h>
 #include <init.h>
 #include <asm/io.h>
 #include <common.h>
diff --git a/board/rockchip/tinker_rk3288/tinker-rk3288.c b/board/rockchip/tinker_rk3288/tinker-rk3288.c
index 93e9d2f465..740d309747 100644
--- a/board/rockchip/tinker_rk3288/tinker-rk3288.c
+++ b/board/rockchip/tinker_rk3288/tinker-rk3288.c
@@ -5,6 +5,7 @@ 
 
 #include <common.h>
 #include <dm.h>
+#include <eeprom_legacy.h>
 #include <env.h>
 #include <i2c_eeprom.h>
 #include <init.h>
diff --git a/board/softing/vining_fpga/socfpga.c b/board/softing/vining_fpga/socfpga.c
index d70c22f48f..1f54e0027f 100644
--- a/board/softing/vining_fpga/socfpga.c
+++ b/board/softing/vining_fpga/socfpga.c
@@ -4,6 +4,7 @@ 
  */
 
 #include <common.h>
+#include <eeprom_legacy.h>
 #include <env.h>
 #include <init.h>
 #include <status_led.h>
diff --git a/board/ti/am43xx/board.c b/board/ti/am43xx/board.c
index 9353830969..2214789ac9 100644
--- a/board/ti/am43xx/board.c
+++ b/board/ti/am43xx/board.c
@@ -8,6 +8,7 @@ 
  */
 
 #include <common.h>
+#include <eeprom_legacy.h>
 #include <env.h>
 #include <i2c.h>
 #include <init.h>
diff --git a/board/ti/common/board_detect.c b/board/ti/common/board_detect.c
index bc89cc57bd..79f6ea423d 100644
--- a/board/ti/common/board_detect.c
+++ b/board/ti/common/board_detect.c
@@ -8,6 +8,7 @@ 
  */
 
 #include <common.h>
+#include <eeprom_legacy.h>
 #include <asm/arch/hardware.h>
 #include <asm/omap_common.h>
 #include <dm/uclass.h>
diff --git a/board/ti/ks2_evm/board_k2g.c b/board/ti/ks2_evm/board_k2g.c
index a0fd03a39f..05f1772725 100644
--- a/board/ti/ks2_evm/board_k2g.c
+++ b/board/ti/ks2_evm/board_k2g.c
@@ -6,6 +6,7 @@ 
  *     Texas Instruments Incorporated, <www.ti.com>
  */
 #include <common.h>
+#include <eeprom_legacy.h>
 #include <env.h>
 #include <init.h>
 #include <asm/arch/clock.h>
diff --git a/cmd/eeprom.c b/cmd/eeprom.c
index 19953df082..8ed27a6621 100644
--- a/cmd/eeprom.c
+++ b/cmd/eeprom.c
@@ -22,6 +22,7 @@ 
 #include <common.h>
 #include <config.h>
 #include <command.h>
+#include <eeprom_legacy.h>
 #include <i2c.h>
 #include <eeprom_layout.h>
 
diff --git a/drivers/misc/i2c_eeprom.c b/drivers/misc/i2c_eeprom.c
index 8f2349ad5a..8999b05f4a 100644
--- a/drivers/misc/i2c_eeprom.c
+++ b/drivers/misc/i2c_eeprom.c
@@ -4,6 +4,7 @@ 
  */
 
 #include <common.h>
+#include <eeprom_legacy.h>
 #include <linux/err.h>
 #include <linux/kernel.h>
 #include <dm.h>
diff --git a/drivers/mtd/mw_eeprom.c b/drivers/mtd/mw_eeprom.c
index f7791b51a0..a2453902d4 100644
--- a/drivers/mtd/mw_eeprom.c
+++ b/drivers/mtd/mw_eeprom.c
@@ -1,6 +1,7 @@ 
 /* Three-wire (MicroWire) serial eeprom driver (for 93C46 and compatibles) */
 
 #include <common.h>
+#include <eeprom_legacy.h>
 #include <asm/ic/ssi.h>
 
 /*
diff --git a/drivers/rtc/rv3029.c b/drivers/rtc/rv3029.c
index 38acb9c992..de9b68959f 100644
--- a/drivers/rtc/rv3029.c
+++ b/drivers/rtc/rv3029.c
@@ -10,6 +10,7 @@ 
 #include <common.h>
 #include <command.h>
 #include <dm.h>
+#include <eeprom_legacy.h>
 #include <i2c.h>
 #include <rtc.h>
 
diff --git a/env/eeprom.c b/env/eeprom.c
index f0bdf2a141..cfd5dba10a 100644
--- a/env/eeprom.c
+++ b/env/eeprom.c
@@ -9,6 +9,7 @@ 
 
 #include <common.h>
 #include <command.h>
+#include <eeprom_legacy.h>
 #include <env.h>
 #include <env_internal.h>
 #include <linux/stddef.h>
diff --git a/include/common.h b/include/common.h
index 64d0cf542e..8b37b58747 100644
--- a/include/common.h
+++ b/include/common.h
@@ -116,21 +116,6 @@  phys_size_t get_effective_memsize(void);
 void	reset_phy     (void);
 void	fdc_hw_init   (void);
 
-/* $(BOARD)/eeprom.c */
-#ifdef CONFIG_CMD_EEPROM
-void eeprom_init  (int bus);
-int  eeprom_read  (unsigned dev_addr, unsigned offset, uchar *buffer, unsigned cnt);
-int  eeprom_write (unsigned dev_addr, unsigned offset, uchar *buffer, unsigned 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) ((void)-ENOSYS)
-#define eeprom_write(dev_addr, offset, buffer, cnt) ((void)-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
diff --git a/include/eeprom_legacy.h b/include/eeprom_legacy.h
new file mode 100644
index 0000000000..61eb826a73
--- /dev/null
+++ b/include/eeprom_legacy.h
@@ -0,0 +1,24 @@ 
+/* 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
+
+#ifdef CONFIG_CMD_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) ((void)-ENOSYS)
+#define eeprom_write(dev_addr, offset, buffer, cnt) ((void)-ENOSYS)
+#endif
+
+#endif