Re: [PATCH RFC u-boot-mvebu 00/59] arm: mvebu: Various fixes

Stefan Roese
2023-02-28T07:03:58Z

Hi Martin,
Hi Pali,

On 2/27/23 12:29, Martin Rowe wrote:
> On Mon, 27 Feb 2023 at 08:04, Pali Rohár <pali@kernel.org
> <mailto:pali@kernel.org>> wrote:
>
> On Monday 27 February 2023 08:44:30 Stefan Roese wrote:
> > Hi Pali,
> >
> > On 2/25/23 23:00, Pali Rohár wrote:
> > > On Tuesday 21 February 2023 21:18:26 Pali Rohár wrote:
> > > > This patch series contains various improvements and fixes for
> existing
> > > > logical errors. Boot phase was adjusted to match behavior of
> Armada 385
> > > > BootROM by inspecting and disassembling of BootROM binary
> dump itself.
> > > > Important information are included in documentation patch for
> kwboot.
> > > > Most of the changes are untested, hence this patch series is
> just RFC.
> > > > So please test changes before applying, idealy on SPI, SATA
> and SD/MMC.
> > > > Nevertheless all patches on github passed CI testing in this PR:
> > > > https://github.com/u-boot/u-boot/pull/275
> <https://github.com/u-boot/u-boot/pull/275>
> > >
> > > Patches were tested on more boards and seems there is no
> reported issue,
> > > but other improvements.
> > >
> > > So do you need something to modify in this relatively big patch
> series?
> > > If it is not really needed I would like to not send it again
> because
> > > denx servers are not able to handle it. And it take me lot of
> time to
> > > send patches over emails to denx servers.
> >
> > I'm fine with applying the series as-is. I'm a bit hesitant
> though, if
> > it should be applied to master or to next. As Tom clearly
> noticed, that
> > only fixes should be added after rc2 this time.
> >
> > What is your thinking on this?
>
> Well, I do not know. AFAIK more patches here are fixing broken mvebu
> boards (e.g. eMMC or SATA parts). Maybe Martin or Josua could comment?
>
>
> A388 Clearfog was definitely broken prior to this patchset. There is
> quite a bit of churn that this has caused for some OpenWRT users [1] as
> well as for me. It would be nice to have a stable build for these boards.
>
> [1] https://github.com/openwrt/openwrt/issues/11661
> <https://github.com/openwrt/openwrt/issues/11661>

Okay. Thanks for the explanation. So it makes sense to pull this
patchset at this stage IMHO.

BUT: While trying to apply the patches sent to me directly this fails at
this patch:

tools: kwbimage: Add support for XIP SPI/NOR images

I tried to fix this merge problem manually, but this looks a bit bogus.
That's why I followed your instruction to pull the patches directly from
github:

git fetch https://github.com/u-boot/u-boot.git refs/pull/275/merge:mvebu

This works and all patches apply clean. But looking into the patches I
noticed, that these patches from github do not include all patches
sent to the list. refs/pull/275/merge:mvebu stops after

tools: mkimage: Do not fill legacy_img_hdr for non-legacy XIP images

This is the patch directly before the failing patch mentioned above.

Pali, could you please explain what went wrong here? Maybe I'm missing
something?

Thanks,
Stefan

