From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from rn-mailsvcp-ppex-lapp34.apple.com (rn-mailsvcp-ppex-lapp34.apple.com [17.179.253.43]) by mx.groups.io with SMTP id smtpd.web08.2596.1617166939591191515 for ; Tue, 30 Mar 2021 22:02:19 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@apple.com header.s=20180706 header.b=SCrwUNML; spf=pass (domain: apple.com, ip: 17.179.253.43, mailfrom: afish@apple.com) Received: from pps.filterd (rn-mailsvcp-ppex-lapp34.rno.apple.com [127.0.0.1]) by rn-mailsvcp-ppex-lapp34.rno.apple.com (8.16.0.43/8.16.0.43) with SMTP id 12V4rIGt028402; Tue, 30 Mar 2021 22:02:19 -0700 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=apple.com; h=from : message-id : content-type : mime-version : subject : date : in-reply-to : cc : to : references; s=20180706; bh=NFZ+z4Ac8NVNXxYfP7oxCs7aHXIFshytUM9bX1/3UtY=; b=SCrwUNMLJR9kRVe39TDfWqCxdOnNeh/C1PfGP7VE2eFhjT6onSR4ScTwOeJKZV67aprf qF5CLDAqiYLZ/0hHE2B7Md1v2QcaUZMmxPWxWTyg9gGT/Ja8vekOTR4NHo2+zvmCvjPK mHhSfNKr1ruCeCA9oDQPTtaTGG7hHh/izVqZa/oU3AKTB6U84e+qYiyM9gMYQ78qcGLs 2r3XqMzG0SaKjZ8P5X5f3J4jJW68uJ6nTkyXpfOGOVyPwJmuPmzMqO05UhneD88MTz0B pVWBrik4sAAZkQ68aY5jc0cfukcX9KFmw1vjzFjAyNRTe29j92fO/FfbvYno8KxSyuiW IA== Received: from rn-mailsvcp-mta-lapp03.rno.apple.com (rn-mailsvcp-mta-lapp03.rno.apple.com [10.225.203.151]) by rn-mailsvcp-ppex-lapp34.rno.apple.com with ESMTP id 37maamw3pt-2 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128 verify=NO); Tue, 30 Mar 2021 22:02:19 -0700 Received: from rn-mailsvcp-mmp-lapp02.rno.apple.com (rn-mailsvcp-mmp-lapp02.rno.apple.com [17.179.253.15]) by rn-mailsvcp-mta-lapp03.rno.apple.com (Oracle Communications Messaging Server 8.1.0.7.20201203 64bit (built Dec 3 2020)) with ESMTPS id <0QQT00SQDHZVRA00@rn-mailsvcp-mta-lapp03.rno.apple.com>; Tue, 30 Mar 2021 22:02:19 -0700 (PDT) Received: from process_milters-daemon.rn-mailsvcp-mmp-lapp02.rno.apple.com by rn-mailsvcp-mmp-lapp02.rno.apple.com (Oracle Communications Messaging Server 8.1.0.7.20201203 64bit (built Dec 3 2020)) id <0QQT00300HWDXR00@rn-mailsvcp-mmp-lapp02.rno.apple.com>; Tue, 30 Mar 2021 22:02:19 -0700 (PDT) X-Va-A: X-Va-T-CD: 7b14d6a7a32af921a367ac8b06702e34 X-Va-E-CD: 4730c80ee67030d4f2c83e40b4ab0357 X-Va-R-CD: 6f0325faf294bd23a6d751c620be9d51 X-Va-CD: 0 X-Va-ID: f5bfe98f-37b7-48ad-bc88-e859b19d6756 X-V-A: X-V-T-CD: 7b14d6a7a32af921a367ac8b06702e34 X-V-E-CD: 4730c80ee67030d4f2c83e40b4ab0357 X-V-R-CD: 6f0325faf294bd23a6d751c620be9d51 X-V-CD: 0 X-V-ID: 149a5d14-0f7d-419b-8c0d-854f8f446204 X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:6.0.369,18.0.761 definitions=2021-03-31_01:2021-03-30,2021-03-31 signatures=0 Received: from [17.235.48.95] (unknown [17.235.48.95]) by rn-mailsvcp-mmp-lapp02.rno.apple.com (Oracle Communications Messaging Server 8.1.0.7.20201203 64bit (built Dec 3 2020)) with ESMTPSA id <0QQT00TAPHZRGQ00@rn-mailsvcp-mmp-lapp02.rno.apple.com>; Tue, 30 Mar 2021 22:02:18 -0700 (PDT) From: "Andrew Fish" Message-id: MIME-version: 1.0 (Mac OS X Mail 14.0 \(3654.20.0.2.1\)) Subject: Re: [edk2-devel] VirtIO Sound Driver (GSoC 2021) Date: Tue, 30 Mar 2021 22:02:15 -0700 In-reply-to: Cc: Rafael Rodrigues Machado To: edk2-devel-groups-io , harlydavidsen@gmail.com References: <16713E6D64EE917D.25648@groups.io> X-Mailer: Apple Mail (2.3654.20.0.2.1) X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:6.0.369,18.0.761 definitions=2021-03-31_01:2021-03-30,2021-03-31 signatures=0 Content-type: multipart/alternative; boundary="Apple-Mail=_C3DF43A8-DAC6-49BC-9648-246928D6B6CC" --Apple-Mail=_C3DF43A8-DAC6-49BC-9648-246928D6B6CC Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=utf-8 > On Mar 30, 2021, at 5:01 PM, Ethin Probst wrot= e: >=20 > I'm wondering where exactly I should add the VirtIO sound protocol. I > just familiarized myself with the build system and am about to test it > by building OVMF if possible, but I'm wondering where I should > actually put the protocol and all that stuff. Maybe there's > documentation I've missed as well. Ethin, For the driver I=E2=80=99d match the patter of OVMF [1] and use OvmfPkg/Vi= rtioSoundDxe/. Maybe even use one of the other drivers as a template.=20 The protocol is more of a public thing. I think eventually we would like t= o publish the protocol in the UEFI Spec (I can help with that part) and tha= t would mean we put the Protocol definition in MdePkg/Include/Protocol, but= we don=E2=80=99t want to do that before it is standardized as that causes = compatibility issues. So this is a =E2=80=9Ccode first project=E2=80=9D (co= de prototype and then contribute to the UEFI Forum for inclusion in the spe= cification) so we need to follow some code first rules that I don=E2=80=99t= remember of the top of my head? So why not start out the protocol definiti= on OvmfPkg/Include/Protocol. You can also add a test application looks like= you can just use the root [2] of OVMF for that. That way the project is no= t blocked.=20 We can have a conversation on the mailing list about better places to put = stuff, and it should be easy enough to move stuff around if everything else= is working. [1] find OvmfPkg -iname '*Virtio*.inf' OvmfPkg/VirtioPciDeviceDxe/VirtioPciDeviceDxe.inf OvmfPkg/VirtioScsiDxe/VirtioScsi.inf OvmfPkg/Library/VirtioMmioDeviceLib/VirtioMmioDeviceLib.inf OvmfPkg/Library/VirtioLib/VirtioLib.inf OvmfPkg/VirtioGpuDxe/VirtioGpu.inf OvmfPkg/VirtioBlkDxe/VirtioBlk.inf OvmfPkg/Virtio10Dxe/Virtio10.inf OvmfPkg/VirtioNetDxe/VirtioNet.inf OvmfPkg/VirtioRngDxe/VirtioRng.inf [2] /Volumes/Case/edk2-github/OvmfPkg>git grep APPLICATION -- *.inf | grep= MODULE_TYPE EnrollDefaultKeys/EnrollDefaultKeys.inf:13: MODULE_TYPE = =3D UEFI_APPLICATION Thanks, Andrew Fish >=20 > On 3/30/21, Ethin Probst via groups.io > > wrote: >> I agree. Plus, it gives me a chance to finally learn the EDK2 build >> system and how it works! I've been working on a hobby OS as a side >> project and, though learning from other code examples from OSes is >> fun, I have to say that learning from the firmware code like from >> SeaBIOS has been some of the most enlightening and interesting times >> thus far. >> Thanks for the link to your code, Rafael; once I get virtIO support >> in, I can work on HDA support, though I might tackle USB support >> second and HDA third. We'll see, but VirtIO definitely is coming >> first. >>=20 >> As I said before, I look forward to working with all of you wonderful >> people! >>=20 >> On 3/30/21, Rafael Rodrigues Machado > >> wrote: >>> This would be amazing so people can continue my work related to >>> accessibility at BIOS. Something desired by the blind people since the >>> 90's >>> Just for reference, this is what I have done: >>>=20 >>> https://github.com/RafaelRMachado/Msc_UefiHda_PreOs_Accessibility >>>=20 >>> Thanks >>> Rafael >>>=20 >>> Em seg, 29 de mar de 2021 20:24, Ethin Probst >>> escreveu: >>>=20 >>>> Hello everyone, >>>>=20 >>>> This is the first time I've ever contributed to EDK2. As part of GSoC >>>> 2021, I have submitted a proposal to implement a UEFI audio output >>>> protocol that will utilize the VirtIO sound driver. I've already >>>> submitted a draft proposal, and apologize if I've done things out of >>>> order. This is my first time doing GSoC 2021, and contributing to EDK= 2 >>>> felt like a really fun thing to do! >>>>=20 >>>> I look forward to working with you guys on this and any future projec= ts! >>>> :-) >>>>=20 >>>> -- >>>> Signed, >>>> Ethin D. Probst >>>>=20 >>>>=20 >>>>=20 >>>>=20 >>>>=20 >>>>=20 >>>=20 >>=20 >>=20 >> -- >> Signed, >> Ethin D. Probst >>=20 >>=20 >>=20 >>=20 >>=20 >>=20 >=20 >=20 > --=20 > Signed, > Ethin D. Probst >=20 >=20 >=20 --Apple-Mail=_C3DF43A8-DAC6-49BC-9648-246928D6B6CC Content-Transfer-Encoding: quoted-printable Content-Type: text/html; charset=utf-8

