• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /netgear-WNDR4500v2-V1.0.0.60_1.0.38/src/linux/linux-2.6/drivers/isdn/hisax/

Lines Matching refs:hw

158 	return (readreg(cs->hw.sedl.adr, cs->hw.sedl.isac, offset));
164 writereg(cs->hw.sedl.adr, cs->hw.sedl.isac, offset, value);
170 readfifo(cs->hw.sedl.adr, cs->hw.sedl.isac, 0, data, size);
176 writefifo(cs->hw.sedl.adr, cs->hw.sedl.isac, 0, data, size);
182 return (readreg(cs->hw.sedl.adr, cs->hw.sedl.isac, offset|0x80));
188 writereg(cs->hw.sedl.adr, cs->hw.sedl.isac, offset|0x80, value);
194 readfifo(cs->hw.sedl.adr, cs->hw.sedl.isac, 0x80, data, size);
200 writefifo(cs->hw.sedl.adr, cs->hw.sedl.isac, 0x80, data, size);
206 return (readreg(cs->hw.sedl.adr,
207 cs->hw.sedl.hscx, offset + (hscx ? 0x40 : 0)));
213 writereg(cs->hw.sedl.adr,
214 cs->hw.sedl.hscx, offset + (hscx ? 0x40 : 0), value);
227 return (readreg(cs->hw.sedl.adr, cs->hw.sedl.hscx, offset));
229 byteout(cs->hw.sedl.adr, offset);
230 return(bytein(cs->hw.sedl.hscx));
237 writereg(cs->hw.sedl.adr, cs->hw.sedl.hscx, offset, value);
240 byteout(cs->hw.sedl.adr, offset);
241 byteout(cs->hw.sedl.hscx, value);
249 #define READHSCX(cs, nr, reg) readreg(cs->hw.sedl.adr, \
250 cs->hw.sedl.hscx, reg + (nr ? 0x40 : 0))
251 #define WRITEHSCX(cs, nr, reg, data) writereg(cs->hw.sedl.adr, \
252 cs->hw.sedl.hscx, reg + (nr ? 0x40 : 0), data)
254 #define READHSCXFIFO(cs, nr, ptr, cnt) readfifo(cs->hw.sedl.adr, \
255 cs->hw.sedl.hscx, (nr ? 0x40 : 0), ptr, cnt)
257 #define WRITEHSCXFIFO(cs, nr, ptr, cnt) writefifo(cs->hw.sedl.adr, \
258 cs->hw.sedl.hscx, (nr ? 0x40 : 0), ptr, cnt)
270 if ((cs->hw.sedl.bus == SEDL_BUS_PCMCIA) && (*cs->busy_flag == 1)) {
278 val = readreg(cs->hw.sedl.adr, cs->hw.sedl.hscx, HSCX_ISTA + 0x40);
282 val = readreg(cs->hw.sedl.adr, cs->hw.sedl.isac, ISAC_ISTA);
286 val = readreg(cs->hw.sedl.adr, cs->hw.sedl.hscx, HSCX_ISTA + 0x40);
292 val = readreg(cs->hw.sedl.adr, cs->hw.sedl.isac, ISAC_ISTA);
298 writereg(cs->hw.sedl.adr, cs->hw.sedl.hscx, HSCX_MASK, 0xFF);
299 writereg(cs->hw.sedl.adr, cs->hw.sedl.hscx, HSCX_MASK + 0x40, 0xFF);
300 writereg(cs->hw.sedl.adr, cs->hw.sedl.isac, ISAC_MASK, 0xFF);
301 writereg(cs->hw.sedl.adr, cs->hw.sedl.isac, ISAC_MASK, 0x0);
302 writereg(cs->hw.sedl.adr, cs->hw.sedl.hscx, HSCX_MASK, 0x0);
303 writereg(cs->hw.sedl.adr, cs->hw.sedl.hscx, HSCX_MASK + 0x40, 0x0);
316 ista = readreg(cs->hw.sedl.adr, cs->hw.sedl.isac, IPAC_ISTA);
321 val = readreg(cs->hw.sedl.adr, cs->hw.sedl.hscx, HSCX_ISTA + 0x40);
332 val = 0xfe & readreg(cs->hw.sedl.adr, cs->hw.sedl.isac, ISAC_ISTA | 0x80);
341 ista = readreg(cs->hw.sedl.adr, cs->hw.sedl.isac, IPAC_ISTA);
349 writereg(cs->hw.sedl.adr, cs->hw.sedl.isac, IPAC_MASK, 0xFF);
350 writereg(cs->hw.sedl.adr, cs->hw.sedl.isac, IPAC_MASK, 0xC0);
364 val = readreg(cs->hw.sedl.adr, cs->hw.sedl.hscx, ISAR_IRQBIT);
368 val = readreg(cs->hw.sedl.adr, cs->hw.sedl.isac, ISAC_ISTA);
372 val = readreg(cs->hw.sedl.adr, cs->hw.sedl.hscx, ISAR_IRQBIT);
378 val = readreg(cs->hw.sedl.adr, cs->hw.sedl.isac, ISAC_ISTA);
388 writereg(cs->hw.sedl.adr, cs->hw.sedl.hscx, ISAR_IRQBIT, 0);
389 writereg(cs->hw.sedl.adr, cs->hw.sedl.isac, ISAC_MASK, 0xFF);
390 writereg(cs->hw.sedl.adr, cs->hw.sedl.isac, ISAC_MASK, 0x0);
391 writereg(cs->hw.sedl.adr, cs->hw.sedl.hscx, ISAR_IRQBIT, ISAR_IRQMSK);
403 } else if (cs->hw.sedl.bus == SEDL_BUS_PCI) {
406 if (cs->hw.sedl.cfg_reg)
407 release_region(cs->hw.sedl.cfg_reg, bytecnt);
415 if (!((cs->hw.sedl.bus == SEDL_BUS_PCMCIA) &&
416 (cs->hw.sedl.chip == SEDL_CHIP_ISAC_HSCX))) {
417 if (cs->hw.sedl.chip == SEDL_CHIP_IPAC) {
418 writereg(cs->hw.sedl.adr, cs->hw.sedl.isac, IPAC_POTA2, 0x20);
420 writereg(cs->hw.sedl.adr, cs->hw.sedl.isac, IPAC_POTA2, 0x0);
422 writereg(cs->hw.sedl.adr, cs->hw.sedl.isac, IPAC_CONF, 0x0);
423 writereg(cs->hw.sedl.adr, cs->hw.sedl.isac, IPAC_ACFG, 0xff);
424 writereg(cs->hw.sedl.adr, cs->hw.sedl.isac, IPAC_AOE, 0x0);
425 writereg(cs->hw.sedl.adr, cs->hw.sedl.isac, IPAC_MASK, 0xc0);
426 writereg(cs->hw.sedl.adr, cs->hw.sedl.isac, IPAC_PCFG, 0x12);
427 } else if ((cs->hw.sedl.chip == SEDL_CHIP_ISAC_ISAR) &&
428 (cs->hw.sedl.bus == SEDL_BUS_PCI)) {
429 byteout(cs->hw.sedl.cfg_reg +3, cs->hw.sedl.reset_on);
431 byteout(cs->hw.sedl.cfg_reg +3, cs->hw.sedl.reset_off);
434 byteout(cs->hw.sedl.reset_on, SEDL_RESET); /* Reset On */
436 byteout(cs->hw.sedl.reset_off, 0); /* Reset Off */
454 if (cs->hw.sedl.chip == SEDL_CHIP_ISAC_ISAR) {
456 writereg(cs->hw.sedl.adr, cs->hw.sedl.hscx,
458 writereg(cs->hw.sedl.adr, cs->hw.sedl.isac,
461 writereg(cs->hw.sedl.adr, cs->hw.sedl.hscx,
463 writereg(cs->hw.sedl.adr, cs->hw.sedl.isac,
472 if (cs->hw.sedl.chip == SEDL_CHIP_ISAC_ISAR) {
474 writereg(cs->hw.sedl.adr, cs->hw.sedl.hscx,
494 cs->hw.sedl.reset_off &= ~SEDL_ISAR_PCI_LED2;
496 cs->hw.sedl.reset_off &= ~SEDL_ISAR_PCI_LED1;
497 byteout(cs->hw.sedl.cfg_reg +3, cs->hw.sedl.reset_off);
505 cs->hw.sedl.reset_off |= SEDL_ISAR_PCI_LED2;
507 cs->hw.sedl.reset_off |= SEDL_ISAR_PCI_LED1;
508 byteout(cs->hw.sedl.cfg_reg +3, cs->hw.sedl.reset_off);
545 cs->hw.sedl.bus = SEDL_BUS_ISA;
546 cs->hw.sedl.chip = SEDL_CHIP_TEST;
549 cs->hw.sedl.bus = SEDL_BUS_PCMCIA;
550 cs->hw.sedl.chip = SEDL_CHIP_TEST;
553 cs->hw.sedl.bus = SEDL_BUS_ISA;
554 cs->hw.sedl.chip = SEDL_CHIP_ISAC_ISAR;
560 cs->hw.sedl.cfg_reg = card->para[1];
562 if (cs->hw.sedl.chip == SEDL_CHIP_ISAC_ISAR) {
595 cs->hw.sedl.cfg_reg = card->para[1];
599 cs->hw.sedl.chip = SEDL_CHIP_ISAC_ISAR;
603 cs->hw.sedl.chip = SEDL_CHIP_TEST;
630 cs->hw.sedl.cfg_reg = pci_resource_start(dev_sedl, 0);
636 cs->hw.sedl.bus = SEDL_BUS_PCI;
642 cs->hw.sedl.cfg_reg);
648 cs->hw.sedl.chip = SEDL_CHIP_ISAC_ISAR;
651 cs->hw.sedl.chip = SEDL_CHIP_ISAC_ISAR;
654 cs->hw.sedl.chip = SEDL_CHIP_IPAC;
657 cs->hw.sedl.chip = SEDL_CHIP_IPAC;
665 cs->hw.sedl.reset_on = SEDL_ISAR_PCI_ISAR_RESET_ON;
666 cs->hw.sedl.reset_off = SEDL_ISAR_PCI_ISAR_RESET_OFF;
667 byteout(cs->hw.sedl.cfg_reg, 0xff);
668 byteout(cs->hw.sedl.cfg_reg, 0x00);
669 byteout(cs->hw.sedl.cfg_reg+ 2, 0xdd);
670 byteout(cs->hw.sedl.cfg_reg+ 5, 0x02);
671 byteout(cs->hw.sedl.cfg_reg +3, cs->hw.sedl.reset_on);
673 byteout(cs->hw.sedl.cfg_reg +3, cs->hw.sedl.reset_off);
689 if (cs->hw.sedl.bus != SEDL_BUS_PCMCIA &&
690 !request_region(cs->hw.sedl.cfg_reg, bytecnt, "sedlbauer isdn")) {
694 cs->hw.sedl.cfg_reg,
695 cs->hw.sedl.cfg_reg + bytecnt);
701 cs->hw.sedl.cfg_reg,
702 cs->hw.sedl.cfg_reg + bytecnt,
715 if (cs->hw.sedl.bus != SEDL_BUS_PCI) {
716 val = readreg(cs->hw.sedl.cfg_reg + SEDL_IPAC_ANY_ADR,
717 cs->hw.sedl.cfg_reg + SEDL_IPAC_ANY_IPAC, IPAC_ID);
722 if (cs->hw.sedl.bus == SEDL_BUS_PCMCIA) {
725 cs->hw.sedl.chip = SEDL_CHIP_IPAC;
728 if (cs->hw.sedl.chip == SEDL_CHIP_TEST) {
729 cs->hw.sedl.chip = SEDL_CHIP_ISAC_HSCX;
735 * hw.sedl.chip is now properly set
741 if (cs->hw.sedl.chip == SEDL_CHIP_IPAC) {
742 if (cs->hw.sedl.bus == SEDL_BUS_PCI) {
743 cs->hw.sedl.adr = cs->hw.sedl.cfg_reg + SEDL_IPAC_PCI_ADR;
744 cs->hw.sedl.isac = cs->hw.sedl.cfg_reg + SEDL_IPAC_PCI_IPAC;
745 cs->hw.sedl.hscx = cs->hw.sedl.cfg_reg + SEDL_IPAC_PCI_IPAC;
747 cs->hw.sedl.adr = cs->hw.sedl.cfg_reg + SEDL_IPAC_ANY_ADR;
748 cs->hw.sedl.isac = cs->hw.sedl.cfg_reg + SEDL_IPAC_ANY_IPAC;
749 cs->hw.sedl.hscx = cs->hw.sedl.cfg_reg + SEDL_IPAC_ANY_IPAC;
757 val = readreg(cs->hw.sedl.adr, cs->hw.sedl.isac, IPAC_ID);
765 if (cs->hw.sedl.chip == SEDL_CHIP_ISAC_ISAR) {
766 if (cs->hw.sedl.bus == SEDL_BUS_PCI) {
767 cs->hw.sedl.adr = cs->hw.sedl.cfg_reg +
769 cs->hw.sedl.isac = cs->hw.sedl.cfg_reg +
771 cs->hw.sedl.hscx = cs->hw.sedl.cfg_reg +
774 cs->hw.sedl.adr = cs->hw.sedl.cfg_reg +
776 cs->hw.sedl.isac = cs->hw.sedl.cfg_reg +
778 cs->hw.sedl.hscx = cs->hw.sedl.cfg_reg +
780 cs->hw.sedl.reset_on = cs->hw.sedl.cfg_reg +
782 cs->hw.sedl.reset_off = cs->hw.sedl.cfg_reg +
785 cs->bcs[0].hw.isar.reg = &cs->hw.sedl.isar;
786 cs->bcs[1].hw.isar.reg = &cs->hw.sedl.isar;
810 if (cs->hw.sedl.bus == SEDL_BUS_PCMCIA) {
811 cs->hw.sedl.adr = cs->hw.sedl.cfg_reg + SEDL_HSCX_PCMCIA_ADR;
812 cs->hw.sedl.isac = cs->hw.sedl.cfg_reg + SEDL_HSCX_PCMCIA_ISAC;
813 cs->hw.sedl.hscx = cs->hw.sedl.cfg_reg + SEDL_HSCX_PCMCIA_HSCX;
814 cs->hw.sedl.reset_on = cs->hw.sedl.cfg_reg + SEDL_HSCX_PCMCIA_RESET;
815 cs->hw.sedl.reset_off = cs->hw.sedl.cfg_reg + SEDL_HSCX_PCMCIA_RESET;
818 cs->hw.sedl.adr = cs->hw.sedl.cfg_reg + SEDL_HSCX_ISA_ADR;
819 cs->hw.sedl.isac = cs->hw.sedl.cfg_reg + SEDL_HSCX_ISA_ISAC;
820 cs->hw.sedl.hscx = cs->hw.sedl.cfg_reg + SEDL_HSCX_ISA_HSCX;
821 cs->hw.sedl.reset_on = cs->hw.sedl.cfg_reg + SEDL_HSCX_ISA_RESET_ON;
822 cs->hw.sedl.reset_off = cs->hw.sedl.cfg_reg + SEDL_HSCX_ISA_RESET_OFF;