| What:        /sys/class/extcon/.../ | 
| Date:        February 2012 | 
| Contact:    MyungJoo Ham <myungjoo.ham@samsung.com> | 
| Description: | 
|         Provide a place in sysfs for the extcon objects. | 
|         This allows accessing extcon specific variables. | 
|         The name of extcon object denoted as ... is the name given | 
|         with extcon_dev_register. | 
|   | 
|         One extcon device denotes a single external connector | 
|         port. An external connector may have multiple cables | 
|         attached simultaneously. Many of docks, cradles, and | 
|         accessory cables have such capability. For example, | 
|         the 30-pin port of Nuri board (/arch/arm/mach-exynos) | 
|         may have both HDMI and Charger attached, or analog audio, | 
|         video, and USB cables attached simultaneously. | 
|   | 
|         If there are cables mutually exclusive with each other, | 
|         such binary relations may be expressed with extcon_dev's | 
|         mutually_exclusive array. | 
|   | 
| What:        /sys/class/extcon/.../name | 
| Date:        February 2012 | 
| Contact:    MyungJoo Ham <myungjoo.ham@samsung.com> | 
| Description: | 
|         The /sys/class/extcon/.../name shows the name of the extcon | 
|         object. If the extcon object has an optional callback | 
|         "show_name" defined, the callback will provide the name with | 
|         this sysfs node. | 
|   | 
| What:        /sys/class/extcon/.../state | 
| Date:        February 2012 | 
| Contact:    MyungJoo Ham <myungjoo.ham@samsung.com> | 
| Description: | 
|         The /sys/class/extcon/.../state shows and stores the cable | 
|         attach/detach information of the corresponding extcon object. | 
|         If the extcon object has an optional callback "show_state" | 
|         defined, the showing function is overridden with the optional | 
|         callback. | 
|   | 
|         If the default callback for showing function is used, the | 
|         format is like this:: | 
|   | 
|             # cat state | 
|             USB_OTG=1 | 
|             HDMI=0 | 
|             TA=1 | 
|             EAR_JACK=0 | 
|             # | 
|   | 
|         In this example, the extcon device has USB_OTG and TA | 
|         cables attached and HDMI and EAR_JACK cables detached. | 
|   | 
|         In order to update the state of an extcon device, enter a hex | 
|         state number starting with 0x:: | 
|   | 
|             # echo 0xHEX > state | 
|   | 
|         This updates the whole state of the extcon device. | 
|         Inputs of all the methods are required to meet the | 
|         mutually_exclusive conditions if they exist. | 
|   | 
|         It is recommended to use this "global" state interface if | 
|         you need to set the value atomically. The later state | 
|         interface associated with each cable cannot update | 
|         multiple cable states of an extcon device simultaneously. | 
|   | 
| What:        /sys/class/extcon/.../cable.x/name | 
| Date:        February 2012 | 
| Contact:    MyungJoo Ham <myungjoo.ham@samsung.com> | 
| Description: | 
|         The /sys/class/extcon/.../cable.x/name shows the name of cable | 
|         "x" (integer between 0 and 31) of an extcon device. | 
|   | 
| What:        /sys/class/extcon/.../cable.x/state | 
| Date:        February 2012 | 
| Contact:    MyungJoo Ham <myungjoo.ham@samsung.com> | 
| Description: | 
|         The /sys/class/extcon/.../cable.x/state shows and stores the | 
|         state of cable "x" (integer between 0 and 31) of an extcon | 
|         device. The state value is either 0 (detached) or 1 | 
|         (attached). | 
|   | 
| What:        /sys/class/extcon/.../mutually_exclusive/... | 
| Date:        December 2011 | 
| Contact:    MyungJoo Ham <myungjoo.ham@samsung.com> | 
| Description: | 
|         Shows the relations of mutually exclusiveness. For example, | 
|         if the mutually_exclusive array of extcon device is | 
|         {0x3, 0x5, 0xC, 0x0}, then the output is:: | 
|   | 
|             # ls mutually_exclusive/ | 
|             0x3 | 
|             0x5 | 
|             0xc | 
|             # | 
|   | 
|         Note that mutually_exclusive is a sub-directory of the extcon | 
|         device and the file names under the mutually_exclusive | 
|         directory show the mutually-exclusive sets, not the contents | 
|         of the files. |