Lines Matching refs:pcicptr

22 	struct tx4927_pcic_reg __iomem *pcicptr;  member
26 struct tx4927_pcic_reg __iomem *pcicptr) in set_tx4927_pcicptr() argument
32 pcicptrs[i].pcicptr = pcicptr; in set_tx4927_pcicptr()
39 pcicptrs[i].pcicptr = pcicptr; in set_tx4927_pcicptr()
53 return pcicptrs[i].pcicptr; in get_tx4927_pcicptr()
59 struct tx4927_pcic_reg __iomem *pcicptr) in mkaddr() argument
67 &pcicptr->g2pcfgadrs); in mkaddr()
69 __raw_writel((__raw_readl(&pcicptr->pcistatus) & 0x0000ffff) in mkaddr()
71 &pcicptr->pcistatus); in mkaddr()
75 static int check_abort(struct tx4927_pcic_reg __iomem *pcicptr) in check_abort() argument
80 while (__raw_readl(&pcicptr->pcicstatus) & TX4927_PCIC_PCICSTATUS_IWB) in check_abort()
82 if (__raw_readl(&pcicptr->pcistatus) in check_abort()
84 __raw_writel((__raw_readl(&pcicptr->pcistatus) & 0x0000ffff) in check_abort()
86 &pcicptr->pcistatus); in check_abort()
94 static u8 icd_readb(int offset, struct tx4927_pcic_reg __iomem *pcicptr) in icd_readb() argument
99 return __raw_readb((void __iomem *)&pcicptr->g2pcfgdata + offset); in icd_readb()
101 static u16 icd_readw(int offset, struct tx4927_pcic_reg __iomem *pcicptr) in icd_readw() argument
106 return __raw_readw((void __iomem *)&pcicptr->g2pcfgdata + offset); in icd_readw()
108 static u32 icd_readl(struct tx4927_pcic_reg __iomem *pcicptr) in icd_readl() argument
110 return __raw_readl(&pcicptr->g2pcfgdata); in icd_readl()
113 struct tx4927_pcic_reg __iomem *pcicptr) in icd_writeb() argument
118 __raw_writeb(val, (void __iomem *)&pcicptr->g2pcfgdata + offset); in icd_writeb()
121 struct tx4927_pcic_reg __iomem *pcicptr) in icd_writew() argument
126 __raw_writew(val, (void __iomem *)&pcicptr->g2pcfgdata + offset); in icd_writew()
128 static void icd_writel(u32 val, struct tx4927_pcic_reg __iomem *pcicptr) in icd_writel() argument
130 __raw_writel(val, &pcicptr->g2pcfgdata); in icd_writel()
142 struct tx4927_pcic_reg __iomem *pcicptr = pci_bus_to_pcicptr(bus); in tx4927_pci_config_read() local
144 if (mkaddr(bus, devfn, where, pcicptr)) { in tx4927_pci_config_read()
150 *val = icd_readb(where & 3, pcicptr); in tx4927_pci_config_read()
153 *val = icd_readw(where & 3, pcicptr); in tx4927_pci_config_read()
156 *val = icd_readl(pcicptr); in tx4927_pci_config_read()
158 return check_abort(pcicptr); in tx4927_pci_config_read()
164 struct tx4927_pcic_reg __iomem *pcicptr = pci_bus_to_pcicptr(bus); in tx4927_pci_config_write() local
166 if (mkaddr(bus, devfn, where, pcicptr)) in tx4927_pci_config_write()
170 icd_writeb(val, where & 3, pcicptr); in tx4927_pci_config_write()
173 icd_writew(val, where & 3, pcicptr); in tx4927_pci_config_write()
176 icd_writel(val, pcicptr); in tx4927_pci_config_write()
178 return check_abort(pcicptr); in tx4927_pci_config_write()
219 void __init tx4927_pcic_setup(struct tx4927_pcic_reg __iomem *pcicptr, in tx4927_pcic_setup() argument
225 set_tx4927_pcicptr(channel, pcicptr); in tx4927_pcic_setup()
230 __raw_readl(&pcicptr->pciid) >> 16, in tx4927_pcic_setup()
231 __raw_readl(&pcicptr->pciid) & 0xffff, in tx4927_pcic_setup()
232 __raw_readl(&pcicptr->pciccrev) & 0xff, in tx4927_pcic_setup()
239 __raw_writel(__raw_readl(&pcicptr->pciccfg) in tx4927_pcic_setup()
244 &pcicptr->pciccfg); in tx4927_pcic_setup()
249 &pcicptr->g2piomask); in tx4927_pcic_setup()
257 , &pcicptr->g2piogbase); in tx4927_pcic_setup()
259 &pcicptr->g2piopbase); in tx4927_pcic_setup()
261 __raw_writel(0, &pcicptr->g2pmmask[i]); in tx4927_pcic_setup()
262 ____raw_writeq(0, &pcicptr->g2pmgbase[i]); in tx4927_pcic_setup()
263 ____raw_writeq(0, &pcicptr->g2pmpbase[i]); in tx4927_pcic_setup()
268 &pcicptr->g2pmmask[0]); in tx4927_pcic_setup()
275 , &pcicptr->g2pmgbase[0]); in tx4927_pcic_setup()
278 &pcicptr->g2pmpbase[0]); in tx4927_pcic_setup()
281 __raw_writel(0, &pcicptr->p2giopbase); /* 256B */ in tx4927_pcic_setup()
282 ____raw_writeq(0, &pcicptr->p2giogbase); in tx4927_pcic_setup()
284 __raw_writel(0, &pcicptr->p2gm0plbase); in tx4927_pcic_setup()
285 __raw_writel(0, &pcicptr->p2gm0pubase); in tx4927_pcic_setup()
292 , &pcicptr->p2gmgbase[0]); in tx4927_pcic_setup()
294 __raw_writel(0xffffffff, &pcicptr->p2gm1plbase); in tx4927_pcic_setup()
295 __raw_writel(0xffffffff, &pcicptr->p2gm1pubase); in tx4927_pcic_setup()
296 ____raw_writeq(0, &pcicptr->p2gmgbase[1]); in tx4927_pcic_setup()
298 __raw_writel(0xffffffff, &pcicptr->p2gm2pbase); /* 1MB */ in tx4927_pcic_setup()
299 ____raw_writeq(0, &pcicptr->p2gmgbase[2]); in tx4927_pcic_setup()
304 &pcicptr->pciccfg); in tx4927_pcic_setup()
307 __raw_writel(__raw_readl(&pcicptr->pciccfg) in tx4927_pcic_setup()
309 &pcicptr->pciccfg); in tx4927_pcic_setup()
312 __raw_writel(__raw_readl(&pcicptr->pciccfg) in tx4927_pcic_setup()
314 &pcicptr->pciccfg); in tx4927_pcic_setup()
316 __raw_writel(__raw_readl(&pcicptr->pciccfg) in tx4927_pcic_setup()
318 &pcicptr->pciccfg); in tx4927_pcic_setup()
321 __raw_writel(0, &pcicptr->pcicfg1); in tx4927_pcic_setup()
323 __raw_writel((__raw_readl(&pcicptr->g2ptocnt) & ~0xffff) in tx4927_pcic_setup()
326 &pcicptr->g2ptocnt); in tx4927_pcic_setup()
329 __raw_writel(TX4927_PCIC_PCICSTATUS_ALL, &pcicptr->pcicstatus); in tx4927_pcic_setup()
331 __raw_writel(TX4927_PCIC_PCICSTATUS_ALL, &pcicptr->pcicmask); in tx4927_pcic_setup()
333 __raw_writel(TX4927_PCIC_G2PSTATUS_ALL, &pcicptr->g2pstatus); in tx4927_pcic_setup()
335 __raw_writel(TX4927_PCIC_G2PSTATUS_ALL, &pcicptr->g2pmask); in tx4927_pcic_setup()
337 __raw_writel((__raw_readl(&pcicptr->pcistatus) & 0x0000ffff) in tx4927_pcic_setup()
339 &pcicptr->pcistatus); in tx4927_pcic_setup()
341 __raw_writel(TX4927_PCIC_PCISTATUS_ALL, &pcicptr->pcimask); in tx4927_pcic_setup()
345 __raw_writel(TX4927_PCIC_PBACFG_RPBA, &pcicptr->pbacfg); in tx4927_pcic_setup()
346 __raw_writel(0, &pcicptr->pbabm); in tx4927_pcic_setup()
348 __raw_writel(TX4927_PCIC_PBACFG_PBAEN, &pcicptr->pbacfg); in tx4927_pcic_setup()
353 &pcicptr->pcistatus); in tx4927_pcic_setup()
359 __raw_readl(&pcicptr->pcistatus) & 0xffff, in tx4927_pcic_setup()
360 __raw_readl(&pcicptr->pcimask) & 0xffff, in tx4927_pcic_setup()
361 __raw_readl(&pcicptr->g2ptocnt) & 0xff, in tx4927_pcic_setup()
362 (__raw_readl(&pcicptr->g2ptocnt) & 0xff00) >> 8, in tx4927_pcic_setup()
363 (__raw_readl(&pcicptr->pciccfg) >> 16) & 0xfff); in tx4927_pcic_setup()
366 static void tx4927_report_pcic_status1(struct tx4927_pcic_reg __iomem *pcicptr) in tx4927_report_pcic_status1() argument
368 __u16 pcistatus = (__u16)(__raw_readl(&pcicptr->pcistatus) >> 16); in tx4927_report_pcic_status1()
369 __u32 g2pstatus = __raw_readl(&pcicptr->g2pstatus); in tx4927_report_pcic_status1()
370 __u32 pcicstatus = __raw_readl(&pcicptr->pcicstatus); in tx4927_report_pcic_status1()
429 if (pcicptrs[i].pcicptr) in tx4927_report_pcic_status()
430 tx4927_report_pcic_status1(pcicptrs[i].pcicptr); in tx4927_report_pcic_status()
434 static void tx4927_dump_pcic_settings1(struct tx4927_pcic_reg __iomem *pcicptr) in tx4927_dump_pcic_settings1() argument
437 __u32 __iomem *preg = (__u32 __iomem *)pcicptr; in tx4927_dump_pcic_settings1()
439 printk(KERN_INFO "tx4927 pcic (0x%p) settings:", pcicptr); in tx4927_dump_pcic_settings1()
463 if (pcicptrs[i].pcicptr) in tx4927_dump_pcic_settings()
464 tx4927_dump_pcic_settings1(pcicptrs[i].pcicptr); in tx4927_dump_pcic_settings()
471 struct tx4927_pcic_reg __iomem *pcicptr = in tx4927_pcierr_interrupt() local
477 tx4927_report_pcic_status1(pcicptr); in tx4927_pcierr_interrupt()
481 __raw_writel((__raw_readl(&pcicptr->pcistatus) & 0x0000ffff) in tx4927_pcierr_interrupt()
483 &pcicptr->pcistatus); in tx4927_pcierr_interrupt()
484 __raw_writel(TX4927_PCIC_G2PSTATUS_ALL, &pcicptr->g2pstatus); in tx4927_pcierr_interrupt()
485 __raw_writel(TX4927_PCIC_PBASTATUS_ALL, &pcicptr->pbastatus); in tx4927_pcierr_interrupt()
486 __raw_writel(TX4927_PCIC_PCICSTATUS_ALL, &pcicptr->pcicstatus); in tx4927_pcierr_interrupt()
490 tx4927_dump_pcic_settings1(pcicptr); in tx4927_pcierr_interrupt()
497 struct tx4927_pcic_reg __iomem *pcicptr = pci_bus_to_pcicptr(dev->bus); in tx4927_quirk_slc90e66_bridge() local
499 if (!pcicptr) in tx4927_quirk_slc90e66_bridge()
501 if (__raw_readl(&pcicptr->pbacfg) & TX4927_PCIC_PBACFG_PBAEN) { in tx4927_quirk_slc90e66_bridge()
503 __raw_writel(TX4927_PCIC_PBACFG_RPBA, &pcicptr->pbacfg); in tx4927_quirk_slc90e66_bridge()
509 __raw_writel(0x72543610, &pcicptr->pbareqport); in tx4927_quirk_slc90e66_bridge()
510 __raw_writel(0, &pcicptr->pbabm); in tx4927_quirk_slc90e66_bridge()
512 __raw_writel(TX4927_PCIC_PBACFG_FIXPA, &pcicptr->pbacfg); in tx4927_quirk_slc90e66_bridge()
516 &pcicptr->pbacfg); in tx4927_quirk_slc90e66_bridge()
518 __raw_readl(&pcicptr->pbareqport)); in tx4927_quirk_slc90e66_bridge()