From owner-soc-status@freebsd.org Sun Jun 28 16:16:06 2015 Return-Path: Delivered-To: soc-status@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 1F21098F348 for ; Sun, 28 Jun 2015 16:16:06 +0000 (UTC) (envelope-from ionutalex.teaca@gmail.com) Received: from mail-oi0-x22e.google.com (mail-oi0-x22e.google.com [IPv6:2607:f8b0:4003:c06::22e]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id E52F9198E; Sun, 28 Jun 2015 16:16:02 +0000 (UTC) (envelope-from ionutalex.teaca@gmail.com) Received: by oiyy130 with SMTP id y130so103904222oiy.0; Sun, 28 Jun 2015 09:16:02 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=/TMg/KSzDQ07+kMq6SWwXPVwkLvBBmjSJih+Zs13KQ0=; b=o6poZ5fUJlKyVwIW6UGf1ONRVPr/az0wd30KPv2rHxMKIrL58XkG5ToyJl0Vtei+xD 1mSy4X+hcXOt37QksvV4w/EFX1Fv/KiDlTASJNaHeSUCr8SsPilPNtBJzaztG9Yk4S9Z UXPpO4HwV5kYPcZqlxTBiMJNSXxksIleOjJ5WWgfV4qvyg+m463oVhai85NynFZ00vwG XiA39pVb4GisPfLFRml7a1/RP22cBXzpwvau6AgcObWqNiKynB4G3n2gXv2oLZvqEc0p v5JvqPztj6nXrx1vmNu4Td3Y4O5EhoPuWUdAI3X4I88xTz89d7eaDT0efxCrtgkqKccd Qr5g== MIME-Version: 1.0 X-Received: by 10.182.24.97 with SMTP id t1mr10469756obf.32.1435508162060; Sun, 28 Jun 2015 09:16:02 -0700 (PDT) Received: by 10.76.84.37 with HTTP; Sun, 28 Jun 2015 09:16:02 -0700 (PDT) In-Reply-To: References: Date: Sun, 28 Jun 2015 19:16:02 +0300 Message-ID: Subject: Re: GSOC 2015 - NE2000 emulation in bhyve Status From: Alex Teaca To: soc-status@freebsd.org Cc: Gavin Atkinson Content-Type: text/plain; charset=UTF-8 X-Content-Filtered-By: Mailman/MimeDel 2.1.20 X-BeenThere: soc-status@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: Summer of Code Status Reports and Discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 28 Jun 2015 16:16:06 -0000 Hi, >From the last status report: implement 2 commits: - parse the input string parameter and get the tap name and mac address from it - implement some logging and asserts related with the receive buffer ring Also, I start to think about the receive protocol which is the next step of the implementation by reading the specification from the datasheet and understanding the implementation of the ED driver regarding the way it receives packets from the NE2000 memory. It is pretty clear what we need to implement and after a short design I will be able to implement. Thanks, Alex On Sun, Jun 14, 2015 at 11:37 PM, Alex Teaca wrote: > Hi, > > At the moment I am able to configure an IP address on the network > interface corresponding to the NE2000 NIC. When I ping > to the host IP, the tcpdump catches both ARP Request (sent by the guest > using the NE2000 card) and an ARP Reply > sent by the host OS. So, there is implemented the transmission protocol. > For reception, the packets are only read > from the tap device when it is notified by the mevent mechanism. > > For mode details, see the commits. > > Thanks, > Alex > > > On Tue, Jun 2, 2015 at 7:45 PM, Alex Teaca > wrote: > >> Hi, >> >> I've started the implementation of the NE2000 module. At the moment the >> ED driver is able to probe the emulated device (RealTek 8029) and add it as >> a network interface. >> >> Some of the features which are implemented: >> - implement some logging support >> - clone the /usr/src/sys/dev/ed/if_edreg.h register interface from the ed >> driver into the bhyve tree sources >> - implement the NE2000 registers support and an API to access the NIC >> registers (get and set by offset) >> - design and implement the Remote DMA protocol so the ED driver can store >> and load from the NIC's RAM memory >> >> Thanks, >> Alex >> >> >