| 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 | 
| Anatolij Gustschin | 230f7ed | 2010-09-28 20:55:21 +0200 | [diff] [blame] | 11 |    or "fsl,mpc5121-usb2-dr" for dual role USB controllers of MPC5121 | 
| Kumar Gala | d0fc2ea | 2008-07-07 11:28:33 -0500 | [diff] [blame] | 12 |  - phy_type : For multi port host USB controllers, should be one of | 
 | 13 |    "ulpi", or "serial". For dual role USB controllers, should be | 
 | 14 |    one of "ulpi", "utmi", "utmi_wide", or "serial". | 
 | 15 |  - reg : Offset and length of the register set for the device | 
 | 16 |  - port0 : boolean; if defined, indicates port0 is connected for | 
 | 17 |    fsl-usb2-mph compatible controllers.  Either this property or | 
 | 18 |    "port1" (or both) must be defined for "fsl-usb2-mph" compatible | 
 | 19 |    controllers. | 
 | 20 |  - port1 : boolean; if defined, indicates port1 is connected for | 
 | 21 |    fsl-usb2-mph compatible controllers.  Either this property or | 
 | 22 |    "port0" (or both) must be defined for "fsl-usb2-mph" compatible | 
 | 23 |    controllers. | 
 | 24 |  - dr_mode : indicates the working mode for "fsl-usb2-dr" compatible | 
 | 25 |    controllers.  Can be "host", "peripheral", or "otg".  Default to | 
 | 26 |    "host" if not defined for backward compatibility. | 
 | 27 |  | 
 | 28 | Recommended properties : | 
 | 29 |  - interrupts : <a b> where a is the interrupt number and b is a | 
 | 30 |    field that represents an encoding of the sense and level | 
 | 31 |    information for the interrupt.  This should be encoded based on | 
 | 32 |    the information in section 2) depending on the type of interrupt | 
 | 33 |    controller you have. | 
 | 34 |  - interrupt-parent : the phandle for the interrupt controller that | 
 | 35 |    services interrupts for this device. | 
 | 36 |  | 
| Anatolij Gustschin | 230f7ed | 2010-09-28 20:55:21 +0200 | [diff] [blame] | 37 | Optional properties : | 
 | 38 |  - fsl,invert-drvvbus : boolean; for MPC5121 USB0 only. Indicates the | 
 | 39 |    port power polarity of internal PHY signal DRVVBUS is inverted. | 
 | 40 |  - fsl,invert-pwr-fault : boolean; for MPC5121 USB0 only. Indicates | 
 | 41 |    the PWR_FAULT signal polarity is inverted. | 
 | 42 |  | 
| Kumar Gala | d0fc2ea | 2008-07-07 11:28:33 -0500 | [diff] [blame] | 43 | Example multi port host USB controller device node : | 
 | 44 | 	usb@22000 { | 
 | 45 | 		compatible = "fsl-usb2-mph"; | 
 | 46 | 		reg = <22000 1000>; | 
 | 47 | 		#address-cells = <1>; | 
 | 48 | 		#size-cells = <0>; | 
 | 49 | 		interrupt-parent = <700>; | 
 | 50 | 		interrupts = <27 1>; | 
 | 51 | 		phy_type = "ulpi"; | 
 | 52 | 		port0; | 
 | 53 | 		port1; | 
 | 54 | 	}; | 
 | 55 |  | 
 | 56 | Example dual role USB controller device node : | 
 | 57 | 	usb@23000 { | 
 | 58 | 		compatible = "fsl-usb2-dr"; | 
 | 59 | 		reg = <23000 1000>; | 
 | 60 | 		#address-cells = <1>; | 
 | 61 | 		#size-cells = <0>; | 
 | 62 | 		interrupt-parent = <700>; | 
 | 63 | 		interrupts = <26 1>; | 
 | 64 | 		dr_mode = "otg"; | 
 | 65 | 		phy = "ulpi"; | 
 | 66 | 	}; | 
| Anatolij Gustschin | 230f7ed | 2010-09-28 20:55:21 +0200 | [diff] [blame] | 67 |  | 
 | 68 | Example dual role USB controller device node for MPC5121ADS: | 
 | 69 |  | 
 | 70 | 	usb@4000 { | 
 | 71 | 		compatible = "fsl,mpc5121-usb2-dr"; | 
 | 72 | 		reg = <0x4000 0x1000>; | 
 | 73 | 		#address-cells = <1>; | 
 | 74 | 		#size-cells = <0>; | 
 | 75 | 		interrupt-parent = < &ipic >; | 
 | 76 | 		interrupts = <44 0x8>; | 
 | 77 | 		dr_mode = "otg"; | 
 | 78 | 		phy_type = "utmi_wide"; | 
 | 79 | 		fsl,invert-drvvbus; | 
 | 80 | 		fsl,invert-pwr-fault; | 
 | 81 | 	}; |