Merge branch 'for-3.11' of git://linux-nfs.org/~bfields/linux
[linux-2.6.git] / include / linux / platform_data / s3c-hsotg.h
blob3f1cbf95ec3ba9cd98849ae92e846cb14a19e90f
1 /* include/linux/platform_data/s3c-hsotg.h
3 * Copyright 2008 Openmoko, Inc.
4 * Copyright 2008 Simtec Electronics
5 * Ben Dooks <ben@simtec.co.uk>
6 * http://armlinux.simtec.co.uk/
8 * S3C USB2.0 High-speed / OtG platform information
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.
15 #ifndef __LINUX_USB_S3C_HSOTG_H
16 #define __LINUX_USB_S3C_HSOTG_H
18 struct platform_device;
20 enum s3c_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 */
26 /**
27 * struct s3c_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
31 struct s3c_hsotg_plat {
32 enum s3c_hsotg_dmamode dma;
33 unsigned int is_osc:1;
34 int phy_type;
36 int (*phy_init)(struct platform_device *pdev, int type);
37 int (*phy_exit)(struct platform_device *pdev, int type);
40 extern void s3c_hsotg_set_platdata(struct s3c_hsotg_plat *pd);
42 #endif /* __LINUX_USB_S3C_HSOTG_H */