linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v4 0/3] Enable CONFIG_VT support for S390
@ 2018-02-22 16:22 Farhan Ali
  2018-02-22 16:22 ` [PATCH v4 1/3] Kconfig : Remove HAS_IOMEM dependency for Graphics support Farhan Ali
                   ` (2 more replies)
  0 siblings, 3 replies; 8+ messages in thread
From: Farhan Ali @ 2018-02-22 16:22 UTC (permalink / raw)
  To: linux-kernel, linux-fbdev, linux-s390
  Cc: thuth, borntraeger, cohuck, tomi.valkeinen, b.zolnierkie, geert, alifm

Hi,

This series of patches add support for an additional tty
and console for a S390 KVM guest using a virtio-gpu device[1].

Patch 1 enables the "Graphics support" menu which is
needed to enable dummy console, since the VT layer needs it.
The dependency is moved to sub menu items and console
drivers now.

Patch 2 fixes few linker issues.

Patch 3 add support for enabling VT layer for S390.


ChangeLog
---------
v3 -> v4
   - Add r-b's.
   - Move HAS_IOMEM dependency in drivers/video/Kconfig to cover
     from config HAVE_FB_ATMEL to config HDMI (patch 1).
   - Add HAS_IOMEM for VGA_CONSOLE (patch 1).

v2 -> v3
    - Move HAS_IOMEM dependency to sub menu items and console
    drivers (patch 1)

v1 -> v2

v1 was posted under a different subject and here is a link to it:
https://www.spinics.net/lists/linux-s390/msg18175.html

   - Combine patch 1 and 2 from v1 into one patch (patch 1).
   - Additional patches to enable CONFIG_VT for S390.


Thanks
Farhan

Farhan Ali (3):
  Kconfig : Remove HAS_IOMEM dependency for Graphics support
  s390/char : Rename EBCDIC keymap variables
  s390/setup : enable display support for KVM guest

 arch/s390/kernel/setup.c      |  2 ++
 drivers/s390/char/defkeymap.c | 66 ++++++++++++++++++++++---------------------
 drivers/s390/char/keyboard.c  | 32 ++++++++++-----------
 drivers/s390/char/keyboard.h  | 11 ++++++++
 drivers/tty/Kconfig           |  2 +-
 drivers/video/Kconfig         |  5 +++-
 drivers/video/console/Kconfig |  6 ++--
 7 files changed, 71 insertions(+), 53 deletions(-)

-- 
2.7.4

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

* [PATCH v4 1/3] Kconfig : Remove HAS_IOMEM dependency for Graphics support
  2018-02-22 16:22 [PATCH v4 0/3] Enable CONFIG_VT support for S390 Farhan Ali
@ 2018-02-22 16:22 ` Farhan Ali
  2018-02-27  9:23   ` Christian Borntraeger
  2018-02-22 16:22 ` [PATCH v4 2/3] s390/char : Rename EBCDIC keymap variables Farhan Ali
  2018-02-22 16:22 ` [PATCH v4 3/3] s390/setup : enable display support for KVM guest Farhan Ali
  2 siblings, 1 reply; 8+ messages in thread
From: Farhan Ali @ 2018-02-22 16:22 UTC (permalink / raw)
  To: linux-kernel, linux-fbdev, linux-s390
  Cc: thuth, borntraeger, cohuck, tomi.valkeinen, b.zolnierkie, geert, alifm

The 'commit e25df1205f37 ("[S390] Kconfig: menus with depends on HAS_IOMEM.")'
added the HAS_IOMEM dependecy for "Graphics support". This disabled the
"Graphics support" menu for S390. But if we enable VT layer for S390,
we would also need to enable the dummy console. So let's remove the
HAS_IOMEM dependency.

Move this dependency to sub menu items and console drivers that use
io memory.

Signed-off-by: Farhan Ali <alifm@linux.vnet.ibm.com>
Reviewed-by: Thomas Huth <thuth@redhat.com>
---
 drivers/video/Kconfig         | 5 ++++-
 drivers/video/console/Kconfig | 6 +++---
 2 files changed, 7 insertions(+), 4 deletions(-)

diff --git a/drivers/video/Kconfig b/drivers/video/Kconfig
index 3c20af9..4f950c6 100644
--- a/drivers/video/Kconfig
+++ b/drivers/video/Kconfig
@@ -3,7 +3,8 @@
 #
 
 menu "Graphics support"
-	depends on HAS_IOMEM
+
+if HAS_IOMEM
 
 config HAVE_FB_ATMEL
 	bool
@@ -36,6 +37,8 @@ config VIDEOMODE_HELPERS
 config HDMI
 	bool
 
+endif # HAS_IOMEM
+
 if VT
 	source "drivers/video/console/Kconfig"
 endif
diff --git a/drivers/video/console/Kconfig b/drivers/video/console/Kconfig
index 7f1f1fb..9485857 100644
--- a/drivers/video/console/Kconfig
+++ b/drivers/video/console/Kconfig
@@ -9,7 +9,7 @@ config VGA_CONSOLE
 	depends on !4xx && !PPC_8xx && !SPARC && !M68K && !PARISC && !FRV && \
 		!SUPERH && !BLACKFIN && !AVR32 && !MN10300 && !CRIS && \
 		(!ARM || ARCH_FOOTBRIDGE || ARCH_INTEGRATOR || ARCH_NETWINDER) && \
-		!ARM64 && !ARC && !MICROBLAZE && !OPENRISC
+		!ARM64 && !ARC && !MICROBLAZE && !OPENRISC && HAS_IOMEM
 	default y
 	help
 	  Saying Y here will allow you to use Linux in text mode through a
@@ -85,7 +85,7 @@ config MDA_CONSOLE
 
 config SGI_NEWPORT_CONSOLE
         tristate "SGI Newport Console support"
-        depends on SGI_IP22 
+        depends on SGI_IP22 && HAS_IOMEM
         select FONT_SUPPORT
         help
           Say Y here if you want the console on the Newport aka XL graphics
@@ -153,7 +153,7 @@ config FRAMEBUFFER_CONSOLE_ROTATION
 
 config STI_CONSOLE
         bool "STI text console"
-        depends on PARISC
+        depends on PARISC && HAS_IOMEM
         select FONT_SUPPORT
         default y
         help
-- 
2.7.4

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

