[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH v2 12/23] efi: split out efi_console_set_mode()



On Mon, Jul 20, 2015 at 04:29:07PM +0200, Daniel Kiper wrote:
> ..which sets console mode. We want to re-use this
> code to support multiboot2 protocol on EFI platforms.
> 
> Signed-off-by: Daniel Kiper <daniel.kiper@xxxxxxxxxx>

Reviewed-by: Konrad Rzeszutek Wilk <konrad.wilk@xxxxxxxxxx>
> ---
> v2 - suggestions/fixes:
>    - improve commit message
>      (suggested by Jan Beulich).
> ---
>  xen/common/efi/boot.c |   37 ++++++++++++++++++++-----------------
>  1 file changed, 20 insertions(+), 17 deletions(-)
> 
> diff --git a/xen/common/efi/boot.c b/xen/common/efi/boot.c
> index 6f327cd..4614146 100644
> --- a/xen/common/efi/boot.c
> +++ b/xen/common/efi/boot.c
> @@ -611,6 +611,25 @@ static void __init efi_init(EFI_HANDLE ImageHandle, 
> EFI_SYSTEM_TABLE *SystemTabl
>      StdErr = SystemTable->StdErr ?: StdOut;
>  }
>  
> +static void __init efi_console_set_mode(void)
> +{
> +    UINTN cols, rows, size;
> +    unsigned int best, i;
> +
> +    for ( i = 0, size = 0, best = StdOut->Mode->Mode;
> +          i < StdOut->Mode->MaxMode; ++i )
> +    {
> +        if ( StdOut->QueryMode(StdOut, i, &cols, &rows) == EFI_SUCCESS &&
> +             cols * rows > size )
> +        {
> +            size = cols * rows;
> +            best = i;
> +        }
> +    }
> +    if ( best != StdOut->Mode->Mode )
> +        StdOut->SetMode(StdOut, best);
> +}
> +
>  static void __init setup_efi_pci(void)
>  {
>      EFI_STATUS status;
> @@ -799,23 +818,7 @@ efi_start(EFI_HANDLE ImageHandle, EFI_SYSTEM_TABLE 
> *SystemTable)
>          }
>  
>          if ( !base_video )
> -        {
> -            unsigned int best;
> -            UINTN cols, rows, size;
> -
> -            for ( i = 0, size = 0, best = StdOut->Mode->Mode;
> -                  i < StdOut->Mode->MaxMode; ++i )
> -            {
> -                if ( StdOut->QueryMode(StdOut, i, &cols, &rows) == 
> EFI_SUCCESS &&
> -                     cols * rows > size )
> -                {
> -                    size = cols * rows;
> -                    best = i;
> -                }
> -            }
> -            if ( best != StdOut->Mode->Mode )
> -                StdOut->SetMode(StdOut, best);
> -        }
> +            efi_console_set_mode();
>      }
>  
>      PrintStr(L"Xen " __stringify(XEN_VERSION) "." __stringify(XEN_SUBVERSION)
> -- 
> 1.7.10.4
> 
> 
> _______________________________________________
> Xen-devel mailing list
> Xen-devel@xxxxxxxxxxxxx
> http://lists.xen.org/xen-devel

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.