| Kumar Gala | d0fc2ea | 2008-07-07 11:28:33 -0500 | [diff] [blame] | 1 | Freescale SOC USB controllers | 
 | 2 |  | 
 | 3 | The device node for a USB controller that is part of a Freescale | 
 | 4 | SOC is as described in the document "Open Firmware Recommended | 
 | 5 | Practice : Universal Serial Bus" with the following modifications | 
 | 6 | and additions : | 
 | 7 |  | 
 | 8 | Required properties : | 
 | 9 |  - compatible : Should be "fsl-usb2-mph" for multi port host USB | 
 | 10 |    controllers, or "fsl-usb2-dr" for dual role USB controllers | 
 | 11 |  - phy_type : For multi port host USB controllers, should be one of | 
 | 12 |    "ulpi", or "serial". For dual role USB controllers, should be | 
 | 13 |    one of "ulpi", "utmi", "utmi_wide", or "serial". | 
 | 14 |  - reg : Offset and length of the register set for the device | 
 | 15 |  - port0 : boolean; if defined, indicates port0 is connected for | 
 | 16 |    fsl-usb2-mph compatible controllers.  Either this property or | 
 | 17 |    "port1" (or both) must be defined for "fsl-usb2-mph" compatible | 
 | 18 |    controllers. | 
 | 19 |  - port1 : boolean; if defined, indicates port1 is connected for | 
 | 20 |    fsl-usb2-mph compatible controllers.  Either this property or | 
 | 21 |    "port0" (or both) must be defined for "fsl-usb2-mph" compatible | 
 | 22 |    controllers. | 
 | 23 |  - dr_mode : indicates the working mode for "fsl-usb2-dr" compatible | 
 | 24 |    controllers.  Can be "host", "peripheral", or "otg".  Default to | 
 | 25 |    "host" if not defined for backward compatibility. | 
 | 26 |  | 
 | 27 | Recommended properties : | 
 | 28 |  - interrupts : <a b> where a is the interrupt number and b is a | 
 | 29 |    field that represents an encoding of the sense and level | 
 | 30 |    information for the interrupt.  This should be encoded based on | 
 | 31 |    the information in section 2) depending on the type of interrupt | 
 | 32 |    controller you have. | 
 | 33 |  - interrupt-parent : the phandle for the interrupt controller that | 
 | 34 |    services interrupts for this device. | 
 | 35 |  | 
 | 36 | Example multi port host USB controller device node : | 
 | 37 | 	usb@22000 { | 
 | 38 | 		compatible = "fsl-usb2-mph"; | 
 | 39 | 		reg = <22000 1000>; | 
 | 40 | 		#address-cells = <1>; | 
 | 41 | 		#size-cells = <0>; | 
 | 42 | 		interrupt-parent = <700>; | 
 | 43 | 		interrupts = <27 1>; | 
 | 44 | 		phy_type = "ulpi"; | 
 | 45 | 		port0; | 
 | 46 | 		port1; | 
 | 47 | 	}; | 
 | 48 |  | 
 | 49 | Example dual role USB controller device node : | 
 | 50 | 	usb@23000 { | 
 | 51 | 		compatible = "fsl-usb2-dr"; | 
 | 52 | 		reg = <23000 1000>; | 
 | 53 | 		#address-cells = <1>; | 
 | 54 | 		#size-cells = <0>; | 
 | 55 | 		interrupt-parent = <700>; | 
 | 56 | 		interrupts = <26 1>; | 
 | 57 | 		dr_mode = "otg"; | 
 | 58 | 		phy = "ulpi"; | 
 | 59 | 	}; |