hwmon: (coretemp) Don't use threshold registers for tempX_max
[linux-2.6.git] / Documentation / feature-removal-schedule.txt
index b273d35..4dc4654 100644 (file)
@@ -6,6 +6,42 @@ be removed from this file.
 
 ---------------------------
 
+What:  x86 floppy disable_hlt
+When:  2012
+Why:   ancient workaround of dubious utility clutters the
+       code used by everybody else.
+Who:   Len Brown <len.brown@intel.com>
+
+---------------------------
+
+What:  CONFIG_APM_CPU_IDLE, and its ability to call APM BIOS in idle
+When:  2012
+Why:   This optional sub-feature of APM is of dubious reliability,
+       and ancient APM laptops are likely better served by calling HLT.
+       Deleting CONFIG_APM_CPU_IDLE allows x86 to stop exporting
+       the pm_idle function pointer to modules.
+Who:   Len Brown <len.brown@intel.com>
+
+----------------------------
+
+What:  x86_32 "no-hlt" cmdline param
+When:  2012
+Why:   remove a branch from idle path, simplify code used by everybody.
+       This option disabled the use of HLT in idle and machine_halt()
+       for hardware that was flakey 15-years ago.  Today we have
+       "idle=poll" that removed HLT from idle, and so if such a machine
+       is still running the upstream kernel, "idle=poll" is likely sufficient.
+Who:   Len Brown <len.brown@intel.com>
+
+----------------------------
+
+What:  x86 "idle=mwait" cmdline param
+When:  2012
+Why:   simplify x86 idle code
+Who:   Len Brown <len.brown@intel.com>
+
+----------------------------
+
 What:  PRISM54
 When:  2.6.34
 
@@ -93,49 +129,7 @@ Why:        Broken design for runtime control over driver power states, confusing
        inputs.  This framework was never widely used, and most attempts to
        use it were broken.  Drivers should instead be exposing domain-specific
        interfaces either to kernel or to userspace.
-Who:   Pavel Machek <pavel@suse.cz>
-
----------------------------
-
-What:  Video4Linux API 1 ioctls and from Video devices.
-When:  July 2009
-Files: include/linux/videodev.h
-Check: include/linux/videodev.h
-Why:   V4L1 AP1 was replaced by V4L2 API during migration from 2.4 to 2.6
-       series. The old API have lots of drawbacks and don't provide enough
-       means to work with all video and audio standards. The newer API is
-       already available on the main drivers and should be used instead.
-       Newer drivers should use v4l_compat_translate_ioctl function to handle
-       old calls, replacing to newer ones.
-       Decoder iocts are using internally to allow video drivers to
-       communicate with video decoders. This should also be improved to allow
-       V4L2 calls being translated into compatible internal ioctls.
-       Compatibility ioctls will be provided, for a while, via 
-       v4l1-compat module. 
-Who:   Mauro Carvalho Chehab <mchehab@infradead.org>
-
----------------------------
-
-What:  PCMCIA control ioctl (needed for pcmcia-cs [cardmgr, cardctl])
-When:  2.6.35/2.6.36
-Files: drivers/pcmcia/: pcmcia_ioctl.c
-Why:   With the 16-bit PCMCIA subsystem now behaving (almost) like a
-       normal hotpluggable bus, and with it using the default kernel
-       infrastructure (hotplug, driver core, sysfs) keeping the PCMCIA
-       control ioctl needed by cardmgr and cardctl from pcmcia-cs is
-       unnecessary and potentially harmful (it does not provide for
-       proper locking), and makes further cleanups and integration of the
-       PCMCIA subsystem into the Linux kernel device driver model more
-       difficult. The features provided by cardmgr and cardctl are either
-       handled by the kernel itself now or are available in the new
-       pcmciautils package available at
-       http://kernel.org/pub/linux/utils/kernel/pcmcia/
-
-       For all architectures except ARM, the associated config symbol
-       has been removed from kernel 2.6.34; for ARM, it will be likely
-       be removed from kernel 2.6.35. The actual code will then likely
-       be removed from kernel 2.6.36.
-Who:   Dominik Brodowski <linux@dominikbrodowski.net>
+Who:   Pavel Machek <pavel@ucw.cz>
 
 ---------------------------
 
@@ -174,6 +168,31 @@ Who:       Eric Biederman <ebiederm@xmission.com>
 
 ---------------------------
 
