All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 00/31] dm: Avoid including dm.h in header files
@ 2020-07-19 16:15 Simon Glass
  2020-07-19 16:15 ` [PATCH 01/31] spi: Allow separate control of SPI_FLASH_TINY for SPL/TPL Simon Glass
                   ` (30 more replies)
  0 siblings, 31 replies; 68+ messages in thread
From: Simon Glass @ 2020-07-19 16:15 UTC (permalink / raw)
  To: u-boot

At present a small number of header files include the dm.h header file.
The intent with driver model is for C files that use it to define dm.h
themselves. This helps indicate that driver model is supported and also
reduces the amount of code pointlessly included and relying on header
guards. Ultimately (combined with the reduction in size of common.h)
this should speed up U-Boot compilation.

This series removes all uses of dm.h in header files and adds a warning
to avert more such activity.


Simon Glass (31):
  spi: Allow separate control of SPI_FLASH_TINY for SPL/TPL
  mtd: spi-nor: Tidy up error handling / debug code
  wdt: Drop dm.h header file
  mtd: spi-mem: Drop dm.h header file
  mtd: spi: Drop SPI_XFER_MMAP*
  dm: core: Drop dm.h header file from dm-demo.h
  dm: core: Drop header files from dm/test.h
  fs: fs-loader: Drop dm.h header file
  net: Drop dm.h header file from phy.h
  sf: Drop dm.h header file from spi_flash.h
  thermal: Drop dm.h header file
  w1: Drop dm.h header file
  efi: Tidy up header includes
  power: Tidy up inclusion of regulator_common.h
  mmc: Drop duplicate dm.h inclusion
  spi: Drop duplicate dm.h inclusion
  ti: am654: Drop duplicate dm.h inclusion
  liebherr: Drop duplicate dm.h inclusion
  pci: Drop dm.h inclusion from header file
  mediatek: Drop dm.h header file
  mscc: Drop dm.h header file
  adc: Drop dm.h header file
  nand: Drop dm.h header file
  ufs: Drop dm.h header file
  usb: Drop dm.h header file
  clk: Drop dm.h header file in clk-provider.h
  net: Drop dm.h header file in eth_phy.h
  net: Drop duplicate include of dm.h in pcnet.c
  dm: core: Guard against including dm.h in header files
  patman: Fix up the test comments
  checkpatch: Don't allow common.h and dm.h in headers

 arch/arm/include/asm/arch-mediatek/reset.h    |  2 +-
 arch/arm/mach-imx/cpu.c                       |  1 +
 arch/arm/mach-k3/sysfw-loader.c               |  1 +
 .../cmd_stm32prog/stm32prog_serial.c          |  1 +
 arch/mips/mach-mscc/include/mach/jr2/jr2.h    |  3 --
 .../mips/mach-mscc/include/mach/luton/luton.h |  3 --
 .../mach-mscc/include/mach/ocelot/ocelot.h    |  3 --
 .../mach-mscc/include/mach/serval/serval.h    |  3 --
 .../mach-mscc/include/mach/servalt/servalt.h  |  3 --
 arch/x86/cpu/ivybridge/sdram.c                |  1 +
 board/atmel/common/board.c                    |  1 +
 board/liebherr/display5/display5.c            |  1 -
 board/mscc/servalt/servalt.c                  |  2 +
 board/st/common/stm32mp_dfu.c                 |  1 +
 cmd/demo.c                                    |  1 +
 cmd/mdio.c                                    |  1 +
 cmd/mii.c                                     |  1 +
 cmd/w1.c                                      |  1 +
 common/spl/Kconfig                            | 10 +++++
 drivers/adc/stm32-adc-core.c                  |  1 +
 drivers/adc/stm32-adc-core.h                  |  4 +-
 drivers/adc/stm32-adc.c                       |  1 +
 drivers/clk/clk-uclass.c                      |  5 +++
 drivers/clk/kendryte/bypass.c                 |  7 ++-
 drivers/clk/kendryte/pll.c                    | 10 +++--
 drivers/fpga/socfpga_arria10.c                |  1 +
 drivers/mmc/sdhci.c                           |  1 -
 .../mtd/nand/raw/brcmnand/brcmnand_compat.c   |  1 +
 .../mtd/nand/raw/brcmnand/brcmnand_compat.h   |  4 +-
 drivers/mtd/spi/Makefile                      |  2 +-
 drivers/mtd/spi/sf_probe.c                    |  2 +-
 drivers/mtd/spi/spi-nor-core.c                |  2 +-
 drivers/mtd/spi/spi-nor-tiny.c                |  4 +-
 drivers/net/pcnet.c                           |  1 -
 drivers/pci/pcie_layerscape.h                 |  1 -
 drivers/pci/pcie_layerscape_fixup.c           |  1 +
 drivers/pci/pcie_layerscape_gen4.h            |  1 -
 drivers/pci/pcie_layerscape_gen4_fixup.c      |  1 +
 drivers/power/regulator/fixed.c               |  3 +-
 drivers/power/regulator/gpio-regulator.c      |  3 +-
 drivers/power/regulator/regulator_common.c    |  4 +-
 drivers/power/regulator/regulator_common.h    |  2 -
 drivers/ram/k3-am654-ddrss.c                  |  1 -
 drivers/spi/mscc_bb_spi.c                     |  1 -
 drivers/spi/spi-mem.c                         |  7 ++-
 drivers/spi/spi-sifive.c                      |  1 +
 drivers/spi/stm32_qspi.c                      |  2 +
 drivers/ufs/cdns-platform.c                   |  1 +
 drivers/ufs/ufs.c                             |  3 +-
 drivers/ufs/ufs.h                             |  5 +--
 drivers/usb/musb-new/musb_uboot.c             | 37 +++++++++++++++
 drivers/usb/musb-new/pic32.c                  |  1 +
 drivers/usb/musb-new/usb-compat.h             | 45 ++++---------------
 include/dm-demo.h                             |  2 -
 include/dm.h                                  |  4 ++
 include/dm/read.h                             |  1 +
 include/dm/test.h                             |  3 --
 include/efi_driver.h                          |  2 -
 include/eth_phy.h                             |  3 +-
 include/fs_loader.h                           |  2 +-
 include/kendryte/bypass.h                     |  2 +-
 include/linux/clk-provider.h                  |  8 ++--
 include/phy.h                                 |  9 ++--
 include/phy_interface.h                       |  2 +
 include/spi-mem.h                             |  5 +--
 include/spi.h                                 |  2 -
 include/spi_flash.h                           |  3 +-
 include/test/ut.h                             |  1 +
 include/thermal.h                             |  2 +-
 include/w1.h                                  |  2 +-
 include/wdt.h                                 |  4 +-
 lib/efi_driver/efi_block_device.c             |  1 +
 lib/efi_driver/efi_uclass.c                   |  2 +
 net/eth_legacy.c                              |  1 +
 scripts/checkpatch.pl                         | 10 ++++-
 test/dm/adc.c                                 |  1 +
 test/dm/audio.c                               |  1 +
 test/dm/axi.c                                 |  3 +-
 test/dm/blk.c                                 |  1 +
 test/dm/board.c                               |  1 +
 test/dm/bootcount.c                           |  1 +
 test/dm/bus.c                                 |  1 +
 test/dm/clk.c                                 |  1 +
 test/dm/clk_ccf.c                             |  1 +
 test/dm/core.c                                |  1 +
 test/dm/cpu.c                                 |  1 +
 test/dm/dma.c                                 |  1 +
 test/dm/dsi_host.c                            |  1 +
 test/dm/eth.c                                 |  3 +-
 test/dm/firmware.c                            |  1 +
 test/dm/gpio.c                                |  3 +-
 test/dm/hwspinlock.c                          |  1 +
 test/dm/i2c.c                                 |  1 +
 test/dm/i2s.c                                 |  3 +-
 test/dm/led.c                                 |  1 +
 test/dm/mailbox.c                             |  1 +
 test/dm/mdio.c                                |  5 ++-
 test/dm/mdio_mux.c                            |  5 ++-
 test/dm/misc.c                                |  1 +
 test/dm/mmc.c                                 |  1 +
 test/dm/nop.c                                 |  1 +
 test/dm/ofnode.c                              |  1 +
 test/dm/osd.c                                 |  5 ++-
 test/dm/panel.c                               |  3 +-
 test/dm/pch.c                                 |  1 +
 test/dm/pci.c                                 |  1 +
 test/dm/pci_ep.c                              |  5 ++-
 test/dm/phy.c                                 |  1 +
 test/dm/pmic.c                                |  5 ++-
 test/dm/power-domain.c                        |  1 +
 test/dm/pwm.c                                 |  1 +
 test/dm/ram.c                                 |  1 +
 test/dm/regmap.c                              |  1 +
 test/dm/regulator.c                           |  1 +
 test/dm/remoteproc.c                          |  2 +
 test/dm/reset.c                               |  1 +
 test/dm/rtc.c                                 |  1 +
 test/dm/serial.c                              |  1 +
 test/dm/sf.c                                  |  1 +
 test/dm/smem.c                                |  1 +
 test/dm/sound.c                               |  1 +
 test/dm/spi.c                                 |  1 +
 test/dm/spmi.c                                |  1 +
 test/dm/syscon.c                              |  1 +
 test/dm/sysreset.c                            |  1 +
 test/dm/tee.c                                 |  1 +
 test/dm/test-driver.c                         |  3 +-
 test/dm/test-fdt.c                            |  1 +
 test/dm/test-main.c                           |  2 +
 test/dm/test-uclass.c                         |  1 +
 test/dm/timer.c                               |  1 +
 test/dm/usb.c                                 |  1 +
 test/dm/video.c                               |  1 +
 test/dm/virtio.c                              |  3 +-
 test/dm/wdt.c                                 |  1 +
 test/lib/lmb.c                                |  2 +
 tools/patman/test_checkpatch.py               | 17 ++++---
 137 files changed, 254 insertions(+), 138 deletions(-)

-- 
2.28.0.rc0.105.gf9edc3c819-goog

^ permalink raw reply	[flat|nested] 68+ messages in thread

* [PATCH 01/31] spi: Allow separate control of SPI_FLASH_TINY for SPL/TPL
  2020-07-19 16:15 [PATCH 00/31] dm: Avoid including dm.h in header files Simon Glass
@ 2020-07-19 16:15 ` Simon Glass
  2020-08-04 15:03   ` Tom Rini
  2020-07-19 16:15 ` [PATCH 02/31] mtd: spi-nor: Tidy up error handling / debug code Simon Glass
                   ` (29 subsequent siblings)
  30 siblings, 1 reply; 68+ messages in thread
From: Simon Glass @ 2020-07-19 16:15 UTC (permalink / raw)
  To: u-boot

In some cases SPL needs to be able to erase but TPL just needs to read.
Allow these to have separate settings for SPI_FLASH_TINY.

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

 common/spl/Kconfig       | 10 ++++++++++
 drivers/mtd/spi/Makefile |  2 +-
 2 files changed, 11 insertions(+), 1 deletion(-)

diff --git a/common/spl/Kconfig b/common/spl/Kconfig
index d09e52e88b..c3f063e337 100644
--- a/common/spl/Kconfig
+++ b/common/spl/Kconfig
@@ -1496,6 +1496,16 @@ config TPL_SPI_FLASH_SUPPORT
 	  Enable support for using SPI flash in TPL. See SPL_SPI_FLASH_SUPPORT
 	  for details.
 
+config TPL_SPI_FLASH_TINY
+	bool "Enable low footprint TPL SPI Flash support"
+	depends on TPL_SPI_FLASH_SUPPORT && !SPI_FLASH_BAR
+	default y if SPI_FLASH
+	help
+	 Enable lightweight TPL SPI Flash support that supports just reading
+	 data/images from flash. No support to write/erase flash. Enable
+	 this if you have TPL size limitations and don't need full-fledged
+	 SPI flash support.
+
 config TPL_SPI_LOAD
 	bool "Support loading from SPI flash"
 	depends on TPL_SPI_FLASH_SUPPORT
diff --git a/drivers/mtd/spi/Makefile b/drivers/mtd/spi/Makefile
index 952fd1e45a..99cc418552 100644
--- a/drivers/mtd/spi/Makefile
+++ b/drivers/mtd/spi/Makefile
@@ -8,7 +8,7 @@ spi-nor-y := sf_probe.o spi-nor-ids.o
 
 ifdef CONFIG_SPL_BUILD
 obj-$(CONFIG_SPL_SPI_BOOT)	+= fsl_espi_spl.o
-ifeq ($(CONFIG_SPL_SPI_FLASH_TINY),y)
+ifeq ($(CONFIG_$(SPL_TPL_)SPI_FLASH_TINY),y)
 spi-nor-y += spi-nor-tiny.o
 else
 spi-nor-y += spi-nor-core.o
-- 
2.28.0.rc0.105.gf9edc3c819-goog

^ permalink raw reply related	[flat|nested] 68+ messages in thread

* [PATCH 02/31] mtd: spi-nor: Tidy up error handling / debug code
  2020-07-19 16:15 [PATCH 00/31] dm: Avoid including dm.h in header files Simon Glass
  2020-07-19 16:15 ` [PATCH 01/31] spi: Allow separate control of SPI_FLASH_TINY for SPL/TPL Simon Glass
@ 2020-07-19 16:15 ` Simon Glass
  2020-07-20  6:12   ` Vignesh Raghavendra
  2020-08-04 15:03   ` Tom Rini
  2020-07-19 16:15 ` [PATCH 03/31] wdt: Drop dm.h header file Simon Glass
                   ` (28 subsequent siblings)
  30 siblings, 2 replies; 68+ messages in thread
From: Simon Glass @ 2020-07-19 16:15 UTC (permalink / raw)
  To: u-boot

The -ENODEV error value in spi_nor_read_id() is incorrect since there
clearly is a device - it just cannot be supported. Use -ENOMEDIUM instead
which has the virtue of being less common.

Fix the return value in spi_nor_scan().

Also there are a few printf() statements which should be debug() since
they bloat the code with unused strings at present. Fix those while here.

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

 drivers/mtd/spi/sf_probe.c     | 2 +-
 drivers/mtd/spi/spi-nor-core.c | 2 +-
 drivers/mtd/spi/spi-nor-tiny.c | 4 ++--
 3 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/drivers/mtd/spi/sf_probe.c b/drivers/mtd/spi/sf_probe.c
index 475f6c31db..b959e3453a 100644
--- a/drivers/mtd/spi/sf_probe.c
+++ b/drivers/mtd/spi/sf_probe.c
@@ -119,7 +119,7 @@ static int spi_flash_std_erase(struct udevice *dev, u32 offset, size_t len)
 	struct erase_info instr;
 
 	if (offset % mtd->erasesize || len % mtd->erasesize) {
-		printf("SF: Erase offset/length not multiple of erase size\n");
+		debug("SF: Erase offset/length not multiple of erase size\n");
 		return -EINVAL;
 	}
 
diff --git a/drivers/mtd/spi/spi-nor-core.c b/drivers/mtd/spi/spi-nor-core.c
index fdcd830ce4..0113e70037 100644
--- a/drivers/mtd/spi/spi-nor-core.c
+++ b/drivers/mtd/spi/spi-nor-core.c
@@ -2470,7 +2470,7 @@ static int spi_nor_init(struct spi_nor *nor)
 		 * designer) that this is bad.
 		 */
 		if (nor->flags & SNOR_F_BROKEN_RESET)
-			printf("enabling reset hack; may not recover from unexpected reboots\n");
+			debug("enabling reset hack; may not recover from unexpected reboots\n");
 		set_4byte(nor, nor->info, 1);
 	}
 
diff --git a/drivers/mtd/spi/spi-nor-tiny.c b/drivers/mtd/spi/spi-nor-tiny.c
index 9f676c649d..fa26ea33c8 100644
--- a/drivers/mtd/spi/spi-nor-tiny.c
+++ b/drivers/mtd/spi/spi-nor-tiny.c
@@ -377,7 +377,7 @@ static const struct flash_info *spi_nor_read_id(struct spi_nor *nor)
 	}
 	dev_dbg(nor->dev, "unrecognized JEDEC id bytes: %02x, %02x, %02x\n",
 		id[0], id[1], id[2]);
