Lukas Wunner
2015-Oct-18 11:05 UTC
[Nouveau] [PATCH 1/1] vga_switcheroo: Constify vga_switcheroo_handler
vga_switcheroo_client_ops has always been declared const since its introduction with 26ec685ff9d9 ("vga_switcheroo: Introduce struct vga_switcheroo_client_ops"). Do so for vga_switcheroo_handler as well. drivers/gpu/drm/amd/amdgpu/amdgpu.ko: 6 .rodata 00009888 - 19 .data 00001f00 + 19 .data 00001ee0 drivers/gpu/drm/nouveau/nouveau.ko: 6 .rodata 000460b8 17 .data 00018fe0 drivers/gpu/drm/radeon/radeon.ko: - 7 .rodata 00030944 + 7 .rodata 00030964 - 21 .data 0000d6a0 + 21 .data 0000d678 drivers/platform/x86/apple-gmux.ko: - 7 .rodata 00000140 + 7 .rodata 00000160 - 11 .data 000000e0 + 11 .data 000000b8 Cc: Ben Skeggs <bskeggs at redhat.com> Cc: Darren Hart <dvhart at linux.intel.com> Cc: Alex Deucher <alexander.deucher at amd.com> Signed-off-by: Lukas Wunner <lukas at wunner.de> --- drivers/gpu/drm/amd/amdgpu/amdgpu_atpx_handler.c | 2 +- drivers/gpu/drm/nouveau/nouveau_acpi.c | 2 +- drivers/gpu/drm/radeon/radeon_atpx_handler.c | 2 +- drivers/gpu/vga/vga_switcheroo.c | 4 ++-- drivers/platform/x86/apple-gmux.c | 2 +- include/linux/vga_switcheroo.h | 4 ++-- 6 files changed, 8 insertions(+), 8 deletions(-) diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_atpx_handler.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_atpx_handler.c index 3f7aaa4..dc565a4 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_atpx_handler.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_atpx_handler.c @@ -501,7 +501,7 @@ static int amdgpu_atpx_get_client_id(struct pci_dev *pdev) return VGA_SWITCHEROO_DIS; } -static struct vga_switcheroo_handler amdgpu_atpx_handler = { +static const struct vga_switcheroo_handler amdgpu_atpx_handler = { .switchto = amdgpu_atpx_switchto, .power_state = amdgpu_atpx_power_state, .init = amdgpu_atpx_init, diff --git a/drivers/gpu/drm/nouveau/nouveau_acpi.c b/drivers/gpu/drm/nouveau/nouveau_acpi.c index df2d981..8b8332e 100644 --- a/drivers/gpu/drm/nouveau/nouveau_acpi.c +++ b/drivers/gpu/drm/nouveau/nouveau_acpi.c @@ -206,7 +206,7 @@ static int nouveau_dsm_get_client_id(struct pci_dev *pdev) return VGA_SWITCHEROO_DIS; } -static struct vga_switcheroo_handler nouveau_dsm_handler = { +static const struct vga_switcheroo_handler nouveau_dsm_handler = { .switchto = nouveau_dsm_switchto, .power_state = nouveau_dsm_power_state, .get_client_id = nouveau_dsm_get_client_id, diff --git a/drivers/gpu/drm/radeon/radeon_atpx_handler.c b/drivers/gpu/drm/radeon/radeon_atpx_handler.c index 8bc7d0b..714508a 100644 --- a/drivers/gpu/drm/radeon/radeon_atpx_handler.c +++ b/drivers/gpu/drm/radeon/radeon_atpx_handler.c @@ -499,7 +499,7 @@ static int radeon_atpx_get_client_id(struct pci_dev *pdev) return VGA_SWITCHEROO_DIS; } -static struct vga_switcheroo_handler radeon_atpx_handler = { +static const struct vga_switcheroo_handler radeon_atpx_handler = { .switchto = radeon_atpx_switchto, .power_state = radeon_atpx_power_state, .init = radeon_atpx_init, diff --git a/drivers/gpu/vga/vga_switcheroo.c b/drivers/gpu/vga/vga_switcheroo.c index af0d372..56bbbd6 100644 --- a/drivers/gpu/vga/vga_switcheroo.c +++ b/drivers/gpu/vga/vga_switcheroo.c @@ -140,7 +140,7 @@ struct vgasr_priv { int registered_clients; struct list_head clients; - struct vga_switcheroo_handler *handler; + const struct vga_switcheroo_handler *handler; }; #define ID_BIT_AUDIO 0x100 @@ -195,7 +195,7 @@ static void vga_switcheroo_enable(void) * * Return: 0 on success, -EINVAL if a handler was already registered. */ -int vga_switcheroo_register_handler(struct vga_switcheroo_handler *handler) +int vga_switcheroo_register_handler(const struct vga_switcheroo_handler *handler) { mutex_lock(&vgasr_mutex); if (vgasr_priv.handler) { diff --git a/drivers/platform/x86/apple-gmux.c b/drivers/platform/x86/apple-gmux.c index 0dec3f5..976efeb 100644 --- a/drivers/platform/x86/apple-gmux.c +++ b/drivers/platform/x86/apple-gmux.c @@ -346,7 +346,7 @@ gmux_active_client(struct apple_gmux_data *gmux_data) return VGA_SWITCHEROO_DIS; } -static struct vga_switcheroo_handler gmux_handler = { +static const struct vga_switcheroo_handler gmux_handler = { .switchto = gmux_switchto, .power_state = gmux_set_power_state, .get_client_id = gmux_get_client_id, diff --git a/include/linux/vga_switcheroo.h b/include/linux/vga_switcheroo.h index c557511..786bc93 100644 --- a/include/linux/vga_switcheroo.h +++ b/include/linux/vga_switcheroo.h @@ -137,7 +137,7 @@ int vga_switcheroo_register_audio_client(struct pci_dev *pdev, void vga_switcheroo_client_fb_set(struct pci_dev *dev, struct fb_info *info); -int vga_switcheroo_register_handler(struct vga_switcheroo_handler *handler); +int vga_switcheroo_register_handler(const struct vga_switcheroo_handler *handler); void vga_switcheroo_unregister_handler(void); int vga_switcheroo_process_delayed_switch(void); @@ -155,7 +155,7 @@ static inline void vga_switcheroo_unregister_client(struct pci_dev *dev) {} static inline int vga_switcheroo_register_client(struct pci_dev *dev, const struct vga_switcheroo_client_ops *ops, bool driver_power_control) { return 0; } static inline void vga_switcheroo_client_fb_set(struct pci_dev *dev, struct fb_info *info) {} -static inline int vga_switcheroo_register_handler(struct vga_switcheroo_handler *handler) { return 0; } +static inline int vga_switcheroo_register_handler(const 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, enum vga_switcheroo_client_id id) { return 0; } -- 2.1.0
Lukas Wunner
2015-Oct-20 10:07 UTC
[Nouveau] [PATCH 0/1] vga_switcheroo: Constify vga_switcheroo_handler
Another vga_switcheroo cleanup. Maintainers, is it okay to include the one-line change of each driver in here or do you want that split into separate patches? Thanks, Lukas Lukas Wunner (1): vga_switcheroo: Constify vga_switcheroo_handler drivers/gpu/drm/amd/amdgpu/amdgpu_atpx_handler.c | 2 +- drivers/gpu/drm/nouveau/nouveau_acpi.c | 2 +- drivers/gpu/drm/radeon/radeon_atpx_handler.c | 2 +- drivers/gpu/vga/vga_switcheroo.c | 4 ++-- drivers/platform/x86/apple-gmux.c | 2 +- include/linux/vga_switcheroo.h | 4 ++-- 6 files changed, 8 insertions(+), 8 deletions(-) -- 2.1.0
Christian König
2015-Oct-20 11:15 UTC
[Nouveau] [PATCH 1/1] vga_switcheroo: Constify vga_switcheroo_handler
On 18.10.2015 13:05, Lukas Wunner wrote:> vga_switcheroo_client_ops has always been declared const since its > introduction with 26ec685ff9d9 ("vga_switcheroo: Introduce struct > vga_switcheroo_client_ops"). > > Do so for vga_switcheroo_handler as well. > > drivers/gpu/drm/amd/amdgpu/amdgpu.ko: > 6 .rodata 00009888 > - 19 .data 00001f00 > + 19 .data 00001ee0 > drivers/gpu/drm/nouveau/nouveau.ko: > 6 .rodata 000460b8 > 17 .data 00018fe0 > drivers/gpu/drm/radeon/radeon.ko: > - 7 .rodata 00030944 > + 7 .rodata 00030964 > - 21 .data 0000d6a0 > + 21 .data 0000d678 > drivers/platform/x86/apple-gmux.ko: > - 7 .rodata 00000140 > + 7 .rodata 00000160 > - 11 .data 000000e0 > + 11 .data 000000b8 > > Cc: Ben Skeggs <bskeggs at redhat.com> > Cc: Darren Hart <dvhart at linux.intel.com> > Cc: Alex Deucher <alexander.deucher at amd.com> > Signed-off-by: Lukas Wunner <lukas at wunner.de>Looks like it makes sense and at least I don't need this split up between drivers. Patch is Reviewed-by: Christian König <christian.koenig at amd.com>. Regards, Christian.> --- > drivers/gpu/drm/amd/amdgpu/amdgpu_atpx_handler.c | 2 +- > drivers/gpu/drm/nouveau/nouveau_acpi.c | 2 +- > drivers/gpu/drm/radeon/radeon_atpx_handler.c | 2 +- > drivers/gpu/vga/vga_switcheroo.c | 4 ++-- > drivers/platform/x86/apple-gmux.c | 2 +- > include/linux/vga_switcheroo.h | 4 ++-- > 6 files changed, 8 insertions(+), 8 deletions(-) > > diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_atpx_handler.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_atpx_handler.c > index 3f7aaa4..dc565a4 100644 > --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_atpx_handler.c > +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_atpx_handler.c > @@ -501,7 +501,7 @@ static int amdgpu_atpx_get_client_id(struct pci_dev *pdev) > return VGA_SWITCHEROO_DIS; > } > > -static struct vga_switcheroo_handler amdgpu_atpx_handler = { > +static const struct vga_switcheroo_handler amdgpu_atpx_handler = { > .switchto = amdgpu_atpx_switchto, > .power_state = amdgpu_atpx_power_state, > .init = amdgpu_atpx_init, > diff --git a/drivers/gpu/drm/nouveau/nouveau_acpi.c b/drivers/gpu/drm/nouveau/nouveau_acpi.c > index df2d981..8b8332e 100644 > --- a/drivers/gpu/drm/nouveau/nouveau_acpi.c > +++ b/drivers/gpu/drm/nouveau/nouveau_acpi.c > @@ -206,7 +206,7 @@ static int nouveau_dsm_get_client_id(struct pci_dev *pdev) > return VGA_SWITCHEROO_DIS; > } > > -static struct vga_switcheroo_handler nouveau_dsm_handler = { > +static const struct vga_switcheroo_handler nouveau_dsm_handler = { > .switchto = nouveau_dsm_switchto, > .power_state = nouveau_dsm_power_state, > .get_client_id = nouveau_dsm_get_client_id, > diff --git a/drivers/gpu/drm/radeon/radeon_atpx_handler.c b/drivers/gpu/drm/radeon/radeon_atpx_handler.c > index 8bc7d0b..714508a 100644 > --- a/drivers/gpu/drm/radeon/radeon_atpx_handler.c > +++ b/drivers/gpu/drm/radeon/radeon_atpx_handler.c > @@ -499,7 +499,7 @@ static int radeon_atpx_get_client_id(struct pci_dev *pdev) > return VGA_SWITCHEROO_DIS; > } > > -static struct vga_switcheroo_handler radeon_atpx_handler = { > +static const struct vga_switcheroo_handler radeon_atpx_handler = { > .switchto = radeon_atpx_switchto, > .power_state = radeon_atpx_power_state, > .init = radeon_atpx_init, > diff --git a/drivers/gpu/vga/vga_switcheroo.c b/drivers/gpu/vga/vga_switcheroo.c > index af0d372..56bbbd6 100644 > --- a/drivers/gpu/vga/vga_switcheroo.c > +++ b/drivers/gpu/vga/vga_switcheroo.c > @@ -140,7 +140,7 @@ struct vgasr_priv { > int registered_clients; > struct list_head clients; > > - struct vga_switcheroo_handler *handler; > + const struct vga_switcheroo_handler *handler; > }; > > #define ID_BIT_AUDIO 0x100 > @@ -195,7 +195,7 @@ static void vga_switcheroo_enable(void) > * > * Return: 0 on success, -EINVAL if a handler was already registered. > */ > -int vga_switcheroo_register_handler(struct vga_switcheroo_handler *handler) > +int vga_switcheroo_register_handler(const struct vga_switcheroo_handler *handler) > { > mutex_lock(&vgasr_mutex); > if (vgasr_priv.handler) { > diff --git a/drivers/platform/x86/apple-gmux.c b/drivers/platform/x86/apple-gmux.c > index 0dec3f5..976efeb 100644 > --- a/drivers/platform/x86/apple-gmux.c > +++ b/drivers/platform/x86/apple-gmux.c > @@ -346,7 +346,7 @@ gmux_active_client(struct apple_gmux_data *gmux_data) > return VGA_SWITCHEROO_DIS; > } > > -static struct vga_switcheroo_handler gmux_handler = { > +static const struct vga_switcheroo_handler gmux_handler = { > .switchto = gmux_switchto, > .power_state = gmux_set_power_state, > .get_client_id = gmux_get_client_id, > diff --git a/include/linux/vga_switcheroo.h b/include/linux/vga_switcheroo.h > index c557511..786bc93 100644 > --- a/include/linux/vga_switcheroo.h > +++ b/include/linux/vga_switcheroo.h > @@ -137,7 +137,7 @@ int vga_switcheroo_register_audio_client(struct pci_dev *pdev, > void vga_switcheroo_client_fb_set(struct pci_dev *dev, > struct fb_info *info); > > -int vga_switcheroo_register_handler(struct vga_switcheroo_handler *handler); > +int vga_switcheroo_register_handler(const struct vga_switcheroo_handler *handler); > void vga_switcheroo_unregister_handler(void); > > int vga_switcheroo_process_delayed_switch(void); > @@ -155,7 +155,7 @@ static inline void vga_switcheroo_unregister_client(struct pci_dev *dev) {} > static inline int vga_switcheroo_register_client(struct pci_dev *dev, > const struct vga_switcheroo_client_ops *ops, bool driver_power_control) { return 0; } > static inline void vga_switcheroo_client_fb_set(struct pci_dev *dev, struct fb_info *info) {} > -static inline int vga_switcheroo_register_handler(struct vga_switcheroo_handler *handler) { return 0; } > +static inline int vga_switcheroo_register_handler(const 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, > enum vga_switcheroo_client_id id) { return 0; }
Apparently Analagous Threads
- [PATCH v5 00/12] Enable GPU switching on pre-retina MacBook Pro
- [PATCH v5 01/12] vga_switcheroo: Add handler flags infrastructure
- [PATCH 0/2] gpu: drm: Use pr_cont and neaten logging
- [PATCH 0/7] Modernize vga_switcheroo by using device link for HDA
- Acer Aspire V7-582PG (Haswell, GTX 750M) fails to power off GPU via Power Resources