All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v4 00/27] rockchip: x86: Support building ROM files automatically with binman
@ 2020-07-19 19:55 Simon Glass
  2020-07-19 19:55 ` [PATCH v4 01/27] x86: Change how selection of ROMs works Simon Glass
                   ` (53 more replies)
  0 siblings, 54 replies; 94+ messages in thread
From: Simon Glass @ 2020-07-19 19:55 UTC (permalink / raw)
  To: u-boot

Rockchip-based Chromebooks support booting from SPI flash. It is annoying
to have to manually build the SPI image when the SD image is built
automatically.

This feature is already available for x86 devices, so the existing
mechanism is reused. Briefly, this allows a BUILD_ROM environment variable
to be provided to indicate that any required binary blobs are present and
it is safe to build the ROM.

A new 'mkimage' type is added to binman to support building binaries
containing mkimagem using a binman definition to configure it. This avoids
Makefile/shell/Python code to do the same thing.

This series also migrates some rockchip boards to use binman to produce
their FIT as well, resulting in removing the fit_spl_optee.sh script.

Other archs and the rest of rockchip could be migrated too.

This series uses binman to produce a ROM image on two selected
Chromebooks, Bob (RK3399) and Jerry (RK3388).

Changes in v4:
- Add a new CONFIG_ROCKCHIP_SPI_IMAGE to control SPI-image generation
- Use CONFIG_ROCKCHIP_SPI_IMAGE to select the image
- Update for changes to arch/arm/mach-k3/config.mk
- Move the .itb output to a separate rockchip-optee.dtsi file
- Add a check for CONFIG_FIT before building the .its

Changes in v3:
- Add a comment about CONFIG_SPL_FRAMEWORK
- Drop rockchip changes which should not be in this patch
- Move in the rockchip changes mistakenly in the earlier x86 patch
- Drop use of rk322x.dtsi
- Add changes to rk3288-u-boot.dtsi instead
- Drop leftover debugging

Changes in v2:
- Drop 'rockchip' tag since this commit no-longer affects rockchip yet
- Drop ROM_NEEDS_BLOBS for baytrail since HAVE_FSP already selects it
- Add patches to partially migrate rockchip to use binman

