Patchwork esp: enable busmaster

login
register
mail settings
Submitter Paolo Bonzini
Date Nov. 20, 2012, 5:33 p.m.
Message ID <1353432821-32517-1-git-send-email-pbonzini@redhat.com>
Download mbox | patch
Permalink /patch/200490/
State New
Headers show

Comments

Paolo Bonzini - Nov. 20, 2012, 5:33 p.m.
The HBA does DMA, thus we must enable the busmaster bit,
otherwise dma access will fail with recent qemu versions.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
---
 src/esp-scsi.c | 2 ++
 1 file modificato, 2 inserzioni(+)
Paolo Bonzini - Nov. 20, 2012, 5:42 p.m.
Il 20/11/2012 18:33, Paolo Bonzini ha scritto:
> The HBA does DMA, thus we must enable the busmaster bit,
> otherwise dma access will fail with recent qemu versions.
> 
> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>

As usual we forget to update SeaBIOS.  We probably want these two from Gerd:

7d05257 (lsi: enable busmaster, 2012-11-20)
455a7c8 (add acpi pmtimer support, 2012-09-06)

and a matching patch to enable bus master DMA in esp.c (just submitted).

The choice is between committing these three patches on top of 1.7.1, or
just picking the top of the SeaBIOS tree.  There hasn't been much action
since 1.7.1 (mostly SeaVGABIOS changes), so I prefer the latter.

Kevin, are you okay with tagging SeaBIOS master as 1.7.2 one of these
days?  Other opinions?

Paolo
Kevin O'Connor - Nov. 21, 2012, 12:08 a.m.
On Tue, Nov 20, 2012 at 06:33:41PM +0100, Paolo Bonzini wrote:
> The HBA does DMA, thus we must enable the busmaster bit,
> otherwise dma access will fail with recent qemu versions.

Thanks - I applied this.

-Kevin
Kevin O'Connor - Nov. 21, 2012, 1:43 a.m.
On Tue, Nov 20, 2012 at 06:42:25PM +0100, Paolo Bonzini wrote:
> Il 20/11/2012 18:33, Paolo Bonzini ha scritto:
> > The HBA does DMA, thus we must enable the busmaster bit,
> > otherwise dma access will fail with recent qemu versions.
> > 
> > Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
> 
> As usual we forget to update SeaBIOS.  We probably want these two from Gerd:
> 
> 7d05257 (lsi: enable busmaster, 2012-11-20)
> 455a7c8 (add acpi pmtimer support, 2012-09-06)
> 
> and a matching patch to enable bus master DMA in esp.c (just submitted).
> 
> The choice is between committing these three patches on top of 1.7.1, or
> just picking the top of the SeaBIOS tree.  There hasn't been much action
> since 1.7.1 (mostly SeaVGABIOS changes), so I prefer the latter.
> 
> Kevin, are you okay with tagging SeaBIOS master as 1.7.2 one of these
> days?  Other opinions?

A new release can be produced if desired.  Given that there isn't much
new since 1.7.1 I too would prefer to just push forward to 1.7.2.

-Kevin
Gerd Hoffmann - Nov. 21, 2012, 6:43 a.m.
Hi,

> A new release can be produced if desired.  Given that there isn't much
> new since 1.7.1 I too would prefer to just push forward to 1.7.2.

Agree.  I'll prepare a seabios update pull once the tag is there.

cheers,
  Gerd
Gerd Hoffmann - Jan. 7, 2013, 2:29 p.m.
Hi,

>> Kevin, are you okay with tagging SeaBIOS master as 1.7.2 one of these
>> days?  Other opinions?
> 
> A new release can be produced if desired.  Given that there isn't much
> new since 1.7.1 I too would prefer to just push forward to 1.7.2.

Ping?  Meanwhile 1.4 freeze is in sight (soft freeze in one week, hard
freeze + -rc0 feb 1st).

cheers,
  Gerd
Kevin O'Connor - Jan. 7, 2013, 11:34 p.m.
On Mon, Jan 07, 2013 at 03:29:33PM +0100, Gerd Hoffmann wrote:
>   Hi,
> 
> >> Kevin, are you okay with tagging SeaBIOS master as 1.7.2 one of these
> >> days?  Other opinions?
> > 
> > A new release can be produced if desired.  Given that there isn't much
> > new since 1.7.1 I too would prefer to just push forward to 1.7.2.
> 
> Ping?  Meanwhile 1.4 freeze is in sight (soft freeze in one week, hard
> freeze + -rc0 feb 1st).

Lets target Jan 18th for the next SeaBIOS release.

