1/* include/linux/platform_data/s3c-hsotg.h 2 * 3 * Copyright 2008 Openmoko, Inc. 4 * Copyright 2008 Simtec Electronics 5 * Ben Dooks <ben@simtec.co.uk> 6 * http://armlinux.simtec.co.uk/ 7 * 8 * S3C USB2.0 High-speed / OtG platform information 9 * 10 * This program is free software; you can redistribute it and/or modify 11 * it under the terms of the GNU General Public License version 2 as 12 * published by the Free Software Foundation. 13*/ 14 15#ifndef __LINUX_USB_S3C_HSOTG_H 16#define __LINUX_USB_S3C_HSOTG_H 17 18struct platform_device; 19 20enum dwc2_hsotg_dmamode { 21 S3C_HSOTG_DMA_NONE, /* do not use DMA at-all */ 22 S3C_HSOTG_DMA_ONLY, /* always use DMA */ 23 S3C_HSOTG_DMA_DRV, /* DMA is chosen by driver */ 24}; 25 26/** 27 * struct dwc2_hsotg_plat - platform data for high-speed otg/udc 28 * @dma: Whether to use DMA or not. 29 * @is_osc: The clock source is an oscillator, not a crystal 30 */ 31struct dwc2_hsotg_plat { 32 enum dwc2_hsotg_dmamode dma; 33 unsigned int is_osc:1; 34 int phy_type; 35 36 int (*phy_init)(struct platform_device *pdev, int type); 37 int (*phy_exit)(struct platform_device *pdev, int type); 38}; 39 40extern void dwc2_hsotg_set_platdata(struct dwc2_hsotg_plat *pd); 41 42#endif /* __LINUX_USB_S3C_HSOTG_H */ 43