Location of files for a new driver
Greg KH
greg at kroah.com
Tue May 5 14:05:36 EDT 2020
On Tue, May 05, 2020 at 04:38:06PM +0200, Jacko Dirks wrote:
> On Tue, May 05, 2020 at 04:20:32PM +0200, Greg KH wrote:
> > drivers/staging/ is only for code that needs lots and lots of work to
> > get into the "real" part of the kernel. It also requires a TODO file
> > that lists what is left to do to get it out of that location.
>
> Oh, I did not know that staging was optional. Well, I will attempt to
> skip staging in that case
Please do :)
> > It all depends on what you are writing. What exactly does this code do?
> > That will determine where it goes in the kernel tree.
>
> The code is a driver for the Broadcom BSC, which lives on the Raspberry
> Pi 3 & 4 (at least, maybe also on 1 & 2). This device can act as an I2C
> slave. To "announce" the device (tell the device tree which pins need to
> be configured how, etcetera) I need to change existing dts/dtsi files,
> to actually be able to enable the device I need to create a new overlay.
> Finally, the actual driver needs to be created in drivers/i2c/busses. And
> then there is also some makefile, documentation and kconfig.
>
> Does that sound right?
Sounds correct to me. It's easy to move files around if you make up a
patch and submit it to the mailing lists and people tell you to do so.
The harder part is writing a driver that works :)
good luck!
greg k-h
More information about the Kernelnewbies
mailing list