KernelModuleParameters.mdwn 4 KB
Newer Older
1
2
# Nouveau Kernel Module Parameters

3
For an up-to-date list of parameters, run `modinfo nouveau` in your terminal. Below a slightly more detailed list of some of the parameters. Each of these parameters expects a value. Most are simple booleans, and can be set with `foo=1` for enable or `foo=0` for disable. The rest have detailed explanations of the values they're allowed to take on.
4

5
### `perflvl`/`perflvl_wr` (removed in 3.13)
6
7
8

Specify `nouveau.perflvl_wr=7777` in order to be able to switch performance levels at runtime via `/sys/class/drm/cardN/device/performance_level`. You can also specify `nouveau.perflvl=N` to switch to a specific performance level on boot.

imirkin's avatar
imirkin committed
9
### `pstate` (removed in 4.5)
tobijk's avatar
tobijk committed
10

imirkin's avatar
imirkin committed
11
Specify `nouveau.pstate=1` in order to be able to switch performance levels at runtime via `/sys/class/drm/cardN/device/pstate`. Starting in 4.5, this is available by default in debugfs, at `/sys/kernel/debug/dri/*/pstate`
tobijk's avatar
tobijk committed
12

13
14
**WARNING**: Power management is a very experimental feature and is not expected to work. If you decided to upclock your GPU, please aknowledge that your card may overheat. Please check the temperature of your GPU at all time!

tobijk's avatar
tobijk committed
15
16
17
### `runpm`
Force enable 1 or disable 0, runtime power-managment. The default only for Optimus systems is -1. 

18
### `noaccel`
19

20
Disable kernel/abi16 acceleration (i.e. 1 for disable acceleration, 0 for enable).
imirkin's avatar
imirkin committed
21
22
23
24

### `nofbaccel`

Disable fbcon acceleration (i.e. 1 for disable acceleration, 0 for enable).
25

26
### `modeset`
27

28
Whether the driver should be enabled. 0 for disabled, 1 for enabled, 2 for headless
29
30
31

### `config`

imirkin's avatar
imirkin committed
32
This provides a way to configure various parts of the driver, it is a comma-separate list of a=b key/value pairs. The values are all integers (use 0/1 for booleans) except for `NvBios` which is a string.
imirkin's avatar
imirkin committed
33
34

* $engine: Whether to enable/disable the engine, e.g. PDISP=0
karolherbst's avatar
karolherbst committed
35
* `NvAGP`: The agp mode (0 for disable) to force (starting with 4.3)
imirkin's avatar
imirkin committed
36
* `NvBios`: Specify VBIOS source as one of `OpenFirmware/PRAMIN/PROM/ACPI/PCIROM/PLATFORM`, or a filename passed to request_firmware
karolherbst's avatar
karolherbst committed
37
* `NvBoost`: Specify the Boost mode for Fermi and newer. 0: base clocks (default) 1: boost clocks 2: max clocks (starting with 4.10)
imirkin's avatar
imirkin committed
38
39
40
41
* `NvClkMode`: Force a particular clock level on boot. Note that this does not parse hex, so for clock mode `f`, pass in `15`.
* `NvClkModeAC`: Same as `NvClkMode`, when the power is plugged in
* `NvClkModeDC`: Same as `NvClkMode`, when running off battery
* `NvFanPWM`: Enable use of PWM for the fan, auto-detect by default
imirkin's avatar
imirkin committed
42
* `NvForcePost`: Whether to force a POST of the device, off by default
imirkin's avatar
imirkin committed
43
* `NvGrUseFW`: Whether to load FW for PGRAPH on NVC0
imirkin's avatar
imirkin committed
44
* `NvI2C`: ??, off by default
45
* `NvMemExec`: Perform memory reclocking
mperes's avatar
mperes committed
46
* `NvMSI`: Use MSI interrupts, on by default on the chipsets that support it
imirkin's avatar
imirkin committed
47
48
* `NvMXMDCB`: Sanitize DCB outputs from the BIOS, on by default
* `NvPCIE`: NV40 family only, whether to use PCI-E GART, on by default
49
* `NvPmEnableGating`: Enables clockgating for Kepler GPUs
50

imirkin's avatar
imirkin committed
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
Here is a list of engines:

* DEVICE
* DMAOBJ
* PBSP
* PCE0
* PCE1
* PCE2
* PCRYPT
* PDISP
* PFIFO
* PGRAPH
* PMPEG
* PPM
* PPPP
* PVP
* SW

69
70
### `debug`

imirkin's avatar
imirkin committed
71
This works just like the config option, but the values are all debug levels (one of `fatal, error, warn, info, debug, trace, paranoia, spam`). Note that in order for a debug level to work, `CONFIG_NOUVEAU_DEBUG` must be set to at least that level.
imirkin's avatar
imirkin committed
72

73
74
* `CLIENT`
* $subdev (e.g. PDISP=debug)
75

76
77
78
79
80
81
82
83
84
85
86
87
88
89
Here is a list of the available subdevices:

* BARCTL
* DEVINIT
* GPIO
* I2C
* INSTMEM
* MXM
* PBUS
* PIBUS
* PLTCG
* PTHERM
* PTIMER
* VBIOS
imirkin's avatar
imirkin committed
90
* any engine (see above)
91
92
93

Example: nouveau.debug="PTHERM=debug,PTIMER=debug"

imirkin's avatar
imirkin committed
94
### `agpmode` (removed in 4.3)
95

96
AGP mode, 0 to disable AGP
97

98
### `vram_pushbuf`
99

100
101
Create DMA push buffers in VRAM

tobijk's avatar
tobijk committed
102
### `ignorelid`
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118

Ignore ACPI lid status

### `duallink`

Allow dual-link TMDS (on by default)

### `tv_norm`

Default TV norm. Default is PAL. Valid values: PAL, PAL-M, PAL-N, PAL-Nc, NTSC-M, NTSC-J, hd480i, hd480p, hd576i, hd576p, hd720p, hd1080i.

This only applies to cards that don't have external encoders.

### `tv_disable`

Disable TV-out detection