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 <gaolim...@byosoft.com.cn>
Sent: 2022年9月2日 4:13 PM
To: RichardHo [何明忠] <richar...@ami.com>; devel@edk2.groups.io
Cc: 'Andrew Fish' <af...@apple.com>; 'Leif Lindholm' 
<quic_llind...@quicinc.com>; 'Michael D Kinney' <michael.d.kin...@intel.com>; 
'Michael Kubacki' <michael.kuba...@microsoft.com>; 'Leif Lindholm' 
<l...@nuviainc.com>; 'Zhiguang Liu' <zhiguang....@intel.com>; 'Hao A Wu' 
<hao.a...@intel.com>; 'Ray Ni' <ray...@intel.com>; TonyLo [羅金松] 
<ton...@ami.com>; 'Demeter, Miki' <miki.deme...@intel.com>
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 [何明忠] <richar...@ami.com>
> 发送时间: 2022年9月1日 11:47
> 收件人: gaoliming <gaolim...@byosoft.com.cn>; devel@edk2.groups.io
> 抄送: 'Andrew Fish' <af...@apple.com>; 'Leif Lindholm'
> <quic_llind...@quicinc.com>; 'Michael D Kinney'
> <michael.d.kin...@intel.com>; 'Michael Kubacki'
> <michael.kuba...@microsoft.com>; 'Leif Lindholm' <l...@nuviainc.com>;
> 'Zhiguang Liu' <zhiguang....@intel.com>; 'Hao A Wu'
> <hao.a...@intel.com>; 'Ray Ni' <ray...@intel.com>; TonyLo [羅金松]
> <ton...@ami.com>; 'Demeter, Miki' <miki.deme...@intel.com>
> 主题: 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 <gaolim...@byosoft.com.cn>
> Sent: 2022年8月31日 5:47 PM
> To: devel@edk2.groups.io; RichardHo [何明忠] <richar...@ami.com>
> Cc: 'Andrew Fish' <af...@apple.com>; 'Leif Lindholm'
> <quic_llind...@quicinc.com>; 'Michael D Kinney'
> <michael.d.kin...@intel.com>; 'Michael Kubacki'
> <michael.kuba...@microsoft.com>; 'Leif Lindholm' <l...@nuviainc.com>;
> 'Zhiguang Liu' <zhiguang....@intel.com>; 'Hao A Wu'
> <hao.a...@intel.com>; 'Ray Ni' <ray...@intel.com>; TonyLo [羅金松]
> <ton...@ami.com>; 'Demeter, Miki' <miki.deme...@intel.com>
> 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&amp;data=05%7C01%7Crichardho%40ami.com%7C5f95
> 0debbf01487623db08da8b35b846%7C27e97857e15f486cb58e86c2b3040f93
> %7C1%7C0%7C637975360096010785%7CUnknown%7CTWFpbGZsb3d8eyJW
> IjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C
> 3000%7C%7C%7C&amp;sdata=zl%2F13Q5OOLBzRtb37HvG5j0i6x6fh%2BCIo
> 0fqkWnbaJU%3D&amp;reserved=0? If you have no account in
> https://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Fbugz
> il
> la.tianocore.org%2F&amp;data=05%7C01%7Crichardho%40ami.com%7C5f95
> 0debbf01487623db08da8b35b846%7C27e97857e15f486cb58e86c2b3040f93
> %7C1%7C0%7C637975360096010785%7CUnknown%7CTWFpbGZsb3d8eyJW
> IjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C
> 3000%7C%7C%7C&amp;sdata=zl%2F13Q5OOLBzRtb37HvG5j0i6x6fh%2BCIo
> 0fqkWnbaJU%3D&amp;reserved=0, you can ask help for 'Demeter, Miki'
> <miki.
> deme...@intel.com>.
>
>   For the code, what's the purpose of
> UsbNetworkPkg/NetworkCommon/PxeFunction.c? Does NetworkCommon support
> PXE?
>
> Thanks
> Liming
> > -----邮件原件-----
> > 发件人: devel@edk2.groups.io <devel@edk2.groups.io> 代表 RichardHo
> > [何明忠] via groups.io
> > 发送时间: 2022年8月31日 10:31
> > 收件人: devel@edk2.groups.io
> > 抄送: Andrew Fish <af...@apple.com>; Leif Lindholm
> > <quic_llind...@quicinc.com>; Michael D Kinney
> > <michael.d.kin...@intel.com>; Michael Kubacki
> > <michael.kuba...@microsoft.com>; Leif Lindholm <l...@nuviainc.com>;
> > Zhiguang Liu <zhiguang....@intel.com>; Liming Gao
> > <gaolim...@byosoft.com.cn>; Hao A Wu <hao.a...@intel.com>; Ray Ni
> > <ray...@intel.com>; TonyLo [羅金松] <ton...@ami.com>
> > 主题: [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 <richar...@ami.com>
> > Cc: Andrew Fish <af...@apple.com>
> > Cc: Leif Lindholm <quic_llind...@quicinc.com>
> > Cc: Michael D Kinney <michael.d.kin...@intel.com>
> > Cc: Michael Kubacki <michael.kuba...@microsoft.com>
> > Cc: Leif Lindholm <l...@nuviainc.com>
> > Cc: Zhiguang Liu <zhiguang....@intel.com>
> > Acked-by: Michael D Kinney <michael.d.kin...@intel.com>
> > Acked-by: Liming Gao <gaolim...@byosoft.com.cn>
> > Acked-by: Leif Lindholm <quic_llind...@quicinc.com>
> > Reviewed-by: Hao A Wu <hao.a...@intel.com>
> > Reviewed-by: Ray Ni <ray...@intel.com>
> > Reviewed-by: Tony Lo <ton...@ami.com>
> > ---
> >  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: devel+ow...@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-


Reply via email to