Linux kernel mirror (for testing)
git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel
os
linux
1Linux Devlink Documentation
2===========================
3
4devlink is an API to expose device information and resources not directly
5related to any device class, such as chip-wide/switch-ASIC-wide configuration.
6
7Locking
8-------
9
10Driver facing APIs are currently transitioning to allow more explicit
11locking. Drivers can use the existing ``devlink_*`` set of APIs, or
12new APIs prefixed by ``devl_*``. The older APIs handle all the locking
13in devlink core, but don't allow registration of most sub-objects once
14the main devlink object is itself registered. The newer ``devl_*`` APIs assume
15the devlink instance lock is already held. Drivers can take the instance
16lock by calling ``devl_lock()``. It is also held all callbacks of devlink
17netlink commands.
18
19Drivers are encouraged to use the devlink instance lock for their own needs.
20
21Interface documentation
22-----------------------
23
24The following pages describe various interfaces available through devlink in
25general.
26
27.. toctree::
28 :maxdepth: 1
29
30 devlink-dpipe
31 devlink-health
32 devlink-info
33 devlink-flash
34 devlink-params
35 devlink-port
36 devlink-region
37 devlink-resource
38 devlink-reload
39 devlink-selftests
40 devlink-trap
41 devlink-linecard
42
43Driver-specific documentation
44-----------------------------
45
46Each driver that implements ``devlink`` is expected to document what
47parameters, info versions, and other features it supports.
48
49.. toctree::
50 :maxdepth: 1
51
52 bnxt
53 etas_es58x
54 hns3
55 ionic
56 ice
57 mlx4
58 mlx5
59 mlxsw
60 mv88e6xxx
61 netdevsim
62 nfp
63 qed
64 ti-cpsw-switch
65 am65-nuss-cpsw-switch
66 prestera
67 iosm
68 octeontx2
69 sfc