Skip to content

Commit 7248836

Browse files
committed
docs: Add documentation for mctpd.conf settings
We only have the example in the tree; some documentation would be helpful. Signed-off-by: Jeremy Kerr <[email protected]>
1 parent 60bd3f4 commit 7248836

File tree

2 files changed

+72
-0
lines changed

2 files changed

+72
-0
lines changed

CHANGELOG.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
1818

1919
2. `mctpd` now supports a bus-owner configuration section
2020

21+
3. Added documentation for `mctpd.conf` settings
22+
2123
## [2.2] - 2025-07-28
2224

2325
### Fixed

docs/mctpd.md

Lines changed: 70 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -214,3 +214,73 @@ busctl call au.com.codeconstruct.MCTP1 \
214214
### `.Remove`
215215

216216
Removes the MCTP endpoint from `mctpd`, and deletes routes and neighbour entries.
217+
218+
## Configuration
219+
220+
`mctpd` reads configuration data from a TOML file, typically `/etc/mctpd.conf`.
221+
An alternative configuration file can be specified using the `--config`
222+
command-line option.
223+
224+
The configuration file has a global section, plus function-specific sections.
225+
226+
### Global settings
227+
228+
These apply to all modes of `mctpd` operation. One top-level setting is defined:
229+
230+
#### `mode`: mctpd mode of operation
231+
232+
* type: string enum: `bus-owner` or `endpoint`
233+
* default: `bus-owner`
234+
235+
This sets the overall mode of `mctpd`, either as a Bus Owner (`mode =
236+
"bus-owner"`) or Endpoint (`mode = "endpoint"`). In bus owner mode, mctpd will
237+
assume responsibility for allocating addresses to other endpoints. In endpoint
238+
mode, mctpd will not allocate addresses, but instead accept allocations from an
239+
external bus owner.
240+
241+
### `[mctp]` section
242+
243+
This section affects MCTP protocol behaviour, and any common values used for
244+
both bus-owner and endpoint modes.
245+
246+
#### `message_timeout_ms`: global MCTP message timeout
247+
248+
* type: integer, in milliseconds
249+
* default: 250
250+
251+
This sets the timeout for outgoing request messages. A message will be
252+
considered lost if no response is received within this timeout.
253+
254+
Long timeouts may degrade `mctpd` performance, as we typically wait for
255+
operations synchronously.
256+
257+
#### `uuid`: endpoint UUID value
258+
259+
* type: string, UUID format
260+
* default: queried from system
261+
262+
This sets the UUID used to identify this endpoint to peers, as returned in the
263+
MCTP "Get Endpoint UUID" command.
264+
265+
This is not typically needed; if no `uuid` configuration is specified, `mctpd`
266+
will use the system-wide UUID value, which has generally correct semantics
267+
for the MCTP endpoint UUID.
268+
269+
The UUID should be formatted as a RFC 4122 UUID string, for example:
270+
271+
```
272+
uuid = "21f0f554-7f7c-4211-9ca1-6d0f000ea9e7"
273+
```
274+
275+
#### `[bus-owner]` section
276+
277+
This section affects behaviour when `mctpd` is running in bus owner mode
278+
279+
#### `max_pool_size`: Maximum peer allocation pool size
280+
281+
* type: integer
282+
* default: 15
283+
284+
This setting determines the maximum EID pool size that a bridge peer may request
285+
via their Set Endpoint ID response. Requests larger than this size will be
286+
truncated.

0 commit comments

Comments
 (0)