ARM: bcm2835: add simplefb DT node during bootz/m

Add a DT simple-framebuffer node to DT when booting the Linux kernel.
This will allow the kernel to inherit the framebuffer configuration from
U-Boot, and display a graphical boot console, and even run a full SW-
rendered X server.

Signed-off-by: Stephen Warren <swarren@wwwdotorg.org>
Acked-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
Stephen Warren 2013-05-27 18:31:18 +00:00 committed by Anatolij Gustschin
parent 6a195d2d8a
commit ea697ae7eb
2 changed files with 15 additions and 1 deletions

View file

@ -1,5 +1,5 @@
/* /*
* (C) Copyright 2012 Stephen Warren * (C) Copyright 2012-2013 Stephen Warren
* *
* See file CREDITS for list of people who contributed to this * See file CREDITS for list of people who contributed to this
* project. * project.
@ -15,6 +15,8 @@
*/ */
#include <common.h> #include <common.h>
#include <config.h>
#include <lcd.h>
#include <asm/arch/mbox.h> #include <asm/arch/mbox.h>
#include <asm/arch/sdhci.h> #include <asm/arch/sdhci.h>
#include <asm/global_data.h> #include <asm/global_data.h>
@ -77,3 +79,13 @@ int board_mmc_init(void)
return bcm2835_sdhci_init(BCM2835_SDHCI_BASE, return bcm2835_sdhci_init(BCM2835_SDHCI_BASE,
msg_clk->get_clock_rate.body.resp.rate_hz); msg_clk->get_clock_rate.body.resp.rate_hz);
} }
void ft_board_setup(void *blob, bd_t *bd)
{
/*
* For now, we simply always add the simplefb DT node. Later, we
* should be more intelligent, and e.g. only do this if no enabled DT
* node exists for the "real" graphics driver.
*/
lcd_dt_simplefb_add_node(blob);
}

View file

@ -61,6 +61,7 @@
#define CONFIG_BCM2835_GPIO #define CONFIG_BCM2835_GPIO
/* LCD */ /* LCD */
#define CONFIG_LCD #define CONFIG_LCD
#define CONFIG_LCD_DT_SIMPLEFB
#define LCD_BPP LCD_COLOR16 #define LCD_BPP LCD_COLOR16
/* /*
* Prevent allocation of RAM for FB; the real FB address is queried * Prevent allocation of RAM for FB; the real FB address is queried
@ -175,6 +176,7 @@
/* Device tree support for bootm/bootz */ /* Device tree support for bootm/bootz */
#define CONFIG_OF_LIBFDT #define CONFIG_OF_LIBFDT
#define CONFIG_OF_BOARD_SETUP
/* ATAGs support for bootm/bootz */ /* ATAGs support for bootm/bootz */
#define CONFIG_SETUP_MEMORY_TAGS #define CONFIG_SETUP_MEMORY_TAGS
#define CONFIG_CMDLINE_TAG #define CONFIG_CMDLINE_TAG