public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
From: "Wu, Hao A" <hao.a.wu@intel.com>
To: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Cc: "edk2-devel@lists.01.org" <edk2-devel@lists.01.org>,
	"Justen, Jordan L" <jordan.l.justen@intel.com>,
	Laszlo Ersek <lersek@redhat.com>, "Ni, Ray" <ray.ni@intel.com>
Subject: Re: [PATCH v1 0/2] Ovmf: Stop using ISA drivers within IntelFrameworkModulePkg
Date: Mon, 18 Mar 2019 03:45:27 +0000	[thread overview]
Message-ID: <B80AF82E9BFB8E4FBD8C89DA810C6A093C8ABCCC@SHSMSX104.ccr.corp.intel.com> (raw)
In-Reply-To: <CAKv+Gu9-+Y-17zzZrdADaug+CiEyJ-1dssAOeRH0yGC=nc+9CA@mail.gmail.com>

> -----Original Message-----
> From: Ard Biesheuvel [mailto:ard.biesheuvel@linaro.org]
> Sent: Friday, March 15, 2019 7:10 PM
> To: Wu, Hao A
> Cc: edk2-devel@lists.01.org; Justen, Jordan L; Laszlo Ersek; Ni, Ray
> Subject: Re: [PATCH v1 0/2] Ovmf: Stop using ISA drivers within
> IntelFrameworkModulePkg
> 
> On Fri, 15 Mar 2019 at 08:16, Hao Wu <hao.a.wu@intel.com> wrote:
> >
> > This series will update the OVMF to stop using the ISA drivers within
> > IntelFrameworkModulePkg.
> >
> > As the replacement, a new OVMF Super I/O bus driver has been add which
> > will install the Super I/O protocol for ISA serial and PS2 keyboard
> > devices. By doing so, these devices can be managed by:
> >
> >   MdeModulePkg/Bus/Pci/PciSioSerialDxe/PciSioSerialDxe.inf
> >   MdeModulePkg/Bus/Isa/Ps2KeyboardDxe/Ps2KeyboardDxe.inf
> >
> > respectively.
> >
> 
> Just a couple of notes from my side - I'm sure Laszlo will have a much
> longer list :-)
> 
> - Dropping the floppy driver is fine with me.
> - What is OVMF specific about this driver? Is it only the hardcoded
> list of COM1/COM2/PS2 keyboard? If so, should we split this into a
> driver and a library class, where the driver lives in MdeModulePkg,
> and the library is implemented in the context of OVMF?

Hello Ard,

I think the special thing for this one is that:
For QEMU, it does not have a Super I/O (SIO) chip. While, as far as I
know, the SIO chip exists on other platforms. The driver proposed here
simulates the behavior of an SIO chip. IMO, if we find more platforms that
do not have a SIO chip, we can convert the driver into a general one.

Also, for the implementation of the services in the Super I/O protocol,
the proposed driver just does the minimal effort in order to support the
serial/PS2 keyboard.

> - Regardless of the previous, adding the new driver should be a patch
> of its own.

Agree. I will adopt the detailed approach suggested by Jordan for this one.
Thanks for the feedback.

