Re: viapropm doesnt like sys/dev/pci.c rev 1.214

From: David P. Reese Jr. <daver_at_gomerbud.com>
Date: Tue, 3 Jun 2003 10:54:30 -0700
On Tue, Jun 03, 2003 at 01:54:36AM -0500, Conrad Sabatier wrote:
> 
> On 02-Jun-2003 Nicolas Souchu wrote:
> > On Sun, Jun 01, 2003 at 01:52:57AM +0200, Dag-Erling Smorgrav wrote:
> >> 
> >> viapropm is seriously broken for other reasons and needs professional
> >> help.
> > 
> > What kind of breakage? Setting resources in probe? Right. Anybody having
> > the viapm driver loaded usually should please try the attached patch.
> 
> I'm sorry to report that those patches didn't fix the problem for me.  They
> all applied cleanly, I built a new kernel, but I still see the same
> messages at boot.  Couldn't enable port mapping.

The problem is a disagreement with the new io_method code and the viapropm
chip.  From Nicolas Souchu's previous email:

: The datasheet states that the command bits are RW but "fixed at 0".

A snip of code from sys/dev/pci/pci.c:pci_enable_io_method():

        pci_set_command_bit(dev, child, bit);
        command = PCI_READ_CONFIG(dev, child, PCIR_COMMAND, 2);
        if (command & bit)
                return (0);
        device_printf(child, "failed to enable %s mapping!\n", error);
        return (ENXIO);

Because the viapropm's command register bits will always read as zero,
this code will always fail when trying to enable port mapping.

Whatever problems viapropm may have, it is the new pci code that prevents it
from attaching.  It is not the fault of anything in sys/pci/viapm.c.

-- 

   David P. Reese Jr.                                      daver_at_gomerbud.com
   --------------------------------------------------------------------------
   It can be argued that returning a NULL pointer when asked to allocate
   zero bytes is a silly response to a silly question.
                                         -- FreeBSD manual page for malloc(3)
Received on Tue Jun 03 2003 - 08:54:34 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:37:10 UTC