All of lore.kernel.org
 help / color / mirror / Atom feed
* [XEN PATCH v4] drivers/video: make declarations of defined functions available
@ 2023-09-25  9:11 Nicola Vetrini
  2023-09-25 10:53 ` andrew.cooper3
  0 siblings, 1 reply; 4+ messages in thread
From: Nicola Vetrini @ 2023-09-25  9:11 UTC (permalink / raw)
  To: xen-devel
  Cc: sstabellini, michal.orzel, xenia.ragiadakou, ayan.kumar.halder,
	consulting, jbeulich, andrew.cooper3, roger.pau, Nicola Vetrini,
	Wei Liu, George Dunlap, Julien Grall

The declarations for 'vesa_{init,early_init,endboot}' needed by
'xen/drivers/video/vesa.c' and 'fill_console_start_info' in 'vga.c'
are now available by moving the relative code inside 'vga.h'.

While moving the code, the alternative definitions are now guarded by
CONFIG_VGA. The alternative #define-s for 'vesa_early_init' and 'vesa_endboot'
are dropped, since currently they have no callers when CONFIG_VGA is not defined. 

This also resolves violations of MISRA C:2012 Rule 8.4.

Fixes: 6d9199bd0f22 ("x86-64: enable hypervisor output on VESA frame buffer")
Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
---
Changes in v2:
- Moved fill_console_start_info to vga.h
  (21bee1787021 introduced this function)
Changes in v3:
- Changed the preprocessor guard
- Replace the inclusions of <xen/console.h> with <xen/vga.h> where needed.
Changes in v4:
- Reworded commit message
- Removed superfluous stub definitions
---
 xen/arch/x86/include/asm/setup.h  | 6 ------
 xen/arch/x86/platform_hypercall.c | 2 +-
 xen/arch/x86/pv/dom0_build.c      | 2 +-
 xen/drivers/video/vga.c           | 8 --------
 xen/include/xen/console.h         | 2 --
 xen/include/xen/vga.h             | 6 ++++++
 6 files changed, 8 insertions(+), 18 deletions(-)

diff --git a/xen/arch/x86/include/asm/setup.h b/xen/arch/x86/include/asm/setup.h
index b0e6a39e2365..dfdd9e555149 100644
--- a/xen/arch/x86/include/asm/setup.h
+++ b/xen/arch/x86/include/asm/setup.h
@@ -25,12 +25,6 @@ void subarch_init_memory(void);
 
 void init_IRQ(void);
 
-#ifdef CONFIG_VIDEO
-void vesa_init(void);
-#else
-static inline void vesa_init(void) {};
-#endif
-
 int construct_dom0(
     struct domain *d,
     const module_t *image, unsigned long image_headroom,
diff --git a/xen/arch/x86/platform_hypercall.c b/xen/arch/x86/platform_hypercall.c
index 9ff2da8fc324..9469de9045c7 100644
--- a/xen/arch/x86/platform_hypercall.c
+++ b/xen/arch/x86/platform_hypercall.c
@@ -14,7 +14,6 @@
 #include <xen/event.h>
 #include <xen/domain_page.h>
 #include <xen/trace.h>
-#include <xen/console.h>
 #include <xen/iocap.h>
 #include <xen/guest_access.h>
 #include <xen/hypercall.h>
@@ -24,6 +23,7 @@
 #include <xen/pmstat.h>
 #include <xen/irq.h>
 #include <xen/symbols.h>
+#include <xen/vga.h>
 #include <asm/current.h>
 #include <public/platform.h>
 #include <acpi/cpufreq/processor_perf.h>
diff --git a/xen/arch/x86/pv/dom0_build.c b/xen/arch/x86/pv/dom0_build.c
index 909ee9a899a4..5bbed3a36a21 100644
--- a/xen/arch/x86/pv/dom0_build.c
+++ b/xen/arch/x86/pv/dom0_build.c
@@ -4,7 +4,6 @@
  * Copyright (c) 2002-2005, K A Fraser
  */
 
-#include <xen/console.h>
 #include <xen/domain.h>
 #include <xen/domain_page.h>
 #include <xen/init.h>
@@ -13,6 +12,7 @@
 #include <xen/pfn.h>
 #include <xen/sched.h>
 #include <xen/softirq.h>
+#include <xen/vga.h>
 
 #include <asm/bzimage.h>
 #include <asm/dom0_build.h>
diff --git a/xen/drivers/video/vga.c b/xen/drivers/video/vga.c
index 0a03508bee60..18b590cdf072 100644
--- a/xen/drivers/video/vga.c
+++ b/xen/drivers/video/vga.c
@@ -54,14 +54,6 @@ string_param("vga", opt_vga);
 static unsigned int columns, lines;
 #define ATTRIBUTE   7
 
-#ifdef CONFIG_X86
-void vesa_early_init(void);
-void vesa_endboot(bool_t keep);
-#else
-#define vesa_early_init() ((void)0)
-#define vesa_endboot(x)   ((void)0)
-#endif
-
 void __init video_init(void)
 {
     char *p;
diff --git a/xen/include/xen/console.h b/xen/include/xen/console.h
index 53c56191ba9e..ab5c30c0daf2 100644
--- a/xen/include/xen/console.h
+++ b/xen/include/xen/console.h
@@ -20,8 +20,6 @@ void console_init_postirq(void);
 void console_endboot(void);
 int console_has(const char *device);
 
-int fill_console_start_info(struct dom0_vga_console_info *);
-
 unsigned long console_lock_recursive_irqsave(void);
 void console_unlock_recursive_irqrestore(unsigned long flags);
 void console_force_unlock(void);
diff --git a/xen/include/xen/vga.h b/xen/include/xen/vga.h
index f72b63d446b1..9b2c47971d0c 100644
--- a/xen/include/xen/vga.h
+++ b/xen/include/xen/vga.h
@@ -13,6 +13,12 @@
 
 #ifdef CONFIG_VGA
 extern struct xen_vga_console_info vga_console_info;
+int fill_console_start_info(struct dom0_vga_console_info *);
+void vesa_init(void);
+void vesa_early_init(void);
+void vesa_endboot(bool keep);
+#else
+static inline void vesa_init(void) {};
 #endif
 
 #endif /* _XEN_VGA_H */
-- 
2.34.1



^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: [XEN PATCH v4] drivers/video: make declarations of defined functions available
  2023-09-25  9:11 [XEN PATCH v4] drivers/video: make declarations of defined functions available Nicola Vetrini
@ 2023-09-25 10:53 ` andrew.cooper3
  2023-09-25 11:11   ` Henry Wang
  2023-09-26  7:57   ` Jan Beulich
  0 siblings, 2 replies; 4+ messages in thread
