From: tinhnguyen@os.amperecomputing.com
To: "RichardHo [何明忠]" <richardho@ami.com>, devel@edk2.groups.io
Subject: Re: [edk2-devel] [PATCH 1/3] UsbNetworkPkg/UsbRndis: Add USB RNDIS devices support
Date: Sun, 08 Jan 2023 02:41:37 -0800 [thread overview]
Message-ID: <1271.1673174497155150644@groups.io> (raw)
In-Reply-To: <DM5PR10MB1660FC17D4B02A66687D96D7B0E29@DM5PR10MB1660.namprd10.prod.outlook.com>
[-- Attachment #1: Type: text/plain, Size: 1640 bytes --]
Hi RichardHo,
This driver has interested me.
I've ported your driver to tinh_ampere_edk2 ( https://github.com/tinhnampere/edk2/tree/support_usbnet ) and tinh_ampere_edk2_platform ( https://github.com/tinhnampere/edk2-platforms/tree/support_usbnet ).
I'm having the same issue with our USB CDC ECM driver, which we've already published here Ampere USB CDC Net ( https://github.com/AmpereComputing/edk2-platforms/tree/ampere/Platform/Ampere/AmperePlatformPkg/Drivers/UsbCdcEthernetDxe ).
That is a bug in polling performance; we also have a thread with the same issue USB Net for Aarch64 platform ( https://edk2.groups.io/g/devel/topic/30905775#9791, )
Currently, on the Jade platform (use your USB net driver), performance is quite low and the OS cannot be booted.
The root cause is that we spend a long time waiting for USB UsbBulkTransfer to complete, but if there is no data to communicate
-> it will always time out.
I have no idea why the polling time of MNP is 10 ms
#define MNP_SYS_POLL_INTERVAL (10 * TICKS_PER_MS) // 10 milliseconds,
But I don't see why it should be changed; it could have some unexpected consequences for other platforms.
I have a workaground for Ampere usb net driver: I include a function like "filter," "slow down," or something similar. If there are a lot of transaction timeouts, I reject some income requests from the upper layer. I've already tried it on your driver tinh_ampere_edk2 ( https://github.com/tinhnampere/edk2/tree/support_usbnet ) , and it works .
Anyway, hope you can solve this problem; I think many platforms are experiencing the same issue.
Thanks,
Tinh Nguyen
[-- Attachment #2: Type: text/html, Size: 2749 bytes --]
next prev parent reply other threads:[~2023-01-08 10:41 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-12-08 3:44 [PATCH 1/3] UsbNetworkPkg/UsbRndis: Add USB RNDIS devices support RichardHo [何明忠]
2022-12-08 4:41 ` [edk2-devel] " Rebecca Cran
2022-12-08 4:57 ` Rebecca Cran
2022-12-12 5:48 ` RichardHo [何明忠]
2023-01-08 10:41 ` tinhnguyen [this message]
2023-01-09 23:50 ` Michael Brown
2023-01-12 8:36 ` RichardHo [何明忠]
2023-01-20 21:36 ` Rebecca Cran
2023-02-05 8:04 ` Tinh Nguyen
2023-02-05 10:26 ` Michael Brown
2023-01-10 5:07 ` Rebecca Cran
2023-01-11 7:34 ` tinhnguyen
2023-01-11 9:55 ` Michael Brown
2023-01-11 10:56 ` Tinh Nguyen
[not found] ` <53d2211e-d8ad-fafe-38ad-814ed77d19cf@ipxe.org>
2023-01-11 1:11 ` Michael Brown
2023-01-11 1:17 ` Michael Brown
2023-01-11 9:47 ` RichardHo [何明忠]
-- strict thread matches above, loose matches on Subject: below --
2022-10-03 9:26 RichardHo [何明忠]
2022-12-01 15:46 ` [edk2-devel] " Rebecca Cran
2022-12-02 10:42 ` RichardHo [何明忠]
2022-12-02 10:09 ` Michael Brown
2022-12-02 10:42 ` RichardHo [何明忠]
2022-12-02 11:49 ` Chang, Abner
2022-12-02 23:27 ` Rebecca Cran
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-list from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1271.1673174497155150644@groups.io \
--to=devel@edk2.groups.io \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox