18c2ecf20Sopenharmony_ciAtmel SOC USB controllers 28c2ecf20Sopenharmony_ci 38c2ecf20Sopenharmony_ciOHCI 48c2ecf20Sopenharmony_ci 58c2ecf20Sopenharmony_ciRequired properties: 68c2ecf20Sopenharmony_ci - compatible: Should be "atmel,at91rm9200-ohci" for USB controllers 78c2ecf20Sopenharmony_ci used in host mode. 88c2ecf20Sopenharmony_ci - reg: Address and length of the register set for the device 98c2ecf20Sopenharmony_ci - interrupts: Should contain ohci interrupt 108c2ecf20Sopenharmony_ci - clocks: Should reference the peripheral, host and system clocks 118c2ecf20Sopenharmony_ci - clock-names: Should contain three strings 128c2ecf20Sopenharmony_ci "ohci_clk" for the peripheral clock 138c2ecf20Sopenharmony_ci "hclk" for the host clock 148c2ecf20Sopenharmony_ci "uhpck" for the system clock 158c2ecf20Sopenharmony_ci - num-ports: Number of ports. 168c2ecf20Sopenharmony_ci - atmel,vbus-gpio: If present, specifies a gpio that needs to be 178c2ecf20Sopenharmony_ci activated for the bus to be powered. 188c2ecf20Sopenharmony_ci - atmel,oc-gpio: If present, specifies a gpio that needs to be 198c2ecf20Sopenharmony_ci activated for the overcurrent detection. 208c2ecf20Sopenharmony_ci 218c2ecf20Sopenharmony_ciusb0: ohci@500000 { 228c2ecf20Sopenharmony_ci compatible = "atmel,at91rm9200-ohci", "usb-ohci"; 238c2ecf20Sopenharmony_ci reg = <0x00500000 0x100000>; 248c2ecf20Sopenharmony_ci clocks = <&uhphs_clk>, <&uhphs_clk>, <&uhpck>; 258c2ecf20Sopenharmony_ci clock-names = "ohci_clk", "hclk", "uhpck"; 268c2ecf20Sopenharmony_ci interrupts = <20 4>; 278c2ecf20Sopenharmony_ci num-ports = <2>; 288c2ecf20Sopenharmony_ci}; 298c2ecf20Sopenharmony_ci 308c2ecf20Sopenharmony_ciEHCI 318c2ecf20Sopenharmony_ci 328c2ecf20Sopenharmony_ciRequired properties: 338c2ecf20Sopenharmony_ci - compatible: Should be "atmel,at91sam9g45-ehci" for USB controllers 348c2ecf20Sopenharmony_ci used in host mode. 358c2ecf20Sopenharmony_ci - reg: Address and length of the register set for the device 368c2ecf20Sopenharmony_ci - interrupts: Should contain ehci interrupt 378c2ecf20Sopenharmony_ci - clocks: Should reference the peripheral and the UTMI clocks 388c2ecf20Sopenharmony_ci - clock-names: Should contain two strings 398c2ecf20Sopenharmony_ci "ehci_clk" for the peripheral clock 408c2ecf20Sopenharmony_ci "usb_clk" for the UTMI clock 418c2ecf20Sopenharmony_ci 428c2ecf20Sopenharmony_ciusb1: ehci@800000 { 438c2ecf20Sopenharmony_ci compatible = "atmel,at91sam9g45-ehci", "usb-ehci"; 448c2ecf20Sopenharmony_ci reg = <0x00800000 0x100000>; 458c2ecf20Sopenharmony_ci interrupts = <22 4>; 468c2ecf20Sopenharmony_ci clocks = <&utmi>, <&uhphs_clk>; 478c2ecf20Sopenharmony_ci clock-names = "usb_clk", "ehci_clk"; 488c2ecf20Sopenharmony_ci}; 498c2ecf20Sopenharmony_ci 508c2ecf20Sopenharmony_ciAT91 USB device controller 518c2ecf20Sopenharmony_ci 528c2ecf20Sopenharmony_ciRequired properties: 538c2ecf20Sopenharmony_ci - compatible: Should be one of the following 548c2ecf20Sopenharmony_ci "atmel,at91rm9200-udc" 558c2ecf20Sopenharmony_ci "atmel,at91sam9260-udc" 568c2ecf20Sopenharmony_ci "atmel,at91sam9261-udc" 578c2ecf20Sopenharmony_ci "atmel,at91sam9263-udc" 588c2ecf20Sopenharmony_ci - reg: Address and length of the register set for the device 598c2ecf20Sopenharmony_ci - interrupts: Should contain macb interrupt 608c2ecf20Sopenharmony_ci - clocks: Should reference the peripheral and the AHB clocks 618c2ecf20Sopenharmony_ci - clock-names: Should contain two strings 628c2ecf20Sopenharmony_ci "pclk" for the peripheral clock 638c2ecf20Sopenharmony_ci "hclk" for the AHB clock 648c2ecf20Sopenharmony_ci 658c2ecf20Sopenharmony_ciOptional properties: 668c2ecf20Sopenharmony_ci - atmel,vbus-gpio: If present, specifies a gpio that needs to be 678c2ecf20Sopenharmony_ci activated for the bus to be powered. 688c2ecf20Sopenharmony_ci 698c2ecf20Sopenharmony_ciusb1: gadget@fffa4000 { 708c2ecf20Sopenharmony_ci compatible = "atmel,at91rm9200-udc"; 718c2ecf20Sopenharmony_ci reg = <0xfffa4000 0x4000>; 728c2ecf20Sopenharmony_ci interrupts = <10 4>; 738c2ecf20Sopenharmony_ci clocks = <&udc_clk>, <&udpck>; 748c2ecf20Sopenharmony_ci clock-names = "pclk", "hclk"; 758c2ecf20Sopenharmony_ci atmel,vbus-gpio = <&pioC 5 0>; 768c2ecf20Sopenharmony_ci}; 778c2ecf20Sopenharmony_ci 788c2ecf20Sopenharmony_ciAtmel High-Speed USB device controller 798c2ecf20Sopenharmony_ci 808c2ecf20Sopenharmony_ciRequired properties: 818c2ecf20Sopenharmony_ci - compatible: Should be one of the following 828c2ecf20Sopenharmony_ci "atmel,at91sam9rl-udc" 838c2ecf20Sopenharmony_ci "atmel,at91sam9g45-udc" 848c2ecf20Sopenharmony_ci "atmel,sama5d3-udc" 858c2ecf20Sopenharmony_ci "microchip,sam9x60-udc" 868c2ecf20Sopenharmony_ci - reg: Address and length of the register set for the device 878c2ecf20Sopenharmony_ci - interrupts: Should contain usba interrupt 888c2ecf20Sopenharmony_ci - clocks: Should reference the peripheral and host clocks 898c2ecf20Sopenharmony_ci - clock-names: Should contain two strings 908c2ecf20Sopenharmony_ci "pclk" for the peripheral clock 918c2ecf20Sopenharmony_ci "hclk" for the host clock 928c2ecf20Sopenharmony_ci 938c2ecf20Sopenharmony_ciDeprecated property: 948c2ecf20Sopenharmony_ci - ep childnode: To specify the number of endpoints and their properties. 958c2ecf20Sopenharmony_ci 968c2ecf20Sopenharmony_ciOptional properties: 978c2ecf20Sopenharmony_ci - atmel,vbus-gpio: If present, specifies a gpio that allows to detect whether 988c2ecf20Sopenharmony_ci vbus is present (USB is connected). 998c2ecf20Sopenharmony_ci 1008c2ecf20Sopenharmony_ciDeprecated child node properties: 1018c2ecf20Sopenharmony_ci - name: Name of the endpoint. 1028c2ecf20Sopenharmony_ci - reg: Num of the endpoint. 1038c2ecf20Sopenharmony_ci - atmel,fifo-size: Size of the fifo. 1048c2ecf20Sopenharmony_ci - atmel,nb-banks: Number of banks. 1058c2ecf20Sopenharmony_ci - atmel,can-dma: Boolean to specify if the endpoint support DMA. 1068c2ecf20Sopenharmony_ci - atmel,can-isoc: Boolean to specify if the endpoint support ISOC. 1078c2ecf20Sopenharmony_ci 1088c2ecf20Sopenharmony_ciusb2: gadget@fff78000 { 1098c2ecf20Sopenharmony_ci #address-cells = <1>; 1108c2ecf20Sopenharmony_ci #size-cells = <0>; 1118c2ecf20Sopenharmony_ci compatible = "atmel,at91sam9rl-udc"; 1128c2ecf20Sopenharmony_ci reg = <0x00600000 0x80000 1138c2ecf20Sopenharmony_ci 0xfff78000 0x400>; 1148c2ecf20Sopenharmony_ci interrupts = <27 4 0>; 1158c2ecf20Sopenharmony_ci clocks = <&utmi>, <&udphs_clk>; 1168c2ecf20Sopenharmony_ci clock-names = "hclk", "pclk"; 1178c2ecf20Sopenharmony_ci atmel,vbus-gpio = <&pioB 19 0>; 1188c2ecf20Sopenharmony_ci}; 119