Displaying 20 results from an estimated 20 matches for "nouveau_fbcon_output_poll_changed".
2018 Aug 14
1
[PATCH v7 3/5] drm/nouveau: Fix deadlock with fb_helper with async RPM requests
...gt; @@ -2049,7 +2049,7 @@ nv50_disp_atomic_state_alloc(struct drm_device *dev)
> static const struct drm_mode_config_funcs
> nv50_disp_func = {
> .fb_create = nouveau_user_framebuffer_create,
> - .output_poll_changed = drm_fb_helper_output_poll_changed,
> + .output_poll_changed = nouveau_fbcon_output_poll_changed,
> .atomic_check = nv50_disp_atomic_check,
> .atomic_commit = nv50_disp_atomic_commit,
> .atomic_state_alloc = nv50_disp_atomic_state_alloc,
> diff --git a/drivers/gpu/drm/nouveau/nouveau_display.c b/drivers/gpu/drm/nouveau/nouveau_display.c
> index 1d36ab5d4796..4b873e668b26 1...
2018 Aug 13
0
[PATCH v7 3/5] drm/nouveau: Fix deadlock with fb_helper with async RPM requests
.../drm/nouveau/dispnv50/disp.c
@@ -2049,7 +2049,7 @@ nv50_disp_atomic_state_alloc(struct drm_device *dev)
static const struct drm_mode_config_funcs
nv50_disp_func = {
.fb_create = nouveau_user_framebuffer_create,
- .output_poll_changed = drm_fb_helper_output_poll_changed,
+ .output_poll_changed = nouveau_fbcon_output_poll_changed,
.atomic_check = nv50_disp_atomic_check,
.atomic_commit = nv50_disp_atomic_commit,
.atomic_state_alloc = nv50_disp_atomic_state_alloc,
diff --git a/drivers/gpu/drm/nouveau/nouveau_display.c b/drivers/gpu/drm/nouveau/nouveau_display.c
index 1d36ab5d4796..4b873e668b26 100644
--- a/drivers/gpu/d...
2018 Aug 13
0
[PATCH v6 3/5] drm/nouveau: Fix deadlock with fb_helper with async RPM requests
.../drm/nouveau/dispnv50/disp.c
@@ -2049,7 +2049,7 @@ nv50_disp_atomic_state_alloc(struct drm_device *dev)
static const struct drm_mode_config_funcs
nv50_disp_func = {
.fb_create = nouveau_user_framebuffer_create,
- .output_poll_changed = drm_fb_helper_output_poll_changed,
+ .output_poll_changed = nouveau_fbcon_output_poll_changed,
.atomic_check = nv50_disp_atomic_check,
.atomic_commit = nv50_disp_atomic_commit,
.atomic_state_alloc = nv50_disp_atomic_state_alloc,
diff --git a/drivers/gpu/drm/nouveau/nouveau_display.c b/drivers/gpu/drm/nouveau/nouveau_display.c
index 1d36ab5d4796..4b873e668b26 100644
--- a/drivers/gpu/d...
2018 Aug 13
6
[PATCH v7 0/5] Fix connector probing deadlocks from RPM bugs
Latest version of https://patchwork.freedesktop.org/series/46815/ , with
one small change re: ilia
Lyude Paul (5):
drm/nouveau: Fix bogus drm_kms_helper_poll_enable() placement
drm/nouveau: Remove duplicate poll_enable() in pmops_runtime_suspend()
drm/nouveau: Fix deadlock with fb_helper with async RPM requests
drm/nouveau: Use pm_runtime_get_noresume() in connector_detect()
2020 Jul 29
9
[PATCH 0/9] drm/nouveau/kms: A bunch of runtime_pm fixes
...under the rug.
Lyude Paul (9):
drm/nouveau/kms: Handle -EINPROGRESS in nouveau_connector_hotplug()
drm/nouveau/kms: Fix rpm leak in nouveau_connector_hotplug()
drm/nouveau/kms/fbcon: Correct pm_runtime calls in
nouveau_fbcon_release()
drm/nouveau/kms/fbcon: Fix pm_runtime calls in
nouveau_fbcon_output_poll_changed()
drm/nouveau/kms/fbcon: Use pm_runtime_put_autosuspend() in suspend
work
drm/nouveau/kms: Use pm_runtime_put_autosuspend() in hpd_work
drm/nouveau/kms: Invert conditionals in nouveau_display_acpi_ntfy()
drm/nouveau/kms: Fix runtime PM leak in nouveau_display_acpi_ntfy()
drm/nouveau/k...
2018 Aug 15
5
[PATCH v8 0/5] Fix connector probing deadlocks from RPM bugs
Next version of https://patchwork.freedesktop.org/series/46815/
Same as previous version, but some small changes made to commit messages
and acks/rbs have been added
Lyude Paul (5):
drm/nouveau: Fix bogus drm_kms_helper_poll_enable() placement
drm/nouveau: Remove duplicate poll_enable() in pmops_runtime_suspend()
drm/nouveau: Fix deadlock with fb_helper with async RPM requests
2018 Aug 13
6
[PATCH v6 0/5] Fix connector probing deadlocks from RPM bugs
Latest version of https://patchwork.freedesktop.org/series/46815/ with
some significant improvements:
- I finally figured out a clean way to do this entirely with runtime PM
helpers, no avoiding grabbing refs required!
- Since this new method removes the need for a lot of the other changes
I made (although we probably still want those changes, but not for
fixing these deadlocks)
2014 Aug 18
0
[PATCH] drm: Display Nouveau boot options at launch
...static void
diff --git a/drm/nouveau_fbcon.h b/drm/nouveau_fbcon.h
index 34658cf..1e2e9e2 100644
--- a/drm/nouveau_fbcon.h
+++ b/drm/nouveau_fbcon.h
@@ -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__ */
diff --git a/drm/nouveau_sysfs.c b/drm/nouveau_sysfs.c
index 3c6962d..8fbbf30 100644
--- a/drm/nouveau_sysfs.c
+++ b/drm/nouveau_sysfs.c
@@ -29,7 +29,7 @@
#include "nouveau_sysfs.h"
MODULE_PAR...
2018 Aug 07
19
[PATCH v5 00/13] Fix connector probing deadlocks from RPM bugs
This is the latest version of https://patchwork.freedesktop.org/series/46815/
I moved everything out of fb_helper and back into nouveau, because it
seems that other drivers actually do have this handled already as far as
I can tell.
Lyude Paul (13):
drm/nouveau: Fix bogus drm_kms_helper_poll_enable() placement
drm/nouveau: Remove duplicate poll_enable() in pmops_runtime_suspend()
2013 Jul 23
4
[PATCH 1/3] drm/nouveau: fix vblank interrupt being called before event is setup
Sort of fixes mmiotrace for me again, I could sear I sent a similar patch before
the rework to event interface, so I guess it got reintroduced.
Signed-off-by: Maarten Lankhorst <maarten.lankhorst at canonical.com>
---
diff --git a/drivers/gpu/drm/nouveau/core/engine/disp/nv50.c b/drivers/gpu/drm/nouveau/core/engine/disp/nv50.c
index 7e3875d..35e526b 100644
---
2019 Feb 15
0
[PATCH] pci/quirks: Add quirk to reset nvgpu at boot for the Lenovo ThinkPad P50
...> ? drm_setup_crtcs+0x27b/0xcb0 [drm_kms_helper]
> ? __lock_is_held+0x5e/0xa0
> __drm_fb_helper_initial_config_and_unlock+0x27c/0x520 [drm_kms_helper]
> drm_fb_helper_hotplug_event.part.29+0xae/0xc0 [drm_kms_helper]
> drm_fb_helper_hotplug_event+0x1c/0x30 [drm_kms_helper]
> nouveau_fbcon_output_poll_changed+0xb8/0x110 [nouveau]
> drm_kms_helper_hotplug_event+0x2a/0x40 [drm_kms_helper]
> drm_dp_send_link_address+0x176/0x1c0 [drm_kms_helper]
> drm_dp_check_and_send_link_address+0xa0/0xb0 [drm_kms_helper]
> drm_dp_mst_link_probe_work+0xa4/0xc0 [drm_kms_helper]
> process_one_work+0x22f...
2023 Jan 09
1
[PATCH] drm/nouveau: Remove file nouveau_fbcon.c
...- return;
-
- drm->fbcon_new_state = state;
- /* Since runtime resume can happen as a result of a sysfs operation,
- * it's possible we already have the console locked. So handle fbcon
- * init/deinit from a seperate work thread
- */
- schedule_work(&drm->fbcon_work);
-}
-
-void
-nouveau_fbcon_output_poll_changed(struct drm_device *dev)
-{
- struct nouveau_drm *drm = nouveau_drm(dev);
- struct nouveau_fbdev *fbcon = drm->fbcon;
- int ret;
-
- if (!fbcon)
- return;
-
- mutex_lock(&fbcon->hotplug_lock);
-
- ret = pm_runtime_get(dev->dev);
- if (ret == 1 || ret == -EACCES) {
- drm_fb_helper_hotp...
2023 Jan 09
1
[PATCH] drm/nouveau: Remove file nouveau_fbcon.c
...ime resume can happen as a result of a sysfs operation,
> - * it's possible we already have the console locked. So handle fbcon
> - * init/deinit from a seperate work thread
> - */
> - schedule_work(&drm->fbcon_work);
> -}
> -
> -void
> -nouveau_fbcon_output_poll_changed(struct drm_device *dev)
> -{
> - struct nouveau_drm *drm = nouveau_drm(dev);
> - struct nouveau_fbdev *fbcon = drm->fbcon;
> - int ret;
> -
> - if (!fbcon)
> - return;
> -
> - mutex_lock(&fbcon->hotplug_lock);
> -
&...
2023 Jan 09
1
[PATCH] drm/nouveau: Remove file nouveau_fbcon.c
...t of a sysfs operation,
>> - * it's possible we already have the console locked. So handle fbcon
>> - * init/deinit from a seperate work thread
>> - */
>> - schedule_work(&drm->fbcon_work);
>> -}
>> -
>> -void
>> -nouveau_fbcon_output_poll_changed(struct drm_device *dev)
>> -{
>> - struct nouveau_drm *drm = nouveau_drm(dev);
>> - struct nouveau_fbdev *fbcon = drm->fbcon;
>> - int ret;
>> -
>> - if (!fbcon)
>> - return;
>> -
>> - mutex_lock(&a...
2019 Feb 15
3
[PATCH] pci/quirks: Add quirk to reset nvgpu at boot for the Lenovo ThinkPad P50
...0x27b/0xcb0 [drm_kms_helper]
> > ? __lock_is_held+0x5e/0xa0
> > __drm_fb_helper_initial_config_and_unlock+0x27c/0x520 [drm_kms_helper]
> > drm_fb_helper_hotplug_event.part.29+0xae/0xc0 [drm_kms_helper]
> > drm_fb_helper_hotplug_event+0x1c/0x30 [drm_kms_helper]
> > nouveau_fbcon_output_poll_changed+0xb8/0x110 [nouveau]
> > drm_kms_helper_hotplug_event+0x2a/0x40 [drm_kms_helper]
> > drm_dp_send_link_address+0x176/0x1c0 [drm_kms_helper]
> > drm_dp_check_and_send_link_address+0xa0/0xb0 [drm_kms_helper]
> > drm_dp_mst_link_probe_work+0xa4/0xc0 [drm_kms_helper]
> >...
2019 Feb 12
7
[PATCH] pci/quirks: Add quirk to reset nvgpu at boot for the Lenovo ThinkPad P50
...n_create+0x5a5/0x5d0 [nouveau]
? drm_setup_crtcs+0x27b/0xcb0 [drm_kms_helper]
? __lock_is_held+0x5e/0xa0
__drm_fb_helper_initial_config_and_unlock+0x27c/0x520 [drm_kms_helper]
drm_fb_helper_hotplug_event.part.29+0xae/0xc0 [drm_kms_helper]
drm_fb_helper_hotplug_event+0x1c/0x30 [drm_kms_helper]
nouveau_fbcon_output_poll_changed+0xb8/0x110 [nouveau]
drm_kms_helper_hotplug_event+0x2a/0x40 [drm_kms_helper]
drm_dp_send_link_address+0x176/0x1c0 [drm_kms_helper]
drm_dp_check_and_send_link_address+0xa0/0xb0 [drm_kms_helper]
drm_dp_mst_link_probe_work+0xa4/0xc0 [drm_kms_helper]
process_one_work+0x22f/0x5c0
worker_thread+0x4...
2018 Aug 23
3
[PATCH 0/3] drm/nouveau: Fixup module probe to add ->shutdown()
This series is intended to add support for shutting down the GPU on
kernel shutdown/reboot using the ->shutdown() hook, similar to what
amdgpu does. This is mainly intended to workaround a bios issue on the
P50 that was preventing nouveau from initializing the dedicated GM107
GPU on that system properly. You can find more details on this issue in
the patch labeled "Shut down GPU on kernel
2019 Mar 13
0
[PATCH] pci/quirks: Add quirk to reset nvgpu at boot for the Lenovo ThinkPad P50
...er]
> > > ? __lock_is_held+0x5e/0xa0
> > > __drm_fb_helper_initial_config_and_unlock+0x27c/0x520 [drm_kms_helper]
> > > drm_fb_helper_hotplug_event.part.29+0xae/0xc0 [drm_kms_helper]
> > > drm_fb_helper_hotplug_event+0x1c/0x30 [drm_kms_helper]
> > > nouveau_fbcon_output_poll_changed+0xb8/0x110 [nouveau]
> > > drm_kms_helper_hotplug_event+0x2a/0x40 [drm_kms_helper]
> > > drm_dp_send_link_address+0x176/0x1c0 [drm_kms_helper]
> > > drm_dp_check_and_send_link_address+0xa0/0xb0 [drm_kms_helper]
> > > drm_dp_mst_link_probe_work+0xa4/0xc0 [drm_...
2023 Jan 10
1
[PATCH v2] drm/nouveau: Remove file nouveau_fbcon.c
...- return;
-
- drm->fbcon_new_state = state;
- /* Since runtime resume can happen as a result of a sysfs operation,
- * it's possible we already have the console locked. So handle fbcon
- * init/deinit from a seperate work thread
- */
- schedule_work(&drm->fbcon_work);
-}
-
-void
-nouveau_fbcon_output_poll_changed(struct drm_device *dev)
-{
- struct nouveau_drm *drm = nouveau_drm(dev);
- struct nouveau_fbdev *fbcon = drm->fbcon;
- int ret;
-
- if (!fbcon)
- return;
-
- mutex_lock(&fbcon->hotplug_lock);
-
- ret = pm_runtime_get(dev->dev);
- if (ret == 1 || ret == -EACCES) {
- drm_fb_helper_hotp...
2020 Nov 06
4
[PATCH 0/3] drm/nouveau: extend the lifetime of nouveau_drm
Hi folks,
Currently, when the device is removed (or the driver is unbound) the
nouveau_drm structure de-allocated. However, it's still accessible from
and used by some DRM layer callbacks. For example, file handles can be
closed after the device has been removed (physically or otherwise). This
series converts the Nouveau device structure to be allocated and
de-allocated with the