-	return ERR_PTR(-ENODEV);
+	return ERR_PTR(-EMEDIUMTYPE);
 }
 
 static int spi_nor_read(struct mtd_info *mtd, loff_t from, size_t len,
@@ -733,7 +733,7 @@ int spi_nor_scan(struct spi_nor *nor)
 
 	info = spi_nor_read_id(nor);
 	if (IS_ERR_OR_NULL(info))
-		return -ENOENT;
+		return PTR_ERR(info);
 	/* Parse the Serial Flash Discoverable Parameters table. */
 	ret = spi_nor_init_params(nor, info, &params);
 	if (ret)
-- 
2.28.0.rc0.105.gf9edc3c819-goog

^ permalink raw reply related	[flat|nested] 68+ messages in thread

* [PATCH 03/31] wdt: Drop dm.h header file
  2020-07-19 16:15 [PATCH 00/31] dm: Avoid including dm.h in header files Simon Glass
  2020-07-19 16:15 ` [PATCH 01/31] spi: Allow separate control of SPI_FLASH_TINY for SPL/TPL Simon Glass
  2020-07-19 16:15 ` [PATCH 02/31] mtd: spi-nor: Tidy up error handling / debug code Simon Glass
@ 2020-07-19 16:15 ` Simon Glass
  2020-08-04 15:03   ` Tom Rini
  2020-07-19 16:15 ` [PATCH 04/31] mtd: spi-mem: " Simon Glass
                   ` (27 subsequent siblings)
  30 siblings, 1 reply; 68+ messages in thread
From: Simon Glass @ 2020-07-19 16:15 UTC (permalink / raw)
  To: u-boot

This header file should not be included in other header files. Remove it
and use a forward declaration instead.

Also remove the other headers that are not needed, since the inline code
was removed in a recent commit:

   b4d9452c4 ("watchdog: move initr_watchdog() to wdt-uclass.c")

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

 include/wdt.h | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/include/wdt.h b/include/wdt.h
index d2ccfbc62e..bc242c2eb2 100644
--- a/include/wdt.h
+++ b/include/wdt.h
@@ -6,9 +6,7 @@
 #ifndef _WDT_H_
 #define _WDT_H_
 
-#include <dm.h>
-#include <log.h>
-#include <dm/read.h>
+struct udevice;
 
 /*
  * Implement a simple watchdog uclass. Watchdog is basically a timer that
-- 
2.28.0.rc0.105.gf9edc3c819-goog

^ permalink raw reply related	[flat|nested] 68+ messages in thread

* [PATCH 04/31] mtd: spi-mem: Drop dm.h header file
  2020-07-19 16:15 [PATCH 00/31] dm: Avoid including dm.h in header files Simon Glass
                   ` (2 preceding siblings ...)
  2020-07-19 16:15 ` [PATCH 03/31] wdt: Drop dm.h header file Simon Glass
@ 2020-07-19 16:15 ` Simon Glass
  2020-08-04 15:03   ` Tom Rini
  2020-07-19 16:15 ` [PATCH 05/31] mtd: spi: Drop SPI_XFER_MMAP* Simon Glass
                   ` (26 subsequent siblings)
  30 siblings, 1 reply; 68+ messages in thread
From: Simon Glass @ 2020-07-19 16:15 UTC (permalink / raw)
  To: u-boot

This header file should not be included in other header files. Remove it
and use a forward declaration instead.

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

 drivers/spi/spi-mem.c    | 7 ++++++-
 drivers/spi/spi-sifive.c | 1 +
 drivers/spi/stm32_qspi.c | 2 ++
 include/spi-mem.h        | 5 +----
 4 files changed, 10 insertions(+), 5 deletions(-)

diff --git a/drivers/spi/spi-mem.c b/drivers/spi/spi-mem.c
index d344701aeb..c095ae9505 100644
--- a/drivers/spi/spi-mem.c
+++ b/drivers/spi/spi-mem.c
@@ -13,9 +13,14 @@
 #include <linux/pm_runtime.h>
 #include "internals.h"
 #else
-#include <dm/device_compat.h>
+#include <common.h>
+#include <dm.h>
+#include <errno.h>
+#include <malloc.h>
+#include <spi.h>
 #include <spi.h>
 #include <spi-mem.h>
+#include <dm/device_compat.h>
 #endif
 
 #ifndef __UBOOT__
diff --git a/drivers/spi/spi-sifive.c b/drivers/spi/spi-sifive.c
index 0e0ce25abb..c7345d9042 100644
--- a/drivers/spi/spi-sifive.c
+++ b/drivers/spi/spi-sifive.c
@@ -10,6 +10,7 @@
 #include <dm.h>
 #include <dm/device_compat.h>
 #include <malloc.h>
+#include <spi.h>
 #include <spi-mem.h>
 #include <wait_bit.h>
 #include <asm/io.h>
diff --git a/drivers/spi/stm32_qspi.c b/drivers/spi/stm32_qspi.c
index 001f0703e3..a53b941410 100644
--- a/drivers/spi/stm32_qspi.c
+++ b/drivers/spi/stm32_qspi.c
@@ -9,8 +9,10 @@
 
 #include <common.h>
 #include <clk.h>
+#include <dm.h>
 #include <log.h>
 #include <reset.h>
+#include <spi.h>
 #include <spi-mem.h>
 #include <dm/device_compat.h>
 #include <linux/bitops.h>
diff --git a/include/spi-mem.h b/include/spi-mem.h
index 893f7bd733..ca0f55c8fd 100644
--- a/include/spi-mem.h
+++ b/include/spi-mem.h
@@ -11,10 +11,7 @@
 #ifndef __UBOOT_SPI_MEM_H
 #define __UBOOT_SPI_MEM_H
 
-#include <common.h>
-#include <dm.h>
-#include <errno.h>
-#include <spi.h>
+struct udevice;
 
 #define SPI_MEM_OP_CMD(__opcode, __buswidth)			\
 	{							\
-- 
2.28.0.rc0.105.gf9edc3c819-goog

^ permalink raw reply related	[flat|nested] 68+ messages in thread

* [PATCH 05/31] mtd: spi: Drop SPI_XFER_MMAP*
  2020-07-19 16:15 [PATCH 00/31] dm: Avoid including dm.h in header files Simon Glass
                   ` (3 preceding siblings ...)
  2020-07-19 16:15 ` [PATCH 04/31] mtd: spi-mem: " Simon Glass
@ 2020-07-19 16:15 ` Simon Glass
  2020-08-04 15:03   ` Tom Rini
  2020-07-19 16:15 ` [PATCH 06/31] dm: core: Drop dm.h header file from dm-demo.h Simon Glass
                   ` (25 subsequent siblings)
  30 siblings, 1 reply; 68+ messages in thread
From: Simon Glass @ 2020-07-19 16:15 UTC (permalink / raw)
  To: u-boot

These two defines are no-longer supported. Drop them.

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

 include/spi.h | 2 --
 1 file changed, 2 deletions(-)

diff --git a/include/spi.h b/include/spi.h
index 98ba9e796d..ef8c1f6692 100644
--- a/include/spi.h
+++ b/include/spi.h
@@ -146,8 +146,6 @@ struct spi_slave {
 #define SPI_XFER_BEGIN		BIT(0)	/* Assert CS before transfer */
 #define SPI_XFER_END		BIT(1)	/* Deassert CS after transfer */
 #define SPI_XFER_ONCE		(SPI_XFER_BEGIN | SPI_XFER_END)
-#define SPI_XFER_MMAP		BIT(2)	/* Memory Mapped start */
-#define SPI_XFER_MMAP_END	BIT(3)	/* Memory Mapped End */
 };
 
 /**
-- 
2.28.0.rc0.105.gf9edc3c819-goog

^ permalink raw reply related	[flat|nested] 68+ messages in thread

* [PATCH 06/31] dm: core: Drop dm.h header file from dm-demo.h
  2020-07-19 16:15 [PATCH 00/31] dm: Avoid including dm.h in header files Simon Glass
                   ` (4 preceding siblings ...)
  2020-07-19 16:15 ` [PATCH 05/31] mtd: spi: Drop SPI_XFER_MMAP* Simon Glass
@ 2020-07-19 16:15 ` Simon Glass
  2020-08-04 15:03   ` Tom Rini
  2020-07-19 16:15 ` [PATCH 07/31] dm: core: Drop header files from dm/test.h Simon Glass
                   ` (24 subsequent siblings)
  30 siblings, 1 reply; 68+ messages in thread
From: Simon Glass @ 2020-07-19 16:15 UTC (permalink / raw)
  To: u-boot

This header file should not be included in other header files. Remove it
and add it to the cmd file instead.

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

 cmd/demo.c        | 1 +
 include/dm-demo.h | 2 --
 2 files changed, 1 insertion(+), 2 deletions(-)

diff --git a/cmd/demo.c b/cmd/demo.c
index 9da06f5e4d..f923533f79 100644
--- a/cmd/demo.c
+++ b/cmd/demo.c
@@ -8,6 +8,7 @@
 
 #include <common.h>
 #include <command.h>
+#include <dm.h>
 #include <dm-demo.h>
 #include <mapmem.h>
 #include <asm/io.h>
diff --git a/include/dm-demo.h b/include/dm-demo.h
index c9a82c7e52..7b6d0d80ff 100644
--- a/include/dm-demo.h
+++ b/include/dm-demo.h
@@ -6,8 +6,6 @@
 #ifndef __DM_DEMO_H
 #define __DM_DEMO_H
 
-#include <dm.h>
-
 /**
  * struct dm_demo_pdata - configuration data for demo instance
  *
-- 
2.28.0.rc0.105.gf9edc3c819-goog

^ permalink raw reply related	[flat|nested] 68+ messages in thread

* [PATCH 07/31] dm: core: Drop header files from dm/test.h
  2020-07-19 16:15 [PATCH 00/31] dm: Avoid including dm.h in header files Simon Glass
                   ` (5 preceding siblings ...)
  2020-07-19 16:15 ` [PATCH 06/31] dm: core: Drop dm.h header file from dm-demo.h Simon Glass
@ 2020-07-19 16:15 ` Simon Glass
  2020-08-04 15:04   ` Tom Rini
  2020-07-19 16:15 ` [PATCH 08/31] fs: fs-loader: Drop dm.h header file Simon Glass
                   ` (23 subsequent siblings)
  30 siblings, 1 reply; 68+ messages in thread
From: Simon Glass @ 2020-07-19 16:15 UTC (permalink / raw)
  To: u-boot

These header file should not be included in other header files. Remove
them and add to each individual file. Add test/test.h to test/ui.h since
that is a reasonable place.

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

 include/dm/test.h      | 3 ---
 include/test/ut.h      | 1 +
 test/dm/adc.c          | 1 +
 test/dm/audio.c        | 1 +
 test/dm/axi.c          | 3 ++-
 test/dm/blk.c          | 1 +
 test/dm/board.c        | 1 +
 test/dm/bootcount.c    | 1 +
 test/dm/bus.c          | 1 +
 test/dm/clk.c          | 1 +
 test/dm/clk_ccf.c      | 1 +
 test/dm/core.c         | 1 +
 test/dm/cpu.c          | 1 +
 test/dm/dma.c          | 1 +
 test/dm/dsi_host.c     | 1 +
 test/dm/eth.c          | 3 ++-
 test/dm/firmware.c     | 1 +
 test/dm/gpio.c         | 3 ++-
 test/dm/hwspinlock.c   | 1 +
 test/dm/i2c.c          | 1 +
 test/dm/i2s.c          | 3 ++-
 test/dm/led.c          | 1 +
 test/dm/mailbox.c      | 1 +
 test/dm/mdio.c         | 5 +++--
 test/dm/mdio_mux.c     | 5 +++--
 test/dm/misc.c         | 1 +
 test/dm/mmc.c          | 1 +
 test/dm/nop.c          | 1 +
 test/dm/ofnode.c       | 1 +
 test/dm/osd.c          | 5 +++--
 test/dm/panel.c        | 3 ++-
 test/dm/pch.c          | 1 +
 test/dm/pci.c          | 1 +
 test/dm/pci_ep.c       | 5 +++--
 test/dm/phy.c          | 1 +
 test/dm/pmic.c         | 5 +++--
 test/dm/power-domain.c | 1 +
 test/dm/pwm.c          | 1 +
 test/dm/ram.c          | 1 +
 test/dm/regmap.c       | 1 +
 test/dm/regulator.c    | 1 +
 test/dm/remoteproc.c   | 2 ++
 test/dm/reset.c        | 1 +
 test/dm/rtc.c          | 1 +
 test/dm/serial.c       | 1 +
 test/dm/sf.c           | 1 +
 test/dm/smem.c         | 1 +
 test/dm/sound.c        | 1 +
 test/dm/spi.c          | 1 +
 test/dm/spmi.c         | 1 +
 test/dm/syscon.c       | 1 +
 test/dm/sysreset.c     | 1 +
 test/dm/tee.c          | 1 +
 test/dm/test-driver.c  | 3 ++-
 test/dm/test-fdt.c     | 1 +
 test/dm/test-main.c    | 2 ++
 test/dm/test-uclass.c  | 1 +
 test/dm/timer.c        | 1 +
 test/dm/usb.c          | 1 +
 test/dm/video.c        | 1 +
 test/dm/virtio.c       | 3 ++-
 test/dm/wdt.c          | 1 +
 test/lib/lmb.c         | 2 ++
 63 files changed, 82 insertions(+), 20 deletions(-)

diff --git a/include/dm/test.h b/include/dm/test.h
index d39686cde2..2c92d41278 100644
--- a/include/dm/test.h
+++ b/include/dm/test.h
@@ -6,9 +6,6 @@
 #ifndef __DM_TEST_H
 #define __DM_TEST_H
 
-#include <dm.h>
-#include <test/test.h>
-
 /**
  * struct dm_test_cdata - configuration data for test instance
  *
diff --git a/include/test/ut.h b/include/test/ut.h
index 99bbb1230c..6ab2f8830d 100644
--- a/include/test/ut.h
+++ b/include/test/ut.h
@@ -11,6 +11,7 @@
 #include <command.h>
 #include <hexdump.h>
 #include <linux/err.h>
+#include <test/test.h>
 
 struct unit_test_state;
 
diff --git a/test/dm/adc.c b/test/dm/adc.c
index da7bd4bf1f..7fa1d48dd9 100644
--- a/test/dm/adc.c
+++ b/test/dm/adc.c
@@ -17,6 +17,7 @@
 #include <power/regulator.h>
 #include <power/sandbox_pmic.h>
 #include <sandbox-adc.h>
+#include <test/test.h>
 #include <test/ut.h>
 
 static int dm_test_adc_bind(struct unit_test_state *uts)
diff --git a/test/dm/audio.c b/test/dm/audio.c
index 77c3a3625b..4bb86e3214 100644
--- a/test/dm/audio.c
+++ b/test/dm/audio.c
@@ -8,6 +8,7 @@
 #include <audio_codec.h>
 #include <dm.h>
 #include <dm/test.h>
+#include <test/test.h>
 #include <test/ut.h>
 #include <asm/test.h>
 
diff --git a/test/dm/axi.c b/test/dm/axi.c
index e1155a51dd..5b1bbab0b8 100644
--- a/test/dm/axi.c
+++ b/test/dm/axi.c
@@ -8,9 +8,10 @@
 #include <axi.h>
 #include <dm.h>
 #include <log.h>
+#include <asm/axi.h>
 #include <dm/test.h>
+#include <test/test.h>
 #include <test/ut.h>
-#include <asm/axi.h>
 
 /* Test that sandbox AXI works correctly */
 static int dm_test_axi_base(struct unit_test_state *uts)
diff --git a/test/dm/blk.c b/test/dm/blk.c
index 94b2855b8e..80d671e561 100644
--- a/test/dm/blk.c
+++ b/test/dm/blk.c
@@ -9,6 +9,7 @@
 #include <usb.h>
 #include <asm/state.h>
 #include <dm/test.h>
+#include <test/test.h>
 #include <test/ut.h>
 
 DECLARE_GLOBAL_DATA_PTR;
diff --git a/test/dm/board.c b/test/dm/board.c
index 5472c65fad..ff50d6c38b 100644
--- a/test/dm/board.c
+++ b/test/dm/board.c
@@ -9,6 +9,7 @@
 #include <log.h>
 #include <dm/test.h>
 #include <board.h>
+#include <test/test.h>
 #include <test/ut.h>
 
 #include "../../drivers/board/sandbox.h"
diff --git a/test/dm/bootcount.c b/test/dm/bootcount.c
index be0c278907..9fd3751ef7 100644
--- a/test/dm/bootcount.c
+++ b/test/dm/bootcount.c
@@ -9,6 +9,7 @@
 #include <log.h>
 #include <asm/test.h>
 #include <dm/test.h>
+#include <test/test.h>
 #include <test/ut.h>
 
 static int dm_test_bootcount(struct unit_test_state *uts)
diff --git a/test/dm/bus.c b/test/dm/bus.c
index 73eb3aede3..0707267361 100644
--- a/test/dm/bus.c
+++ b/test/dm/bus.c
@@ -14,6 +14,7 @@
 #include <dm/test.h>
 #include <dm/uclass-internal.h>
 #include <dm/util.h>
+#include <test/test.h>
 #include <test/ut.h>
 
 DECLARE_GLOBAL_DATA_PTR;
diff --git a/test/dm/clk.c b/test/dm/clk.c
index 48fc3dd714..7a39760f25 100644
--- a/test/dm/clk.c
+++ b/test/dm/clk.c
@@ -12,6 +12,7 @@
 #include <dm/test.h>
 #include <dm/device-internal.h>
 #include <linux/err.h>
+#include <test/test.h>
 #include <test/ut.h>
 
 /* Base test of the clk uclass */
diff --git a/test/dm/clk_ccf.c b/test/dm/clk_ccf.c
index ae3a4d8a76..da2292a51a 100644
--- a/test/dm/clk_ccf.c
+++ b/test/dm/clk_ccf.c
@@ -11,6 +11,7 @@
 #include <dm/test.h>
 #include <dm/uclass.h>
 #include <linux/err.h>
+#include <test/test.h>
 #include <test/ut.h>
 #include <sandbox-clk.h>
 
diff --git a/test/dm/core.c b/test/dm/core.c
index 6a930ae31a..7ca0355d8e 100644
--- a/test/dm/core.c
+++ b/test/dm/core.c
@@ -16,6 +16,7 @@
 #include <dm/util.h>
 #include <dm/test.h>
 #include <dm/uclass-internal.h>
+#include <test/test.h>
 #include <test/ut.h>
 
 DECLARE_GLOBAL_DATA_PTR;
diff --git a/test/dm/cpu.c b/test/dm/cpu.c
index 46683d884a..0a75c91087 100644
--- a/test/dm/cpu.c
+++ b/test/dm/cpu.c
@@ -10,6 +10,7 @@
 #include <dm/test.h>
 #include <dm/uclass-internal.h>
 #include <cpu.h>
+#include <test/test.h>
 #include <test/ut.h>
 
 static int dm_test_cpu(struct unit_test_state *uts)
diff --git a/test/dm/dma.c b/test/dm/dma.c
index 317ed4fe8c..1cdc813619 100644
--- a/test/dm/dma.c
+++ b/test/dm/dma.c
@@ -11,6 +11,7 @@
 #include <malloc.h>
 #include <dm/test.h>
 #include <dma.h>
+#include <test/test.h>
 #include <test/ut.h>
 
 static int dm_test_dma_m2m(struct unit_test_state *uts)
diff --git a/test/dm/dsi_host.c b/test/dm/dsi_host.c
index 59fcd5558f..97917a17c1 100644
--- a/test/dm/dsi_host.c
+++ b/test/dm/dsi_host.c
@@ -10,6 +10,7 @@
 #include <asm/state.h>
 #include <asm/test.h>
 #include <dm/test.h>
+#include <test/test.h>
 #include <test/ut.h>
 
 static int dm_test_dsi_host_phy_init(void *priv_data)
diff --git a/test/dm/eth.c b/test/dm/eth.c
index b58c9640a2..1a3eb1839c 100644
--- a/test/dm/eth.c
+++ b/test/dm/eth.c
@@ -13,10 +13,11 @@
 #include <log.h>
 #include <malloc.h>
 #include <net.h>
+#include <asm/eth.h>
 #include <dm/test.h>
 #include <dm/device-internal.h>
 #include <dm/uclass-internal.h>
-#include <asm/eth.h>
+#include <test/test.h>
 #include <test/ut.h>
 
 #define DM_TEST_ETH_NUM		4
diff --git a/test/dm/firmware.c b/test/dm/firmware.c
index 60fdcbb33f..2b4f49af80 100644
--- a/test/dm/firmware.c
+++ b/test/dm/firmware.c
@@ -8,6 +8,7 @@
 #include <syscon.h>
 #include <asm/test.h>
 #include <dm/test.h>
+#include <test/test.h>
 #include <test/ut.h>
 
 /* Base test of firmware probe */
diff --git a/test/dm/gpio.c b/test/dm/gpio.c
index 29701389fc..149e79eac1 100644
--- a/test/dm/gpio.c
+++ b/test/dm/gpio.c
@@ -9,10 +9,11 @@
 #include <log.h>
 #include <malloc.h>
 #include <acpi/acpi_device.h>
+#include <asm/gpio.h>
 #include <dm/root.h>
 #include <dm/test.h>
 #include <dm/util.h>
-#include <asm/gpio.h>
+#include <test/test.h>
 #include <test/ut.h>
 
 /* Test that sandbox GPIOs work correctly */
diff --git a/test/dm/hwspinlock.c b/test/dm/hwspinlock.c
index 09ec38b4f3..49c52bcd63 100644
--- a/test/dm/hwspinlock.c
+++ b/test/dm/hwspinlock.c
@@ -9,6 +9,7 @@
 #include <asm/state.h>
 #include <asm/test.h>
 #include <dm/test.h>
+#include <test/test.h>
 #include <test/ut.h>
 
 /* Test that hwspinlock driver functions are called */
diff --git a/test/dm/i2c.c b/test/dm/i2c.c
index 2025c4216d..25b2c7c617 100644
--- a/test/dm/i2c.c
+++ b/test/dm/i2c.c
@@ -16,6 +16,7 @@
 #include <dm/uclass-internal.h>
 #include <dm/util.h>
 #include <hexdump.h>
+#include <test/test.h>
 #include <test/ut.h>
 
 static const int busnum;
diff --git a/test/dm/i2s.c b/test/dm/i2s.c
index 49ebc3523c..7a017be064 100644
--- a/test/dm/i2s.c
+++ b/test/dm/i2s.c
@@ -7,9 +7,10 @@
 #include <common.h>
 #include <dm.h>
 #include <i2s.h>
+#include <asm/test.h>
 #include <dm/test.h>
+#include <test/test.h>
 #include <test/ut.h>
-#include <asm/test.h>
 
 /* Basic test of the i2s codec uclass */
 static int dm_test_i2s(struct unit_test_state *uts)
diff --git a/test/dm/led.c b/test/dm/led.c
index 00de7b3997..3d5ad9363b 100644
--- a/test/dm/led.c
+++ b/test/dm/led.c
@@ -8,6 +8,7 @@
 #include <led.h>
 #include <asm/gpio.h>
 #include <dm/test.h>
+#include <test/test.h>
 #include <test/ut.h>
 
 /* Base test of the led uclass */
diff --git a/test/dm/mailbox.c b/test/dm/mailbox.c
index e6c521b8b5..e9c8ab1a95 100644
--- a/test/dm/mailbox.c
+++ b/test/dm/mailbox.c
@@ -8,6 +8,7 @@
 #include <malloc.h>
 #include <dm/test.h>
 #include <asm/mbox.h>
+#include <test/test.h>
 #include <test/ut.h>
 
 static int dm_test_mailbox(struct unit_test_state *uts)
diff --git a/test/dm/mdio.c b/test/dm/mdio.c
index ba1b54f27e..758bbb2cc5 100644
--- a/test/dm/mdio.c
+++ b/test/dm/mdio.c
@@ -7,10 +7,11 @@
 #include <common.h>
 #include <dm.h>
 #include <log.h>
-#include <dm/test.h>
+#include <miiphy.h>
 #include <misc.h>
+#include <dm/test.h>
+#include <test/test.h>
 #include <test/ut.h>
-#include <miiphy.h>
 
 /* macros copied over from mdio_sandbox.c */
 #define SANDBOX_PHY_ADDR	5
diff --git a/test/dm/mdio_mux.c b/test/dm/mdio_mux.c
index f962e09dbc..0b3f85a53b 100644
--- a/test/dm/mdio_mux.c
+++ b/test/dm/mdio_mux.c
@@ -6,10 +6,11 @@
 
 #include <common.h>
 #include <dm.h>
-#include <dm/test.h>
+#include <miiphy.h>
 #include <misc.h>
+#include <dm/test.h>
+#include <test/test.h>
 #include <test/ut.h>
-#include <miiphy.h>
 
 /* macros copied over from mdio_sandbox.c */
 #define SANDBOX_PHY_ADDR	5
diff --git a/test/dm/misc.c b/test/dm/misc.c
index 26fd6acecb..641070972d 100644
--- a/test/dm/misc.c
+++ b/test/dm/misc.c
@@ -8,6 +8,7 @@
 #include <dm.h>
 #include <dm/test.h>
 #include <misc.h>
+#include <test/test.h>
 #include <test/ut.h>
 
 static int dm_test_misc(struct unit_test_state *uts)
diff --git a/test/dm/mmc.c b/test/dm/mmc.c
index 49402b9c90..8e1fd3fe51 100644
--- a/test/dm/mmc.c
+++ b/test/dm/mmc.c
@@ -8,6 +8,7 @@
 #include <mmc.h>
 #include <part.h>
 #include <dm/test.h>
+#include <test/test.h>
 #include <test/ut.h>
 
 /*
diff --git a/test/dm/nop.c b/test/dm/nop.c
index 2df29f3d15..8b3b646892 100644
--- a/test/dm/nop.c
+++ b/test/dm/nop.c
@@ -13,6 +13,7 @@
 #include <dm/device.h>
 #include <dm/test.h>
 #include <misc.h>
+#include <test/test.h>
 #include <test/ut.h>
 
 static int noptest_bind(struct udevice *parent)
diff --git a/test/dm/ofnode.c b/test/dm/ofnode.c
index 1114f34cbf..e01acc4fe9 100644
--- a/test/dm/ofnode.c
+++ b/test/dm/ofnode.c
@@ -5,6 +5,7 @@
 #include <log.h>
 #include <dm/of_extra.h>
 #include <dm/test.h>
+#include <test/test.h>
 #include <test/ut.h>
 
 static int dm_test_ofnode_compatible(struct unit_test_state *uts)
diff --git a/test/dm/osd.c b/test/dm/osd.c
index 5739dfa0b8..8784867ecb 100644
--- a/test/dm/osd.c
+++ b/test/dm/osd.c
@@ -7,10 +7,11 @@
 #include <common.h>
 #include <display_options.h>
 #include <dm.h>
-#include <dm/test.h>
-#include <test/ut.h>
 #include <video_osd.h>
 #include <asm/test.h>
+#include <dm/test.h>
+#include <test/test.h>
+#include <test/ut.h>
 
 #include "../../drivers/video/sandbox_osd.h"
 
diff --git a/test/dm/panel.c b/test/dm/panel.c
index 7e4ebd6d81..410e8f3907 100644
--- a/test/dm/panel.c
+++ b/test/dm/panel.c
@@ -14,8 +14,9 @@
 #include <asm/gpio.h>
 #include <asm/test.h>
 #include <dm/test.h>
-#include <test/ut.h>
 #include <power/regulator.h>
+#include <test/test.h>
+#include <test/ut.h>
 
 /* Basic test of the panel uclass */
 static int dm_test_panel(struct unit_test_state *uts)
diff --git a/test/dm/pch.c b/test/dm/pch.c
index 54e33d187b..bf17a31ccf 100644
--- a/test/dm/pch.c
+++ b/test/dm/pch.c
@@ -8,6 +8,7 @@
 #include <pch.h>
 #include <asm/test.h>
 #include <dm/test.h>
+#include <test/test.h>
 #include <test/ut.h>
 
 /* Test that sandbox PCH works correctly */
diff --git a/test/dm/pci.c b/test/dm/pci.c
index 39e82b3699..a492fc0355 100644
--- a/test/dm/pci.c
+++ b/test/dm/pci.c
@@ -8,6 +8,7 @@
 #include <asm/io.h>
 #include <asm/test.h>
 #include <dm/test.h>
+#include <test/test.h>
 #include <test/ut.h>
 
 /* Test that sandbox PCI works correctly */
diff --git a/test/dm/pci_ep.c b/test/dm/pci_ep.c
index 101f861751..a29d00eebe 100644
--- a/test/dm/pci_ep.c
+++ b/test/dm/pci_ep.c
@@ -5,12 +5,13 @@
 
 #include <common.h>
 #include <dm.h>
+#include <hexdump.h>
+#include <pci_ep.h>
 #include <asm/io.h>
 #include <asm/test.h>
 #include <dm/test.h>
+#include <test/test.h>
 #include <test/ut.h>
-#include <hexdump.h>
-#include <pci_ep.h>
 
 /* Test that sandbox PCI EP works correctly */
 static int dm_test_pci_ep_base(struct unit_test_state *uts)
