Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 02 Sep 2015 10:26:43 -0700
From:      John Baldwin <jhb@freebsd.org>
To:        "Conrad E. Meyer" <cem@freebsd.org>
Cc:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   Re: svn commit: r287403 - head/sys/dev/ioat
Message-ID:  <3589074.YABE6tqvK0@ralph.baldwin.cx>
In-Reply-To: <201509021648.t82Gm451015184@repo.freebsd.org>
References:  <201509021648.t82Gm451015184@repo.freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Wednesday, September 02, 2015 04:48:04 PM Conrad E. Meyer wrote:
> Author: cem
> Date: Wed Sep  2 16:48:03 2015
> New Revision: 287403
> URL: https://svnweb.freebsd.org/changeset/base/287403
> 
> Log:
>   ioat: re-initialize interrupts after resetting hw on BDXDE
>   
>   Resetting some generations of the I/OAT hardware (just BDXDE for now)
>   resets the corresponding MSI-X registers.  So, teardown and
>   re-initialize interrupts after resetting the hardware.
>   
>   Reviewed by:	jimharris
>   Approved by:	markj (mentor)
>   Sponsored by:	EMC / Isilon Storage Division
>   Differential Revision:	https://reviews.freebsd.org/D3549

Alternatively you could use pci_restore_state() (before reset) and
pci_save_state() (after reset) to restore standard PCI config registers
(including MSI/MSI-X) after a reset.

This might be more scalable if you want to ensure other PCI config
registers (e.g. PCI-e capabilities) are restored after a reset.

-- 
John Baldwin



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?3589074.YABE6tqvK0>