atmel-usb.txt 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131
  1. Atmel SOC USB controllers
  2. OHCI
  3. Required properties:
  4. - compatible: Should be "atmel,at91rm9200-ohci" for USB controllers
  5. used in host mode.
  6. - num-ports: Number of ports.
  7. - atmel,vbus-gpio: If present, specifies a gpio that needs to be
  8. activated for the bus to be powered.
  9. - atmel,oc-gpio: If present, specifies a gpio that needs to be
  10. activated for the overcurrent detection.
  11. usb0: ohci@00500000 {
  12. compatible = "atmel,at91rm9200-ohci", "usb-ohci";
  13. reg = <0x00500000 0x100000>;
  14. interrupts = <20 4>;
  15. num-ports = <2>;
  16. };
  17. EHCI
  18. Required properties:
  19. - compatible: Should be "atmel,at91sam9g45-ehci" for USB controllers
  20. used in host mode.
  21. usb1: ehci@00800000 {
  22. compatible = "atmel,at91sam9g45-ehci", "usb-ehci";
  23. reg = <0x00800000 0x100000>;
  24. interrupts = <22 4>;
  25. };
  26. AT91 USB device controller
  27. Required properties:
  28. - compatible: Should be "atmel,at91rm9200-udc"
  29. - reg: Address and length of the register set for the device
  30. - interrupts: Should contain macb interrupt
  31. Optional properties:
  32. - atmel,vbus-gpio: If present, specifies a gpio that needs to be
  33. activated for the bus to be powered.
  34. usb1: gadget@fffa4000 {
  35. compatible = "atmel,at91rm9200-udc";
  36. reg = <0xfffa4000 0x4000>;
  37. interrupts = <10 4>;
  38. atmel,vbus-gpio = <&pioC 5 0>;
  39. };
  40. Atmel High-Speed USB device controller
  41. Required properties:
  42. - compatible: Should be "atmel,at91sam9rl-udc"
  43. - reg: Address and length of the register set for the device
  44. - interrupts: Should contain usba interrupt
  45. - ep childnode: To specify the number of endpoints and their properties.
  46. Optional properties:
  47. - atmel,vbus-gpio: If present, specifies a gpio that needs to be
  48. activated for the bus to be powered.
  49. Required child node properties:
  50. - name: Name of the endpoint.
  51. - reg: Num of the endpoint.
  52. - atmel,fifo-size: Size of the fifo.
  53. - atmel,nb-banks: Number of banks.
  54. - atmel,can-dma: Boolean to specify if the endpoint support DMA.
  55. - atmel,can-isoc: Boolean to specify if the endpoint support ISOC.
  56. usb2: gadget@fff78000 {
  57. #address-cells = <1>;
  58. #size-cells = <0>;
  59. compatible = "atmel,at91sam9rl-udc";
  60. reg = <0x00600000 0x80000
  61. 0xfff78000 0x400>;
  62. interrupts = <27 4 0>;
  63. atmel,vbus-gpio = <&pioB 19 0>;
  64. ep0 {
  65. reg = <0>;
  66. atmel,fifo-size = <64>;
  67. atmel,nb-banks = <1>;
  68. };
  69. ep1 {
  70. reg = <1>;
  71. atmel,fifo-size = <1024>;
  72. atmel,nb-banks = <2>;
  73. atmel,can-dma;
  74. atmel,can-isoc;
  75. };
  76. ep2 {
  77. reg = <2>;
  78. atmel,fifo-size = <1024>;
  79. atmel,nb-banks = <2>;
  80. atmel,can-dma;
  81. atmel,can-isoc;
  82. };
  83. ep3 {
  84. reg = <3>;
  85. atmel,fifo-size = <1024>;
  86. atmel,nb-banks = <3>;
  87. atmel,can-dma;
  88. };
  89. ep4 {
  90. reg = <4>;
  91. atmel,fifo-size = <1024>;
  92. atmel,nb-banks = <3>;
  93. atmel,can-dma;
  94. };
  95. ep5 {
  96. reg = <5>;
  97. atmel,fifo-size = <1024>;
  98. atmel,nb-banks = <3>;
  99. atmel,can-dma;
  100. atmel,can-isoc;
  101. };
  102. ep6 {
  103. reg = <6>;
  104. atmel,fifo-size = <1024>;
  105. atmel,nb-banks = <3>;
  106. atmel,can-dma;
  107. atmel,can-isoc;
  108. };
  109. };