[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH v2] xen/tools: Add 64 bits big bar support



> -----Original Message-----
> From: Keir Fraser [mailto:keir.xen@xxxxxxxxx] On Behalf Of Keir Fraser
> Sent: Tuesday, September 25, 2012 10:13 PM
> To: xen-devel@xxxxxxxxxxxxx
> Cc: ian.campbell@xxxxxxxxxx; Stefano Stabellini; Hao, Xudong;
> jbeulich@xxxxxxxx; Zhang, Xiantao
> Subject: Re: [Xen-devel] [PATCH v2] xen/tools: Add 64 bits big bar support
> 
> 
> 
> 
> On 25/09/2012 04:33, "" <> wrote:
> 
> > Currently it is assumed PCI device BAR access < 4G memory. If there is such 
> > a
> > device whose BAR size is larger than 4G, it must access > 4G memory
> address.
> > This patch enable the 64bits big BAR support on hvmloader.
> >
> > Changes from v1:
> > 1) Set Dynamic MMIO high memory address instead of a fixed number 640G
> > 2) Mask bar_sz earlier to avoid older code changes
> > 3) Add bar size barrier to judge high memory resource
> > 4) Clean up bar64_relocate code
> >
> > Signed-off-by: Xiantao Zhang <xiantao.zhang@xxxxxxxxx>
> > Signed-off-by: Xudong Hao <xudong.hao@xxxxxxxxx>
> 
> ...
> 
> > @@ -258,8 +298,8 @@
> >          resource->base = base;
> >
> >          pci_writel(devfn, bar_reg, bar_data);
> > -        printf("pci dev %02x:%x bar %02x size %08x: %08x\n",
> > -               devfn>>3, devfn&7, bar_reg, bar_sz, bar_data);
> > +        if (using_64bar)
> > +            pci_writel(devfn, bar_reg + 4, bar_data_upper);
> 
> Why is the printf removed?
> 

No special reason. It's a successful print, I'll modify patch if we want to 
remain it.

>  -- Keir
> 
> 
> >          /* Now enable the memory or I/O mapping. */
> >          cmd = pci_readw(devfn, PCI_COMMAND);
> > diff -r dc56a9defa30 tools/firmware/hvmloader/util.h
> > --- a/tools/firmware/hvmloader/util.h Tue Aug 14 10:28:14 2012 +0200
> > +++ b/tools/firmware/hvmloader/util.h Wed Sep 12 14:50:55 2012 +0800
> > @@ -215,6 +215,7 @@
> >  uint32_t rombios_highbios_setup(void);
> >
> >  /* Miscellaneous. */
> > +unsigned int cpu_phys_addr(void);
> >  void cacheattr_init(void);
> >  unsigned long create_mp_tables(void *table);
> >  void hvm_write_smbios_tables(
> >
> > _______________________________________________
> > Xen-devel mailing list
> > Xen-devel@xxxxxxxxxxxxx
> > http://lists.xen.org/xen-devel
> 

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.