<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/drivers/extcon/extcon.c, branch v4.9</title>
<subtitle>Mirror of https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/
</subtitle>
<id>https://git.shady.money/linux/atom?h=v4.9</id>
<link rel='self' href='https://git.shady.money/linux/atom?h=v4.9'/>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/'/>
<updated>2016-08-08T02:17:23Z</updated>
<entry>
<title>extcon: Add new EXTCON_CHG_WPT for Wireless Power Transfer device</title>
<updated>2016-08-08T02:17:23Z</updated>
<author>
<name>Chanwoo Choi</name>
<email>cw00.choi@samsung.com</email>
</author>
<published>2016-08-05T09:15:46Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=7fe95fb889faf07ee438384858d38b820973397e'/>
<id>urn:sha1:7fe95fb889faf07ee438384858d38b820973397e</id>
<content type='text'>
This patchs add the new EXTCON_CHG_WPT for Wireless Power Transfer[1].
The Wireless Power Transfer is the transmission of electronical energy
from a power source. The EXTCON_CHG_WPT has the EXTCON_TYPE_CHG.

[1] https://en.wikipedia.org/wiki/Wireless_power_transfer

Signed-off-by: Chanwoo Choi &lt;cw00.choi@samsung.com&gt;
</content>
</entry>
<entry>
<title>extcon: Add new EXTCON_DISP_HMD for Head-mounted Display device</title>
<updated>2016-08-08T02:17:23Z</updated>
<author>
<name>Chanwoo Choi</name>
<email>cw00.choi@samsung.com</email>
</author>
<published>2016-08-05T08:49:23Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=9c0595d688e9deb337ff8901bb25281cdb19050b'/>
<id>urn:sha1:9c0595d688e9deb337ff8901bb25281cdb19050b</id>
<content type='text'>
This patch adds the new EXTCON_DISP_HMD id for Head-mounted Display[1] device.
The HMD device is usually for USB connector type So, the HMD connector
has the two extcon types of both EXTCON_TYPE_DISP and EXTCON_TYPE_USB.

[1] https://en.wikipedia.org/wiki/Head-mounted_display

Signed-off-by: Chanwoo Choi &lt;cw00.choi@samsung.com&gt;
</content>
</entry>
<entry>
<title>extcon: Add EXTCON_DISP_DP and the property for USB Type-C</title>
<updated>2016-08-08T02:17:23Z</updated>
<author>
<name>Chris Zhong</name>
<email>zyw@rock-chips.com</email>
</author>
<published>2016-07-21T16:13:02Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=2164188d57f8862f1b69e2c5b7c0585f01077bee'/>
<id>urn:sha1:2164188d57f8862f1b69e2c5b7c0585f01077bee</id>
<content type='text'>
Add EXTCON_DISP_DP for the Display external connector. For Type-C
connector the DisplayPort can work as an Alternate Mode(VESA DisplayPort
Alt Mode on USB Type-C Standard). The Type-C support both normal
and flipped orientation, so add a property to extcon.

Signed-off-by: Chris Zhong &lt;zyw@rock-chips.com&gt;
Signed-off-by: Chanwoo Choi &lt;cw00.choi@samsung.com&gt;
Tested-by: Chris Zhong &lt;zyw@rock-chips.com&gt;
Tested-by: Guenter Roeck &lt;groeck@chromium.org&gt;
Reviewed-by: Guenter Roeck &lt;groeck@chromium.org&gt;
</content>
</entry>
<entry>
<title>extcon: Add the synchronization extcon APIs to support the notification</title>
<updated>2016-08-08T02:17:22Z</updated>
<author>
<name>Chanwoo Choi</name>
<email>cw00.choi@samsung.com</email>
</author>
<published>2016-07-22T04:16:34Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=ab11af049f88f059a73f679fb050bd7abb98d24b'/>
<id>urn:sha1:ab11af049f88f059a73f679fb050bd7abb98d24b</id>
<content type='text'>
This patch adds the synchronization extcon APIs to support the notifications
for both state and property. When extcon_*_sync() functions is called,
the extcon informs the information from extcon provider to extcon client.

The extcon driver may need to change the both state and multiple properties
at the same time. After setting the data of a external connector,
the extcon send the notification to client driver with the extcon_*_sync().

The list of new extcon APIs as following:
- extcon_sync() : Send the notification for each external connector to
		synchronize the information between extcon provider driver
		and extcon client driver.
