From owner-soc-status@freebsd.org Fri Jun 17 18:52:32 2016 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 B7A10A78DEB for ; Fri, 17 Jun 2016 18:52:32 +0000 (UTC) (envelope-from ionutalex.teaca@gmail.com) Received: from mail-oi0-x243.google.com (mail-oi0-x243.google.com [IPv6:2607:f8b0:4003:c06::243]) (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 7C2632D14 for ; Fri, 17 Jun 2016 18:52:32 +0000 (UTC) (envelope-from ionutalex.teaca@gmail.com) Received: by mail-oi0-x243.google.com with SMTP id d132so15299570oig.3 for ; Fri, 17 Jun 2016 11:52:32 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:from:date:message-id:subject:to; bh=V2hHmKuEkyMfnihxMVrnqnC3PsHzIItv1LYuG/fcXgo=; b=ubbaV+UVncEVRaPtmABx608aIJgfnPylndk1fFGrWoxMYNpi34w4+RbzhePkKYQ2qy suRoASQ7RP8CyP9R7NtitWYYcvJwJ9aNCXvfSuUfpCIx634bpygbaFzYHqDPFP2lDGhX rupF9XFydZgL7Ts//ju5YUpBA9enL6C8Wx91eYKWJmN32zPHAqh2SMKbyL6AtzcLaB+U JliU30n/Xtz0y4pcxFZ3LNXK5QVZZaeY6JlrjwoVHQ2vGWkIcaONvl2KG1gekBh+pLWQ N5KS6ie7ZnlPT78S8Cvcf4Tl9HLPMH3dWqqbxch1xuJ8g9NTBxhZumoNrJygf2ZKliDo 3xPg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to; bh=V2hHmKuEkyMfnihxMVrnqnC3PsHzIItv1LYuG/fcXgo=; b=ir3ScTMyct2o8dUGzO0L3xIMgLFsxzq0WKTWi9P/lMryKruFKQM+mctgcq7IjerZRS ylSbXmos7FBcp+OErxZsQfcP7DiPLG7+WqgvIYcrwJc5DOC4e22NRBM8292acNCycZnq rV/5bmGz5prP5nsPKxZaRgfRKqnGfAvaNpeiMYJkx25xwPmvsJTPEHCLguun8BYz/aqN ECgWqcHjPNz1JP+7Mj0+xToCrlMF7ZKoDt8/bbMObhuTrEmE3Tm036wMthJT03a1Q8pO aeBOtmOrG/tafblLLDfew3q0t1vvAK8hjxmwUlTTwFlEYIUQmqJAkv3TCXwhX73cV28G H7gQ== X-Gm-Message-State: ALyK8tLqWjoMO0jFpqWYDQ5vGuU0tawE7EiS+yua8u7GiFr8tqVI/QDSmER1SiGC3La6Znas+xWpWbaB2awkbA== X-Received: by 10.157.61.195 with SMTP id l61mr2727762otc.31.1466189551850; Fri, 17 Jun 2016 11:52:31 -0700 (PDT) MIME-Version: 1.0 Received: by 10.182.16.166 with HTTP; Fri, 17 Jun 2016 11:52:31 -0700 (PDT) In-Reply-To: References: From: Alex Teaca Date: Fri, 17 Jun 2016 21:52:31 +0300 Message-ID: Subject: Re: [GSOC 2016] HD Audio Emulation For Bhyve Status To: soc-status@freebsd.org Content-Type: text/plain; charset=UTF-8 X-Content-Filtered-By: Mailman/MimeDel 2.1.22 X-BeenThere: soc-status@freebsd.org X-Mailman-Version: 2.1.22 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: Fri, 17 Jun 2016 18:52:32 -0000 Hi, I added a pin widget (Line-out) and now the Audio Output Widget is enabled. The codec is installed as pcm0: root@vm_hda:~ # cat /dev/sndstat Installed devices: pcm0: (play) default The next step is to implement the stream management operations such as start_stream and stop_stream. I have taken a look on the Stream management chapter from the HDA specification in order to get familiar with these operations and study the driver implementation (hdaa_audio_setup, hdac_stream_start, hdac_stream_stop) to see what registers are programmed and what commands are sent to the codec. Together with Peter and Alexander we chose the design of the interaction between the HDA controller, codecs and Audio player regarding the stream management. Thanks, Alex On Mon, Jun 6, 2016 at 10:01 PM, Alex Teaca wrote: > Hi, > > Here is the status with the features I have implemented so far. > > - set up the HDA controller as a PCI device in bhyve > - design the layout of registers and implement the read and write access > to the registers > - implement the CORB and RIRB mechanisms in order to get commands from > driver and respond back > - add the hdac_codec module and implement the interface of communication > between the hda controller and codec > - describe the hda codec parameters for each node (ROOT, FG and AUDIO > OUTPUT) > - handle the GET_PARAMETER verb > > At the moment there is only one widget: the Autio Output Widget and the > hda driver has disabled it because it does not find any Pin widget. > > The plan is to add the Pin output widget and to continue with the streams > data in order to play some samples. > > Thanks, > Alex > >