diff --git a/test/dm/phy.c b/test/dm/phy.c
index 99f0119557..1a59899327 100644
--- a/test/dm/phy.c
+++ b/test/dm/phy.c
@@ -9,6 +9,7 @@
 #include <generic-phy.h>
 #include <log.h>
 #include <dm/test.h>
+#include <test/test.h>
 #include <test/ut.h>
 
 /* Base test of the phy uclass */
diff --git a/test/dm/pmic.c b/test/dm/pmic.c
index b582329a9c..8c2766aeac 100644
--- a/test/dm/pmic.c
+++ b/test/dm/pmic.c
@@ -10,16 +10,17 @@
 #include <errno.h>
 #include <dm.h>
 #include <fdtdec.h>
+#include <fsl_pmic.h>
 #include <malloc.h>
 #include <dm/device-internal.h>
 #include <dm/root.h>
-#include <dm/util.h>
 #include <dm/test.h>
 #include <dm/uclass-internal.h>
+#include <dm/util.h>
 #include <power/pmic.h>
 #include <power/sandbox_pmic.h>
+#include <test/test.h>
 #include <test/ut.h>
-#include <fsl_pmic.h>
 
 /* Test PMIC get method */
 
diff --git a/test/dm/power-domain.c b/test/dm/power-domain.c
index 8baf5d09d1..52f88c5a36 100644
--- a/test/dm/power-domain.c
+++ b/test/dm/power-domain.c
@@ -8,6 +8,7 @@
 #include <malloc.h>
 #include <dm/test.h>
 #include <asm/power-domain.h>
+#include <test/test.h>
 #include <test/ut.h>
 
 /* This must match the specifier for power-domains in the DT node */
diff --git a/test/dm/pwm.c b/test/dm/pwm.c
index b52ee21a69..8cc911e1ad 100644
--- a/test/dm/pwm.c
+++ b/test/dm/pwm.c
@@ -7,6 +7,7 @@
 #include <dm.h>
 #include <pwm.h>
 #include <dm/test.h>
+#include <test/test.h>
 #include <test/ut.h>
 
 /* Basic test of the pwm uclass */
diff --git a/test/dm/ram.c b/test/dm/ram.c
index 3efdb6b80b..2456466b56 100644
--- a/test/dm/ram.c
+++ b/test/dm/ram.c
@@ -7,6 +7,7 @@
 #include <dm.h>
 #include <ram.h>
 #include <dm/test.h>
+#include <test/test.h>
 #include <test/ut.h>
 
 DECLARE_GLOBAL_DATA_PTR;
diff --git a/test/dm/regmap.c b/test/dm/regmap.c
index 809494d585..42cc4cb0c0 100644
--- a/test/dm/regmap.c
+++ b/test/dm/regmap.c
@@ -12,6 +12,7 @@
 #include <asm/test.h>
 #include <dm/test.h>
 #include <linux/err.h>
+#include <test/test.h>
 #include <test/ut.h>
 
 /* Base test of register maps */
diff --git a/test/dm/regulator.c b/test/dm/regulator.c
index ca916eeebb..f412ec20c5 100644
--- a/test/dm/regulator.c
+++ b/test/dm/regulator.c
@@ -20,6 +20,7 @@
 #include <power/pmic.h>
 #include <power/regulator.h>
 #include <power/sandbox_pmic.h>