- extcon_set_state_sync() : Set the state of external connector with noti.
- extcon_set_property_sync() : Set the property of external connector with noti.

For example,
case 1, change the state of external connector and synchronized the data.
	extcon_set_state_sync(edev, EXTCON_USB, 1);

case 2, change both the state and property of external connector
	and synchronized the data.
	extcon_set_state(edev, EXTCON_USB, 1);
	extcon_set_property(edev, EXTCON_USB, EXTCON_PROP_USB_VBUS 1);
	extcon_sync(edev, EXTCON_USB);

case 3, change the property of external connector and synchronized the data.
	extcon_set_property(edev, EXTCON_USB, EXTCON_PROP_USB_VBUS, 0);
	extcon_sync(edev, EXTCON_USB);

case 4, change the property of external connector and synchronized the data.
	extcon_set_property_sync(edev, EXTCON_USB, EXTCON_PROP_USB_VBUS, 0);

Signed-off-by: Chanwoo Choi &lt;cw00.choi@samsung.com&gt;
Tested-by: Chris Zhong &lt;zyw@rock-chips.com&gt;
Tested-by: Guenter Roeck &lt;groeck@chromium.org&gt;
Reviewed-by: Guenter Roeck &lt;groeck@chromium.org&gt;
</content>
</entry>
<entry>
<title>extcon: Rename the extcon_set/get_state() to maintain the function naming pattern</title>
<updated>2016-08-08T02:17:22Z</updated>
<author>
<name>Chanwoo Choi</name>
<email>cw00.choi@samsung.com</email>
</author>
<published>2016-07-22T04:03:17Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=575c2b867ee0c2affdd309f375c032c0c7dc219c'/>
<id>urn:sha1:575c2b867ee0c2affdd309f375c032c0c7dc219c</id>
<content type='text'>
This patch just renames the existing extcon_get/set_cable_state_()
as following because of maintaining the function naming pattern
like as extcon APIs for property.
- extcon_set_cable_state_() -&gt; extcon_set_state()
- extcon_get_cable_state_() -&gt; extcon_get_state()

But, this patch remains the old extcon_set/get_cable_state_() functions
to prevent the build break. After altering new APIs, remove the old APIs.

Signed-off-by: Chanwoo Choi &lt;cw00.choi@samsung.com&gt;
Tested-by: Chris Zhong &lt;zyw@rock-chips.com&gt;
Tested-by: Guenter Roeck &lt;groeck@chromium.org&gt;
Reviewed-by: Guenter Roeck &lt;groeck@chromium.org&gt;
</content>
</entry>
<entry>
<title>extcon: Add the support for the capability of each property</title>
<updated>2016-08-08T02:17:22Z</updated>
<author>
<name>Chanwoo Choi</name>
<email>cw00.choi@samsung.com</email>
</author>
<published>2016-07-25T12:15:19Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=7f2a0a1699b51bfd738f1e0b15e057996fe1f259'/>
<id>urn:sha1:7f2a0a1699b51bfd738f1e0b15e057996fe1f259</id>
<content type='text'>
This patch adds the support of the property capability setting. This function
decides the supported properties of each external connector on extcon provider
driver.

Ths list of new extcon APIs to get/set the capability of property as following:
- int extcon_get_property_capability(struct extcon_dev *edev,
					unsigned int id, unsigned int prop);
- int extcon_set_property_capability(struct extcon_dev *edev,
					unsigned int id, unsigned int prop);

Signed-off-by: Chanwoo Choi &lt;cw00.choi@samsung.com&gt;
Tested-by: Chris Zhong &lt;zyw@rock-chips.com&gt;
Tested-by: Guenter Roeck &lt;groeck@chromium.org&gt;
Reviewed-by: Guenter Roeck &lt;groeck@chromium.org&gt;
</content>
</entry>
<entry>
<title>extcon: Add the support for extcon property according to extcon type</title>
<updated>2016-08-08T02:17:22Z</updated>
<author>
<name>Chanwoo Choi</name>
<email>cw00.choi@samsung.com</email>
</author>
<published>2016-07-11T10:30:43Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=792e7e9e5d4358bc6157152b2c07b94eb9e261b0'/>
<id>urn:sha1:792e7e9e5d4358bc6157152b2c07b94eb9e261b0</id>
<content type='text'>
This patch support the extcon property for the external connector
because each external connector might have the property according to
the H/W design and the specific characteristics.

- EXTCON_PROP_USB_[property name]
- EXTCON_PROP_CHG_[property name]
- EXTCON_PROP_JACK_[property name]
- EXTCON_PROP_DISP_[property name]

