Hi Liming,
See the Binding.jpg that is NetworkCommon driver boot flow.
Below is NetworkCommon driver to do
#1 Install UNDI protocol
#2 Respond normal Cdb flag or attribute in UNDI API
#3 Provide device API hook if the device has specific command or setting.
Ex: UndiGetState routine in PxeFunciton.c. if device has provide the
UsbEthUndiGetState routine. (Nic->UsbEth->UsbEthUndi.UsbEthUndiGetState != NULL)
It could to invoke the UsbEthUndiGetState to override original status or
state.
Thanks,
Richard
-----Original Message-----
From: gaoliming <[email protected]>
Sent: 2022年9月2日 4:13 PM
To: RichardHo [何明忠] <[email protected]>; [email protected]
Cc: 'Andrew Fish' <[email protected]>; 'Leif Lindholm'
<[email protected]>; 'Michael D Kinney' <[email protected]>;
'Michael Kubacki' <[email protected]>; 'Leif Lindholm'
<[email protected]>; 'Zhiguang Liu' <[email protected]>; 'Hao A Wu'
<[email protected]>; 'Ray Ni' <[email protected]>; TonyLo [羅金松]
<[email protected]>; 'Demeter, Miki' <[email protected]>
Subject: 回复: [EXTERNAL] 回复: [edk2-devel] [PATCH] UsbNetworkPkg: add USB network
devices support
Richard:
ReadMe introduces the module behavior. But, it doesn't provide the code
design. So, I want to confirm whether NetworkCommon driver support PXE.
Thanks
Liming
> -----邮件原件-----
> 发件人: RichardHo [何明忠] <[email protected]>
> 发送时间: 2022年9月1日 11:47
> 收件人: gaoliming <[email protected]>; [email protected]
> 抄送: 'Andrew Fish' <[email protected]>; 'Leif Lindholm'
> <[email protected]>; 'Michael D Kinney'
> <[email protected]>; 'Michael Kubacki'
> <[email protected]>; 'Leif Lindholm' <[email protected]>;
> 'Zhiguang Liu' <[email protected]>; 'Hao A Wu'
> <[email protected]>; 'Ray Ni' <[email protected]>; TonyLo [羅金松]
> <[email protected]>; 'Demeter, Miki' <[email protected]>
> 主题: RE: [EXTERNAL] 回复: [edk2-devel] [PATCH] UsbNetworkPkg: add USB
> network devices support
>
> Hi Liming,
>
> Please see more information in ReadMe.md for your question.
>
> Thanks,
> Richard
>
>
> -----Original Message-----
> From: gaoliming <[email protected]>
> Sent: 2022年8月31日 5:47 PM
> To: [email protected]; RichardHo [何明忠] <[email protected]>
> Cc: 'Andrew Fish' <[email protected]>; 'Leif Lindholm'
> <[email protected]>; 'Michael D Kinney'
> <[email protected]>; 'Michael Kubacki'
> <[email protected]>; 'Leif Lindholm' <[email protected]>;
> 'Zhiguang Liu' <[email protected]>; 'Hao A Wu'
> <[email protected]>; 'Ray Ni' <[email protected]>; TonyLo [羅金松]
> <[email protected]>; 'Demeter, Miki' <[email protected]>
> Subject: [EXTERNAL] 回复: [edk2-devel] [PATCH] UsbNetworkPkg: add USB
> network devices support
>
>
> **CAUTION: The e-mail below is from an external source. Please
> exercise caution before opening attachments, clicking links, or
> following guidance.**
>
> Richard:
> Thanks for your contribution. This is new feature. Can you submit
> feature request to
> https://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Fbugz
> il
> la.tianocore.org%2F&data=05%7C01%7Crichardho%40ami.com%7C5f95
> 0debbf01487623db08da8b35b846%7C27e97857e15f486cb58e86c2b3040f93
> %7C1%7C0%7C637975360096010785%7CUnknown%7CTWFpbGZsb3d8eyJW
> IjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C
> 3000%7C%7C%7C&sdata=zl%2F13Q5OOLBzRtb37HvG5j0i6x6fh%2BCIo
> 0fqkWnbaJU%3D&reserved=0? If you have no account in
> https://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Fbugz
> il
> la.tianocore.org%2F&data=05%7C01%7Crichardho%40ami.com%7C5f95
> 0debbf01487623db08da8b35b846%7C27e97857e15f486cb58e86c2b3040f93
> %7C1%7C0%7C637975360096010785%7CUnknown%7CTWFpbGZsb3d8eyJW
> IjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C
> 3000%7C%7C%7C&sdata=zl%2F13Q5OOLBzRtb37HvG5j0i6x6fh%2BCIo
> 0fqkWnbaJU%3D&reserved=0, you can ask help for 'Demeter, Miki'
> <miki.
> [email protected]>.
>
> For the code, what's the purpose of
> UsbNetworkPkg/NetworkCommon/PxeFunction.c? Does NetworkCommon support
> PXE?
>
> Thanks
> Liming
> > -----邮件原件-----
> > 发件人: [email protected] <[email protected]> 代表 RichardHo
> > [何明忠] via groups.io
> > 发送时间: 2022年8月31日 10:31
> > 收件人: [email protected]
> > 抄送: Andrew Fish <[email protected]>; Leif Lindholm
> > <[email protected]>; Michael D Kinney
> > <[email protected]>; Michael Kubacki
> > <[email protected]>; Leif Lindholm <[email protected]>;
> > Zhiguang Liu <[email protected]>; Liming Gao
> > <[email protected]>; Hao A Wu <[email protected]>; Ray Ni
> > <[email protected]>; TonyLo [羅金松] <[email protected]>
> > 主题: [edk2-devel] [PATCH] UsbNetworkPkg: add USB network devices
> > support
> >
> > UsbNetworkPkg provides network functions for USB ACM, USB NCM, and
> USB
> > RNDIS network device.
> >
> > Signed-off-by: Richard Ho <[email protected]>
> > Cc: Andrew Fish <[email protected]>
> > Cc: Leif Lindholm <[email protected]>
> > Cc: Michael D Kinney <[email protected]>
> > Cc: Michael Kubacki <[email protected]>
> > Cc: Leif Lindholm <[email protected]>
> > Cc: Zhiguang Liu <[email protected]>
> > Acked-by: Michael D Kinney <[email protected]>
> > Acked-by: Liming Gao <[email protected]>
> > Acked-by: Leif Lindholm <[email protected]>
> > Reviewed-by: Hao A Wu <[email protected]>
> > Reviewed-by: Ray Ni <[email protected]>
> > Reviewed-by: Tony Lo <[email protected]>
> > ---
> > UsbNetworkPkg/Config/UsbNetworkPkg.inc.dsc | 9 +
> > .../Config/UsbNetworkPkgComponentsDxe.inc.dsc | 20 +
> > .../Config/UsbNetworkPkgComponentsDxe.inc.fdf | 21 +
> > .../Config/UsbNetworkPkgDefines.inc.dsc | 23 +
> > .../Include/Protocol/UsbEthernetProtocol.h | 872 +++++++++
> > UsbNetworkPkg/NetworkCommon/ComponentName.c | 264 +++
> > UsbNetworkPkg/NetworkCommon/DriverBinding.c | 583 ++++++
> > UsbNetworkPkg/NetworkCommon/DriverBinding.h | 263 +++
> > UsbNetworkPkg/NetworkCommon/NetworkCommon.inf | 43 +
> > UsbNetworkPkg/NetworkCommon/PxeFunction.c | 1734
> > +++++++++++++++++
> > UsbNetworkPkg/ReadMe.md | 65 +
> > UsbNetworkPkg/ReleaseNotes.md | 11 +
> > UsbNetworkPkg/UsbCdcEcm/ComponentName.c | 170 ++
> > UsbNetworkPkg/UsbCdcEcm/UsbCdcEcm.c | 504 +++++
> > UsbNetworkPkg/UsbCdcEcm/UsbCdcEcm.h | 211 ++
> > UsbNetworkPkg/UsbCdcEcm/UsbCdcEcm.inf | 41 +
> > UsbNetworkPkg/UsbCdcEcm/UsbEcmFunction.c | 861 ++++++++
> > UsbNetworkPkg/UsbCdcNcm/ComponentName.c | 170 ++
> > UsbNetworkPkg/UsbCdcNcm/UsbCdcNcm.c | 508 +++++
> > UsbNetworkPkg/UsbCdcNcm/UsbCdcNcm.h | 245 +++
> > UsbNetworkPkg/UsbCdcNcm/UsbCdcNcm.inf | 41 +
> > UsbNetworkPkg/UsbCdcNcm/UsbNcmFunction.c | 946
> +++++++++
> > UsbNetworkPkg/UsbNetworkPkg.dec | 32 +
> > UsbNetworkPkg/UsbRndis/ComponentName.c | 172 ++
> > UsbNetworkPkg/UsbRndis/UsbRndis.c | 848 ++++++++
> > UsbNetworkPkg/UsbRndis/UsbRndis.h | 569 ++++++
> > UsbNetworkPkg/UsbRndis/UsbRndis.inf | 41 +
> > UsbNetworkPkg/UsbRndis/UsbRndisFunction.c | 1587
> > +++++++++++++++
> > 28 files changed, 10854 insertions(+) create mode 100644
> > UsbNetworkPkg/Config/UsbNetworkPkg.inc.dsc
> > create mode 100644
> > UsbNetworkPkg/Config/UsbNetworkPkgComponentsDxe.inc.dsc
> > create mode 100644
> > UsbNetworkPkg/Config/UsbNetworkPkgComponentsDxe.inc.fdf
> > create mode 100644
> > UsbNetworkPkg/Config/UsbNetworkPkgDefines.inc.dsc
> > create mode 100644
> > UsbNetworkPkg/Include/Protocol/UsbEthernetProtocol.h
> > create mode 100644
> > UsbNetworkPkg/NetworkCommon/ComponentName.c
> > create mode 100644 UsbNetworkPkg/NetworkCommon/DriverBinding.c
> > create mode 100644 UsbNetworkPkg/NetworkCommon/DriverBinding.h
> > create mode 100644
> > UsbNetworkPkg/NetworkCommon/NetworkCommon.inf
> > create mode 100644 UsbNetworkPkg/NetworkCommon/PxeFunction.c
> > create mode 100644 UsbNetworkPkg/ReadMe.md create mode 100644
> > UsbNetworkPkg/ReleaseNotes.md create mode 100644
> > UsbNetworkPkg/UsbCdcEcm/ComponentName.c
> > create mode 100644 UsbNetworkPkg/UsbCdcEcm/UsbCdcEcm.c
> > create mode 100644 UsbNetworkPkg/UsbCdcEcm/UsbCdcEcm.h
> > create mode 100644 UsbNetworkPkg/UsbCdcEcm/UsbCdcEcm.inf
> > create mode 100644 UsbNetworkPkg/UsbCdcEcm/UsbEcmFunction.c
> > create mode 100644 UsbNetworkPkg/UsbCdcNcm/ComponentName.c
> > create mode 100644 UsbNetworkPkg/UsbCdcNcm/UsbCdcNcm.c
> > create mode 100644 UsbNetworkPkg/UsbCdcNcm/UsbCdcNcm.h
> > create mode 100644 UsbNetworkPkg/UsbCdcNcm/UsbCdcNcm.inf
> > create mode 100644 UsbNetworkPkg/UsbCdcNcm/UsbNcmFunction.c
> > create mode 100644 UsbNetworkPkg/UsbNetworkPkg.dec create mode
> > 100644 UsbNetworkPkg/UsbRndis/ComponentName.c
> > create mode 100644 UsbNetworkPkg/UsbRndis/UsbRndis.c create
> mode
> > 100644 UsbNetworkPkg/UsbRndis/UsbRndis.h create mode 100644
> > UsbNetworkPkg/UsbRndis/UsbRndis.inf
> > create mode 100644 UsbNetworkPkg/UsbRndis/UsbRndisFunction.c
> >
> >
> >
>
>
>
> -The information contained in this message may be confidential and
> proprietary to American Megatrends (AMI). This communication is
> intended to be read only by the individual or entity to whom it is
> addressed or by their designee. If the reader of this message is not
> the intended recipient, you are on notice that any distribution of
> this message, in any form, is strictly prohibited. Please promptly
> notify the sender by reply e-mail or by telephone at 770-246-8600, and then
> delete or destroy all copies of the transmission.
-The information contained in this message may be confidential and proprietary
to American Megatrends (AMI). This communication is intended to be read only by
the individual or entity to whom it is addressed or by their designee. If the
reader of this message is not the intended recipient, you are on notice that
any distribution of this message, in any form, is strictly prohibited. Please
promptly notify the sender by reply e-mail or by telephone at 770-246-8600, and
then delete or destroy all copies of the transmission.
-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#93091): https://edk2.groups.io/g/devel/message/93091
Mute This Topic: https://groups.io/mt/93415462/21656
Group Owner: [email protected]
Unsubscribe: https://edk2.groups.io/g/devel/unsub [[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-