search for: nouveau_device_create_

Displaying 12 results from an estimated 12 matches for "nouveau_device_create_".

Did you mean: nouveau_device_create
2014 Feb 01
0
[RFC 03/16] drm/nouveau: add platform device probing function
....90056190 100644 --- a/drivers/gpu/drm/nouveau/core/include/engine/device.h +++ b/drivers/gpu/drm/nouveau/core/include/engine/device.h @@ -3,12 +3,22 @@ #include <core/device.h> +struct platform_device; + #define nouveau_device_create(p,n,s,c,d,u) \ nouveau_device_create_((p), (n), (s), (c), (d), sizeof(**u), (void **)u) int nouveau_device_create_(struct pci_dev *, u64 name, const char *sname, const char *cfg, const char *dbg, int, void **); +#define nouveau_device_platform_create(p,n,s,c,d,u) \ + nouveau_device_platform_crea...
2014 Feb 12
0
[PATCH v2] drm/nouveau: support for platform devices
...make use of these functions. Some older drivers are too dependent on PCI to be properly updated, but all newer code on which future chips may depend should at least be runnable with platform devices. Signed-off-by: Alexandre Courbot <acourbot at nvidia.com> --- Changes since v1: - Refactored nouveau_device_create_() to take an additional bus type argument instead of having two versions of it that duplicate code. - Fixed a typo when substituting pci_resource_* with nv_device_resource_* - Check whether devices are PCI in relevant functions instead of nouveau_drm_load(). drivers/gpu/drm/nouveau/core/engin...
2014 Feb 11
2
[PATCH] drm/nouveau: support for platform devices
...struct platform_device *platformdev; > > I'm generally wondering if perhaps a better abstraction would be to > store a struct device * here, perhaps with a struct nouveau_device_ops * > or similar to abstract away the differences between PCI and platform > devices. > > nouveau_device_create_() could then take a struct device * and a struct > nouveau_device_ops *, and upcasting can therefore be done within these > operations, rather than sprinkling nv_device_is_pci() code everywhere. At some point I was considering having the bus abstracted as a subdev, but that sounded overkill....
2014 Feb 12
2
[PATCH v2] drm/nouveau: support for platform devices
...d really hard to find something wrong with this patch but it seems that you have it polished very nicely. There is one quite minor nit in-line, but I'm not fussed either way. > Signed-off-by: Alexandre Courbot <acourbot at nvidia.com> > --- > Changes since v1: > - Refactored nouveau_device_create_() to take an additional bus type > argument instead of having two versions of it that duplicate code. > - Fixed a typo when substituting pci_resource_* with nv_device_resource_* > - Check whether devices are PCI in relevant functions instead of > nouveau_drm_load(). > > driv...
2014 Feb 13
0
[PATCH v2] drm/nouveau: support for platform devices
...with this patch but it > seems that you have it polished very nicely. Great! > There is one quite minor nit in-line, but I'm not fussed either way. > >> Signed-off-by: Alexandre Courbot <acourbot at nvidia.com> >> --- >> Changes since v1: >> - Refactored nouveau_device_create_() to take an additional bus type >> argument instead of having two versions of it that duplicate code. >> - Fixed a typo when substituting pci_resource_* with nv_device_resource_* >> - Check whether devices are PCI in relevant functions instead of >> nouveau_drm_load()...
2014 Feb 10
0
[PATCH] drm/nouveau: support for platform devices
...> struct pci_dev *pdev; > + struct platform_device *platformdev; I'm generally wondering if perhaps a better abstraction would be to store a struct device * here, perhaps with a struct nouveau_device_ops * or similar to abstract away the differences between PCI and platform devices. nouveau_device_create_() could then take a struct device * and a struct nouveau_device_ops *, and upcasting can therefore be done within these operations, rather than sprinkling nv_device_is_pci() code everywhere. > diff --git a/drivers/gpu/drm/nouveau/nouveau_abi16.c b/drivers/gpu/drm/nouveau/nouveau_abi16.c [...] &...
2014 Feb 10
2
[PATCH] drm/nouveau: support for platform devices
...5619094d7 100644 --- a/drivers/gpu/drm/nouveau/core/include/engine/device.h +++ b/drivers/gpu/drm/nouveau/core/include/engine/device.h @@ -3,12 +3,22 @@ #include <core/device.h> +struct platform_device; + #define nouveau_device_create(p,n,s,c,d,u) \ nouveau_device_create_((p), (n), (s), (c), (d), sizeof(**u), (void **)u) int nouveau_device_create_(struct pci_dev *, u64 name, const char *sname, const char *cfg, const char *dbg, int, void **); +#define nouveau_device_platform_create(p,n,s,c,d,u) \ + nouveau_device_platform_crea...
2014 Jun 26
0
[PATCH v3 1/3] drm/nouveau: support for probing platform devices
...be(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(pdev), dev_name(&pdev->dev), nouveau_config, - nouveau_debug, &device); - - ret = drm_platform_init(&driver, pdev); - if (ret) { - nouveau_object_ref(NULL, (struct nouveau_object **)&device); - return re...
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 Jun 26
2
[PATCH v3 1/3] drm/nouveau: support for probing platform devices
...* > +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(pdev), > dev_name(&pdev->dev), nouveau_config, > - nouveau_debug, &device); > - > - ret = drm_platform_init(&driver, pdev); > - if (ret) { > - nouveau_object_ref(NULL, (struct nouveau...
2014 May 19
10
[PATCH 0/5] drm/nouveau: platform devices and GK20A probing
This patch series is the final (?) step towards the initial support of GK20A, allowing it to be probed and used (currently at a very slow speed, and for offscreen rendering only) on the Jetson TK1 and Venice 2 boards. The main piece if the first patch which adds platform devices probing support to Nouveau. There are probably lots of things that need to be discussed about it, e.g.: * The way the
2014 Feb 01
28
[RFC 00/16] drm/nouveau: initial support for GK20A (Tegra K1)
Hello everyone, GK20A is the Kepler-based GPU used in the upcoming Tegra K1 chips. The following patches perform architectural changes to Nouveau that are necessary to support non-PCI GPUs and add initial support for GK20A. Although the support is still very basic and more user-space changes will be needed to make the full graphics stack run on top of it, we were able to successfully open