Hi I'm a beginner in learning UEFI and trying to find out the logic of using protocols.
I've read the source code of CoreOpenProtocol
, CoreCloseProtocol
and CoreLocateProtocol
.
What I've found that while CoreOpenProtocol
will create a OPEN_PROTOCOL_DATA
structure and linked into PROTOCOL_INTERFACE->OpenList
, CoreLocateProtocol
does not create such structure.
CoreCloseProtocol
will actually delete the OPEN_PROTOCOL_DATA
from PROTOCOL_INTERFACE->OpenList
and free the memory that it took.
So since CoreLocateProtocol
do not create OPEN_PROTOCOL_DATA
, the close procedure seems meaningless.
Is that true?
Thanks a lot!