Subject: Re: i386 - Cannot boot from wd(Promise Ultra100) with infinite
To: None <bouyer@antioche.eu.org>
From: NISHIO Yasuhiro <nishio@hh.iij4u.or.jp>
List: current-users
Date: 10/20/2003 07:56:11
Bouyer san
Thank you for your patch.

> can you try the attached patch on your U100 ? This solves the "bogus intr"
> messages for me

I tried it. Unfortunately kernel displays the "bogus intr" messages
again.

> > uum, I'll try to use another IDE card at this week-end if I can get it.

I tried with U66, and I got following message.

                :
        fd0 at fdc0 drive 0: 1.44MB, 80 cyl, 2 head, 18 sec
        Kernelized RAIDframe activated
        pdcide0:0: bogus intr (reg 0x1131520)
        pdcide0:0: bogus intr (reg 0x1131520)
        pdcide0:0: bogus intr (reg 0x1131520)
                :

But I found workaround. That is ``do NOT attach "QUANTUM FIREBALL" to
Ultra100 or Ultra66''.  I think my QUANTUM FIREBALL has
hardware/firmware bug.

Here is the summary;
--------------------

Kernel: NetBSD-current 2003-09-19 21:40:00 UTC or later

  - The "bogus intr" message appears only when the "QUANTUM
    <FIREBALLlct15 30>"  attached to Ultra100. (reappearance 100%)

    There is no effect if
	- remove Other(cbb, fxp, wm) PCI Card,
        - replace PCI card slot,
        - use new UDMA100 IDE cable.
	- disable/enable on board IDE,
	- disable/enable VGA IRQ,
	- disable/enable on board USB,
	- etc.

  - pdcide driver work well with
	- SEAGATE <ST340810ACE> on U100 Primary master
	  Western Digital <WDC WD136AA> on U100 Secondary master	
	- WDC on Primary, ST on Secondary


  - U66(PDC20262) & FIREBALL dose not work.
        ``pdcide0:0: bogus intr (reg 0x1131520)''

        only ``pdcide0:0:...'' messages, ``pdcide0:0:..'' and
        ``pdcide0:1:...'' when I used U100.

  ==> FIREBALL has hardware bug?
----------

Now, I attach the FIREBALL to on board IDE. 
And I updated the kernel(2003/10/19), system works fine.

Bouyer-san, I'd like to say thank you again.
-- 
NISHIO Yasuhiro

P.S.
I built following kernel(GENERIC).

 - netbsd.2130 (NetBSD-current 2003-09-19 21:30:00 UTC)
 - netbsd.2140 (NetBSD-current 2003-09-19 21:40:00 UTC)

 netbsd.2130 works fine with U66/100 and FIREBALL.
 netbsd.3140 dose not work with U66/100 and FIREBALL.

 # ident netbsd.2130 > 2130.id
 # ident netbsd.2140 > 2140.id
 # diff 2130.id 2140.id
  1c1
  < netbsd.2130:
  ---
  > netbsd.2140:
  312c312
  <      $NetBSD: wdc.c,v 1.124 2003/09/17 11:56:19 drochner Exp $
  ---
  >      $NetBSD: wdc.c,v 1.125 2003/09/19 21:36:02 mycroft Exp $
  675c675
  <      $NetBSD: atapi_wdc.c,v 1.56 2003/09/07 22:11:22 mycroft Exp $
  ---
  >      $NetBSD: atapi_wdc.c,v 1.57 2003/09/19 21:36:09 mycroft Exp $
  689c689
  <      $NetBSD: wd.c,v 1.260 2003/08/03 17:53:04 bouyer Exp $
  ---
  >      $NetBSD: wd.c,v 1.261 2003/09/19 21:36:01 mycroft Exp $
  740c740
  <      $NetBSD: pciide.c,v 1.199 2003/09/17 16:55:20 bouyer Exp $
  ---
  >      $NetBSD: pciide.c,v 1.200 2003/09/19 21:36:05 mycroft Exp $
  837c837
  <      $NetBSD: wdc_isa.c,v 1.31 2003/05/09 23:51:29 fvdl Exp $
  ---
  >      $NetBSD: wdc_isa.c,v 1.32 2003/09/19 21:36:04 mycroft Exp $
  892c892
  <      $NetBSD: wdc_isapnp.c,v 1.19 2003/03/22 20:05:20 matt Exp $
  ---
  >      $NetBSD: wdc_isapnp.c,v 1.20 2003/09/19 21:36:04 mycroft Exp $
  1076c1076
  <      $NetBSD: wdc_pcmcia.c,v 1.55 2003/03/30 02:06:29 matt Exp $
  ---
  >      $NetBSD: wdc_pcmcia.c,v 1.56 2003/09/19 21:36:07 mycroft Exp $
====================  
I tried to understand that the difference of above(wdc.c, pciide.c).
It's hard to me to understand.