1 /* 2 * (C) Copyright 2012 3 * eInfochips Ltd. <www.einfochips.com> 4 * Written-by: Ajay Bhargav <ajay.bhargav@einfochips.com> 5 * 6 * This driver is based on Kirkwood echi driver 7 * (C) Copyright 2009 8 * Marvell Semiconductor <www.marvell.com> 9 * Written-by: Prafulla Wadaskar <prafulla@marvell.com> 10 * 11 * See file CREDITS for list of people who contributed to this 12 * project. 13 * 14 * This program is free software; you can redistribute it and/or 15 * modify it under the terms of the GNU General Public License as 16 * published by the Free Software Foundation; either version 2 of 17 * the License, or (at your option) any later version. 18 * 19 * This program is distributed in the hope that it will be useful, 20 * but WITHOUT ANY WARRANTY; without even the implied warranty of 21 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 22 * GNU General Public License for more details. 23 * 24 * You should have received a copy of the GNU General Public License 25 * along with this program; if not, write to the Free Software 26 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, 27 * MA 02110-1301 USA 28 */ 29 30 #include <common.h> 31 #include <asm/io.h> 32 #include <usb.h> 33 #include "ehci.h" 34 #include "ehci-core.h" 35 #include <asm/arch/cpu.h> 36 #include <asm/arch/armada100.h> 37 #include <asm/arch/utmi-armada100.h> 38 39 /* 40 * EHCI host controller init 41 */ 42 int ehci_hcd_init(void) 43 { 44 if (utmi_init() < 0) 45 return -1; 46 47 hccr = (struct ehci_hccr *)(ARMD1_USB_HOST_BASE + 0x100); 48 hcor = (struct ehci_hcor *)((uint32_t) hccr 49 + HC_LENGTH(ehci_readl(&hccr->cr_capbase))); 50 51 debug("armada100-ehci: init hccr %x and hcor %x hc_length %d\n", 52 (uint32_t)hccr, (uint32_t)hcor, 53 (uint32_t)HC_LENGTH(ehci_readl(&hccr->cr_capbase))); 54 55 return 0; 56 } 57 58 /* 59 * EHCI host controller stop 60 */ 61 int ehci_hcd_stop(void) 62 { 63 return 0; 64 } 65