drivers/staging/sm750fb/ddk750_chip.c | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-)
Abstract out x86-specific code in ddk750_init_hw() to improve
portability and adhere to kernel coding standards. Replaces
architecture-specific defines with CONFIG_X86 checks.
Fixes checkpatch warning:
- CHECK: architecture specific defines should be avoided.
Changes made:
- Create a new function sm750le_set_graphic_mode to encapsulate architecture
specifc behaviour.
- Using CONFIG_X86 instead of i386 and x86.
- Added placeholder for non-x86 architectures in sm750le_set_graphic_mode
function.
Signed-off-by: Riyan Dhiman <riyandhiman14@gmail.com>
---
drivers/staging/sm750fb/ddk750_chip.c | 17 ++++++++++++-----
1 file changed, 12 insertions(+), 5 deletions(-)
diff --git a/drivers/staging/sm750fb/ddk750_chip.c b/drivers/staging/sm750fb/ddk750_chip.c
index 02860d3ec365..23196070bceb 100644
--- a/drivers/staging/sm750fb/ddk750_chip.c
+++ b/drivers/staging/sm750fb/ddk750_chip.c
@@ -210,6 +210,17 @@ unsigned int ddk750_get_vm_size(void)
return data;
}
+static void sm750le_set_graphic_mode(void)
+{
+#ifdef CONFIG_X86
+ outb_p(0x88, 0x3d4);
+ outb_p(0x06, 0x3d5);
+#else
+ /* Implement an alternative method for non-x86 architectures */
+ /* This might involve memory-mapped I/O or other chip-specific methods */
+#endif
+}
+
int ddk750_init_hw(struct initchip_param *p_init_param)
{
unsigned int reg;
@@ -229,11 +240,7 @@ int ddk750_init_hw(struct initchip_param *p_init_param)
reg |= (VGA_CONFIGURATION_PLL | VGA_CONFIGURATION_MODE);
poke32(VGA_CONFIGURATION, reg);
} else {
-#if defined(__i386__) || defined(__x86_64__)
- /* set graphic mode via IO method */
- outb_p(0x88, 0x3d4);
- outb_p(0x06, 0x3d5);
-#endif
+ sm750le_set_graphic_mode();
}
/* Set the Main Chip Clock */
--
2.46.0
On Wed, Aug 28, 2024 at 01:06:37AM +0530, Riyan Dhiman wrote:
> Abstract out x86-specific code in ddk750_init_hw() to improve
> portability and adhere to kernel coding standards. Replaces
> architecture-specific defines with CONFIG_X86 checks.
>
> Fixes checkpatch warning:
> - CHECK: architecture specific defines should be avoided.
>
> Changes made:
> - Create a new function sm750le_set_graphic_mode to encapsulate architecture
> specifc behaviour.
> - Using CONFIG_X86 instead of i386 and x86.
> - Added placeholder for non-x86 architectures in sm750le_set_graphic_mode
> function.
>
> Signed-off-by: Riyan Dhiman <riyandhiman14@gmail.com>
> ---
> drivers/staging/sm750fb/ddk750_chip.c | 17 ++++++++++++-----
> 1 file changed, 12 insertions(+), 5 deletions(-)
>
> diff --git a/drivers/staging/sm750fb/ddk750_chip.c b/drivers/staging/sm750fb/ddk750_chip.c
> index 02860d3ec365..23196070bceb 100644
> --- a/drivers/staging/sm750fb/ddk750_chip.c
> +++ b/drivers/staging/sm750fb/ddk750_chip.c
> @@ -210,6 +210,17 @@ unsigned int ddk750_get_vm_size(void)
> return data;
> }
>
> +static void sm750le_set_graphic_mode(void)
> +{
> +#ifdef CONFIG_X86
> + outb_p(0x88, 0x3d4);
> + outb_p(0x06, 0x3d5);
> +#else
> + /* Implement an alternative method for non-x86 architectures */
> + /* This might involve memory-mapped I/O or other chip-specific methods */
> +#endif
> +}
> +
> int ddk750_init_hw(struct initchip_param *p_init_param)
> {
> unsigned int reg;
> @@ -229,11 +240,7 @@ int ddk750_init_hw(struct initchip_param *p_init_param)
> reg |= (VGA_CONFIGURATION_PLL | VGA_CONFIGURATION_MODE);
> poke32(VGA_CONFIGURATION, reg);
> } else {
> -#if defined(__i386__) || defined(__x86_64__)
> - /* set graphic mode via IO method */
> - outb_p(0x88, 0x3d4);
> - outb_p(0x06, 0x3d5);
> -#endif
> + sm750le_set_graphic_mode();
This really doesn't change much, right? I think the existing code is
fine, it's ok to ignore checkpatch here.
thanks,
greg k-h
© 2016 - 2025 Red Hat, Inc.