Subject: LKM Device Drivers
To: None <tech-kern@netbsd.org>
From: Jared D. McNeill <jmcneill@invisible.ca>
List: tech-kern
Date: 04/12/2002 20:57:27
I'm currently working on LKM device driver support, but am running into
some problems. The biggest problem is that I can't load dependencies with
the way LKMs are currently handled. Consider the following:
modload mii.o
modload mii_bitbang.o
modload mii_phy.o
modload nsphy.o
modload if_ex_pci.o
if_ex_pci.o depends on functions found in the other modules, but without
an in-kernel linker, I have no way of doing this easily.
So, the solution that I'm using right now, is chainloading a copy of each
dependency with each driver. I wrote a script that uses modstat and
proper use of the -A and -o flags to load a driver and any dependencies
specified on the command line.
Any ideas on a better way to do this? I don't know if I am up for adding
an in-kernel linker quite yet..
Regards,
Jared