1 /* 2 * Olimex MX23 Olinuxino board 3 * 4 * Copyright (C) 2013 Marek Vasut <marex@denx.de> 5 * 6 * See file CREDITS for list of people who contributed to this 7 * project. 8 * 9 * This program is free software; you can redistribute it and/or 10 * modify it under the terms of the GNU General Public License as 11 * published by the Free Software Foundation; either version 2 of 12 * the License, or (at your option) any later version. 13 * 14 * This program is distributed in the hope that it will be useful, 15 * but WITHOUT ANY WARRANTY; without even the implied warranty of 16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 17 * GNU General Public License for more details. 18 * 19 * You should have received a copy of the GNU General Public License 20 * along with this program; if not, write to the Free Software 21 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, 22 * MA 02111-1307 USA 23 */ 24 25 #include <common.h> 26 #include <asm/io.h> 27 #include <asm/arch/iomux-mx23.h> 28 #include <asm/arch/imx-regs.h> 29 #include <asm/arch/clock.h> 30 #include <asm/arch/sys_proto.h> 31 32 DECLARE_GLOBAL_DATA_PTR; 33 34 /* 35 * Functions 36 */ 37 int board_early_init_f(void) 38 { 39 /* IO0 clock at 480MHz */ 40 mxs_set_ioclk(MXC_IOCLK0, 480000); 41 42 /* SSP0 clock at 96MHz */ 43 mxs_set_sspclk(MXC_SSPCLK0, 96000, 0); 44 45 return 0; 46 } 47 48 int dram_init(void) 49 { 50 return mxs_dram_init(); 51 } 52 53 #ifdef CONFIG_CMD_MMC 54 static int mx23_olx_mmc_cd(int id) 55 { 56 return 1; /* Card always present */ 57 } 58 59 int board_mmc_init(bd_t *bis) 60 { 61 return mxsmmc_initialize(bis, 0, NULL, mx23_olx_mmc_cd); 62 } 63 #endif 64 65 int board_init(void) 66 { 67 /* Adress of boot parameters */ 68 gd->bd->bi_boot_params = PHYS_SDRAM_1 + 0x100; 69 70 return 0; 71 } 72