I can see a little bug that makes this return a confusing error (it
should have really failed with `SPI flash address(0x300) not in any
mmap window!`), and we can fix that if you want. But that still won't
make this build (and my patch didn't cause the underlying problem,
before that it may have built an image but it probably wouldn't have
booted). By default cbfstool only expects the top 16MB of the flash to
be memory-mapped, so it cannot link XIP stages into areas outside of
that. The real solution is to either change your FMAP to put the
COREBOOT section into the top 16MB (we might want to change the
auto-generated default FMAP to do that), or pass
--ext-win-base/--ext-win-size options to cbfstool to tell it how to
map areas below the top 16MB.

On Thu, Jun 23, 2022 at 1:09 AM Paul Menzel <[email protected]> wrote:
>
> Dear Mike,
>
>
> Am 23.06.22 um 09:49 schrieb Mike Banon:
> > If I use a default config for i440fx/piix4, building a 16MB ROM works
> > fine, but 32MB or 64MB doesn't work anymore:
> >
> > ...
> >      CC         postcar/southbridge/intel/common/rtc.o
> >      LINK       cbfs/fallback/postcar.debug
> >      OBJCOPY    cbfs/fallback/romstage.elf
> >      CREATE     build/mainboard/emulation/qemu-i440fx/cbfs-file.vqaXlP.out 
> > (from /home/my_custom_path_to/coreboot/.config)
> >      CC+STRIP   src/lib/cbfs_master_header.c
> >      OBJCOPY    cbfs/fallback/bootblock.elf
> >      OBJCOPY    bootblock.raw.elf
> >      OBJCOPY    bootblock.raw.bin
> > Created CBFS (capacity = 33553892 bytes)
> >      BOOTBLOCK
> >      CBFS       cbfs_master_header
> >      CBFS       fallback/romstage
> > cbfstool: /home/my_custom_path_to/coreboot/util/cbfstool/cbfstool.c:1145: 
> > cbfstool_convert_mkstage: Assertion 
> > `IS_HOST_SPACE_ADDRESS(host_space_address)' failed.
> > make: *** [Makefile.inc:1116: build/coreboot.pre] Aborted
>
> Thank you for the report. It looks like a regression of commit
> 20ad36547e25 (cbfstool: Do host space address conversion earlier when
> adding files) [1].
>
> Building a 32 MB ROM also fails for emulation/qemu-q35
> (`CONFIG_BOARD_EMULATION_QEMU_X86_Q35=y`).
>
>
> Kind regards,
>
> Paul
>
>
> [1]: https://review.coreboot.org/c/coreboot/+/60018
_______________________________________________
coreboot mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to