lkml.org 
[lkml]   [2019]   [Oct]   [7]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    Subject[tip: x86/platform] x86/platform/uv: Add return code to UV BIOS Init function
    The following commit has been merged into the x86/platform branch of tip:

    Commit-ID: 9743cb68f736d986481edba4d00de454d2faa0ec
    Gitweb: https://git.kernel.org/tip/9743cb68f736d986481edba4d00de454d2faa0ec
    Author: Mike Travis <mike.travis@hpe.com>
    AuthorDate: Tue, 10 Sep 2019 09:58:42 -05:00
    Committer: Ingo Molnar <mingo@kernel.org>
    CommitterDate: Mon, 07 Oct 2019 13:42:10 +02:00

    x86/platform/uv: Add return code to UV BIOS Init function

    Add a return code to the UV BIOS init function that indicates the
    successful initialization of the kernel/BIOS callback interface.

    Signed-off-by: Mike Travis <mike.travis@hpe.com>
    Reviewed-by: Steve Wahl <steve.wahl@hpe.com>
    Reviewed-by: Dimitri Sivanich <dimitri.sivanich@hpe.com>
    Cc: Andrew Morton <akpm@linux-foundation.org>
    Cc: Borislav Petkov <bp@alien8.de>
    Cc: Christoph Hellwig <hch@infradead.org>
    Cc: H. Peter Anvin <hpa@zytor.com>
    Cc: Hedi Berriche <hedi.berriche@hpe.com>
    Cc: Justin Ernst <justin.ernst@hpe.com>
    Cc: Linus Torvalds <torvalds@linux-foundation.org>
    Cc: Peter Zijlstra <peterz@infradead.org>
    Cc: Russ Anderson <russ.anderson@hpe.com>
    Cc: Thomas Gleixner <tglx@linutronix.de>
    Link: https://lkml.kernel.org/r/20190910145839.895739629@stormcage.eag.rdlabs.hpecorp.net
    Signed-off-by: Ingo Molnar <mingo@kernel.org>
    ---
    arch/x86/include/asm/uv/bios.h | 2 +-
    arch/x86/platform/uv/bios_uv.c | 9 +++++----
    2 files changed, 6 insertions(+), 5 deletions(-)

    diff --git a/arch/x86/include/asm/uv/bios.h b/arch/x86/include/asm/uv/bios.h
    index 6e7caf6..389174e 100644
    --- a/arch/x86/include/asm/uv/bios.h
    +++ b/arch/x86/include/asm/uv/bios.h
    @@ -138,7 +138,7 @@ extern s64 uv_bios_change_memprotect(u64, u64, enum uv_memprotect);
    extern s64 uv_bios_reserved_page_pa(u64, u64 *, u64 *, u64 *);
    extern int uv_bios_set_legacy_vga_target(bool decode, int domain, int bus);

    -extern void uv_bios_init(void);
    +extern int uv_bios_init(void);

    extern unsigned long sn_rtc_cycles_per_second;
    extern int uv_type;
    diff --git a/arch/x86/platform/uv/bios_uv.c b/arch/x86/platform/uv/bios_uv.c
    index c2ee319..ece9cb9 100644
    --- a/arch/x86/platform/uv/bios_uv.c
    +++ b/arch/x86/platform/uv/bios_uv.c
    @@ -184,20 +184,20 @@ int uv_bios_set_legacy_vga_target(bool decode, int domain, int bus)
    }
    EXPORT_SYMBOL_GPL(uv_bios_set_legacy_vga_target);

    -void uv_bios_init(void)
    +int uv_bios_init(void)
    {
    uv_systab = NULL;
    if ((uv_systab_phys == EFI_INVALID_TABLE_ADDR) ||
    !uv_systab_phys || efi_runtime_disabled()) {
    pr_crit("UV: UVsystab: missing\n");
    - return;
    + return -EEXIST;
    }

    uv_systab = ioremap(uv_systab_phys, sizeof(struct uv_systab));
    if (!uv_systab || strncmp(uv_systab->signature, UV_SYSTAB_SIG, 4)) {
    pr_err("UV: UVsystab: bad signature!\n");
    iounmap(uv_systab);
    - return;
    + return -EINVAL;
    }

    /* Starting with UV4 the UV systab size is variable */
    @@ -208,8 +208,9 @@ void uv_bios_init(void)
    uv_systab = ioremap(uv_systab_phys, size);
    if (!uv_systab) {
    pr_err("UV: UVsystab: ioremap(%d) failed!\n", size);
    - return;
    + return -EFAULT;
    }
    }
    pr_info("UV: UVsystab: Revision:%x\n", uv_systab->revision);
    + return 0;
    }
    \
     
     \ /
      Last update: 2019-10-07 16:51    [W:4.231 / U:0.432 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site