1/* 2 * Copyright (C) 2007,2008 Nobuhiro Iwamatsu <iwamatsu@nigauri.org> 3 * Copyright (C) 2008 Renesas Solutions Corp. 4 * 5 * See file CREDITS for list of people who contributed to this 6 * project. 7 * 8 * This program is free software; you can redistribute it and/or 9 * modify it under the terms of the GNU General Public License as 10 * published by the Free Software Foundation; either version 2 of 11 * the License, or (at your option) any later version. 12 * 13 * This program is distributed in the hope that it will be useful, 14 * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 * GNU General Public License for more details. 17 * 18 * You should have received a copy of the GNU General Public License 19 * along with this program; if not, write to the Free Software 20 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, 21 * MA 02111-1307 USA 22 */ 23 24#include <common.h> 25#include <command.h> 26#include <asm/processor.h> 27#include <asm/io.h> 28 29#define STBCR4 0xFFFE040C 30#define cmt_clock_enable() do {\ 31 writeb(readb(STBCR4) & ~0x04, STBCR4);\ 32 } while (0) 33#define scif0_enable() do {\ 34 writeb(readb(STBCR4) & ~0x80, STBCR4);\ 35 } while (0) 36#define scif3_enable() do {\ 37 writeb(readb(STBCR4) & ~0x10, STBCR4);\ 38 } while (0) 39 40int checkcpu(void) 41{ 42#if defined(CONFIG_SH2A) 43 puts("CPU: SH2A\n"); 44#else 45 puts("CPU: SH2\n"); 46#endif 47 return 0; 48} 49 50int cpu_init(void) 51{ 52 /* SCIF enable */ 53#if defined(CONFIG_CONS_SCIF3) 54 scif3_enable(); 55#else 56 scif0_enable(); 57#endif 58 /* CMT clock enable */ 59 cmt_clock_enable() ; 60 return 0; 61} 62 63int cleanup_before_linux(void) 64{ 65 disable_interrupts(); 66 return 0; 67} 68 69int do_reset(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) 70{ 71 disable_interrupts(); 72 reset_cpu(0); 73 return 0; 74} 75 76void flush_cache(unsigned long addr, unsigned long size) 77{ 78 79} 80 81void icache_enable(void) 82{ 83} 84 85void icache_disable(void) 86{ 87} 88 89int icache_status(void) 90{ 91 return 0; 92} 93 94void dcache_enable(void) 95{ 96} 97 98void dcache_disable(void) 99{ 100} 101 102int dcache_status(void) 103{ 104 return 0; 105} 106