* [PATCH v4 2/3] s390/char : Rename EBCDIC keymap variables
  2018-02-22 16:22 [PATCH v4 0/3] Enable CONFIG_VT support for S390 Farhan Ali
  2018-02-22 16:22 ` [PATCH v4 1/3] Kconfig : Remove HAS_IOMEM dependency for Graphics support Farhan Ali
@ 2018-02-22 16:22 ` Farhan Ali
  2018-02-22 16:22 ` [PATCH v4 3/3] s390/setup : enable display support for KVM guest Farhan Ali
  2 siblings, 0 replies; 8+ messages in thread
From: Farhan Ali @ 2018-02-22 16:22 UTC (permalink / raw)
  To: linux-kernel, linux-fbdev, linux-s390
  Cc: thuth, borntraeger, cohuck, tomi.valkeinen, b.zolnierkie, geert, alifm

The Linux Virtual Terminal (VT) layer provides a default keymap
which is compiled when VT layer is enabled. But at the same time
we are also compiling the EBCDIC keymap and this causes the linker
to complain.

So let's rename the EBCDIC keymap variables to prevent linker
conflict.

Signed-off-by: Farhan Ali <alifm@linux.vnet.ibm.com>
Acked-by: Christian Borntraeger <borntraeger@de.ibm.com>
Reviewed-by: Thomas Huth <thuth@redhat.com>
---
 drivers/s390/char/defkeymap.c | 66 ++++++++++++++++++++++---------------------
 drivers/s390/char/keyboard.c  | 32 ++++++++++-----------
 drivers/s390/char/keyboard.h  | 11 ++++++++
 3 files changed, 61 insertions(+), 48 deletions(-)

diff --git a/drivers/s390/char/defkeymap.c b/drivers/s390/char/defkeymap.c
index 98a5c45..193142c 100644
--- a/drivers/s390/char/defkeymap.c
+++ b/drivers/s390/char/defkeymap.c
@@ -9,7 +9,9 @@
 #include <linux/kbd_kern.h>
 #include <linux/kbd_diacr.h>
 
-u_short plain_map[NR_KEYS] = {
+#include "keyboard.h"
+
+u_short ebc_plain_map[NR_KEYS] = {
 	0xf000,	0xf000,	0xf000,	0xf000,	0xf000,	0xf000,	0xf000,	0xf000,
 	0xf000,	0xf000,	0xf000,	0xf000,	0xf000,	0xf000,	0xf000,	0xf000,
 	0xf000,	0xf000,	0xf000,	0xf000,	0xf000,	0xf000,	0xf000,	0xf000,
@@ -85,12 +87,12 @@ static u_short shift_ctrl_map[NR_KEYS] = {
 	0xf20a,	0xf108,	0xf200,	0xf200,	0xf200,	0xf200,	0xf200,	0xf200,
 };
 
-ushort *key_maps[MAX_NR_KEYMAPS] = {
-	plain_map, shift_map, NULL, NULL,
+ushort *ebc_key_maps[MAX_NR_KEYMAPS] = {
+	ebc_plain_map, shift_map, NULL, NULL,
 	ctrl_map, shift_ctrl_map, NULL,
 };
 
-unsigned int keymap_count = 4;
+unsigned int ebc_keymap_count = 4;
 
 
 /*
@@ -99,7 +101,7 @@ unsigned int keymap_count = 4;
  * the default and allocate dynamically in chunks of 512 bytes.
  */
 
-char func_buf[] = {
+char ebc_func_buf[] = {
 	'\033', '[', '[', 'A', 0, 
 	'\033', '[', '[', 'B', 0, 
 	'\033', '[', '[', 'C', 0, 
@@ -123,37 +125,37 @@ char func_buf[] = {
 };
 
 
-char *funcbufptr = func_buf;
-int funcbufsize = sizeof(func_buf);
-int funcbufleft = 0;          /* space left */
-
-char *func_table[MAX_NR_FUNC] = {
-	func_buf + 0,
-	func_buf + 5,
-	func_buf + 10,
-	func_buf + 15,
-	func_buf + 20,
-	func_buf + 25,
-	func_buf + 31,
-	func_buf + 37,
-	func_buf + 43,
-	func_buf + 49,
-	func_buf + 55,
-	func_buf + 61,
-	func_buf + 67,
-	func_buf + 73,
-	func_buf + 79,
-	func_buf + 85,
-	func_buf + 91,
-	func_buf + 97,
-	func_buf + 103,
-	func_buf + 109,
+char *ebc_funcbufptr = ebc_func_buf;
+int ebc_funcbufsize = sizeof(ebc_func_buf);
+int ebc_funcbufleft = 0;          /* space left */
+
+char *ebc_func_table[MAX_NR_FUNC] = {
+	ebc_func_buf + 0,
+	ebc_func_buf + 5,
+	ebc_func_buf + 10,
+	ebc_func_buf + 15,
+	ebc_func_buf + 20,
+	ebc_func_buf + 25,
+	ebc_func_buf + 31,
+	ebc_func_buf + 37,
+	ebc_func_buf + 43,
+	ebc_func_buf + 49,
+	ebc_func_buf + 55,
+	ebc_func_buf + 61,
+	ebc_func_buf + 67,
+	ebc_func_buf + 73,
+	ebc_func_buf + 79,
+	ebc_func_buf + 85,
+	ebc_func_buf + 91,
+	ebc_func_buf + 97,
+	ebc_func_buf + 103,
+	ebc_func_buf + 109,
 	NULL,
 };
 
-struct kbdiacruc accent_table[MAX_DIACR] = {
+struct kbdiacruc ebc_accent_table[MAX_DIACR] = {
 	{'^', 'c', 0003},	{'^', 'd', 0004},
 	{'^', 'z', 0032},	{'^', 0012, 0000},
 };
 
-unsigned int accent_table_size = 4;
+unsigned int ebc_accent_table_size = 4;
diff --git a/drivers/s390/char/keyboard.c b/drivers/s390/char/keyboard.c
index 5b505fd..db1fbf9 100644
--- a/drivers/s390/char/keyboard.c
+++ b/drivers/s390/char/keyboard.c
@@ -54,24 +54,24 @@ kbd_alloc(void) {
 	kbd = kzalloc(sizeof(struct kbd_data), GFP_KERNEL);
 	if (!kbd)
 		goto out;
-	kbd->key_maps = kzalloc(sizeof(key_maps), GFP_KERNEL);
+	kbd->key_maps = kzalloc(sizeof(ebc_key_maps), GFP_KERNEL);
 	if (!kbd->key_maps)
 		goto out_kbd;
-	for (i = 0; i < ARRAY_SIZE(key_maps); i++) {
-		if (key_maps[i]) {
-			kbd->key_maps[i] = kmemdup(key_maps[i],
+	for (i = 0; i < ARRAY_SIZE(ebc_key_maps); i++) {
+		if (ebc_key_maps[i]) {
+			kbd->key_maps[i] = kmemdup(ebc_key_maps[i],
 						   sizeof(u_short) * NR_KEYS,
 						   GFP_KERNEL);
 			if (!kbd->key_maps[i])
 				goto out_maps;
 		}
 	}
-	kbd->func_table = kzalloc(sizeof(func_table), GFP_KERNEL);
+	kbd->func_table = kzalloc(sizeof(ebc_func_table), GFP_KERNEL);
 	if (!kbd->func_table)
 		goto out_maps;
-	for (i = 0; i < ARRAY_SIZE(func_table); i++) {
-		if (func_table[i]) {
-			kbd->func_table[i] = kstrdup(func_table[i],
+	for (i = 0; i < ARRAY_SIZE(ebc_func_table); i++) {
+		if (ebc_func_table[i]) {
+			kbd->func_table[i] = kstrdup(ebc_func_table[i],
 						     GFP_KERNEL);
 			if (!kbd->func_table[i])
 				goto out_func;
@@ -81,22 +81,22 @@ kbd_alloc(void) {
 		kzalloc(sizeof(fn_handler_fn *) * NR_FN_HANDLER, GFP_KERNEL);
 	if (!kbd->fn_handler)
 		goto out_func;
-	kbd->accent_table = kmemdup(accent_table,
+	kbd->accent_table = kmemdup(ebc_accent_table,
 				    sizeof(struct kbdiacruc) * MAX_DIACR,
 				    GFP_KERNEL);
 	if (!kbd->accent_table)
 		goto out_fn_handler;
-	kbd->accent_table_size = accent_table_size;
+	kbd->accent_table_size = ebc_accent_table_size;
 	return kbd;
 
 out_fn_handler:
 	kfree(kbd->fn_handler);
 out_func:
-	for (i = 0; i < ARRAY_SIZE(func_table); i++)
+	for (i = 0; i < ARRAY_SIZE(ebc_func_table); i++)
 		kfree(kbd->func_table[i]);
 	kfree(kbd->func_table);
 out_maps:
-	for (i = 0; i < ARRAY_SIZE(key_maps); i++)
+	for (i = 0; i < ARRAY_SIZE(ebc_key_maps); i++)
 		kfree(kbd->key_maps[i]);
 	kfree(kbd->key_maps);
 out_kbd:
@@ -112,10 +112,10 @@ kbd_free(struct kbd_data *kbd)
 
 	kfree(kbd->accent_table);
 	kfree(kbd->fn_handler);
-	for (i = 0; i < ARRAY_SIZE(func_table); i++)
+	for (i = 0; i < ARRAY_SIZE(ebc_func_table); i++)
 		kfree(kbd->func_table[i]);
 	kfree(kbd->func_table);
-	for (i = 0; i < ARRAY_SIZE(key_maps); i++)
+	for (i = 0; i < ARRAY_SIZE(ebc_key_maps); i++)
 		kfree(kbd->key_maps[i]);
 	kfree(kbd->key_maps);
 	kfree(kbd);
@@ -131,7 +131,7 @@ kbd_ascebc(struct kbd_data *kbd, unsigned char *ascebc)
 	int i, j, k;
 
 	memset(ascebc, 0x40, 256);
-	for (i = 0; i < ARRAY_SIZE(key_maps); i++) {
+	for (i = 0; i < ARRAY_SIZE(ebc_key_maps); i++) {
 		keymap = kbd->key_maps[i];
 		if (!keymap)
 			continue;
@@ -158,7 +158,7 @@ kbd_ebcasc(struct kbd_data *kbd, unsigned char *ebcasc)
 	int i, j, k;
 
 	memset(ebcasc, ' ', 256);
-	for (i = 0; i < ARRAY_SIZE(key_maps); i++) {
+	for (i = 0; i < ARRAY_SIZE(ebc_key_maps); i++) {
 		keymap = kbd->key_maps[i];
 		if (!keymap)
 			continue;
diff --git a/drivers/s390/char/keyboard.h b/drivers/s390/char/keyboard.h
index a074d97..c467589 100644
--- a/drivers/s390/char/keyboard.h
+++ b/drivers/s390/char/keyboard.h
@@ -14,6 +14,17 @@
 
 struct kbd_data;
 
+extern int ebc_funcbufsize, ebc_funcbufleft;
+extern char *ebc_func_table[MAX_NR_FUNC];
+extern char ebc_func_buf[];
+extern char *ebc_funcbufptr;
+extern unsigned int ebc_keymap_count;
+
+extern struct kbdiacruc ebc_accent_table[];
+extern unsigned int ebc_accent_table_size;
+extern unsigned short *ebc_key_maps[MAX_NR_KEYMAPS];
+extern unsigned short ebc_plain_map[NR_KEYS];
+
 typedef void (fn_handler_fn)(struct kbd_data *);
 
 /*
-- 
2.7.4

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

* [PATCH v4 3/3] s390/setup : enable display support for KVM guest
  2018-02-22 16:22 [PATCH v4 0/3] Enable CONFIG_VT support for S390 Farhan Ali
  2018-02-22 16:22 ` [PATCH v4 1/3] Kconfig : Remove HAS_IOMEM dependency for Graphics support Farhan Ali
  2018-02-22 16:22 ` [PATCH v4 2/3] s390/char : Rename EBCDIC keymap variables Farhan Ali
@ 2018-02-22 16:22 ` Farhan Ali
  2018-02-27  9:23   ` Christian Borntraeger
  2 siblings, 1 reply; 8+ messages in thread
From: Farhan Ali @ 2018-02-22 16:22 UTC (permalink / raw)
  To: linux-kernel, linux-fbdev, linux-s390
  Cc: thuth, borntraeger, cohuck, tomi.valkeinen, b.zolnierkie, geert, alifm

The S390 architecture does not support any graphics hardware,
but with the latest support for Virtio GPU in Linux and Virtio
GPU emulation in QEMU, it's possible to enable graphics for
S390 using the Virtio GPU device.

To enable display we need to enable the Linux Virtual Terminal (VT)
layer for S390. But the VT subsystem initializes quite early
at boot so we need a dummy console driver till the Virtio GPU
driver is initialized and we can run the framebuffer console.

The framebuffer console over a Virtio GPU device can be run
in combination with the serial SCLP console (default on S390).
The SCLP console can still be accessed by management applications
(eg: via Libvirt's virsh console).

Signed-off-by: Farhan Ali <alifm@linux.vnet.ibm.com>
Acked-by: Christian Borntraeger <borntraeger@de.ibm.com>
Reviewed-by: Thomas Huth <thuth@redhat.com>
---
 arch/s390/kernel/setup.c      | 2 ++
 drivers/tty/Kconfig           | 2 +-
 drivers/video/console/Kconfig | 2 +-
 3 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/arch/s390/kernel/setup.c b/arch/s390/kernel/setup.c
index a6a91f0..f98a0f3 100644
--- a/arch/s390/kernel/setup.c
+++ b/arch/s390/kernel/setup.c
@@ -221,6 +221,8 @@ static void __init conmode_default(void)
 		SET_CONSOLE_SCLP;
 #endif
 	}
+	if (IS_ENABLED(CONFIG_VT) && IS_ENABLED(CONFIG_DUMMY_CONSOLE))
+		conswitchp = &dummy_con;
 }
 
 #ifdef CONFIG_CRASH_DUMP
diff --git a/drivers/tty/Kconfig b/drivers/tty/Kconfig
index b811442..5ca53fa 100644
--- a/drivers/tty/Kconfig
+++ b/drivers/tty/Kconfig
@@ -11,7 +11,7 @@ if TTY
 
 config VT
 	bool "Virtual terminal" if EXPERT
-	depends on !S390 && !UML
+	depends on !UML
 	select INPUT
 	default y
 	---help---
diff --git a/drivers/video/console/Kconfig b/drivers/video/console/Kconfig
index 9485857..b9c2c91 100644
--- a/drivers/video/console/Kconfig
+++ b/drivers/video/console/Kconfig
@@ -9,7 +9,7 @@ config VGA_CONSOLE
 	depends on !4xx && !PPC_8xx && !SPARC && !M68K && !PARISC && !FRV && \
 		!SUPERH && !BLACKFIN && !AVR32 && !MN10300 && !CRIS && \
 		(!ARM || ARCH_FOOTBRIDGE || ARCH_INTEGRATOR || ARCH_NETWINDER) && \
-		!ARM64 && !ARC && !MICROBLAZE && !OPENRISC && HAS_IOMEM
+		!ARM64 && !ARC && !MICROBLAZE && !OPENRISC && HAS_IOMEM && !S390
 	default y
 	help
 	  Saying Y here will allow you to use Linux in text mode through a
-- 
2.7.4

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

* Re: [PATCH v4 3/3] s390/setup : enable display support for KVM guest
  2018-02-22 16:22 ` [PATCH v4 3/3] s390/setup : enable display support for KVM guest Farhan Ali
