[openib-general] restore missing PCI registers after reset

Michael S. Tsirkin mst at mellanox.co.il
Wed Jul 26 03:29:44 PDT 2006


Quoting r. Greg KH <gregkh at suse.de>:
> Subject: [patch 02/45] IB/mthca: restore missing PCI registers after reset
> ------------------
> mthca does not restore the following PCI-X/PCI Express registers after reset:
>   PCI-X device: PCI-X command register
>   PCI-X bridge: upstream and downstream split transaction registers
>   PCI Express : PCI Express device control and link control registers
> 
> This causes instability and/or bad performance on systems where one of
> these registers is set to a non-default value by BIOS.
> 
> Signed-off-by: Michael S. Tsirkin <mst at mellanox.co.il>
> Signed-off-by: Chris Wright <chrisw at sous-sol.org>
> Signed-off-by: Greg Kroah-Hartman <gregkh at suse.de>

By the way, Greg, this code is completely generic, and the same seems to apply
to all PCI-X/PCI-Express devices - should not pci_restore_state and
friends really know about these registers, as well?

What do you think?

-- 
MST




More information about the general mailing list