tree eb6d1778bfca92b7c419288d7b2654d28a38d3be
parent 067c1652e7a7d50d951eee1d34a414ea931cee6c
author Chanwoo Choi <cw00.choi@samsung.com> 1469448919 +0900
committer Kishon Vijay Abraham I <kishon@ti.com> 1473506332 +0530

extcon: Add the support for the capability of each property

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 <cw00.choi@samsung.com>
Tested-by: Chris Zhong <zyw@rock-chips.com>
Tested-by: Guenter Roeck <groeck@chromium.org>
Reviewed-by: Guenter Roeck <groeck@chromium.org>
