Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 15 Nov 2005 09:19:09 -0700 (MST)
From:      Warner Losh <imp@bsdimp.com>
To:        jhb@freebsd.org
Cc:        freebsd-drivers@freebsd.org
Subject:   Re: How to make my new driver be configurable in the kernel configuration file?
Message-ID:  <20051115.091909.74713594.imp@bsdimp.com>
In-Reply-To: <200511151022.00866.jhb@freebsd.org>
References:  <20051115085943.D5A72101E4@ws1-3.us4.outblaze.com> <200511151022.00866.jhb@freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
From: John Baldwin <jhb@freebsd.org>
Subject: Re: How to make my new driver be configurable in the kernel configuration file?
Date: Tue, 15 Nov 2005 10:21:59 -0500

> On Tuesday 15 November 2005 03:59 am, Yong Ma wrote:
> > Hi all,
> > I wrote and debuged my driver for a new device in KLD mode,now I want to
> > plug it into the kernel,so that it can be loaded when the system  boots,and
> > make it be configurable in the kernel configuration file like other device
> > driver as "device XXX",I don't know what to do,could anyone be kind to help
> > me?
> 
> To add your driver you update the src/sys/conf/files* files.  If your driver 
> is machine independent, you can add it to src/sys/conf/files.  For example, 
> here are the lines in sys/conf/files for the cy(4) driver:
> 
> dev/cy/cy.c                     optional cy
> dev/cy/cy_isa.c                 optional cy isa
> dev/cy/cy_pci.c                 optional cy pci
> 
> If your driver only works on a single architecture (such as i386) then add it 
> to the architecture file sys/conf/files.<arch> (e.g. sys/conf/files.i386).  
> The device names after 'optional' specify which devices must be enabled in 
> the kernel config for that file to be included.  Thus, in the example above, 
> src/sys/dev/cy/cy.c is included as long as 'device cy' is in the kernel, but 
> src/sys/dev/cy/cy_isa.c is only included if both 'device cy' and 'device isa' 
> are in the kernel config file.

You can augment the system files with the files directive if you don't
want to edit sys/conf/files.foo:

files "/foo/bar/baz"

and put something like the above in that.

Warner




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20051115.091909.74713594.imp>