Re: Question about several drivers for one physical device

From: Geert Uytterhoeven
Date: Tue Dec 30 2008 - 10:05:45 EST


On Tue, 30 Dec 2008, Per Andreas Gulbrandsen wrote:
> I have two drivers that both use the same device, an FPGA connected
> via pci. These two pci drivers represent different functionality in
> the FPGA, and they each have it's own BAR. My problem is that I can't
> get these two drivers to correctly initialize. Only the first one
> loaded actually finds the device (which one of the two doesn't
> matter). The second driver I load never has it's probe method run, and
> so it doesn't initialize correctly. I am aware that integrating these
> two drivers in one module is a possiblity, but since these two drivers
> aren't really related (except that they both drive an FPGA) I would
> like to keep them as two separate modules. My question is really: Is
> there another way to do this, or will I have to integrate the two so
> they share init/exit/probe methods?

You can create a third driver that binds to the PCI device and creates a new
bus type with two devices. Then the two other drivers can bind to the latter
two devices.

Gr{oetje,eeting}s,

Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@xxxxxxxxxxxxxx

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/