@ 2018-02-27  9:23   ` Christian Borntraeger
  2018-02-27 12:39     ` Greg Kroah-Hartman
  0 siblings, 1 reply; 8+ messages in thread
From: Christian Borntraeger @ 2018-02-27  9:23 UTC (permalink / raw)
  To: Farhan Ali, linux-kernel, linux-fbdev, linux-s390, Greg Kroah-Hartman
  Cc: thuth, cohuck, tomi.valkeinen, b.zolnierkie, geert

Greg FYI, I plan to carry this patch via the s390/kvm tree.
As it drivers/tty/Kconfig, can you give an ack for this part?


On 02/22/2018 05:22 PM, Farhan Ali wrote:
> The S390 architecture does not support any graphics hardware,
> but with the latest support for Virtio GPU in Linux and Virtio
> GPU emulation in QEMU, it's possible to enable graphics for
> S390 using the Virtio GPU device.
> 
> To enable display we need to enable the Linux Virtual Terminal (VT)
> layer for S390. But the VT subsystem initializes quite early
> at boot so we need a dummy console driver till the Virtio GPU
> driver is initialized and we can run the framebuffer console.
> 
> The framebuffer console over a Virtio GPU device can be run
> in combination with the serial SCLP console (default on S390).
> The SCLP console can still be accessed by management applications
> (eg: via Libvirt's virsh console).
> 
> Signed-off-by: Farhan Ali <alifm@linux.vnet.ibm.com>
> Acked-by: Christian Borntraeger <borntraeger@de.ibm.com>
> Reviewed-by: Thomas Huth <thuth@redhat.com>
> ---
>  arch/s390/kernel/setup.c      | 2 ++
>  drivers/tty/Kconfig           | 2 +-
>  drivers/video/console/Kconfig | 2 +-
>  3 files changed, 4 insertions(+), 2 deletions(-)
> 
> diff --git a/arch/s390/kernel/setup.c b/arch/s390/kernel/setup.c
> index a6a91f0..f98a0f3 100644
> --- a/arch/s390/kernel/setup.c
> +++ b/arch/s390/kernel/setup.c
> @@ -221,6 +221,8 @@ static void __init conmode_default(void)
>  		SET_CONSOLE_SCLP;
>  #endif
>  	}
> +	if (IS_ENABLED(CONFIG_VT) && IS_ENABLED(CONFIG_DUMMY_CONSOLE))
> +		conswitchp = &dummy_con;
>  }
> 
>  #ifdef CONFIG_CRASH_DUMP
> diff --git a/drivers/tty/Kconfig b/drivers/tty/Kconfig
> index b811442..5ca53fa 100644
> --- a/drivers/tty/Kconfig
> +++ b/drivers/tty/Kconfig
> @@ -11,7 +11,7 @@ if TTY
> 
>  config VT
>  	bool "Virtual terminal" if EXPERT
> -	depends on !S390 && !UML
> +	depends on !UML
>  	select INPUT
>  	default y
>  	---help---
> diff --git a/drivers/video/console/Kconfig b/drivers/video/console/Kconfig
> index 9485857..b9c2c91 100644
> --- a/drivers/video/console/Kconfig
> +++ b/drivers/video/console/Kconfig
> @@ -9,7 +9,7 @@ config VGA_CONSOLE
>  	depends on !4xx && !PPC_8xx && !SPARC && !M68K && !PARISC && !FRV && \
>  		!SUPERH && !BLACKFIN && !AVR32 && !MN10300 && !CRIS && \
>  		(!ARM || ARCH_FOOTBRIDGE || ARCH_INTEGRATOR || ARCH_NETWINDER) && \
> -		!ARM64 && !ARC && !MICROBLAZE && !OPENRISC && HAS_IOMEM
> +		!ARM64 && !ARC && !MICROBLAZE && !OPENRISC && HAS_IOMEM && !S390
>  	default y
>  	help
>  	  Saying Y here will allow you to use Linux in text mode through a
> 

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

