Displaying 20 results from an estimated 22 matches for "nouveau_platform_device_create".
2018 Nov 23
2
[PATCH] drm/nouveau: tegra: Call nouveau_drm_device_init()
...uveau_drm.c | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/drivers/gpu/drm/nouveau/nouveau_drm.c b/drivers/gpu/drm/nouveau/nouveau_drm.c
index 2b2baf6e0e0d..d2928d43f29a 100644
--- a/drivers/gpu/drm/nouveau/nouveau_drm.c
+++ b/drivers/gpu/drm/nouveau/nouveau_drm.c
@@ -1171,10 +1171,16 @@ nouveau_platform_device_create(const struct nvkm_device_tegra_func *func,
goto err_free;
}
+ err = nouveau_drm_device_init(drm);
+ if (err)
+ goto err_put;
+
platform_set_drvdata(pdev, drm);
return drm;
+err_put:
+ drm_dev_put(drm);
err_free:
nvkm_device_del(pdevice);
--
2.19.1
2020 Nov 06
2
[PATCH 2/3] drm/nouveau: manage nouveau_drm lifetime with devres
...et;
> @@ -799,7 +794,6 @@ nouveau_drm_device_remove(struct drm_device *dev)
> device = nvkm_device_find(client->device);
>
> nouveau_drm_device_fini(dev);
> - drm_dev_put(dev);
> nvkm_device_del(&device);
> }
>
> @@ -1285,7 +1279,8 @@ nouveau_platform_device_create(const struct nvkm_device_tegra_func *func,
> struct platform_device *pdev,
> struct nvkm_device **pdevice)
> {
> - struct drm_device *drm;
> + struct nouveau_drm *nv_dev;
> + struct drm_device *drm_de...
2022 Dec 28
2
[REGRESSION] GM20B probe fails after commit 2541626cfb79
...tl_new+0x168/0x254
[ 2.154149] nvkm_ioctl+0xd0/0x220
[ 2.154153] nvkm_client_ioctl+0x10/0x1c
[ 2.154162] nvif_object_ctor+0xf4/0x22c
[ 2.154168] nvif_device_ctor+0x28/0x70
[ 2.154174] nouveau_cli_init+0x150/0x590
[ 2.154180] nouveau_drm_device_init+0x60/0x2a0
[ 2.154187] nouveau_platform_device_create+0x90/0xd0
[ 2.154193] nouveau_platform_probe+0x3c/0x9c
[ 2.154200] platform_probe+0x68/0xc0
[ 2.154207] really_probe+0xbc/0x2dc
[ 2.154211] __driver_probe_device+0x78/0xe0
[ 2.154216] driver_probe_device+0xd8/0x160
[ 2.154221] __device_attach_driver+0xb8/0x134
[ 2.154226]...
2014 Jun 13
3
[PATCH v2 0/3] drm/nouveau: support for probing platform devices
This series adds support for probing platform devices on Nouveau, as well as
the DT bindings for GK20A. It doesn't enable the GPU yet on Tegra boards since
a few extra things need to be supported before that.
Thanks to the input received for v1, this version is more self-contained and
shares less stuff between nouveau_drm and nouveau_platform. The major change
is that nouveau_platform is now
2020 Nov 06
0
[PATCH 2/3] drm/nouveau: manage nouveau_drm lifetime with devres
...(drm_dev);
fail_nvkm:
nvkm_device_del(&device);
return ret;
@@ -799,7 +794,6 @@ nouveau_drm_device_remove(struct drm_device *dev)
device = nvkm_device_find(client->device);
nouveau_drm_device_fini(dev);
- drm_dev_put(dev);
nvkm_device_del(&device);
}
@@ -1285,7 +1279,8 @@ nouveau_platform_device_create(const struct nvkm_device_tegra_func *func,
struct platform_device *pdev,
struct nvkm_device **pdevice)
{
- struct drm_device *drm;
+ struct nouveau_drm *nv_dev;
+ struct drm_device *drm_dev;
int err;
err = nvkm_device_tegra_new(func, pdev, nouveau_config, nouveau_debug,...
2014 Dec 30
2
[PATCH nouveau 09/11] drm: export some variable and functions to resue the PM functions
...@ nouveau_drm(struct drm_device *dev)
>
> int nouveau_pmops_suspend(struct device *);
> int nouveau_pmops_resume(struct device *);
> +int nouveau_do_suspend(struct drm_device *dev, bool runtime);
> +int nouveau_do_resume(struct drm_device *dev, bool runtime);
>
> #define nouveau_platform_device_create(p, u) \
> nouveau_platform_device_create_(p, sizeof(**u), (void **)u)
>
2014 Jun 26
0
[PATCH v3 1/3] drm/nouveau: support for probing platform devices
...data(pdev);
+
+ nouveau_drm_device_remove(dev);
+}
static int
nouveau_do_suspend(struct drm_device *dev, bool runtime)
@@ -1003,24 +1011,41 @@ nouveau_drm_pci_driver = {
.driver.pm = &nouveau_pm_ops,
};
-int nouveau_drm_platform_probe(struct platform_device *pdev)
+struct drm_device *
+nouveau_platform_device_create_(struct platform_device *pdev, int size,
+ void **pobject)
{
- struct nouveau_device *device;
- int ret;
+ struct drm_device *drm;
+ int err;
- ret = nouveau_device_create(pdev, NOUVEAU_BUS_PLATFORM,
+ err = nouveau_device_create_(pdev, NOUVEAU_BUS_PLATFORM,
nouveau_platform_name(pde...
2023 Jan 15
3
[REGRESSION] GM20B probe fails after commit 2541626cfb79
...49] nvkm_ioctl+0xd0/0x220
> [ 2.154153] nvkm_client_ioctl+0x10/0x1c
> [ 2.154162] nvif_object_ctor+0xf4/0x22c
> [ 2.154168] nvif_device_ctor+0x28/0x70
> [ 2.154174] nouveau_cli_init+0x150/0x590
> [ 2.154180] nouveau_drm_device_init+0x60/0x2a0
> [ 2.154187] nouveau_platform_device_create+0x90/0xd0
> [ 2.154193] nouveau_platform_probe+0x3c/0x9c
> [ 2.154200] platform_probe+0x68/0xc0
> [ 2.154207] really_probe+0xbc/0x2dc
> [ 2.154211] __driver_probe_device+0x78/0xe0
> [ 2.154216] driver_probe_device+0xd8/0x160
> [ 2.154221] __device_attach_dr...
2014 Dec 23
0
[PATCH nouveau 09/11] drm: export some variable and functions to resue the PM functions
...rm/nouveau_drm.h
@@ -177,6 +177,8 @@ nouveau_drm(struct drm_device *dev)
int nouveau_pmops_suspend(struct device *);
int nouveau_pmops_resume(struct device *);
+int nouveau_do_suspend(struct drm_device *dev, bool runtime);
+int nouveau_do_resume(struct drm_device *dev, bool runtime);
#define nouveau_platform_device_create(p, u) \
nouveau_platform_device_create_(p, sizeof(**u), (void **)u)
--
1.9.1
2014 Jun 26
6
[PATCH v3 0/3] drm/nouveau: support for probing platform devices
This series adds support for probing platform devices on Nouveau, as well as
the DT bindings for GK20A. It doesn't enable the GPU yet on Tegra boards since
a few extra things need to be supported before that.
This version is mostly identical to v2 but fixes an important issue: the drvdata
must be set to the drm_device for sysfs to work, so the platform device
structure now includes the
2014 Dec 30
0
[PATCH nouveau 09/11] drm: export some variable and functions to resue the PM functions
...dev)
>>
>> int nouveau_pmops_suspend(struct device *);
>> int nouveau_pmops_resume(struct device *);
>> +int nouveau_do_suspend(struct drm_device *dev, bool runtime);
>> +int nouveau_do_resume(struct drm_device *dev, bool runtime);
>>
>> #define nouveau_platform_device_create(p, u) \
>> nouveau_platform_device_create_(p, sizeof(**u), (void **)u)
>>
2017 Dec 20
0
[bug report] null ptr deref in nouveau_platform_probe (tegra186-p2771-0000)
...; [ 12.050713] Process systemd-udevd (pid: 261, stack limit =
> 0x00000000247b2b64)
> [ 12.050714] Call trace:
> [ 12.050717] mutex_lock+0x28/0x58
> [ 12.050721] iommu_attach_device+0xac/0xf8
> [ 12.050948] nvkm_device_tegra_new+0x260/0x510 [nouveau]
> [ 12.051166] nouveau_platform_device_create+0x48/0xa8 [nouveau]
> [ 12.051364] nouveau_platform_probe+0x34/0x80 [nouveau]
> [ 12.051368] platform_drv_probe+0x60/0xc0
> [ 12.051372] driver_probe_device+0x33c/0x4a0
> [ 12.051375] __driver_attach+0xdc/0x128
> [ 12.051377] bus_for_each_dev+0x5c/0xa8
> [ 12.0513...
2018 Aug 30
3
[PATCH 0/2] drm/nouveau: Use more standard logging styles
Reduces object size ~4kb
Joe Perches (2):
drm/nouveau: Add new logging function nv_cli_printk
drm/nouveau: Convert NV_PRINTK macros and uses to new nv_cli_<level> macros
drivers/gpu/drm/nouveau/nouveau_abi16.c | 2 +-
drivers/gpu/drm/nouveau/nouveau_chan.c | 12 +++----
drivers/gpu/drm/nouveau/nouveau_drm.c | 21 +++++++++++
drivers/gpu/drm/nouveau/nouveau_drv.h | 44
2014 Jun 26
2
[PATCH v3 1/3] drm/nouveau: support for probing platform devices
...> static int
> nouveau_do_suspend(struct drm_device *dev, bool runtime)
> @@ -1003,24 +1011,41 @@ nouveau_drm_pci_driver = {
> .driver.pm = &nouveau_pm_ops,
> };
>
> -int nouveau_drm_platform_probe(struct platform_device *pdev)
> +struct drm_device *
> +nouveau_platform_device_create_(struct platform_device *pdev, int size,
> + void **pobject)
> {
> - struct nouveau_device *device;
> - int ret;
> + struct drm_device *drm;
> + int err;
>
> - ret = nouveau_device_create(pdev, NOUVEAU_BUS_PLATFORM,
> + err = nouveau_device_create_(pdev, NOUVEAU_B...
2023 Sep 22
1
[RFT PATCH v2 04/12] drm/nouveau: Call drm_atomic_helper_shutdown() or equiv at shutdown time
...};
>
> diff --git a/drivers/gpu/drm/nouveau/nouveau_drv.h b/drivers/gpu/drm/nouveau/nouveau_drv.h
> index 3666a7403e47..aa936cabb6cf 100644
> --- a/drivers/gpu/drm/nouveau/nouveau_drv.h
> +++ b/drivers/gpu/drm/nouveau/nouveau_drv.h
> @@ -327,6 +327,7 @@ struct drm_device *
> nouveau_platform_device_create(const struct nvkm_device_tegra_func *,
> struct platform_device *, struct nvkm_device **);
> void nouveau_drm_device_remove(struct drm_device *dev);
> +void nouveau_drm_device_shutdown(struct drm_device *dev);
>
> #define NV_PRINTK(l,c,f,a...) do {...
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
2024 Jun 12
1
[PATCH v2 0/8] drm: make leftover drivers call drm_atomic_helper_shutdown() at the right times
This patch series is the leftovers of a patch series sent in September
2023 [1] in an attempt to get some of the patches landed finally.
This patch series originally came about after a _long_ discussion
between me and Maxime Ripard in response to a different patch I sent
out [2]. As part of that discussion, we realized that it would be good
if DRM drivers consistently called
2023 Sep 21
1
[RFT PATCH v2 00/12] drm: call drm_atomic_helper_shutdown() at the right times
This patch series came about after a _long_ discussion between me and
Maxime Ripard in response to a different patch I sent out [1]. As part
of that discussion, we realized that it would be good if DRM drivers
consistently called drm_atomic_helper_shutdown() properly at shutdown
and driver remove time as it's documented that they should do. The
eventual goal of this would be to enable removing
2017 Dec 14
2
[bug report] null ptr deref in nouveau_platform_probe (tegra186-p2771-0000)
...1c915b800 x0 : 0000000000000000
[ 12.050713] Process systemd-udevd (pid: 261, stack limit =
0x00000000247b2b64)
[ 12.050714] Call trace:
[ 12.050717] mutex_lock+0x28/0x58
[ 12.050721] iommu_attach_device+0xac/0xf8
[ 12.050948] nvkm_device_tegra_new+0x260/0x510 [nouveau]
[ 12.051166] nouveau_platform_device_create+0x48/0xa8 [nouveau]
[ 12.051364] nouveau_platform_probe+0x34/0x80 [nouveau]
[ 12.051368] platform_drv_probe+0x60/0xc0
[ 12.051372] driver_probe_device+0x33c/0x4a0
[ 12.051375] __driver_attach+0xdc/0x128
[ 12.051377] bus_for_each_dev+0x5c/0xa8
[ 12.051379] driver_attach+0x30/0x40
[...
2014 Dec 23
18
[PATCH 0/11] Add suspend/resume support for GK20A
Hi,
This series includes some pieces of fixes to complete the GK20A power
on/off sequences and add the suspend/resume support.
The patches 1/11 - 4/11 are based on the linux-next-20141219.
The patches 5/11 - 11/11 are based on the branch "linux-3.19" of Ben Skeggs's
tree (http://cgit.freedesktop.org/~darktama/nouveau).
Thanks,
Vince
Vince Hsu (4): (linux-next-20141219)
ARM: