From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([140.186.70.92]:54716) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QpKrK-00034G-Ou for qemu-devel@nongnu.org; Fri, 05 Aug 2011 09:54:44 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1QpKrJ-0001mc-SH for qemu-devel@nongnu.org; Fri, 05 Aug 2011 09:54:42 -0400 Received: from mail-yi0-f45.google.com ([209.85.218.45]:53045) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QpKrJ-0001mY-Pm for qemu-devel@nongnu.org; Fri, 05 Aug 2011 09:54:41 -0400 Received: by yih10 with SMTP id 10so385351yih.4 for ; Fri, 05 Aug 2011 06:54:41 -0700 (PDT) Message-ID: <4E3BF61F.1060107@codemonkey.ws> Date: Fri, 05 Aug 2011 08:54:39 -0500 From: Anthony Liguori MIME-Version: 1.0 References: <1312463195-13605-1-git-send-email-avi@redhat.com> <1312463195-13605-4-git-send-email-avi@redhat.com> In-Reply-To: <1312463195-13605-4-git-send-email-avi@redhat.com> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [PATCH v3 03/39] vmsvga: don't remember pci BAR address in callback any more List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Avi Kivity Cc: qemu-devel@nongnu.org, kvm@vger.kernel.org, "Michael S. Tsirkin" On 08/04/2011 08:05 AM, Avi Kivity wrote: > We're going to remove the callback, so we can't use it to save the > address. Use the pci API instead. > > Reviewed-by: Richard Henderson > Signed-off-by: Avi Kivity Reviewed-by: Anthony Liguori Regards, Anthony Liguori > --- > hw/vmware_vga.c | 12 ++++++------ > 1 files changed, 6 insertions(+), 6 deletions(-) > > diff --git a/hw/vmware_vga.c b/hw/vmware_vga.c > index 354c221..190b005 100644 > --- a/hw/vmware_vga.c > +++ b/hw/vmware_vga.c > @@ -52,8 +52,6 @@ struct vmsvga_state_s { > int on; > } cursor; > > - target_phys_addr_t vram_base; > - > int index; > int scratch_size; > uint32_t *scratch; > @@ -761,8 +759,11 @@ static uint32_t vmsvga_value_read(void *opaque, uint32_t address) > case SVGA_REG_BYTES_PER_LINE: > return ((s->depth + 7)>> 3) * s->new_width; > > - case SVGA_REG_FB_START: > - return s->vram_base; > + case SVGA_REG_FB_START: { > + struct pci_vmsvga_state_s *pci_vmsvga > + = container_of(s, struct pci_vmsvga_state_s, chip); > + return pci_get_bar_addr(&pci_vmsvga->card, 1); > + } > > case SVGA_REG_FB_OFFSET: > return 0x0; > @@ -1247,14 +1248,13 @@ static void pci_vmsvga_map_mem(PCIDevice *pci_dev, int region_num, > struct vmsvga_state_s *s =&d->chip; > ram_addr_t iomemtype; > > - s->vram_base = addr; > #ifdef DIRECT_VRAM > iomemtype = cpu_register_io_memory(vmsvga_vram_read, > vmsvga_vram_write, s, DEVICE_NATIVE_ENDIAN); > #else > iomemtype = s->vga.vram_offset | IO_MEM_RAM; > #endif > - cpu_register_physical_memory(s->vram_base, s->vga.vram_size, > + cpu_register_physical_memory(addr, s->vga.vram_size, > iomemtype); > > s->vga.map_addr = addr;