Lines Matching +full:loc +full:- +full:code

1 // SPDX-License-Identifier: GPL-2.0-only
8 /* J PAGET 18/02/94 passage V2.4.2 ioctl avec code 2 reset to les interrupt */
16 /* au nombre de cartes presentes sur le bus. IOCL code 6 affichait V2.4.3 */
20 /* de code autre que le texte V2.6.1 en V2.8.0 */
46 the board doesn't correctly handle word accesses - only
127 static int ac_register_board(unsigned long physloc, void __iomem *loc, in ac_register_board() argument
132 if((readb(loc + CONF_END_TEST) != 0x00) || in ac_register_board()
133 (readb(loc + CONF_END_TEST + 1) != 0x55) || in ac_register_board()
134 (readb(loc + CONF_END_TEST + 2) != 0xAA) || in ac_register_board()
135 (readb(loc + CONF_END_TEST + 3) != 0xFF)) in ac_register_board()
139 boardno = readb(loc + NUMCARD_OWNER_TO_PC); in ac_register_board()
147 if (apbs[boardno - 1].RamIO) { in ac_register_board()
149 boardno, physloc, boardno, apbs[boardno-1].PhysIO); in ac_register_board()
153 boardno--; in ac_register_board()
156 apbs[boardno].RamIO = loc; in ac_register_board()
159 byte_reset_it = readb(loc + RAM_IT_TO_PC); in ac_register_board()
192 /* No mem and irq given - check for a PCI card */ in applicom_init()
201 return -EIO; in applicom_init()
212 return -EIO; in applicom_init()
216 applicom_pci_devnames[dev->device-1], in applicom_init()
218 dev->irq); in applicom_init()
229 if (request_irq(dev->irq, &ac_interrupt, IRQF_SHARED, "Applicom PCI", &dummy)) { in applicom_init()
230 printk(KERN_INFO "Could not allocate IRQ %d for PCI Applicom device.\n", dev->irq); in applicom_init()
233 apbs[boardno - 1].RamIO = NULL; in applicom_init()
239 writeb(0x40, apbs[boardno - 1].RamIO + RAM_IT_FROM_PC); in applicom_init()
241 apbs[boardno - 1].irq = dev->irq; in applicom_init()
253 return -ENXIO; in applicom_init()
279 apbs[boardno - 1].RamIO = NULL; in applicom_init()
282 apbs[boardno - 1].irq = irq; in applicom_init()
285 apbs[boardno - 1].irq = 0; in applicom_init()
309 char boardname[(SERIAL_NUMBER - TYPE_CARD) + 1]; in applicom_init()
314 for (serial = 0; serial < SERIAL_NUMBER - TYPE_CARD; serial++) in applicom_init()
338 return -ENXIO; in applicom_init()
357 unsigned int NumCard; /* Board number 1 -> 8 */ in ac_write()
358 unsigned int IndexCard; /* Index board number 0 -> 7 */ in ac_write()
373 warncount--; in ac_write()
375 return -EINVAL; in ac_write()
379 return -EFAULT; in ac_write()
383 return -EFAULT; in ac_write()
387 IndexCard = NumCard - 1; in ac_write()
390 return -EINVAL; in ac_write()
394 return -EINVAL; in ac_write()
431 return -EIO; in ac_write()
448 return -EINTR; in ac_write()
460 /* Which is best - lock down the pages with rawio and then in ac_write()
492 st_loc->tic_owner_to_pc = readb(apbs[IndexCard].RamIO + TIC_OWNER_TO_PC); in do_ac_read()
493 st_loc->numcard_owner_to_pc = readb(apbs[IndexCard].RamIO + NUMCARD_OWNER_TO_PC); in do_ac_read()
551 return -EINVAL; in ac_read()
579 return -EFAULT; in ac_read()
581 return -EFAULT; in ac_read()
596 return -EIO; in ac_read()
605 /* OK - No boards had data for us. Sleep now */ in ac_read()
611 return -EINTR; in ac_read()
682 i--; in ac_interrupt()
717 IndexCard = adgl->num_card-1; in ac_ioctl()
733 ret = -EFAULT; in ac_ioctl()
738 adgl->conf_end_test[i] = readb(pmem++); in ac_ioctl()
740 adgl->error_code[i] = readb(pmem++); in ac_ioctl()
742 adgl->parameter_error[i] = readb(pmem++); in ac_ioctl()
744 adgl->vers = readb(pmem); in ac_ioctl()
747 adgl->reserv1[i] = readb(pmem++); in ac_ioctl()
748 *(int *)&adgl->reserv1[20] = in ac_ioctl()
754 ret = -EFAULT; in ac_ioctl()
760 writeb(adgl->data_from_pc_ready, in ac_ioctl()
773 writeb(adgl->tic_des_from_pc, pmem); in ac_ioctl()
777 adgl->tic_owner_to_pc = readb(pmem++); in ac_ioctl()
778 adgl->numcard_owner_to_pc = readb(pmem); in ac_ioctl()
780 ret = -EFAULT; in ac_ioctl()
783 writeb(adgl->num_card, apbs[IndexCard].RamIO + NUMCARD_OWNER_TO_PC); in ac_ioctl()
784 writeb(adgl->num_card, apbs[IndexCard].RamIO + NUMCARD_DES_FROM_PC); in ac_ioctl()
785 writeb(adgl->num_card, apbs[IndexCard].RamIO + NUMCARD_ACK_FROM_PC); in ac_ioctl()
796 char boardname[(SERIAL_NUMBER - TYPE_CARD) + 1]; in ac_ioctl()
801 for (serial = 0; serial < SERIAL_NUMBER - TYPE_CARD; serial++) in ac_ioctl()
835 ret = -ENOTTY; in ac_ioctl()
847 warncount--; in ac_ioctl()
851 return -EINVAL; in ac_ioctl()