On Mar 30, 2021, at 5:01 PM= , Ethin Probst <ha= rlydavidsen@gmail.com> wrote:

I'm wonder= ing where exactly I should add the VirtIO sound protocol. I
just familiarized myself with the bui= ld system and am about to test it
by building OVMF if possible, but I'm wondering where I shoul= d
actually put the prot= ocol and all that stuff. Maybe there's
documentation I've missed as well.

Ethi= n,

For the driver I=E2= =80=99d match the patter of OVMF [1] and use OvmfPkg/VirtioSoundDxe/. Mayb= e even use one of the other drivers as a template. 

The protocol is more of a public th= ing. I think eventually we would like to publish the protocol in the UEFI S= pec (I can help with that part) and that would mean we put the Protocol def= inition in MdePkg/Include/Protocol, but we don=E2=80=99t want to do that be= fore it is standardized as that causes compatibility issues. So this is a = =E2=80=9Ccode first project=E2=80=9D (code prototype and then contribute t= o the UEFI Forum for inclusion in the specification) so we need to follow s= ome code first rules that I don=E2=80=99t remember of the top of my head? S= o why not start out the protocol definition OvmfPkg/Include/Protocol. You c= an also add a test application looks like you can just use the root [2] of = OVMF for that. That way the project is not blocked. 

