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