Merge branch 'u-boot-microblaze/zynq' into 'u-boot-arm/master'
[platform/kernel/u-boot.git] / drivers / usb / host / ehci-spear.c
1 /*
2  * (C) Copyright 2010
3  * Armando Visconti, ST Micoelectronics, <armando.visconti@st.com>.
4  *
5  * (C) Copyright 2009
6  * Marvell Semiconductor <www.marvell.com>
7  * Written-by: Prafulla Wadaskar <prafulla@marvell.com>
8  *
9  * SPDX-License-Identifier:     GPL-2.0+
10  */
11
12 #include <common.h>
13 #include <asm/io.h>
14 #include <usb.h>
15 #include "ehci.h"
16 #include <asm/arch/hardware.h>
17
18
19 /*
20  * Create the appropriate control structures to manage
21  * a new EHCI host controller.
22  */
23 int ehci_hcd_init(int index, enum usb_init_type init,
24                 struct ehci_hccr **hccr, struct ehci_hcor **hcor)
25 {
26         *hccr = (struct ehci_hccr *)(CONFIG_SYS_UHC0_EHCI_BASE + 0x100);
27         *hcor = (struct ehci_hcor *)((uint32_t)*hccr
28                         + HC_LENGTH(ehci_readl(&(*hccr)->cr_capbase)));
29
30         debug("SPEAr-ehci: init hccr %x and hcor %x hc_length %d\n",
31                 (uint32_t)*hccr, (uint32_t)*hcor,
32                 (uint32_t)HC_LENGTH(ehci_readl(&(*hccr)->cr_capbase)));
33
34         return 0;
35 }
36
37 /*
38  * Destroy the appropriate control structures corresponding
39  * the the EHCI host controller.
40  */
41 int ehci_hcd_stop(int index)
42 {
43         return 0;
44 }