From: andrew.cooper3 @ 2023-09-25 10:53 UTC (permalink / raw)
  To: Nicola Vetrini, xen-devel
  Cc: sstabellini, michal.orzel, xenia.ragiadakou, ayan.kumar.halder,
	consulting, jbeulich, roger.pau, Wei Liu, George Dunlap,
	Julien Grall, Henry Wang

On 25/09/2023 10:11 am, Nicola Vetrini wrote:
> diff --git a/xen/include/xen/vga.h b/xen/include/xen/vga.h
> index f72b63d446b1..9b2c47971d0c 100644
> --- a/xen/include/xen/vga.h
> +++ b/xen/include/xen/vga.h
> @@ -13,6 +13,12 @@
>  
>  #ifdef CONFIG_VGA
>  extern struct xen_vga_console_info vga_console_info;
> +int fill_console_start_info(struct dom0_vga_console_info *);

ci

> +void vesa_init(void);
> +void vesa_early_init(void);
> +void vesa_endboot(bool keep);
> +#else
> +static inline void vesa_init(void) {};

Extraneous ;

Both can be fixed on commit, but we're in code freeze now, so every
patch needs approving by the release manager (Henry, CC'd)

~Andrew


^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [XEN PATCH v4] drivers/video: make declarations of defined functions available
  2023-09-25 10:53 ` andrew.cooper3
@ 2023-09-25 11:11   ` Henry Wang
  2023-09-26  7:57   ` Jan Beulich
  1 sibling, 0 replies; 4+ messages in thread
From: Henry Wang @ 2023-09-25 11:11 UTC (permalink / raw)
  To: andrew.cooper3
  Cc: Nicola Vetrini, Xen-devel, Stefano Stabellini, Michal Orzel,
	xenia.ragiadakou, Ayan Kumar Halder, consulting, Jan Beulich,
	Roger Pau Monné,
	Wei Liu, George Dunlap, Julien Grall

Hi Andrew,

> On Sep 25, 2023, at 18:53, andrew.cooper3@citrix.com wrote:
> 
> On 25/09/2023 10:11 am, Nicola Vetrini wrote:
>> diff --git a/xen/include/xen/vga.h b/xen/include/xen/vga.h
>> index f72b63d446b1..9b2c47971d0c 100644
>> --- a/xen/include/xen/vga.h
>> +++ b/xen/include/xen/vga.h
>> @@ -13,6 +13,12 @@
>> 
>> #ifdef CONFIG_VGA
>> extern struct xen_vga_console_info vga_console_info;
>> +int fill_console_start_info(struct dom0_vga_console_info *);
> 
> ci
> 
>> +void vesa_init(void);
>> +void vesa_early_init(void);
>> +void vesa_endboot(bool keep);
>> +#else
>> +static inline void vesa_init(void) {};
> 
> Extraneous ;
> 
> Both can be fixed on commit, but we're in code freeze now, so every
> patch needs approving by the release manager (Henry, CC'd)

That is very nice of you, yes please kindly fix on commit, feel free to
take my tag:

Release-acked-by: Henry Wang <Henry.Wang@arm.com>

Kind regards,
Henry

> 
> ~Andrew



^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [XEN PATCH v4] drivers/video: make declarations of defined functions available
  2023-09-25 10:53 ` andrew.cooper3
  2023-09-25 11:11   ` Henry Wang
@ 2023-09-26  7:57   ` Jan Beulich
  1 sibling, 0 replies; 4+ messages in thread
From: Jan Beulich @ 2023-09-26  7:57 UTC (permalink / raw)
  To: Nicola Vetrini
  Cc: sstabellini, michal.orzel, xenia.ragiadakou, ayan.kumar.halder,
	consulting, roger.pau, Wei Liu, George Dunlap, Julien Grall,
	Henry Wang, xen-devel, andrew.cooper3

On 25.09.2023 12:53, andrew.cooper3@citrix.com wrote:
> On 25/09/2023 10:11 am, Nicola Vetrini wrote:
>> diff --git a/xen/include/xen/vga.h b/xen/include/xen/vga.h
>> index f72b63d446b1..9b2c47971d0c 100644
>> --- a/xen/include/xen/vga.h
>> +++ b/xen/include/xen/vga.h
>> @@ -13,6 +13,12 @@
>>  
>>  #ifdef CONFIG_VGA
>>  extern struct xen_vga_console_info vga_console_info;
>> +int fill_console_start_info(struct dom0_vga_console_info *);
> 
> ci
> 
>> +void vesa_init(void);
>> +void vesa_early_init(void);
>> +void vesa_endboot(bool keep);
>> +#else
>> +static inline void vesa_init(void) {};
> 
> Extraneous ;

And with these adjustments
Acked-by: Jan Beulich <jbeulich@suse.com>

> Both can be fixed on commit, but we're in code freeze now, so every
> patch needs approving by the release manager (Henry, CC'd)
> 
> ~Andrew



^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2023-09-26  7:57 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-09-25  9:11 [XEN PATCH v4] drivers/video: make declarations of defined functions available Nicola Vetrini
2023-09-25 10:53 ` andrew.cooper3
2023-09-25 11:11   ` Henry Wang
2023-09-26  7:57   ` Jan Beulich

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.