Thanks for the reply. I was able to locate EFI_TCP4_SERVICE_BINDING_PROTOCOL, so I will try following the examples you referenced to use TCP.

David

On 09/23/2015 07:18 PM, Ye, Ting wrote:
Hi David,

I don't know which platform are you using but let's assume you already have 
UEFI network stack since you can work with SNP.
The UEFI network stack will produce EFI_TCP4_SERVICE_BINDING_PROTOCOL instead of 
producing EFI_TCP4_PROTOCOL directly. To use TCP4 protocol, you need call 
EFI_TCP4_SERVICE_BINDING_PROTOCOL->CreateChild() to install a TCP4 protocol to 
the system. You could refer to the UEFI network modules (e.g. iSCSI driver) for 
how to use a EFI service binding protocol. Also, the DxeTcpIoLib in MdeModulePkg 
provides helper routines to access TCP service.

Best Regards,
Ye Ting


-----Original Message-----
From: edk2-devel [mailto:[email protected]] On Behalf Of David 
Van Arnem
Sent: Thursday, September 24, 2015 6:20 AM
To: [email protected]
Subject: [edk2] gEfiTcp4ProtocolGuid not found when running application on 
motherboard

Hi all,

I'm trying to implement some networking (sending/receiving a couple
packets) in a UEFI application I'm developing and testing on a
commercial motherboard.  I am able to send a packet if I use SNP, using
(approximately):

gBS->LocateProtocol(&gEfiSimpleNetworkProtocolGuid, NULL, (VOID
**)&SnpProtocol);
SnpProtocol->Transmit(...)

Instead, though, I would like to send a TCP packet, so I tried locating
the gEfiTcp4ProtocolGuid and using the Transmit from that protocol. The
LocateProtocol function in this case is returning EFI_NOT_FOUND, which
is unfortunate.  Should gEfiTcp4ProtocolGuid be in the motherboard
manufacturer's UEFI implementation (i.e. is it up to the developer to
include it or not)?  I'm not sure how compliance with the spec works, so
I wanted to ask here before I choose an alternative.

David

_______________________________________________
edk2-devel mailing list
[email protected]
https://lists.01.org/mailman/listinfo/edk2-devel
_______________________________________________
edk2-devel mailing list
[email protected]
https://lists.01.org/mailman/listinfo/edk2-devel

_______________________________________________
edk2-devel mailing list
[email protected]
https://lists.01.org/mailman/listinfo/edk2-devel

Reply via email to