← Documents Documentation/networking/devlink/devlink-params.rst GitHub 원문 ↗

Linux 6.18.37 · Networking

Devlink Params

장치 전체에 적용되는 devlink parameter의 runtime·driverinit·permanent mode와 virtualization, firmware, protocol, reset, queue, clock 관련 공통 parameter를 설명합니다.

Source pathDocumentation/networking/devlink/devlink-params.rst
Source versionLinux v6.18.37
TranslationDUJINLABS 전문 번역 + 해설

요약·해설과 원문, 전문 번역을 서로 분리했습니다. API 이름, symbol, source path는 원문 표기를 사용합니다.

1. 요약·해설

원문의 핵심 논리와 kernel programming 관점의 보충 설명입니다. 아래의 전문 번역과는 별도로 작성했습니다.

2. 영어 원문 전체

번역 기준이 된 Linux v6.18.37 원문입니다. 줄 번호는 이 버전의 파일 좌표입니다.

원문 전체 펼치기
1 .. SPDX-License-Identifier: GPL-2.0
2
3 ==============
4 Devlink Params
5 ==============
6
7 ``devlink`` provides capability for a driver to expose device parameters for low
8 level device functionality. Since devlink can operate at the device-wide
9 level, it can be used to provide configuration that may affect multiple
10 ports on a single device.
11
12 This document describes a number of generic parameters that are supported
13 across multiple drivers. Each driver is also free to add their own
14 parameters. Each driver must document the specific parameters they support,
15 whether generic or not.
16
17 Configuration modes
18 ===================
19
20 Parameters may be set in different configuration modes.
21
22 .. list-table:: Possible configuration modes
23 :widths: 5 90
24
25 * - Name
26 - Description
27 * - ``runtime``
28 - set while the driver is running, and takes effect immediately. No
29 reset is required.
30 * - ``driverinit``
31 - applied while the driver initializes. Requires the user to restart
32 the driver using the ``devlink`` reload command.
33 * - ``permanent``
34 - written to the device's non-volatile memory. A hard reset is required
35 for it to take effect.
36
37 Reloading
38 ---------
39
40 In order for ``driverinit`` parameters to take effect, the driver must
41 support reloading via the ``devlink-reload`` command. This command will
42 request a reload of the device driver.
43
44 .. _devlink_params_generic:
45
46 Generic configuration parameters
47 ================================
48 The following is a list of generic configuration parameters that drivers may
49 add. Use of generic parameters is preferred over each driver creating their
50 own name.
51
52 .. list-table:: List of generic parameters
53 :widths: 5 5 90
54
55 * - Name
56 - Type
57 - Description
58 * - ``enable_sriov``
59 - Boolean
60 - Enable Single Root I/O Virtualization (SRIOV) in the device.
61 * - ``ignore_ari``
62 - Boolean
63 - Ignore Alternative Routing-ID Interpretation (ARI) capability. If
64 enabled, the adapter will ignore ARI capability even when the
65 platform has support enabled. The device will create the same number
66 of partitions as when the platform does not support ARI.
67 * - ``msix_vec_per_pf_max``
68 - u32
69 - Provides the maximum number of MSI-X interrupts that a device can
70 create. Value is the same across all physical functions (PFs) in the
71 device.
72 * - ``msix_vec_per_pf_min``
73 - u32
74 - Provides the minimum number of MSI-X interrupts required for the
75 device to initialize. Value is the same across all physical functions
76 (PFs) in the device.
77 * - ``fw_load_policy``
78 - u8
79 - Control the device's firmware loading policy.
80 - ``DEVLINK_PARAM_FW_LOAD_POLICY_VALUE_DRIVER`` (0)
81 Load firmware version preferred by the driver.
82 - ``DEVLINK_PARAM_FW_LOAD_POLICY_VALUE_FLASH`` (1)
83 Load firmware currently stored in flash.
84 - ``DEVLINK_PARAM_FW_LOAD_POLICY_VALUE_DISK`` (2)
85 Load firmware currently available on host's disk.
86 * - ``reset_dev_on_drv_probe``
87 - u8
88 - Controls the device's reset policy on driver probe.
89 - ``DEVLINK_PARAM_RESET_DEV_ON_DRV_PROBE_VALUE_UNKNOWN`` (0)
90 Unknown or invalid value.
91 - ``DEVLINK_PARAM_RESET_DEV_ON_DRV_PROBE_VALUE_ALWAYS`` (1)
92 Always reset device on driver probe.
93 - ``DEVLINK_PARAM_RESET_DEV_ON_DRV_PROBE_VALUE_NEVER`` (2)
94 Never reset device on driver probe.
95 - ``DEVLINK_PARAM_RESET_DEV_ON_DRV_PROBE_VALUE_DISK`` (3)
96 Reset the device only if firmware can be found in the filesystem.
97 * - ``enable_roce``
98 - Boolean
99 - Enable handling of RoCE traffic in the device.
100 * - ``enable_eth``
101 - Boolean
102 - When enabled, the device driver will instantiate Ethernet specific
103 auxiliary device of the devlink device.
104 * - ``enable_rdma``
105 - Boolean
106 - When enabled, the device driver will instantiate RDMA specific
107 auxiliary device of the devlink device.
108 * - ``enable_vnet``
109 - Boolean
110 - When enabled, the device driver will instantiate VDPA networking
111 specific auxiliary device of the devlink device.
112 * - ``enable_iwarp``
113 - Boolean
114 - Enable handling of iWARP traffic in the device.
115 * - ``internal_err_reset``
116 - Boolean
117 - When enabled, the device driver will reset the device on internal
118 errors.
119 * - ``max_macs``
120 - u32
121 - Typically macvlan, vlan net devices mac are also programmed in their
122 parent netdevice's Function rx filter. This parameter limit the
123 maximum number of unicast mac address filters to receive traffic from
124 per ethernet port of this device.
125 * - ``region_snapshot_enable``
126 - Boolean
127 - Enable capture of ``devlink-region`` snapshots.
128 * - ``enable_remote_dev_reset``
129 - Boolean
130 - Enable device reset by remote host. When cleared, the device driver
131 will NACK any attempt of other host to reset the device. This parameter
132 is useful for setups where a device is shared by different hosts, such
133 as multi-host setup.
134 * - ``io_eq_size``
135 - u32
136 - Control the size of I/O completion EQs.
137 * - ``event_eq_size``
138 - u32
139 - Control the size of asynchronous control events EQ.
140 * - ``enable_phc``
141 - Boolean
142 - Enable PHC (PTP Hardware Clock) functionality in the device.
143 * - ``clock_id``
144 - u64
145 - Clock ID used by the device for registering DPLL devices and pins.
146 * - ``total_vfs``
147 - u32
148 - The max number of Virtual Functions (VFs) exposed by the PF.
149 after reboot/pci reset, 'sriov_totalvfs' entry under the device's sysfs
150 directory will report this value.
151 * - ``num_doorbells``
152 - u32
153 - Controls the number of doorbells used by the device.
154

3. 한국어 전문 번역

영어 원문의 문단 순서와 의미를 유지한 전체 번역입니다. 코드, 함수명, symbol과 URL은 원문 표기를 유지합니다.