Signed-off-by: Lukas Wunner <lukas at wunner.de>
---
 drivers/gpu/vga/vga_switcheroo.c | 17 ++++++++++-------
 include/linux/vga_switcheroo.h   |  6 +++---
 2 files changed, 13 insertions(+), 10 deletions(-)

diff --git a/drivers/gpu/vga/vga_switcheroo.c b/drivers/gpu/vga/vga_switcheroo.c
index bbd0a8e..6e0e705 100644
--- a/drivers/gpu/vga/vga_switcheroo.c
+++ b/drivers/gpu/vga/vga_switcheroo.c
@@ -104,7 +104,7 @@ struct vga_switcheroo_client {
        struct fb_info *fb_info;
        enum vga_switcheroo_state pwr_state;
        const struct vga_switcheroo_client_ops *ops;
-       int id;
+       enum vga_switcheroo_client_id id;
        bool active;
        bool driver_power_control;
        struct list_head list;
@@ -235,7 +235,8 @@ EXPORT_SYMBOL(vga_switcheroo_unregister_handler);

 static int register_client(struct pci_dev *pdev,
                           const struct vga_switcheroo_client_ops *ops,
-                          int id, bool active, bool driver_power_control)
+                          enum vga_switcheroo_client_id id, bool active,
+                          bool driver_power_control)
 {
        struct vga_switcheroo_client *client;

@@ -290,7 +291,7 @@ EXPORT_SYMBOL(vga_switcheroo_register_client);
  * vga_switcheroo_register_audio_client - register audio client
  * @pdev: client pci device
  * @ops: client callbacks
- * @id: client identifier, see enum vga_switcheroo_client_id
+ * @id: client identifier
  *
  * Register audio client (audio device on a GPU). The power state of the
  * client is assumed to be ON.
@@ -299,7 +300,7 @@ EXPORT_SYMBOL(vga_switcheroo_register_client);
  */
 int vga_switcheroo_register_audio_client(struct pci_dev *pdev,
                                         const struct vga_switcheroo_client_ops 
*ops,
-                                        int id)
+                                        enum vga_switcheroo_client_id id)
 {
        return register_client(pdev, ops, id | ID_BIT_AUDIO, false, false);
 }
@@ -317,7 +318,8 @@ find_client_from_pci(struct list_head *head, struct pci_dev 
*pdev)
 }

 static struct vga_switcheroo_client *
-find_client_from_id(struct list_head *head, int client_id)
+find_client_from_id(struct list_head *head,
+                   enum vga_switcheroo_client_id client_id)
 {
        struct vga_switcheroo_client *client;

@@ -497,7 +499,8 @@ static int vga_switchoff(struct vga_switcheroo_client 
*client)
        return 0;
 }

-static void set_audio_state(int id, enum vga_switcheroo_state state)
+static void set_audio_state(enum vga_switcheroo_client_id id,
+                           enum vga_switcheroo_state state)
 {
        struct vga_switcheroo_client *client;

@@ -584,7 +587,7 @@ vga_switcheroo_debugfs_write(struct file *filp, const char 
__user *ubuf,
        int ret;
        bool delay = false, can_switch;
        bool just_mux = false;
-       int client_id = VGA_SWITCHEROO_UNKNOWN_ID;
+       enum vga_switcheroo_client_id client_id = VGA_SWITCHEROO_UNKNOWN_ID;
        struct vga_switcheroo_client *client = NULL;

        if (cnt > 63)
diff --git a/include/linux/vga_switcheroo.h b/include/linux/vga_switcheroo.h
index 664dca5..b2a3dda 100644
--- a/include/linux/vga_switcheroo.h
+++ b/include/linux/vga_switcheroo.h
@@ -95,7 +95,7 @@ struct vga_switcheroo_handler {
        int (*switchto)(enum vga_switcheroo_client_id id);
        int (*power_state)(enum vga_switcheroo_client_id id,
                           enum vga_switcheroo_state state);
-       int (*get_client_id)(struct pci_dev *pdev);
+       enum vga_switcheroo_client_id (*get_client_id)(struct pci_dev *pdev);
 };

 /**
@@ -127,7 +127,7 @@ int vga_switcheroo_register_client(struct pci_dev *dev,
                                   bool driver_power_control);
 int vga_switcheroo_register_audio_client(struct pci_dev *pdev,
                                         const struct vga_switcheroo_client_ops 
*ops,
-                                        int id);
+                                        enum vga_switcheroo_client_id id);

 void vga_switcheroo_client_fb_set(struct pci_dev *dev,
                                  struct fb_info *info);
@@ -153,7 +153,7 @@ static inline void vga_switcheroo_client_fb_set(struct 
pci_dev *dev, struct fb_i
 static inline int vga_switcheroo_register_handler(struct 
vga_switcheroo_handler *handler) { return 0; }
 static inline int vga_switcheroo_register_audio_client(struct pci_dev *pdev,
        const struct vga_switcheroo_client_ops *ops,
-       int id) { return 0; }
+       enum vga_switcheroo_client_id id) { return 0; }
 static inline void vga_switcheroo_unregister_handler(void) {}
 static inline int vga_switcheroo_process_delayed_switch(void) { return 0; }
 static inline enum vga_switcheroo_state vga_switcheroo_get_client_state(struct 
pci_dev *dev) { return VGA_SWITCHEROO_ON; }
-- 
1.8.5.2 (Apple Git-48)

Reply via email to