mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-08-26 10:49:33 +00:00
drm/nouveau: Display Nouveau boot options at launch
It can help to remove any ambiguity about which options were passed to Nouveau, especially in case the user had some options set in /etc/modprobe.d/*.conf that he forgot about, as they won't appear in a dmesg. Signed-off-by: Pierre Moreau <pierre.morrow@free.fr> Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
This commit is contained in:
parent
a2410f5a0f
commit
703fa264b1
9 changed files with 37 additions and 6 deletions
|
@ -36,7 +36,7 @@
|
|||
#include "nouveau_abi16.h"
|
||||
|
||||
MODULE_PARM_DESC(vram_pushbuf, "Create DMA push buffers in VRAM");
|
||||
static int nouveau_vram_pushbuf;
|
||||
int nouveau_vram_pushbuf;
|
||||
module_param_named(vram_pushbuf, nouveau_vram_pushbuf, int, 0400);
|
||||
|
||||
int
|
||||
|
|
|
@ -47,4 +47,6 @@ int nouveau_channel_new(struct nouveau_drm *, struct nvif_device *,
|
|||
void nouveau_channel_del(struct nouveau_channel **);
|
||||
int nouveau_channel_idle(struct nouveau_channel *);
|
||||
|
||||
extern int nouveau_vram_pushbuf;
|
||||
|
||||
#endif
|
||||
|
|
|
@ -45,15 +45,15 @@
|
|||
#include <nvif/event.h>
|
||||
|
||||
MODULE_PARM_DESC(tv_disable, "Disable TV-out detection");
|
||||
static int nouveau_tv_disable = 0;
|
||||
int nouveau_tv_disable = 0;
|
||||
module_param_named(tv_disable, nouveau_tv_disable, int, 0400);
|
||||
|
||||
MODULE_PARM_DESC(ignorelid, "Ignore ACPI lid status");
|
||||
static int nouveau_ignorelid = 0;
|
||||
int nouveau_ignorelid = 0;
|
||||
module_param_named(ignorelid, nouveau_ignorelid, int, 0400);
|
||||
|
||||
MODULE_PARM_DESC(duallink, "Allow dual-link TMDS (default: enabled)");
|
||||
static int nouveau_duallink = 1;
|
||||
int nouveau_duallink = 1;
|
||||
module_param_named(duallink, nouveau_duallink, int, 0400);
|
||||
|
||||
struct nouveau_encoder *
|
||||
|
|
|
@ -105,4 +105,8 @@ nouveau_crtc_connector_get(struct nouveau_crtc *nv_crtc)
|
|||
struct drm_connector *
|
||||
nouveau_connector_create(struct drm_device *, int index);
|
||||
|
||||
extern int nouveau_tv_disable;
|
||||
extern int nouveau_ignorelid;
|
||||
extern int nouveau_duallink;
|
||||
|
||||
#endif /* __NOUVEAU_CONNECTOR_H__ */
|
||||
|
|
|
@ -51,6 +51,7 @@
|
|||
#include "nouveau_fence.h"
|
||||
#include "nouveau_debugfs.h"
|
||||
#include "nouveau_usif.h"
|
||||
#include "nouveau_connector.h"
|
||||
|
||||
MODULE_PARM_DESC(config, "option string to pass to driver core");
|
||||
static char *nouveau_config;
|
||||
|
@ -1028,6 +1029,23 @@ static int nouveau_pmops_runtime_idle(struct device *dev)
|
|||
return 1;
|
||||
}
|
||||
|
||||
static void nouveau_display_options(void)
|
||||
{
|
||||
DRM_DEBUG_DRIVER("Loading Nouveau with parameters:\n");
|
||||
|
||||
DRM_DEBUG_DRIVER("... tv_disable : %d\n", nouveau_tv_disable);
|
||||
DRM_DEBUG_DRIVER("... ignorelid : %d\n", nouveau_ignorelid);
|
||||
DRM_DEBUG_DRIVER("... duallink : %d\n", nouveau_duallink);
|
||||
DRM_DEBUG_DRIVER("... nofbaccel : %d\n", nouveau_nofbaccel);
|
||||
DRM_DEBUG_DRIVER("... config : %s\n", nouveau_config);
|
||||
DRM_DEBUG_DRIVER("... debug : %s\n", nouveau_debug);
|
||||
DRM_DEBUG_DRIVER("... noaccel : %d\n", nouveau_noaccel);
|
||||
DRM_DEBUG_DRIVER("... modeset : %d\n", nouveau_modeset);
|
||||
DRM_DEBUG_DRIVER("... runpm : %d\n", nouveau_runtime_pm);
|
||||
DRM_DEBUG_DRIVER("... vram_pushbuf : %d\n", nouveau_vram_pushbuf);
|
||||
DRM_DEBUG_DRIVER("... pstate : %d\n", nouveau_pstate);
|
||||
}
|
||||
|
||||
static const struct dev_pm_ops nouveau_pm_ops = {
|
||||
.suspend = nouveau_pmops_suspend,
|
||||
.resume = nouveau_pmops_resume,
|
||||
|
@ -1093,6 +1111,8 @@ nouveau_drm_init(void)
|
|||
driver_platform = driver_stub;
|
||||
driver_platform.set_busid = drm_platform_set_busid;
|
||||
|
||||
nouveau_display_options();
|
||||
|
||||
if (nouveau_modeset == -1) {
|
||||
#ifdef CONFIG_VGA_CONSOLE
|
||||
if (vgacon_text_force())
|
||||
|
|
|
@ -52,7 +52,7 @@
|
|||
#include "nouveau_crtc.h"
|
||||
|
||||
MODULE_PARM_DESC(nofbaccel, "Disable fbcon acceleration");
|
||||
static int nouveau_nofbaccel = 0;
|
||||
int nouveau_nofbaccel = 0;
|
||||
module_param_named(nofbaccel, nouveau_nofbaccel, int, 0400);
|
||||
|
||||
static void
|
||||
|
|
|
@ -72,5 +72,8 @@ void nouveau_fbcon_accel_save_disable(struct drm_device *dev);
|
|||
void nouveau_fbcon_accel_restore(struct drm_device *dev);
|
||||
|
||||
void nouveau_fbcon_output_poll_changed(struct drm_device *dev);
|
||||
|
||||
extern int nouveau_nofbaccel;
|
||||
|
||||
#endif /* __NV50_FBCON_H__ */
|
||||
|
||||
|
|
|
@ -29,7 +29,7 @@
|
|||
#include "nouveau_sysfs.h"
|
||||
|
||||
MODULE_PARM_DESC(pstate, "enable sysfs pstate file, which will be moved in the future");
|
||||
static int nouveau_pstate;
|
||||
int nouveau_pstate;
|
||||
module_param_named(pstate, nouveau_pstate, int, 0400);
|
||||
|
||||
static inline struct drm_device *
|
||||
|
|
|
@ -16,4 +16,6 @@ nouveau_sysfs(struct drm_device *dev)
|
|||
int nouveau_sysfs_init(struct drm_device *);
|
||||
void nouveau_sysfs_fini(struct drm_device *);
|
||||
|
||||
extern int nouveau_pstate;
|
||||
|
||||
#endif
|
||||
|
|
Loading…
Reference in a new issue