Lines Matching refs:setup
725 struct Scsi_Host *aha152x_probe_one(struct aha152x_setup *setup) in aha152x_probe_one() argument
741 shpnt->io_port = setup->io_port; in aha152x_probe_one()
743 shpnt->irq = setup->irq; in aha152x_probe_one()
745 if (!setup->tc1550) { in aha152x_probe_one()
746 HOSTIOPORT0 = setup->io_port; in aha152x_probe_one()
747 HOSTIOPORT1 = setup->io_port; in aha152x_probe_one()
749 HOSTIOPORT0 = setup->io_port+0x10; in aha152x_probe_one()
750 HOSTIOPORT1 = setup->io_port-0x10; in aha152x_probe_one()
754 RECONNECT = setup->reconnect; in aha152x_probe_one()
755 SYNCHRONOUS = setup->synchronous; in aha152x_probe_one()
756 PARITY = setup->parity; in aha152x_probe_one()
757 DELAY = setup->delay; in aha152x_probe_one()
758 EXT_TRANS = setup->ext_trans; in aha152x_probe_one()
760 SETPORT(SCSIID, setup->scsiid << 4); in aha152x_probe_one()
761 shpnt->this_id = setup->scsiid; in aha152x_probe_one()
763 if (setup->reconnect) in aha152x_probe_one()
786 shpnt->host_no, setup->tc1550 ? " (tc1550 mode)" : "", in aha152x_probe_one()
2929 static struct aha152x_setup setup[2]; variable
3026 static int checksetup(struct aha152x_setup *setup) in checksetup() argument
3029 for (i = 0; i < ARRAY_SIZE(ports) && (setup->io_port != ports[i]); i++) in checksetup()
3035 if (!request_region(setup->io_port, IO_RANGE, "aha152x")) { in checksetup()
3036 printk(KERN_ERR "aha152x: io port 0x%x busy.\n", setup->io_port); in checksetup()
3040 if( aha152x_porttest(setup->io_port) ) { in checksetup()
3041 setup->tc1550=0; in checksetup()
3042 } else if( tc1550_porttest(setup->io_port) ) { in checksetup()
3043 setup->tc1550=1; in checksetup()
3045 release_region(setup->io_port, IO_RANGE); in checksetup()
3049 release_region(setup->io_port, IO_RANGE); in checksetup()
3051 if ((setup->irq < IRQ_MIN) || (setup->irq > IRQ_MAX)) in checksetup()
3054 if ((setup->scsiid < 0) || (setup->scsiid > 7)) in checksetup()
3057 if ((setup->reconnect < 0) || (setup->reconnect > 1)) in checksetup()
3060 if ((setup->parity < 0) || (setup->parity > 1)) in checksetup()
3063 if ((setup->synchronous < 0) || (setup->synchronous > 1)) in checksetup()
3066 if ((setup->ext_trans < 0) || (setup->ext_trans > 1)) in checksetup()
3088 if (!checksetup(&setup[i])) { in aha152x_init()
3089 printk(KERN_ERR "\naha152x: %s\n", setup[i].conf); in aha152x_init()
3097 if (setup_count < ARRAY_SIZE(setup)) { in aha152x_init()
3100 if (setup_count == 0 || (override.io_port != setup[0].io_port)) { in aha152x_init()
3112 setup[setup_count++] = override; in aha152x_init()
3118 if (setup_count < ARRAY_SIZE(setup)) { in aha152x_init()
3121 if (setup_count == 0 || (override.io_port != setup[0].io_port)) { in aha152x_init()
3133 setup[setup_count++] = override; in aha152x_init()
3139 if (setup_count<ARRAY_SIZE(setup) && (aha152x[0]!=0 || io[0]!=0 || irq[0]!=0)) { in aha152x_init()
3141 setup[setup_count].conf = ""; in aha152x_init()
3142 setup[setup_count].io_port = aha152x[0]; in aha152x_init()
3143 setup[setup_count].irq = aha152x[1]; in aha152x_init()
3144 setup[setup_count].scsiid = aha152x[2]; in aha152x_init()
3145 setup[setup_count].reconnect = aha152x[3]; in aha152x_init()
3146 setup[setup_count].parity = aha152x[4]; in aha152x_init()
3147 setup[setup_count].synchronous = aha152x[5]; in aha152x_init()
3148 setup[setup_count].delay = aha152x[6]; in aha152x_init()
3149 setup[setup_count].ext_trans = aha152x[7]; in aha152x_init()
3151 if(io[0]!=0) setup[setup_count].io_port = io[0]; in aha152x_init()
3152 if(irq[0]!=0) setup[setup_count].irq = irq[0]; in aha152x_init()
3154 setup[setup_count].scsiid = scsiid[0]; in aha152x_init()
3155 setup[setup_count].reconnect = reconnect[0]; in aha152x_init()
3156 setup[setup_count].parity = parity[0]; in aha152x_init()
3157 setup[setup_count].synchronous = sync[0]; in aha152x_init()
3158 setup[setup_count].delay = delay[0]; in aha152x_init()
3159 setup[setup_count].ext_trans = exttrans[0]; in aha152x_init()
3162 if (checksetup(&setup[setup_count])) in aha152x_init()
3166 setup[setup_count].io_port, in aha152x_init()
3167 setup[setup_count].irq, in aha152x_init()
3168 setup[setup_count].scsiid, in aha152x_init()
3169 setup[setup_count].reconnect, in aha152x_init()
3170 setup[setup_count].parity, in aha152x_init()
3171 setup[setup_count].synchronous, in aha152x_init()
3172 setup[setup_count].delay, in aha152x_init()
3173 setup[setup_count].ext_trans); in aha152x_init()
3176 if (setup_count<ARRAY_SIZE(setup) && (aha152x1[0]!=0 || io[1]!=0 || irq[1]!=0)) { in aha152x_init()
3178 setup[setup_count].conf = ""; in aha152x_init()
3179 setup[setup_count].io_port = aha152x1[0]; in aha152x_init()
3180 setup[setup_count].irq = aha152x1[1]; in aha152x_init()
3181 setup[setup_count].scsiid = aha152x1[2]; in aha152x_init()
3182 setup[setup_count].reconnect = aha152x1[3]; in aha152x_init()
3183 setup[setup_count].parity = aha152x1[4]; in aha152x_init()
3184 setup[setup_count].synchronous = aha152x1[5]; in aha152x_init()
3185 setup[setup_count].delay = aha152x1[6]; in aha152x_init()
3186 setup[setup_count].ext_trans = aha152x1[7]; in aha152x_init()
3188 if(io[1]!=0) setup[setup_count].io_port = io[1]; in aha152x_init()
3189 if(irq[1]!=0) setup[setup_count].irq = irq[1]; in aha152x_init()
3191 setup[setup_count].scsiid = scsiid[1]; in aha152x_init()
3192 setup[setup_count].reconnect = reconnect[1]; in aha152x_init()
3193 setup[setup_count].parity = parity[1]; in aha152x_init()
3194 setup[setup_count].synchronous = sync[1]; in aha152x_init()
3195 setup[setup_count].delay = delay[1]; in aha152x_init()
3196 setup[setup_count].ext_trans = exttrans[1]; in aha152x_init()
3198 if (checksetup(&setup[setup_count])) in aha152x_init()
3202 setup[setup_count].io_port, in aha152x_init()
3203 setup[setup_count].irq, in aha152x_init()
3204 setup[setup_count].scsiid, in aha152x_init()
3205 setup[setup_count].reconnect, in aha152x_init()
3206 setup[setup_count].parity, in aha152x_init()
3207 setup[setup_count].synchronous, in aha152x_init()
3208 setup[setup_count].delay, in aha152x_init()
3209 setup[setup_count].ext_trans); in aha152x_init()
3214 for(i=0; setup_count<ARRAY_SIZE(setup) && id_table[i].vendor; i++) { in aha152x_init()
3215 while ( setup_count<ARRAY_SIZE(setup) && in aha152x_init()
3230 if (setup_count==1 && pnp_port_start(dev, 0)==setup[0].io_port) { in aha152x_init()
3235 setup[setup_count].io_port = pnp_port_start(dev, 0); in aha152x_init()
3236 setup[setup_count].irq = pnp_irq(dev, 0); in aha152x_init()
3237 setup[setup_count].scsiid = 7; in aha152x_init()
3238 setup[setup_count].reconnect = 1; in aha152x_init()
3239 setup[setup_count].parity = 1; in aha152x_init()
3240 setup[setup_count].synchronous = 1; in aha152x_init()
3241 setup[setup_count].delay = DELAY_DEFAULT; in aha152x_init()
3242 setup[setup_count].ext_trans = 0; in aha152x_init()
3248 setup[setup_count].io_port, setup[setup_count].irq); in aha152x_init()
3255 if (setup_count<ARRAY_SIZE(setup)) { in aha152x_init()
3277 if ((setup_count == 1) && (setup[0].io_port == ports[i])) in aha152x_init()
3286 setup[setup_count].tc1550 = 0; in aha152x_init()
3291 setup[setup_count].tc1550 = 1; in aha152x_init()
3303 setup[setup_count].io_port = ports[i]; in aha152x_init()
3304 setup[setup_count].irq = IRQ_MIN + conf.cf_irq; in aha152x_init()
3305 setup[setup_count].scsiid = conf.cf_id; in aha152x_init()
3306 setup[setup_count].reconnect = conf.cf_tardisc; in aha152x_init()
3307 setup[setup_count].parity = !conf.cf_parity; in aha152x_init()
3308 setup[setup_count].synchronous = conf.cf_syncneg; in aha152x_init()
3309 setup[setup_count].delay = DELAY_DEFAULT; in aha152x_init()
3310 setup[setup_count].ext_trans = 0; in aha152x_init()
3323 if ( request_region(setup[i].io_port, IO_RANGE, "aha152x") ) { in aha152x_init()
3324 struct Scsi_Host *shpnt = aha152x_probe_one(&setup[i]); in aha152x_init()
3327 release_region(setup[i].io_port, IO_RANGE); in aha152x_init()
3335 printk(KERN_ERR "aha152x: io port 0x%x busy.\n", setup[i].io_port); in aha152x_init()
3368 if(setup_count>=ARRAY_SIZE(setup)) { in aha152x_setup()
3373 setup[setup_count].conf = str; in aha152x_setup()
3374 setup[setup_count].io_port = ints[0] >= 1 ? ints[1] : 0x340; in aha152x_setup()
3375 setup[setup_count].irq = ints[0] >= 2 ? ints[2] : 11; in aha152x_setup()
3376 setup[setup_count].scsiid = ints[0] >= 3 ? ints[3] : 7; in aha152x_setup()
3377 setup[setup_count].reconnect = ints[0] >= 4 ? ints[4] : 1; in aha152x_setup()
3378 setup[setup_count].parity = ints[0] >= 5 ? ints[5] : 1; in aha152x_setup()
3379 setup[setup_count].synchronous = ints[0] >= 6 ? ints[6] : 1; in aha152x_setup()
3380 setup[setup_count].delay = ints[0] >= 7 ? ints[7] : DELAY_DEFAULT; in aha152x_setup()
3381 setup[setup_count].ext_trans = ints[0] >= 8 ? ints[8] : 0; in aha152x_setup()