| Atmel SOC USB controllers |
| |
| OHCI |
| |
| Required properties: |
| - compatible: Should be "atmel,at91rm9200-ohci" for USB controllers |
| used in host mode. |
| - num-ports: Number of ports. |
| - atmel,vbus-gpio: If present, specifies a gpio that needs to be |
| activated for the bus to be powered. |
| - atmel,oc-gpio: If present, specifies a gpio that needs to be |
| activated for the overcurrent detection. |
| |
| usb0: ohci@00500000 { |
| compatible = "atmel,at91rm9200-ohci", "usb-ohci"; |
| reg = <0x00500000 0x100000>; |
| interrupts = <20 4>; |
| num-ports = <2>; |
| }; |
| |
| EHCI |
| |
| Required properties: |
| - compatible: Should be "atmel,at91sam9g45-ehci" for USB controllers |
| used in host mode. |
| |
| usb1: ehci@00800000 { |
| compatible = "atmel,at91sam9g45-ehci", "usb-ehci"; |
| reg = <0x00800000 0x100000>; |
| interrupts = <22 4>; |
| }; |
| |
| AT91 USB device controller |
| |
| Required properties: |
| - compatible: Should be "atmel,at91rm9200-udc" |
| - reg: Address and length of the register set for the device |
| - interrupts: Should contain macb interrupt |
| |
| Optional properties: |
| - atmel,vbus-gpio: If present, specifies a gpio that needs to be |
| activated for the bus to be powered. |
| |
| usb1: gadget@fffa4000 { |
| compatible = "atmel,at91rm9200-udc"; |
| reg = <0xfffa4000 0x4000>; |
| interrupts = <10 4>; |
| atmel,vbus-gpio = <&pioC 5 0>; |
| }; |
| |
| Atmel High-Speed USB device controller |
| |
| Required properties: |
| - compatible: Should be "atmel,at91sam9rl-udc" |
| - reg: Address and length of the register set for the device |
| - interrupts: Should contain usba interrupt |
| - ep childnode: To specify the number of endpoints and their properties. |
| |
| Optional properties: |
| - atmel,vbus-gpio: If present, specifies a gpio that allows to detect whether |
| vbus is present (USB is connected). |
| |
| Required child node properties: |
| - name: Name of the endpoint. |
| - reg: Num of the endpoint. |
| - atmel,fifo-size: Size of the fifo. |
| - atmel,nb-banks: Number of banks. |
| - atmel,can-dma: Boolean to specify if the endpoint support DMA. |
| - atmel,can-isoc: Boolean to specify if the endpoint support ISOC. |
| |
| usb2: gadget@fff78000 { |
| #address-cells = <1>; |
| #size-cells = <0>; |
| compatible = "atmel,at91sam9rl-udc"; |
| reg = <0x00600000 0x80000 |
| 0xfff78000 0x400>; |
| interrupts = <27 4 0>; |
| atmel,vbus-gpio = <&pioB 19 0>; |
| |
| ep0 { |
| reg = <0>; |
| atmel,fifo-size = <64>; |
| atmel,nb-banks = <1>; |
| }; |
| |
| ep1 { |
| reg = <1>; |
| atmel,fifo-size = <1024>; |
| atmel,nb-banks = <2>; |
| atmel,can-dma; |
| atmel,can-isoc; |
| }; |
| |
| ep2 { |
| reg = <2>; |
| atmel,fifo-size = <1024>; |
| atmel,nb-banks = <2>; |
| atmel,can-dma; |
| atmel,can-isoc; |
| }; |
| |
| ep3 { |
| reg = <3>; |
| atmel,fifo-size = <1024>; |
| atmel,nb-banks = <3>; |
| atmel,can-dma; |
| }; |
| |
| ep4 { |
| reg = <4>; |
| atmel,fifo-size = <1024>; |
| atmel,nb-banks = <3>; |
| atmel,can-dma; |
| }; |
| |
| ep5 { |
| reg = <5>; |
| atmel,fifo-size = <1024>; |
| atmel,nb-banks = <3>; |
| atmel,can-dma; |
| atmel,can-isoc; |
| }; |
| |
| ep6 { |
| reg = <6>; |
| atmel,fifo-size = <1024>; |
| atmel,nb-banks = <3>; |
| atmel,can-dma; |
| atmel,can-isoc; |
| }; |
| }; |