-Kevin
Brad - Jan. 7, 2013, 11:51 p.m.
On Mon, Jan 07, 2013 at 06:34:01PM -0500, Kevin O'Connor wrote:
> On Mon, Jan 07, 2013 at 03:29:33PM +0100, Gerd Hoffmann wrote:
> >   Hi,
> > 
> > >> Kevin, are you okay with tagging SeaBIOS master as 1.7.2 one of these
> > >> days?  Other opinions?
> > > 
> > > A new release can be produced if desired.  Given that there isn't much
> > > new since 1.7.1 I too would prefer to just push forward to 1.7.2.
> > 
> > Ping?  Meanwhile 1.4 freeze is in sight (soft freeze in one week, hard
> > freeze + -rc0 feb 1st).

Why is 1.4 being rushed so quick? Is this because 1.3.0 was so broken or
is there something else?
Kevin O'Connor - Jan. 7, 2013, 11:56 p.m.
On Mon, Jan 07, 2013 at 06:51:03PM -0500, Brad Smith wrote:
> On Mon, Jan 07, 2013 at 06:34:01PM -0500, Kevin O'Connor wrote:
> > On Mon, Jan 07, 2013 at 03:29:33PM +0100, Gerd Hoffmann wrote:
> > >   Hi,
> > > 
> > > >> Kevin, are you okay with tagging SeaBIOS master as 1.7.2 one of these
> > > >> days?  Other opinions?
> > > > 
> > > > A new release can be produced if desired.  Given that there isn't much
> > > > new since 1.7.1 I too would prefer to just push forward to 1.7.2.
> > > 
> > > Ping?  Meanwhile 1.4 freeze is in sight (soft freeze in one week, hard
> > > freeze + -rc0 feb 1st).
> 
> Why is 1.4 being rushed so quick? Is this because 1.3.0 was so broken or
> is there something else?

I don't understand your questions.  The 1.4 release is for QEMU and I
don't control its release schedule.

-Kevin
Brad - Jan. 8, 2013, 12:07 a.m.
On Mon, Jan 07, 2013 at 06:56:00PM -0500, Kevin O'Connor wrote:
> On Mon, Jan 07, 2013 at 06:51:03PM -0500, Brad Smith wrote:
> > On Mon, Jan 07, 2013 at 06:34:01PM -0500, Kevin O'Connor wrote:
> > > On Mon, Jan 07, 2013 at 03:29:33PM +0100, Gerd Hoffmann wrote:
> > > >   Hi,
> > > > 
> > > > >> Kevin, are you okay with tagging SeaBIOS master as 1.7.2 one of these
> > > > >> days?  Other opinions?
> > > > > 
> > > > > A new release can be produced if desired.  Given that there isn't much
> > > > > new since 1.7.1 I too would prefer to just push forward to 1.7.2.
> > > > 
> > > > Ping?  Meanwhile 1.4 freeze is in sight (soft freeze in one week, hard
> > > > freeze + -rc0 feb 1st).
> > 
> > Why is 1.4 being rushed so quick? Is this because 1.3.0 was so broken or
> > is there something else?
> 
> I don't understand your questions.  The 1.4 release is for QEMU and I
> don't control its release schedule.

Of course the 1.4 release is for QEMU, that's pretty obvious. Sorry the
question wasn't necessarily for you. I just noticed what was quoted when
you had replied.
Paolo Bonzini - Jan. 9, 2013, 9:15 a.m.
Il 08/01/2013 00:51, Brad Smith ha scritto:
>>>>> > > >> Kevin, are you okay with tagging SeaBIOS master as 1.7.2 one of these
>>>>> > > >> days?  Other opinions?
>>>> > > > 
>>>> > > > A new release can be produced if desired.  Given that there isn't much
>>>> > > > new since 1.7.1 I too would prefer to just push forward to 1.7.2.
>>> > > 
>>> > > Ping?  Meanwhile 1.4 freeze is in sight (soft freeze in one week, hard
>>> > > freeze + -rc0 feb 1st).
> Why is 1.4 being rushed so quick? Is this because 1.3.0 was so broken or
> is there something else?

Anthony decides, as release manager.

One reason I recall, is that releases in Mar/Jun/Sep/Dec do not work
well with Fedora and Ubuntu freeze dates.  Feb/May/Aug/Nov should work a
little better.

Paolo

Patch

diff --git a/src/esp-scsi.c b/src/esp-scsi.c
index b795012..c43e55b 100644
--- a/src/esp-scsi.c
+++ b/src/esp-scsi.c
@@ -202,6 +202,8 @@  init_esp_scsi(struct pci_device *pci)
             pci_bdf_to_bus(bdf), pci_bdf_to_dev(bdf),
             pci_bdf_to_fn(bdf), iobase);
 
+    pci_config_maskw(bdf, PCI_COMMAND, 0, PCI_COMMAND_MASTER);
+
     // reset
     outb(ESP_CMD_RESET, iobase + ESP_CMD);