1/* 2 * (C) Copyright 2007 3 * Markus Klotzbuecher, DENX Software Engineering <mk@denx.de> 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 26#if defined(CONFIG_USB_OHCI_NEW) && defined(CONFIG_SYS_USB_OHCI_CPU_INIT) 27 28#ifdef CONFIG_4xx_DCACHE 29#include <asm/mmu.h> 30DECLARE_GLOBAL_DATA_PTR; 31#endif 32 33#include "usbdev.h" 34 35int usb_cpu_init(void) 36{ 37#ifdef CONFIG_4xx_DCACHE 38 /* disable cache */ 39 change_tlb(gd->bd->bi_memstart, gd->bd->bi_memsize, TLB_WORD2_I_ENABLE); 40#endif 41 42#if defined(CONFIG_440EP) || defined(CONFIG_440EPX) 43 usb_dev_init(); 44#endif 45 return 0; 46} 47 48int usb_cpu_stop(void) 49{ 50#ifdef CONFIG_4xx_DCACHE 51 /* enable cache */ 52 change_tlb(gd->bd->bi_memstart, gd->bd->bi_memsize, 0); 53#endif 54 return 0; 55} 56 57int usb_cpu_init_fail(void) 58{ 59#ifdef CONFIG_4xx_DCACHE 60 /* enable cache */ 61 change_tlb(gd->bd->bi_memstart, gd->bd->bi_memsize, 0); 62#endif 63 return 0; 64} 65 66#endif /* defined(CONFIG_USB_OHCI) && defined(CONFIG_SYS_USB_OHCI_CPU_INIT) */ 67