Modular ata chipsets data
Søren Schmidt
sos at FreeBSD.ORG
Sat Oct 4 10:51:19 UTC 2008
Hi
(Please keep me CC'd as I do not normally read the list)
Anyhow, what I would like to see is that the chipset support get moved
into kernel modules, preferably auto-loadable when a given vendor is
detected, but for starters that could be left out. This is the way to
go for vendor supplied modules as well. I have a least 2 vendors that
are looking into that way of providing support for new chipsets. For a
small kernel you just load the module(s) you need and voila.
I have VIP in that direction, but its not finished yet, but spiitting
up things is pretty trivial for the most part, except a few gotchas
here and there that will make at least autoloading a wee bit tricky.
I guess the tedious part is to get all the code moved around into
seperate files, how the actual compile/link/load should be done is a
minor part that can be added when the seperaion is done.
However, I do have most of that in place in a tree here, so thats more
or less done already, I just need to pull out the right tree here and
that part should be dealt with more or less.
PS: in your patch you suddenly got exclusive Copyright on the Intel
and AHCI code, that will get you bad karma :)
-Søren
On 4Oct, 2008, at 4:17 , Oleksandr Tymoshenko wrote:
> Hello -arch,
>
> I was playing with p4 mips2 branch catching up with recent
> developments
> and trying to reduce kernel size for MALTA configuration. At some
> point
> I ran into ata-chipset.c. This file contains all ATA chipsets
> supported
> by FreeBSD so it was a natural candidate for axing. I hacked small
> proof-of-concept framework for pluggable ATA chipsets. The idea is to
> move all vendor-related code to separated modules (.c, not .ko),
> register each during compile/link-time using ATA_CHIPSET macros
> (utilizes DATA_SET for this purpose) and provide each chipset with
> kernel config option. Something like this Warner did to miibus/*phy
> about two years ago.
>
> So far I got only Intel vendor working (tested with Gxemul) and would
> like to know if it's worth to keep moving in this direction and what
> possible pitfalls may appear.
>
> 90Kb is not that dramatical improvement :), but it's better then
> nothing
> and code readability should be better after splitting 180K file into
> several, IMHO.
>
> Patch: http://people.freebsd.org/~gonzo/embedded/modular-ata.diff
> don't mind copyrights, they're automatically inserted by vim.
>
> --
> gonzo
>
-Søren
More information about the freebsd-arch
mailing list