OutByte(cs->hw.njet.base + NETJET_CTRL, cs->hw.njet.ctrl_reg); 
outb(cs->hw.njet.ctrl_reg, cs->hw.njet.base + NETJET_CTRL); 
setup_enternow_pci(struct IsdnCard *card){	int bytecnt;	struct IsdnCardState *cs = card->cs;	char tmp[64];#ifdef CONFIG_PCI#ifdef __BIG_ENDIAN#error "not running on big endian machines now"#endif        strcpy(tmp, enternow_pci_rev);	printk(KERN_INFO "HiSax: Formula-n Europe AG enter:now ISDN PCI driver Rev. %s\n", HiSax_getrev(tmp));	if (cs->typ != ISDN_CTYPE_ENTERNOW)		return(0);	test_and_clear_bit(FLG_LOCK_ATOMIC, &cs->HW_Flags);	for ( ;; )	{		if ((dev_netjet = pci_find_device(PCI_VENDOR_ID_TIGERJET,			PCI_DEVICE_ID_TIGERJET_300,  dev_netjet))) {			if (pci_enable_device(dev_netjet))				return(0);			cs->irq = dev_netjet->irq;			if (!cs->irq) {				printk(KERN_WARNING "enter:now PCI: No IRQ for PCI card found\n");				return(0);			}			cs->hw.njet.base = pci_resource_start(dev_netjet, 0);			if (!cs->hw.njet.base) {				printk(KERN_WARNING "enter:now PCI: No IO-Adr for PCI card found\n");				return(0);			}                        /* checks Sub-Vendor ID because system crashes with Traverse-Card */			if ((dev_netjet->subsystem_vendor != 0x55) ||				(dev_netjet->subsystem_device != 0x02)) {				printk(KERN_WARNING "enter:now: You tried to load this driver with an incompatible TigerJet-card\n");                                printk(KERN_WARNING "Use type=20 for Traverse NetJet PCI Card.\n");                                return(0);                        }		} else {                        printk(KERN_WARNING "enter:now PCI: No PCI card found\n");			return(0);		}		cs->hw.njet.auxa = cs->hw.njet.base + NETJET_AUXDATA;		cs->hw.njet.isac = cs->hw.njet.base + 0xC0; // Fenster zum AMD		/* Reset an */		cs->hw.njet.ctrl_reg = 0x07;  // gendert von 0xff		OutByte(cs->hw.njet.base + NETJET_CTRL, cs->hw.njet.ctrl_reg);		/* 20 ms Pause */		mdelay(20);		cs->hw.njet.ctrl_reg = 0x30;  /* Reset Off and status read clear */		OutByte(cs->hw.njet.base + NETJET_CTRL, cs->hw.njet.ctrl_reg);		mdelay(10);		cs->hw.njet.auxd = 0x00; // war 0xc0		cs->hw.njet.dmactrl = 0;		OutByte(cs->hw.njet.base + NETJET_AUXCTRL, ~TJ_AMD_IRQ);		OutByte(cs->hw.njet.base + NETJET_IRQMASK1, TJ_AMD_IRQ);		OutByte(cs->hw.njet.auxa, cs->hw.njet.auxd);		break;	}#else	printk(KERN_WARNING "enter:now PCI: NO_PCI_BIOS\n");	printk(KERN_WARNING "enter:now PCI: unable to config Formula-n enter:now ISDN PCI ab\n");	return (0);#endif /* CONFIG_PCI */	bytecnt = 256;	printk(KERN_INFO		"enter:now PCI: PCI card configured at 0x%lx IRQ %d\n",		cs->hw.njet.base, cs->irq);	if (!request_region(cs->hw.njet.base, bytecnt, "Fn_ISDN")) {		printk(KERN_WARNING			   "HiSax: %s config port %lx-%lx already in use\n",			   CardType[card->typ],			   cs->hw.njet.base,			   cs->hw.njet.base + bytecnt);		return (0);	}	setup_Amd7930(cs);	cs->hw.njet.last_is0 = 0;        /* macro rByteAMD */        cs->readisac = &ReadByteAmd7930;        /* macro wByteAMD */        cs->writeisac = &WriteByteAmd7930;        cs->dc.amd7930.setIrqMask = &enpci_setIrqMask;        cs->BC_Read_Reg  = &dummyrr;	cs->BC_Write_Reg = &dummywr;	cs->BC_Send_Data = &netjet_fill_dma;	cs->cardmsg = &enpci_card_msg;	cs->irq_func = &enpci_interrupt;	cs->irq_flags |= SA_SHIRQ;        return (1);}
4520	/local/tlutelli/issta_data/temp/c/2005_temp/2005/4520/672c3fd9069e5a138f9d4afc9aeb5aa34aacce32/enternow_pci.c/buggy/drivers/isdn/hisax/enternow_pci.c