This section of the Kernelnewbies site is meant as a guide on how to get code merged into the upstream kernel.
["/WhyMergeUpstream"] why should I merge my code into the upstream kernel?
Helpful documents from the kernel tree:
["/SubmittingDrivers"] how to submit device drivers to the linux kernel
["/SubmittingPatches"] how to submit patches to the linux kernel
["/SubmitChecklist"] a checklist for submitting code upstream