TI DA8xx MUSB ~~~~~~~~~~~~~ For DA8xx/OMAP-L1x/AM17xx/AM18xx platforms. Required properties: ~~~~~~~~~~~~~~~~~~~~ - compatible : Should be set to "ti,da830-musb". - reg: Offset and length of the USB controller register set. - interrupts: The USB interrupt number. - interrupt-names: Should be set to "mc". - dr_mode: The USB operation mode. Should be one of "host", "peripheral" or "otg". - phys: Phandle for the PHY device - phy-names: Should be "usb-phy" - dmas: specifies the dma channels - dma-names: specifies the names of the channels. Use "rxN" for receive and "txN" for transmit endpoints. N specifies the endpoint number. Optional properties: ~~~~~~~~~~~~~~~~~~~~ - vbus-supply: Phandle to a regulator providing the USB bus power. DMA ~~~ - compatible: ti,da830-cppi41 - reg: offset and length of the following register spaces: CPPI DMA Controller, CPPI DMA Scheduler, Queue Manager - reg-names: "controller", "scheduler", "queuemgr" - #dma-cells: should be set to 2. The first number represents the channel number (0 … 3 for endpoints 1 … 4). The second number is 0 for RX and 1 for TX transfers. - #dma-channels: should be set to 4 representing the 4 endpoints. Example: usb_phy: usb-phy { compatible = "ti,da830-usb-phy"; #phy-cells = <0>; }; usb0: usb@200000 { compatible = "ti,da830-musb"; reg = <0x00200000 0x1000>; ranges; #address-cells = <1>; #size-cells = <1>; interrupts = <58>; interrupt-names = "mc"; dr_mode = "host"; vbus-supply = <&usb_vbus>; phys = <&usb_phy 0>; phy-names = "usb-phy"; dmas = <&cppi41dma 0 0 &cppi41dma 1 0 &cppi41dma 2 0 &cppi41dma 3 0 &cppi41dma 0 1 &cppi41dma 1 1 &cppi41dma 2 1 &cppi41dma 3 1>; dma-names = "rx1", "rx2", "rx3", "rx4", "tx1", "tx2", "tx3", "tx4"; cppi41dma: dma-controller@201000 { compatible = "ti,da830-cppi41"; reg = <0x201000 0x1000 0x202000 0x1000 0x204000 0x4000>; reg-names = "controller", "scheduler", "queuemgr"; interrupts = <58>; #dma-cells = <2>; #dma-channels = <4>; }; };