From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-yb0-x236.google.com (mail-yb0-x236.google.com [IPv6:2607:f8b0:4002:c09::236]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id C0B2B219392F4 for ; Mon, 10 Apr 2017 09:13:37 -0700 (PDT) Received: by mail-yb0-x236.google.com with SMTP id i124so34247791ybc.3 for ; Mon, 10 Apr 2017 09:13:37 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=broadcom.com; s=google; h=from:references:in-reply-to:mime-version:thread-index:date :message-id:subject:to; bh=9hP51CH58ryx1yli5Ca+iJfT0df2L/yK5frA4WP5Gks=; b=WCA77uIQn+RCIRafsCl07lkKdlGze2UvzjNrb1G++aFPU1P8QZ5LbnPz9IQ4v8uM2z tAKgeJDyM2iMPni0hP5DPioDwsOw4r6/A12jXHfhsxiHVK/JhpCE3Fz1sEH+NoqA7T1T fdVAaA1UCCRNU4yF95nGbIAVTiLDx4JCItJcE= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:references:in-reply-to:mime-version :thread-index:date:message-id:subject:to; bh=9hP51CH58ryx1yli5Ca+iJfT0df2L/yK5frA4WP5Gks=; b=CNCoEkj2CXm2ajMiQ9q59HYRVnzvo0saUDLvU5J06qqWzWODmz+AloZQrEKEisKRrN xCm4he9pLWKlIcvciPDi7QMMr4y46oVU6LVLzPRa440KVpy9PlabNfIRLek2UAYXQ4Nh 2IYoLstyaSYGbE2KgRDJV68ocNettMV0zKUtlYeAUlbvFF5Cibd3HzFpyIMpVyHv5lqk x4pPEtrxBKsoerBrA4DG5rm/juMMrnY/x6j7Z4kFp4NWPqXZ/af4gCVZOfRjULurjDH/ Axnc7wmO32LXXDcPsMEOhO5Oedhl3uLXG0Vzt1foUqfMVmtFwV+W3AsRvX+1ayFH/+hS tMLg== X-Gm-Message-State: AFeK/H3elq0E8soVzWzhVJGPCt284T9WsH0CRdbF9Dc6mvC130TPIUtC/vJWQ7O1roH4OWEJOCqULfd1b8Uh5wfK X-Received: by 10.13.221.79 with SMTP id g76mr37093162ywe.326.1491840816640; Mon, 10 Apr 2017 09:13:36 -0700 (PDT) From: Vladimir Olovyannikov References: <4adbd13b509299cf2a0fd734c0c901f0@mail.gmail.com> <7F1BAD85ADEA444D97065A60D2E97EE5699E345F@SHSMSX101.ccr.corp.intel.com> In-Reply-To: <7F1BAD85ADEA444D97065A60D2E97EE5699E345F@SHSMSX101.ccr.corp.intel.com> MIME-Version: 1.0 X-Mailer: Microsoft Outlook 14.0 Thread-Index: AQGphfpRcUM4bh0wayzByukX8tkstQKvRD8Yofui3/A= Date: Mon, 10 Apr 2017 09:13:35 -0700 Message-ID: <9506b7c30f8d14d9b20be1647123e45f@mail.gmail.com> To: "Tian, Feng" , edk2-devel@lists.01.org Subject: Re: Using USB-Ethernet adapter in UEFI on an arm64 platform X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.22 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 10 Apr 2017 16:13:38 -0000 Content-Type: text/plain; charset=UTF-8 Hi Feng, Thank you for your explanation. I have Cisco 300M AX88772A-based adapter, so AX88772 (with no "b") driver was picked up. I had to modify it with circular buffer to get ping and tftp going. Also I had to receive packets in GetStatus rather than in SN_Receive (otherwise I could never get into the Shell). This way I have ping with response time of approx. 200ms, and tftp working, albeit it is slow. So do you suggest me to use Ax88772b driver for AX88772A/AX88772 usb-ethernet adapter? Also maybe you know if there are UEFI drivers for other USB-ethernet adapters (maybe 1G?) available somewhere? Thank you, Vladimir -----Original Message----- From: Tian, Feng [mailto:feng.tian@intel.com] Sent: April-09-17 9:49 PM To: Vladimir Olovyannikov; edk2-devel@lists.01.org Cc: Tian, Feng Subject: RE: [edk2] Using USB-Ethernet adapter in UEFI on an arm64 platform Hi, Vladimir, Which usb2lan driver you are using for AX88772 adpater? The one in OptionRomPkg\Bus\Usb\UsbNetworking has bug on the polling performance. The one in OptionRomPkg\Bus\Usb\UsbNetworking\Ax88772b is better but if there is no data received, the polling operation still wastes some time. The root cause about the low performance of polling is because USB spec doesn't clearly define which value should be returned if user requests Bulk Read operation but there is no data. Some data-streaming usb devices, such as Realtek usb2lan, return success with data length setting to 0, but others, such as AX88772, just keep active and wait for data always. From BIOS view, we have to return EFI_TIMEOUT for latter case to avoid system hang. That's why you see the low performance for polling operation in no-data case. Thanks Feng -----Original Message----- From: edk2-devel [mailto:edk2-devel-bounces@lists.01.org] On Behalf Of Vladimir Olovyannikov Sent: Saturday, April 8, 2017 3:06 AM To: edk2-devel@lists.01.org Subject: [edk2] Using USB-Ethernet adapter in UEFI on an arm64 platform Hi, I would like to enable Ethernet using USB-Ethernet AX88772 adapter in the UEFI on an armv8 arm64 platform. Ethernet polling is done by MnpPoll() periodically. This creates a burden on the system so that UEFI boots in 1 minute to the Shell due to receive polling. The USB operation is very resource expensive which causes UEFI to choke up. There is DisableBackgroundPolling option in the EFI_MANAGED_NETWORK_CONFIG_DATA structure, but it is turned off by all other drivers (DNSDxe, Ip4Dxe, ArpDxe...). Can anybody advise what I could do? Mass storage/keyboard/etc. all work fine... Thank you, Vladimir _______________________________________________ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel