上一篇讲到最后一号SMI的流程,callback函数最后会把SCI enable起来。但是,这样还不能够发SCI,代码里面不仅仅要做这些。
经过老大的讲解,再去查看AMD的FCH规范,发现还需要去把GPIO99,即GEVENT3那根pin,设置成EC_SCI的功能。这里要做如下三件事:
1. SMI_Reg:A0h [7:6], SmiControl_3(control for GEVENT3) set to 00.
00: disable.
01: SMI.
10: NMI.
11: IRQ13.
2. SMI_Reg:40h [28:24], SciMap_3, Mapping of GEVENT3 to one of 32 Event_Status (bit 0\bit 1\...\bit 31).
3. SMI_Reg:04h [31:0], EventEnable, Each bit controls whether ACPI should generate wakeup and SCI interrupt.
具体怎么设置?我没有看到代码怎么写的,所以只有等以后补充了。做完这些以及之前的SCI_ENABLE,才能真正发SCI。