All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 00/16] fdt: Make OF_BOARD a boolean option
@ 2021-10-13  1:01 ` Simon Glass
  0 siblings, 0 replies; 164+ messages in thread
From: Simon Glass @ 2021-10-13  1:01 UTC (permalink / raw)
  To: U-Boot Mailing List
  Cc: Liviu Dudau, Neil Armstrong, Vladimir Oltean, Linus Walleij,
	Bin Meng, Kever Yang, Sean Anderson, Atish Patra, Zong Li,
	Stefan Roese, Fabio Estevam, Rainer Boschung, Tom Rini,
	Stephen Warren, Oleksandr Andrushchenko, Heinrich Schuchardt,
	Niel Fourie, Michal Simek, Marek Behún, Jerry Van Baren,
	Ramon Fried, Jagan Teki, Valentin Longchamp, Heiko Schocher,
	Peter Robinson, Sinan Akman, Thomas Fitzsimmons, Wolfgang Denk,
	Stephen Warren, qemu-devel, Andre Przywara, Tim Harvey,
	Ashok Reddy Soma, Rick Chen, Alexander Graf, Green Wan,
	T Karthik Reddy, Anastasiia Lukianenko, Albert Aribaud,
	Michal Simek, Matthias Brugger, Leo, Tero Kristo,
	David Abdurachmanov, Priyanka Jain, Simon Glass,
	Ilias Apalodimas, Christian Hewitt, Aaron Williams,
	Tuomas Tynkkynen, Heinrich Schuchardt, Tianrui Wei, Bin Meng,
	Pali Rohár, Dimitri John Ledkov, Padmarao Begari

With Ilias' efforts we have dropped OF_PRIOR_STAGE and OF_HOSTFILE so
there are only three ways to obtain a devicetree:

   - OF_SEPARATE - the normal way, where the devicetree is built and
      appended to U-Boot
   - OF_EMBED - for development purposes, the devicetree is embedded in
      the ELF file (also used for EFI)
   - OF_BOARD - the board figures it out on its own

The last one is currently set up so that no devicetree is needed at all
in the U-Boot tree. Most boards do provide one, but some don't. Some
don't even provide instructions on how to boot on the board.

The problems with this approach are documented at [1].

In practice, OF_BOARD is not really distinct from OF_SEPARATE. Any board
can obtain its devicetree at runtime, even it is has a devicetree built
in U-Boot. This is because U-Boot may be a second-stage bootloader and its
caller may have a better idea about the hardware available in the machine.
This is the case with a few QEMU boards, for example.

So it makes no sense to have OF_BOARD as a 'choice'. It should be an
option, available with either OF_SEPARATE or OF_EMBED.

This series makes this change, adding various missing devicetree files
(and placeholders) to make the build work.

It also provides a few qemu clean-ups discovered along the way.

This series is based on Ilias' two series for OF_HOSTFILE and
OF_PRIOR_STAGE removal.

It is available at u-boot-dm/ofb-working

[1] https://patchwork.ozlabs.org/project/uboot/patch/20210919215111.3830278-3-sjg@chromium.org/


Simon Glass (16):
  arm: qemu: Mention -nographic in the docs
  arm: qemu: Explain how to extract the generate devicetree
  riscv: qemu: Explain how to extract the generate devicetree
  arm: qemu: Add a devicetree file for qemu_arm
  arm: qemu: Add a devicetree file for qemu_arm64
  riscv: qemu: Add devicetree files for qemu_riscv32/64
  arm: rpi: Add a devicetree file for rpi_4
  arm: vexpress: Add a devicetree file for juno
  arm: xenguest_arm64: Add a fake devicetree file
  arm: octeontx: Add a fake devicetree file
  arm: xilinx_versal_virt: Add a devicetree file
  arm: bcm7xxx: Add a devicetree file
  arm: qemu-ppce500: Add a devicetree file
  arm: highbank: Add a fake devicetree file
  fdt: Make OF_BOARD a bool option
  Drop CONFIG_BINMAN_STANDALONE_FDT

 Makefile                               |    3 +-
 arch/arm/dts/Makefile                  |   20 +-
 arch/arm/dts/bcm2711-rpi-4-b.dts       | 1958 ++++++++++++++++++++++++
 arch/arm/dts/bcm7xxx.dts               |   15 +
 arch/arm/dts/highbank.dts              |   14 +
 arch/arm/dts/juno-r2.dts               | 1038 +++++++++++++
 arch/arm/dts/octeontx.dts              |   14 +
 arch/arm/dts/qemu-arm.dts              |  402 +++++
 arch/arm/dts/qemu-arm64.dts            |  381 +++++
 arch/arm/dts/xenguest-arm64.dts        |   15 +
 arch/arm/dts/xilinx-versal-virt.dts    |  307 ++++
 arch/powerpc/dts/Makefile              |    1 +
 arch/powerpc/dts/qemu-ppce500.dts      |  264 ++++
 arch/riscv/dts/Makefile                |    2 +-
 arch/riscv/dts/qemu-virt.dts           |    8 -
 arch/riscv/dts/qemu-virt32.dts         |  217 +++
 arch/riscv/dts/qemu-virt64.dts         |  217 +++
 configs/bcm7260_defconfig              |    1 +
 configs/bcm7445_defconfig              |    1 +
 configs/highbank_defconfig             |    2 +-
 configs/octeontx2_95xx_defconfig       |    1 +
 configs/octeontx2_96xx_defconfig       |    1 +
 configs/octeontx_81xx_defconfig        |    1 +
 configs/octeontx_83xx_defconfig        |    1 +
 configs/qemu-ppce500_defconfig         |    2 +
 configs/qemu-riscv32_defconfig         |    1 +
 configs/qemu-riscv32_smode_defconfig   |    1 +
 configs/qemu-riscv32_spl_defconfig     |    4 +-
 configs/qemu-riscv64_defconfig         |    1 +
 configs/qemu-riscv64_smode_defconfig   |    1 +
 configs/qemu-riscv64_spl_defconfig     |    3 +-
 configs/qemu_arm64_defconfig           |    1 +
 configs/qemu_arm_defconfig             |    1 +
 configs/rpi_4_32b_defconfig            |    1 +
 configs/rpi_4_defconfig                |    1 +
 configs/rpi_arm64_defconfig            |    1 +
 configs/vexpress_aemv8a_juno_defconfig |    1 +
 configs/xenguest_arm64_defconfig       |    1 +
 configs/xilinx_versal_virt_defconfig   |    1 +
 doc/board/emulation/qemu-arm.rst       |   19 +-
 doc/board/emulation/qemu-riscv.rst     |   12 +
 dts/Kconfig                            |   27 +-
 tools/binman/binman.rst                |   20 -
 43 files changed, 4922 insertions(+), 61 deletions(-)
 create mode 100644 arch/arm/dts/bcm2711-rpi-4-b.dts
 create mode 100644 arch/arm/dts/bcm7xxx.dts
 create mode 100644 arch/arm/dts/highbank.dts
 create mode 100644 arch/arm/dts/juno-r2.dts
 create mode 100644 arch/arm/dts/octeontx.dts
 create mode 100644 arch/arm/dts/qemu-arm.dts
 create mode 100644 arch/arm/dts/qemu-arm64.dts
 create mode 100644 arch/arm/dts/xenguest-arm64.dts
 create mode 100644 arch/arm/dts/xilinx-versal-virt.dts
 create mode 100644 arch/powerpc/dts/qemu-ppce500.dts
 delete mode 100644 arch/riscv/dts/qemu-virt.dts
 create mode 100644 arch/riscv/dts/qemu-virt32.dts
 create mode 100644 arch/riscv/dts/qemu-virt64.dts

-- 
2.33.0.882.g93a45727a2-goog



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

end of thread, other threads:[~2021-11-02 15:19 UTC | newest]

Thread overview: 164+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-10-13  1:01 [PATCH 00/16] fdt: Make OF_BOARD a boolean option Simon Glass
2021-10-13  1:01 ` Simon Glass
2021-10-13  1:01 ` [PATCH 01/16] arm: qemu: Mention -nographic in the docs Simon Glass
2021-10-13  1:01   ` Simon Glass
2021-10-13  1:01 ` [PATCH 02/16] arm: qemu: Explain how to extract the generate devicetree Simon Glass
2021-10-13  1:01   ` Simon Glass
2021-10-13  1:19   ` François Ozog
2021-10-13  1:19     ` François Ozog
2021-10-13 16:58     ` Simon Glass
2021-10-13 16:58       ` Simon Glass
2021-10-13 17:36       ` Tom Rini
2021-10-13 17:36         ` Tom Rini
2021-10-13  1:01 ` [PATCH 03/16] riscv: " Simon Glass
2021-10-13  1:01   ` Simon Glass
2021-10-13  1:01 ` [PATCH 04/16] arm: qemu: Add a devicetree file for qemu_arm Simon Glass
2021-10-13  1:01   ` Simon Glass
2021-10-13  1:01 ` [PATCH 05/16] arm: qemu: Add a devicetree file for qemu_arm64 Simon Glass
2021-10-13  1:01   ` Simon Glass
2021-10-13  1:15   ` François Ozog
2021-10-13  1:15     ` François Ozog
2021-10-27 14:44     ` Alex Bennée
2021-10-27 14:44       ` Alex Bennée
2021-10-27 14:56       ` Tom Rini
2021-10-27 14:56         ` Tom Rini
2021-10-27 18:34         ` Simon Glass
2021-10-27 18:34           ` Simon Glass
2021-10-27 18:39           ` Tom Rini
2021-10-27 18:39             ` Tom Rini
2021-10-27 19:45             ` Alex Bennée
2021-10-27 19:45               ` Alex Bennée
2021-10-13  1:01 ` [PATCH 06/16] riscv: qemu: Add devicetree files for qemu_riscv32/64 Simon Glass
2021-10-13  1:01   ` Simon Glass
2021-10-13  4:21   ` Heinrich Schuchardt
2021-10-13  4:21     ` Heinrich Schuchardt
2021-10-13  1:01 ` [PATCH 07/16] arm: rpi: Add a devicetree file for rpi_4 Simon Glass
2021-10-13  1:24   ` François Ozog
2021-10-13  1:01 ` [PATCH 08/16] arm: vexpress: Add a devicetree file for juno Simon Glass
2021-10-13  1:01 ` [PATCH 09/16] arm: xenguest_arm64: Add a fake devicetree file Simon Glass
2021-10-13  1:01 ` [PATCH 10/16] arm: octeontx: " Simon Glass
2021-10-13  1:27   ` François Ozog
2021-10-13  1:01 ` [PATCH 11/16] arm: xilinx_versal_virt: Add a " Simon Glass
2021-10-13  6:13   ` Michal Simek
2021-10-13 16:58     ` Simon Glass
2021-10-13  1:01 ` [PATCH 12/16] arm: bcm7xxx: " Simon Glass
2021-10-13  1:01 ` [PATCH 13/16] arm: qemu-ppce500: " Simon Glass
2021-10-13  1:01 ` [PATCH 14/16] arm: highbank: Add a fake " Simon Glass
2021-10-13  1:01 ` [PATCH 15/16] fdt: Make OF_BOARD a bool option Simon Glass
2021-10-13  4:22   ` Heinrich Schuchardt
2021-10-13 16:58     ` Simon Glass
2021-10-13 17:30       ` Sean Anderson
2021-10-24 19:53         ` Simon Glass
2021-10-13  1:01 ` [PATCH 16/16] Drop CONFIG_BINMAN_STANDALONE_FDT Simon Glass
2021-10-13  1:29 ` [PATCH 00/16] fdt: Make OF_BOARD a boolean option Bin Meng
2021-10-13  1:29   ` Bin Meng
2021-10-13  1:34   ` Tom Rini
2021-10-13  1:34     ` Tom Rini
2021-10-13  8:02     ` François Ozog
2021-10-13  8:02       ` François Ozog
2021-10-13 14:47     ` Simon Glass
2021-10-13 14:47       ` Simon Glass
2021-10-13 17:34       ` François Ozog
2021-10-13 17:34         ` François Ozog
2021-10-13 18:06         ` Simon Glass
2021-10-13 18:06           ` Simon Glass
2021-10-14 14:56           ` Tom Rini
2021-10-14 14:56             ` Tom Rini
2021-10-14 15:17             ` Simon Glass
2021-10-14 15:17               ` Simon Glass
2021-10-14 15:28               ` Tom Rini
2021-10-14 15:28                 ` Tom Rini
2021-10-14 17:58                 ` François Ozog
2021-10-14 17:58                   ` François Ozog
2021-10-15 18:03                 ` Simon Glass
2021-10-15 18:03                   ` Simon Glass
2021-10-26  6:46                   ` Ilias Apalodimas
2021-10-26  6:46                     ` Ilias Apalodimas
2021-10-27 12:59                     ` Tom Rini
2021-10-27 12:59                       ` Tom Rini
2021-10-27 13:30                       ` François Ozog
2021-10-27 13:30                         ` François Ozog
2021-10-27 13:38                         ` Tom Rini
2021-10-27 13:38                           ` Tom Rini
2021-10-27 13:47                           ` Ilias Apalodimas
2021-10-27 13:47                             ` Ilias Apalodimas
2021-10-27 14:26                             ` Tom Rini
2021-10-27 14:26                               ` Tom Rini
2021-10-27 13:48                           ` François Ozog
2021-10-27 13:48                             ` François Ozog
2021-10-27 14:30                             ` Tom Rini
2021-10-27 14:30                               ` Tom Rini
2021-10-28  2:50                     ` Simon Glass
2021-10-28  2:50                       ` Simon Glass
2021-10-28  8:21                       ` François Ozog
2021-10-28  8:21                         ` François Ozog
2021-10-28 14:30                         ` Simon Glass
2021-10-28 14:30                           ` Simon Glass
2021-10-28 14:50                           ` François Ozog
2021-10-28 14:50                             ` François Ozog
2021-10-28 15:44                             ` Simon Glass
2021-10-28 15:44                               ` Simon Glass
2021-10-28 16:25                               ` François Ozog
2021-10-28 16:25                                 ` François Ozog
2021-11-02 14:59                                 ` Simon Glass
2021-11-02 14:59                                   ` Simon Glass
2021-11-01 11:04                       ` Ilias Apalodimas
2021-11-01 11:04                         ` Ilias Apalodimas
2021-11-02 10:06                         ` Michael Walle
2021-11-02 10:06                           ` Michael Walle
2021-11-02 12:34                           ` François Ozog
2021-11-02 12:34                             ` François Ozog
2021-11-02 14:59                         ` Simon Glass
2021-11-02 14:59                           ` Simon Glass
2021-10-27 12:48                   ` Tom Rini
2021-10-27 12:48                     ` Tom Rini
2021-10-27 13:15                     ` François Ozog
2021-10-27 13:15                       ` François Ozog
2021-10-27 13:23                       ` Heinrich Schuchardt
2021-10-27 13:23                         ` Heinrich Schuchardt
2021-10-27 14:55                         ` Tom Rini
2021-10-27 14:55                           ` Tom Rini
2021-10-27 15:02                           ` Heinrich Schuchardt
2021-10-27 15:02                             ` Heinrich Schuchardt
2021-10-27 18:04                             ` Tom Rini
2021-10-27 18:04                               ` Tom Rini
2021-10-27 14:54                       ` Tom Rini
2021-10-27 14:54                         ` Tom Rini
2021-10-27 15:10                       ` Mark Kettenis
2021-10-27 15:10                         ` Mark Kettenis
2021-10-27 15:24                         ` Simon Glass
2021-10-27 15:24                           ` Simon Glass
2021-10-27 18:06                           ` Tom Rini
2021-10-27 18:06                             ` Tom Rini
2021-10-27 18:11                             ` François Ozog
2021-10-27 18:11                               ` François Ozog
2021-10-27 21:52                           ` Mark Kettenis
2021-10-27 21:52                             ` Mark Kettenis
2021-10-27 16:02                         ` François Ozog
2021-10-27 16:02                           ` François Ozog
2021-10-27 19:06                           ` Tom Rini
2021-10-27 19:06                             ` Tom Rini
2021-10-27 22:00                             ` François Ozog
2021-10-27 22:00                               ` François Ozog
2021-10-28 14:41                               ` Tom Rini
2021-10-28 14:41                                 ` Tom Rini
2021-10-14 16:24               ` Andre Przywara
2021-10-14 16:24                 ` Andre Przywara
2021-10-14 17:48                 ` François Ozog
2021-10-14 17:48                   ` François Ozog
2021-10-14 18:12           ` François Ozog
2021-10-14 18:12             ` François Ozog
2021-10-14 21:00             ` Simon Glass
2021-10-14 21:00               ` Simon Glass
2021-10-13 12:39   ` Philippe Mathieu-Daudé
2021-10-13 12:39     ` Philippe Mathieu-Daudé
2021-10-13 13:06     ` François Ozog
2021-10-13 13:06       ` François Ozog
2021-10-13  4:26 ` Heinrich Schuchardt
2021-10-13  4:26   ` Heinrich Schuchardt
2021-10-13 13:06   ` François Ozog
2021-10-13 13:06     ` François Ozog
2021-10-13  9:50 ` Andre Przywara
2021-10-13  9:50   ` Andre Przywara
2021-10-13 13:05   ` François Ozog
2021-10-13 13:05     ` François Ozog

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.