[edk2-devel] VirtIO Sound Driver (GSoC 2021)

Ethin Probst harlydavidsen at gmail.com
Tue Apr 6 15:17:35 UTC 2021


I'll attach the bug for the build tools to the BZ shortly.
Laszlo, thanks for that. I don't know their email addresses though.
And yes, I was going to make it device independent, as the majority
(if not all) of UEFI protocols are.

On 4/6/21, Laszlo Ersek <lersek at redhat.com> wrote:
> On 03/31/21 08:41, Nate DeSimone wrote:
>> Another option is to put the protocol definition in MdeModulePkg and
>> mark it with the EDKII_ prefix. For my last “code first” UEFI spec
>> contribution I did this with the PPI that added up getting added.
>
> The new audio protocol should be generic, only its implementation in
> question should be virtio specific.
>
> Please include Gerd Hoffmann (CC'd) in the protocol design, as well as
> the developers of the virtio-sound device model in QEMU.
>
> Thanks
> Laszlo
>
>
>>
>>
>>
>> Thanks,
>>
>> Nate
>>
>>
>>
>> *From: *<devel at edk2.groups.io> on behalf of "Andrew Fish via groups.io"
>> <afish=apple.com at groups.io>
>> *Reply-To: *"devel at edk2.groups.io" <devel at edk2.groups.io>,
>> "afish at apple.com" <afish at apple.com>
>> *Date: *Tuesday, March 30, 2021 at 10:54 PM
>> *To: *edk2-devel-groups-io <devel at edk2.groups.io>,
>> "harlydavidsen at gmail.com" <harlydavidsen at gmail.com>
>> *Cc: *Rafael Rodrigues Machado <rafaelrodrigues.machado at gmail.com>
>> *Subject: *Re: [edk2-devel] VirtIO Sound Driver (GSoC 2021)
>>
>>
>>
>>
>>
>>     On Mar 30, 2021, at 5:01 PM, Ethin Probst <harlydavidsen at gmail.com
>>     <mailto:harlydavidsen at gmail.com>> wrote:
>>
>>
>>
>>     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’d match the patter of OVMF [1] and use
>> OvmfPkg/VirtioSoundDxe/. Maybe even use one of the other drivers as a
>> template.
>>
>>
>>
>> The protocol is more of a public thing. I think eventually we would like
>> to publish the protocol in the UEFI Spec (I can help with that part) and
>> that would mean we put the Protocol definition in
>> MdePkg/Include/Protocol, but we don’t want to do that before it is
>> standardized as that causes compatibility issues. So this is a “code
>> first project” (code prototype and then contribute to the UEFI Forum for
>> inclusion in the specification) so we need to follow some code first
>> rules that I don’t remember of the top of my head? So why not start out
>> the protocol definition 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 not blocked.
>>
>>
>>
>> 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
>>     = UEFI_APPLICATION
>>
>>
>>
>> Thanks,
>>
>>
>>
>> Andrew Fish
>>
>>
>>
>>
>>
>>
>>     On 3/30/21, Ethin Probst via groups.io <http://groups.io/>
>>     <harlydavidsen=gmail.com at groups.io
>>     <mailto:harlydavidsen=gmail.com at 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.
>>
>>         As I said before, I look forward to working with all of you
>>         wonderful
>>         people!
>>
>>         On 3/30/21, Rafael Rodrigues Machado
>>         <rafaelrodrigues.machado at gmail.com
>>         <mailto:rafaelrodrigues.machado at gmail.com>>
>>         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:
>>
>>
>> https://github.com/RafaelRMachado/Msc_UefiHda_PreOs_Accessibility
>>
>>             Thanks
>>             Rafael
>>
>>             Em seg, 29 de mar de 2021 20:24, Ethin Probst
>>             <harlydavidsen at gmail.com>
>>             escreveu:
>>
>>
>>                 Hello everyone,
>>
>>                 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 EDK2
>>                 felt like a really fun thing to do!
>>
>>                 I look forward to working with you guys on this and any
>>                 future projects!
>>                 :-)
>>
>>                 --
>>                 Signed,
>>                 Ethin D. Probst
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>         --
>>         Signed,
>>         Ethin D. Probst
>>
>>
>>
>>
>>
>>
>>
>>     --
>>     Signed,
>>     Ethin D. Probst
>>
>>
>>
>>
>>
>> 
>
>


-- 
Signed,
Ethin D. Probst


-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#73730): https://edk2.groups.io/g/devel/message/73730
Mute This Topic: https://groups.io/mt/81710286/1813853
Group Owner: devel+owner at edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [edk2-devel-archive at redhat.com]
-=-=-=-=-=-=-=-=-=-=-=-






More information about the edk2-devel-archive mailing list