* Re: [PATCH v4 1/3] Kconfig : Remove HAS_IOMEM dependency for Graphics support
  2018-02-22 16:22 ` [PATCH v4 1/3] Kconfig : Remove HAS_IOMEM dependency for Graphics support Farhan Ali
@ 2018-02-27  9:23   ` Christian Borntraeger
  2018-02-27 11:58     ` Bartlomiej Zolnierkiewicz
  0 siblings, 1 reply; 8+ messages in thread
From: Christian Borntraeger @ 2018-02-27  9:23 UTC (permalink / raw)
  To: Farhan Ali, linux-kernel, linux-fbdev, linux-s390, b.zolnierkie
  Cc: thuth, cohuck, tomi.valkeinen, geert, Greg Kroah-Hartman

This one has been in linux-next for some days. I can carry this via the kvm/s390
tree, but I would like to get ack from at least Bartlomiej. Please also look at 
patch 3 which also touches  drivers/video/console/Kconfig.

Adding Greg, as I would like an ack from him for patch 3.

On 02/22/2018 05:22 PM, Farhan Ali wrote:
> The 'commit e25df1205f37 ("[S390] Kconfig: menus with depends on HAS_IOMEM.")'
> added the HAS_IOMEM dependecy for "Graphics support". This disabled the
> "Graphics support" menu for S390. But if we enable VT layer for S390,
> we would also need to enable the dummy console. So let's remove the
> HAS_IOMEM dependency.
> 
> Move this dependency to sub menu items and console drivers that use
> io memory.
> 
> Signed-off-by: Farhan Ali <alifm@linux.vnet.ibm.com>
> Reviewed-by: Thomas Huth <thuth@redhat.com>
> ---
>  drivers/video/Kconfig         | 5 ++++-
>  drivers/video/console/Kconfig | 6 +++---
>  2 files changed, 7 insertions(+), 4 deletions(-)
> 
> diff --git a/drivers/video/Kconfig b/drivers/video/Kconfig
> index 3c20af9..4f950c6 100644
> --- a/drivers/video/Kconfig
> +++ b/drivers/video/Kconfig
> @@ -3,7 +3,8 @@
>  #
> 
>  menu "Graphics support"
> -	depends on HAS_IOMEM
> +
> +if HAS_IOMEM
> 
>  config HAVE_FB_ATMEL
>  	bool
> @@ -36,6 +37,8 @@ config VIDEOMODE_HELPERS
>  config HDMI
>  	bool
> 
> +endif # HAS_IOMEM
> +
>  if VT
>  	source "drivers/video/console/Kconfig"
>  endif
> diff --git a/drivers/video/console/Kconfig b/drivers/video/console/Kconfig
> index 7f1f1fb..9485857 100644
> --- a/drivers/video/console/Kconfig
> +++ b/drivers/video/console/Kconfig
> @@ -9,7 +9,7 @@ config VGA_CONSOLE
>  	depends on !4xx && !PPC_8xx && !SPARC && !M68K && !PARISC && !FRV && \
>  		!SUPERH && !BLACKFIN && !AVR32 && !MN10300 && !CRIS && \
>  		(!ARM || ARCH_FOOTBRIDGE || ARCH_INTEGRATOR || ARCH_NETWINDER) && \
> -		!ARM64 && !ARC && !MICROBLAZE && !OPENRISC
> +		!ARM64 && !ARC && !MICROBLAZE && !OPENRISC && HAS_IOMEM
>  	default y
>  	help
>  	  Saying Y here will allow you to use Linux in text mode through a
> @@ -85,7 +85,7 @@ config MDA_CONSOLE
> 
>  config SGI_NEWPORT_CONSOLE
>          tristate "SGI Newport Console support"
> -        depends on SGI_IP22 
> +        depends on SGI_IP22 && HAS_IOMEM
>          select FONT_SUPPORT
>          help
>            Say Y here if you want the console on the Newport aka XL graphics
> @@ -153,7 +153,7 @@ config FRAMEBUFFER_CONSOLE_ROTATION
> 
>  config STI_CONSOLE
>          bool "STI text console"
> -        depends on PARISC
> +        depends on PARISC && HAS_IOMEM
>          select FONT_SUPPORT
>          default y
>          help
> 

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

* Re: [PATCH v4 1/3] Kconfig : Remove HAS_IOMEM dependency for Graphics support
  2018-02-27  9:23   ` Christian Borntraeger