>
> > Thanks,
> > Stefan
> >
> > >
> > > >
> > > > Pali Rohár (59):
> > > >    tools: kwbimage: Fix generating, verifying and extracting SDIO
> > > >      kwbimage
> > > >    tools: kwboot: Fix parsing SDIO kwbimage
> > > >    arm: mvebu: spl: Fix parsing SDIO kwbimage
> > > >    cmd: mvebu/bubt: Fix parsing SDIO kwbimage
> > > >    tools: kwbimage: Fix generating, verifying and extracting SATA
> > > >      kwbimage
> > > >    tools: kwboot: Fix parsing SATA kwbimage
> > > >    arm: mvebu: spl: Fix parsing SATA kwbimage
> > > >    cmd: mvebu/bubt: Fix parsing SATA kwbimage
> > > >    arm: mvebu: spl: Remove checks for BOOT_DEVICE_MMC2 and
> > > >      BOOT_DEVICE_MMC2_2
> > > >    arm: mvebu: spl: Load proper U-Boot from selected eMMC
> boot partition
> > > >    spl: mmc: Allow to disable SYS_MMCSD_FS_BOOT_PARTITION
> > > >    arm: mvebu: spl: Fix support for loading U-Boot proper
> from SD card
> > > >    tools: kwboot: Add more documentation references
> > > >    tools: kwboot: Add image type documentation
> > > >    tools: kwboot: Fix parsing UART image without data checksum
> > > >    tools: kwboot: Validate optional kwbimage v1 headers
> > > >    tools: kwboot: Add check that kwbimage contains DDR init code
> > > >    tools: kwboot: Fix patching of SPI/NOR XIP images
> > > >    tools: kwboot: Show image type and error parsing reasons
> > > >    cmd: mvebu/bubt: Add support for selecting eMMC HW partition
> > > >    cmd: mvebu/bubt: Add support for writing image to SATA disk
> > > >    cmd: mvebu/bubt: Add support for reading image from the
> SATA disk
> > > >      partition
> > > >    cmd: mvebu/bubt: Rename variable image_size to hdr_size
> > > >    cmd: mvebu/bubt: Mark all local symbols as static
> > > >    cmd: mvebu/bubt: Do not modify image in A8K
> check_image_header()
> > > >    cmd: mvebu/bubt: Check also A8K boot image checksum
> > > >    cmd: mvebu/bubt: Set correct default image name for 32-bit
> Armada SoCs
> > > >    cmd: mvebu/bubt: Better guess default MVEBU_*_BOOT option
> > > >    cmd: mvebu/bubt: Fix warnings: unused variable
> 'secure_mode' and
> > > >      'fuse_read_u64' defined but not used
> > > >    cmd: mvebu/bubt: Enable command by default
> > > >    tools: kwbimage: Fix dumping register set / DATA commands
> > > >    tools: kwbimage: Fix endianity when dumping NAND_PAGE_SIZE
> > > >    tools: kwbimage: Fix dumping NAND_BADBLK_LOCATION
> > > >    tools: kwbimage: Fix dumping NAND_BLKSZ
> > > >    tools: kwbimage: Fix generating of kwbimage v0 header checksum
> > > >    tools: kwbimage: Fix endianity when printing kwbimage header
> > > >    tools: kwbimage: Reject mkimage -F option
> > > >    tools: kwbimage: Add support for dumping NAND_BLKSZ for v0
> images
> > > >    tools: kwbimage: Print binary image offset as size
> > > >    tools: kwbimage: Print image data offset when printing
> kwbimage header
> > > >    tools: kwbimage: Simplify add_secure_header_v1()
> > > >    tools: kwbimage: Rename imagesz to dataoff
> > > >    tools: kwbimage: Fix generating secure boot data image
> signature
> > > >    tools: kwbimage: Fix invalid secure boot header signature
> > > >    tools: mkimage: Do not fill legacy_img_hdr for non-legacy
> XIP images
> > > >    tools: kwbimage: Add support for XIP SPI/NOR images
> > > >    tools: mkimage: Print human readable error when -d is not
> specified
> > > >    tools: mkimage: Do not try to open datafile when it is skipped
> > > >    tools: kwbimage: Add support for creating an image with no
> data
> > > >    arm: mvebu: Add support for generating NAND kwbimage
> > > >    arm: mvebu: Add support for generating PEX kwbimage
> > > >    arm: mvebu: Fix description of
> MVEBU_SPL_BOOT_DEVICE_(SPI|MMC) options
> > > >    arm: mvebu: db-88f6820-amc: Add defconfig for NAND booting
> > > >    arm: mvebu: clearfog: Add defconfig for SATA booting
> > > >    arm: mvebu: Remove A39x relicts
> > > >    arm: mvebu: Fix comment about CPU_ATTR_BOOTROM mapping
> > > >    arm: mvebu: Define env_sf_get_env_addr() also for Proper
> U-Boot
> > > >    arm: mvebu: Define SPL memory maps
> > > >    doc/kwboot.1: Update example description
> > > >
> > > >   arch/arm/mach-mvebu/Kconfig                   |  23 +-
> > > >   arch/arm/mach-mvebu/Makefile                  |  13 +
> > > >   arch/arm/mach-mvebu/cpu.c                     |  11 +-
> > > >   arch/arm/mach-mvebu/include/mach/cpu.h        |  21 ++
> > > >   arch/arm/mach-mvebu/kwbimage.cfg.in
> <http://kwbimage.cfg.in>           |   5 +
> > > >   .../serdes/a38x/high_speed_env_spec.c         |   4 +-
> > > >   .../serdes/a38x/high_speed_env_spec.h         |   4 +-
> > > >   arch/arm/mach-mvebu/serdes/a38x/sys_env_lib.c |  14 +-
> > > >   arch/arm/mach-mvebu/serdes/a38x/sys_env_lib.h |  30 --
> > > >   arch/arm/mach-mvebu/spl.c                     |  84 +++--
> > > >   cmd/mvebu/Kconfig                             |  18 ++
> > > >   cmd/mvebu/bubt.c                              | 253
> ++++++++++++---
> > > >   common/spl/Kconfig                            |   9 +
> > > >   common/spl/spl_mmc.c                          |  12 +-
> > > >   ...rfog_defconfig => clearfog_sata_defconfig} |   2 +-
> > > >   ...efconfig => db-88f6820-amc_nand_defconfig} |   6 +-
> > > >   doc/kwboot.1                                  |   3 +-
> > > >   doc/mvebu/cmd/bubt.txt                        |  25 +-
> > > >   drivers/mtd/nand/raw/Kconfig                  |   4 +-
> > > >   tools/kwbimage.c                              | 297
> +++++++++++-------
> > > >   tools/kwboot.c                                | 200
> +++++++++++-
> > > >   tools/mkimage.c                               |  11 +-
> > > >   22 files changed, 768 insertions(+), 281 deletions(-)
> > > >   copy configs/{clearfog_defconfig =>
> clearfog_sata_defconfig} (98%)
> > > >   copy configs/{db-88f6820-amc_defconfig =>
> db-88f6820-amc_nand_defconfig} (92%)
> > > >
> > > > --
> > > > 2.20.1
> > > >
> >
> > Viele Grüße,
> > Stefan Roese
> >
> > --
> > DENX Software Engineering GmbH,      Managing Director: Erika Unter
> > HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
> > Phone: (+49)-8142-66989-51 Fax: (+49)-8142-66989-80 Email:
> sr@denx.de <mailto:sr@denx.de>
>

Viele Grüße,
Stefan Roese

--
DENX Software Engineering GmbH, Managing Director: Erika Unter
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-51 Fax: (+49)-8142-66989-80 Email: sr@denx.de