Simon Glass (27):
  x86: Change how selection of ROMs works
  rockchip: Allow Bob to use SPI boot
  Makefile: Allow building .rom files for non-x86 boards
  rockchip: jerry: Add serial support
  rockchip: bob: Support SPI-flash booting
  rockchip: Enable building a SPI ROM image on jerry
  rockchip: Enable building a SPI ROM image on bob
  tegra: Drop the unused non-binman code
  tegra: Don't enable binman on ARMv8 SoCs
  Makefile: Rename ALL-y to INPUTS-y
  powerpc: mpc85xx: Only enable binman when it is needed
  x86: Makefile: Drop explicit targets built by binman
  x86: Drop CONFIG_BUILD_ROM and repurpose BUILD_ROM
  sunxi: Makefile: Drop explicit targets built by binman
  tegra: Makefile: Drop explicit targets built by binman
  mediatek: Makefile: Drop explicit targets built by binman
  Makefile: Move CONFIG_TOOLS_DEBUG check to later
  Makefile: Fix a long line in cmd_mkfitimage
  Makefile: Allow CONFIG_SPL_FIT_GENERATOR to be empty
  Makefile: Warn against using CONFIG_SPL_FIT_GENERATOR
  rockchip: Convert evb-rk3288 over to use binman
  rockchip: Convert evb-rk3229 over to use binman
  rockchip: Drop the fit_spl_optee.sh script
  x86: Move the fdtmap away from the binary blobs
  x86: chromebook_link64: Correct the image layout
  x86: chromebook_panther: Correct the image layout
  x86: chromebook_samus_tpl: Correct the image layout

 Kconfig                                   |  29 +++-
 Makefile                                  | 169 ++++++++++------------
 arch/Kconfig                              |   1 +
 arch/arm/config.mk                        |  10 +-
 arch/arm/dts/rk3288-u-boot.dtsi           |  25 ++++
 arch/arm/dts/rk3399-gru-u-boot.dtsi       |   4 +
 arch/arm/dts/rk3399-gru.dtsi              |   2 +-
 arch/arm/dts/rk3399-u-boot.dtsi           |  27 ++++
 arch/arm/dts/rockchip-optee.dtsi          |  64 ++++++++
 arch/arm/dts/rockchip-u-boot.dtsi         |  10 +-
 arch/arm/mach-at91/config.mk              |   2 +-
 arch/arm/mach-davinci/config.mk           |   2 +-
 arch/arm/mach-k3/config.mk                |  10 +-
 arch/arm/mach-keystone/config.mk          |   4 +-
 arch/arm/mach-omap2/config.mk             |  28 ++--
 arch/arm/mach-rmobile/Makefile            |   2 +-
 arch/arm/mach-rockchip/Kconfig            |   9 ++
 arch/arm/mach-rockchip/fit_spl_optee.sh   |  84 -----------
 arch/arm/mach-rockchip/rk3288/Kconfig     |   3 +
 arch/arm/mach-rockchip/rk3399/Kconfig     |   2 +
 arch/arm/mach-rockchip/spl.c              |   3 +-
 arch/arm/mach-stm32mp/config.mk           |   4 +-
 arch/arm/mach-tegra/Kconfig               |   2 +-
 arch/powerpc/Kconfig                      |   2 +-
 arch/x86/Kconfig                          |  11 +-
 arch/x86/cpu/quark/Kconfig                |   1 +
 arch/x86/dts/u-boot.dtsi                  |  10 +-
 board/BuR/brppt1/config.mk                |   4 +-
 board/BuR/brppt2/config.mk                |   4 +-
 board/BuR/brsmarc1/config.mk              |   6 +-
 board/imgtec/boston/config.mk             |   2 +-
 board/intel/edison/config.mk              |   2 +-
 configs/am335x_evm_defconfig              |   1 +
 configs/am335x_hs_evm_defconfig           |   1 +
 configs/am335x_hs_evm_uart_defconfig      |   1 +
 configs/am43xx_evm_defconfig              |   1 +
 configs/am43xx_evm_rtconly_defconfig      |   1 +
 configs/am43xx_evm_usbhost_boot_defconfig |   1 +
 configs/am43xx_hs_evm_defconfig           |   1 +
 configs/am57xx_evm_defconfig              |   1 +
 configs/am57xx_hs_evm_defconfig           |   1 +
 configs/am57xx_hs_evm_usb_defconfig       |   1 +
 configs/am65x_evm_a53_defconfig           |   1 +
 configs/am65x_evm_r5_defconfig            |   1 +
 configs/am65x_hs_evm_a53_defconfig        |   1 +
 configs/am65x_hs_evm_r5_defconfig         |   1 +
 configs/chromebook_bob_defconfig          |   4 +-
 configs/chromebook_jerry_defconfig        |   1 +
 configs/chromebook_link64_defconfig       |   2 +
 configs/chromebook_samus_tpl_defconfig    |   2 +-
 configs/chromebox_panther_defconfig       |   2 +
 configs/dh_imx6_defconfig                 |   1 +
 configs/display5_defconfig                |   1 +
 configs/display5_factory_defconfig        |   1 +
 configs/dra7xx_evm_defconfig              |   1 +
 configs/dra7xx_hs_evm_defconfig           |   1 +
 configs/dra7xx_hs_evm_usb_defconfig       |   1 +
 configs/evb-rk3229_defconfig              |   2 +-
 configs/evb-rk3288_defconfig              |   2 +-
 configs/imx6qdl_icore_mipi_defconfig      |   1 +
 configs/imx6qdl_icore_mmc_defconfig       |   1 +
 configs/imx6qdl_icore_rqs_defconfig       |   1 +
 configs/j721e_evm_a72_defconfig           |   1 +
 configs/j721e_evm_r5_defconfig            |   1 +
 configs/j721e_hs_evm_a72_defconfig        |   1 +
 configs/j721e_hs_evm_r5_defconfig         |   1 +
 configs/ls1046ardb_qspi_spl_defconfig     |   1 +
 configs/mccmon6_nor_defconfig             |   1 +
 configs/mccmon6_sd_defconfig              |   1 +
 configs/mx6sabreauto_defconfig            |   1 +
 configs/mx6sabresd_defconfig              |   1 +
 configs/pico-imx6_defconfig               |   1 +
 configs/qemu-x86_64_defconfig             |   2 +-
 configs/qemu-x86_defconfig                |   1 -
 configs/sandbox_spl_defconfig             |   1 +
 configs/socfpga_arria10_defconfig         |   1 +
 configs/stm32mp15_dhcom_basic_defconfig   |   1 +
 configs/stm32mp15_dhcor_basic_defconfig   |   1 +
 configs/wandboard_defconfig               |   1 +
 configs/xilinx_zynq_virt_defconfig        |   1 +
 scripts/Makefile.spl                      |  24 +--
 tools/binman/README                       |   2 +-
 82 files changed, 373 insertions(+), 248 deletions(-)
 create mode 100644 arch/arm/dts/rockchip-optee.dtsi
 delete mode 100755 arch/arm/mach-rockchip/fit_spl_optee.sh

-- 
2.28.0.rc0.105.gf9edc3c819-goog

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

end of thread, other threads:[~2020-11-08 14:05 UTC | newest]

