Dear Gerd,

Am 31.05.21 um 07:55 schrieb Gerd Hoffmann:

Small nit for the commit message summary: Increa*s*e.

BUILD_MIN_BIOSTABLE reserves space in the f-segment.  Some data
structures -- for example disk drives known to seabios -- must be
stored there, so the space available here limits the number of
devices seabios is able to manage.

Do you have an example command how to reproduce this with QEMU?

This patch sets BUILD_MIN_BIOSTABLE to 8k for bios images being 256k or
larger in size.  32bit code is moved off in that case, so we have more
room in the f-segment then.

Signed-off-by: Gerd Hoffmann <kra...@redhat.com>
---
  scripts/layoutrom.py | 4 ++++
  1 file changed, 4 insertions(+)

diff --git a/scripts/layoutrom.py b/scripts/layoutrom.py
index 6616721d1b58..abebf0211fa9 100755
--- a/scripts/layoutrom.py
+++ b/scripts/layoutrom.py
@@ -651,6 +651,10 @@ def main():
      # Read kconfig config file
      config = scanconfig(cfgfile)
+ # larger roms have more room in the f-segment due to moving out 32bit code
+    if config.get('CONFIG_ROM_SIZE') >= 256:
+        BUILD_MIN_BIOSTABLE = 8192
+
      # Figure out which sections to keep.
      allsections = info16[0] + info32seg[0] + info32flat[0]
      symbols = {'16': info16[1], '32seg': info32seg[1], '32flat': 
info32flat[1]}

Rest looks good.


Kind regards,

Paul
_______________________________________________
SeaBIOS mailing list -- seabios@seabios.org
To unsubscribe send an email to seabios-le...@seabios.org

Reply via email to