diff options
Diffstat (limited to 'xhfc')
-rw-r--r-- | xhfc/base.c | 4 | ||||
-rw-r--r-- | xhfc/xhfc.h | 5 |
2 files changed, 7 insertions, 2 deletions
diff --git a/xhfc/base.c b/xhfc/base.c index a717e55..d835679 100644 --- a/xhfc/base.c +++ b/xhfc/base.c @@ -1122,6 +1122,10 @@ static int __devinit xhfc_init_one(struct pci_dev *pdev, if (!pi->cs_n0) goto err_ioremap_mmbar; + /* we have no LEB CS configured to 32MB, so CS are every 16MB + * see [Intel 320066] 42.4.1.1 Chip Select Address Allocation */ + pi->cs_n1 = pi->cs_n0 + 16 * 1024 * 1024; + pci_set_drvdata(pdev, pi); diff --git a/xhfc/xhfc.h b/xhfc/xhfc.h index 92e889f..1aaa74d 100644 --- a/xhfc/xhfc.h +++ b/xhfc/xhfc.h @@ -149,8 +149,9 @@ struct xhfc { struct xhfc_pi { - struct tlp_leb_regs __iomem *regs; - u8 __iomem *cs_n0; + struct tlp_leb_regs __iomem *regs; /* own ioremap */ + u8 __iomem *cs_n0; /* own ioremap */ + u8 __iomem *cs_n1; /* don't own ioremap */ int irq; struct xhfc xhfc; /* mem for one XHFC */ |