summaryrefslogtreecommitdiffstats
path: root/drivers/usb/gadget/fsl_usb2_udc.h
diff options
context:
space:
mode:
authorAnatolij Gustschin <agust@denx.de>2011-04-18 22:01:57 +0200
committerGreg Kroah-Hartman <gregkh@suse.de>2011-05-02 16:59:37 -0700
commit09ba0def9aefc16c1c8a6d166f024c9d704f0ab0 (patch)
treea35a0280edd8b3a58a2d0a545eb82bbb01e9f551 /drivers/usb/gadget/fsl_usb2_udc.h
parentb703e47ec0d16ccaf2895e2069b6c83a92c51efc (diff)
downloadop-kernel-dev-09ba0def9aefc16c1c8a6d166f024c9d704f0ab0.zip
op-kernel-dev-09ba0def9aefc16c1c8a6d166f024c9d704f0ab0.tar.gz
USB: fsl_udc_core: prepare for SoCs with BE registers and descriptors
On some SoCs, the USB controller registers and descriptors can be big or little endian, depending on the version of the chip. In order to be able to run the same kernel binary on different versions of an SoC, the BE/LE decision must be made at run time. Provide appropriate register and descriptor accessors which are configurable at run time using the configuration flags from fsl_usb2_platform_data data structure. This is in preparation for adding support for MPC5121E DR USB2 Controller to the FSL UDC driver. Signed-off-by: Anatolij Gustschin <agust@denx.de> Cc: Li Yang <leoli@freescale.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/usb/gadget/fsl_usb2_udc.h')
-rw-r--r--drivers/usb/gadget/fsl_usb2_udc.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/usb/gadget/fsl_usb2_udc.h b/drivers/usb/gadget/fsl_usb2_udc.h
index e88cce5..24efba9 100644
--- a/drivers/usb/gadget/fsl_usb2_udc.h
+++ b/drivers/usb/gadget/fsl_usb2_udc.h
@@ -461,6 +461,7 @@ struct fsl_ep {
struct fsl_udc {
struct usb_gadget gadget;
struct usb_gadget_driver *driver;
+ struct fsl_usb2_platform_data *pdata;
struct completion *done; /* to make sure release() is done */
struct fsl_ep *eps;
unsigned int max_ep;
@@ -473,6 +474,7 @@ struct fsl_udc {
unsigned vbus_active:1;
unsigned stopped:1;
unsigned remote_wakeup:1;
+ unsigned big_endian_desc:1;
struct ep_queue_head *ep_qh; /* Endpoints Queue-Head */
struct fsl_req *status_req; /* ep0 status request */
OpenPOWER on IntegriCloud