On 05/04/2015 05:16 AM, Igor Mammedov wrote:
On Wed, 29 Apr 2015 12:42:21 -0400


2 choices now -- which one to take?
I'd try installing extra SSDT table first as a cleanest way (seabios only)
and if it fails fallback to TIS path.

I did some experiment where I tried to use AML's Store() call to see whether it can read from some entry in another scope, similar to what the specs show on page 487, so that one could read the base address that is written elsewhere. The problem seems to be that there is no actual searching going on for accessing a scope during runtime, but this seems to be done during compile time. So something like Store(\_SB.I2C1.Y, BUFF) from the specs needs to have a SCOPE(\_SB.I2C1...) available during compile time.

Otherwise I am not sure how to go about this. The only way I could think of would be to write a unique and 'recognizeable' address into the AML, something like 0x12345678, try to find it in SeaBIOS and replace it with the actual address. It doesn't seem right, tough. The next best choice would be to paravirtualize the TIS with bytes that survive a reset.

  Regards,
      Stefan


Reply via email to