linux/include/linux/platform_data/s3c-hsotg.h
<<
>>
Prefs
   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