Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 7 Feb 2010 18:14:21 +0200
From:      David Naylor <naylor.b.david@gmail.com>
To:        James Colannino <james@colannino.org>
Cc:        freebsd-questions@freebsd.org
Subject:   Re: Modules and Custom Kernels
Message-ID:  <201002071814.25374.naylor.b.david@gmail.com>
In-Reply-To: <4B6E3623.2070109@colannino.org>
References:  <4B6E3623.2070109@colannino.org>

next in thread | previous in thread | raw e-mail | index | archive | help
--nextPart2098885.e8g3DqyreY
Content-Type: text/plain;
  charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

Hi James

On Sunday 07 February 2010 05:40:19 James Colannino wrote:
> Hey everyone.  Please bear with me as I'm very new to FreeBSD.  I've
> recently started building a custom kernel after having had to apply a
> patch to enable support for my wireless device (Atheros 9285) in
> 8.0-RELEASE, and had a quick question about the process in general.

If you are building custom kernels then you are not that new to FreeBSD ;-)

> According to the documentation, a line with device <driver name> will
> cause that driver to be compiled into the kernel.  If one of those lines
> is commented out, does that mean that the driver will still be built,
> but that it will be installed as a module?  I didn't see anything that
> told me that explicitly in the documentation, but that's the feeling I
> got from what I read.  I just want to make sure that my assumption is
> correct, and if not, how to make sure that something gets built as a
> module rather than built directly into the kernel.

Not all devices have a corresponding module (or some are bundled together i=
n a=20
single module).  Most of the devices you are interested in do have modules =
but=20
the module names are not always the same as the device name (i.e. network=20
devices have a if_ prefixed to the module name). =20

=46or further information have a look at the manual pages for a given devic=
e. =20
e.g. `man 4 bge` shows that bge requires devices miibus and bge in the kern=
el=20
or can be loaded using `if_bge_load=3D"YES"` in loader.conf(5).  This impli=
es=20
the module name is if_bge.  `man 4 sc` shows that no module is available (b=
ut=20
it does have many options that can be specified in the kernel configuration=
=20
file). =20

By default all modules are built (even those whose devices are build in the=
=20
kernel).  This behaviour can be changed.  For a list of all the modules=20
available look at /sys/modules and `ls /boot/kernel/*.ko`. =20

> In all, the process looks relatively painless as long as I'm careful not
> to make too many changes to the GENERIC config.

I normally just copy GENERIC and tweak it but there are better ways than th=
is. =20

> Hopefully this isn't a dumb question :)  I really like FreeBSD so far,
> and think I'm going to enjoy my new experience quite a bit.

Not at all.  Enjoy :-)

Regards,

David

--nextPart2098885.e8g3DqyreY
Content-Type: application/pgp-signature; name=signature.asc 
Content-Description: This is a digitally signed message part.

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.14 (FreeBSD)

iEYEABECAAYFAktu5uEACgkQUaaFgP9pFrIURACggvKsyV35iIZBEN6N20MFa6Nu
dAUAn33TeSjJdrObkVvxPHLs2jo6F/1K
=E88a
-----END PGP SIGNATURE-----

--nextPart2098885.e8g3DqyreY--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201002071814.25374.naylor.b.david>