• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /netgear-R7000-V1.0.7.12_1.2.5/components/opensource/linux/linux-2.6.36/drivers/char/

Lines Matching refs:panelp

421 static int	stl_cd1400panelinit(struct stlbrd *brdp, struct stlpanel *panelp);
422 static void stl_cd1400portinit(struct stlbrd *brdp, struct stlpanel *panelp, struct stlport *portp);
435 static void stl_cd1400eiointr(struct stlpanel *panelp, unsigned int iobase);
436 static void stl_cd1400echintr(struct stlpanel *panelp, unsigned int iobase);
437 static void stl_cd1400txisr(struct stlpanel *panelp, int ioaddr);
438 static void stl_cd1400rxisr(struct stlpanel *panelp, int ioaddr);
439 static void stl_cd1400mdmisr(struct stlpanel *panelp, int ioaddr);
450 static int stl_sc26198panelinit(struct stlbrd *brdp, struct stlpanel *panelp);
451 static void stl_sc26198portinit(struct stlbrd *brdp, struct stlpanel *panelp, struct stlport *portp);
465 static void stl_sc26198intr(struct stlpanel *panelp, unsigned int iobase);
478 int (*panelinit)(struct stlbrd *brdp, struct stlpanel *panelp);
479 void (*portinit)(struct stlbrd *brdp, struct stlpanel *panelp, struct stlport *portp);
491 void (*intr)(struct stlpanel *panelp, unsigned int iobase);
497 #define stl_panelinit (* ((uart_t *) panelp->uartp)->panelinit)
1391 struct stlpanel *panelp;
1413 panelp = brdp->panels[panelnr];
1414 if (panelp == NULL)
1417 for (portnr = 0; portnr < panelp->nrports; portnr++,
1419 portp = panelp->ports[portnr];
1466 struct stlpanel *panelp;
1471 panelp = brdp->panels[0];
1472 iobase = panelp->iobase;
1475 (* panelp->isr)(panelp, iobase);
1489 struct stlpanel *panelp;
1500 panelp = brdp->bnk2panel[bnknr];
1501 (* panelp->isr)(panelp, (ioaddr & 0xfffc));
1519 struct stlpanel *panelp;
1528 panelp = brdp->bnk2panel[bnknr];
1529 (* panelp->isr)(panelp, (ioaddr & 0xfffc));
1544 struct stlpanel *panelp;
1554 panelp = brdp->bnk2panel[bnknr];
1555 (* panelp->isr)(panelp, (ioaddr & 0xfffc));
1574 struct stlpanel *panelp;
1583 panelp = brdp->bnk2panel[bnknr];
1584 (* panelp->isr)(panelp, (ioaddr & 0xfffc));
1598 static int __devinit stl_initports(struct stlbrd *brdp, struct stlpanel *panelp)
1604 pr_debug("stl_initports(brdp=%p,panelp=%p)\n", brdp, panelp);
1606 chipmask = stl_panelinit(brdp, panelp);
1612 for (i = 0; i < panelp->nrports; i++) {
1623 portp->brdnr = panelp->brdnr;
1624 portp->panelnr = panelp->panelnr;
1625 portp->uartp = panelp->uartp;
1635 panelp->ports[i] = portp;
1636 stl_portinit(brdp, panelp, portp);
1644 struct stlpanel *panelp;
1650 panelp = brdp->panels[j];
1651 if (panelp == NULL)
1654 portp = panelp->ports[k];
1665 kfree(panelp);
1677 struct stlpanel *panelp;
1776 panelp = kzalloc(sizeof(struct stlpanel), GFP_KERNEL);
1777 if (!panelp) {
1784 panelp->magic = STL_PANELMAGIC;
1785 panelp->brdnr = brdp->brdnr;
1786 panelp->panelnr = 0;
1787 panelp->nrports = brdp->nrports;
1788 panelp->iobase = brdp->ioaddr1;
1789 panelp->hwid = status;
1791 panelp->uartp = &stl_sc26198uart;
1792 panelp->isr = stl_sc26198intr;
1794 panelp->uartp = &stl_cd1400uart;
1795 panelp->isr = stl_cd1400eiointr;
1798 brdp->panels[0] = panelp;
1830 struct stlpanel *panelp;
1964 panelp = kzalloc(sizeof(struct stlpanel), GFP_KERNEL);
1965 if (!panelp) {
1971 panelp->magic = STL_PANELMAGIC;
1972 panelp->brdnr = brdp->brdnr;
1973 panelp->panelnr = panelnr;
1974 panelp->iobase = ioaddr;
1975 panelp->pagenr = nxtid;
1976 panelp->hwid = status;
1977 brdp->bnk2panel[banknr] = panelp;
1982 panelp->uartp = &stl_sc26198uart;
1983 panelp->isr = stl_sc26198intr;
1985 panelp->nrports = 16;
1986 brdp->bnk2panel[banknr] = panelp;
1991 panelp->nrports = 8;
1993 panelp->uartp = &stl_cd1400uart;
1994 panelp->isr = stl_cd1400echintr;
1996 panelp->nrports = 16;
1997 panelp->ackmask = 0x80;
2000 brdp->bnk2panel[banknr] = panelp;
2005 panelp->nrports = 8;
2006 panelp->ackmask = 0xc0;
2012 brdp->nrports += panelp->nrports;
2013 brdp->panels[panelnr++] = panelp;
2252 struct stlpanel *panelp;
2274 panelp = brdp->panels[i];
2276 stl_brdstats.panels[i].hwid = panelp->hwid;
2277 stl_brdstats.panels[i].nrports = panelp->nrports;
2292 struct stlpanel *panelp;
2301 panelp = brdp->panels[panelnr];
2302 if (panelp == NULL)
2304 if (portnr < 0 || (unsigned int)portnr >= panelp->nrports)
2306 return panelp->ports[portnr];
2554 static int stl_cd1400panelinit(struct stlbrd *brdp, struct stlpanel *panelp)
2561 pr_debug("stl_panelinit(brdp=%p,panelp=%p)\n", brdp, panelp);
2564 BRDENABLE(panelp->brdnr, panelp->pagenr);
2570 nrchips = panelp->nrports / CD1400_PORTS;
2573 outb((panelp->pagenr + (i >> 1)), brdp->ioctrl);
2574 ioaddr = panelp->iobase;
2576 ioaddr = panelp->iobase + (EREG_BANKSIZE * (i >> 1));
2591 panelp->brdnr, panelp->panelnr, i);
2599 BRDDISABLE(panelp->brdnr);
2610 static void stl_cd1400portinit(struct stlbrd *brdp, struct stlpanel *panelp, struct stlport *portp)
2613 pr_debug("stl_cd1400portinit(brdp=%p,panelp=%p,portp=%p)\n", brdp,
2614 panelp, portp);
2616 if ((brdp == NULL) || (panelp == NULL) ||
2621 portp->ioaddr = panelp->iobase + (((brdp->brdtype == BRD_ECHPCI) ||
2624 portp->pagenr = panelp->pagenr + (portp->portnr >> 3);
3199 static void stl_cd1400eiointr(struct stlpanel *panelp, unsigned int iobase)
3203 pr_debug("stl_cd1400eiointr(panelp=%p,iobase=%x)\n", panelp, iobase);
3208 if (panelp->nrports > 4) {
3214 stl_cd1400rxisr(panelp, iobase);
3216 stl_cd1400txisr(panelp, iobase);
3218 stl_cd1400mdmisr(panelp, iobase);
3229 static void stl_cd1400echintr(struct stlpanel *panelp, unsigned int iobase)
3233 pr_debug("stl_cd1400echintr(panelp=%p,iobase=%x)\n", panelp, iobase);
3240 stl_cd1400rxisr(panelp, iobase);
3242 stl_cd1400txisr(panelp, iobase);
3244 stl_cd1400mdmisr(panelp, iobase);
3297 static void stl_cd1400txisr(struct stlpanel *panelp, int ioaddr)
3305 pr_debug("stl_cd1400txisr(panelp=%p,ioaddr=%x)\n", panelp, ioaddr);
3308 if (((ioack & panelp->ackmask) != 0) ||
3313 portp = panelp->ports[(ioack >> 3)];
3382 static void stl_cd1400rxisr(struct stlpanel *panelp, int ioaddr)
3390 pr_debug("stl_cd1400rxisr(panelp=%p,ioaddr=%x)\n", panelp, ioaddr);
3393 if ((ioack & panelp->ackmask) != 0) {
3397 portp = panelp->ports[(ioack >> 3)];
3480 static void stl_cd1400mdmisr(struct stlpanel *panelp, int ioaddr)
3486 pr_debug("stl_cd1400mdmisr(panelp=%p)\n", panelp);
3489 if (((ioack & panelp->ackmask) != 0) ||
3494 portp = panelp->ports[(ioack >> 3)];
3560 static int stl_sc26198panelinit(struct stlbrd *brdp, struct stlpanel *panelp)
3565 pr_debug("stl_sc26198panelinit(brdp=%p,panelp=%p)\n", brdp, panelp);
3567 BRDENABLE(panelp->brdnr, panelp->pagenr);
3573 nrchips = (panelp->nrports + 4) / SC26198_PORTS;
3575 outb(panelp->pagenr, brdp->ioctrl);
3578 ioaddr = panelp->iobase + (i * 4);
3585 panelp->brdnr, panelp->panelnr, i);
3595 BRDDISABLE(panelp->brdnr);
3605 static void stl_sc26198portinit(struct stlbrd *brdp, struct stlpanel *panelp, struct stlport *portp)
3607 pr_debug("stl_sc26198portinit(brdp=%p,panelp=%p,portp=%p)\n", brdp,
3608 panelp, portp);
3610 if ((brdp == NULL) || (panelp == NULL) ||
3614 portp->ioaddr = panelp->iobase + ((portp->portnr < 8) ? 0 : 4);
3616 portp->pagenr = panelp->pagenr;
4194 static void stl_sc26198intr(struct stlpanel *panelp, unsigned int iobase)
4204 portp = panelp->ports[(iack & IVR_CHANMASK) + ((iobase & 0x4) << 1)];