On 28.07.2008 21:22, Marc Jones wrote:
Stefan Reinauer wrote:
Another alternative to keeping full coreboot around, would be to make the SMM handler self contained. This would mean, the SMM handler could not use coreboot's functions like printk_debug, pci_read_config32, it could not use the device tree, and it would become more complex, because for some information we have to reprobe the hardware, or parse the coreboot table.
I think you need to consider keeping the runtime smm code self-contained. Executing code from SMM that is outside the SMM protected memory region could be risky. printk is a convenient way to debug SMM but it shouldn't be used runtime in a normal system since Linux could be using the serial port.
That's why we have the ability to tell printk to log to a memory buffer only.
PCI read/write functions are not so duplication shouldn't be too bad.
PCI config read/write is probably the one thing we never want to do in SMM because the OS could be in the middle of an CF8/CFC cycle.
Regards, Carl-Daniel