aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/nouveau/nouveau_acpi.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/gpu/drm/nouveau/nouveau_acpi.c')
-rw-r--r--drivers/gpu/drm/nouveau/nouveau_acpi.c26
1 files changed, 11 insertions, 15 deletions
diff --git a/drivers/gpu/drm/nouveau/nouveau_acpi.c b/drivers/gpu/drm/nouveau/nouveau_acpi.c
index dea42bc515e..48783e14114 100644
--- a/drivers/gpu/drm/nouveau/nouveau_acpi.c
+++ b/drivers/gpu/drm/nouveau/nouveau_acpi.c
@@ -7,15 +7,13 @@
7#include <acpi/acpi.h> 7#include <acpi/acpi.h>
8#include <linux/mxm-wmi.h> 8#include <linux/mxm-wmi.h>
9 9
10#include <drm/drmP.h>
11#include <drm/drm_crtc_helper.h>
12#include "nouveau_drv.h"
13#include <drm/nouveau_drm.h>
14#include "nv50_display.h"
15#include "nouveau_connector.h"
16
17#include <linux/vga_switcheroo.h> 10#include <linux/vga_switcheroo.h>
18 11
12#include <drm/drm_edid.h>
13
14#include "nouveau_drm.h"
15#include "nouveau_acpi.h"
16
19#define NOUVEAU_DSM_LED 0x02 17#define NOUVEAU_DSM_LED 0x02
20#define NOUVEAU_DSM_LED_STATE 0x00 18#define NOUVEAU_DSM_LED_STATE 0x00
21#define NOUVEAU_DSM_LED_OFF 0x10 19#define NOUVEAU_DSM_LED_OFF 0x10
@@ -388,10 +386,9 @@ int nouveau_acpi_get_bios_chunk(uint8_t *bios, int offset, int len)
388 return nouveau_rom_call(nouveau_dsm_priv.rom_handle, bios, offset, len); 386 return nouveau_rom_call(nouveau_dsm_priv.rom_handle, bios, offset, len);
389} 387}
390 388
391int 389void *
392nouveau_acpi_edid(struct drm_device *dev, struct drm_connector *connector) 390nouveau_acpi_edid(struct drm_device *dev, struct drm_connector *connector)
393{ 391{
394 struct nouveau_connector *nv_connector = nouveau_connector(connector);
395 struct acpi_device *acpidev; 392 struct acpi_device *acpidev;
396 acpi_handle handle; 393 acpi_handle handle;
397 int type, ret; 394 int type, ret;
@@ -403,21 +400,20 @@ nouveau_acpi_edid(struct drm_device *dev, struct drm_connector *connector)
403 type = ACPI_VIDEO_DISPLAY_LCD; 400 type = ACPI_VIDEO_DISPLAY_LCD;
404 break; 401 break;
405 default: 402 default:
406 return -EINVAL; 403 return NULL;
407 } 404 }
408 405
409 handle = DEVICE_ACPI_HANDLE(&dev->pdev->dev); 406 handle = DEVICE_ACPI_HANDLE(&dev->pdev->dev);
410 if (!handle) 407 if (!handle)
411 return -ENODEV; 408 return NULL;
412 409
413 ret = acpi_bus_get_device(handle, &acpidev); 410 ret = acpi_bus_get_device(handle, &acpidev);
414 if (ret) 411 if (ret)
415 return -ENODEV; 412 return NULL;
416 413
417 ret = acpi_video_get_edid(acpidev, type, -1, &edid); 414 ret = acpi_video_get_edid(acpidev, type, -1, &edid);
418 if (ret < 0) 415 if (ret < 0)
419 return ret; 416 return NULL;
420 417
421 nv_connector->edid = kmemdup(edid, EDID_LENGTH, GFP_KERNEL); 418 return kmemdup(edid, EDID_LENGTH, GFP_KERNEL);
422 return 0;
423} 419}