Detailed description for this pull request:
1. Support the extcon property and add the synchronization APIs.
- This feature supports the extcon property for external connector
because each external connector might have the property according to
the H/W design.
- The property name should keep the following style.
: 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 support the extcon property.
: extcon_set_property()
: extcon_get_property()
: extcon_set_property_capability()
: extcon_get_property_capability()
- Add the new synchronization extcon APIs.
: This feature adds the synchronization extcon APIs to support the noti
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().
: extcon_sync()
: extcon_set_state_sync()
: extcon_set_property_sync()
- Change the name of existing APIs.
: extcon_set_cable_state_() -> extcon_set_cable()
: extcon_get_cable_state_() -> extcon_get_cable()
2. Add the extcon type to group the connector into five category.
- 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
3. Add the new property for external connector.
- EXTCON_PROP_USB_VBUS
- EXTCON_PROP_USB_TYPEC_POLARITY
- EXTCON_PROP_USB_SS (SuperSpeed)
- EXTCON_PROP_DISP_HPD (Hot Plug Detect)
4. Add the new type of external connector.
- EXTCON_DISP_DP : Display Port
- EXTCON_DISP_HMD : Head Mounted Device
- EXTCON_CHG_WPT : Wireless Power Transfer device
5. Add the new extcon driver.
- Qualcomm SPMI PMIC USB id detection driver detects whether
EXTCON_USB_HOST is attached or detached. (extcon-qcom-spmi-mis.c)
6. Remove the usage of extcon_update_state() and old extcon_set_state()
- Both extcon_update_state() and extcon_set_state() should change the state
of all external connectors with bit masking handling. It may occur the
problem. Instead, extcon provides the extcon_set/get_state() functions.
7. Fix the minor issues on extcon drivers.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1
iQIcBAABAgAGBQJX15NdAAoJEJzN3yze689THBUP/jnchjajptYuKY/Y/TkDfdHF
ffEQX/V4lJ1rZfQe4TOWf/f4Pa/+AssFXlOH08in9mAqphsYVZb6d05yVxZgK2cA
3C0JH2SigpcnpIbxDAmz+IuJCzA9BIyhj3+qqzo72vRE8lS+CBQk0jsuQgbNVRG+
T9Dg7GvqcWOpvlGXFhMszznYMQIXfnYSuY4JbT5YjEN6k7qC+fYPwyXN7iJfZ70r
B9mQwjynimE82VV7xfeYwUhoXCSu+MS8YlfxayWP7p8//kNyID17LjCZttH/deF4
bMr+PfUmn3Uv8PoOQL+hONRruVNbzp8fPaBERk1G/7CS9Gtf1jZUHYyG4Hn7cmpt
i/WAvFc2aDJyZEzVRborbnZ4KAwas8ftfNy13fIzsXKwPg6FKoIGoj8+4cxO61fc
rP+GDWpCOheCMLI9oRuXM1Ub6f8z5uZl3xDgWuGb2LCp7uquIC483AaZAKqpPNll
Xo4oLFTWecyA0lt1FsHC/qTbSW104VtYeQv644zsDTMyVvarQ4daf9lce9Qw5dYc
jM2EN8CYHw38jpgFquNXqRArNoTbdsLWQ9shv6MlQNguX8hao6lZZgFtWYq9j3dj
I1YjkyyYyr5VwF+xUjTQFrLWXPZ77/7LRwgeifcIPI3MC+tYFhhBojIT709ri8L/
QwgUF2ukSoPxPVT/jUVv
=LF4N
-----END PGP SIGNATURE-----
Merge tag 'extcon-next-for-4.9' of git://git.kernel.org/pub/scm/linux/kernel/git/chanwoo/extcon into usb-testing
Chanwoo writes:
Update extcon for 4.9
Detailed description for this pull request:
1. Support the extcon property and add the synchronization APIs.
- This feature supports the extcon property for external connector
because each external connector might have the property according to
the H/W design.
- The property name should keep the following style.
: 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 support the extcon property.
: extcon_set_property()
: extcon_get_property()
: extcon_set_property_capability()
: extcon_get_property_capability()
- Add the new synchronization extcon APIs.
: This feature adds the synchronization extcon APIs to support the noti
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().
: extcon_sync()
: extcon_set_state_sync()
: extcon_set_property_sync()
- Change the name of existing APIs.
: extcon_set_cable_state_() -> extcon_set_cable()
: extcon_get_cable_state_() -> extcon_get_cable()
2. Add the extcon type to group the connector into five category.
- 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
3. Add the new property for external connector.
- EXTCON_PROP_USB_VBUS
- EXTCON_PROP_USB_TYPEC_POLARITY
- EXTCON_PROP_USB_SS (SuperSpeed)
- EXTCON_PROP_DISP_HPD (Hot Plug Detect)
4. Add the new type of external connector.
- EXTCON_DISP_DP : Display Port
- EXTCON_DISP_HMD : Head Mounted Device
- EXTCON_CHG_WPT : Wireless Power Transfer device
5. Add the new extcon driver.
- Qualcomm SPMI PMIC USB id detection driver detects whether
EXTCON_USB_HOST is attached or detached. (extcon-qcom-spmi-mis.c)
6. Remove the usage of extcon_update_state() and old extcon_set_state()
- Both extcon_update_state() and extcon_set_state() should change the state
of all external connectors with bit masking handling. It may occur the
problem. Instead, extcon provides the extcon_set/get_state() functions.
7. Fix the minor issues on extcon drivers.