Thread overview: 94+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-07-19 19:55 [PATCH v4 00/27] rockchip: x86: Support building ROM files automatically with binman Simon Glass
2020-07-19 19:55 ` [PATCH v4 01/27] x86: Change how selection of ROMs works Simon Glass
2020-07-19 19:55 ` [PATCH v4 02/27] rockchip: Allow Bob to use SPI boot Simon Glass
2020-08-08 10:59   ` Kever Yang
2020-08-08 13:28     ` Simon Glass
2020-07-19 19:55 ` [PATCH v4 03/27] Makefile: Allow building .rom files for non-x86 boards Simon Glass
2020-07-19 19:55 ` [PATCH v4 04/27] rockchip: jerry: Add serial support Simon Glass
2020-07-19 19:55 ` [PATCH v4 05/27] rockchip: bob: Support SPI-flash booting Simon Glass
2020-07-19 19:55 ` [PATCH v4 06/27] rockchip: Enable building a SPI ROM image on jerry Simon Glass
2020-07-19 19:55 ` [PATCH v4 07/27] rockchip: Enable building a SPI ROM image on bob Simon Glass
2020-08-08 12:39   ` Kever Yang
2020-08-08 13:28     ` Simon Glass
2020-08-10  7:46       ` Kever Yang
2020-08-13  2:51         ` Simon Glass
2020-10-11 15:39   ` Emmanuel Vadot
2020-10-14 18:37     ` Hugh Cole-Baker
2020-11-03 15:11       ` Simon Glass
2020-11-07 18:00         ` Emmanuel Vadot
2020-11-08 14:05         ` Hugh Cole-Baker
2020-07-19 19:55 ` [PATCH v4 08/27] tegra: Drop the unused non-binman code Simon Glass
2020-07-19 19:56 ` [PATCH v4 09/27] tegra: Don't enable binman on ARMv8 SoCs Simon Glass
2020-07-19 19:56 ` [PATCH v4 10/27] Makefile: Rename ALL-y to INPUTS-y Simon Glass
2020-07-19 19:56 ` [PATCH v4 11/27] powerpc: mpc85xx: Only enable binman when it is needed Simon Glass
2020-07-19 19:56 ` [PATCH v4 12/27] x86: Makefile: Drop explicit targets built by binman Simon Glass
2020-08-05 14:20   ` sunxi/arm64 build broken (was: [PATCH v4 12/27] x86: Makefile: Drop explicit targets built by binman) André Przywara
2020-08-05 15:05     ` Simon Glass
2020-08-05 15:21       ` André Przywara
2020-08-05 17:22         ` Simon Glass
2020-07-19 19:56 ` [PATCH v4 13/27] x86: Drop CONFIG_BUILD_ROM and repurpose BUILD_ROM Simon Glass
2020-07-19 19:56 ` [PATCH v4 14/27] sunxi: Makefile: Drop explicit targets built by binman Simon Glass
2020-07-19 19:56 ` [PATCH v4 15/27] tegra: " Simon Glass
2020-07-19 19:56 ` [PATCH v4 16/27] mediatek: " Simon Glass
2020-07-19 19:56 ` [PATCH v4 17/27] Makefile: Move CONFIG_TOOLS_DEBUG check to later Simon Glass
2020-07-19 19:56 ` [PATCH v4 18/27] Makefile: Fix a long line in cmd_mkfitimage Simon Glass
2020-07-19 19:56 ` [PATCH v4 19/27] Makefile: Allow CONFIG_SPL_FIT_GENERATOR to be empty Simon Glass
2020-07-19 19:56 ` [PATCH v4 20/27] Makefile: Warn against using CONFIG_SPL_FIT_GENERATOR Simon Glass
2020-08-14 13:27   ` Michal Simek
2020-08-16  3:39     ` Simon Glass
2020-08-17  6:49       ` Michal Simek
2020-08-22 15:08         ` Simon Glass
2020-08-24 14:11           ` Michal Simek
2020-08-25 15:04             ` Simon Glass
2020-08-25 15:12               ` Michal Simek
2020-08-25 16:57                 ` Simon Glass
2020-08-26 14:11                   ` Michal Simek
2020-08-30 20:37                     ` Simon Glass
2020-09-01 15:15                       ` Michal Simek
2020-09-01 15:26                         ` Simon Glass
2020-09-16 13:41                           ` Michal Simek
2020-07-19 19:56 ` [PATCH v4 21/27] rockchip: Convert evb-rk3288 over to use binman Simon Glass
2020-07-19 19:56 ` [PATCH v4 22/27] rockchip: Convert evb-rk3229 " Simon Glass
2020-07-19 19:56 ` [PATCH v4 23/27] rockchip: Drop the fit_spl_optee.sh script Simon Glass
2020-07-19 19:56 ` [PATCH v4 24/27] x86: Move the fdtmap away from the binary blobs Simon Glass
2020-07-19 19:56 ` [PATCH v4 25/27] x86: chromebook_link64: Correct the image layout Simon Glass
2020-07-19 19:56 ` [PATCH v4 26/27] x86: chromebook_panther: " Simon Glass
2020-07-19 19:56 ` [PATCH v4 27/27] x86: chromebook_samus_tpl: " Simon Glass
2020-07-20  1:12 ` [PATCH v4 00/27] rockchip: x86: Support building ROM files automatically with binman Bin Meng
2020-07-20  3:07   ` Simon Glass
2020-07-24 14:48     ` Simon Glass
2020-08-08 11:32       ` Kever Yang
2020-08-08 13:28         ` Simon Glass
2020-07-28 18:57 ` [PATCH v4 27/27] x86: chromebook_samus_tpl: Correct the image layout Simon Glass
2020-07-28 18:57 ` [PATCH v4 26/27] x86: chromebook_panther: " Simon Glass
2020-07-28 18:57 ` [PATCH v4 25/27] x86: chromebook_link64: " Simon Glass
2020-07-28 18:57 ` [PATCH v4 24/27] x86: Move the fdtmap away from the binary blobs Simon Glass
2020-07-28 18:57 ` [PATCH v4 23/27] rockchip: Drop the fit_spl_optee.sh script Simon Glass
2020-07-28 18:57 ` [PATCH v4 22/27] rockchip: Convert evb-rk3229 over to use binman Simon Glass
2020-07-28 18:57 ` [PATCH v4 21/27] rockchip: Convert evb-rk3288 " Simon Glass
2020-07-28 18:57 ` [PATCH v4 20/27] Makefile: Warn against using CONFIG_SPL_FIT_GENERATOR Simon Glass
2020-07-28 18:57 ` [PATCH v4 19/27] Makefile: Allow CONFIG_SPL_FIT_GENERATOR to be empty Simon Glass
2020-07-28 18:57 ` [PATCH v4 18/27] Makefile: Fix a long line in cmd_mkfitimage Simon Glass
2020-07-28 18:57 ` [PATCH v4 17/27] Makefile: Move CONFIG_TOOLS_DEBUG check to later Simon Glass
2020-07-28 18:57 ` [PATCH v4 16/27] mediatek: Makefile: Drop explicit targets built by binman Simon Glass
2020-07-28 18:57 ` [PATCH v4 15/27] tegra: " Simon Glass
2020-07-28 18:57 ` [PATCH v4 13/27] x86: Drop CONFIG_BUILD_ROM and repurpose BUILD_ROM Simon Glass
2020-07-28 18:57 ` [PATCH v4 12/27] x86: Makefile: Drop explicit targets built by binman Simon Glass
2020-08-05 17:13   ` [PATCH v4 12/27] x86: Makefile: Drop explicit targets built by binman - BREAKS NETWORK ON SUNXI Heinrich Schuchardt
2020-08-05 17:30     ` Heinrich Schuchardt
2020-08-05 18:23       ` Simon Glass
2020-08-05 18:25         ` Simon Glass
2020-08-07  4:21           ` sunxi/arm64 build broken (was: [PATCH v4 12/27] x86: Makefile: Drop explicit targets built by binman) Samuel Holland
2020-08-07 15:44             ` Simon Glass
2020-08-07 16:23             ` Simon Glass
2020-07-28 18:58 ` [PATCH v4 11/27] powerpc: mpc85xx: Only enable binman when it is needed Simon Glass
2020-07-28 18:58 ` [PATCH v4 10/27] Makefile: Rename ALL-y to INPUTS-y Simon Glass
2020-07-28 18:58 ` [PATCH v4 09/27] tegra: Don't enable binman on ARMv8 SoCs Simon Glass
2020-07-28 18:58 ` [PATCH v4 08/27] tegra: Drop the unused non-binman code Simon Glass
2020-07-28 18:58 ` [PATCH v4 07/27] rockchip: Enable building a SPI ROM image on bob Simon Glass
2020-07-28 18:58 ` [PATCH v4 06/27] rockchip: Enable building a SPI ROM image on jerry Simon Glass
2020-07-28 18:58 ` [PATCH v4 05/27] rockchip: bob: Support SPI-flash booting Simon Glass
2020-07-28 18:58 ` [PATCH v4 04/27] rockchip: jerry: Add serial support Simon Glass
2020-07-28 18:58 ` [PATCH v4 03/27] Makefile: Allow building .rom files for non-x86 boards Simon Glass
2020-07-28 18:58 ` [PATCH v4 02/27] rockchip: Allow Bob to use SPI boot Simon Glass
2020-07-28 18:58 ` [PATCH v4 01/27] x86: Change how selection of ROMs works Simon Glass

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.