search for: nouveau_accel_fini

Displaying 19 results from an estimated 19 matches for "nouveau_accel_fini".

2015 Nov 07
1
[PATCH] drm: fix issue by messing up runpm usage_counter
...uveau/nouveau_drm.c @@ -481,7 +481,8 @@ nouveau_drm_unload(struct drm_device *dev) { struct nouveau_drm *drm = nouveau_drm(dev); - pm_runtime_get_sync(dev->dev); + if (atomic_read(&dev->dev->power.usage_count) == 0) + pm_runtime_get_sync(dev->dev); nouveau_fbcon_fini(dev); nouveau_accel_fini(drm); nouveau_hwmon_fini(dev); -- 2.6.3
2016 May 27
2
[PATCH 1/9] drm/nouveau: Don't leak runtime pm ref on driver unload
...8,7 +498,10 @@ nouveau_drm_unload(struct drm_device *dev) > { > struct nouveau_drm *drm = nouveau_drm(dev); > > - pm_runtime_get_sync(dev->dev); > + if (nouveau_runtime_pm != 0) { > + pm_runtime_get_sync(dev->dev); > + } > + > nouveau_fbcon_fini(dev); > nouveau_accel_fini(drm); > nouveau_hwmon_fini(dev); > -- > 2.8.1 > > _______________________________________________ > Nouveau mailing list > Nouveau at lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/nouveau -- Kind regards, Peter Wu https://lekensteyn.nl
2016 May 24
5
[PATCH 0/9] Fix runtime pm ref leaks
In preparation for runtime pm on muxed dual GPU laptops, I've fixed all runtime pm ref leaks I could find in nouveau, radeon and amdgpu. To ease reviewing, I've pushed this series to GitHub: https://github.com/l1k/linux/commits/drm_runpm_fixes_v1 @Alex Deucher: I do not have an AMD GPU so couldn't test this beyond verifying that it compiles. Please double-check the patches and test
2016 May 24
0
[PATCH 1/9] drm/nouveau: Don't leak runtime pm ref on driver unload
...+++ b/drivers/gpu/drm/nouveau/nouveau_drm.c @@ -498,7 +498,10 @@ nouveau_drm_unload(struct drm_device *dev) { struct nouveau_drm *drm = nouveau_drm(dev); - pm_runtime_get_sync(dev->dev); + if (nouveau_runtime_pm != 0) { + pm_runtime_get_sync(dev->dev); + } + nouveau_fbcon_fini(dev); nouveau_accel_fini(drm); nouveau_hwmon_fini(dev); -- 2.8.1
2016 Aug 22
10
[PATCH v2] drm/nouveau: add a LED driver for the NVIDIA logo
...veau_led_init(dev); if (nouveau_runtime_pm != 0) { pm_runtime_use_autosuspend(dev->dev); @@ -499,6 +501,7 @@ nouveau_drm_unload(struct drm_device *dev) struct nouveau_drm *drm = nouveau_drm(dev); pm_runtime_get_sync(dev->dev); + nouveau_led_fini(dev); nouveau_fbcon_fini(dev); nouveau_accel_fini(drm); nouveau_hwmon_fini(dev); @@ -550,6 +553,8 @@ nouveau_do_suspend(struct drm_device *dev, bool runtime) struct nouveau_cli *cli; int ret; + nouveau_led_suspend(dev); + if (dev->mode_config.num_crtc) { NV_INFO(drm, "suspending console...\n"); nouveau_fbcon_set_suspen...
2016 May 29
0
[PATCH 1/9] drm/nouveau: Don't leak runtime pm ref on driver unload
...e *dev) > > { > > struct nouveau_drm *drm = nouveau_drm(dev); > > > > - pm_runtime_get_sync(dev->dev); > > + if (nouveau_runtime_pm != 0) { > > + pm_runtime_get_sync(dev->dev); > > + } > > + > > nouveau_fbcon_fini(dev); > > nouveau_accel_fini(drm); > > nouveau_hwmon_fini(dev); > > -- > > 2.8.1 > > > > _______________________________________________ > > Nouveau mailing list > > Nouveau at lists.freedesktop.org > > https://lists.freedesktop.org/mailman/listinfo/nouveau > > -- &gt...
2016 Aug 23
1
[PATCH v2] drm/nouveau: add a LED driver for the NVIDIA logo
...v); >> @@ -499,6 +501,7 @@ nouveau_drm_unload(struct drm_device *dev) >> struct nouveau_drm *drm = nouveau_drm(dev); >> >> pm_runtime_get_sync(dev->dev); >> + nouveau_led_fini(dev); >> nouveau_fbcon_fini(dev); >> nouveau_accel_fini(drm); >> nouveau_hwmon_fini(dev); >> @@ -550,6 +553,8 @@ nouveau_do_suspend(struct drm_device *dev, bool runtime) >> struct nouveau_cli *cli; >> int ret; >> >> + nouveau_led_suspend(dev); >> + >> if (dev->m...
2015 Nov 09
5
[PATCH v2 0/5] move pstate interface to debugfs
I made a little changes in this series: 1. merge the two last patches together 2. unify the private data interface with the drm debugfs one now it should be very obvious for a new dev on how to add new files to debugfs and how to get access to the nouveau structs Karol Herbst (5): debugfs: add infrastructure to add files with other fops than only read debugfs: rename functions to
2016 Aug 22
0
[PATCH v2] drm/nouveau: add a LED driver for the NVIDIA logo
...init(drm); nouveau_fbcon_init(dev); + nouveau_led_init(dev); if (nouveau_runtime_pm != 0) { pm_runtime_use_autosuspend(dev->dev); @@ -510,6 +512,7 @@ nouveau_drm_unload(struct drm_device *dev) pm_runtime_forbid(dev->dev); } + nouveau_led_fini(dev); nouveau_fbcon_fini(dev); nouveau_accel_fini(drm); nouveau_hwmon_fini(dev); @@ -561,6 +564,8 @@ nouveau_do_suspend(struct drm_device *dev, bool runtime) struct nouveau_cli *cli; int ret; + nouveau_led_suspend(dev); + if (dev->mode_config.num_crtc) { NV_INFO(drm, "suspending console...\n"); nouveau_fbcon_set_suspen...
2016 May 03
0
[PATCH] drm/nouveau: add a LED driver for the NVIDIA logo
...ntime_use_autosuspend(dev->dev); > @@ -499,6 +501,7 @@ nouveau_drm_unload(struct drm_device *dev) > struct nouveau_drm *drm = nouveau_drm(dev); > > pm_runtime_get_sync(dev->dev); > + nouveau_led_fini(dev); > nouveau_fbcon_fini(dev); > nouveau_accel_fini(drm); > nouveau_hwmon_fini(dev); > @@ -550,6 +553,8 @@ nouveau_do_suspend(struct drm_device *dev, bool runtime) > struct nouveau_cli *cli; > int ret; > > + nouveau_led_suspend(dev); > + > if (dev->mode_config.num_crtc) { >...
2016 Aug 23
0
[PATCH v2] drm/nouveau: add a LED driver for the NVIDIA logo
...ntime_use_autosuspend(dev->dev); > @@ -499,6 +501,7 @@ nouveau_drm_unload(struct drm_device *dev) > struct nouveau_drm *drm = nouveau_drm(dev); > > pm_runtime_get_sync(dev->dev); > + nouveau_led_fini(dev); > nouveau_fbcon_fini(dev); > nouveau_accel_fini(drm); > nouveau_hwmon_fini(dev); > @@ -550,6 +553,8 @@ nouveau_do_suspend(struct drm_device *dev, bool runtime) > struct nouveau_cli *cli; > int ret; > > + nouveau_led_suspend(dev); > + > if (dev->mode_config.num_crtc) { >...
2016 May 07
0
[PATCH] drm/nouveau: add a LED driver for the NVIDIA logo
...ntime_use_autosuspend(dev->dev); > @@ -499,6 +501,7 @@ nouveau_drm_unload(struct drm_device *dev) > struct nouveau_drm *drm = nouveau_drm(dev); > > pm_runtime_get_sync(dev->dev); > + nouveau_led_fini(dev); > nouveau_fbcon_fini(dev); > nouveau_accel_fini(drm); > nouveau_hwmon_fini(dev); > @@ -550,6 +553,8 @@ nouveau_do_suspend(struct drm_device *dev, bool runtime) > struct nouveau_cli *cli; > int ret; > > + nouveau_led_suspend(dev); > + > if (dev->mode_config.num_crtc) { >...
2013 Aug 27
0
[PATCH 5/9] drm/nouveau: Add install/remove semantics for event handlers
...m->vblank[i]); + } + nouveau_vga_init(drm); nouveau_agp_init(drm); @@ -404,6 +411,8 @@ static int nouveau_drm_unload(struct drm_device *dev) { struct nouveau_drm *drm = nouveau_drm(dev); + struct nouveau_disp *disp = nouveau_disp(drm->device); + int i; nouveau_fbcon_fini(dev); nouveau_accel_fini(drm); @@ -420,6 +429,10 @@ nouveau_drm_unload(struct drm_device *dev) nouveau_agp_fini(drm); nouveau_vga_fini(drm); + for (i = 0; i < ARRAY_SIZE(drm->vblank); i++) + nouveau_event_handler_remove(disp->vblank, i, + &drm->vblank[i]); + nouveau_cli_destroy(&drm-&g...
2016 May 30
2
[PATCH 1/9] drm/nouveau: Don't leak runtime pm ref on driver unload
...nouveau_drm *drm = nouveau_drm(dev); > > > > > > - pm_runtime_get_sync(dev->dev); > > > + if (nouveau_runtime_pm != 0) { > > > + pm_runtime_get_sync(dev->dev); > > > + } > > > + > > > nouveau_fbcon_fini(dev); > > > nouveau_accel_fini(drm); > > > nouveau_hwmon_fini(dev); > > > -- > > > 2.8.1 > > > > > > _______________________________________________ > > > Nouveau mailing list > > > Nouveau at lists.freedesktop.org > > > https://lists.freedesktop.org/mai...
2014 Feb 15
3
[RFC PATCH] drm/nouveau: split off nvc0 compilation
...nv50_fence_create(drm); else if (device->card_type < NV_C0) ret = nv84_fence_create(drm); +#ifdef CONFIG_DRM_NOUVEAU_NVC0 else ret = nvc0_fence_create(drm); +#endif if (ret) { NV_ERROR(drm, "failed to initialise sync subsystem, %d\n", ret); nouveau_accel_fini(drm); diff --git a/drivers/gpu/drm/nouveau/nouveau_fbcon.h b/drivers/gpu/drm/nouveau/nouveau_fbcon.h index fdfc0c9..b4ff8d5 100644 --- a/drivers/gpu/drm/nouveau/nouveau_fbcon.h +++ b/drivers/gpu/drm/nouveau/nouveau_fbcon.h @@ -51,10 +51,26 @@ int nv50_fbcon_copyarea(struct fb_info *info, const stru...
2016 Jun 08
8
[PATCH v2 00/15] Runtime pm ref leak bonanza
Second iteration of my endeavour to rid nouveau, radeon and amdgpu of runtime pm ref leaks. Patches 1 to 8 are identical to v1. Patch 9 of v1 modified the DRM core to turn off all CRTCs on driver unload. Based on feedback by Daniel Vetter, I've replaced this with a helper to turn off all CRTCs, which is called by nouveau, radeon and amdgpu on unload. In other words, this is now opt-in. So
2014 Feb 15
0
[RFC PATCH] drm/nouveau: split off nvc0 compilation
...ret = nv84_fence_create(drm); > +#ifdef CONFIG_DRM_NOUVEAU_NVC0 > else ret = nvc0_fence_create(drm); > +#endif > if (ret) { > NV_ERROR(drm, "failed to initialise sync subsystem, %d\n", ret); > nouveau_accel_fini(drm); > diff --git a/drivers/gpu/drm/nouveau/nouveau_fbcon.h b/drivers/gpu/drm/nouveau/nouveau_fbcon.h > index fdfc0c9..b4ff8d5 100644 > --- a/drivers/gpu/drm/nouveau/nouveau_fbcon.h > +++ b/drivers/gpu/drm/nouveau/nouveau_fbcon.h > @@ -51,10 +51,26 @@ int nv50_fbcon_copyarea(struct...
2014 Mar 23
0
[PATCH] drm/nouveau: allow nv04/nv50/nvc0+ parts of the driver to be separated
...= nv84_fence_create(drm); - else ret = nvc0_fence_create(drm); + else +#endif +#ifdef CONFIG_DRM_NOUVEAU_NVC0 + ret = nvc0_fence_create(drm); +#else + ret = -ENODEV; +#endif if (ret) { NV_ERROR(drm, "failed to initialise sync subsystem, %d\n", ret); nouveau_accel_fini(drm); diff --git a/drivers/gpu/drm/nouveau/nouveau_fbcon.h b/drivers/gpu/drm/nouveau/nouveau_fbcon.h index fdfc0c9..5365332 100644 --- a/drivers/gpu/drm/nouveau/nouveau_fbcon.h +++ b/drivers/gpu/drm/nouveau/nouveau_fbcon.h @@ -41,20 +41,58 @@ struct nouveau_fbdev { void nouveau_fbcon_restore(voi...
2013 Aug 27
11
[PATCH 0/9] drm/nouveau: Cleanup event/handler design
This series was originally motivated by a deadlock, introduced in commit 1d7c71a3e2f77336df536855b0efd2dc5bdeb41b 'drm/nouveau/disp: port vblank handling to event interface', due to inverted lock order between nouveau_drm_vblank_enable() and nouveau_drm_vblank_handler() (the complete lockdep report is included in the patch 4/5 changelog). Because this series fixes the vblank event