mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* Intel 845 Boards / 82801DB IDE Chipset / resource collisions
@ 2002-07-25 13:24 Reinhard Moosauer
  2002-07-25 13:48 ` Andre Hedrick
  0 siblings, 1 reply; 2+ messages in thread
From: Reinhard Moosauer @ 2002-07-25 13:24 UTC (permalink / raw)
  To: linux-kernel; +Cc: tspinillo

(Please answer to directly to my email too. Thanks!)

Hello List,

some people had problems with
Intel IDE Chips on 845E Boards. ( "resource collisions" )

Yesterday I had the same problem.

Alan Cox said:
> If you look with lspci -v you will find your BIOS has mismapped or
> forgotten to map some of the control register space for that device.
>
> Alan

IMHO there must be a bios bug (latest rev.), because the io resources are left 
unassigned. But why does the kernel not fix it?
After reading many questions and no answers, I looked into the kernel source. 
 
I found this block in arch/i386/kernel/pci-i386.c:

==================
     /*
     *  Don't touch IDE controllers and I/O ports of video cards!
     */
      if ((class == PCI_CLASS_STORAGE_IDE && idx < 4) ||
           (class == PCI_CLASS_DISPLAY_VGA && (r->flags & IORESOURCE_IO)))
                  continue;
====================

lspci shows indeed the first 4 resources unassigned.

To work around the problem I inserted these lines:
(just before the above block)

========================
                        /* HACK
                         * Reinhard Moosauer, 2002-07-25
                         */
                        if ((class == PCI_CLASS_STORAGE_IDE && idx < 4) &&
                                (!r->start && r->end)) {
                          printk(KERN_ERR "HACK: INTEL IDE Workaround for"
                               " %s Resource %d\n",  dev->slot_name, idx);

			/* I ACCEPT NO RESPOSIBILITY FOR ANY DAMAGE */
                          pci_assign_resource(dev, idx);
                        }
==========================


It really works. 
As I saw on the list, many other people had the same problem
so I thought, the gurus should take a look at this.

Note1: Please do not use this before anybody gave an OK to it!
I am just playing sorcerer's apprentice.

Note2: You need a patch for kernels before 2.4.19 or so to use the new Intel 
Chipsets (when he says "unknown device 0x24cb" or so) . I have one for 
2.4.18.

I hope, this helps someone.

Kind regards,

Reinhard


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

* Re: Intel 845 Boards / 82801DB IDE Chipset / resource collisions
  2002-07-25 13:24 Intel 845 Boards / 82801DB IDE Chipset / resource collisions Reinhard Moosauer
@ 2002-07-25 13:48 ` Andre Hedrick
  0 siblings, 0 replies; 2+ messages in thread
From: Andre Hedrick @ 2002-07-25 13:48 UTC (permalink / raw)
  To: Reinhard Moosauer; +Cc: linux-kernel, tspinillo


You opinion is wrong.

It is designed that way to conform to the requirements of WHQL and WinXP.
Doing a generic bitchslap of the resources is dangerous and foolish.
This kind of correction needs to be handled discretely at the device
driver and not at setup, well not as deranged as you have presented.

What you are missing is the following.

If you have more than one pci device in the system reporting with the 
PCI_CLASS_STORAGE_IDE in the class, you end up blowing away the settings.
Cause the only resources it can now about are isa_legacy rules.



On Thu, 25 Jul 2002, Reinhard Moosauer wrote:

> (Please answer to directly to my email too. Thanks!)
> 
> Hello List,
> 
> some people had problems with
> Intel IDE Chips on 845E Boards. ( "resource collisions" )
> 
> Yesterday I had the same problem.
> 
> Alan Cox said:
> > If you look with lspci -v you will find your BIOS has mismapped or
> > forgotten to map some of the control register space for that device.
> >
> > Alan
> 
> IMHO there must be a bios bug (latest rev.), because the io resources are left 
> unassigned. But why does the kernel not fix it?
> After reading many questions and no answers, I looked into the kernel source. 
>  
> I found this block in arch/i386/kernel/pci-i386.c:
> 
> ==================
>      /*
>      *  Don't touch IDE controllers and I/O ports of video cards!
>      */
>       if ((class == PCI_CLASS_STORAGE_IDE && idx < 4) ||
>            (class == PCI_CLASS_DISPLAY_VGA && (r->flags & IORESOURCE_IO)))
>                   continue;
> ====================
> 
> lspci shows indeed the first 4 resources unassigned.
> 
> To work around the problem I inserted these lines:
> (just before the above block)
> 
> ========================
>                         /* HACK
>                          * Reinhard Moosauer, 2002-07-25
>                          */
>                         if ((class == PCI_CLASS_STORAGE_IDE && idx < 4) &&
>                                 (!r->start && r->end)) {
>                           printk(KERN_ERR "HACK: INTEL IDE Workaround for"
>                                " %s Resource %d\n",  dev->slot_name, idx);
> 
> 			/* I ACCEPT NO RESPOSIBILITY FOR ANY DAMAGE */
>                           pci_assign_resource(dev, idx);
>                         }
> ==========================
> 
> 
> It really works. 
> As I saw on the list, many other people had the same problem
> so I thought, the gurus should take a look at this.
> 
> Note1: Please do not use this before anybody gave an OK to it!
> I am just playing sorcerer's apprentice.
> 
> Note2: You need a patch for kernels before 2.4.19 or so to use the new Intel 
> Chipsets (when he says "unknown device 0x24cb" or so) . I have one for 
> 2.4.18.
> 
> I hope, this helps someone.
> 
> Kind regards,
> 
> Reinhard
> 
> -
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at  http://www.tux.org/lkml/
> 

Andre Hedrick
LAD Storage Consulting Group


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

end of thread, other threads:[~2002-07-25 13:52 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2002-07-25 13:24 Intel 845 Boards / 82801DB IDE Chipset / resource collisions Reinhard Moosauer
2002-07-25 13:48 ` Andre Hedrick

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®