diff options
Diffstat (limited to 'arch/arm/mach-shmobile/board-lager-reference.c')
-rw-r--r-- | arch/arm/mach-shmobile/board-lager-reference.c | 50 |
1 files changed, 18 insertions, 32 deletions
diff --git a/arch/arm/mach-shmobile/board-lager-reference.c b/arch/arm/mach-shmobile/board-lager-reference.c index 749832e3f33c..bc4b48357dde 100644 --- a/arch/arm/mach-shmobile/board-lager-reference.c +++ b/arch/arm/mach-shmobile/board-lager-reference.c @@ -22,13 +22,15 @@ #include <linux/init.h> #include <linux/of_platform.h> #include <linux/platform_data/rcar-du.h> -#include <mach/clock.h> -#include <mach/common.h> -#include <mach/irqs.h> -#include <mach/rcar-gen2.h> -#include <mach/r8a7790.h> + #include <asm/mach/arch.h> +#include "clock.h" +#include "common.h" +#include "irqs.h" +#include "r8a7790.h" +#include "rcar-gen2.h" + /* DU */ static struct rcar_du_encoder_data lager_du_encoders[] = { { @@ -41,16 +43,15 @@ static struct rcar_du_encoder_data lager_du_encoders[] = { .width_mm = 210, .height_mm = 158, .mode = { - .clock = 65000, - .hdisplay = 1024, - .hsync_start = 1048, - .hsync_end = 1184, - .htotal = 1344, - .vdisplay = 768, - .vsync_start = 771, - .vsync_end = 777, - .vtotal = 806, - .flags = 0, + .pixelclock = 65000000, + .hactive = 1024, + .hfront_porch = 20, + .hback_porch = 160, + .hsync_len = 136, + .vactive = 768, + .vfront_porch = 3, + .vback_porch = 29, + .vsync_len = 6, }, }, }, @@ -90,7 +91,6 @@ static void __init lager_add_du_device(void) * devices until they get moved to DT. */ static const struct clk_name clk_names[] __initconst = { - { "cmt0", "fck", "sh-cmt-48-gen2.0" }, { "du0", "du.0", "rcar-du-r8a7790" }, { "du1", "du.1", "rcar-du-r8a7790" }, { "du2", "du.2", "rcar-du-r8a7790" }, @@ -98,24 +98,9 @@ static const struct clk_name clk_names[] __initconst = { { "lvds1", "lvds.1", "rcar-du-r8a7790" }, }; -/* - * This is a really crude hack to work around core platform clock issues - */ -static const struct clk_name clk_enables[] __initconst = { - { "ether", NULL, "ee700000.ethernet" }, - { "msiof1", NULL, "e6e10000.spi" }, - { "mmcif1", NULL, "ee220000.mmc" }, - { "qspi_mod", NULL, "e6b10000.spi" }, - { "sdhi0", NULL, "ee100000.sd" }, - { "sdhi2", NULL, "ee140000.sd" }, - { "thermal", NULL, "e61f0000.thermal" }, -}; - static void __init lager_add_standard_devices(void) { shmobile_clk_workaround(clk_names, ARRAY_SIZE(clk_names), false); - shmobile_clk_workaround(clk_enables, ARRAY_SIZE(clk_enables), true); - r8a7790_add_dt_devices(); of_platform_populate(NULL, of_default_bus_match_table, NULL, NULL); lager_add_du_device(); @@ -129,9 +114,10 @@ static const char *lager_boards_compat_dt[] __initdata = { DT_MACHINE_START(LAGER_DT, "lager") .smp = smp_ops(r8a7790_smp_ops), - .init_early = r8a7790_init_early, + .init_early = shmobile_init_delay, .init_time = rcar_gen2_timer_init, .init_machine = lager_add_standard_devices, .init_late = shmobile_init_late, + .reserve = rcar_gen2_reserve, .dt_compat = lager_boards_compat_dt, MACHINE_END |