6d75bc6439
Add Koelsch and r8a7791 to CONFIG_SHMOBILE_MULTI. At this point CCF is not yet supported so you cannot run this code yet. For CCF support to happen several different components are needed, and this is one simple portion that moves us forward. Other patches need to build on top of this one. Koelsch board support exists in 3 flavors: 1) SHMOBILE_MULTI, MACH_KOELSCH - board-koelsch-reference.c (CCF + DT) 2) SHMOBILE, MACH_KOELSCH_REFERENCE - board-koelsch-reference.c (DT) 3) SHMOBILE, MACH_KOELSCH - board-koelsch.c (legacy C code) When CCF is done then 2) will be removed. When 1) includes same features as 3) then 3) will be removed. Signed-off-by: Magnus Damm <damm@opensource.se> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
52 lines
1.6 KiB
C
52 lines
1.6 KiB
C
/*
|
|
* Koelsch board support - Reference DT implementation
|
|
*
|
|
* Copyright (C) 2013 Renesas Electronics Corporation
|
|
* Copyright (C) 2013 Renesas Solutions Corp.
|
|
* Copyright (C) 2013 Magnus Damm
|
|
*
|
|
* This program is free software; you can redistribute it and/or modify
|
|
* it under the terms of the GNU General Public License as published by
|
|
* the Free Software Foundation; version 2 of the License.
|
|
*
|
|
* This program is distributed in the hope that it will be useful,
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
* GNU General Public License for more details.
|
|
*
|
|
* You should have received a copy of the GNU General Public License
|
|
* along with this program; if not, write to the Free Software
|
|
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
|
*/
|
|
|
|
#include <linux/clk-provider.h>
|
|
#include <linux/kernel.h>
|
|
#include <linux/of_platform.h>
|
|
#include <mach/rcar-gen2.h>
|
|
#include <mach/r8a7791.h>
|
|
#include <asm/mach/arch.h>
|
|
|
|
static void __init koelsch_add_standard_devices(void)
|
|
{
|
|
#ifdef CONFIG_COMMON_CLK
|
|
of_clk_init(NULL);
|
|
#else
|
|
r8a7791_clock_init();
|
|
#endif
|
|
r8a7791_add_dt_devices();
|
|
of_platform_populate(NULL, of_default_bus_match_table, NULL, NULL);
|
|
}
|
|
|
|
static const char * const koelsch_boards_compat_dt[] __initconst = {
|
|
"renesas,koelsch-reference",
|
|
NULL,
|
|
};
|
|
|
|
DT_MACHINE_START(KOELSCH_DT, "koelsch")
|
|
.smp = smp_ops(r8a7791_smp_ops),
|
|
.init_early = r8a7791_init_early,
|
|
.init_time = rcar_gen2_timer_init,
|
|
.init_machine = koelsch_add_standard_devices,
|
|
.dt_compat = koelsch_boards_compat_dt,
|
|
MACHINE_END
|