On Tue, Jun 15, 2010 at 02:06:46PM +0900, Isaku Yamahata wrote:
> Don't overwrite pci header type.
> Otherwise, multi function bit which pci_init_header_type() sets
> appropriately is lost.
> Anyway PCI_HEADER_TYPE_NORMAL is zero, so it is unnecessary to zero
> which is already zero cleared.
> 
> Signed-off-by: Isaku Yamahata <yamah...@valinux.co.jp>

...

> diff --git a/hw/apb_pci.c b/hw/apb_pci.c
> index 31c8d70..cdf3bc2 100644
> --- a/hw/apb_pci.c
> +++ b/hw/apb_pci.c
> @@ -428,7 +428,8 @@ static int pbm_pci_host_init(PCIDevice *d)
>                   PCI_STATUS_DEVSEL_MEDIUM);
>      pci_config_set_class(d->config, PCI_CLASS_BRIDGE_HOST);
>      pci_set_byte(d->config + PCI_HEADER_TYPE,
> -                 PCI_HEADER_TYPE_NORMAL);
> +                 (pci_get_byte(d->config + PCI_HEADER_TYPE) &
> +                  PCI_HEADER_TYPE_MULTI_FUNCTION) | PCI_HEADER_TYPE_NORMAL);

what is this doing?

-- 
MST

Reply via email to