diff options
author | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2012-05-07 09:49:32 -0700 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2012-05-07 09:49:32 -0700 |
commit | 6a1e1d71d0bfb969f39a77eee585148aea57497b (patch) | |
tree | af8a151dc6b352f756f3bf6ac993678fcfb97502 /include/linux/platform_data | |
parent | 61906313bd41cde2f9aaa14e461e6108d3e71aaa (diff) | |
parent | 1d144c6732f6badd4be7a1383a4ae2adcc3f9386 (diff) | |
download | linux-stable-6a1e1d71d0bfb969f39a77eee585148aea57497b.tar.gz linux-stable-6a1e1d71d0bfb969f39a77eee585148aea57497b.tar.bz2 linux-stable-6a1e1d71d0bfb969f39a77eee585148aea57497b.zip |
Merge tag 'gadget-for-v3.5' of git://git.kernel.org/pub/scm/linux/kernel/git/balbi/usb into usb-next
usb: gadget: patches for v3.5
This pull request is quite big, but mainly because there's a
giant rework of the s3c_hsotg.c driver to make it friendlier
for other users. Samsung Exynos platforms use the DesignWare
Core USB2 IP from Synopsys so it's a bit unfair to have the
driver work for Samsung platforms only. In short, the big
rework is in preparation to make the driver more reusable.
Another big rework in this pull request came from Ido, where
he's removing the redundant pointer for the endpoint descriptor
from the controller driver's own endpoint representation. The
same pointer is available through the generic struct usb_ep
structure.
Also on this pull request is the conversion of a few extra
controller drivers to the new style registration, which allows
multiple controllers to be available on the same platform and
helps remove global pointers from those drivers.
Together with those big changes, there's the usual fixes and cleanups
to gadget drivers. Nothing major.
Diffstat (limited to 'include/linux/platform_data')
-rw-r--r-- | include/linux/platform_data/s3c-hsotg.h | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/include/linux/platform_data/s3c-hsotg.h b/include/linux/platform_data/s3c-hsotg.h new file mode 100644 index 000000000000..97ec12c2ded4 --- /dev/null +++ b/include/linux/platform_data/s3c-hsotg.h @@ -0,0 +1,35 @@ +/* include/linux/platform_data/s3c-hsotg.h + * + * Copyright 2008 Openmoko, Inc. + * Copyright 2008 Simtec Electronics + * Ben Dooks <ben@simtec.co.uk> + * http://armlinux.simtec.co.uk/ + * + * S3C USB2.0 High-speed / OtG platform information + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation. +*/ + +enum s3c_hsotg_dmamode { + S3C_HSOTG_DMA_NONE, /* do not use DMA at-all */ + S3C_HSOTG_DMA_ONLY, /* always use DMA */ + S3C_HSOTG_DMA_DRV, /* DMA is chosen by driver */ +}; + +/** + * struct s3c_hsotg_plat - platform data for high-speed otg/udc + * @dma: Whether to use DMA or not. + * @is_osc: The clock source is an oscillator, not a crystal + */ +struct s3c_hsotg_plat { + enum s3c_hsotg_dmamode dma; + unsigned int is_osc:1; + int phy_type; + + int (*phy_init)(struct platform_device *pdev, int type); + int (*phy_exit)(struct platform_device *pdev, int type); +}; + +extern void s3c_hsotg_set_platdata(struct s3c_hsotg_plat *pd); |