blob: 512ad3fb78d36f2a6cd5cfc53a0fbcbafb78104a [file] [log] [blame]
Stefan Roesea270d1e2009-01-29 06:33:55 +01001/*
2 * (C) Copyright 2009 Stefan Roese <sr@denx.de>, DENX Software Engineering
3 *
Wolfgang Denk1a459662013-07-08 09:37:19 +02004 * SPDX-License-Identifier: GPL-2.0+
Stefan Roesea270d1e2009-01-29 06:33:55 +01005 */
6
7#include <common.h>
8#include <usb.h>
9
Jean-Christophe PLAGNIOL-VILLARD2731b9a2009-04-03 12:46:58 +020010#include "ehci.h"
Stefan Roesea270d1e2009-01-29 06:33:55 +010011
12int vct_ehci_hcd_init(u32 *hccr, u32 *hcor);
13
14/*
15 * Create the appropriate control structures to manage
16 * a new EHCI host controller.
17 */
Troy Kisky127efc42013-10-10 15:27:57 -070018int ehci_hcd_init(int index, enum usb_init_type init,
19 struct ehci_hccr **hccr, struct ehci_hcor **hcor)
Stefan Roesea270d1e2009-01-29 06:33:55 +010020{
21 int ret;
22 u32 vct_hccr;
23 u32 vct_hcor;
24
25 /*
26 * Init VCT specific stuff
27 */
28 ret = vct_ehci_hcd_init(&vct_hccr, &vct_hcor);
29 if (ret)
30 return ret;
31
Lucas Stach676ae062012-09-26 00:14:35 +020032 *hccr = (struct ehci_hccr *)vct_hccr;
33 *hcor = (struct ehci_hcor *)vct_hcor;
Stefan Roesea270d1e2009-01-29 06:33:55 +010034
35 return 0;
36}
37
38/*
39 * Destroy the appropriate control structures corresponding
40 * the the EHCI host controller.
41 */
Lucas Stach676ae062012-09-26 00:14:35 +020042int ehci_hcd_stop(int index)
Stefan Roesea270d1e2009-01-29 06:33:55 +010043{
44 return 0;
45}