Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 4 Jun 2009 20:14:13 +0000
From:      "Paul B. Mahol" <onemda@gmail.com>
To:        AJ Shipley <aric.shipley@gmail.com>
Cc:        freebsd-drivers@freebsd.org
Subject:   Re: Kernel Loadable Driver vs. Custom Compiled Driver Question
Message-ID:  <3a142e750906041314o5666cfc5ibe93b1810e1b825@mail.gmail.com>
In-Reply-To: <be8835320906041202g18ee68ccm159501adc7d17f4d@mail.gmail.com>

index | next in thread | previous in thread | raw e-mail

On 6/4/09, AJ Shipley <aric.shipley@gmail.com> wrote:
> Hi,
>
> I am in the process of integrating a 3rd party HW vendor's driver into
> our FreeBSD code base.  The driver works when it is loaded as a KLM
> using kldload -v <driver_name> but when I modified the kernel using
> config and compiled the driver into the kernel, it does not work.  The
> kernel builds and installs fine, but the driver does not load
> correctly.
>
> I was able to verify that the first 10 steps of the driver works
> during load in both cases and that the driver is loading the device
> into the same PCI memory range (it's a PCI based HW card).  However,
> at a critical step in the driver, it polls an ISR register waiting for
> a bit to toggle high indicating that the board is ready and out of
> reset and it never does, and eventually hits the driver timeout and
> aborts its load.
>
> Why would a driver work as a KLM but not statically compiled into the
> kernel?

Races?

-- 
Paul


home | help

Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?3a142e750906041314o5666cfc5ibe93b1810e1b825>