+What:  /proc/<pid>/oom_adj
+When:  August 2012
+Why:   /proc/<pid>/oom_adj allows userspace to influence the oom killer's
+       badness heuristic used to determine which task to kill when the kernel
+       is out of memory.
+
+       The badness heuristic has since been rewritten since the introduction of
+       this tunable such that its meaning is deprecated.  The value was
+       implemented as a bitshift on a score generated by the badness()
+       function that did not have any precise units of measure.  With the
+       rewrite, the score is given as a proportion of available memory to the
+       task allocating pages, so using a bitshift which grows the score
+       exponentially is, thus, impossible to tune with fine granularity.
+
+       A much more powerful interface, /proc/<pid>/oom_score_adj, was
+       introduced with the oom killer rewrite that allows users to increase or
+       decrease the badness score linearly.  This interface will replace
+       /proc/<pid>/oom_adj.
+
+       A warning will be emitted to the kernel log if an application uses this
+       deprecated interface.  After it is printed once, future warnings will be
+       suppressed until the kernel is rebooted.
+
+---------------------------
+
 What:  remove EXPORT_SYMBOL(kernel_thread)
 When:  August 2006
 Files: arch/*/kernel/*_ksyms.c
@@ -215,11 +234,14 @@ Who:      Zhang Rui <rui.zhang@intel.com>
 
 ---------------------------
 
-What:  /proc/acpi/button
-When:  August 2007
-Why:   /proc/acpi/button has been replaced by events to the input layer
-       since 2.6.20.
-Who:   Len Brown <len.brown@intel.com>
+What:  CONFIG_ACPI_PROCFS_POWER
+When:  2.6.39
+Why:   sysfs I/F for ACPI power devices, including AC and Battery,
+        has been working in upstream kernel since 2.6.24, Sep 2007.
+       In 2.6.37, we make the sysfs I/F always built in and this option
+       disabled by default.
+       Remove this option and the ACPI power procfs interface in 2.6.39.
+Who:   Zhang Rui <rui.zhang@intel.com>
 
 ---------------------------
 
@@ -258,17 +280,7 @@ When:      The schedule was July 2008, but it was decided that we are going to keep t
 Why:   The support code for the old firmware hurts code readability/maintainability
        and slightly hurts runtime performance. Bugfixes for the old firmware
        are not provided by Broadcom anymore.
-Who:   Michael Buesch <mb@bu3sch.de>
-
----------------------------
-
-What:  /sys/o2cb symlink
-When:  January 2010
-Why:   /sys/fs/o2cb is the proper location for this information - /sys/o2cb
-       exists as a symlink for backwards compatibility for old versions of
-       ocfs2-tools. 2 years should be sufficient time to phase in new versions
-       which know to look in /sys/fs/o2cb.
-Who:   ocfs2-devel@oss.oracle.com
+Who:   Michael Buesch <m@bues.ch>
 
 ---------------------------
 
@@ -284,15 +296,6 @@ Who:       Ravikiran Thirumalai <kiran@scalex86.org>
 
 ---------------------------
 
-What:  CONFIG_THERMAL_HWMON
-When:  January 2009
-Why:   This option was introduced just to allow older lm-sensors userspace
-       to keep working over the upgrade to 2.6.26. At the scheduled time of
-       removal fixed lm-sensors (2.x or 3.x) should be readily available.
-Who:   Rene Herman <rene.herman@gmail.com>
-
----------------------------
-
 What:  Code that is now under CONFIG_WIRELESS_EXT_SYSFS
        (in net/core/net-sysfs.c)
 When:  After the only user (hal) has seen a release with the patches
@@ -303,15 +306,6 @@ Who:       Johannes Berg <johannes@sipsolutions.net>
 
 ---------------------------
 
-What: CONFIG_NF_CT_ACCT
-When: 2.6.29
-Why:  Accounting can now be enabled/disabled without kernel recompilation.
-      Currently used only to set a default value for a feature that is also
-      controlled by a kernel/module/sysfs/sysctl parameter.
-Who:  Krzysztof Piotr Oledzki <ole@ans.pl>
-
----------------------------
-
 What:  sysfs ui for changing p4-clockmod parameters
 When:  September 2009
 Why:   See commits 129f8ae9b1b5be94517da76009ea956e89104ce8 and
@@ -322,14 +316,6 @@ Who:       Dave Jones <davej@redhat.com>, Matthew Garrett <mjg@redhat.com>
 
 -----------------------------
 
-What:  __do_IRQ all in one fits nothing interrupt handler
-When:  2.6.32
-Why:   __do_IRQ was kept for easy migration to the type flow handlers.
-       More than two years of migration time is enough.
-Who:   Thomas Gleixner <tglx@linutronix.de>
-
------------------------------
-
 What:  fakephp and associated sysfs files in /sys/bus/pci/slots/
 When:  2011
 Why:   In 2.6.27, the semantics of /sys/bus/pci/slots was redefined to
@@ -367,24 +353,6 @@ When:      2.6.33
 Why:   Should be implemented in userspace, policy daemon.
 Who:   Johannes Berg <johannes@sipsolutions.net>
 
----------------------------
-
-What:  CONFIG_INOTIFY
-When:  2.6.33
-Why:   last user (audit) will be converted to the newer more generic
-       and more easily maintained fsnotify subsystem
-Who:   Eric Paris <eparis@redhat.com>
-
-----------------------------
-
-What:  lock_policy_rwsem_* and unlock_policy_rwsem_* will not be
-       exported interface anymore.
-When:  2.6.33
-Why:   cpu_policy_rwsem has a new cleaner definition making it local to
-       cpufreq core and contained inside cpufreq.c. Other dependent
-       drivers should not use it in order to safely avoid lockdep issues.
-Who:   Venkatesh Pallipadi <venkatesh.pallipadi@intel.com>
-
 ----------------------------
 
 What:  sound-slot/service-* module aliases and related clutters in
@@ -411,54 +379,6 @@ Who:       Tejun Heo <tj@kernel.org>
 
 ----------------------------
 
-What:  Support for VMware's guest paravirtuliazation technique [VMI] will be
-       dropped.
-When:  2.6.37 or earlier.
-Why:   With the recent innovations in CPU hardware acceleration technologies
-       from Intel and AMD, VMware ran a few experiments to compare these
-       techniques to guest paravirtualization technique on VMware's platform.
-       These hardware assisted virtualization techniques have outperformed the
-       performance benefits provided by VMI in most of the workloads. VMware
-       expects that these hardware features will be ubiquitous in a couple of
-       years, as a result, VMware has started a phased retirement of this
-       feature from the hypervisor. We will be removing this feature from the
-       Kernel too. Right now we are targeting 2.6.37 but can retire earlier if
-       technical reasons (read opportunity to remove major chunk of pvops)
-       arise.
-
-       Please note that VMI has always been an optimization and non-VMI kernels
-       still work fine on VMware's platform.
-       Latest versions of VMware's product which support VMI are,
-       Workstation 7.0 and VSphere 4.0 on ESX side, future maintainence
-       releases for these products will continue supporting VMI.
-
-       For more details about VMI retirement take a look at this,
-       http://blogs.vmware.com/guestosguide/2009/09/vmi-retirement.html
-
-Who:   Alok N Kataria <akataria@vmware.com>
-
-----------------------------
-
-What:  Support for lcd_switch and display_get in asus-laptop driver
-When:  March 2010
-Why:   These two features use non-standard interfaces. There are the
-       only features that really need multiple path to guess what's
-       the right method name on a specific laptop.
-
-       Removing them will allow to remove a lot of code an significantly
-       clean the drivers.
-
-       This will affect the backlight code which won't be able to know
-       if the backlight is on or off. The platform display file will also be
-       write only (like the one in eeepc-laptop).
-
-       This should'nt affect a lot of user because they usually know
-       when their display is on or off.
-
-Who:   Corentin Chary <corentin.chary@gmail.com>
-
-----------------------------
-
 What:  sysfs-class-rfkill state file
 When:  Feb 2014
 Files: net/rfkill/core.c
@@ -477,26 +397,6 @@ Who:       anybody or Florian Mickler <florian@mickler.org>
 
 ----------------------------
 
-What:  capifs
-When:  February 2011
-Files: drivers/isdn/capi/capifs.*
-Why:   udev fully replaces this special file system that only contains CAPI
-       NCCI TTY device nodes. User space (pppdcapiplugin) works without
-       noticing the difference.
-Who:   Jan Kiszka <jan.kiszka@web.de>
-
-----------------------------
-
-What:  xtime, wall_to_monotonic
-When:  2.6.36+
-Files: kernel/time/timekeeping.c include/linux/time.h
-Why:   Cleaning up timekeeping internal values. Please use
-       existing timekeeping accessor functions to access
-       the equivalent functionality.
-Who:   John Stultz <johnstul@us.ibm.com>
-
-----------------------------
-
 What:  KVM paravirt mmu host support
 When:  January 2011
 Why:   The paravirt mmu host support is slower than non-paravirt mmu, both
@@ -507,7 +407,7 @@ Who:        Avi Kivity <avi@redhat.com>
 ----------------------------
 
 What:  iwlwifi 50XX module parameters
-When:  2.6.40
+When:  3.0
 Why:   The "..50" modules parameters were used to configure 5000 series and
        up devices; different set of module parameters also available for 4965
        with same functionalities. Consolidate both set into single place
@@ -518,7 +418,7 @@ Who:        Wey-Yi Guy <wey-yi.w.guy@intel.com>
 ----------------------------
 
 What:  iwl4965 alias support
-When:  2.6.40
+When:  3.0
 Why:   Internal alias support has been present in module-init-tools for some
        time, the MODULE_ALIAS("iwl4965") boilerplate aliases can be removed
        with no impact.
@@ -533,29 +433,6 @@ When:      April 2011
 Why:   Superseded by xt_CT
 Who:   Netfilter developer team <netfilter-devel@vger.kernel.org>
 
----------------------------
-
-What:  video4linux /dev/vtx teletext API support
-When:  2.6.35
-Files: drivers/media/video/saa5246a.c drivers/media/video/saa5249.c
-       include/linux/videotext.h
-Why:   The vtx device nodes have been superseded by vbi device nodes
-       for many years. No applications exist that use the vtx support.
-       Of the two i2c drivers that actually support this API the saa5249
-       has been impossible to use for a year now and no known hardware
-       that supports this device exists. The saa5246a is theoretically
-       supported by the old mxb boards, but it never actually worked.
-
-       In summary: there is no hardware that can use this API and there
-       are no applications actually implementing this API.
-
-       The vtx support still reserves minors 192-223 and we would really
-       like to reuse those for upcoming new functionality. In the unlikely
-       event that new hardware appears that wants to use the functionality
-       provided by the vtx API, then that functionality should be build
-       around the sliced VBI API instead.
-Who:   Hans Verkuil <hverkuil@xs4all.nl>
-
 ----------------------------
 
 What:  IRQF_DISABLED
@@ -565,20 +442,161 @@ Who:     Thomas Gleixner <tglx@linutronix.de>
 
 ----------------------------
 
-What:  old ieee1394 subsystem (CONFIG_IEEE1394)
-When:  2.6.37
-Files: drivers/ieee1394/ except init_ohci1394_dma.c
-Why:   superseded by drivers/firewire/ (CONFIG_FIREWIRE) which offers more
-       features, better performance, and better security, all with smaller
-       and more modern code base
-Who:   Stefan Richter <stefanr@s5r6.in-berlin.de>
+What:  PCI DMA unmap state API
+When:  August 2012
+Why:   PCI DMA unmap state API (include/linux/pci-dma.h) was replaced
+       with DMA unmap state API (DMA unmap state API can be used for
+       any bus).
+Who:   FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
+
+----------------------------
+
+What:  iwlwifi disable_hw_scan module parameters
+When:  3.0
+Why:   Hareware scan is the prefer method for iwlwifi devices for
+       scanning operation. Remove software scan support for all the
+       iwlwifi devices.
+
+Who:   Wey-Yi Guy <wey-yi.w.guy@intel.com>
+
+----------------------------
+
+What:  Legacy, non-standard chassis intrusion detection interface.
+When:  June 2011
+Why:   The adm9240, w83792d and w83793 hardware monitoring drivers have
+       legacy interfaces for chassis intrusion detection. A standard
+       interface has been added to each driver, so the legacy interface
+       can be removed.
+Who:   Jean Delvare <khali@linux-fr.org>
+
+----------------------------
+
+What:  xt_connlimit rev 0
+When:  2012
+Who:   Jan Engelhardt <jengelh@medozas.de>
+Files: net/netfilter/xt_connlimit.c
+
+----------------------------
+
+What:  ipt_addrtype match include file
+When:  2012
+Why:   superseded by xt_addrtype
+Who:   Florian Westphal <fw@strlen.de>
+Files: include/linux/netfilter_ipv4/ipt_addrtype.h
+
+----------------------------
+
+What:  i2c_driver.attach_adapter
+       i2c_driver.detach_adapter
+When:  September 2011
+Why:   These legacy callbacks should no longer be used as i2c-core offers
+       a variety of preferable alternative ways to instantiate I2C devices.
+Who:   Jean Delvare <khali@linux-fr.org>
+
+----------------------------
+
+What:  Support for UVCIOC_CTRL_ADD in the uvcvideo driver
+When:  3.2
+Why:   The information passed to the driver by this ioctl is now queried
+       dynamically from the device.
+Who:   Laurent Pinchart <laurent.pinchart@ideasonboard.com>
 
 ----------------------------
 
-What:  The acpi_sleep=s4_nonvs command line option
-When:  2.6.37
-Files: arch/x86/kernel/acpi/sleep.c
-Why:   superseded by acpi_sleep=nonvs
-Who:   Rafael J. Wysocki <rjw@sisk.pl>
+What:  Support for UVCIOC_CTRL_MAP_OLD in the uvcvideo driver
+When:  3.2
+Why:   Used only by applications compiled against older driver versions.
+       Superseded by UVCIOC_CTRL_MAP which supports V4L2 menu controls.
+Who:   Laurent Pinchart <laurent.pinchart@ideasonboard.com>
 
 ----------------------------
+
+What:  Support for UVCIOC_CTRL_GET and UVCIOC_CTRL_SET in the uvcvideo driver
+When:  3.2
+Why:   Superseded by the UVCIOC_CTRL_QUERY ioctl.
+Who:   Laurent Pinchart <laurent.pinchart@ideasonboard.com>
+
+----------------------------
+
+What:  Support for driver specific ioctls in the pwc driver (everything
+       defined in media/pwc-ioctl.h)
+When:  3.3
+Why:   This stems from the v4l1 era, with v4l2 everything can be done with
+       standardized v4l2 API calls
+Who:   Hans de Goede <hdegoede@redhat.com>
+
+----------------------------
+
+What:  Driver specific sysfs API in the pwc driver
+When:  3.3
+Why:   Setting pan/tilt should be done with v4l2 controls, like with other
+       cams. The button is available as a standard input device
+Who:   Hans de Goede <hdegoede@redhat.com>
+
+----------------------------
+
+What:  Driver specific use of pixfmt.priv in the pwc driver
+When:  3.3
+Why:   The .priv field never was intended for this, setting a framerate is
+       support using the standardized S_PARM ioctl
+Who:   Hans de Goede <hdegoede@redhat.com>
+
+----------------------------
+
+What:  Software emulation of arbritary resolutions in the pwc driver
+When:  3.3
+Why:   The pwc driver claims to support any resolution between 160x120
+       and 640x480, but emulates this by simply drawing a black border
+       around the image. Userspace can draw its own black border if it
+       really wants one.
+Who:   Hans de Goede <hdegoede@redhat.com>
+
+----------------------------
+
+What:  For VIDIOC_S_FREQUENCY the type field must match the device node's type.
+       If not, return -EINVAL.
+When:  3.2
+Why:   It makes no sense to switch the tuner to radio mode by calling
+       VIDIOC_S_FREQUENCY on a video node, or to switch the tuner to tv mode by
+       calling VIDIOC_S_FREQUENCY on a radio node. This is the first step of a
+       move to more consistent handling of tv and radio tuners.
+Who:   Hans Verkuil <hans.verkuil@cisco.com>
+
+----------------------------
+
+What:  Opening a radio device node will no longer automatically switch the
+       tuner mode from tv to radio.
+When:  3.3
+Why:   Just opening a V4L device should not change the state of the hardware
+       like that. It's very unexpected and against the V4L spec. Instead, you
+       switch to radio mode by calling VIDIOC_S_FREQUENCY. This is the second
+       and last step of the move to consistent handling of tv and radio tuners.
+Who:   Hans Verkuil <hans.verkuil@cisco.com>
+
+----------------------------
+
+What:  g_file_storage driver
+When:  3.8
+Why:   This driver has been superseded by g_mass_storage.
+Who:   Alan Stern <stern@rowland.harvard.edu>
+
+----------------------------
+
+What:   threeg and interface sysfs files in /sys/devices/platform/acer-wmi
+When:   2012
+Why:    In 3.0, we can now autodetect internal 3G device and already have
+       the threeg rfkill device. So, we plan to remove threeg sysfs support
+       for it's no longer necessary.
+
+       We also plan to remove interface sysfs file that exposed which ACPI-WMI
+       interface that was used by acer-wmi driver. It will replaced by
+       information log when acer-wmi initial.
+Who:    Lee, Chun-Yi <jlee@novell.com>
+
+----------------------------
+What:  The XFS nodelaylog mount option
+When:  3.3
+Why:   The delaylog mode that has been the default since 2.6.39 has proven
+       stable, and the old code is in the way of additional improvements in
+       the log code.
+Who:   Christoph Hellwig <hch@lst.de>