1 # SPDX-License-Identifier: LGPL-2.1-or-later
3 # This file is part of systemd.
5 # systemd is free software; you can redistribute it and/or modify it
6 # under the terms of the GNU Lesser General Public License as published by
7 # the Free Software Foundation; either version 2.1 of the License, or
8 # (at your option) any later version.
10 # This unit loads a specific kernel module explicitly and synchronizes on its
11 # initialization to be complete. This unit should only be used as dependency
12 # if automatic module loading cannot be used for a module, i.e. in exceptional
13 # cases. These cases may include:
15 # 1. The primary API exposed by the module is a device node that is normally
16 # managed by systemd-tmpfiles-setup-dev-early.service (and thus auto-loading
17 # is generally supported), but some service already needs the functionality
18 # during even earlier boot.
20 # 2. The primary API exposed by the module is some directory in /sys/, /proc/
21 # or configfs, where simple access generally is not sufficient to load the
25 Description=Load Kernel Module %i
26 DefaultDependencies=no
28 Documentation=man:modprobe(8)
29 ConditionCapability=CAP_SYS_MODULE
30 ConditionKernelModuleLoaded=!%i
31 StartLimitIntervalSec=0
35 ExecStart=-/sbin/modprobe -abq %i