+#include <test/test.h>
 #include <test/ut.h>
 
 enum {
diff --git a/test/dm/remoteproc.c b/test/dm/remoteproc.c
index 9511c7dd6f..c6bf2c4c46 100644
--- a/test/dm/remoteproc.c
+++ b/test/dm/remoteproc.c
@@ -10,7 +10,9 @@
 #include <remoteproc.h>
 #include <asm/io.h>
 #include <dm/test.h>
+#include <test/test.h>
 #include <test/ut.h>
+
 /**
  * dm_test_remoteproc_base() - test the operations after initializations
  * @uts:	unit test state
diff --git a/test/dm/reset.c b/test/dm/reset.c
index 871d6400a0..8232807264 100644
--- a/test/dm/reset.c
+++ b/test/dm/reset.c
@@ -10,6 +10,7 @@
 #include <reset.h>
 #include <dm/test.h>
 #include <asm/reset.h>
+#include <test/test.h>
 #include <test/ut.h>
 
 /* This must match the specifier for mbox-names="test" in the DT node */
diff --git a/test/dm/rtc.c b/test/dm/rtc.c
index dd037a6e17..42a9195b73 100644
--- a/test/dm/rtc.c
+++ b/test/dm/rtc.c
@@ -14,6 +14,7 @@
 #include <asm/rtc.h>
 #include <asm/test.h>
 #include <dm/test.h>
+#include <test/test.h>
 #include <test/ut.h>
 
 /* Simple RTC sanity check */
diff --git a/test/dm/serial.c b/test/dm/serial.c
index 6237693cb8..a1b122ec1d 100644
--- a/test/dm/serial.c
+++ b/test/dm/serial.c
@@ -8,6 +8,7 @@
 #include <serial.h>
 #include <dm.h>
 #include <dm/test.h>
+#include <test/test.h>
 #include <test/ut.h>
 
 static int dm_test_serial(struct unit_test_state *uts)
diff --git a/test/dm/sf.c b/test/dm/sf.c
index 9e7dead684..0f2808fca4 100644
--- a/test/dm/sf.c
+++ b/test/dm/sf.c
@@ -15,6 +15,7 @@
 #include <asm/test.h>
 #include <dm/test.h>
 #include <dm/util.h>
+#include <test/test.h>
 #include <test/ut.h>
 
 /* Simple test of sandbox SPI flash */
diff --git a/test/dm/smem.c b/test/dm/smem.c
index 4099a5f66c..21dd96e409 100644
--- a/test/dm/smem.c
+++ b/test/dm/smem.c
@@ -7,6 +7,7 @@
 #include <dm.h>
 #include <smem.h>
 #include <dm/test.h>
+#include <test/test.h>
 #include <test/ut.h>
 
 /* Basic test of the smem uclass */
diff --git a/test/dm/sound.c b/test/dm/sound.c
index aa5368f05b..9cb9961058 100644
--- a/test/dm/sound.c
+++ b/test/dm/sound.c
@@ -9,6 +9,7 @@
 #include <sound.h>
 #include <dm/test.h>
 #include <test/ut.h>
+#include <test/test.h>
 #include <asm/test.h>
 
 /* Basic test of the sound codec uclass */
diff --git a/test/dm/spi.c b/test/dm/spi.c
index ff2cddd245..10b89e7acf 100644
--- a/test/dm/spi.c
+++ b/test/dm/spi.c
@@ -13,6 +13,7 @@
 #include <dm/test.h>
 #include <dm/uclass-internal.h>
 #include <dm/util.h>
+#include <test/test.h>
 #include <test/ut.h>
 
 /* Test that we can find buses and chip-selects */
diff --git a/test/dm/spmi.c b/test/dm/spmi.c
index 668b7e133f..4aae1f166d 100644
--- a/test/dm/spmi.c
+++ b/test/dm/spmi.c
@@ -14,6 +14,7 @@
 #include <power/pmic.h>
 #include <spmi/spmi.h>
 #include <asm/gpio.h>
+#include <test/test.h>
 #include <test/ut.h>
 
 /* Test if bus childs got probed propperly*/
diff --git a/test/dm/syscon.c b/test/dm/syscon.c
index 06a1c69ac5..b2d0ade95e 100644
--- a/test/dm/syscon.c
+++ b/test/dm/syscon.c
@@ -11,6 +11,7 @@
 #include <asm/test.h>
 #include <dm/test.h>
 #include <linux/err.h>
+#include <test/test.h>
 #include <test/ut.h>
 
 /* Base test of system controllers */
diff --git a/test/dm/sysreset.c b/test/dm/sysreset.c
index 5b2358ef67..e5cd18cd82 100644
--- a/test/dm/sysreset.c
+++ b/test/dm/sysreset.c
@@ -9,6 +9,7 @@
 #include <asm/state.h>
 #include <asm/test.h>
 #include <dm/test.h>
+#include <test/test.h>
 #include <test/ut.h>
 
 /* Test that we can use particular sysreset devices */
diff --git a/test/dm/tee.c b/test/dm/tee.c
index 632e9960b0..fec9551fb2 100644
--- a/test/dm/tee.c
+++ b/test/dm/tee.c
@@ -10,6 +10,7 @@
 #include <dm/test.h>
 #include <sandboxtee.h>
 #include <tee.h>
+#include <test/test.h>
 #include <test/ut.h>
 #include <tee/optee_ta_avb.h>
 
diff --git a/test/dm/test-driver.c b/test/dm/test-driver.c
index ba85fa313e..08bdf01194 100644
--- a/test/dm/test-driver.c
+++ b/test/dm/test-driver.c
@@ -11,9 +11,10 @@
 #include <errno.h>
 #include <log.h>
 #include <malloc.h>
+#include <asm/io.h>
 #include <dm/test.h>
+#include <test/test.h>
 #include <test/ut.h>
-#include <asm/io.h>
 
 int dm_testdrv_op_count[DM_TEST_OP_COUNT];
 static struct unit_test_state *uts = &global_dm_test_state;
diff --git a/test/dm/test-fdt.c b/test/dm/test-fdt.c
index 51f2547409..984a861a7d 100644
--- a/test/dm/test-fdt.c
+++ b/test/dm/test-fdt.c
@@ -18,6 +18,7 @@
 #include <dm/util.h>
 #include <dm/lists.h>
 #include <dm/of_access.h>
+#include <test/test.h>
 #include <test/ut.h>
 
 DECLARE_GLOBAL_DATA_PTR;
diff --git a/test/dm/test-main.c b/test/dm/test-main.c
index 53e5ca321f..6d197d0d61 100644
--- a/test/dm/test-main.c
+++ b/test/dm/test-main.c
@@ -14,6 +14,8 @@
 #include <dm/test.h>
 #include <dm/root.h>
 #include <dm/uclass-internal.h>
+#include <test/test.h>
+#include <test/test.h>
 #include <test/ut.h>
 
 DECLARE_GLOBAL_DATA_PTR;
diff --git a/test/dm/test-uclass.c b/test/dm/test-uclass.c
index b6d629a285..760731b066 100644
--- a/test/dm/test-uclass.c
+++ b/test/dm/test-uclass.c
@@ -14,6 +14,7 @@
 #include <asm/io.h>
 #include <dm/test.h>
 #include <linux/list.h>
+#include <test/test.h>
 #include <test/ut.h>
 
 static struct unit_test_state *uts = &global_dm_test_state;
diff --git a/test/dm/timer.c b/test/dm/timer.c
index 9367dab5d5..4aa5eeac75 100644
--- a/test/dm/timer.c
+++ b/test/dm/timer.c
@@ -7,6 +7,7 @@
 #include <dm.h>
 #include <timer.h>
 #include <dm/test.h>
+#include <test/test.h>
 #include <test/ut.h>
 
 /*
diff --git a/test/dm/usb.c b/test/dm/usb.c
index b273a515ef..6cbb66c82b 100644
--- a/test/dm/usb.c
+++ b/test/dm/usb.c
@@ -14,6 +14,7 @@
 #include <dm/device-internal.h>
 #include <dm/test.h>
 #include <dm/uclass-internal.h>
+#include <test/test.h>
 #include <test/ut.h>
 
 struct keyboard_test_data {
diff --git a/test/dm/video.c b/test/dm/video.c
index 19f78b6239..9523a0173d 100644
--- a/test/dm/video.c
+++ b/test/dm/video.c
@@ -15,6 +15,7 @@
 #include <video_console.h>
 #include <dm/test.h>
 #include <dm/uclass-internal.h>
+#include <test/test.h>
 #include <test/ut.h>
 
 /*
diff --git a/test/dm/virtio.c b/test/dm/virtio.c
index 4b317d2ec3..a2ed36a2fe 100644
--- a/test/dm/virtio.c
+++ b/test/dm/virtio.c
@@ -9,9 +9,10 @@
 #include <virtio.h>
 #include <virtio_ring.h>
 #include <dm/device-internal.h>
-#include <dm/uclass-internal.h>
 #include <dm/root.h>
 #include <dm/test.h>
+#include <dm/uclass-internal.h>
+#include <test/test.h>
 #include <test/ut.h>
 
 /* Basic test of the virtio uclass */
diff --git a/test/dm/wdt.c b/test/dm/wdt.c
index 1d31ec55c6..c704098b24 100644
--- a/test/dm/wdt.c
+++ b/test/dm/wdt.c
@@ -9,6 +9,7 @@
 #include <asm/state.h>
 #include <asm/test.h>
 #include <dm/test.h>
+#include <test/test.h>
 #include <test/ut.h>
 
 /* Test that watchdog driver functions are called */
diff --git a/test/lib/lmb.c b/test/lib/lmb.c
index a0fe0f6b33..a344987509 100644
--- a/test/lib/lmb.c
+++ b/test/lib/lmb.c
@@ -4,10 +4,12 @@
  */
 
 #include <common.h>
+#include <dm.h>
 #include <lmb.h>
 #include <log.h>
 #include <malloc.h>
 #include <dm/test.h>
+#include <test/test.h>
 #include <test/ut.h>
 
 static int check_lmb(struct unit_test_state *uts, struct lmb *lmb,
-- 
2.28.0.rc0.105.gf9edc3c819-goog

^ permalink raw reply related	[flat|nested] 68+ messages in thread

* [PATCH 08/31] fs: fs-loader: Drop dm.h header file
  2020-07-19 16:15 [PATCH 00/31] dm: Avoid including dm.h in header files Simon Glass
                   ` (6 preceding siblings ...)
  2020-07-19 16:15 ` [PATCH 07/31] dm: core: Drop header files from dm/test.h Simon Glass
@ 2020-07-19 16:15 ` Simon Glass
  2020-08-04 15:04   ` Tom Rini
  2020-07-19 16:15 ` [PATCH 09/31] net: Drop dm.h header file from phy.h Simon Glass
                   ` (22 subsequent siblings)
  30 siblings, 1 reply; 68+ messages in thread
From: Simon Glass @ 2020-07-19 16:15 UTC (permalink / raw)
  To: u-boot

This header file should not be included in other header files. Remove it
and use a forward declaration instead.

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

 drivers/fpga/socfpga_arria10.c | 1 +
 include/fs_loader.h            | 2 +-
 2 files changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/fpga/socfpga_arria10.c b/drivers/fpga/socfpga_arria10.c
index dfd3cbb461..44e1ac54c3 100644
--- a/drivers/fpga/socfpga_arria10.c
+++ b/drivers/fpga/socfpga_arria10.c
@@ -13,6 +13,7 @@
 #include <altera.h>
 #include <asm/arch/pinmux.h>
 #include <common.h>
+#include <dm.h>
 #include <dm/ofnode.h>
 #include <errno.h>
 #include <fs_loader.h>
diff --git a/include/fs_loader.h b/include/fs_loader.h
index b728c06fcf..1b3c58086f 100644
--- a/include/fs_loader.h
+++ b/include/fs_loader.h
@@ -6,7 +6,7 @@
 #ifndef _FS_LOADER_H_
 #define _FS_LOADER_H_
 
-#include <dm.h>
+struct udevice;
 
 /**
  * struct phandle_part - A place for storing phandle of node and its partition
-- 
2.28.0.rc0.105.gf9edc3c819-goog

^ permalink raw reply related	[flat|nested] 68+ messages in thread

* [PATCH 09/31] net: Drop dm.h header file from phy.h
  2020-07-19 16:15 [PATCH 00/31] dm: Avoid including dm.h in header files Simon Glass
                   ` (7 preceding siblings ...)
  2020-07-19 16:15 ` [PATCH 08/31] fs: fs-loader: Drop dm.h header file Simon Glass
@ 2020-07-19 16:15 ` Simon Glass
  2020-08-04 15:04   ` Tom Rini
  2020-07-19 16:15 ` [PATCH 10/31] sf: Drop dm.h header file from spi_flash.h Simon Glass
                   ` (21 subsequent siblings)
  30 siblings, 1 reply; 68+ messages in thread
From: Simon Glass @ 2020-07-19 16:15 UTC (permalink / raw)
  To: u-boot

This header file should not be included in other header files. Remove it
and use other headers and C inclusions instead.

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

 cmd/mdio.c              | 1 +
 cmd/mii.c               | 1 +
 include/dm/read.h       | 1 +
 include/phy.h           | 9 ++++++---
 include/phy_interface.h | 2 ++
 net/eth_legacy.c        | 1 +
 6 files changed, 12 insertions(+), 3 deletions(-)

diff --git a/cmd/mdio.c b/cmd/mdio.c
index c48bb51237..cfa45ad12a 100644
--- a/cmd/mdio.c
+++ b/cmd/mdio.c
@@ -10,6 +10,7 @@
 
 #include <common.h>
 #include <command.h>
+#include <dm.h>
 #include <miiphy.h>
 #include <phy.h>
 
diff --git a/cmd/mii.c b/cmd/mii.c
index b52a55dc33..fe8602eb7c 100644
--- a/cmd/mii.c
+++ b/cmd/mii.c
@@ -10,6 +10,7 @@
 
 #include <common.h>
 #include <command.h>
+#include <dm.h>
 #include <miiphy.h>
 
 typedef struct _MII_field_desc_t {
diff --git a/include/dm/read.h b/include/dm/read.h
index f02ec95954..5c34a0ffab 100644
--- a/include/dm/read.h
+++ b/include/dm/read.h
@@ -9,6 +9,7 @@
 #ifndef _DM_READ_H
 #define _DM_READ_H
 
+#include <dm/device.h>
 #include <dm/fdtaddr.h>
 #include <dm/ofnode.h>
 #include <dm/uclass.h>
diff --git a/include/phy.h b/include/phy.h
index fedd146091..1dbbf65111 100644
--- a/include/phy.h
+++ b/include/phy.h
@@ -9,14 +9,17 @@
 #ifndef _PHY_H
 #define _PHY_H
 
-#include <dm.h>
+#include <log.h>
+#include <phy_interface.h>
+#include <dm/ofnode.h>
+#include <dm/read.h>
 #include <linux/errno.h>
 #include <linux/list.h>
 #include <linux/mii.h>
 #include <linux/ethtool.h>
 #include <linux/mdio.h>
-#include <log.h>
-#include <phy_interface.h>
+
+struct udevice;
 
 #define PHY_FIXED_ID		0xa5a55a5a
 #define PHY_NCSI_ID            0xbeefcafe
diff --git a/include/phy_interface.h b/include/phy_interface.h
index 882e4af8ff..841ade311e 100644
--- a/include/phy_interface.h
+++ b/include/phy_interface.h
@@ -10,6 +10,8 @@
 #ifndef _PHY_INTERFACE_H
 #define _PHY_INTERFACE_H
 
+#include <string.h>
+
 typedef enum {
 	PHY_INTERFACE_MODE_MII,
 	PHY_INTERFACE_MODE_GMII,
diff --git a/net/eth_legacy.c b/net/eth_legacy.c
index 340469ba3a..992d1880bf 100644
--- a/net/eth_legacy.c
+++ b/net/eth_legacy.c
@@ -8,6 +8,7 @@
 #include <common.h>
 #include <bootstage.h>
 #include <command.h>
+#include <dm.h>
 #include <env.h>
 #include <log.h>
 #include <net.h>
-- 
2.28.0.rc0.105.gf9edc3c819-goog

^ permalink raw reply related	[flat|nested] 68+ messages in thread

* [PATCH 10/31] sf: Drop dm.h header file from spi_flash.h
  2020-07-19 16:15 [PATCH 00/31] dm: Avoid including dm.h in header files Simon Glass
                   ` (8 preceding siblings ...)
  2020-07-19 16:15 ` [PATCH 09/31] net: Drop dm.h header file from phy.h Simon Glass
@ 2020-07-19 16:15 ` Simon Glass
  2020-08-04 15:04   ` Tom Rini
  2020-07-19 16:15 ` [PATCH 11/31] thermal: Drop dm.h header file Simon Glass
                   ` (20 subsequent siblings)
  30 siblings, 1 reply; 68+ messages in thread
From: Simon Glass @ 2020-07-19 16:15 UTC (permalink / raw)
  To: u-boot

This header file should not be included in other header files. Remove it
and use a forward declaration instead.

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

 arch/arm/mach-k3/sysfw-loader.c                        | 1 +
 arch/arm/mach-stm32mp/cmd_stm32prog/stm32prog_serial.c | 1 +
 arch/x86/cpu/ivybridge/sdram.c                         | 1 +
 board/st/common/stm32mp_dfu.c                          | 1 +
 include/spi_flash.h                                    | 3 ++-
 5 files changed, 6 insertions(+), 1 deletion(-)

diff --git a/arch/arm/mach-k3/sysfw-loader.c b/arch/arm/mach-k3/sysfw-loader.c
index 513be09c68..96be069ee8 100644
--- a/arch/arm/mach-k3/sysfw-loader.c
+++ b/arch/arm/mach-k3/sysfw-loader.c
@@ -7,6 +7,7 @@
  */
 
 #include <common.h>
+#include <dm.h>
 #include <image.h>
 #include <log.h>
 #include <spl.h>
diff --git a/arch/arm/mach-stm32mp/cmd_stm32prog/stm32prog_serial.c b/arch/arm/mach-stm32mp/cmd_stm32prog/stm32prog_serial.c
index 70940f01f3..8aad4be467 100644
--- a/arch/arm/mach-stm32mp/cmd_stm32prog/stm32prog_serial.c
+++ b/arch/arm/mach-stm32mp/cmd_stm32prog/stm32prog_serial.c
@@ -5,6 +5,7 @@
 
 #include <common.h>
 #include <console.h>
+#include <dm.h>
 #include <dfu.h>
 #include <malloc.h>
 #include <serial.h>
diff --git a/arch/x86/cpu/ivybridge/sdram.c b/arch/x86/cpu/ivybridge/sdram.c
index 99bc48021e..dd6b8753de 100644
--- a/arch/x86/cpu/ivybridge/sdram.c
+++ b/arch/x86/cpu/ivybridge/sdram.c
@@ -10,6 +10,7 @@
  */
 
 #include <common.h>
+#include <dm.h>
 #include <errno.h>
 #include <fdtdec.h>
 #include <init.h>
diff --git a/board/st/common/stm32mp_dfu.c b/board/st/common/stm32mp_dfu.c
index 0cda9196f9..38eb0f27c9 100644
--- a/board/st/common/stm32mp_dfu.c
+++ b/board/st/common/stm32mp_dfu.c
@@ -5,6 +5,7 @@
 
 #include <common.h>
 #include <blk.h>
+#include <dm.h>
 #include <dfu.h>
 #include <env.h>
 #include <memalign.h>
diff --git a/include/spi_flash.h b/include/spi_flash.h
index b336619487..85cae32cc7 100644
--- a/include/spi_flash.h
+++ b/include/spi_flash.h
@@ -9,10 +9,11 @@
 #ifndef _SPI_FLASH_H_
 #define _SPI_FLASH_H_
 
-#include <dm.h>	/* Because we dereference struct udevice here */
 #include <linux/types.h>
 #include <linux/mtd/spi-nor.h>
 
+struct udevice;
+
 /* by default ENV use the same parameters than SF command */
 #ifndef CONFIG_ENV_SPI_BUS
 # define CONFIG_ENV_SPI_BUS	CONFIG_SF_DEFAULT_BUS
-- 
2.28.0.rc0.105.gf9edc3c819-goog

^ permalink raw reply related	[flat|nested] 68+ messages in thread

* [PATCH 11/31] thermal: Drop dm.h header file
  2020-07-19 16:15 [PATCH 00/31] dm: Avoid including dm.h in header files Simon Glass
                   ` (9 preceding siblings ...)
  2020-07-19 16:15 ` [PATCH 10/31] sf: Drop dm.h header file from spi_flash.h Simon Glass
@ 2020-07-19 16:15 ` Simon Glass
  2020-08-04 15:04   ` Tom Rini
  2020-07-19 16:15 ` [PATCH 12/31] w1: " Simon Glass
                   ` (19 subsequent siblings)
  30 siblings, 1 reply; 68+ messages in thread
From: Simon Glass @ 2020-07-19 16:15 UTC (permalink / raw)
  To: u-boot

This header file should not be included in other header files. Remove it
and use a forward declaration instead.

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

 arch/arm/mach-imx/cpu.c | 1 +
 include/thermal.h       | 2 +-
 2 files changed, 2 insertions(+), 1 deletion(-)

diff --git a/arch/arm/mach-imx/cpu.c b/arch/arm/mach-imx/cpu.c
index 694c26d35f..fe8d5947cc 100644
--- a/arch/arm/mach-imx/cpu.c
+++ b/arch/arm/mach-imx/cpu.c
@@ -8,6 +8,7 @@
 
 #include <bootm.h>
 #include <common.h>
+#include <dm.h>
 #include <init.h>
 #include <log.h>
 #include <net.h>
diff --git a/include/thermal.h b/include/thermal.h
index 11d75256e0..52a3317fd5 100644
--- a/include/thermal.h
+++ b/include/thermal.h
@@ -7,7 +7,7 @@
 #ifndef _THERMAL_H_
 #define _THERMAL_H_
 
-#include <dm.h>
+struct udevice;
 
 int thermal_get_temp(struct udevice *dev, int *temp);
 
-- 
2.28.0.rc0.105.gf9edc3c819-goog

^ permalink raw reply related	[flat|nested] 68+ messages in thread

* [PATCH 12/31] w1: Drop dm.h header file
  2020-07-19 16:15 [PATCH 00/31] dm: Avoid including dm.h in header files Simon Glass
                   ` (10 preceding siblings ...)
  2020-07-19 16:15 ` [PATCH 11/31] thermal: Drop dm.h header file Simon Glass
@ 2020-07-19 16:15 ` Simon Glass
  2020-08-04 15:04   ` Tom Rini
  2020-07-19 16:15 ` [PATCH 13/31] efi: Tidy up header includes Simon Glass
                   ` (18 subsequent siblings)
  30 siblings, 1 reply; 68+ messages in thread
From: Simon Glass @ 2020-07-19 16:15 UTC (permalink / raw)
  To: u-boot

This header file should not be included in other header files. Remove it
and use a forward declaration instead.

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

 board/atmel/common/board.c | 1 +
 cmd/w1.c                   | 1 +
 include/w1.h               | 2 +-
 3 files changed, 3 insertions(+), 1 deletion(-)

diff --git a/board/atmel/common/board.c b/board/atmel/common/board.c
index c41706c400..eee5c357bd 100644
--- a/board/atmel/common/board.c
+++ b/board/atmel/common/board.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <dm.h>
 #include <env.h>
 #include <w1.h>
 #include <w1-eeprom.h>
diff --git a/cmd/w1.c b/cmd/w1.c
index 92be1f2531..459094bf80 100644
--- a/cmd/w1.c
+++ b/cmd/w1.c
@@ -6,6 +6,7 @@
  */
 #include <common.h>
 #include <command.h>
+#include <dm.h>
 #include <w1.h>
 #include <w1-eeprom.h>
 #include <dm/device-internal.h>
diff --git a/include/w1.h b/include/w1.h
index b958b1c92c..77f439e587 100644
--- a/include/w1.h
+++ b/include/w1.h
@@ -8,7 +8,7 @@
 #ifndef __W1_H
 #define __W1_H
 
-#include <dm.h>
+struct udevice;
 
 #define W1_FAMILY_DS24B33	0x23
 #define W1_FAMILY_DS2431	0x2d
-- 
2.28.0.rc0.105.gf9edc3c819-goog

^ permalink raw reply related	[flat|nested] 68+ messages in thread

* [PATCH 13/31] efi: Tidy up header includes
  2020-07-19 16:15 [PATCH 00/31] dm: Avoid including dm.h in header files Simon Glass
                   ` (11 preceding siblings ...)
  2020-07-19 16:15 ` [PATCH 12/31] w1: " Simon Glass
@ 2020-07-19 16:15 ` Simon Glass
  2020-08-04 15:04   ` Tom Rini
  2020-07-19 16:15 ` [PATCH 14/31] power: Tidy up inclusion of regulator_common.h Simon Glass
                   ` (17 subsequent siblings)
  30 siblings, 1 reply; 68+ messages in thread
From: Simon Glass @ 2020-07-19 16:15 UTC (permalink / raw)
  To: u-boot

Two files relies on efi_driver.h to include common.h and dm.h which is
incorrect. The former should always be included in a non-host C file and
the latter should be included if driver model is used.

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

 include/efi_driver.h              | 2 --
 lib/efi_driver/efi_block_device.c | 1 +
 lib/efi_driver/efi_uclass.c       | 2 ++
 3 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/include/efi_driver.h b/include/efi_driver.h
index 840483a416..2b62219c5b 100644
--- a/include/efi_driver.h
+++ b/include/efi_driver.h
@@ -8,8 +8,6 @@
 #ifndef _EFI_DRIVER_H
 #define _EFI_DRIVER_H 1
 
-#include <common.h>
-#include <dm.h>
 #include <efi_loader.h>
 
 /*
diff --git a/lib/efi_driver/efi_block_device.c b/lib/efi_driver/efi_block_device.c
index e7d8745ad8..0e72a68bce 100644
--- a/lib/efi_driver/efi_block_device.c
+++ b/lib/efi_driver/efi_block_device.c
@@ -30,6 +30,7 @@
 
 #include <common.h>
 #include <blk.h>
+#include <dm.h>
 #include <efi_driver.h>
 #include <malloc.h>
 #include <dm/device-internal.h>
diff --git a/lib/efi_driver/efi_uclass.c b/lib/efi_driver/efi_uclass.c
index 04e4e45734..0cf74b0361 100644
--- a/lib/efi_driver/efi_uclass.c
+++ b/lib/efi_driver/efi_uclass.c
@@ -17,6 +17,8 @@
  * controllers.
  */
 
+#include <common.h>
+#include <dm.h>
 #include <efi_driver.h>
 #include <log.h>
 #include <malloc.h>
-- 
2.28.0.rc0.105.gf9edc3c819-goog

^ permalink raw reply related	[flat|nested] 68+ messages in thread

* [PATCH 14/31] power: Tidy up inclusion of regulator_common.h
  2020-07-19 16:15 [PATCH 00/31] dm: Avoid including dm.h in header files Simon Glass
                   ` (12 preceding siblings ...)
  2020-07-19 16:15 ` [PATCH 13/31] efi: Tidy up header includes Simon Glass
@ 2020-07-19 16:15 ` Simon Glass
  2020-07-20 23:14   ` Jaehoon Chung
  2020-08-04 15:04   ` Tom Rini
  2020-07-19 16:15 ` [PATCH 15/31] mmc: Drop duplicate dm.h inclusion Simon Glass
                   ` (16 subsequent siblings)
  30 siblings, 2 replies; 68+ messages in thread
From: Simon Glass @ 2020-07-19 16:15 UTC (permalink / raw)
  To: u-boot

This file should not include common.h and dm.h so remove them. Also move
the inclusion of this file to after the normal includes.

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

 drivers/power/regulator/fixed.c            | 3 ++-
 drivers/power/regulator/gpio-regulator.c   | 3 ++-
 drivers/power/regulator/regulator_common.c | 4 +++-
 drivers/power/regulator/regulator_common.h | 2 --
 4 files changed, 7 insertions(+), 5 deletions(-)

diff --git a/drivers/power/regulator/fixed.c b/drivers/power/regulator/fixed.c
index b5f7aec353..2fa6c7e6b2 100644
--- a/drivers/power/regulator/fixed.c
+++ b/drivers/power/regulator/fixed.c
@@ -5,7 +5,6 @@
  *  Przemyslaw Marczak <p.marczak@samsung.com>
  */
 
-#include "regulator_common.h"
 #include <common.h>
 #include <errno.h>
 #include <dm.h>
@@ -13,6 +12,8 @@
 #include <power/pmic.h>
 #include <power/regulator.h>
 
+#include "regulator_common.h"
+
 static int fixed_regulator_ofdata_to_platdata(struct udevice *dev)
 {
 	struct dm_regulator_uclass_platdata *uc_pdata;
diff --git a/drivers/power/regulator/gpio-regulator.c b/drivers/power/regulator/gpio-regulator.c
index cf3fbae79d..947f812d09 100644
--- a/drivers/power/regulator/gpio-regulator.c
+++ b/drivers/power/regulator/gpio-regulator.c
@@ -4,7 +4,6 @@
  * Keerthy <j-keerthy@ti.com>
  */
 
-#include "regulator_common.h"
 #include <common.h>
 #include <fdtdec.h>
 #include <errno.h>
@@ -15,6 +14,8 @@
 #include <power/pmic.h>
 #include <power/regulator.h>
 
+#include "regulator_common.h"
+
 #define GPIO_REGULATOR_MAX_STATES	2
 
 DECLARE_GLOBAL_DATA_PTR;
diff --git a/drivers/power/regulator/regulator_common.c b/drivers/power/regulator/regulator_common.c
index 4cfcc31298..13906b9c6e 100644
--- a/drivers/power/regulator/regulator_common.c
+++ b/drivers/power/regulator/regulator_common.c
@@ -4,12 +4,14 @@
  * Sven Schwermer <sven.svenschwermer@disruptive-technologies.com>
  */
 
-#include "regulator_common.h"
 #include <common.h>
+#include <dm.h>
 #include <log.h>
 #include <linux/delay.h>
 #include <power/regulator.h>
 
+#include "regulator_common.h"
+
 int regulator_common_ofdata_to_platdata(struct udevice *dev,
 	struct regulator_common_platdata *dev_pdata, const char *enable_gpio_name)
 {
diff --git a/drivers/power/regulator/regulator_common.h b/drivers/power/regulator/regulator_common.h
index 18a525880a..bf80439c78 100644
--- a/drivers/power/regulator/regulator_common.h
+++ b/drivers/power/regulator/regulator_common.h
@@ -7,9 +7,7 @@
 #ifndef _REGULATOR_COMMON_H
 #define _REGULATOR_COMMON_H
 
-#include <common.h>
 #include <asm/gpio.h>
-#include <dm.h>
 
 struct regulator_common_platdata {
 	struct gpio_desc gpio; /* GPIO for regulator enable control */
-- 
2.28.0.rc0.105.gf9edc3c819-goog

^ permalink raw reply related	[flat|nested] 68+ messages in thread

* [PATCH 15/31] mmc: Drop duplicate dm.h inclusion
  2020-07-19 16:15 [PATCH 00/31] dm: Avoid including dm.h in header files Simon Glass
                   ` (13 preceding siblings ...)
  2020-07-19 16:15 ` [PATCH 14/31] power: Tidy up inclusion of regulator_common.h Simon Glass
@ 2020-07-19 16:15 ` Simon Glass
  2020-08-04 15:04   ` Tom Rini
  2020-07-19 16:15 ` [PATCH 16/31] spi: " Simon Glass
                   ` (15 subsequent siblings)
  30 siblings, 1 reply; 68+ messages in thread
From: Simon Glass @ 2020-07-19 16:15 UTC (permalink / raw)
  To: u-boot

We only need to include this header once. Drop the duplicate.

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

 drivers/mmc/sdhci.c | 1 -
 1 file changed, 1 deletion(-)

diff --git a/drivers/mmc/sdhci.c b/drivers/mmc/sdhci.c
index f4eb655f6e..ff871f8252 100644
--- a/drivers/mmc/sdhci.c
+++ b/drivers/mmc/sdhci.c
@@ -15,7 +15,6 @@
 #include <malloc.h>
 #include <mmc.h>
 #include <sdhci.h>
-#include <dm.h>
 #include <asm/cache.h>
 #include <linux/bitops.h>
 #include <linux/delay.h>
-- 
2.28.0.rc0.105.gf9edc3c819-goog

^ permalink raw reply related	[flat|nested] 68+ messages in thread

* [PATCH 16/31] spi: Drop duplicate dm.h inclusion
  2020-07-19 16:15 [PATCH 00/31] dm: Avoid including dm.h in header files Simon Glass
                   ` (14 preceding siblings ...)
  2020-07-19 16:15 ` [PATCH 15/31] mmc: Drop duplicate dm.h inclusion Simon Glass
@ 2020-07-19 16:15 ` Simon Glass
  2020-08-04 15:04   ` Tom Rini
  2020-07-19 16:15 ` [PATCH 17/31] ti: am654: " Simon Glass
                   ` (14 subsequent siblings)
  30 siblings, 1 reply; 68+ messages in thread
From: Simon Glass @ 2020-07-19 16:15 UTC (permalink / raw)
  To: u-boot

We only need to include this header once. Drop the duplicate.

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

 drivers/spi/mscc_bb_spi.c | 1 -
 1 file changed, 1 deletion(-)

diff --git a/drivers/spi/mscc_bb_spi.c b/drivers/spi/mscc_bb_spi.c
index 0454410ee9..e77447b655 100644
--- a/drivers/spi/mscc_bb_spi.c
+++ b/drivers/spi/mscc_bb_spi.c
@@ -11,7 +11,6 @@
 #include <log.h>
 #include <malloc.h>
 #include <spi.h>
-#include <dm.h>
 #include <asm/gpio.h>
 #include <asm/io.h>
 #include <linux/bitops.h>
-- 
2.28.0.rc0.105.gf9edc3c819-goog

^ permalink raw reply related	[flat|nested] 68+ messages in thread

* [PATCH 17/31] ti: am654: Drop duplicate dm.h inclusion
  2020-07-19 16:15 [PATCH 00/31] dm: Avoid including dm.h in header files Simon Glass
                   ` (15 preceding siblings ...)
  2020-07-19 16:15 ` [PATCH 16/31] spi: " Simon Glass
@ 2020-07-19 16:15 ` Simon Glass
  2020-08-04 15:05   ` Tom Rini
  2020-07-19 16:15 ` [PATCH 18/31] liebherr: " Simon Glass
                   ` (13 subsequent siblings)
  30 siblings, 1 reply; 68+ messages in thread
From: Simon Glass @ 2020-07-19 16:15 UTC (permalink / raw)
  To: u-boot

We only need to include this header once. Drop the duplicate.

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

 drivers/ram/k3-am654-ddrss.c | 1 -
 1 file changed, 1 deletion(-)

diff --git a/drivers/ram/k3-am654-ddrss.c b/drivers/ram/k3-am654-ddrss.c
index 8bbd8cfa83..21e5a65529 100644
--- a/drivers/ram/k3-am654-ddrss.c
+++ b/drivers/ram/k3-am654-ddrss.c
@@ -13,7 +13,6 @@
 #include <ram.h>
 #include <asm/io.h>
 #include <power-domain.h>
-#include <dm.h>
 #include <asm/arch/sys_proto.h>
 #include <dm/device_compat.h>
 #include <power/regulator.h>
-- 
2.28.0.rc0.105.gf9edc3c819-goog

^ permalink raw reply related	[flat|nested] 68+ messages in thread

* [PATCH 18/31] liebherr: Drop duplicate dm.h inclusion
  2020-07-19 16:15 [PATCH 00/31] dm: Avoid including dm.h in header files Simon Glass
                   ` (16 preceding siblings ...)
  2020-07-19 16:15 ` [PATCH 17/31] ti: am654: " Simon Glass
@ 2020-07-19 16:15 ` Simon Glass
  2020-08-04 15:05   ` Tom Rini
  2020-07-19 16:15 ` [PATCH 19/31] pci: Drop dm.h inclusion from header file Simon Glass
                   ` (12 subsequent siblings)
  30 siblings, 1 reply; 68+ messages in thread
From: Simon Glass @ 2020-07-19 16:15 UTC (permalink / raw)
  To: u-boot

We only need to include this header once. Drop the duplicate.

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

 board/liebherr/display5/display5.c | 1 -
 1 file changed, 1 deletion(-)

diff --git a/board/liebherr/display5/display5.c b/board/liebherr/display5/display5.c
index ada7cf5eb7..5f44714301 100644
--- a/board/liebherr/display5/display5.c
+++ b/board/liebherr/display5/display5.c
@@ -27,7 +27,6 @@
 #include <i2c.h>
 #include <linux/delay.h>
 
-#include <dm.h>
 #include <dm/platform_data/serial_mxc.h>
 #include <dm/platdata.h>
 
-- 
2.28.0.rc0.105.gf9edc3c819-goog

^ permalink raw reply related	[flat|nested] 68+ messages in thread

* [PATCH 19/31] pci: Drop dm.h inclusion from header file
  2020-07-19 16:15 [PATCH 00/31] dm: Avoid including dm.h in header files Simon Glass
                   ` (17 preceding siblings ...)
  2020-07-19 16:15 ` [PATCH 18/31] liebherr: " Simon Glass
@ 2020-07-19 16:15 ` Simon Glass
  2020-08-04 15:05   ` Tom Rini
  2020-07-19 16:15 ` [PATCH 20/31] mediatek: Drop dm.h " Simon Glass
                   ` (11 subsequent siblings)
  30 siblings, 1 reply; 68+ messages in thread
From: Simon Glass @ 2020-07-19 16:15 UTC (permalink / raw)
  To: u-boot

The layerscape header should not include dm.h so remove it.

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

 drivers/pci/pcie_layerscape.h            | 1 -
 drivers/pci/pcie_layerscape_fixup.c      | 1 +
 drivers/pci/pcie_layerscape_gen4.h       | 1 -
 drivers/pci/pcie_layerscape_gen4_fixup.c | 1 +
 4 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/pci/pcie_layerscape.h b/drivers/pci/pcie_layerscape.h
index 95454bc188..ffbafbba51 100644
--- a/drivers/pci/pcie_layerscape.h
+++ b/drivers/pci/pcie_layerscape.h
@@ -8,7 +8,6 @@
 #ifndef _PCIE_LAYERSCAPE_H_
 #define _PCIE_LAYERSCAPE_H_
 #include <pci.h>
-#include <dm.h>
 
 #ifndef CONFIG_SYS_PCI_MEMORY_BUS
 #define CONFIG_SYS_PCI_MEMORY_BUS CONFIG_SYS_SDRAM_BASE
diff --git a/drivers/pci/pcie_layerscape_fixup.c b/drivers/pci/pcie_layerscape_fixup.c
index 76e680481a..5528df4db1 100644
--- a/drivers/pci/pcie_layerscape_fixup.c
+++ b/drivers/pci/pcie_layerscape_fixup.c
@@ -6,6 +6,7 @@
  */
 
 #include <common.h>
+#include <dm.h>
 #include <init.h>
 #include <log.h>
 #include <pci.h>
diff --git a/drivers/pci/pcie_layerscape_gen4.h b/drivers/pci/pcie_layerscape_gen4.h
index d298a2b810..483eb538b5 100644
--- a/drivers/pci/pcie_layerscape_gen4.h
+++ b/drivers/pci/pcie_layerscape_gen4.h
@@ -9,7 +9,6 @@
 #ifndef _PCIE_LAYERSCAPE_GEN4_H_
 #define _PCIE_LAYERSCAPE_GEN4_H_
 #include <pci.h>
-#include <dm.h>
 #include <linux/bitops.h>
 
 #ifndef CONFIG_SYS_PCI_MEMORY_SIZE
diff --git a/drivers/pci/pcie_layerscape_gen4_fixup.c b/drivers/pci/pcie_layerscape_gen4_fixup.c
index 375ce45839..148b5d17ed 100644
--- a/drivers/pci/pcie_layerscape_gen4_fixup.c
+++ b/drivers/pci/pcie_layerscape_gen4_fixup.c
@@ -8,6 +8,7 @@
  */
 
 #include <common.h>
+#include <dm.h>
 #include <log.h>
 #include <pci.h>
 #include <asm/arch/fsl_serdes.h>
-- 
2.28.0.rc0.105.gf9edc3c819-goog

^ permalink raw reply related	[flat|nested] 68+ messages in thread

* [PATCH 20/31] mediatek: Drop dm.h header file
  2020-07-19 16:15 [PATCH 00/31] dm: Avoid including dm.h in header files Simon Glass
                   ` (18 preceding siblings ...)
  2020-07-19 16:15 ` [PATCH 19/31] pci: Drop dm.h inclusion from header file Simon Glass
@ 2020-07-19 16:15 ` Simon Glass
  2020-08-04 15:05   ` Tom Rini
  2020-07-19 16:15 ` [PATCH 21/31] mscc: " Simon Glass
                   ` (10 subsequent siblings)
  30 siblings, 1 reply; 68+ messages in thread
From: Simon Glass @ 2020-07-19 16:15 UTC (permalink / raw)
  To: u-boot

This header file should not be included in other header files. Remove it
and use a forward declaration instead.

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

 arch/arm/include/asm/arch-mediatek/reset.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/arm/include/asm/arch-mediatek/reset.h b/arch/arm/include/asm/arch-mediatek/reset.h
index 9704666d24..4ba0bad94e 100644
--- a/arch/arm/include/asm/arch-mediatek/reset.h
+++ b/arch/arm/include/asm/arch-mediatek/reset.h
@@ -6,7 +6,7 @@
 #ifndef __MEDIATEK_RESET_H
 #define __MEDIATEK_RESET_H
 
-#include <dm.h>
+struct udevice;
 
 int mediatek_reset_bind(struct udevice *pdev, u32 regofs, u32 num_regs);
 
-- 
2.28.0.rc0.105.gf9edc3c819-goog

^ permalink raw reply related	[flat|nested] 68+ messages in thread

* [PATCH 21/31] mscc: Drop dm.h header file
  2020-07-19 16:15 [PATCH 00/31] dm: Avoid including dm.h in header files Simon Glass
                   ` (19 preceding siblings ...)
  2020-07-19 16:15 ` [PATCH 20/31] mediatek: Drop dm.h " Simon Glass
@ 2020-07-19 16:15 ` Simon Glass
  2020-08-04 15:05   ` Tom Rini
  2020-07-19 16:15 ` [PATCH 22/31] adc: " Simon Glass
                   ` (9 subsequent siblings)
  30 siblings, 1 reply; 68+ messages in thread
From: Simon Glass @ 2020-07-19 16:15 UTC (permalink / raw)
  To: u-boot

This header file should not be included in other header files. Remove it
from each one and use a forward declaration instead.

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

 arch/mips/mach-mscc/include/mach/jr2/jr2.h         | 3 ---
 arch/mips/mach-mscc/include/mach/luton/luton.h     | 3 ---
 arch/mips/mach-mscc/include/mach/ocelot/ocelot.h   | 3 ---
 arch/mips/mach-mscc/include/mach/serval/serval.h   | 3 ---
 arch/mips/mach-mscc/include/mach/servalt/servalt.h | 3 ---
 board/mscc/servalt/servalt.c                       | 2 ++
 6 files changed, 2 insertions(+), 15 deletions(-)

diff --git a/arch/mips/mach-mscc/include/mach/jr2/jr2.h b/arch/mips/mach-mscc/include/mach/jr2/jr2.h
index 67244f63fa..3a779e7035 100644
--- a/arch/mips/mach-mscc/include/mach/jr2/jr2.h
+++ b/arch/mips/mach-mscc/include/mach/jr2/jr2.h
@@ -8,9 +8,6 @@
 #ifndef _MSCC_JR2_H_
 #define _MSCC_JR2_H_
 
-#include <linux/bitops.h>
-#include <dm.h>
-
 /*
  * Target offset base(s)
  */
diff --git a/arch/mips/mach-mscc/include/mach/luton/luton.h b/arch/mips/mach-mscc/include/mach/luton/luton.h
index 19f02ede66..dda665fc15 100644
--- a/arch/mips/mach-mscc/include/mach/luton/luton.h
+++ b/arch/mips/mach-mscc/include/mach/luton/luton.h
@@ -8,9 +8,6 @@
 #ifndef _MSCC_OCELOT_H_
 #define _MSCC_OCELOT_H_
 
-#include <linux/bitops.h>
-#include <dm.h>
-
 /*
  * Target offset base(s)
  */
diff --git a/arch/mips/mach-mscc/include/mach/ocelot/ocelot.h b/arch/mips/mach-mscc/include/mach/ocelot/ocelot.h
index 2cb2135d37..72b07c33cd 100644
--- a/arch/mips/mach-mscc/include/mach/ocelot/ocelot.h
+++ b/arch/mips/mach-mscc/include/mach/ocelot/ocelot.h
@@ -8,9 +8,6 @@
 #ifndef _MSCC_OCELOT_H_
 #define _MSCC_OCELOT_H_
 
-#include <linux/bitops.h>
-#include <dm.h>
-
 /*
  * Target offset base(s)
  */
diff --git a/arch/mips/mach-mscc/include/mach/serval/serval.h b/arch/mips/mach-mscc/include/mach/serval/serval.h
index 763d18fe62..a78c6e59bb 100644
--- a/arch/mips/mach-mscc/include/mach/serval/serval.h
+++ b/arch/mips/mach-mscc/include/mach/serval/serval.h
@@ -8,9 +8,6 @@
 #ifndef _MSCC_SERVAL_H_
 #define _MSCC_SERVAL_H_
 
-#include <linux/bitops.h>
-#include <dm.h>
-
 /*
  * Target offset base(s)
  */
diff --git a/arch/mips/mach-mscc/include/mach/servalt/servalt.h b/arch/mips/mach-mscc/include/mach/servalt/servalt.h
index 9015bc7dad..4d7d0886dd 100644
--- a/arch/mips/mach-mscc/include/mach/servalt/servalt.h
+++ b/arch/mips/mach-mscc/include/mach/servalt/servalt.h
@@ -8,9 +8,6 @@
 #ifndef _MSCC_SERVALT_H_
 #define _MSCC_SERVALT_H_
 
-#include <linux/bitops.h>
-#include <dm.h>
-
 /*
  * Target offset base(s)
  */
diff --git a/board/mscc/servalt/servalt.c b/board/mscc/servalt/servalt.c
index d0e6016b9a..879f5de506 100644
--- a/board/mscc/servalt/servalt.c
+++ b/board/mscc/servalt/servalt.c
@@ -9,6 +9,8 @@
 #include <asm/io.h>
 #include <led.h>
 
+DECLARE_GLOBAL_DATA_PTR;
+
 enum {
 	BOARD_TYPE_PCB116 = 0xAABBCE00,
 };
-- 
2.28.0.rc0.105.gf9edc3c819-goog

^ permalink raw reply related	[flat|nested] 68+ messages in thread

* [PATCH 22/31] adc: Drop dm.h header file
  2020-07-19 16:15 [PATCH 00/31] dm: Avoid including dm.h in header files Simon Glass
                   ` (20 preceding siblings ...)
  2020-07-19 16:15 ` [PATCH 21/31] mscc: " Simon Glass
@ 2020-07-19 16:15 ` Simon Glass
  2020-08-04 15:05   ` Tom Rini
  2020-07-19 16:15 ` [PATCH 23/31] nand: " Simon Glass
                   ` (8 subsequent siblings)
  30 siblings, 1 reply; 68+ messages in thread
From: Simon Glass @ 2020-07-19 16:15 UTC (permalink / raw)
  To: u-boot

This header file should not be included in other header files. Remove it
and use a forward declaration instead.

Drop the common.h inclusion also.

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

 drivers/adc/stm32-adc-core.c | 1 +
 drivers/adc/stm32-adc-core.h | 4 ++--
 drivers/adc/stm32-adc.c      | 1 +
 3 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/drivers/adc/stm32-adc-core.c b/drivers/adc/stm32-adc-core.c
index 31bbb6f9d6..f20c46fb36 100644
--- a/drivers/adc/stm32-adc-core.c
+++ b/drivers/adc/stm32-adc-core.c
@@ -7,6 +7,7 @@
  */
 
 #include <common.h>
+#include <dm.h>
 #include <asm/io.h>
 #include <dm/device_compat.h>
 #include <linux/bitops.h>
diff --git a/drivers/adc/stm32-adc-core.h b/drivers/adc/stm32-adc-core.h
index ba0e10e6cc..05968dbcc8 100644
--- a/drivers/adc/stm32-adc-core.h
+++ b/drivers/adc/stm32-adc-core.h
@@ -26,9 +26,9 @@
 #define STM32_ADC_MAX_ADCS		3
 #define STM32_ADCX_COMN_OFFSET		0x300
 
-#include <common.h>
 #include <clk.h>
-#include <dm.h>
+
+struct udevice;
 
 /**
  * struct stm32_adc_common - stm32 ADC driver common data (for all instances)
diff --git a/drivers/adc/stm32-adc.c b/drivers/adc/stm32-adc.c
index b12f894a9b..3f0ed48846 100644
--- a/drivers/adc/stm32-adc.c
+++ b/drivers/adc/stm32-adc.c
@@ -8,6 +8,7 @@
 
 #include <common.h>
 #include <adc.h>
+#include <dm.h>
 #include <asm/io.h>
 #include <dm/device_compat.h>
 #include <linux/bitops.h>
-- 
2.28.0.rc0.105.gf9edc3c819-goog

^ permalink raw reply related	[flat|nested] 68+ messages in thread

* [PATCH 23/31] nand: Drop dm.h header file
  2020-07-19 16:15 [PATCH 00/31] dm: Avoid including dm.h in header files Simon Glass
                   ` (21 preceding siblings ...)
  2020-07-19 16:15 ` [PATCH 22/31] adc: " Simon Glass
@ 2020-07-19 16:15 ` Simon Glass
  2020-08-04 15:05   ` Tom Rini
  2020-07-19 16:15 ` [PATCH 24/31] ufs: " Simon Glass
                   ` (7 subsequent siblings)
  30 siblings, 1 reply; 68+ messages in thread
From: Simon Glass @ 2020-07-19 16:15 UTC (permalink / raw)
  To: u-boot

This header file should not be included in other header files. Remove it
and use a forward declaration instead.

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

 drivers/mtd/nand/raw/brcmnand/brcmnand_compat.c | 1 +
 drivers/mtd/nand/raw/brcmnand/brcmnand_compat.h | 4 ++--
 2 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/drivers/mtd/nand/raw/brcmnand/brcmnand_compat.c b/drivers/mtd/nand/raw/brcmnand/brcmnand_compat.c
index c58679834e..a6acf556bc 100644
--- a/drivers/mtd/nand/raw/brcmnand/brcmnand_compat.c
+++ b/drivers/mtd/nand/raw/brcmnand/brcmnand_compat.c
@@ -1,6 +1,7 @@
 // SPDX-License-Identifier: GPL-2.0+
 
 #include <common.h>
+#include <dm.h>
 #include <malloc.h>
 #include <dm/devres.h>
 #include "brcmnand_compat.h"
diff --git a/drivers/mtd/nand/raw/brcmnand/brcmnand_compat.h b/drivers/mtd/nand/raw/brcmnand/brcmnand_compat.h
index 6f9bec7085..52711d4978 100644
--- a/drivers/mtd/nand/raw/brcmnand/brcmnand_compat.h
+++ b/drivers/mtd/nand/raw/brcmnand/brcmnand_compat.h
@@ -3,8 +3,8 @@
 #ifndef __BRCMNAND_COMPAT_H
 #define __BRCMNAND_COMPAT_H
 
-#include <clk.h>
-#include <dm.h>
+struct clk;
+struct udevice;
 
 char *devm_kasprintf(struct udevice *dev, gfp_t gfp, const char *fmt, ...);
 
-- 
2.28.0.rc0.105.gf9edc3c819-goog

^ permalink raw reply related	[flat|nested] 68+ messages in thread

* [PATCH 24/31] ufs: Drop dm.h header file
  2020-07-19 16:15 [PATCH 00/31] dm: Avoid including dm.h in header files Simon Glass
                   ` (22 preceding siblings ...)
  2020-07-19 16:15 ` [PATCH 23/31] nand: " Simon Glass
@ 2020-07-19 16:15 ` Simon Glass
  2020-08-04 15:05   ` Tom Rini
  2020-07-19 16:15 ` [PATCH 25/31] usb: " Simon Glass
                   ` (6 subsequent siblings)
  30 siblings, 1 reply; 68+ messages in thread
From: Simon Glass @ 2020-07-19 16:15 UTC (permalink / raw)
  To: u-boot

This header file should not be included in other header files. Remove it
and use a forward declaration instead.

Also drop asm/io.h

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

 drivers/ufs/cdns-platform.c | 1 +
 drivers/ufs/ufs.c           | 3 ++-
 drivers/ufs/ufs.h           | 5 ++---
 3 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/drivers/ufs/cdns-platform.c b/drivers/ufs/cdns-platform.c
index 1a7bb7bed8..bad1bf7de5 100644
--- a/drivers/ufs/cdns-platform.c
+++ b/drivers/ufs/cdns-platform.c
@@ -9,6 +9,7 @@
 #include <common.h>
 #include <dm.h>
 #include <ufs.h>
+#include <asm/io.h>
 #include <dm/device_compat.h>
 #include <linux/bitops.h>
 #include <linux/err.h>
diff --git a/drivers/ufs/ufs.c b/drivers/ufs/ufs.c
index 87b4e5fc56..92b7e9fd7c 100644
--- a/drivers/ufs/ufs.c
+++ b/drivers/ufs/ufs.c
@@ -19,9 +19,10 @@
 #include <malloc.h>
 #include <hexdump.h>
 #include <scsi.h>
+#include <asm/io.h>
+#include <asm/dma-mapping.h>
 #include <linux/bitops.h>
 #include <linux/delay.h>
-
 #include <linux/dma-mapping.h>
 
 #include "ufs.h"
diff --git a/drivers/ufs/ufs.h b/drivers/ufs/ufs.h
index e0bde93776..069888fdd9 100644
--- a/drivers/ufs/ufs.h
+++ b/drivers/ufs/ufs.h
@@ -2,11 +2,10 @@
 #ifndef __UFS_H
 #define __UFS_H
 
-#include <asm/io.h>
-#include <dm.h>
-
 #include "unipro.h"
 
+struct udevice;
+
 #define UFS_CDB_SIZE	16
 #define UPIU_TRANSACTION_UIC_CMD 0x1F
 #define UIC_CMD_SIZE (sizeof(u32) * 4)
-- 
2.28.0.rc0.105.gf9edc3c819-goog

^ permalink raw reply related	[flat|nested] 68+ messages in thread

* [PATCH 25/31] usb: Drop dm.h header file
  2020-07-19 16:15 [PATCH 00/31] dm: Avoid including dm.h in header files Simon Glass
                   ` (23 preceding siblings ...)
  2020-07-19 16:15 ` [PATCH 24/31] ufs: " Simon Glass
@ 2020-07-19 16:15 ` Simon Glass
  2020-08-04 15:05   ` Tom Rini
  2020-07-19 16:15 ` [PATCH 26/31] clk: Drop dm.h header file in clk-provider.h Simon Glass
                   ` (5 subsequent siblings)
  30 siblings, 1 reply; 68+ messages in thread
From: Simon Glass @ 2020-07-19 16:15 UTC (permalink / raw)
  To: u-boot

This header file should not be included in other header files. Remove it
and use a forward declaration instead.

Also move the inline function out into a C file. We should not include C
code in headers.

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

 drivers/usb/musb-new/musb_uboot.c | 37 +++++++++++++++++++++++++
 drivers/usb/musb-new/pic32.c      |  1 +
 drivers/usb/musb-new/usb-compat.h | 45 +++++++------------------------
 3 files changed, 47 insertions(+), 36 deletions(-)

diff --git a/drivers/usb/musb-new/musb_uboot.c b/drivers/usb/musb-new/musb_uboot.c
index 988071a61d..8ac2f0a78a 100644
--- a/drivers/usb/musb-new/musb_uboot.c
+++ b/drivers/usb/musb-new/musb_uboot.c
@@ -1,5 +1,6 @@
 #include <common.h>
 #include <console.h>
+#include <dm.h>
 #include <malloc.h>
 #include <watchdog.h>
 #include <linux/delay.h>
@@ -452,3 +453,39 @@ struct musb *musb_register(struct musb_hdrc_platform_data *plat, void *bdata,
 
 	return *musbp;
 }
+
+#if CONFIG_IS_ENABLED(DM_USB)
+struct usb_device *usb_dev_get_parent(struct usb_device *udev)
+{
+	struct udevice *parent = udev->dev->parent;
+
+	/*
+	 * When called from usb-uclass.c: usb_scan_device() udev->dev points
+	 * to the parent udevice, not the actual udevice belonging to the
+	 * udev as the device is not instantiated yet.
+	 *
+	 * If dev is an usb-bus, then we are called from usb_scan_device() for
+	 * an usb-device plugged directly into the root port, return NULL.
+	 */
+	if (device_get_uclass_id(udev->dev) == UCLASS_USB)
+		return NULL;
+
+	/*
+	 * If these 2 are not the same we are being called from
+	 * usb_scan_device() and udev itself is the parent.
+	 */
+	if (dev_get_parent_priv(udev->dev) != udev)
+		return udev;
+
+	/* We are being called normally, use the parent pointer */
+	if (device_get_uclass_id(parent) == UCLASS_USB_HUB)
+		return dev_get_parent_priv(parent);
+
+	return NULL;
+}
+#else
+struct usb_device *usb_dev_get_parent(struct usb_device *udev)
+{
+	return udev->parent;
+}
+#endif
diff --git a/drivers/usb/musb-new/pic32.c b/drivers/usb/musb-new/pic32.c
index 74a841af46..2fbe9bebf1 100644
--- a/drivers/usb/musb-new/pic32.c
+++ b/drivers/usb/musb-new/pic32.c
@@ -10,6 +10,7 @@
  */
 
 #include <common.h>
+#include <dm.h>
 #include <dm/device_compat.h>
 #include <linux/bitops.h>
 #include <linux/delay.h>
diff --git a/drivers/usb/musb-new/usb-compat.h b/drivers/usb/musb-new/usb-compat.h
index f2c18ad3a2..1c66c4fe36 100644
--- a/drivers/usb/musb-new/usb-compat.h
+++ b/drivers/usb/musb-new/usb-compat.h
@@ -1,9 +1,10 @@
 #ifndef __USB_COMPAT_H__
 #define __USB_COMPAT_H__
 
-#include <dm.h>
 #include "usb.h"
 
+struct udevice;
+
 struct usb_hcd {
 	void *hcd_priv;
 };
@@ -67,40 +68,12 @@ static inline int usb_hcd_unmap_urb_for_dma(struct usb_hcd *hcd,
 	return 0;
 }
 
-#if CONFIG_IS_ENABLED(DM_USB)
-static inline struct usb_device *usb_dev_get_parent(struct usb_device *udev)
-{
-	struct udevice *parent = udev->dev->parent;
-
-	/*
-	 * When called from usb-uclass.c: usb_scan_device() udev->dev points
-	 * to the parent udevice, not the actual udevice belonging to the
-	 * udev as the device is not instantiated yet.
-	 *
-	 * If dev is an usb-bus, then we are called from usb_scan_device() for
-	 * an usb-device plugged directly into the root port, return NULL.
-	 */
-	if (device_get_uclass_id(udev->dev) == UCLASS_USB)
-		return NULL;
-
-	/*
-	 * If these 2 are not the same we are being called from
-	 * usb_scan_device() and udev itself is the parent.
-	 */
-	if (dev_get_parent_priv(udev->dev) != udev)
-		return udev;
-
-	/* We are being called normally, use the parent pointer */
-	if (device_get_uclass_id(parent) == UCLASS_USB_HUB)
-		return dev_get_parent_priv(parent);
-
-	return NULL;
-}
-#else
-static inline struct usb_device *usb_dev_get_parent(struct usb_device *dev)
-{
-	return dev->parent;
-}
-#endif
+/**
+ * usb_dev_get_parent() - Get the parent of a USB device
+ *
+ * @udev: USB struct containing information about the device
+ * @return associated device for which udev == dev_get_parent_priv(dev)
+ */
+struct usb_device *usb_dev_get_parent(struct usb_device *udev);
 
 #endif /* __USB_COMPAT_H__ */
-- 
2.28.0.rc0.105.gf9edc3c819-goog

^ permalink raw reply related	[flat|nested] 68+ messages in thread

* [PATCH 26/31] clk: Drop dm.h header file in clk-provider.h
  2020-07-19 16:15 [PATCH 00/31] dm: Avoid including dm.h in header files Simon Glass
                   ` (24 preceding siblings ...)
  2020-07-19 16:15 ` [PATCH 25/31] usb: " Simon Glass
@ 2020-07-19 16:15 ` Simon Glass
  2020-07-19 16:54   ` Sean Anderson
  2020-08-04 15:06   ` Tom Rini
  2020-07-19 16:15 ` [PATCH 27/31] net: Drop dm.h header file in eth_phy.h Simon Glass
                   ` (4 subsequent siblings)
  30 siblings, 2 replies; 68+ messages in thread
From: Simon Glass @ 2020-07-19 16:15 UTC (permalink / raw)
  To: u-boot

This header file should not be included in other header files. Remove it
and use a forward declaration and un-inlining of dev_get_clk_ptr()
instead.

Fix up the kendryte header files to avoid build errors.

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

 drivers/clk/clk-uclass.c      |  5 +++++
 drivers/clk/kendryte/bypass.c |  7 +++++--
 drivers/clk/kendryte/pll.c    | 10 ++++++----
 include/kendryte/bypass.h     |  2 +-
 include/linux/clk-provider.h  |  8 +++-----
 5 files changed, 20 insertions(+), 12 deletions(-)

diff --git a/drivers/clk/clk-uclass.c b/drivers/clk/clk-uclass.c
index 15656f5973..934cd5787a 100644
--- a/drivers/clk/clk-uclass.c
+++ b/drivers/clk/clk-uclass.c
@@ -25,6 +25,11 @@ static inline const struct clk_ops *clk_dev_ops(struct udevice *dev)
 	return (const struct clk_ops *)dev->driver->ops;
 }
 
+struct clk *dev_get_clk_ptr(struct udevice *dev)
+{
+	return (struct clk *)dev_get_uclass_priv(dev);
+}
+
 #if CONFIG_IS_ENABLED(OF_CONTROL)
 # if CONFIG_IS_ENABLED(OF_PLATDATA)
 int clk_get_by_driver_info(struct udevice *dev, struct phandle_1_arg *cells,
diff --git a/drivers/clk/kendryte/bypass.c b/drivers/clk/kendryte/bypass.c
index d1fd28175b..5f1986f2cb 100644
--- a/drivers/clk/kendryte/bypass.c
+++ b/drivers/clk/kendryte/bypass.c
@@ -4,12 +4,15 @@
  */
 
 #define LOG_CATEGORY UCLASS_CLK
-#include <kendryte/bypass.h>
 
+#include <common.h>
+#include <clk.h>
 #include <clk-uclass.h>
+#include <dm.h>
+#include <log.h>
+#include <kendryte/bypass.h>
 #include <linux/clk-provider.h>
 #include <linux/err.h>
-#include <log.h>
 
 #define CLK_K210_BYPASS "k210_clk_bypass"
 
diff --git a/drivers/clk/kendryte/pll.c b/drivers/clk/kendryte/pll.c
index 19e358856a..ab6d75d585 100644
--- a/drivers/clk/kendryte/pll.c
+++ b/drivers/clk/kendryte/pll.c
@@ -3,18 +3,20 @@
  * Copyright (C) 2019-20 Sean Anderson <seanga2@gmail.com>
  */
 #define LOG_CATEGORY UCLASS_CLK
-#include <kendryte/pll.h>
 
-#include <asm/io.h>
+#include <common.h>
+#include <dm.h>
 /* For DIV_ROUND_DOWN_ULL, defined in linux/kernel.h */
 #include <div64.h>
+#include <log.h>
+#include <serial.h>
+#include <asm/io.h>
 #include <dt-bindings/clock/k210-sysctl.h>
+#include <kendryte/pll.h>
 #include <linux/bitfield.h>
 #include <linux/clk-provider.h>
 #include <linux/delay.h>
 #include <linux/err.h>
-#include <log.h>
-#include <serial.h>
 
 #define CLK_K210_PLL "k210_clk_pll"
 
diff --git a/include/kendryte/bypass.h b/include/kendryte/bypass.h
index a081cbd12f..ab85bbcbfc 100644
--- a/include/kendryte/bypass.h
+++ b/include/kendryte/bypass.h
@@ -5,7 +5,7 @@
 #ifndef K210_BYPASS_H
 #define K210_BYPASS_H
 
-#include <clk.h>
+struct clk;
 
 struct k210_bypass {
 	struct clk clk;
diff --git a/include/linux/clk-provider.h b/include/linux/clk-provider.h
index 8a20743ad8..79dce8f0ad 100644
--- a/include/linux/clk-provider.h
+++ b/include/linux/clk-provider.h
@@ -9,12 +9,13 @@
 #ifndef __LINUX_CLK_PROVIDER_H
 #define __LINUX_CLK_PROVIDER_H
 
-#include <dm.h>
 #include <linux/bitops.h>
 #include <linux/err.h>
 #include <clk-uclass.h>
 #include <linux/err.h>
 
+struct udevice;
+
 static inline void clk_dm(ulong id, struct clk *clk)
 {
 	if (!IS_ERR(clk))
@@ -188,8 +189,5 @@ struct clk *clk_register_mux(struct device *dev, const char *name,
 const char *clk_hw_get_name(const struct clk *hw);
 ulong clk_generic_get_rate(struct clk *clk);
 
-static inline struct clk *dev_get_clk_ptr(struct udevice *dev)
-{
-	return (struct clk *)dev_get_uclass_priv(dev);
-}
+struct clk *dev_get_clk_ptr(struct udevice *dev);
 #endif /* __LINUX_CLK_PROVIDER_H */
-- 
2.28.0.rc0.105.gf9edc3c819-goog

^ permalink raw reply related	[flat|nested] 68+ messages in thread

* [PATCH 27/31] net: Drop dm.h header file in eth_phy.h
  2020-07-19 16:15 [PATCH 00/31] dm: Avoid including dm.h in header files Simon Glass
                   ` (25 preceding siblings ...)
  2020-07-19 16:15 ` [PATCH 26/31] clk: Drop dm.h header file in clk-provider.h Simon Glass
@ 2020-07-19 16:15 ` Simon Glass
  2020-08-04 15:06   ` Tom Rini
  2020-07-19 16:15 ` [PATCH 28/31] net: Drop duplicate include of dm.h in pcnet.c Simon Glass
                   ` (3 subsequent siblings)
  30 siblings, 1 reply; 68+ messages in thread
From: Simon Glass @ 2020-07-19 16:15 UTC (permalink / raw)
  To: u-boot

This header file should not be included in other header files. Remove it
and use a forward declaration instead.

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

 include/eth_phy.h | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/include/eth_phy.h b/include/eth_phy.h
index 19c496551b..be6c881527 100644
--- a/include/eth_phy.h
+++ b/include/eth_phy.h
@@ -6,9 +6,10 @@
 #ifndef _eth_phy_h_
 #define _eth_phy_h_
 
-#include <dm.h>
 #include <phy.h>
 
+struct udevice;
+
 int eth_phy_binds_nodes(struct udevice *eth_dev);
 int eth_phy_set_mdio_bus(struct udevice *eth_dev, struct mii_dev *mdio_bus);
 struct mii_dev *eth_phy_get_mdio_bus(struct udevice *eth_dev);
-- 
2.28.0.rc0.105.gf9edc3c819-goog

^ permalink raw reply related	[flat|nested] 68+ messages in thread

* [PATCH 28/31] net: Drop duplicate include of dm.h in pcnet.c
  2020-07-19 16:15 [PATCH 00/31] dm: Avoid including dm.h in header files Simon Glass
                   ` (26 preceding siblings ...)
  2020-07-19 16:15 ` [PATCH 27/31] net: Drop dm.h header file in eth_phy.h Simon Glass
@ 2020-07-19 16:15 ` Simon Glass
  2020-08-04 15:06   ` Tom Rini
  2020-07-19 16:15 ` [PATCH 29/31] dm: core: Guard against including dm.h in header files Simon Glass
                   ` (2 subsequent siblings)
  30 siblings, 1 reply; 68+ messages in thread
From: Simon Glass @ 2020-07-19 16:15 UTC (permalink / raw)
  To: u-boot

This file includes the header twice. Drop the second one.

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

 drivers/net/pcnet.c | 1 -
 1 file changed, 1 deletion(-)

diff --git a/drivers/net/pcnet.c b/drivers/net/pcnet.c
index 559560860b..ad5ac6618f 100644
--- a/drivers/net/pcnet.c
+++ b/drivers/net/pcnet.c
@@ -10,7 +10,6 @@
 #include <cpu_func.h>
 #include <dm.h>
 #include <log.h>
-#include <dm.h>
 #include <malloc.h>
 #include <memalign.h>
 #include <net.h>
-- 
2.28.0.rc0.105.gf9edc3c819-goog

^ permalink raw reply related	[flat|nested] 68+ messages in thread

* [PATCH 29/31] dm: core: Guard against including dm.h in header files
  2020-07-19 16:15 [PATCH 00/31] dm: Avoid including dm.h in header files Simon Glass
                   ` (27 preceding siblings ...)
  2020-07-19 16:15 ` [PATCH 28/31] net: Drop duplicate include of dm.h in pcnet.c Simon Glass
@ 2020-07-19 16:15 ` Simon Glass
  2020-08-04 15:06   ` Tom Rini
  2020-07-19 16:16 ` [PATCH 30/31] patman: Fix up the test comments Simon Glass
  2020-07-19 16:16 ` [PATCH 31/31] checkpatch: Don't allow common.h and dm.h in headers Simon Glass
  30 siblings, 1 reply; 68+ messages in thread
From: Simon Glass @ 2020-07-19 16:15 UTC (permalink / raw)
  To: u-boot

Header files generally should not include header files just for a struct,
since forward declarations work just as well and reduce overhead.

Add a warning for dm.h being included, since this has crept into U-Boot.

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

 include/dm.h | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/include/dm.h b/include/dm.h
index 2e1afda440..a1b84169e6 100644
--- a/include/dm.h
+++ b/include/dm.h
@@ -3,6 +3,10 @@
  * Copyright (c) 2013 Google, Inc
  */
 
+#ifdef _DM_H_
+#warning "Suspect dm.h is included from a header file - please fix"
+#endif
+
 #ifndef _DM_H_
 #define _DM_H_
 
-- 
2.28.0.rc0.105.gf9edc3c819-goog

^ permalink raw reply related	[flat|nested] 68+ messages in thread

* [PATCH 30/31] patman: Fix up the test comments
  2020-07-19 16:15 [PATCH 00/31] dm: Avoid including dm.h in header files Simon Glass
                   ` (28 preceding siblings ...)
  2020-07-19 16:15 ` [PATCH 29/31] dm: core: Guard against including dm.h in header files Simon Glass
@ 2020-07-19 16:16 ` Simon Glass
  2020-08-04 15:06   ` Tom Rini
  2020-07-19 16:16 ` [PATCH 31/31] checkpatch: Don't allow common.h and dm.h in headers Simon Glass
  30 siblings, 1 reply; 68+ messages in thread
From: Simon Glass @ 2020-07-19 16:16 UTC (permalink / raw)
  To: u-boot

Many of the tests have the same comment and two have the same name. Fix
this.

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

 tools/patman/test_checkpatch.py | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/tools/patman/test_checkpatch.py b/tools/patman/test_checkpatch.py
index c9580adb54..9d233f99ae 100644
--- a/tools/patman/test_checkpatch.py
+++ b/tools/patman/test_checkpatch.py
@@ -373,19 +373,19 @@ index 0000000..2234c87
         self.checkSingleMessage(pm, 'NEW_UCLASS')
 
     def testLivetree(self):
-        """Test for Use the livetree API"""
+        """Test for using the livetree API"""
         pm = PatchMaker()
         pm.add_line('common/main.c', 'fdtdec_do_something()')
         self.checkSingleMessage(pm, 'LIVETREE')
 
     def testNewCommand(self):
-        """Test for Use the livetree API"""
+        """Test for adding a new command"""
         pm = PatchMaker()
         pm.add_line('common/main.c', 'do_wibble(struct cmd_tbl *cmd_tbl)')
         self.checkSingleMessage(pm, 'CMD_TEST')
 
-    def testNewCommand(self):
-        """Test for Use the livetree API"""
+    def testPreferIf(self):
+        """Test for using #ifdef"""
         pm = PatchMaker()
         pm.add_line('common/main.c', '#ifdef CONFIG_YELLOW')
         pm.add_line('common/init.h', '#ifdef CONFIG_YELLOW')
@@ -393,7 +393,7 @@ index 0000000..2234c87
         self.checkSingleMessage(pm, "PREFER_IF")
 
     def testCommandUseDefconfig(self):
-        """Test for Use the livetree API"""
+        """Test for enabling/disabling commands using preprocesor"""
         pm = PatchMaker()
         pm.add_line('common/main.c', '#undef CONFIG_CMD_WHICH')
         self.checkSingleMessage(pm, 'DEFINE_CONFIG_CMD', 'error')
-- 
2.28.0.rc0.105.gf9edc3c819-goog

^ permalink raw reply related	[flat|nested] 68+ messages in thread

* [PATCH 31/31] checkpatch: Don't allow common.h and dm.h in headers
  2020-07-19 16:15 [PATCH 00/31] dm: Avoid including dm.h in header files Simon Glass
                   ` (29 preceding siblings ...)
  2020-07-19 16:16 ` [PATCH 30/31] patman: Fix up the test comments Simon Glass
@ 2020-07-19 16:16 ` Simon Glass
  2020-08-04 15:06   ` Tom Rini
  30 siblings, 1 reply; 68+ messages in thread
From: Simon Glass @ 2020-07-19 16:16 UTC (permalink / raw)
  To: u-boot

These headers should not be included in other header files. Add a
checkpatch rule and test for this.

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

 scripts/checkpatch.pl           | 10 ++++++++--
 tools/patman/test_checkpatch.py |  7 +++++++
 2 files changed, 15 insertions(+), 2 deletions(-)

diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl
index 238f12cb46..3932362dba 100755
--- a/scripts/checkpatch.pl
+++ b/scripts/checkpatch.pl
@@ -2322,7 +2322,7 @@ sub get_raw_comment {
 
 # Checks specific to U-Boot
 sub u_boot_line {
-	my ($realfile, $line,  $herecurr) = @_;
+	my ($realfile, $line, $rawline, $herecurr) = @_;
 
 	# ask for a test if a new uclass ID is added
 	if ($realfile =~ /uclass-id.h/ && $line =~ /^\+/) {
@@ -2353,6 +2353,12 @@ sub u_boot_line {
 		ERROR("DEFINE_CONFIG_CMD",
 		      "All commands are managed by Kconfig\n" . $herecurr);
 	}
+
+	# Don't put common.h and dm.h in header files
+	if ($realfile =~ /\.h$/ && $rawline =~ /^\+#include\s*<(common|dm)\.h>*/) {
+		ERROR("BARRED_INCLUDE_IN_HDR",
+		      "Avoid including common.h and dm.h in header files\n" . $herecurr);
+	}
 }
 
 sub process {
@@ -3296,7 +3302,7 @@ sub process {
 		}
 
 		if ($u_boot) {
-			u_boot_line($realfile, $line,  $herecurr);
+			u_boot_line($realfile, $line, $rawline, $herecurr);
 		}
 
 # check we are in a valid source file C or perl if not then ignore this hunk
diff --git a/tools/patman/test_checkpatch.py b/tools/patman/test_checkpatch.py
index 9d233f99ae..792196e689 100644
--- a/tools/patman/test_checkpatch.py
+++ b/tools/patman/test_checkpatch.py
@@ -398,6 +398,13 @@ index 0000000..2234c87
         pm.add_line('common/main.c', '#undef CONFIG_CMD_WHICH')
         self.checkSingleMessage(pm, 'DEFINE_CONFIG_CMD', 'error')
 
+    def testBarredIncludeInHdr(self):
+        """Test for using a barred include in a header file"""
+        pm = PatchMaker()
+        #pm.add_line('include/myfile.h', '#include <common.h>')
+        pm.add_line('include/myfile.h', '#include <dm.h>')
+        self.checkSingleMessage(pm, 'BARRED_INCLUDE_IN_HDR', 'error')
+
 
 if __name__ == "__main__":
     unittest.main()
-- 
2.28.0.rc0.105.gf9edc3c819-goog

^ permalink raw reply related	[flat|nested] 68+ messages in thread

* [PATCH 26/31] clk: Drop dm.h header file in clk-provider.h
  2020-07-19 16:15 ` [PATCH 26/31] clk: Drop dm.h header file in clk-provider.h Simon Glass
@ 2020-07-19 16:54   ` Sean Anderson
  2020-08-04 15:06   ` Tom Rini
  1 sibling, 0 replies; 68+ messages in thread
From: Sean Anderson @ 2020-07-19 16:54 UTC (permalink / raw)
  To: u-boot

On 7/19/20 12:15 PM, Simon Glass wrote:
> This header file should not be included in other header files. Remove it
> and use a forward declaration and un-inlining of dev_get_clk_ptr()
> instead.
> 
> Fix up the kendryte header files to avoid build errors.
> 
> Signed-off-by: Simon Glass <sjg@chromium.org>
> ---
> 
>  drivers/clk/clk-uclass.c      |  5 +++++
>  drivers/clk/kendryte/bypass.c |  7 +++++--
>  drivers/clk/kendryte/pll.c    | 10 ++++++----
>  include/kendryte/bypass.h     |  2 +-
>  include/linux/clk-provider.h  |  8 +++-----
>  5 files changed, 20 insertions(+), 12 deletions(-)
> 
> diff --git a/drivers/clk/clk-uclass.c b/drivers/clk/clk-uclass.c
> index 15656f5973..934cd5787a 100644
> --- a/drivers/clk/clk-uclass.c
> +++ b/drivers/clk/clk-uclass.c
> @@ -25,6 +25,11 @@ static inline const struct clk_ops *clk_dev_ops(struct udevice *dev)
>  	return (const struct clk_ops *)dev->driver->ops;
>  }
>  
> +struct clk *dev_get_clk_ptr(struct udevice *dev)
> +{
> +	return (struct clk *)dev_get_uclass_priv(dev);
> +}
> +
>  #if CONFIG_IS_ENABLED(OF_CONTROL)
>  # if CONFIG_IS_ENABLED(OF_PLATDATA)
>  int clk_get_by_driver_info(struct udevice *dev, struct phandle_1_arg *cells,
> diff --git a/drivers/clk/kendryte/bypass.c b/drivers/clk/kendryte/bypass.c
> index d1fd28175b..5f1986f2cb 100644
> --- a/drivers/clk/kendryte/bypass.c
> +++ b/drivers/clk/kendryte/bypass.c
> @@ -4,12 +4,15 @@
>   */
>  
>  #define LOG_CATEGORY UCLASS_CLK
> -#include <kendryte/bypass.h>
>  
> +#include <common.h>
> +#include <clk.h>
>  #include <clk-uclass.h>
> +#include <dm.h>
> +#include <log.h>
> +#include <kendryte/bypass.h>
>  #include <linux/clk-provider.h>
>  #include <linux/err.h>
> -#include <log.h>
>  
>  #define CLK_K210_BYPASS "k210_clk_bypass"
>  
> diff --git a/drivers/clk/kendryte/pll.c b/drivers/clk/kendryte/pll.c
> index 19e358856a..ab6d75d585 100644
> --- a/drivers/clk/kendryte/pll.c
> +++ b/drivers/clk/kendryte/pll.c
> @@ -3,18 +3,20 @@
>   * Copyright (C) 2019-20 Sean Anderson <seanga2@gmail.com>
>   */
>  #define LOG_CATEGORY UCLASS_CLK
> -#include <kendryte/pll.h>
>  
> -#include <asm/io.h>
> +#include <common.h>
> +#include <dm.h>
>  /* For DIV_ROUND_DOWN_ULL, defined in linux/kernel.h */
>  #include <div64.h>
> +#include <log.h>
> +#include <serial.h>
> +#include <asm/io.h>
>  #include <dt-bindings/clock/k210-sysctl.h>
> +#include <kendryte/pll.h>
>  #include <linux/bitfield.h>
>  #include <linux/clk-provider.h>
>  #include <linux/delay.h>
>  #include <linux/err.h>
> -#include <log.h>
> -#include <serial.h>
>  
>  #define CLK_K210_PLL "k210_clk_pll"
>  
> diff --git a/include/kendryte/bypass.h b/include/kendryte/bypass.h
> index a081cbd12f..ab85bbcbfc 100644
> --- a/include/kendryte/bypass.h
> +++ b/include/kendryte/bypass.h
> @@ -5,7 +5,7 @@
>  #ifndef K210_BYPASS_H
>  #define K210_BYPASS_H
>  
> -#include <clk.h>
> +struct clk;
>  
>  struct k210_bypass {
>  	struct clk clk;
> diff --git a/include/linux/clk-provider.h b/include/linux/clk-provider.h
> index 8a20743ad8..79dce8f0ad 100644
> --- a/include/linux/clk-provider.h
> +++ b/include/linux/clk-provider.h
> @@ -9,12 +9,13 @@
>  #ifndef __LINUX_CLK_PROVIDER_H
>  #define __LINUX_CLK_PROVIDER_H
>  
> -#include <dm.h>
>  #include <linux/bitops.h>
>  #include <linux/err.h>
>  #include <clk-uclass.h>
>  #include <linux/err.h>
>  
> +struct udevice;
> +
>  static inline void clk_dm(ulong id, struct clk *clk)
>  {
>  	if (!IS_ERR(clk))
> @@ -188,8 +189,5 @@ struct clk *clk_register_mux(struct device *dev, const char *name,
>  const char *clk_hw_get_name(const struct clk *hw);
>  ulong clk_generic_get_rate(struct clk *clk);
>  
> -static inline struct clk *dev_get_clk_ptr(struct udevice *dev)
> -{
> -	return (struct clk *)dev_get_uclass_priv(dev);
> -}
> +struct clk *dev_get_clk_ptr(struct udevice *dev);
>  #endif /* __LINUX_CLK_PROVIDER_H */
> 

Reviewed-by: Sean Anderson <seanga2@gmail.com>

^ permalink raw reply	[flat|nested] 68+ messages in thread

* [PATCH 02/31] mtd: spi-nor: Tidy up error handling / debug code
  2020-07-19 16:15 ` [PATCH 02/31] mtd: spi-nor: Tidy up error handling / debug code Simon Glass
@ 2020-07-20  6:12   ` Vignesh Raghavendra
  2020-07-26 14:54     ` Simon Glass
  2020-08-04 15:03   ` Tom Rini
  1 sibling, 1 reply; 68+ messages in thread
From: Vignesh Raghavendra @ 2020-07-20  6:12 UTC (permalink / raw)
  To: u-boot

Hi Simon,

On 19/07/20 9:45 pm, Simon Glass wrote:
> The -ENODEV error value in spi_nor_read_id() is incorrect since there
> clearly is a device - it just cannot be supported. 

Description 's not entirely accurate... If there is no flash on the SPI
bus, then read ID would return all 0s or 0xFFs depending on the pullups
on the board which would fail to match any flash in the spi-nor-ids table.

So its not just the case of device IDs not recognized or supported by
U-Boot, it maybe that flash is absent altogether.

Regards
Vignesh

> Use -ENOMEDIUM instead
> which has the virtue of being less common.
> 
> Fix the return value in spi_nor_scan().
> 
> Also there are a few printf() statements which should be debug() since
> they bloat the code with unused strings at present. Fix those while here.
> 
> Signed-off-by: Simon Glass <sjg@chromium.org>
> ---
> 
>  drivers/mtd/spi/sf_probe.c     | 2 +-
>  drivers/mtd/spi/spi-nor-core.c | 2 +-
>  drivers/mtd/spi/spi-nor-tiny.c | 4 ++--
>  3 files changed, 4 insertions(+), 4 deletions(-)
> 
> diff --git a/drivers/mtd/spi/sf_probe.c b/drivers/mtd/spi/sf_probe.c
> index 475f6c31db..b959e3453a 100644
> --- a/drivers/mtd/spi/sf_probe.c
> +++ b/drivers/mtd/spi/sf_probe.c
> @@ -119,7 +119,7 @@ static int spi_flash_std_erase(struct udevice *dev, u32 offset, size_t len)
>  	struct erase_info instr;
>  
>  	if (offset % mtd->erasesize || len % mtd->erasesize) {
> -		printf("SF: Erase offset/length not multiple of erase size\n");
> +		debug("SF: Erase offset/length not multiple of erase size\n");
>  		return -EINVAL;
>  	}
>  
> diff --git a/drivers/mtd/spi/spi-nor-core.c b/drivers/mtd/spi/spi-nor-core.c
> index fdcd830ce4..0113e70037 100644
> --- a/drivers/mtd/spi/spi-nor-core.c
> +++ b/drivers/mtd/spi/spi-nor-core.c
> @@ -2470,7 +2470,7 @@ static int spi_nor_init(struct spi_nor *nor)
>  		 * designer) that this is bad.
>  		 */
>  		if (nor->flags & SNOR_F_BROKEN_RESET)
> -			printf("enabling reset hack; may not recover from unexpected reboots\n");
> +			debug("enabling reset hack; may not recover from unexpected reboots\n");
>  		set_4byte(nor, nor->info, 1);
>  	}
>  
> diff --git a/drivers/mtd/spi/spi-nor-tiny.c b/drivers/mtd/spi/spi-nor-tiny.c
> index 9f676c649d..fa26ea33c8 100644
> --- a/drivers/mtd/spi/spi-nor-tiny.c
> +++ b/drivers/mtd/spi/spi-nor-tiny.c
> @@ -377,7 +377,7 @@ static const struct flash_info *spi_nor_read_id(struct spi_nor *nor)
>  	}
>  	dev_dbg(nor->dev, "unrecognized JEDEC id bytes: %02x, %02x, %02x\n",
>  		id[0], id[1], id[2]);
> -	return ERR_PTR(-ENODEV);
> +	return ERR_PTR(-EMEDIUMTYPE);
>  }
>  
>  static int spi_nor_read(struct mtd_info *mtd, loff_t from, size_t len,
> @@ -733,7 +733,7 @@ int spi_nor_scan(struct spi_nor *nor)
>  
>  	info = spi_nor_read_id(nor);
>  	if (IS_ERR_OR_NULL(info))
> -		return -ENOENT;
> +		return PTR_ERR(info);
>  	/* Parse the Serial Flash Discoverable Parameters table. */
>  	ret = spi_nor_init_params(nor, info, &params);
>  	if (ret)
> 

^ permalink raw reply	[flat|nested] 68+ messages in thread

* [PATCH 14/31] power: Tidy up inclusion of regulator_common.h
  2020-07-19 16:15 ` [PATCH 14/31] power: Tidy up inclusion of regulator_common.h Simon Glass
@ 2020-07-20 23:14   ` Jaehoon Chung
  2020-08-04 15:04   ` Tom Rini
  1 sibling, 0 replies; 68+ messages in thread
From: Jaehoon Chung @ 2020-07-20 23:14 UTC (permalink / raw)
  To: u-boot

On 7/20/20 1:15 AM, Simon Glass wrote:
> This file should not include common.h and dm.h so remove them. Also move
> the inclusion of this file to after the normal includes.
> 
> Signed-off-by: Simon Glass <sjg@chromium.org>

Reviewed-by: Jaehoon Chung <jh80.chung@samsung.com>

Best Regards,
Jaehoon Chung

> ---
> 
>  drivers/power/regulator/fixed.c            | 3 ++-
>  drivers/power/regulator/gpio-regulator.c   | 3 ++-
>  drivers/power/regulator/regulator_common.c | 4 +++-
>  drivers/power/regulator/regulator_common.h | 2 --
>  4 files changed, 7 insertions(+), 5 deletions(-)
> 
> diff --git a/drivers/power/regulator/fixed.c b/drivers/power/regulator/fixed.c
> index b5f7aec353..2fa6c7e6b2 100644
> --- a/drivers/power/regulator/fixed.c
> +++ b/drivers/power/regulator/fixed.c
> @@ -5,7 +5,6 @@
>   *  Przemyslaw Marczak <p.marczak@samsung.com>
>   */
>  
> -#include "regulator_common.h"
>  #include <common.h>
>  #include <errno.h>
>  #include <dm.h>
> @@ -13,6 +12,8 @@
>  #include <power/pmic.h>
>  #include <power/regulator.h>
>  
> +#include "regulator_common.h"
> +
>  static int fixed_regulator_ofdata_to_platdata(struct udevice *dev)
>  {
>  	struct dm_regulator_uclass_platdata *uc_pdata;
> diff --git a/drivers/power/regulator/gpio-regulator.c b/drivers/power/regulator/gpio-regulator.c
> index cf3fbae79d..947f812d09 100644
> --- a/drivers/power/regulator/gpio-regulator.c
> +++ b/drivers/power/regulator/gpio-regulator.c
> @@ -4,7 +4,6 @@
>   * Keerthy <j-keerthy@ti.com>
>   */
>  
> -#include "regulator_common.h"
>  #include <common.h>
>  #include <fdtdec.h>
>  #include <errno.h>
> @@ -15,6 +14,8 @@
>  #include <power/pmic.h>
>  #include <power/regulator.h>
>  
> +#include "regulator_common.h"
> +
>  #define GPIO_REGULATOR_MAX_STATES	2
>  
>  DECLARE_GLOBAL_DATA_PTR;
> diff --git a/drivers/power/regulator/regulator_common.c b/drivers/power/regulator/regulator_common.c
> index 4cfcc31298..13906b9c6e 100644
> --- a/drivers/power/regulator/regulator_common.c
> +++ b/drivers/power/regulator/regulator_common.c
> @@ -4,12 +4,14 @@
>   * Sven Schwermer <sven.svenschwermer@disruptive-technologies.com>
>   */
>  
> -#include "regulator_common.h"
>  #include <common.h>
> +#include <dm.h>
>  #include <log.h>
>  #include <linux/delay.h>
>  #include <power/regulator.h>
>  
> +#include "regulator_common.h"
> +
>  int regulator_common_ofdata_to_platdata(struct udevice *dev,
>  	struct regulator_common_platdata *dev_pdata, const char *enable_gpio_name)
>  {
> diff --git a/drivers/power/regulator/regulator_common.h b/drivers/power/regulator/regulator_common.h
> index 18a525880a..bf80439c78 100644
> --- a/drivers/power/regulator/regulator_common.h
> +++ b/drivers/power/regulator/regulator_common.h
> @@ -7,9 +7,7 @@
>  #ifndef _REGULATOR_COMMON_H
>  #define _REGULATOR_COMMON_H
>  
> -#include <common.h>
>  #include <asm/gpio.h>
> -#include <dm.h>
>  
>  struct regulator_common_platdata {
>  	struct gpio_desc gpio; /* GPIO for regulator enable control */
> 

^ permalink raw reply	[flat|nested] 68+ messages in thread

* [PATCH 02/31] mtd: spi-nor: Tidy up error handling / debug code
  2020-07-20  6:12   ` Vignesh Raghavendra
@ 2020-07-26 14:54     ` Simon Glass
  2020-07-30  9:19       ` Vignesh Raghavendra
  0 siblings, 1 reply; 68+ messages in thread
From: Simon Glass @ 2020-07-26 14:54 UTC (permalink / raw)
  To: u-boot

Hi Vignesh,

On Mon, 20 Jul 2020 at 00:26, Vignesh Raghavendra <vigneshr@ti.com> wrote:
>
> Hi Simon,
>
> On 19/07/20 9:45 pm, Simon Glass wrote:
> > The -ENODEV error value in spi_nor_read_id() is incorrect since there
> > clearly is a device - it just cannot be supported.
>
> Description 's not entirely accurate... If there is no flash on the SPI
> bus, then read ID would return all 0s or 0xFFs depending on the pullups
> on the board which would fail to match any flash in the spi-nor-ids table.
>
> So its not just the case of device IDs not recognized or supported by
> U-Boot, it maybe that flash is absent altogether.

But struct udevice * exists, so there is a device. Whether it is
connected to something is a separate issue.

The problem is that -ENODEV means that the device should not be
created or should not exist.

What happens if an invalid ID is returned? Does it unbind the device?

Regards,
Simon


>
> Regards
> Vignesh
>
> > Use -ENOMEDIUM instead
> > which has the virtue of being less common.
> >
> > Fix the return value in spi_nor_scan().
> >
> > Also there are a few printf() statements which should be debug() since
> > they bloat the code with unused strings at present. Fix those while here.
> >
> > Signed-off-by: Simon Glass <sjg@chromium.org>
> > ---
> >
> >  drivers/mtd/spi/sf_probe.c     | 2 +-
> >  drivers/mtd/spi/spi-nor-core.c | 2 +-
> >  drivers/mtd/spi/spi-nor-tiny.c | 4 ++--
> >  3 files changed, 4 insertions(+), 4 deletions(-)
> >
> > diff --git a/drivers/mtd/spi/sf_probe.c b/drivers/mtd/spi/sf_probe.c
> > index 475f6c31db..b959e3453a 100644
> > --- a/drivers/mtd/spi/sf_probe.c
> > +++ b/drivers/mtd/spi/sf_probe.c
> > @@ -119,7 +119,7 @@ static int spi_flash_std_erase(struct udevice *dev, u32 offset, size_t len)
> >       struct erase_info instr;
> >
> >       if (offset % mtd->erasesize || len % mtd->erasesize) {
> > -             printf("SF: Erase offset/length not multiple of erase size\n");
> > +             debug("SF: Erase offset/length not multiple of erase size\n");
> >               return -EINVAL;
> >       }
> >
> > diff --git a/drivers/mtd/spi/spi-nor-core.c b/drivers/mtd/spi/spi-nor-core.c
> > index fdcd830ce4..0113e70037 100644
> > --- a/drivers/mtd/spi/spi-nor-core.c
> > +++ b/drivers/mtd/spi/spi-nor-core.c
> > @@ -2470,7 +2470,7 @@ static int spi_nor_init(struct spi_nor *nor)
> >                * designer) that this is bad.
> >                */
> >               if (nor->flags & SNOR_F_BROKEN_RESET)
> > -                     printf("enabling reset hack; may not recover from unexpected reboots\n");
> > +                     debug("enabling reset hack; may not recover from unexpected reboots\n");
> >               set_4byte(nor, nor->info, 1);
> >       }
> >
> > diff --git a/drivers/mtd/spi/spi-nor-tiny.c b/drivers/mtd/spi/spi-nor-tiny.c
> > index 9f676c649d..fa26ea33c8 100644
> > --- a/drivers/mtd/spi/spi-nor-tiny.c
> > +++ b/drivers/mtd/spi/spi-nor-tiny.c
> > @@ -377,7 +377,7 @@ static const struct flash_info *spi_nor_read_id(struct spi_nor *nor)
> >       }
> >       dev_dbg(nor->dev, "unrecognized JEDEC id bytes: %02x, %02x, %02x\n",
> >               id[0], id[1], id[2]);
> > -     return ERR_PTR(-ENODEV);
> > +     return ERR_PTR(-EMEDIUMTYPE);
> >  }
> >
> >  static int spi_nor_read(struct mtd_info *mtd, loff_t from, size_t len,
> > @@ -733,7 +733,7 @@ int spi_nor_scan(struct spi_nor *nor)
> >
> >       info = spi_nor_read_id(nor);
> >       if (IS_ERR_OR_NULL(info))
> > -             return -ENOENT;
> > +             return PTR_ERR(info);
> >       /* Parse the Serial Flash Discoverable Parameters table. */
> >       ret = spi_nor_init_params(nor, info, &params);
> >       if (ret)
> >

^ permalink raw reply	[flat|nested] 68+ messages in thread

* [PATCH 02/31] mtd: spi-nor: Tidy up error handling / debug code
  2020-07-26 14:54     ` Simon Glass
@ 2020-07-30  9:19       ` Vignesh Raghavendra
  0 siblings, 0 replies; 68+ messages in thread
From: Vignesh Raghavendra @ 2020-07-30  9:19 UTC (permalink / raw)
  To: u-boot

Hi,

On 26/07/20 8:24 pm, Simon Glass wrote:
> Hi Vignesh,
> 
> On Mon, 20 Jul 2020 at 00:26, Vignesh Raghavendra <vigneshr@ti.com> wrote:
>>
>> Hi Simon,
>>
>> On 19/07/20 9:45 pm, Simon Glass wrote:
>>> The -ENODEV error value in spi_nor_read_id() is incorrect since there
>>> clearly is a device - it just cannot be supported.
>>
>> Description 's not entirely accurate... If there is no flash on the SPI
>> bus, then read ID would return all 0s or 0xFFs depending on the pullups
>> on the board which would fail to match any flash in the spi-nor-ids table.
>>
>> So its not just the case of device IDs not recognized or supported by
>> U-Boot, it maybe that flash is absent altogether.
> 
> But struct udevice * exists, so there is a device. Whether it is
> connected to something is a separate issue.
> 
> The problem is that -ENODEV means that the device should not be
> created or should not exist.
> 
> What happens if an invalid ID is returned? Does it unbind the device?

There are two cases:

1. spi flash node is present in the DT but there is no device on the
board. In this case device is not unbound from DT node.

2. There is no flash device described as child of SPI bus but user 
tries sf probe (Or some U-boot code calls spi_flash_probe_bus_cs()). In 
this case a device is created on the fly and bound to sf driver and 
probe is attempted (as part of which attempt is make to read Device ID). 
If there is no flash found, then the device is unbound and removed (see 
drivers/mtd/spi/sf-uclass.c::spi_flash_probe_bus_cs and 
drivers/spi/spi-uclass.c::spi_get_bus_and_cs).

So at least in case 2 its U-boot which is creating device and try to 
look for it which would fail if not present. IMO, -ENODEV makes sense 
here since the intention is to dynamically find the device w/o an actual 
DT node present.


[...]

Regards
Vignesh

^ permalink raw reply	[flat|nested] 68+ messages in thread

* [PATCH 01/31] spi: Allow separate control of SPI_FLASH_TINY for SPL/TPL
  2020-07-19 16:15 ` [PATCH 01/31] spi: Allow separate control of SPI_FLASH_TINY for SPL/TPL Simon Glass
@ 2020-08-04 15:03   ` Tom Rini
  0 siblings, 0 replies; 68+ messages in thread
From: Tom Rini @ 2020-08-04 15:03 UTC (permalink / raw)
  To: u-boot

On Sun, Jul 19, 2020 at 10:15:31AM -0600, Simon Glass wrote:

> In some cases SPL needs to be able to erase but TPL just needs to read.
> Allow these to have separate settings for SPI_FLASH_TINY.
> 
> Signed-off-by: Simon Glass <sjg@chromium.org>

Applied to u-boot/master, thanks!

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 659 bytes
Desc: not available
URL: <https://lists.denx.de/pipermail/u-boot/attachments/20200804/e61e3d00/attachment.sig>

^ permalink raw reply	[flat|nested] 68+ messages in thread

* [PATCH 02/31] mtd: spi-nor: Tidy up error handling / debug code
  2020-07-19 16:15 ` [PATCH 02/31] mtd: spi-nor: Tidy up error handling / debug code Simon Glass
  2020-07-20  6:12   ` Vignesh Raghavendra
@ 2020-08-04 15:03   ` Tom Rini
  1 sibling, 0 replies; 68+ messages in thread
From: Tom Rini @ 2020-08-04 15:03 UTC (permalink / raw)
  To: u-boot

On Sun, Jul 19, 2020 at 10:15:32AM -0600, Simon Glass wrote:

> The -ENODEV error value in spi_nor_read_id() is incorrect since there
> clearly is a device - it just cannot be supported. Use -ENOMEDIUM instead
> which has the virtue of being less common.
> 
> Fix the return value in spi_nor_scan().
> 
> Also there are a few printf() statements which should be debug() since
> they bloat the code with unused strings at present. Fix those while here.
> 
> Signed-off-by: Simon Glass <sjg@chromium.org>

Applied to u-boot/master, thanks!

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 659 bytes
Desc: not available
URL: <https://lists.denx.de/pipermail/u-boot/attachments/20200804/b7a00c87/attachment.sig>

^ permalink raw reply	[flat|nested] 68+ messages in thread

* [PATCH 03/31] wdt: Drop dm.h header file
  2020-07-19 16:15 ` [PATCH 03/31] wdt: Drop dm.h header file Simon Glass
@ 2020-08-04 15:03   ` Tom Rini
  0 siblings, 0 replies; 68+ messages in thread
From: Tom Rini @ 2020-08-04 15:03 UTC (permalink / raw)
  To: u-boot

On Sun, Jul 19, 2020 at 10:15:33AM -0600, Simon Glass wrote:

> This header file should not be included in other header files. Remove it
> and use a forward declaration instead.
> 
> Also remove the other headers that are not needed, since the inline code
> was removed in a recent commit:
> 
>    b4d9452c4 ("watchdog: move initr_watchdog() to wdt-uclass.c")
> 
> Signed-off-by: Simon Glass <sjg@chromium.org>

Applied to u-boot/master, thanks!

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 659 bytes
Desc: not available
URL: <https://lists.denx.de/pipermail/u-boot/attachments/20200804/93deb0b4/attachment.sig>

^ permalink raw reply	[flat|nested] 68+ messages in thread

* [PATCH 04/31] mtd: spi-mem: Drop dm.h header file
  2020-07-19 16:15 ` [PATCH 04/31] mtd: spi-mem: " Simon Glass
@ 2020-08-04 15:03   ` Tom Rini
  0 siblings, 0 replies; 68+ messages in thread
From: Tom Rini @ 2020-08-04 15:03 UTC (permalink / raw)
  To: u-boot

On Sun, Jul 19, 2020 at 10:15:34AM -0600, Simon Glass wrote:

> This header file should not be included in other header files. Remove it
> and use a forward declaration instead.
> 
> Signed-off-by: Simon Glass <sjg@chromium.org>

Applied to u-boot/master, thanks!

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 659 bytes
Desc: not available
URL: <https://lists.denx.de/pipermail/u-boot/attachments/20200804/235f487e/attachment.sig>

^ permalink raw reply	[flat|nested] 68+ messages in thread

* [PATCH 05/31] mtd: spi: Drop SPI_XFER_MMAP*
  2020-07-19 16:15 ` [PATCH 05/31] mtd: spi: Drop SPI_XFER_MMAP* Simon Glass
@ 2020-08-04 15:03   ` Tom Rini
  0 siblings, 0 replies; 68+ messages in thread
From: Tom Rini @ 2020-08-04 15:03 UTC (permalink / raw)
  To: u-boot

On Sun, Jul 19, 2020 at 10:15:35AM -0600, Simon Glass wrote:

> These two defines are no-longer supported. Drop them.
> 
> Signed-off-by: Simon Glass <sjg@chromium.org>

Applied to u-boot/master, thanks!

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 659 bytes
Desc: not available
URL: <https://lists.denx.de/pipermail/u-boot/attachments/20200804/be6b3ef0/attachment.sig>

^ permalink raw reply	[flat|nested] 68+ messages in thread

* [PATCH 06/31] dm: core: Drop dm.h header file from dm-demo.h
  2020-07-19 16:15 ` [PATCH 06/31] dm: core: Drop dm.h header file from dm-demo.h Simon Glass
@ 2020-08-04 15:03   ` Tom Rini
  0 siblings, 0 replies; 68+ messages in thread
From: Tom Rini @ 2020-08-04 15:03 UTC (permalink / raw)
  To: u-boot

On Sun, Jul 19, 2020 at 10:15:36AM -0600, Simon Glass wrote:

> This header file should not be included in other header files. Remove it
> and add it to the cmd file instead.
> 
> Signed-off-by: Simon Glass <sjg@chromium.org>

Applied to u-boot/master, thanks!

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 659 bytes
Desc: not available
URL: <https://lists.denx.de/pipermail/u-boot/attachments/20200804/3f9f50b9/attachment.sig>

^ permalink raw reply	[flat|nested] 68+ messages in thread

* [PATCH 07/31] dm: core: Drop header files from dm/test.h
  2020-07-19 16:15 ` [PATCH 07/31] dm: core: Drop header files from dm/test.h Simon Glass
@ 2020-08-04 15:04   ` Tom Rini
  0 siblings, 0 replies; 68+ messages in thread
From: Tom Rini @ 2020-08-04 15:04 UTC (permalink / raw)
  To: u-boot

On Sun, Jul 19, 2020 at 10:15:37AM -0600, Simon Glass wrote:

> These header file should not be included in other header files. Remove
> them and add to each individual file. Add test/test.h to test/ui.h since
> that is a reasonable place.
> 
> Signed-off-by: Simon Glass <sjg@chromium.org>

Applied to u-boot/master, thanks!

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 659 bytes
Desc: not available
URL: <https://lists.denx.de/pipermail/u-boot/attachments/20200804/d80d5b30/attachment.sig>

^ permalink raw reply	[flat|nested] 68+ messages in thread

* [PATCH 08/31] fs: fs-loader: Drop dm.h header file
  2020-07-19 16:15 ` [PATCH 08/31] fs: fs-loader: Drop dm.h header file Simon Glass
@ 2020-08-04 15:04   ` Tom Rini
  0 siblings, 0 replies; 68+ messages in thread
From: Tom Rini @ 2020-08-04 15:04 UTC (permalink / raw)
  To: u-boot

On Sun, Jul 19, 2020 at 10:15:38AM -0600, Simon Glass wrote:

> This header file should not be included in other header files. Remove it
> and use a forward declaration instead.
> 
> Signed-off-by: Simon Glass <sjg@chromium.org>

Applied to u-boot/master, thanks!

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 659 bytes
Desc: not available
URL: <https://lists.denx.de/pipermail/u-boot/attachments/20200804/d81e78e4/attachment.sig>

^ permalink raw reply	[flat|nested] 68+ messages in thread

* [PATCH 09/31] net: Drop dm.h header file from phy.h
  2020-07-19 16:15 ` [PATCH 09/31] net: Drop dm.h header file from phy.h Simon Glass
@ 2020-08-04 15:04   ` Tom Rini
  0 siblings, 0 replies; 68+ messages in thread
From: Tom Rini @ 2020-08-04 15:04 UTC (permalink / raw)
  To: u-boot

On Sun, Jul 19, 2020 at 10:15:39AM -0600, Simon Glass wrote:

> This header file should not be included in other header files. Remove it
> and use other headers and C inclusions instead.
> 
> Signed-off-by: Simon Glass <sjg@chromium.org>

Applied to u-boot/master, thanks!

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 659 bytes
Desc: not available
URL: <https://lists.denx.de/pipermail/u-boot/attachments/20200804/fcd6e6b5/attachment.sig>

^ permalink raw reply	[flat|nested] 68+ messages in thread

* [PATCH 10/31] sf: Drop dm.h header file from spi_flash.h
  2020-07-19 16:15 ` [PATCH 10/31] sf: Drop dm.h header file from spi_flash.h Simon Glass
@ 2020-08-04 15:04   ` Tom Rini
  0 siblings, 0 replies; 68+ messages in thread
From: Tom Rini @ 2020-08-04 15:04 UTC (permalink / raw)
  To: u-boot

On Sun, Jul 19, 2020 at 10:15:40AM -0600, Simon Glass wrote:

> This header file should not be included in other header files. Remove it
> and use a forward declaration instead.
> 
> Signed-off-by: Simon Glass <sjg@chromium.org>

Applied to u-boot/master, thanks!

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 659 bytes
Desc: not available
URL: <https://lists.denx.de/pipermail/u-boot/attachments/20200804/d32e5925/attachment.sig>

^ permalink raw reply	[flat|nested] 68+ messages in thread

* [PATCH 11/31] thermal: Drop dm.h header file
  2020-07-19 16:15 ` [PATCH 11/31] thermal: Drop dm.h header file Simon Glass
@ 2020-08-04 15:04   ` Tom Rini
  0 siblings, 0 replies; 68+ messages in thread
From: Tom Rini @ 2020-08-04 15:04 UTC (permalink / raw)
  To: u-boot

On Sun, Jul 19, 2020 at 10:15:41AM -0600, Simon Glass wrote:

> This header file should not be included in other header files. Remove it
> and use a forward declaration instead.
> 
> Signed-off-by: Simon Glass <sjg@chromium.org>

Applied to u-boot/master, thanks!

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 659 bytes
Desc: not available
URL: <https://lists.denx.de/pipermail/u-boot/attachments/20200804/9df6eef9/attachment.sig>

^ permalink raw reply	[flat|nested] 68+ messages in thread

* [PATCH 12/31] w1: Drop dm.h header file
  2020-07-19 16:15 ` [PATCH 12/31] w1: " Simon Glass
@ 2020-08-04 15:04   ` Tom Rini
  0 siblings, 0 replies; 68+ messages in thread
From: Tom Rini @ 2020-08-04 15:04 UTC (permalink / raw)
  To: u-boot

On Sun, Jul 19, 2020 at 10:15:42AM -0600, Simon Glass wrote:

> This header file should not be included in other header files. Remove it
> and use a forward declaration instead.
> 
> Signed-off-by: Simon Glass <sjg@chromium.org>

Applied to u-boot/master, thanks!

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 659 bytes
Desc: not available
URL: <https://lists.denx.de/pipermail/u-boot/attachments/20200804/6da0a079/attachment.sig>

^ permalink raw reply	[flat|nested] 68+ messages in thread

* [PATCH 13/31] efi: Tidy up header includes
  2020-07-19 16:15 ` [PATCH 13/31] efi: Tidy up header includes Simon Glass
@ 2020-08-04 15:04   ` Tom Rini
  0 siblings, 0 replies; 68+ messages in thread
From: Tom Rini @ 2020-08-04 15:04 UTC (permalink / raw)
  To: u-boot

On Sun, Jul 19, 2020 at 10:15:43AM -0600, Simon Glass wrote:

> Two files relies on efi_driver.h to include common.h and dm.h which is
> incorrect. The former should always be included in a non-host C file and
> the latter should be included if driver model is used.
> 
> Signed-off-by: Simon Glass <sjg@chromium.org>

Applied to u-boot/master, thanks!

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 659 bytes
Desc: not available
URL: <https://lists.denx.de/pipermail/u-boot/attachments/20200804/675e1791/attachment.sig>

^ permalink raw reply	[flat|nested] 68+ messages in thread

* [PATCH 14/31] power: Tidy up inclusion of regulator_common.h
  2020-07-19 16:15 ` [PATCH 14/31] power: Tidy up inclusion of regulator_common.h Simon Glass
  2020-07-20 23:14   ` Jaehoon Chung
@ 2020-08-04 15:04   ` Tom Rini
  1 sibling, 0 replies; 68+ messages in thread
From: Tom Rini @ 2020-08-04 15:04 UTC (permalink / raw)
  To: u-boot

On Sun, Jul 19, 2020 at 10:15:44AM -0600, Simon Glass wrote:

> This file should not include common.h and dm.h so remove them. Also move
> the inclusion of this file to after the normal includes.
> 
> Signed-off-by: Simon Glass <sjg@chromium.org>
> Reviewed-by: Jaehoon Chung <jh80.chung@samsung.com>

Applied to u-boot/master, thanks!

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 659 bytes
Desc: not available
URL: <https://lists.denx.de/pipermail/u-boot/attachments/20200804/95b79eda/attachment.sig>

^ permalink raw reply	[flat|nested] 68+ messages in thread

* [PATCH 15/31] mmc: Drop duplicate dm.h inclusion
  2020-07-19 16:15 ` [PATCH 15/31] mmc: Drop duplicate dm.h inclusion Simon Glass
@ 2020-08-04 15:04   ` Tom Rini
  0 siblings, 0 replies; 68+ messages in thread
From: Tom Rini @ 2020-08-04 15:04 UTC (permalink / raw)
  To: u-boot

On Sun, Jul 19, 2020 at 10:15:45AM -0600, Simon Glass wrote:

> We only need to include this header once. Drop the duplicate.
> 
> Signed-off-by: Simon Glass <sjg@chromium.org>

Applied to u-boot/master, thanks!

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 659 bytes
Desc: not available
URL: <https://lists.denx.de/pipermail/u-boot/attachments/20200804/3222fb67/attachment.sig>

^ permalink raw reply	[flat|nested] 68+ messages in thread

* [PATCH 16/31] spi: Drop duplicate dm.h inclusion
  2020-07-19 16:15 ` [PATCH 16/31] spi: " Simon Glass
@ 2020-08-04 15:04   ` Tom Rini
  0 siblings, 0 replies; 68+ messages in thread
From: Tom Rini @ 2020-08-04 15:04 UTC (permalink / raw)
  To: u-boot

On Sun, Jul 19, 2020 at 10:15:46AM -0600, Simon Glass wrote:

> We only need to include this header once. Drop the duplicate.
> 
> Signed-off-by: Simon Glass <sjg@chromium.org>

Applied to u-boot/master, thanks!

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 659 bytes
Desc: not available
URL: <https://lists.denx.de/pipermail/u-boot/attachments/20200804/fb0d6a27/attachment.sig>

^ permalink raw reply	[flat|nested] 68+ messages in thread

* [PATCH 17/31] ti: am654: Drop duplicate dm.h inclusion
  2020-07-19 16:15 ` [PATCH 17/31] ti: am654: " Simon Glass
@ 2020-08-04 15:05   ` Tom Rini
  0 siblings, 0 replies; 68+ messages in thread
From: Tom Rini @ 2020-08-04 15:05 UTC (permalink / raw)
  To: u-boot

On Sun, Jul 19, 2020 at 10:15:47AM -0600, Simon Glass wrote:

> We only need to include this header once. Drop the duplicate.
> 
> Signed-off-by: Simon Glass <sjg@chromium.org>

Applied to u-boot/master, thanks!

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 659 bytes
Desc: not available
URL: <https://lists.denx.de/pipermail/u-boot/attachments/20200804/6080ffb4/attachment.sig>

^ permalink raw reply	[flat|nested] 68+ messages in thread

* [PATCH 18/31] liebherr: Drop duplicate dm.h inclusion
  2020-07-19 16:15 ` [PATCH 18/31] liebherr: " Simon Glass
@ 2020-08-04 15:05   ` Tom Rini
  0 siblings, 0 replies; 68+ messages in thread
From: Tom Rini @ 2020-08-04 15:05 UTC (permalink / raw)
  To: u-boot

On Sun, Jul 19, 2020 at 10:15:48AM -0600, Simon Glass wrote:

> We only need to include this header once. Drop the duplicate.
> 
> Signed-off-by: Simon Glass <sjg@chromium.org>

Applied to u-boot/master, thanks!

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 659 bytes
Desc: not available
URL: <https://lists.denx.de/pipermail/u-boot/attachments/20200804/7bc1d85e/attachment.sig>

^ permalink raw reply	[flat|nested] 68+ messages in thread

* [PATCH 19/31] pci: Drop dm.h inclusion from header file
  2020-07-19 16:15 ` [PATCH 19/31] pci: Drop dm.h inclusion from header file Simon Glass
@ 2020-08-04 15:05   ` Tom Rini
  0 siblings, 0 replies; 68+ messages in thread
From: Tom Rini @ 2020-08-04 15:05 UTC (permalink / raw)
  To: u-boot

On Sun, Jul 19, 2020 at 10:15:49AM -0600, Simon Glass wrote:

> The layerscape header should not include dm.h so remove it.
> 
> Signed-off-by: Simon Glass <sjg@chromium.org>

Applied to u-boot/master, thanks!

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 659 bytes
Desc: not available
URL: <https://lists.denx.de/pipermail/u-boot/attachments/20200804/53055370/attachment.sig>

^ permalink raw reply	[flat|nested] 68+ messages in thread

* [PATCH 20/31] mediatek: Drop dm.h header file
  2020-07-19 16:15 ` [PATCH 20/31] mediatek: Drop dm.h " Simon Glass
@ 2020-08-04 15:05   ` Tom Rini
  0 siblings, 0 replies; 68+ messages in thread
From: Tom Rini @ 2020-08-04 15:05 UTC (permalink / raw)
  To: u-boot

On Sun, Jul 19, 2020 at 10:15:50AM -0600, Simon Glass wrote:

> This header file should not be included in other header files. Remove it
> and use a forward declaration instead.
> 
> Signed-off-by: Simon Glass <sjg@chromium.org>

Applied to u-boot/master, thanks!

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 659 bytes
Desc: not available
URL: <https://lists.denx.de/pipermail/u-boot/attachments/20200804/1bc6f800/attachment.sig>

^ permalink raw reply	[flat|nested] 68+ messages in thread

* [PATCH 21/31] mscc: Drop dm.h header file
  2020-07-19 16:15 ` [PATCH 21/31] mscc: " Simon Glass
@ 2020-08-04 15:05   ` Tom Rini
  0 siblings, 0 replies; 68+ messages in thread
From: Tom Rini @ 2020-08-04 15:05 UTC (permalink / raw)
  To: u-boot

On Sun, Jul 19, 2020 at 10:15:51AM -0600, Simon Glass wrote:

> This header file should not be included in other header files. Remove it
> from each one and use a forward declaration instead.
> 
> Signed-off-by: Simon Glass <sjg@chromium.org>

Applied to u-boot/master, thanks!

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 659 bytes
Desc: not available
URL: <https://lists.denx.de/pipermail/u-boot/attachments/20200804/a0761036/attachment.sig>

^ permalink raw reply	[flat|nested] 68+ messages in thread

* [PATCH 22/31] adc: Drop dm.h header file
  2020-07-19 16:15 ` [PATCH 22/31] adc: " Simon Glass
@ 2020-08-04 15:05   ` Tom Rini
  0 siblings, 0 replies; 68+ messages in thread
From: Tom Rini @ 2020-08-04 15:05 UTC (permalink / raw)
  To: u-boot

On Sun, Jul 19, 2020 at 10:15:52AM -0600, Simon Glass wrote:

> This header file should not be included in other header files. Remove it
> and use a forward declaration instead.
> 
> Drop the common.h inclusion also.
> 
> Signed-off-by: Simon Glass <sjg@chromium.org>

Applied to u-boot/master, thanks!

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 659 bytes
Desc: not available
URL: <https://lists.denx.de/pipermail/u-boot/attachments/20200804/16a00a0e/attachment-0001.sig>

^ permalink raw reply	[flat|nested] 68+ messages in thread

* [PATCH 23/31] nand: Drop dm.h header file
  2020-07-19 16:15 ` [PATCH 23/31] nand: " Simon Glass
@ 2020-08-04 15:05   ` Tom Rini
  0 siblings, 0 replies; 68+ messages in thread
From: Tom Rini @ 2020-08-04 15:05 UTC (permalink / raw)
  To: u-boot

On Sun, Jul 19, 2020 at 10:15:53AM -0600, Simon Glass wrote:

> This header file should not be included in other header files. Remove it
> and use a forward declaration instead.
> 
> Signed-off-by: Simon Glass <sjg@chromium.org>

Applied to u-boot/master, thanks!

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 659 bytes
Desc: not available
URL: <https://lists.denx.de/pipermail/u-boot/attachments/20200804/2714a7dd/attachment.sig>

^ permalink raw reply	[flat|nested] 68+ messages in thread

* [PATCH 24/31] ufs: Drop dm.h header file
  2020-07-19 16:15 ` [PATCH 24/31] ufs: " Simon Glass
@ 2020-08-04 15:05   ` Tom Rini
  0 siblings, 0 replies; 68+ messages in thread
From: Tom Rini @ 2020-08-04 15:05 UTC (permalink / raw)
  To: u-boot

On Sun, Jul 19, 2020 at 10:15:54AM -0600, Simon Glass wrote:

> This header file should not be included in other header files. Remove it
> and use a forward declaration instead.
> 
> Also drop asm/io.h
> 
> Signed-off-by: Simon Glass <sjg@chromium.org>

Applied to u-boot/master, thanks!

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 659 bytes
Desc: not available
URL: <https://lists.denx.de/pipermail/u-boot/attachments/20200804/b28a63ca/attachment.sig>

^ permalink raw reply	[flat|nested] 68+ messages in thread

* [PATCH 25/31] usb: Drop dm.h header file
  2020-07-19 16:15 ` [PATCH 25/31] usb: " Simon Glass
@ 2020-08-04 15:05   ` Tom Rini
  0 siblings, 0 replies; 68+ messages in thread
From: Tom Rini @ 2020-08-04 15:05 UTC (permalink / raw)
  To: u-boot

On Sun, Jul 19, 2020 at 10:15:55AM -0600, Simon Glass wrote:

> This header file should not be included in other header files. Remove it
> and use a forward declaration instead.
> 
> Also move the inline function out into a C file. We should not include C
> code in headers.
> 
> Signed-off-by: Simon Glass <sjg@chromium.org>

Applied to u-boot/master, thanks!

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 659 bytes
Desc: not available
URL: <https://lists.denx.de/pipermail/u-boot/attachments/20200804/975a5452/attachment.sig>

^ permalink raw reply	[flat|nested] 68+ messages in thread

* [PATCH 26/31] clk: Drop dm.h header file in clk-provider.h
  2020-07-19 16:15 ` [PATCH 26/31] clk: Drop dm.h header file in clk-provider.h Simon Glass
  2020-07-19 16:54   ` Sean Anderson
@ 2020-08-04 15:06   ` Tom Rini
  1 sibling, 0 replies; 68+ messages in thread
From: Tom Rini @ 2020-08-04 15:06 UTC (permalink / raw)
  To: u-boot

On Sun, Jul 19, 2020 at 10:15:56AM -0600, Simon Glass wrote:

> This header file should not be included in other header files. Remove it
> and use a forward declaration and un-inlining of dev_get_clk_ptr()
> instead.
> 
> Fix up the kendryte header files to avoid build errors.
> 
> Signed-off-by: Simon Glass <sjg@chromium.org>
> Reviewed-by: Sean Anderson <seanga2@gmail.com>

Applied to u-boot/master, thanks!

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 659 bytes
Desc: not available
URL: <https://lists.denx.de/pipermail/u-boot/attachments/20200804/20c701d8/attachment.sig>

^ permalink raw reply	[flat|nested] 68+ messages in thread

* [PATCH 27/31] net: Drop dm.h header file in eth_phy.h
  2020-07-19 16:15 ` [PATCH 27/31] net: Drop dm.h header file in eth_phy.h Simon Glass
@ 2020-08-04 15:06   ` Tom Rini
  0 siblings, 0 replies; 68+ messages in thread
From: Tom Rini @ 2020-08-04 15:06 UTC (permalink / raw)
  To: u-boot

On Sun, Jul 19, 2020 at 10:15:57AM -0600, Simon Glass wrote:

> This header file should not be included in other header files. Remove it
> and use a forward declaration instead.
> 
> Signed-off-by: Simon Glass <sjg@chromium.org>

Applied to u-boot/master, thanks!

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 659 bytes
Desc: not available
URL: <https://lists.denx.de/pipermail/u-boot/attachments/20200804/abb510a0/attachment.sig>

^ permalink raw reply	[flat|nested] 68+ messages in thread

* [PATCH 28/31] net: Drop duplicate include of dm.h in pcnet.c
  2020-07-19 16:15 ` [PATCH 28/31] net: Drop duplicate include of dm.h in pcnet.c Simon Glass
@ 2020-08-04 15:06   ` Tom Rini
  0 siblings, 0 replies; 68+ messages in thread
From: Tom Rini @ 2020-08-04 15:06 UTC (permalink / raw)
  To: u-boot

On Sun, Jul 19, 2020 at 10:15:58AM -0600, Simon Glass wrote:

> This file includes the header twice. Drop the second one.
> 
> Signed-off-by: Simon Glass <sjg@chromium.org>

Applied to u-boot/master, thanks!

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 659 bytes
Desc: not available
URL: <https://lists.denx.de/pipermail/u-boot/attachments/20200804/1b4542db/attachment.sig>

^ permalink raw reply	[flat|nested] 68+ messages in thread

* [PATCH 29/31] dm: core: Guard against including dm.h in header files
  2020-07-19 16:15 ` [PATCH 29/31] dm: core: Guard against including dm.h in header files Simon Glass
@ 2020-08-04 15:06   ` Tom Rini
  0 siblings, 0 replies; 68+ messages in thread
From: Tom Rini @ 2020-08-04 15:06 UTC (permalink / raw)
  To: u-boot

On Sun, Jul 19, 2020 at 10:15:59AM -0600, Simon Glass wrote:

> Header files generally should not include header files just for a struct,
> since forward declarations work just as well and reduce overhead.
> 
> Add a warning for dm.h being included, since this has crept into U-Boot.
> 
> Signed-off-by: Simon Glass <sjg@chromium.org>

Applied to u-boot/master, thanks!

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 659 bytes
Desc: not available
URL: <https://lists.denx.de/pipermail/u-boot/attachments/20200804/0b1efd2b/attachment.sig>

^ permalink raw reply	[flat|nested] 68+ messages in thread

* [PATCH 30/31] patman: Fix up the test comments
  2020-07-19 16:16 ` [PATCH 30/31] patman: Fix up the test comments Simon Glass
@ 2020-08-04 15:06   ` Tom Rini
  0 siblings, 0 replies; 68+ messages in thread
From: Tom Rini @ 2020-08-04 15:06 UTC (permalink / raw)
  To: u-boot

On Sun, Jul 19, 2020 at 10:16:00AM -0600, Simon Glass wrote:

> Many of the tests have the same comment and two have the same name. Fix
> this.
> 
> Signed-off-by: Simon Glass <sjg@chromium.org>

Applied to u-boot/master, thanks!

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 659 bytes
Desc: not available
URL: <https://lists.denx.de/pipermail/u-boot/attachments/20200804/d8ee339a/attachment.sig>

^ permalink raw reply	[flat|nested] 68+ messages in thread

* [PATCH 31/31] checkpatch: Don't allow common.h and dm.h in headers
  2020-07-19 16:16 ` [PATCH 31/31] checkpatch: Don't allow common.h and dm.h in headers Simon Glass
@ 2020-08-04 15:06   ` Tom Rini
  0 siblings, 0 replies; 68+ messages in thread
From: Tom Rini @ 2020-08-04 15:06 UTC (permalink / raw)
  To: u-boot

On Sun, Jul 19, 2020 at 10:16:01AM -0600, Simon Glass wrote:

> These headers should not be included in other header files. Add a
> checkpatch rule and test for this.
> 
> Signed-off-by: Simon Glass <sjg@chromium.org>

Applied to u-boot/master, thanks!

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 659 bytes
Desc: not available
URL: <https://lists.denx.de/pipermail/u-boot/attachments/20200804/d7fa2287/attachment.sig>

^ permalink raw reply	[flat|nested] 68+ messages in thread

end of thread, other threads:[~2020-08-04 15:06 UTC | newest]

Thread overview: 68+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-07-19 16:15 [PATCH 00/31] dm: Avoid including dm.h in header files Simon Glass
2020-07-19 16:15 ` [PATCH 01/31] spi: Allow separate control of SPI_FLASH_TINY for SPL/TPL Simon Glass
2020-08-04 15:03   ` Tom Rini
2020-07-19 16:15 ` [PATCH 02/31] mtd: spi-nor: Tidy up error handling / debug code Simon Glass
2020-07-20  6:12   ` Vignesh Raghavendra
2020-07-26 14:54     ` Simon Glass
2020-07-30  9:19       ` Vignesh Raghavendra
2020-08-04 15:03   ` Tom Rini
2020-07-19 16:15 ` [PATCH 03/31] wdt: Drop dm.h header file Simon Glass
2020-08-04 15:03   ` Tom Rini
2020-07-19 16:15 ` [PATCH 04/31] mtd: spi-mem: " Simon Glass
2020-08-04 15:03   ` Tom Rini
2020-07-19 16:15 ` [PATCH 05/31] mtd: spi: Drop SPI_XFER_MMAP* Simon Glass
2020-08-04 15:03   ` Tom Rini
2020-07-19 16:15 ` [PATCH 06/31] dm: core: Drop dm.h header file from dm-demo.h Simon Glass
2020-08-04 15:03   ` Tom Rini
2020-07-19 16:15 ` [PATCH 07/31] dm: core: Drop header files from dm/test.h Simon Glass
2020-08-04 15:04   ` Tom Rini
2020-07-19 16:15 ` [PATCH 08/31] fs: fs-loader: Drop dm.h header file Simon Glass
2020-08-04 15:04   ` Tom Rini
2020-07-19 16:15 ` [PATCH 09/31] net: Drop dm.h header file from phy.h Simon Glass
2020-08-04 15:04   ` Tom Rini
2020-07-19 16:15 ` [PATCH 10/31] sf: Drop dm.h header file from spi_flash.h Simon Glass
2020-08-04 15:04   ` Tom Rini
2020-07-19 16:15 ` [PATCH 11/31] thermal: Drop dm.h header file Simon Glass
2020-08-04 15:04   ` Tom Rini
2020-07-19 16:15 ` [PATCH 12/31] w1: " Simon Glass
2020-08-04 15:04   ` Tom Rini
2020-07-19 16:15 ` [PATCH 13/31] efi: Tidy up header includes Simon Glass
2020-08-04 15:04   ` Tom Rini
2020-07-19 16:15 ` [PATCH 14/31] power: Tidy up inclusion of regulator_common.h Simon Glass
2020-07-20 23:14   ` Jaehoon Chung
2020-08-04 15:04   ` Tom Rini
2020-07-19 16:15 ` [PATCH 15/31] mmc: Drop duplicate dm.h inclusion Simon Glass
2020-08-04 15:04   ` Tom Rini
2020-07-19 16:15 ` [PATCH 16/31] spi: " Simon Glass
2020-08-04 15:04   ` Tom Rini
2020-07-19 16:15 ` [PATCH 17/31] ti: am654: " Simon Glass
2020-08-04 15:05   ` Tom Rini
2020-07-19 16:15 ` [PATCH 18/31] liebherr: " Simon Glass
2020-08-04 15:05   ` Tom Rini
2020-07-19 16:15 ` [PATCH 19/31] pci: Drop dm.h inclusion from header file Simon Glass
2020-08-04 15:05   ` Tom Rini
2020-07-19 16:15 ` [PATCH 20/31] mediatek: Drop dm.h " Simon Glass
2020-08-04 15:05   ` Tom Rini
2020-07-19 16:15 ` [PATCH 21/31] mscc: " Simon Glass
2020-08-04 15:05   ` Tom Rini
2020-07-19 16:15 ` [PATCH 22/31] adc: " Simon Glass
2020-08-04 15:05   ` Tom Rini
2020-07-19 16:15 ` [PATCH 23/31] nand: " Simon Glass
2020-08-04 15:05   ` Tom Rini
2020-07-19 16:15 ` [PATCH 24/31] ufs: " Simon Glass
2020-08-04 15:05   ` Tom Rini
2020-07-19 16:15 ` [PATCH 25/31] usb: " Simon Glass
2020-08-04 15:05   ` Tom Rini
2020-07-19 16:15 ` [PATCH 26/31] clk: Drop dm.h header file in clk-provider.h Simon Glass
2020-07-19 16:54   ` Sean Anderson
2020-08-04 15:06   ` Tom Rini
2020-07-19 16:15 ` [PATCH 27/31] net: Drop dm.h header file in eth_phy.h Simon Glass
2020-08-04 15:06   ` Tom Rini
2020-07-19 16:15 ` [PATCH 28/31] net: Drop duplicate include of dm.h in pcnet.c Simon Glass
2020-08-04 15:06   ` Tom Rini
2020-07-19 16:15 ` [PATCH 29/31] dm: core: Guard against including dm.h in header files Simon Glass
2020-08-04 15:06   ` Tom Rini
2020-07-19 16:16 ` [PATCH 30/31] patman: Fix up the test comments Simon Glass
2020-08-04 15:06   ` Tom Rini
2020-07-19 16:16 ` [PATCH 31/31] checkpatch: Don't allow common.h and dm.h in headers Simon Glass
2020-08-04 15:06   ` Tom Rini

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.