Hi, >> The disk access code is called from 16bit mode, and thus it needs to >> be compiled in 16bit mode. The link errors you are seeing are there >> to force a build error (instead of failing mysterously at run time). >> >> What does your driver do that requires 32bit mode?
Access special pages for communication with the hypervisor (grant tables, request ring). > I thought that, apart from the entry points and some special cases, > SeaBIOS mostly ran in 32-bit mode. Have I just misunderstood? Pretty much all initialization code (including drive probing) runs in 32bit mode. Any 16bit interrupt handling runs in 16bit mode. >> The ahci driver has to access some memory addresses above 1 meg to >> work properly and so it uses the pci_readl/writel() functions which >> trampoline to/from 32bit mode to acomplish this. If you need to do >> something similar, you could use that as a model. Another option would be to have the int15 handler trampoline to 32bit mode before calling process_op. cheers, Gerd _______________________________________________ SeaBIOS mailing list SeaBIOS@seabios.org http://www.seabios.org/mailman/listinfo/seabios