linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* Re: SATA probe delay on boot
@ 2003-09-04  0:54 Brien
  2003-09-04  4:55 ` Andre Hedrick
  0 siblings, 1 reply; 5+ messages in thread
From: Brien @ 2003-09-04  0:54 UTC (permalink / raw)
  To: B.Zolnierkiewicz; +Cc: linux-kernel

Bartlomiej,

"ide3=noprobe" doesn't make a noticable difference, but
I'll tell what happens with the patch when I get home
and am able to try it 

(just so you know it may be several hours before I'm
able to reply again)

Thanks much,

Brien

On Thu, 4 Sep 2003 01:53:07 +0200, Bartlomiej
Zolnierkiewicz wrote:

> On Thursday 04 of September 2003 01:18,
admin@brien.com
> wrote:
> > Hi,
> 
> Hi,
> 
> > I have a Sil3112A SATA controller, which linux works
> OK
> > with. It supports RAID (up to 4 devices), but I'm
> using
> > BASE option -- only 1 hard drive.
> >
> > My question is regarding a 15-20 second delay which
> > normally occurs every time I boot, unless I pass the
> 
> Please try attached patch and send dmesg output (with
> patch applied).
> Patch is against current 2.6-bk tree, but should apply
> to any recent
> 2.4.x or 2.6.x kernels.
> 
> diff -puN drivers/ide/ide-probe.c~ide-siimage-wait
> drivers/ide/ide-probe.c
> ---
>
linux-2.6.0-test4-bk5/drivers/ide/ide-probe.c~ide-siimage-wait	2003-09-04 01:34:02.285489272 +0200
> +++
>
linux-2.6.0-test4-bk5-root/drivers/ide/ide-probe.c	2003-09-04 01:47:58.145419248 +0200
> @@ -56,6 +56,8 @@
>  #include <asm/uaccess.h>
>  #include <asm/io.h>
>  
> +#define DEBUG
> +
>  /**
>   *	generic_id		-	add a generic drive id
>   *	@drive:	drive to make an ID block for
> @@ -345,7 +347,16 @@ static int actual_try_to_identify
> (ide_d
>  		}
>  		/* give drive a breather */
>  		ide_delay_50ms();
> -	} while ((hwif->INB(hd_status)) & BUSY_STAT);
> +		s = hwif->INB(hd_status);
> +		if (s == 0xff) {
> +#ifdef DEBUG
> +			printk("%s: status == 0xff\n", drive->name);
> +#endif
> +			return 1;
> +		}
> +		if ((s & BUSY_STAT) == 0)
> +			break;
> +	} while (1);
>  
>  	/* wait for IRQ and DRQ_STAT */
>  	ide_delay_50ms();
> 
> _
> 
> > options ide3=0 - ide9=0 to fill up the device
table. I
> > think I have to do this because if I do only ide3=0
> > (where the device would be), it uses ide4, and so
on.
> I
> > have GRUB set up to do this automatically, but it's
> not
> > exactly adequate (,is it?). So I was wondering if
> > there're any other ways to get the same affect. Is
or
> > could there be an option to simply disable the
probing
> > of the one specific device/channel every time?
> 
> "ide3=noprobe" doesnt work?
> 
> --bartlomiej

Brien

^ permalink raw reply	[flat|nested] 5+ messages in thread
* Re: SATA probe delay on boot
@ 2003-09-04 11:04 Brien
  0 siblings, 0 replies; 5+ messages in thread
From: Brien @ 2003-09-04 11:04 UTC (permalink / raw)
  To: B.Zolnierkiewicz; +Cc: linux-kernel

On Thu, 4 Sep 2003 01:53:07 +0200, Bartlomiej
Zolnierkiewicz wrote:

Bartlomiej,

I applied this patch on 2.6.0-test4-bk5 just now, and
this is the (I think relative(?) -- tell me if you want
something else) section of dmesg output:

SiI3112 Serial ATA: IDE controller at PCI slot
0000:00:10.0
SiI3112 Serial ATA: chipset revision 2
SiI3112 Serial ATA: 100% native mode on irq 11
    ide2: MMIO-DMA at 0xf8807000-0xf8807007, BIOS
settings: hde:pio, hdf:pio
    ide3: MMIO-DMA at 0xf8807008-0xf880700f, BIOS
settings: hdg:pio, hdh:pio
probing for hde: present=0, media=32, probetype=ATA
hde: WDC WD360GD-00FNA0, ATA DISK drive
probing for hdf: present=0, media=32, probetype=ATA
probing for hdf: present=0, media=32, probetype=ATAPI
ide2 at 0xf8807080-0xf8807087,0xf880708a on irq 11
probing for hdg: present=0, media=32, probetype=ATA
hdg: no response (status = 0xfe)
probing for hdh: present=0, media=32, probetype=ATA
probing for hdh: present=0, media=32, probetype=ATAPI
probing for hdg: present=0, media=32, probetype=ATA
probing for hdg: present=0, media=32, probetype=ATAPI
hdg: no response (status = 0xfe), resetting drive
hdg: no response (status = 0xfe)
probing for hdh: present=0, media=32, probetype=ATA
probing for hdh: present=0, media=32, probetype=ATAPI
probing for hdi: present=0, media=32, probetype=ATA
probing for hdi: present=0, media=32, probetype=ATAPI
probing for hdj: present=0, media=32, probetype=ATA
probing for hdj: present=0, media=32, probetype=ATAPI
probing for hdk: present=0, media=32, probetype=ATA
probing for hdk: present=0, media=32, probetype=ATAPI
probing for hdl: present=0, media=32, probetype=ATA
probing for hdl: present=0, media=32, probetype=ATAPI

It doesn't seem right. And it actually takes 2-3 times
as long now. 

Brien

> On Thursday 04 of September 2003 01:18,
admin@brien.com
> wrote:
> > Hi,
> 
> Hi,
> 
> > I have a Sil3112A SATA controller, which linux works
> OK
> > with. It supports RAID (up to 4 devices), but I'm
> using
> > BASE option -- only 1 hard drive.
> >
> > My question is regarding a 15-20 second delay which
> > normally occurs every time I boot, unless I pass the
> 
> Please try attached patch and send dmesg output (with
> patch applied).
> Patch is against current 2.6-bk tree, but should apply
> to any recent
> 2.4.x or 2.6.x kernels.
> 
> diff -puN drivers/ide/ide-probe.c~ide-siimage-wait
> drivers/ide/ide-probe.c
> ---
>
linux-2.6.0-test4-bk5/drivers/ide/ide-probe.c~ide-siimage-wait	2003-09-04
01:34:02.285489272 +0200
> +++
>
linux-2.6.0-test4-bk5-root/drivers/ide/ide-probe.c	2003-09-04 01:47:58.145419248
+0200
> @@ -56,6 +56,8 @@
>  #include <asm/uaccess.h>
>  #include <asm/io.h>
>  
> +#define DEBUG
> +
>  /**
>   *	generic_id		-	add a generic drive id
>   *	@drive:	drive to make an ID block for
> @@ -345,7 +347,16 @@ static int actual_try_to_identify
> (ide_d
>  		}
>  		/* give drive a breather */
>  		ide_delay_50ms();
> -	} while ((hwif->INB(hd_status)) & BUSY_STAT);
> +		s = hwif->INB(hd_status);
> +		if (s == 0xff) {
> +#ifdef DEBUG
> +			printk("%s: status == 0xff\n", drive->name);
> +#endif
> +			return 1;
> +		}
> +		if ((s & BUSY_STAT) == 0)
> +			break;
> +	} while (1);
>  
>  	/* wait for IRQ and DRQ_STAT */
>  	ide_delay_50ms();
> 
> _
> 
> > options ide3=0 - ide9=0 to fill up the device
table. I
> > think I have to do this because if I do only ide3=0
> > (where the device would be), it uses ide4, and so
on.
> I
> > have GRUB set up to do this automatically, but it's
> not
> > exactly adequate (,is it?). So I was wondering if
> > there're any other ways to get the same affect. Is
or
> > could there be an option to simply disable the
probing
> > of the one specific device/channel every time?
> 
> "ide3=noprobe" doesnt work?
> 
> --bartlomiej
> 
> -

Brien

^ permalink raw reply	[flat|nested] 5+ messages in thread
* SATA probe delay on boot
@ 2003-09-03 23:18 admin
  2003-09-03 23:53 ` Bartlomiej Zolnierkiewicz
  0 siblings, 1 reply; 5+ messages in thread
From: admin @ 2003-09-03 23:18 UTC (permalink / raw)
  To: linux-kernel

Hi,

I have a Sil3112A SATA controller, which linux works OK
with. It supports RAID (up to 4 devices), but I'm using
BASE option -- only 1 hard drive.

My question is regarding a 15-20 second delay which
normally occurs every time I boot, unless I pass the
options ide3=0 - ide9=0 to fill up the device table. I
think I have to do this because if I do only ide3=0
(where the device would be), it uses ide4, and so on. I
have GRUB set up to do this automatically, but it's not
exactly adequate (,is it?). So I was wondering if
there're any other ways to get the same affect. Is or
could there be an option to simply disable the probing
of the one specific device/channel every time?

Thanks,

Brien

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2003-09-04 11:04 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2003-09-04  0:54 SATA probe delay on boot Brien
2003-09-04  4:55 ` Andre Hedrick
  -- strict thread matches above, loose matches on Subject: below --
2003-09-04 11:04 Brien
2003-09-03 23:18 admin
2003-09-03 23:53 ` Bartlomiej Zolnierkiewicz

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).