--- ide_cs.c.309 Mon Jan 18 09:21:33 1999 +++ ide_cs.c Fri Apr 23 15:33:39 1999 @@ -62,6 +62,10 @@ /* Bit map of interrupts to choose from */ static u_int irq_mask = 0xdeb8; static int irq_list[4] = { -1 }; +/* Maximum delay for spinning ( tenth of seconds ) */ +static int spin_delay = 10; + +MODULE_PARM(spin_delay, "i"); MODULE_PARM(irq_mask, "i"); MODULE_PARM(irq_list, "1-4i"); @@ -314,7 +318,7 @@ release_region(link->io.BasePort2, link->io.NumPorts2); /* retry registration in case device is still spinning up */ - for (i = 0; i < 10; i++) { + for (i = 0; i < spin_delay; i++) { hd = ide_register(io_base, ctl_base, link->irq.AssignedIRQ); if (hd >= 0) break; - if (link->io.NumPorts1 == 0x20) { @@ -343,9 +347,9 @@ info->node.minor = 0; info->hd = hd; link->dev = &info->node; - printk(KERN_INFO "ide_cs: %s: Vcc = %d.%d, Vpp = %d.%d\n", + printk(KERN_INFO "ide_cs: %s: Vcc = %d.%d, Vpp = %d.%d Spin:%d\n", info->node.dev_name, link->conf.Vcc/10, link->conf.Vcc%10, - link->conf.Vpp1/10, link->conf.Vpp1%10); + link->conf.Vpp1/10, link->conf.Vpp1%10, i); link->state &= ~DEV_CONFIG_PENDING; return;