@ 2018-02-27 11:58     ` Bartlomiej Zolnierkiewicz
  0 siblings, 0 replies; 8+ messages in thread
From: Bartlomiej Zolnierkiewicz @ 2018-02-27 11:58 UTC (permalink / raw)
  To: Christian Borntraeger
  Cc: Farhan Ali, linux-kernel, linux-fbdev, linux-s390, thuth, cohuck,
	tomi.valkeinen, geert, Greg Kroah-Hartman

On Tuesday, February 27, 2018 10:23:37 AM Christian Borntraeger wrote:
> This one has been in linux-next for some days. I can carry this via the kvm/s390
> tree, but I would like to get ack from at least Bartlomiej. Please also look at 
> patch 3 which also touches  drivers/video/console/Kconfig.
> 
> Adding Greg, as I would like an ack from him for patch 3.
> 
> On 02/22/2018 05:22 PM, Farhan Ali wrote:
> > The 'commit e25df1205f37 ("[S390] Kconfig: menus with depends on HAS_IOMEM.")'
> > added the HAS_IOMEM dependecy for "Graphics support". This disabled the
> > "Graphics support" menu for S390. But if we enable VT layer for S390,
> > we would also need to enable the dummy console. So let's remove the
> > HAS_IOMEM dependency.
> > 
> > Move this dependency to sub menu items and console drivers that use
> > io memory.
> > 
> > Signed-off-by: Farhan Ali <alifm@linux.vnet.ibm.com>
> > Reviewed-by: Thomas Huth <thuth@redhat.com>

Acked-by: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>

> > ---
> >  drivers/video/Kconfig         | 5 ++++-
> >  drivers/video/console/Kconfig | 6 +++---
> >  2 files changed, 7 insertions(+), 4 deletions(-)
> > 
> > diff --git a/drivers/video/Kconfig b/drivers/video/Kconfig
> > index 3c20af9..4f950c6 100644
> > --- a/drivers/video/Kconfig
> > +++ b/drivers/video/Kconfig
> > @@ -3,7 +3,8 @@
> >  #
> > 
> >  menu "Graphics support"
> > -	depends on HAS_IOMEM
> > +
> > +if HAS_IOMEM
> > 
> >  config HAVE_FB_ATMEL
> >  	bool
> > @@ -36,6 +37,8 @@ config VIDEOMODE_HELPERS
> >  config HDMI
> >  	bool
> > 
> > +endif # HAS_IOMEM
> > +
> >  if VT
> >  	source "drivers/video/console/Kconfig"
> >  endif
> > diff --git a/drivers/video/console/Kconfig b/drivers/video/console/Kconfig
> > index 7f1f1fb..9485857 100644
> > --- a/drivers/video/console/Kconfig
> > +++ b/drivers/video/console/Kconfig
> > @@ -9,7 +9,7 @@ config VGA_CONSOLE
> >  	depends on !4xx && !PPC_8xx && !SPARC && !M68K && !PARISC && !FRV && \
> >  		!SUPERH && !BLACKFIN && !AVR32 && !MN10300 && !CRIS && \
> >  		(!ARM || ARCH_FOOTBRIDGE || ARCH_INTEGRATOR || ARCH_NETWINDER) && \
> > -		!ARM64 && !ARC && !MICROBLAZE && !OPENRISC
> > +		!ARM64 && !ARC && !MICROBLAZE && !OPENRISC && HAS_IOMEM
> >  	default y
> >  	help
> >  	  Saying Y here will allow you to use Linux in text mode through a
> > @@ -85,7 +85,7 @@ config MDA_CONSOLE
> > 
> >  config SGI_NEWPORT_CONSOLE
> >          tristate "SGI Newport Console support"
> > -        depends on SGI_IP22 
> > +        depends on SGI_IP22 && HAS_IOMEM
> >          select FONT_SUPPORT
> >          help
> >            Say Y here if you want the console on the Newport aka XL graphics
> > @@ -153,7 +153,7 @@ config FRAMEBUFFER_CONSOLE_ROTATION
> > 
> >  config STI_CONSOLE
> >          bool "STI text console"
> > -        depends on PARISC
> > +        depends on PARISC && HAS_IOMEM
> >          select FONT_SUPPORT
> >          default y
> >          help

Best regards,
--
Bartlomiej Zolnierkiewicz
Samsung R&D Institute Poland
Samsung Electronics

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

* Re: [PATCH v4 3/3] s390/setup : enable display support for KVM guest
  2018-02-27  9:23   ` Christian Borntraeger
