aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarcin Wojtas <mw@FreeBSD.org>2021-04-06 12:31:39 +0000
committerMarcin Wojtas <mw@FreeBSD.org>2021-04-06 12:31:39 +0000
commit57dbb3c25936f0d61fef152eb224ca86a73af0e9 (patch)
tree38124f3cb120eef5d175daf1979f47338109f9c3
parent28d14569c8735060d0a1646a3422562c0741ac44 (diff)
downloadsrc-57dbb3c25936f0d61fef152eb224ca86a73af0e9.tar.gz
src-57dbb3c25936f0d61fef152eb224ca86a73af0e9.zip
pci_dw: fix outbound I/O window configuration
Use viewport "2" instead of "0" and change window type from MEM to IO. Without these changes the MEM ATU window can be overwritten with the IO one. Submitted by: Kornel Duleba <mindal@semihalf.com> Obtained from: Semihalf Sponsored by: Marvell Differential revision: https://reviews.freebsd.org/D29516
-rw-r--r--sys/dev/pci/pci_dw.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/dev/pci/pci_dw.c b/sys/dev/pci/pci_dw.c
index 33c6c0b070c3..161a68d2929d 100644
--- a/sys/dev/pci/pci_dw.c
+++ b/sys/dev/pci/pci_dw.c
@@ -231,7 +231,7 @@ pci_dw_setup_hw(struct pci_dw_softc *sc)
/* If we have enouht viewports ..*/
if (sc->num_viewport >= 3 && sc->io_range.size != 0) {
/* Setup outbound I/O window */
- rv = pci_dw_map_out_atu(sc, 0, IATU_CTRL1_TYPE_MEM,
+ rv = pci_dw_map_out_atu(sc, 2, IATU_CTRL1_TYPE_IO,
sc->io_range.host, sc->io_range.pci, sc->io_range.size);
if (rv != 0)
return (rv);