mirror of
https://github.com/brain-hackers/u-boot-brain
synced 2024-09-11 23:33:26 +09:00
![Sricharan](/assets/img/avatar_default.png)
This patch adds the minimal support for OMAP5. The platform and machine specific headers and sources updated for OMAP5430. OMAP5430 is Texas Instrument's SOC based on ARM Cortex-A15 SMP architecture. It's a dual core SOC with GIC used for interrupt handling and SCU for cache coherency. Also moved some part of code from the basic platform support that can be made common for OMAP4/5. Rest is kept out seperately. The same approach is followed for clocks and emif support in the subsequent patches. Signed-off-by: sricharan <r.sricharan@ti.com> Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
102 lines
2.5 KiB
C
102 lines
2.5 KiB
C
/*
|
|
* (C) Copyright 2010
|
|
* Texas Instruments Incorporated, <www.ti.com>
|
|
* Aneesh V <aneesh@ti.com>
|
|
* Steve Sakoman <steve@sakoman.com>
|
|
*
|
|
* See file CREDITS for list of people who contributed to this
|
|
* project.
|
|
*
|
|
* 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; either version 2 of
|
|
* the License, or (at your option) any later version.
|
|
*
|
|
* 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., 59 Temple Place, Suite 330, Boston,
|
|
* MA 02111-1307 USA
|
|
*/
|
|
#include <common.h>
|
|
#include <twl6030.h>
|
|
#include <asm/arch/sys_proto.h>
|
|
#include <asm/arch/mmc_host_def.h>
|
|
|
|
#include "mux_data.h"
|
|
|
|
DECLARE_GLOBAL_DATA_PTR;
|
|
|
|
const struct omap_sysinfo sysinfo = {
|
|
"Board: OMAP5430 EVM\n"
|
|
};
|
|
|
|
/**
|
|
* @brief board_init
|
|
*
|
|
* @return 0
|
|
*/
|
|
int board_init(void)
|
|
{
|
|
gpmc_init();
|
|
gd->bd->bi_arch_number = MACH_TYPE_OMAP5_SEVM;
|
|
gd->bd->bi_boot_params = (0x80000000 + 0x100); /* boot param addr */
|
|
|
|
return 0;
|
|
}
|
|
|
|
int board_eth_init(bd_t *bis)
|
|
{
|
|
return 0;
|
|
}
|
|
|
|
/**
|
|
* @brief misc_init_r - Configure EVM board specific configurations
|
|
* such as power configurations, ethernet initialization as phase2 of
|
|
* boot sequence
|
|
*
|
|
* @return 0
|
|
*/
|
|
int misc_init_r(void)
|
|
{
|
|
#ifdef CONFIG_TWL6030_POWER
|
|
twl6030_init_battery_charging();
|
|
#endif
|
|
return 0;
|
|
}
|
|
|
|
void set_muxconf_regs_essential(void)
|
|
{
|
|
do_set_mux(CONTROL_PADCONF_CORE, core_padconf_array_essential,
|
|
sizeof(core_padconf_array_essential) /
|
|
sizeof(struct pad_conf_entry));
|
|
|
|
do_set_mux(CONTROL_PADCONF_WKUP, wkup_padconf_array_essential,
|
|
sizeof(wkup_padconf_array_essential) /
|
|
sizeof(struct pad_conf_entry));
|
|
}
|
|
|
|
void set_muxconf_regs_non_essential(void)
|
|
{
|
|
do_set_mux(CONTROL_PADCONF_CORE, core_padconf_array_non_essential,
|
|
sizeof(core_padconf_array_non_essential) /
|
|
sizeof(struct pad_conf_entry));
|
|
|
|
do_set_mux(CONTROL_PADCONF_WKUP, wkup_padconf_array_non_essential,
|
|
sizeof(wkup_padconf_array_non_essential) /
|
|
sizeof(struct pad_conf_entry));
|
|
}
|
|
|
|
#if !defined(CONFIG_SPL_BUILD) && defined(CONFIG_GENERIC_MMC)
|
|
int board_mmc_init(bd_t *bis)
|
|
{
|
|
omap_mmc_init(0);
|
|
omap_mmc_init(1);
|
|
return 0;
|
|
}
|
|
#endif
|