@ 2018-02-27 12:39     ` Greg Kroah-Hartman
  0 siblings, 0 replies; 8+ messages in thread
From: Greg Kroah-Hartman @ 2018-02-27 12:39 UTC (permalink / raw)
  To: Christian Borntraeger
  Cc: Farhan Ali, linux-kernel, linux-fbdev, linux-s390, thuth, cohuck,
	tomi.valkeinen, b.zolnierkie, geert

On Tue, Feb 27, 2018 at 10:23:34AM +0100, Christian Borntraeger wrote:
> Greg FYI, I plan to carry this patch via the s390/kvm tree.
> As it drivers/tty/Kconfig, can you give an ack for this part?
> 
> 
> On 02/22/2018 05:22 PM, Farhan Ali wrote:
> > The S390 architecture does not support any graphics hardware,
> > but with the latest support for Virtio GPU in Linux and Virtio
> > GPU emulation in QEMU, it's possible to enable graphics for
> > S390 using the Virtio GPU device.
> > 
> > To enable display we need to enable the Linux Virtual Terminal (VT)
> > layer for S390. But the VT subsystem initializes quite early
> > at boot so we need a dummy console driver till the Virtio GPU
> > driver is initialized and we can run the framebuffer console.
> > 
> > The framebuffer console over a Virtio GPU device can be run
> > in combination with the serial SCLP console (default on S390).
> > The SCLP console can still be accessed by management applications
> > (eg: via Libvirt's virsh console).
> > 
> > Signed-off-by: Farhan Ali <alifm@linux.vnet.ibm.com>
> > Acked-by: Christian Borntraeger <borntraeger@de.ibm.com>
> > Reviewed-by: Thomas Huth <thuth@redhat.com>
> > ---
> >  arch/s390/kernel/setup.c      | 2 ++
> >  drivers/tty/Kconfig           | 2 +-
> >  drivers/video/console/Kconfig | 2 +-
> >  3 files changed, 4 insertions(+), 2 deletions(-)


Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

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

end of thread, other threads:[~2018-02-27 12:39 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-02-22 16:22 [PATCH v4 0/3] Enable CONFIG_VT support for S390 Farhan Ali
2018-02-22 16:22 ` [PATCH v4 1/3] Kconfig : Remove HAS_IOMEM dependency for Graphics support Farhan Ali
2018-02-27  9:23   ` Christian Borntraeger
2018-02-27 11:58     ` Bartlomiej Zolnierkiewicz
2018-02-22 16:22 ` [PATCH v4 2/3] s390/char : Rename EBCDIC keymap variables Farhan Ali
2018-02-22 16:22 ` [PATCH v4 3/3] s390/setup : enable display support for KVM guest Farhan Ali
2018-02-27  9:23   ` Christian Borntraeger
2018-02-27 12:39     ` Greg Kroah-Hartman

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).