diff options
Diffstat (limited to 'Documentation/feature-removal-schedule.txt')
-rw-r--r-- | Documentation/feature-removal-schedule.txt | 602 |
1 files changed, 602 insertions, 0 deletions
diff --git a/Documentation/feature-removal-schedule.txt b/Documentation/feature-removal-schedule.txt new file mode 100644 index 00000000000..4dc46547766 --- /dev/null +++ b/Documentation/feature-removal-schedule.txt | |||
@@ -0,0 +1,602 @@ | |||
1 | The following is a list of files and features that are going to be | ||
2 | removed in the kernel source tree. Every entry should contain what | ||
3 | exactly is going away, why it is happening, and who is going to be doing | ||
4 | the work. When the feature is removed from the kernel, it should also | ||
5 | be removed from this file. | ||
6 | |||
7 | --------------------------- | ||
8 | |||
9 | What: x86 floppy disable_hlt | ||
10 | When: 2012 | ||
11 | Why: ancient workaround of dubious utility clutters the | ||
12 | code used by everybody else. | ||
13 | Who: Len Brown <len.brown@intel.com> | ||
14 | |||
15 | --------------------------- | ||
16 | |||
17 | What: CONFIG_APM_CPU_IDLE, and its ability to call APM BIOS in idle | ||
18 | When: 2012 | ||
19 | Why: This optional sub-feature of APM is of dubious reliability, | ||
20 | and ancient APM laptops are likely better served by calling HLT. | ||
21 | Deleting CONFIG_APM_CPU_IDLE allows x86 to stop exporting | ||
22 | the pm_idle function pointer to modules. | ||
23 | Who: Len Brown <len.brown@intel.com> | ||
24 | |||
25 | ---------------------------- | ||
26 | |||
27 | What: x86_32 "no-hlt" cmdline param | ||
28 | When: 2012 | ||
29 | Why: remove a branch from idle path, simplify code used by everybody. | ||
30 | This option disabled the use of HLT in idle and machine_halt() | ||
31 | for hardware that was flakey 15-years ago. Today we have | ||
32 | "idle=poll" that removed HLT from idle, and so if such a machine | ||
33 | is still running the upstream kernel, "idle=poll" is likely sufficient. | ||
34 | Who: Len Brown <len.brown@intel.com> | ||
35 | |||
36 | ---------------------------- | ||
37 | |||
38 | What: x86 "idle=mwait" cmdline param | ||
39 | When: 2012 | ||
40 | Why: simplify x86 idle code | ||
41 | Who: Len Brown <len.brown@intel.com> | ||
42 | |||
43 | ---------------------------- | ||
44 | |||
45 | What: PRISM54 | ||
46 | When: 2.6.34 | ||
47 | |||
48 | Why: prism54 FullMAC PCI / Cardbus devices used to be supported only by the | ||
49 | prism54 wireless driver. After Intersil stopped selling these | ||
50 | devices in preference for the newer more flexible SoftMAC devices | ||
51 | a SoftMAC device driver was required and prism54 did not support | ||
52 | them. The p54pci driver now exists and has been present in the kernel for | ||
53 | a while. This driver supports both SoftMAC devices and FullMAC devices. | ||
54 | The main difference between these devices was the amount of memory which | ||
55 | could be used for the firmware. The SoftMAC devices support a smaller | ||
56 | amount of memory. Because of this the SoftMAC firmware fits into FullMAC | ||
57 | devices's memory. p54pci supports not only PCI / Cardbus but also USB | ||
58 | and SPI. Since p54pci supports all devices prism54 supports | ||
59 | you will have a conflict. I'm not quite sure how distributions are | ||
60 | handling this conflict right now. prism54 was kept around due to | ||
61 | claims users may experience issues when using the SoftMAC driver. | ||
62 | Time has passed users have not reported issues. If you use prism54 | ||
63 | and for whatever reason you cannot use p54pci please let us know! | ||
64 | E-mail us at: linux-wireless@vger.kernel.org | ||
65 | |||
66 | For more information see the p54 wiki page: | ||
67 | |||
68 | http://wireless.kernel.org/en/users/Drivers/p54 | ||
69 | |||
70 | Who: Luis R. Rodriguez <lrodriguez@atheros.com> | ||
71 | |||
72 | --------------------------- | ||
73 | |||
74 | What: IRQF_SAMPLE_RANDOM | ||
75 | Check: IRQF_SAMPLE_RANDOM | ||
76 | When: July 2009 | ||
77 | |||
78 | Why: Many of IRQF_SAMPLE_RANDOM users are technically bogus as entropy | ||
79 | sources in the kernel's current entropy model. To resolve this, every | ||
80 | input point to the kernel's entropy pool needs to better document the | ||
81 | type of entropy source it actually is. This will be replaced with | ||
82 | additional add_*_randomness functions in drivers/char/random.c | ||
83 | |||
84 | Who: Robin Getz <rgetz@blackfin.uclinux.org> & Matt Mackall <mpm@selenic.com> | ||
85 | |||
86 | --------------------------- | ||
87 | |||
88 | What: Deprecated snapshot ioctls | ||
89 | When: 2.6.36 | ||
90 | |||
91 | Why: The ioctls in kernel/power/user.c were marked as deprecated long time | ||
92 | ago. Now they notify users about that so that they need to replace | ||
93 | their userspace. After some more time, remove them completely. | ||
94 | |||
95 | Who: Jiri Slaby <jirislaby@gmail.com> | ||
96 | |||
97 | --------------------------- | ||
98 | |||
99 | What: The ieee80211_regdom module parameter | ||
100 | When: March 2010 / desktop catchup | ||
101 | |||
102 | Why: This was inherited by the CONFIG_WIRELESS_OLD_REGULATORY code, | ||
103 | and currently serves as an option for users to define an | ||
104 | ISO / IEC 3166 alpha2 code for the country they are currently | ||
105 | present in. Although there are userspace API replacements for this | ||
106 | through nl80211 distributions haven't yet caught up with implementing | ||
107 | decent alternatives through standard GUIs. Although available as an | ||
108 | option through iw or wpa_supplicant its just a matter of time before | ||
109 | distributions pick up good GUI options for this. The ideal solution | ||
110 | would actually consist of intelligent designs which would do this for | ||
111 | the user automatically even when travelling through different countries. | ||
112 | Until then we leave this module parameter as a compromise. | ||
113 | |||
114 | When userspace improves with reasonable widely-available alternatives for | ||
115 | this we will no longer need this module parameter. This entry hopes that | ||
116 | by the super-futuristically looking date of "March 2010" we will have | ||
117 | such replacements widely available. | ||
118 | |||
119 | Who: Luis R. Rodriguez <lrodriguez@atheros.com> | ||
120 | |||
121 | --------------------------- | ||
122 | |||
123 | What: dev->power.power_state | ||
124 | When: July 2007 | ||
125 | Why: Broken design for runtime control over driver power states, confusing | ||
126 | driver-internal runtime power management with: mechanisms to support | ||
127 | system-wide sleep state transitions; event codes that distinguish | ||
128 | different phases of swsusp "sleep" transitions; and userspace policy | ||
129 | inputs. This framework was never widely used, and most attempts to | ||
130 | use it were broken. Drivers should instead be exposing domain-specific | ||
131 | interfaces either to kernel or to userspace. | ||
132 | Who: Pavel Machek <pavel@ucw.cz> | ||
133 | |||
134 | --------------------------- | ||
135 | |||
136 | What: sys_sysctl | ||
137 | When: September 2010 | ||
138 | Option: CONFIG_SYSCTL_SYSCALL | ||
139 | Why: The same information is available in a more convenient from | ||
140 | /proc/sys, and none of the sysctl variables appear to be | ||
141 | important performance wise. | ||
142 | |||
143 | Binary sysctls are a long standing source of subtle kernel | ||
144 | bugs and security issues. | ||
145 | |||
146 | When I looked several months ago all I could find after | ||
147 | searching several distributions were 5 user space programs and | ||
148 | glibc (which falls back to /proc/sys) using this syscall. | ||
149 | |||
150 | The man page for sysctl(2) documents it as unusable for user | ||
151 | space programs. | ||
152 | |||
153 | sysctl(2) is not generally ABI compatible to a 32bit user | ||
154 | space application on a 64bit and a 32bit kernel. | ||
155 | |||
156 | For the last several months the policy has been no new binary | ||
157 | sysctls and no one has put forward an argument to use them. | ||
158 | |||
159 | Binary sysctls issues seem to keep happening appearing so | ||
160 | properly deprecating them (with a warning to user space) and a | ||
161 | 2 year grace warning period will mean eventually we can kill | ||
162 | them and end the pain. | ||
163 | |||
164 | In the mean time individual binary sysctls can be dealt with | ||
165 | in a piecewise fashion. | ||
166 | |||
167 | Who: Eric Biederman <ebiederm@xmission.com> | ||
168 | |||
169 | --------------------------- | ||
170 | |||
171 | What: /proc/<pid>/oom_adj | ||
172 | When: August 2012 | ||
173 | Why: /proc/<pid>/oom_adj allows userspace to influence the oom killer's | ||
174 | badness heuristic used to determine which task to kill when the kernel | ||
175 | is out of memory. | ||
176 | |||
177 | The badness heuristic has since been rewritten since the introduction of | ||
178 | this tunable such that its meaning is deprecated. The value was | ||
179 | implemented as a bitshift on a score generated by the badness() | ||
180 | function that did not have any precise units of measure. With the | ||
181 | rewrite, the score is given as a proportion of available memory to the | ||
182 | task allocating pages, so using a bitshift which grows the score | ||
183 | exponentially is, thus, impossible to tune with fine granularity. | ||
184 | |||
185 | A much more powerful interface, /proc/<pid>/oom_score_adj, was | ||
186 | introduced with the oom killer rewrite that allows users to increase or | ||
187 | decrease the badness score linearly. This interface will replace | ||
188 | /proc/<pid>/oom_adj. | ||
189 | |||
190 | A warning will be emitted to the kernel log if an application uses this | ||
191 | deprecated interface. After it is printed once, future warnings will be | ||
192 | suppressed until the kernel is rebooted. | ||
193 | |||
194 | --------------------------- | ||
195 | |||
196 | What: remove EXPORT_SYMBOL(kernel_thread) | ||
197 | When: August 2006 | ||
198 | Files: arch/*/kernel/*_ksyms.c | ||
199 | Check: kernel_thread | ||
200 | Why: kernel_thread is a low-level implementation detail. Drivers should | ||
201 | use the <linux/kthread.h> API instead which shields them from | ||
202 | implementation details and provides a higherlevel interface that | ||
203 | prevents bugs and code duplication | ||
204 | Who: Christoph Hellwig <hch@lst.de> | ||
205 | |||
206 | --------------------------- | ||
207 | |||
208 | What: Unused EXPORT_SYMBOL/EXPORT_SYMBOL_GPL exports | ||
209 | (temporary transition config option provided until then) | ||
210 | The transition config option will also be removed at the same time. | ||
211 | When: before 2.6.19 | ||
212 | Why: Unused symbols are both increasing the size of the kernel binary | ||
213 | and are often a sign of "wrong API" | ||
214 | Who: Arjan van de Ven <arjan@linux.intel.com> | ||
215 | |||
216 | --------------------------- | ||
217 | |||
218 | What: PHYSDEVPATH, PHYSDEVBUS, PHYSDEVDRIVER in the uevent environment | ||
219 | When: October 2008 | ||
220 | Why: The stacking of class devices makes these values misleading and | ||
221 | inconsistent. | ||
222 | Class devices should not carry any of these properties, and bus | ||
223 | devices have SUBSYTEM and DRIVER as a replacement. | ||
224 | Who: Kay Sievers <kay.sievers@suse.de> | ||
225 | |||
226 | --------------------------- | ||
227 | |||
228 | What: ACPI procfs interface | ||
229 | When: July 2008 | ||
230 | Why: ACPI sysfs conversion should be finished by January 2008. | ||
231 | ACPI procfs interface will be removed in July 2008 so that | ||
232 | there is enough time for the user space to catch up. | ||
233 | Who: Zhang Rui <rui.zhang@intel.com> | ||
234 | |||
235 | --------------------------- | ||
236 | |||
237 | What: CONFIG_ACPI_PROCFS_POWER | ||
238 | When: 2.6.39 | ||
239 | Why: sysfs I/F for ACPI power devices, including AC and Battery, | ||
240 | has been working in upstream kernel since 2.6.24, Sep 2007. | ||
241 | In 2.6.37, we make the sysfs I/F always built in and this option | ||
242 | disabled by default. | ||
243 | Remove this option and the ACPI power procfs interface in 2.6.39. | ||
244 | Who: Zhang Rui <rui.zhang@intel.com> | ||
245 | |||
246 | --------------------------- | ||
247 | |||
248 | What: /proc/acpi/event | ||
249 | When: February 2008 | ||
250 | Why: /proc/acpi/event has been replaced by events via the input layer | ||
251 | and netlink since 2.6.23. | ||
252 | Who: Len Brown <len.brown@intel.com> | ||
253 | |||
254 | --------------------------- | ||
255 | |||
256 | What: i386/x86_64 bzImage symlinks | ||
257 | When: April 2010 | ||
258 | |||
259 | Why: The i386/x86_64 merge provides a symlink to the old bzImage | ||
260 | location so not yet updated user space tools, e.g. package | ||
261 | scripts, do not break. | ||
262 | Who: Thomas Gleixner <tglx@linutronix.de> | ||
263 | |||
264 | --------------------------- | ||
265 | |||
266 | What: GPIO autorequest on gpio_direction_{input,output}() in gpiolib | ||
267 | When: February 2010 | ||
268 | Why: All callers should use explicit gpio_request()/gpio_free(). | ||
269 | The autorequest mechanism in gpiolib was provided mostly as a | ||
270 | migration aid for legacy GPIO interfaces (for SOC based GPIOs). | ||
271 | Those users have now largely migrated. Platforms implementing | ||
272 | the GPIO interfaces without using gpiolib will see no changes. | ||
273 | Who: David Brownell <dbrownell@users.sourceforge.net> | ||
274 | --------------------------- | ||
275 | |||
276 | What: b43 support for firmware revision < 410 | ||
277 | When: The schedule was July 2008, but it was decided that we are going to keep the | ||
278 | code as long as there are no major maintanance headaches. | ||
279 | So it _could_ be removed _any_ time now, if it conflicts with something new. | ||
280 | Why: The support code for the old firmware hurts code readability/maintainability | ||
281 | and slightly hurts runtime performance. Bugfixes for the old firmware | ||
282 | are not provided by Broadcom anymore. | ||
283 | Who: Michael Buesch <m@bues.ch> | ||
284 | |||
285 | --------------------------- | ||
286 | |||
287 | What: Ability for non root users to shm_get hugetlb pages based on mlock | ||
288 | resource limits | ||
289 | When: 2.6.31 | ||
290 | Why: Non root users need to be part of /proc/sys/vm/hugetlb_shm_group or | ||
291 | have CAP_IPC_LOCK to be able to allocate shm segments backed by | ||
292 | huge pages. The mlock based rlimit check to allow shm hugetlb is | ||
293 | inconsistent with mmap based allocations. Hence it is being | ||
294 | deprecated. | ||
295 | Who: Ravikiran Thirumalai <kiran@scalex86.org> | ||
296 | |||
297 | --------------------------- | ||
298 | |||
299 | What: Code that is now under CONFIG_WIRELESS_EXT_SYSFS | ||
300 | (in net/core/net-sysfs.c) | ||
301 | When: After the only user (hal) has seen a release with the patches | ||
302 | for enough time, probably some time in 2010. | ||
303 | Why: Over 1K .text/.data size reduction, data is available in other | ||
304 | ways (ioctls) | ||
305 | Who: Johannes Berg <johannes@sipsolutions.net> | ||
306 | |||
307 | --------------------------- | ||
308 | |||
309 | What: sysfs ui for changing p4-clockmod parameters | ||
310 | When: September 2009 | ||
311 | Why: See commits 129f8ae9b1b5be94517da76009ea956e89104ce8 and | ||
312 | e088e4c9cdb618675874becb91b2fd581ee707e6. | ||
313 | Removal is subject to fixing any remaining bugs in ACPI which may | ||
314 | cause the thermal throttling not to happen at the right time. | ||
315 | Who: Dave Jones <davej@redhat.com>, Matthew Garrett <mjg@redhat.com> | ||
316 | |||
317 | ----------------------------- | ||
318 | |||
319 | What: fakephp and associated sysfs files in /sys/bus/pci/slots/ | ||
320 | When: 2011 | ||
321 | Why: In 2.6.27, the semantics of /sys/bus/pci/slots was redefined to | ||
322 | represent a machine's physical PCI slots. The change in semantics | ||
323 | had userspace implications, as the hotplug core no longer allowed | ||
324 | drivers to create multiple sysfs files per physical slot (required | ||
325 | for multi-function devices, e.g.). fakephp was seen as a developer's | ||
326 | tool only, and its interface changed. Too late, we learned that | ||
327 | there were some users of the fakephp interface. | ||
328 | |||
329 | In 2.6.30, the original fakephp interface was restored. At the same | ||
330 | time, the PCI core gained the ability that fakephp provided, namely | ||
331 | function-level hot-remove and hot-add. | ||
332 | |||
333 | Since the PCI core now provides the same functionality, exposed in: | ||
334 | |||
335 | /sys/bus/pci/rescan | ||
336 | /sys/bus/pci/devices/.../remove | ||
337 | /sys/bus/pci/devices/.../rescan | ||
338 | |||
339 | there is no functional reason to maintain fakephp as well. | ||
340 | |||
341 | We will keep the existing module so that 'modprobe fakephp' will | ||
342 | present the old /sys/bus/pci/slots/... interface for compatibility, | ||
343 | but users are urged to migrate their applications to the API above. | ||
344 | |||
345 | After a reasonable transition period, we will remove the legacy | ||
346 | fakephp interface. | ||
347 | Who: Alex Chiang <achiang@hp.com> | ||
348 | |||
349 | --------------------------- | ||
350 | |||
351 | What: CONFIG_RFKILL_INPUT | ||
352 | When: 2.6.33 | ||
353 | Why: Should be implemented in userspace, policy daemon. | ||
354 | Who: Johannes Berg <johannes@sipsolutions.net> | ||
355 | |||
356 | ---------------------------- | ||
357 | |||
358 | What: sound-slot/service-* module aliases and related clutters in | ||
359 | sound/sound_core.c | ||
360 | When: August 2010 | ||
361 | Why: OSS sound_core grabs all legacy minors (0-255) of SOUND_MAJOR | ||
362 | (14) and requests modules using custom sound-slot/service-* | ||
363 | module aliases. The only benefit of doing this is allowing | ||
364 | use of custom module aliases which might as well be considered | ||
365 | a bug at this point. This preemptive claiming prevents | ||
366 | alternative OSS implementations. | ||
367 | |||
368 | Till the feature is removed, the kernel will be requesting | ||
369 | both sound-slot/service-* and the standard char-major-* module | ||
370 | aliases and allow turning off the pre-claiming selectively via | ||
371 | CONFIG_SOUND_OSS_CORE_PRECLAIM and soundcore.preclaim_oss | ||
372 | kernel parameter. | ||
373 | |||
374 | After the transition phase is complete, both the custom module | ||
375 | aliases and switches to disable it will go away. This removal | ||
376 | will also allow making ALSA OSS emulation independent of | ||
377 | sound_core. The dependency will be broken then too. | ||
378 | Who: Tejun Heo <tj@kernel.org> | ||
379 | |||
380 | ---------------------------- | ||
381 | |||
382 | What: sysfs-class-rfkill state file | ||
383 | When: Feb 2014 | ||
384 | Files: net/rfkill/core.c | ||
385 | Why: Documented as obsolete since Feb 2010. This file is limited to 3 | ||
386 | states while the rfkill drivers can have 4 states. | ||
387 | Who: anybody or Florian Mickler <florian@mickler.org> | ||
388 | |||
389 | ---------------------------- | ||
390 | |||
391 | What: sysfs-class-rfkill claim file | ||
392 | When: Feb 2012 | ||
393 | Files: net/rfkill/core.c | ||
394 | Why: It is not possible to claim an rfkill driver since 2007. This is | ||
395 | Documented as obsolete since Feb 2010. | ||
396 | Who: anybody or Florian Mickler <florian@mickler.org> | ||
397 | |||
398 | ---------------------------- | ||
399 | |||
400 | What: KVM paravirt mmu host support | ||
401 | When: January 2011 | ||
402 | Why: The paravirt mmu host support is slower than non-paravirt mmu, both | ||
403 | on newer and older hardware. It is already not exposed to the guest, | ||
404 | and kept only for live migration purposes. | ||
405 | Who: Avi Kivity <avi@redhat.com> | ||
406 | |||
407 | ---------------------------- | ||
408 | |||
409 | What: iwlwifi 50XX module parameters | ||
410 | When: 3.0 | ||
411 | Why: The "..50" modules parameters were used to configure 5000 series and | ||
412 | up devices; different set of module parameters also available for 4965 | ||
413 | with same functionalities. Consolidate both set into single place | ||
414 | in drivers/net/wireless/iwlwifi/iwl-agn.c | ||
415 | |||
416 | Who: Wey-Yi Guy <wey-yi.w.guy@intel.com> | ||
417 | |||
418 | ---------------------------- | ||
419 | |||
420 | What: iwl4965 alias support | ||
421 | When: 3.0 | ||
422 | Why: Internal alias support has been present in module-init-tools for some | ||
423 | time, the MODULE_ALIAS("iwl4965") boilerplate aliases can be removed | ||
424 | with no impact. | ||
425 | |||
426 | Who: Wey-Yi Guy <wey-yi.w.guy@intel.com> | ||
427 | |||
428 | --------------------------- | ||
429 | |||
430 | What: xt_NOTRACK | ||
431 | Files: net/netfilter/xt_NOTRACK.c | ||
432 | When: April 2011 | ||
433 | Why: Superseded by xt_CT | ||
434 | Who: Netfilter developer team <netfilter-devel@vger.kernel.org> | ||
435 | |||
436 | ---------------------------- | ||
437 | |||
438 | What: IRQF_DISABLED | ||
439 | When: 2.6.36 | ||
440 | Why: The flag is a NOOP as we run interrupt handlers with interrupts disabled | ||
441 | Who: Thomas Gleixner <tglx@linutronix.de> | ||
442 | |||
443 | ---------------------------- | ||
444 | |||
445 | What: PCI DMA unmap state API | ||
446 | When: August 2012 | ||
447 | Why: PCI DMA unmap state API (include/linux/pci-dma.h) was replaced | ||
448 | with DMA unmap state API (DMA unmap state API can be used for | ||
449 | any bus). | ||
450 | Who: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp> | ||
451 | |||
452 | ---------------------------- | ||
453 | |||
454 | What: iwlwifi disable_hw_scan module parameters | ||
455 | When: 3.0 | ||
456 | Why: Hareware scan is the prefer method for iwlwifi devices for | ||
457 | scanning operation. Remove software scan support for all the | ||
458 | iwlwifi devices. | ||
459 | |||
460 | Who: Wey-Yi Guy <wey-yi.w.guy@intel.com> | ||
461 | |||
462 | ---------------------------- | ||
463 | |||
464 | What: Legacy, non-standard chassis intrusion detection interface. | ||
465 | When: June 2011 | ||
466 | Why: The adm9240, w83792d and w83793 hardware monitoring drivers have | ||
467 | legacy interfaces for chassis intrusion detection. A standard | ||
468 | interface has been added to each driver, so the legacy interface | ||
469 | can be removed. | ||
470 | Who: Jean Delvare <khali@linux-fr.org> | ||
471 | |||
472 | ---------------------------- | ||
473 | |||
474 | What: xt_connlimit rev 0 | ||
475 | When: 2012 | ||
476 | Who: Jan Engelhardt <jengelh@medozas.de> | ||
477 | Files: net/netfilter/xt_connlimit.c | ||
478 | |||
479 | ---------------------------- | ||
480 | |||
481 | What: ipt_addrtype match include file | ||
482 | When: 2012 | ||
483 | Why: superseded by xt_addrtype | ||
484 | Who: Florian Westphal <fw@strlen.de> | ||
485 | Files: include/linux/netfilter_ipv4/ipt_addrtype.h | ||
486 | |||
487 | ---------------------------- | ||
488 | |||
489 | What: i2c_driver.attach_adapter | ||
490 | i2c_driver.detach_adapter | ||
491 | When: September 2011 | ||
492 | Why: These legacy callbacks should no longer be used as i2c-core offers | ||
493 | a variety of preferable alternative ways to instantiate I2C devices. | ||
494 | Who: Jean Delvare <khali@linux-fr.org> | ||
495 | |||
496 | ---------------------------- | ||
497 | |||
498 | What: Support for UVCIOC_CTRL_ADD in the uvcvideo driver | ||
499 | When: 3.2 | ||
500 | Why: The information passed to the driver by this ioctl is now queried | ||
501 | dynamically from the device. | ||
502 | Who: Laurent Pinchart <laurent.pinchart@ideasonboard.com> | ||
503 | |||
504 | ---------------------------- | ||
505 | |||
506 | What: Support for UVCIOC_CTRL_MAP_OLD in the uvcvideo driver | ||
507 | When: 3.2 | ||
508 | Why: Used only by applications compiled against older driver versions. | ||
509 | Superseded by UVCIOC_CTRL_MAP which supports V4L2 menu controls. | ||
510 | Who: Laurent Pinchart <laurent.pinchart@ideasonboard.com> | ||
511 | |||
512 | ---------------------------- | ||
513 | |||
514 | What: Support for UVCIOC_CTRL_GET and UVCIOC_CTRL_SET in the uvcvideo driver | ||
515 | When: 3.2 | ||
516 | Why: Superseded by the UVCIOC_CTRL_QUERY ioctl. | ||
517 | Who: Laurent Pinchart <laurent.pinchart@ideasonboard.com> | ||
518 | |||
519 | ---------------------------- | ||
520 | |||
521 | What: Support for driver specific ioctls in the pwc driver (everything | ||
522 | defined in media/pwc-ioctl.h) | ||
523 | When: 3.3 | ||
524 | Why: This stems from the v4l1 era, with v4l2 everything can be done with | ||
525 | standardized v4l2 API calls | ||
526 | Who: Hans de Goede <hdegoede@redhat.com> | ||
527 | |||
528 | ---------------------------- | ||
529 | |||
530 | What: Driver specific sysfs API in the pwc driver | ||
531 | When: 3.3 | ||
532 | Why: Setting pan/tilt should be done with v4l2 controls, like with other | ||
533 | cams. The button is available as a standard input device | ||
534 | Who: Hans de Goede <hdegoede@redhat.com> | ||
535 | |||
536 | ---------------------------- | ||
537 | |||
538 | What: Driver specific use of pixfmt.priv in the pwc driver | ||
539 | When: 3.3 | ||
540 | Why: The .priv field never was intended for this, setting a framerate is | ||
541 | support using the standardized S_PARM ioctl | ||
542 | Who: Hans de Goede <hdegoede@redhat.com> | ||
543 | |||
544 | ---------------------------- | ||
545 | |||
546 | What: Software emulation of arbritary resolutions in the pwc driver | ||
547 | When: 3.3 | ||
548 | Why: The pwc driver claims to support any resolution between 160x120 | ||
549 | and 640x480, but emulates this by simply drawing a black border | ||
550 | around the image. Userspace can draw its own black border if it | ||
551 | really wants one. | ||
552 | Who: Hans de Goede <hdegoede@redhat.com> | ||
553 | |||
554 | ---------------------------- | ||
555 | |||
556 | What: For VIDIOC_S_FREQUENCY the type field must match the device node's type. | ||
557 | If not, return -EINVAL. | ||
558 | When: 3.2 | ||
559 | Why: It makes no sense to switch the tuner to radio mode by calling | ||
560 | VIDIOC_S_FREQUENCY on a video node, or to switch the tuner to tv mode by | ||
561 | calling VIDIOC_S_FREQUENCY on a radio node. This is the first step of a | ||
562 | move to more consistent handling of tv and radio tuners. | ||
563 | Who: Hans Verkuil <hans.verkuil@cisco.com> | ||
564 | |||
565 | ---------------------------- | ||
566 | |||
567 | What: Opening a radio device node will no longer automatically switch the | ||
568 | tuner mode from tv to radio. | ||
569 | When: 3.3 | ||
570 | Why: Just opening a V4L device should not change the state of the hardware | ||
571 | like that. It's very unexpected and against the V4L spec. Instead, you | ||
572 | switch to radio mode by calling VIDIOC_S_FREQUENCY. This is the second | ||
573 | and last step of the move to consistent handling of tv and radio tuners. | ||
574 | Who: Hans Verkuil <hans.verkuil@cisco.com> | ||
575 | |||
576 | ---------------------------- | ||
577 | |||
578 | What: g_file_storage driver | ||
579 | When: 3.8 | ||
580 | Why: This driver has been superseded by g_mass_storage. | ||
581 | Who: Alan Stern <stern@rowland.harvard.edu> | ||
582 | |||
583 | ---------------------------- | ||
584 | |||
585 | What: threeg and interface sysfs files in /sys/devices/platform/acer-wmi | ||
586 | When: 2012 | ||
587 | Why: In 3.0, we can now autodetect internal 3G device and already have | ||
588 | the threeg rfkill device. So, we plan to remove threeg sysfs support | ||
589 | for it's no longer necessary. | ||
590 | |||
591 | We also plan to remove interface sysfs file that exposed which ACPI-WMI | ||
592 | interface that was used by acer-wmi driver. It will replaced by | ||
593 | information log when acer-wmi initial. | ||
594 | Who: Lee, Chun-Yi <jlee@novell.com> | ||
595 | |||
596 | ---------------------------- | ||
597 | What: The XFS nodelaylog mount option | ||
598 | When: 3.3 | ||
599 | Why: The delaylog mode that has been the default since 2.6.39 has proven | ||
600 | stable, and the old code is in the way of additional improvements in | ||
601 | the log code. | ||
602 | Who: Christoph Hellwig <hch@lst.de> | ||