summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/arch/i386/prefix/romprefix.S12
1 files changed, 11 insertions, 1 deletions
diff --git a/src/arch/i386/prefix/romprefix.S b/src/arch/i386/prefix/romprefix.S
index e061932d7..d606006e8 100644
--- a/src/arch/i386/prefix/romprefix.S
+++ b/src/arch/i386/prefix/romprefix.S
@@ -738,7 +738,17 @@ exec: /* Set %ds = %cs */
pushw $1f
lret
.section ".text16", "awx", @progbits
-1: /* Call main() */
+1:
+ /* Retrieve PCI bus:dev.fn */
+ movw init_pci_busdevfn, %cx
+
+ /* Set up %ds for access to .data16 */
+ movw %bx, %ds
+
+ /* Store PCI bus:dev.fn */
+ movw %cx, autoboot_busdevfn
+
+ /* Call main() */
pushl $main
pushw %cs
call prot_call