Modular ata chipsets data

John Baldwin jhb at freebsd.org
Wed Oct 8 21:45:17 UTC 2008


On Saturday 04 October 2008 02:31:35 pm Søren Schmidt wrote:
> I found the devel tree with a modulerized ATA subsystem in it, and  
> just upgraded it to the latest greatest from -current.
> It can be found on http://deepcore.dk/pub/ATA as two files, ata- 
> modules-diff that contains a diff for /sys/conf/files and ata- 
> modules.tgz that is a replacement for /sys/dev/ata.
> This turns the chipset parts into a module for each vendor, and they  
> are all compiled in as is, however they can be left out on a pr vendor  
> basis (there are a few interdependencies though).
> I havn't written all the /sys/modules/ata/*/Makefiles that it would  
> take to make it into loadable modules, but thats trivial todo.
> 
> Now what I'd like to find good generic solutions to is:
> 
> How to select the proper modules at config/compile time without  
> drowning in "option ATA_BLA_BLA" in the config.

What happens with mii is that you have a choice, you can either use 'device 
miibus' in which case you get all of the various drivers and the 
infrastructure, or you can use 'device mii', 'device rlphy', etc. if you wish 
to take a more fine-grained approach.  Similarly, there is a miibus.ko that 
just depends on all the sub-drivers so you can still do 'kldload miibus.ko' 
to load all of them.  I think this is probably a fine model as it will still 
load everything by default, but people who care about the space savings can 
trim things down as desired.

-- 
John Baldwin


More information about the freebsd-arch mailing list