We can have a conversation on t= he mailing list about better places to put stuff, and it should be easy eno= ugh to move stuff around if everything else is working.  

[1] find OvmfPkg  -iname '*Virtio*.i= nf'
OvmfPkg/VirtioPciDe= viceDxe/VirtioPciDeviceDxe.inf
OvmfPkg/VirtioScsiDxe/VirtioScsi.inf
OvmfPkg/Library/VirtioMmioDeviceLib/VirtioMmioDeviceL= ib.inf
OvmfPkg/Librar= y/VirtioLib/VirtioLib.inf
OvmfPkg/VirtioGpuDxe/VirtioGpu.inf
OvmfPkg/VirtioBlkDxe/VirtioBlk.inf
OvmfPkg/Virtio10Dxe/Virtio10.inf
OvmfPkg/VirtioNetDxe/VirtioNet.inf
OvmfPkg/VirtioRngDxe/Virti= oRng.inf

[2= ] /V= olumes/Case/edk2-github/OvmfPkg>git gre= p APPLICATION -- *.inf | grep MODULE_TYPE
EnrollDefaultKeys/EnrollDefaultKeys.inf:13:  MODULE= _TYPE                    = = =3D UEFI_APPLICATION

Thanks,

Andrew Fish



On 3/30/21, Ethin Probst via groups.io
<= harlydavidsen=3Dgmail.com@groups.io> wrote:
I agree. Plus, it gives = me a chance to finally learn the EDK2 build
system and how it= works! I've been working on a hobby OS as a side
project and= , though learning from other code examples from OSes is
fun, = I have to say that learning from the firmware code like from
= SeaBIOS has been some of the most enlightening and interesting times
thus far.
Thanks for the link to your code, Rafael; o= nce I get virtIO support
in, I can work on HDA support, thoug= h I might tackle USB support
second and HDA third. We'll see,= but VirtIO definitely is coming
first.

As I said before, I look forward to working with all of you wonderf= ul
people!

On 3/30/21, Rafael Ro= drigues Machado <rafaelrodrigues.machado@gmail.com>
wrote:
This would be amazing so pe= ople can continue my work related to
accessibility at BIOS. S= omething desired by the blind people since the
90's
Just for reference, this is what I have done:

https://github.com/RafaelRMachado/Msc_UefiHda_PreOs_Ac= cessibility

Thanks
Rafael
Em seg, 29 de mar de 2021 20:24, Ethin Probst &l= t;harlydavidsen@gmail.com>
escreveu:

Hello everyone,
=
This is the first time I've ever contributed to EDK2. As par= t of GSoC
2021, I have submitted a proposal to implement a UE= FI audio output
protocol that will utilize the VirtIO sound d= river. I've already
submitted a draft proposal, and apologize= if I've done things out of
order. This is my first time doin= g GSoC 2021, and contributing to EDK2
felt like a really fun = thing to do!

I look forward to working with yo= u guys on this and any future projects!
:-)
--
Signed,
Ethin D. Probst









--
Signed,
Ethin D. Probst






-- 
Signed,
Eth= in D. Probst


=

--Apple-Mail=_C3DF43A8-DAC6-49BC-9648-246928D6B6CC--