diff options
author | Mauro Carvalho Chehab <mchehab@s-opensource.com> | 2016-09-19 07:07:52 -0400 |
---|---|---|
committer | Jonathan Corbet <corbet@lwn.net> | 2016-09-20 20:39:07 -0400 |
commit | ceeb1a541556dc4aacd8f51d2000a55b079fa3da (patch) | |
tree | cab09f57024981734325d186a6dabe50059c3d8c /Documentation/SubmittingDrivers | |
parent | 5fe270a47ebf594a3c538a3c44e9a20a96015b19 (diff) |
Documentation/SubmittingDrivers: convert it to ReST markup
- Change the document title markup to make it on a higher level;
- Add blank lines as needed, to improve the output;
- use italics for the country-code at kernel.org ftp URL.
Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Diffstat (limited to 'Documentation/SubmittingDrivers')
-rw-r--r-- | Documentation/SubmittingDrivers | 45 |
1 files changed, 31 insertions, 14 deletions
diff --git a/Documentation/SubmittingDrivers b/Documentation/SubmittingDrivers index 31d372609ac0..a2f30a9e28d1 100644 --- a/Documentation/SubmittingDrivers +++ b/Documentation/SubmittingDrivers | |||
@@ -1,5 +1,5 @@ | |||
1 | Submitting Drivers For The Linux Kernel | 1 | Submitting Drivers For The Linux Kernel |
2 | --------------------------------------- | 2 | ======================================= |
3 | 3 | ||
4 | This document is intended to explain how to submit device drivers to the | 4 | This document is intended to explain how to submit device drivers to the |
5 | various kernel trees. Note that if you are interested in video card drivers | 5 | various kernel trees. Note that if you are interested in video card drivers |
@@ -46,34 +46,39 @@ Linux 2.6: | |||
46 | What Criteria Determine Acceptance | 46 | What Criteria Determine Acceptance |
47 | ---------------------------------- | 47 | ---------------------------------- |
48 | 48 | ||
49 | Licensing: The code must be released to us under the | 49 | Licensing: |
50 | The code must be released to us under the | ||
50 | GNU General Public License. We don't insist on any kind | 51 | GNU General Public License. We don't insist on any kind |
51 | of exclusive GPL licensing, and if you wish the driver | 52 | of exclusive GPL licensing, and if you wish the driver |
52 | to be useful to other communities such as BSD you may well | 53 | to be useful to other communities such as BSD you may well |
53 | wish to release under multiple licenses. | 54 | wish to release under multiple licenses. |
54 | See accepted licenses at include/linux/module.h | 55 | See accepted licenses at include/linux/module.h |
55 | 56 | ||
56 | Copyright: The copyright owner must agree to use of GPL. | 57 | Copyright: |
58 | The copyright owner must agree to use of GPL. | ||
57 | It's best if the submitter and copyright owner | 59 | It's best if the submitter and copyright owner |
58 | are the same person/entity. If not, the name of | 60 | are the same person/entity. If not, the name of |
59 | the person/entity authorizing use of GPL should be | 61 | the person/entity authorizing use of GPL should be |
60 | listed in case it's necessary to verify the will of | 62 | listed in case it's necessary to verify the will of |
61 | the copyright owner. | 63 | the copyright owner. |
62 | 64 | ||
63 | Interfaces: If your driver uses existing interfaces and behaves like | 65 | Interfaces: |
66 | If your driver uses existing interfaces and behaves like | ||
64 | other drivers in the same class it will be much more likely | 67 | other drivers in the same class it will be much more likely |
65 | to be accepted than if it invents gratuitous new ones. | 68 | to be accepted than if it invents gratuitous new ones. |
66 | If you need to implement a common API over Linux and NT | 69 | If you need to implement a common API over Linux and NT |
67 | drivers do it in userspace. | 70 | drivers do it in userspace. |
68 | 71 | ||
69 | Code: Please use the Linux style of code formatting as documented | 72 | Code: |
73 | Please use the Linux style of code formatting as documented | ||
70 | in Documentation/CodingStyle. If you have sections of code | 74 | in Documentation/CodingStyle. If you have sections of code |
71 | that need to be in other formats, for example because they | 75 | that need to be in other formats, for example because they |
72 | are shared with a windows driver kit and you want to | 76 | are shared with a windows driver kit and you want to |
73 | maintain them just once separate them out nicely and note | 77 | maintain them just once separate them out nicely and note |
74 | this fact. | 78 | this fact. |
75 | 79 | ||
76 | Portability: Pointers are not always 32bits, not all computers are little | 80 | Portability: |
81 | Pointers are not always 32bits, not all computers are little | ||
77 | endian, people do not all have floating point and you | 82 | endian, people do not all have floating point and you |
78 | shouldn't use inline x86 assembler in your driver without | 83 | shouldn't use inline x86 assembler in your driver without |
79 | careful thought. Pure x86 drivers generally are not popular. | 84 | careful thought. Pure x86 drivers generally are not popular. |
@@ -81,12 +86,14 @@ Portability: Pointers are not always 32bits, not all computers are little | |||
81 | but it is easy to make sure the code can easily be made | 86 | but it is easy to make sure the code can easily be made |
82 | portable. | 87 | portable. |
83 | 88 | ||
84 | Clarity: It helps if anyone can see how to fix the driver. It helps | 89 | Clarity: |
90 | It helps if anyone can see how to fix the driver. It helps | ||
85 | you because you get patches not bug reports. If you submit a | 91 | you because you get patches not bug reports. If you submit a |
86 | driver that intentionally obfuscates how the hardware works | 92 | driver that intentionally obfuscates how the hardware works |
87 | it will go in the bitbucket. | 93 | it will go in the bitbucket. |
88 | 94 | ||
89 | PM support: Since Linux is used on many portable and desktop systems, your | 95 | PM support: |
96 | Since Linux is used on many portable and desktop systems, your | ||
90 | driver is likely to be used on such a system and therefore it | 97 | driver is likely to be used on such a system and therefore it |
91 | should support basic power management by implementing, if | 98 | should support basic power management by implementing, if |
92 | necessary, the .suspend and .resume methods used during the | 99 | necessary, the .suspend and .resume methods used during the |
@@ -101,7 +108,8 @@ PM support: Since Linux is used on many portable and desktop systems, your | |||
101 | complete overview of the power management issues related to | 108 | complete overview of the power management issues related to |
102 | drivers see Documentation/power/devices.txt . | 109 | drivers see Documentation/power/devices.txt . |
103 | 110 | ||
104 | Control: In general if there is active maintenance of a driver by | 111 | Control: |
112 | In general if there is active maintenance of a driver by | ||
105 | the author then patches will be redirected to them unless | 113 | the author then patches will be redirected to them unless |
106 | they are totally obvious and without need of checking. | 114 | they are totally obvious and without need of checking. |
107 | If you want to be the contact and update point for the | 115 | If you want to be the contact and update point for the |
@@ -111,13 +119,15 @@ Control: In general if there is active maintenance of a driver by | |||
111 | What Criteria Do Not Determine Acceptance | 119 | What Criteria Do Not Determine Acceptance |
112 | ----------------------------------------- | 120 | ----------------------------------------- |
113 | 121 | ||
114 | Vendor: Being the hardware vendor and maintaining the driver is | 122 | Vendor: |
123 | Being the hardware vendor and maintaining the driver is | ||
115 | often a good thing. If there is a stable working driver from | 124 | often a good thing. If there is a stable working driver from |
116 | other people already in the tree don't expect 'we are the | 125 | other people already in the tree don't expect 'we are the |
117 | vendor' to get your driver chosen. Ideally work with the | 126 | vendor' to get your driver chosen. Ideally work with the |
118 | existing driver author to build a single perfect driver. | 127 | existing driver author to build a single perfect driver. |
119 | 128 | ||
120 | Author: It doesn't matter if a large Linux company wrote the driver, | 129 | Author: |
130 | It doesn't matter if a large Linux company wrote the driver, | ||
121 | or you did. Nobody has any special access to the kernel | 131 | or you did. Nobody has any special access to the kernel |
122 | tree. Anyone who tells you otherwise isn't telling the | 132 | tree. Anyone who tells you otherwise isn't telling the |
123 | whole story. | 133 | whole story. |
@@ -127,8 +137,10 @@ Resources | |||
127 | --------- | 137 | --------- |
128 | 138 | ||
129 | Linux kernel master tree: | 139 | Linux kernel master tree: |
130 | ftp.??.kernel.org:/pub/linux/kernel/... | 140 | ftp.\ *country_code*\ .kernel.org:/pub/linux/kernel/... |
131 | ?? == your country code, such as "us", "uk", "fr", etc. | 141 | |
142 | where *country_code* == your country code, such as | ||
143 | **us**, **uk**, **fr**, etc. | ||
132 | 144 | ||
133 | http://git.kernel.org/?p=linux/kernel/git/torvalds/linux.git | 145 | http://git.kernel.org/?p=linux/kernel/git/torvalds/linux.git |
134 | 146 | ||
@@ -141,14 +153,19 @@ Linux Device Drivers, Third Edition (covers 2.6.10): | |||
141 | 153 | ||
142 | LWN.net: | 154 | LWN.net: |
143 | Weekly summary of kernel development activity - http://lwn.net/ | 155 | Weekly summary of kernel development activity - http://lwn.net/ |
156 | |||
144 | 2.6 API changes: | 157 | 2.6 API changes: |
158 | |||
145 | http://lwn.net/Articles/2.6-kernel-api/ | 159 | http://lwn.net/Articles/2.6-kernel-api/ |
160 | |||
146 | Porting drivers from prior kernels to 2.6: | 161 | Porting drivers from prior kernels to 2.6: |
162 | |||
147 | http://lwn.net/Articles/driver-porting/ | 163 | http://lwn.net/Articles/driver-porting/ |
148 | 164 | ||
149 | KernelNewbies: | 165 | KernelNewbies: |
150 | Documentation and assistance for new kernel programmers | 166 | Documentation and assistance for new kernel programmers |
151 | http://kernelnewbies.org/ | 167 | |
168 | http://kernelnewbies.org/ | ||
152 | 169 | ||
153 | Linux USB project: | 170 | Linux USB project: |
154 | http://www.linux-usb.org/ | 171 | http://www.linux-usb.org/ |