[U-Boot] [PATCH 63/69] x86: broadwell: Add video support
Simon Glass
sjg at chromium.org
Sat Mar 12 06:04:49 CET 2016
Hi Bin,
On 11 March 2016 at 01:54, Bin Meng <bmeng.cn at gmail.com> wrote:
> Hi Simon,
>
> On Mon, Mar 7, 2016 at 10:28 AM, Simon Glass <sjg at chromium.org> wrote:
>> Add a video driver for Intel's broadwell integrated graphics controller.
>> This uses a binary blob for most init, with the driver just performing a few
>> basic tasks.
>
> What binary blob is needed? Is it not a VGA ROM?
Yes it is.
>
>>
>> This driver supports VESA as the mode-setting mechanism. Since most boards
>> don't support driver model yet with VESA, a special case is added to the
>> Kconfig for broadwell. Eventually all boards will use driver model and this
>> can be removed.
>>
>> Signed-off-by: Simon Glass <sjg at chromium.org>
>> ---
>>
>> drivers/video/Kconfig | 14 +-
>> drivers/video/Makefile | 2 +
>> drivers/video/broadwell_igd.c | 797 ++++++++++++++++++++++++++++++++++++++++++
>> drivers/video/i915_reg.h | 362 +++++++++++++++++++
>> 4 files changed, 1174 insertions(+), 1 deletion(-)
>> create mode 100644 drivers/video/broadwell_igd.c
>> create mode 100644 drivers/video/i915_reg.h
>>
>> diff --git a/drivers/video/Kconfig b/drivers/video/Kconfig
>> index ff4179f..8361a71 100644
>> --- a/drivers/video/Kconfig
>> +++ b/drivers/video/Kconfig
>> @@ -112,7 +112,7 @@ config VIDEO_VESA
>>
>> config FRAMEBUFFER_SET_VESA_MODE
>> bool "Set framebuffer graphics resolution"
>> - depends on VIDEO_VESA
>> + depends on VIDEO_VESA || VIDEO_BROADWELL_IGD
>> help
>> Set VESA/native framebuffer mode (needed for bootsplash and graphical
>> framebuffer console)
>> @@ -362,6 +362,18 @@ config DISPLAY
>> The devices provide a simple interface to start up the display,
>> read display information and enable it.
>>
>> +config VIDEO_BROADWELL_IGD
>> + bool "Enable Intel Broadwell integrated graphics device"
>> + depends on X86
>> + help
>> + This enabled support for integrated graphics on Intel broadwell
>> + devices. Initialisation is mostly performed by a VGA boot ROM, with
>> + some setup handled by U-Boot itself. The graphics adaptor works as
>> + a VESA device and supports LCD panels, eDP and LVDS outputs.
>> + Configuration of most aspects of device operation is performed using
>> + a special tool which configures the VGA ROM, but the graphics
>> + resolution can be selected in U-Boot.
>> +
>> config VIDEO_ROCKCHIP
>> bool "Enable Rockchip video support"
>> depends on DM_VIDEO
>> diff --git a/drivers/video/Makefile b/drivers/video/Makefile
>> index 9b635fc..2fd0891 100644
>> --- a/drivers/video/Makefile
>> +++ b/drivers/video/Makefile
>> @@ -19,6 +19,8 @@ obj-$(CONFIG_CONSOLE_ROTATION) += console_rotate.o
>> obj-$(CONFIG_CONSOLE_TRUETYPE) += console_truetype.o fonts/
>> endif
>>
>> +obj-$(CONFIG_VIDEO_BROADWELL_IGD) += broadwell_igd.o
>> +
>> obj-$(CONFIG_ATI_RADEON_FB) += ati_radeon_fb.o videomodes.o
>> obj-$(CONFIG_ATMEL_HLCD) += atmel_hlcdfb.o
>> obj-$(CONFIG_ATMEL_LCD) += atmel_lcdfb.o
>> diff --git a/drivers/video/broadwell_igd.c b/drivers/video/broadwell_igd.c
>> new file mode 100644
>> index 0000000..ce4f296
>> --- /dev/null
>> +++ b/drivers/video/broadwell_igd.c
>> @@ -0,0 +1,797 @@
>> +/*
>> + * From coreboot src/soc/intel/broadwell/igd.c
>> + *
>> + * Copyright (C) 2016 Google, Inc
>> + *
>> + * SPDX-License-Identifier: GPL-2.0
>
> nits: GPL-2.0+?
>
>> + */
>> +
>
> [snip]
>
> Too many magic numbers, but guess we have to do that?
It seems so, yes. I suspect it would be possible to write an entire
driver and drop the ROM too, but...
>
> Acked-by: Bin Meng <bmeng.cn at gmail.com>
>
> Regards,
> Bin
Regards,
Simon
More information about the U-Boot
mailing list