Add the new extcon APIs to get/set the property value as following:
- int extcon_get_property(struct extcon_dev *edev, unsigned int id,
			unsigned int prop,
			union extcon_property_value *prop_val)
- int extcon_set_property(struct extcon_dev *edev, unsigned int id,
			unsigned int prop,
			union extcon_property_value prop_val)

Signed-off-by: Chanwoo Choi &lt;cw00.choi@samsung.com&gt;
Tested-by: Chris Zhong &lt;zyw@rock-chips.com&gt;
Tested-by: Guenter Roeck &lt;groeck@chromium.org&gt;
Reviewed-by: Guenter Roeck &lt;groeck@chromium.org&gt;
</content>
</entry>
<entry>
<title>extcon: Add the extcon_type to gather each connector into five category</title>
<updated>2016-08-08T02:17:20Z</updated>
<author>
<name>Chanwoo Choi</name>
<email>cw00.choi@samsung.com</email>
</author>
<published>2016-07-11T07:34:52Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=55e4e2f129c6664c14166a30f4e0e933ebb61d9b'/>
<id>urn:sha1:55e4e2f129c6664c14166a30f4e0e933ebb61d9b</id>
<content type='text'>
This patch adds the new extcon type to group the each connecotr
into following five category. This type would be used to handle
the connectors as a group unit instead of a connector unit.
- EXTCON_TYPE_USB  : USB connector
- EXTCON_TYPE_CHG  : Charger connector
- EXTCON_TYPE_JACK : Jack connector
- EXTCON_TYPE_DISP : Display connector
- EXTCON_TYPE_MISC : Miscellaneous connector

Also, each external connector is possible to belong to one more extcon type.
In caes of EXTCON_CHG_USB_SDP, it have the EXTCON_TYPE_CHG and EXTCON_TYPE_USB.

Signed-off-by: Chanwoo Choi &lt;cw00.choi@samsung.com&gt;
Tested-by: Chris Zhong &lt;zyw@rock-chips.com&gt;
Tested-by: Guenter Roeck &lt;groeck@chromium.org&gt;
Signed-off-by: MyungJoo Ham &lt;myungjoo.ham@samsung.com&gt;
Reviewed-by: Guenter Roeck &lt;groeck@chromium.org&gt;
</content>
</entry>
<entry>
<title>extcon: Fix compile time warning</title>
<updated>2016-08-08T01:58:37Z</updated>
<author>
<name>Maninder Singh</name>
<email>maninder1.s@samsung.com</email>
</author>
<published>2016-08-01T09:21:30Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=2c8116a1110a93f298b10339d773fb055a0c04d7'/>
<id>urn:sha1:2c8116a1110a93f298b10339d773fb055a0c04d7</id>
<content type='text'>
This patch fixes below compilation warning:-
drivers/extcon/extcon.c: In function extcon_register_notifier:
drivers/extcon/extcon.c:455:6: warning: idx may be used uninitialized in this function [-Wmaybe-uninitialized]
   if (idx &gt;= 0) {

Signed-off-by: Vaneet Narang &lt;v.narang@samsung.com&gt;
Signed-off-by: Maninder Singh &lt;maninder1.s@samsung.com&gt;
[cw00.choi : Modify the patch title using the a captical letter for first char]
Signed-off-by: Chanwoo Choi &lt;cw00.choi@samsung.com&gt;
</content>
</entry>
<entry>
<title>extcon: Block the bit masking operation for cable state except for extcon core</title>
<updated>2016-08-08T01:58:36Z</updated>
<author>
<name>Chanwoo Choi</name>
<email>cw00.choi@samsung.com</email>
</author>
<published>2016-06-30T17:41:18Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=912465bcf869660900cf77c4761869048f3ff063'/>
<id>urn:sha1:912465bcf869660900cf77c4761869048f3ff063</id>
<content type='text'>
This patch restrict the usage of extcon_update_state() in the extcon
core because the extcon_update_state() use the bit masking to change
the state of external connector. When this function is used in device drivers,
it may occur the probelm with the handling mistake of bit masking.

Also, this patch removes the extcon_get/set_state() functions because these
functions use the bit masking which is reluctant way. Instead, extcon
provides the extcon_set/get_cable_state_() functions.

Signed-off-by: Chanwoo Choi &lt;cw00.choi@samsung.com&gt;
</content>
</entry>
</feed>
