drm/nouveau/core: rework event interface
[linux-block.git] / drivers / gpu / drm / nouveau / core / include / core / device.h
index a8a9a9cf16cb2e8e62c6f96e68e9d8ee95aeb73b..0e410363f80205c25f9eb98e74742e54dc5e3f4b 100644 (file)
@@ -4,6 +4,7 @@
 #include <core/object.h>
 #include <core/subdev.h>
 #include <core/engine.h>
+#include <core/event.h>
 
 enum nv_subdev_type {
        NVDEV_ENGINE_DEVICE,
@@ -69,6 +70,8 @@ struct nouveau_device {
        struct platform_device *platformdev;
        u64 handle;
 
+       struct nvkm_event event;
+
        const char *cfgopt;
        const char *dbgopt;
        const char *name;
@@ -93,6 +96,10 @@ struct nouveau_device {
 
        struct nouveau_oclass *oclass[NVDEV_SUBDEV_NR];
        struct nouveau_object *subdev[NVDEV_SUBDEV_NR];
+
+       struct {
+               struct notifier_block nb;
+       } acpi;
 };
 
 static inline struct nouveau_device *
@@ -162,12 +169,6 @@ nv_device_resource_start(struct nouveau_device *device, unsigned int bar);
 resource_size_t
 nv_device_resource_len(struct nouveau_device *device, unsigned int bar);
 
-dma_addr_t
-nv_device_map_page(struct nouveau_device *device, struct page *page);
-
-void
-nv_device_unmap_page(struct nouveau_device *device, dma_addr_t addr);
-
 int
 nv_device_get_irq(struct nouveau_device *device, bool stall);