/* usb/controller.h
 *
 * (c) 2002 Simtec Electronics
 *
 * Ben Dooks
 *
 * controller functions
 *
 * $Id: controller.h,v 1.11 2003/08/11 08:53:16 ben Exp $
 *
 * This Library file is part of the Simtec Electronics USB stack development
 *   suite.
 * Specific licence is granted to use this file by third parties for the
 *   development of USB device drivers.
 *
 */

#ifndef __USB_CONTROLLER_H
#define __USB_CONTROLLER_H "$Id: controller.h,v 1.11 2003/08/11 08:53:16 ben Exp $"

#ifndef __USB_TYPE_HOST_CONTROLLER
typedef struct usb_hc_s * usb_hc_t;

#define __USB_TYPE_HOST_CONTROLLER __FILE__
#endif /* __USB_TYPE_HOST_CONTROLLER */

#ifndef __USB_TYPE_HOST_CONTROLLER_PROPERTY
typedef struct usb_hc_property_s * host_controller_property_t;

#define __USB_TYPE_HOST_CONTROLLER_PROPERTY __FILE__
#endif /* __USB_TYPE_HOST_CONTROLLER_PROPERTY */

/** obtains the USB systems frame sync number.
@memo obtains the USB systems frame sync number.
@param controller controller to use
@param value value
@return Frame sync number
*/
extern int usb_frame_sync_number(usb_hc_t controller,
				 unsigned long value);

#endif /* __USB_CONTROLLER_H */
