Exemplo n.º 1
0
static void asp_choose_irq(struct parisc_device *dev, void *ctrl)
{
	int irq;

	switch (dev->id.sversion) {
	case 0x71:	irq =  9; break; /* SCSI */
	case 0x72:	irq =  8; break; /* LAN */
	case 0x73:	irq =  1; break; /* HIL */
	case 0x74:	irq =  7; break; /* Centronics */
	case 0x75:	irq = (dev->hw_path == 4) ? 5 : 6; break; /* RS232 */
	case 0x76:	irq = 10; break; /* EISA BA */
	case 0x77:	irq = 11; break; /* Graphics1 */
	case 0x7a:	irq = 13; break; /* Audio (Bushmaster) */
	case 0x7b:	irq = 13; break; /* Audio (Scorpio) */
	case 0x7c:	irq =  3; break; /* FW SCSI */
	case 0x7d:	irq =  4; break; /* FDDI */
	case 0x7f:	irq = 13; break; /* Audio (Outfield) */
	default:	return;		 /* Unknown */
	}

	gsc_asic_assign_irq(ctrl, irq, &dev->irq);

	switch (dev->id.sversion) {
	case 0x73:	irq =  2; break; /* i8042 High-priority */
	case 0x76:	irq =  0; break; /* EISA BA */
	default:	return;		 /* Other */
	}

	gsc_asic_assign_irq(ctrl, irq, &dev->aux_irq);
}
Exemplo n.º 2
0
static void asp_choose_irq(struct parisc_device *dev, void *ctrl)
{
	int irq;

	switch (dev->id.sversion) {
	case 0x71:	irq =  9; break; /*      */
	case 0x72:	irq =  8; break; /*     */
	case 0x73:	irq =  1; break; /*     */
	case 0x74:	irq =  7; break; /*            */
	case 0x75:	irq = (dev->hw_path == 4) ? 5 : 6; break; /*       */
	case 0x76:	irq = 10; break; /*         */
	case 0x77:	irq = 11; break; /*           */
	case 0x7a:	irq = 13; break; /*                    */
	case 0x7b:	irq = 13; break; /*                 */
	case 0x7c:	irq =  3; break; /*         */
	case 0x7d:	irq =  4; break; /*      */
	case 0x7f:	irq = 13; break; /*                  */
	default:	return;		 /*         */
	}

	gsc_asic_assign_irq(ctrl, irq, &dev->irq);

	switch (dev->id.sversion) {
	case 0x73:	irq =  2; break; /*                     */
	case 0x76:	irq =  0; break; /*         */
	default:	return;		 /*       */
	}

	gsc_asic_assign_irq(ctrl, irq, &dev->aux_irq);
}
Exemplo n.º 3
0
Arquivo: wax.c Projeto: 020gzh/linux
static void wax_choose_irq(struct parisc_device *dev, void *ctrl)
{
	int irq;

	switch (dev->id.sversion) {
		case 0x73:	irq =  1; break; /* i8042 General */
		case 0x8c:	irq =  6; break; /* Serial */
		case 0x90:	irq = 10; break; /* EISA */
		default:	return;		 /* Unknown */
	}

	gsc_asic_assign_irq(ctrl, irq, &dev->irq);

	switch (dev->id.sversion) {
		case 0x73:	irq =  2; break; /* i8042 High-priority */
		case 0x90:	irq =  0; break; /* EISA NMI */
		default:	return;		 /* No secondary IRQ */
	}

	gsc_asic_assign_irq(ctrl, irq, &dev->aux_irq);
}
Exemplo n.º 4
0
static void wax_choose_irq(struct parisc_device *dev, void *ctrl)
{
	int irq;

	switch (dev->id.sversion) {
		case 0x73:	irq =  1; break; /*               */
		case 0x8c:	irq =  6; break; /*        */
		case 0x90:	irq = 10; break; /*      */
		default:	return;		 /*         */
	}

	gsc_asic_assign_irq(ctrl, irq, &dev->irq);

	switch (dev->id.sversion) {
		case 0x73:	irq =  2; break; /*                     */
		case 0x90:	irq =  0; break; /*          */
		default:	return;		 /*                  */
	}

	gsc_asic_assign_irq(ctrl, irq, &dev->aux_irq);
}
Exemplo n.º 5
0
static void lasi_choose_irq(struct parisc_device *dev, void *ctrl)
{
	int irq;

	switch (dev->id.sversion) {
		case 0x74:	irq =  7; break; /* Centronics */
		case 0x7B:	irq = 13; break; /* Audio */
		case 0x81:	irq = 14; break; /* Lasi itself */
		case 0x82:	irq =  9; break; /* SCSI */
		case 0x83:	irq = 20; break; /* Floppy */
		case 0x84:	irq = 26; break; /* PS/2 Keyboard */
		case 0x87:	irq = 18; break; /* ISDN */
		case 0x8A:	irq =  8; break; /* LAN */
		case 0x8C:	irq =  5; break; /* RS232 */
		case 0x8D:	irq = (dev->hw_path == 13) ? 16 : 17; break;
						 /* Telephone */
		default: 	return;		 /* unknown */
	}

	gsc_asic_assign_irq(ctrl, irq, &dev->irq);
}
Exemplo n.º 6
0
static void lasi_choose_irq(struct parisc_device *dev, void *ctrl)
{
	int irq;

	switch (dev->id.sversion) {
		case 0x74:	irq =  7; break; 
		case 0x7B:	irq = 13; break; 
		case 0x81:	irq = 14; break; 
		case 0x82:	irq =  9; break; 
		case 0x83:	irq = 20; break; 
		case 0x84:	irq = 26; break; 
		case 0x87:	irq = 18; break; 
		case 0x8A:	irq =  8; break; 
		case 0x8C:	irq =  5; break; 
		case 0x8D:	irq = (dev->hw_path == 13) ? 16 : 17; break;
						 
		default: 	return;		 
	}

	gsc_asic_assign_irq(ctrl, irq, &dev->irq);
}