vgacon: Set VGA struct resource types
authorBjorn Helgaas <bhelgaas@google.com>
Fri, 1 Dec 2017 17:06:39 +0000 (11:06 -0600)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 24 Mar 2018 10:01:25 +0000 (11:01 +0100)
[ Upstream commit c82084117f79bcae085e40da526253736a247120 ]

Set the resource type when we reserve VGA-related I/O port resources.

The resource code doesn't actually look at the type, so it inserts
resources without a type in the tree correctly even without this change.
But if we ever print a resource without a type, it looks like this:

  vga+ [??? 0x000003c0-0x000003df flags 0x0]

Setting the type means it will be printed correctly as:

  vga+ [io  0x000003c0-0x000003df]

Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Signed-off-by: Sasha Levin <alexander.levin@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
arch/alpha/kernel/console.c
drivers/video/console/vgacon.c

index 8e9a41966881bfa82b704a6f1826c1faabf3ff02..5476279329a62ed320631f5ec0b90c0f443971cb 100644 (file)
@@ -21,6 +21,7 @@
 struct pci_controller *pci_vga_hose;
 static struct resource alpha_vga = {
        .name   = "alpha-vga+",
+       .flags  = IORESOURCE_IO,
        .start  = 0x3C0,
        .end    = 0x3DF
 };
index 445b1dc5d441a1863ce64cf3807f03d77ae662c7..a17ba1465815f919444a83676517dc0f7e2bba16 100644 (file)
@@ -422,7 +422,10 @@ static const char *vgacon_startup(void)
                vga_video_port_val = VGA_CRT_DM;
                if ((screen_info.orig_video_ega_bx & 0xff) != 0x10) {
                        static struct resource ega_console_resource =
-                           { .name = "ega", .start = 0x3B0, .end = 0x3BF };
+                           { .name     = "ega",
+                             .flags    = IORESOURCE_IO,
+                             .start    = 0x3B0,
+                             .end      = 0x3BF };
                        vga_video_type = VIDEO_TYPE_EGAM;
                        vga_vram_size = 0x8000;
                        display_desc = "EGA+";
@@ -430,9 +433,15 @@ static const char *vgacon_startup(void)
                                         &ega_console_resource);
                } else {
                        static struct resource mda1_console_resource =
-                           { .name = "mda", .start = 0x3B0, .end = 0x3BB };
+                           { .name     = "mda",
+                             .flags    = IORESOURCE_IO,
+                             .start    = 0x3B0,
+                             .end      = 0x3BB };
                        static struct resource mda2_console_resource =
-                           { .name = "mda", .start = 0x3BF, .end = 0x3BF };
+                           { .name     = "mda",
+                             .flags    = IORESOURCE_IO,
+                             .start    = 0x3BF,
+                             .end      = 0x3BF };
                        vga_video_type = VIDEO_TYPE_MDA;
                        vga_vram_size = 0x2000;
                        display_desc = "*MDA";
@@ -454,15 +463,21 @@ static const char *vgacon_startup(void)
                        vga_vram_size = 0x8000;
 
                        if (!screen_info.orig_video_isVGA) {
-                               static struct resource ega_console_resource
-                                   = { .name = "ega", .start = 0x3C0, .end = 0x3DF };
+                               static struct resource ega_console_resource =
+                                   { .name     = "ega",
+                                     .flags    = IORESOURCE_IO,
+                                     .start    = 0x3C0,
+                                     .end      = 0x3DF };
                                vga_video_type = VIDEO_TYPE_EGAC;
                                display_desc = "EGA";
                                request_resource(&ioport_resource,
                                                 &ega_console_resource);
                        } else {
-                               static struct resource vga_console_resource
-                                   = { .name = "vga+", .start = 0x3C0, .end = 0x3DF };
+                               static struct resource vga_console_resource =
+                                   { .name     = "vga+",
+                                     .flags    = IORESOURCE_IO,
+                                     .start    = 0x3C0,
+                                     .end      = 0x3DF };
                                vga_video_type = VIDEO_TYPE_VGAC;
                                display_desc = "VGA+";
                                request_resource(&ioport_resource,
@@ -494,7 +509,10 @@ static const char *vgacon_startup(void)
                        }
                } else {
                        static struct resource cga_console_resource =
-                           { .name = "cga", .start = 0x3D4, .end = 0x3D5 };
+                           { .name     = "cga",
+                             .flags    = IORESOURCE_IO,
+                             .start    = 0x3D4,
+                             .end      = 0x3D5 };
                        vga_video_type = VIDEO_TYPE_CGA;
                        vga_vram_size = 0x2000;
                        display_desc = "*CGA";