blob: f04e08bb8c511b9d1660c14775ea2f5b3e0857fd (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
|
Documentation
=============
.. toctree::
:maxdepth: 1
documentation/packaging
documentation/integration
documentation/compat
documentation/compat-drivers
documentation/compat-drivers/hacking
documentation/compat-drivers/additional-patches
documentation/backports/hacking
documentation/backports/hacking/todo
The Backports Project aims to backport current Linux **upstream** device
drivers for use with older kernels. The objective (1) is to provide a
central mechanism for backporting the device drivers of *any* subsystem,
thereby enabling (2) *both* users **and** developers to always focus on
upstream Linux kernel development.
The project shall **never** include proprietary drivers, and is designed
to disallow its use with proprietary drivers.
Every backports release has been test compiled *for usage* against all
supported kernels. The oldest release is (currently) 3.0.
Linux kernel releases can become deprecated. You are encouraged to use
supported stable kernels as listed on `kernel.org
<https://kernel.org>`__.
Workflows
---------
Backports provides users with a choice of two workflows:
#. **kernel integration mode** (:doc:`documentation/integration`)
- future kernel source tree and older kernel source tree must be
present on the same machine at the same time
- backports suite **integrates** the subsystems/drivers of the future
kernel directly into the older kernel
#. **package releases mode** (:doc:`documentation/packaging`)
- future kernel source tree and older kernel source tree do not need
to be present on the same machine at the same time
- on machine hosting future kernel source tree, backport package is
generated
- on machine hosting older kernel, backport package is built
out-of-tree against older kernel
- backport package is loosely akin to a patch file
Backported Subsystems
---------------------
Device drivers are available for the following subsystems:
- Ethernet
- Wireless
- Bluetooth
- NFC
- ieee802154
- Media
- Regulator
Backported Drivers
------------------
Whether or not a device driver is available from a subsytem will depend
on whether or not a developer decided to backport it **and** if the
device driver is backported down to the kernel you are on. If you see
the driver on **make menuconfig** it means you can use it. An
alternative is to look at the git tree `dependencies
<https://git.kernel.org/cgit/linux/kernel/git/mcgrof/backports.git/tree/dependencies>`__
file. Note that the `dependencies
<https://git.kernel.org/cgit/linux/kernel/git/mcgrof/backports.git/tree/dependencies>`__
**does not** exist on a final release, it only exists on the development
git tree and the one linked here is the one on the master branch -- you
should look at the `release branches
<https://git.kernel.org/cgit/linux/kernel/git/mcgrof/backports.git/refs/>`__
for their respective dependencies file if using an older release.
Someone is welcome to come up with a fancy page that provides the device
driver <--> kernel dependency map page. If a device driver is available
on **make menuconfig** but is not listed on the `dependencies
<https://git.kernel.org/cgit/linux/kernel/git/mcgrof/backports.git/tree/dependencies>`__
file it means it is available for usage on all supported kernel.
Users should just install what they *know* they need, if not sure don't
enable a driver. Typically Linux distributions would use the backports
project and build modules for you and you'd have a backports package
available for your distribution.
|