1*83d290c5STom Rini // SPDX-License-Identifier: GPL-2.0+ 22731b9a8SJean-Christophe PLAGNIOL-VILLARD /* 32731b9a8SJean-Christophe PLAGNIOL-VILLARD * (C) Copyright 2009 Stefan Roese <sr@denx.de>, DENX Software Engineering 42731b9a8SJean-Christophe PLAGNIOL-VILLARD */ 52731b9a8SJean-Christophe PLAGNIOL-VILLARD 62731b9a8SJean-Christophe PLAGNIOL-VILLARD #include <common.h> 72731b9a8SJean-Christophe PLAGNIOL-VILLARD #include <usb.h> 82731b9a8SJean-Christophe PLAGNIOL-VILLARD 92731b9a8SJean-Christophe PLAGNIOL-VILLARD #include "ehci.h" 102731b9a8SJean-Christophe PLAGNIOL-VILLARD 112731b9a8SJean-Christophe PLAGNIOL-VILLARD int vct_ehci_hcd_init(u32 *hccr, u32 *hcor); 122731b9a8SJean-Christophe PLAGNIOL-VILLARD 132731b9a8SJean-Christophe PLAGNIOL-VILLARD /* 142731b9a8SJean-Christophe PLAGNIOL-VILLARD * Create the appropriate control structures to manage 152731b9a8SJean-Christophe PLAGNIOL-VILLARD * a new EHCI host controller. 162731b9a8SJean-Christophe PLAGNIOL-VILLARD */ ehci_hcd_init(int index,enum usb_init_type init,struct ehci_hccr ** hccr,struct ehci_hcor ** hcor)17127efc4fSTroy Kiskyint ehci_hcd_init(int index, enum usb_init_type init, 18127efc4fSTroy Kisky struct ehci_hccr **hccr, struct ehci_hcor **hcor) 192731b9a8SJean-Christophe PLAGNIOL-VILLARD { 202731b9a8SJean-Christophe PLAGNIOL-VILLARD int ret; 212731b9a8SJean-Christophe PLAGNIOL-VILLARD u32 vct_hccr; 222731b9a8SJean-Christophe PLAGNIOL-VILLARD u32 vct_hcor; 232731b9a8SJean-Christophe PLAGNIOL-VILLARD 242731b9a8SJean-Christophe PLAGNIOL-VILLARD /* 252731b9a8SJean-Christophe PLAGNIOL-VILLARD * Init VCT specific stuff 262731b9a8SJean-Christophe PLAGNIOL-VILLARD */ 272731b9a8SJean-Christophe PLAGNIOL-VILLARD ret = vct_ehci_hcd_init(&vct_hccr, &vct_hcor); 282731b9a8SJean-Christophe PLAGNIOL-VILLARD if (ret) 292731b9a8SJean-Christophe PLAGNIOL-VILLARD return ret; 302731b9a8SJean-Christophe PLAGNIOL-VILLARD 31676ae068SLucas Stach *hccr = (struct ehci_hccr *)vct_hccr; 32676ae068SLucas Stach *hcor = (struct ehci_hcor *)vct_hcor; 332731b9a8SJean-Christophe PLAGNIOL-VILLARD 342731b9a8SJean-Christophe PLAGNIOL-VILLARD return 0; 352731b9a8SJean-Christophe PLAGNIOL-VILLARD } 362731b9a8SJean-Christophe PLAGNIOL-VILLARD 372731b9a8SJean-Christophe PLAGNIOL-VILLARD /* 382731b9a8SJean-Christophe PLAGNIOL-VILLARD * Destroy the appropriate control structures corresponding 392731b9a8SJean-Christophe PLAGNIOL-VILLARD * the the EHCI host controller. 402731b9a8SJean-Christophe PLAGNIOL-VILLARD */ ehci_hcd_stop(int index)41676ae068SLucas Stachint ehci_hcd_stop(int index) 422731b9a8SJean-Christophe PLAGNIOL-VILLARD { 432731b9a8SJean-Christophe PLAGNIOL-VILLARD return 0; 442731b9a8SJean-Christophe PLAGNIOL-VILLARD } 45