]> git.baikalelectronics.ru Git - kernel.git/commit
x86/sysfb: Add support for 64bit EFI lfb_base
authorDavid Herrmann <dh.herrmann@gmail.com>
Tue, 15 Nov 2016 12:01:57 +0000 (13:01 +0100)
committerIngo Molnar <mingo@kernel.org>
Wed, 16 Nov 2016 08:38:22 +0000 (09:38 +0100)
commit083827b83920ff45dbab45f985d7ec4f83c009f8
treeb4a665157bc8148a14bfd148a5aeaf4f70b7f90e
parent64437c14c875f8dcbc696fb2bd2cd7f32199cb40
x86/sysfb: Add support for 64bit EFI lfb_base

The screen_info object was extended to support 64-bit lfb_base addresses
in:

  c5f962fd5ac1 ("efifb: Add support for 64-bit frame buffer addresses")

However, the x86 simple-framebuffer setup code never made use of it. Fix
it to properly assemble and verify the lfb_base before advertising
simple-framebuffer devices.

In particular, this means if VIDEO_CAPABILITY_64BIT_BASE is set, the
screen_info->ext_lfb_base field will contain the upper 32bit of the
actual lfb_base. Make sure the address is not 0 (i.e., unset), as well as
does not overflow the physical address type.

Signed-off-by: David Herrmann <dh.herrmann@gmail.com>
Acked-by: Thomas Gleixner <tglx@linutronix.de>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Matt Fleming <matt.fleming@intel.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Tom Gundersen <teg@jklm.no>
Link: http://lkml.kernel.org/r/20161115120158.15388-2-dh.herrmann@gmail.com
Signed-off-by: Ingo Molnar <mingo@kernel.org>
arch/x86/kernel/sysfb_simplefb.c