lkml.org 
[lkml]   [2018]   [Mar]   [23]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 4.14 39/77] vgacon: Set VGA struct resource types
    Date
    4.14-stable review patch.  If anyone has any objections, please let me know.

    ------------------

    From: Bjorn Helgaas <bhelgaas@google.com>


    [ 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 | 1 +
    drivers/video/console/vgacon.c | 34 ++++++++++++++++++++++++++--------
    2 files changed, 27 insertions(+), 8 deletions(-)

    --- a/arch/alpha/kernel/console.c
    +++ b/arch/alpha/kernel/console.c
    @@ -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
    };
    --- a/drivers/video/console/vgacon.c
    +++ b/drivers/video/console/vgacon.c
    @@ -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";

    \
     
     \ /
      Last update: 2018-03-23 12:50    [W:4.125 / U:0.036 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site