udc-hs.h 1.0 KB

1234567891011121314151617181920212223242526272829303132333435
  1. /* arch/arm/plat-s3c/include/plat/udc-hs.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. enum s3c_hsotg_dmamode {
  15. S3C_HSOTG_DMA_NONE, /* do not use DMA at-all */
  16. S3C_HSOTG_DMA_ONLY, /* always use DMA */
  17. S3C_HSOTG_DMA_DRV, /* DMA is chosen by driver */
  18. };
  19. /**
  20. * struct s3c_hsotg_plat - platform data for high-speed otg/udc
  21. * @dma: Whether to use DMA or not.
  22. * @is_osc: The clock source is an oscillator, not a crystal
  23. */
  24. struct s3c_hsotg_plat {
  25. enum s3c_hsotg_dmamode dma;
  26. unsigned int is_osc : 1;
  27. int (*phy_init)(struct platform_device *pdev, int type);
  28. int (*phy_exit)(struct platform_device *pdev, int type);
  29. };
  30. extern void s3c_hsotg_set_platdata(struct s3c_hsotg_plat *pd);