> - I spotted an incorrect reference to PCI_IO_DEV in a comment (patch #2)

Thanks for the catch. I will address this comment typo in the next version of
the series.


I will wait a little longer to see if Laszlo has additional
comments/feedbacks on this.

Best Regards,
Hao Wu

> 
> 
> 
> >
> > Tests done:
> > A. GCC5 & VS2015x86 tool chains build pass
> > B. Launch QEMU (2.4.50, Windows) with command:
> >    > qemu-system-x86_64.exe -pflash <SOME_PATH>\OVMF.fd -serial
> file:1.txt -serial file:2.txt
> >
> >    Able to see the ISA COM1/COM2 UART and PS2Keyboard devices under
> Shell
> >    using command 'devtree';
> >
> >    Both the serials and PS2 keyboard are working fine;
> >
> > Cc: Jordan Justen <jordan.l.justen@intel.com>
> > Cc: Laszlo Ersek <lersek@redhat.com>
> > Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
> > Cc: Ray Ni <ray.ni@intel.com>
> >
> > Hao Wu (2):
> >   OvmfPkg: Drop the ISA Floppy device support
> >   OvmfPkg: Add an Super IO bus driver to replace the current ISA support
> >
> >  OvmfPkg/OvmfPkgIa32.dsc           |  10 +-
> >  OvmfPkg/OvmfPkgIa32X64.dsc        |  10 +-
> >  OvmfPkg/OvmfPkgX64.dsc            |  10 +-
> >  OvmfPkg/OvmfPkgIa32.fdf           |  10 +-
> >  OvmfPkg/OvmfPkgIa32X64.fdf        |  10 +-
> >  OvmfPkg/OvmfPkgX64.fdf            |  10 +-
> >  OvmfPkg/SioBusDxe/SioBusDxe.inf   |  54 ++
> >  OvmfPkg/SioBusDxe/SioBusDxe.h     | 332 +++++++++++
> >  OvmfPkg/SioBusDxe/SioService.h    | 221 +++++++
> >  OvmfPkg/SioBusDxe/ComponentName.c | 167 ++++++
> >  OvmfPkg/SioBusDxe/SioBusDxe.c     | 622 ++++++++++++++++++++
> >  OvmfPkg/SioBusDxe/SioService.c    | 405 +++++++++++++
> >  OvmfPkg/SioBusDxe/SioBusDxe.uni   |  21 +
> >  13 files changed, 1846 insertions(+), 36 deletions(-)
> >  create mode 100644 OvmfPkg/SioBusDxe/SioBusDxe.inf
> >  create mode 100644 OvmfPkg/SioBusDxe/SioBusDxe.h
> >  create mode 100644 OvmfPkg/SioBusDxe/SioService.h
> >  create mode 100644 OvmfPkg/SioBusDxe/ComponentName.c
> >  create mode 100644 OvmfPkg/SioBusDxe/SioBusDxe.c
> >  create mode 100644 OvmfPkg/SioBusDxe/SioService.c
> >  create mode 100644 OvmfPkg/SioBusDxe/SioBusDxe.uni
> >
> > --
> > 2.12.0.windows.1
> >

  parent reply	other threads:[~2019-03-18  3:45 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-03-15  7:16 [PATCH v1 0/2] Ovmf: Stop using ISA drivers within IntelFrameworkModulePkg Hao Wu
2019-03-15  7:16 ` [PATCH v1 1/2] OvmfPkg: Drop the ISA Floppy device support Hao Wu
2019-03-15  7:16 ` [PATCH v1 2/2] OvmfPkg: Add an Super IO bus driver to replace the current ISA support Hao Wu
2019-03-15 11:09 ` [PATCH v1 0/2] Ovmf: Stop using ISA drivers within IntelFrameworkModulePkg Ard Biesheuvel
2019-03-15 18:16   ` Jordan Justen
2019-03-18  3:47     ` Wu, Hao A
2019-03-18  3:45   ` Wu, Hao A [this message]
2019-03-20 12:34     ` Laszlo Ersek
2019-03-21  6:44       ` Wu, Hao A
2019-03-21 10:08         ` Ard Biesheuvel
2019-03-21 19:03           ` Laszlo Ersek
2019-03-22  1:33             ` Wu, Hao A
2019-03-22  9:25               ` Laszlo Ersek
2019-03-22  9:41                 ` Ard Biesheuvel
2019-03-22 10:55                   ` Laszlo Ersek
2019-03-25  2:19                     ` Wu, Hao A

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-list from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=B80AF82E9BFB8E4FBD8C89DA810C6A093C8ABCCC@SHSMSX104.ccr.corp.intel.com \
    --to=devel@edk2.groups.io \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox