1 /* include/linux/platform_data/s3c-hsotg.h 2 * 3 * Copyright 2008 Openmoko, Inc. 4 * Copyright 2008 Simtec Electronics 5 * Ben Dooks <[email protected]> 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 18 enum s3c_hsotg_dmamode { 19 S3C_HSOTG_DMA_NONE, /* do not use DMA at-all */ 20 S3C_HSOTG_DMA_ONLY, /* always use DMA */ 21 S3C_HSOTG_DMA_DRV, /* DMA is chosen by driver */ 22 }; 23 24 /** 25 * struct s3c_hsotg_plat - platform data for high-speed otg/udc 26 * @dma: Whether to use DMA or not. 27 * @is_osc: The clock source is an oscillator, not a crystal 28 */ 29 struct s3c_hsotg_plat { 30 enum s3c_hsotg_dmamode dma; 31 unsigned int is_osc:1; 32 int phy_type; 33 34 int (*phy_init)(struct platform_device *pdev, int type); 35 int (*phy_exit)(struct platform_device *pdev, int type); 36 }; 37 38 extern void s3c_hsotg_set_platdata(struct s3c_hsotg_plat *pd); 39 40 #endif /* __LINUX_USB_S3C_HSOTG_H */ 41