#
bff3f0e3 |
| 25-Feb-2024 |
Uwe Kleine-König <u.kleine-koenig@pengutronix.de> |
extcon: usbc-cros-ec: Convert to platform remove callback returning void
The .remove() callback for a platform driver returns an int which makes many driver authors wrongly assume it's possible to d
extcon: usbc-cros-ec: Convert to platform remove callback returning void
The .remove() callback for a platform driver returns an int which makes many driver authors wrongly assume it's possible to do error handling by returning an error code. However the value returned is ignored (apart from emitting a warning) and this typically results in resource leaks.
To improve here there is a quest to make the remove callback return void. In the first step of this quest all drivers are converted to .remove_new(), which already returns void. Eventually after all drivers are converted, .remove_new() will be renamed to .remove().
Trivially convert this driver from always returning zero in the remove callback to the void returning variant.
Link: https://lore.kernel.org/lkml/52d0a4317d5372f1135259d4fbbd2822b86ba8f4.1708876186.git.u.kleine-koenig@pengutronix.de/ Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Reviewed-by: Tzung-Bi Shih <tzungbi@kernel.org> Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
show more ...
|
#
8ae4471d |
| 25-Jan-2022 |
Gustavo A. R. Silva <gustavoars@kernel.org> |
extcon: usbc-cros-ec: Use struct_size() helper in kzalloc()
Make use of the struct_size() helper instead of an open-coded version, in order to avoid any potential type mistakes or integer overflows
extcon: usbc-cros-ec: Use struct_size() helper in kzalloc()
Make use of the struct_size() helper instead of an open-coded version, in order to avoid any potential type mistakes or integer overflows that, in the worst scenario, could lead to heap overflows.
Signed-off-by: Gustavo A. R. Silva <gustavoars@kernel.org> Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
show more ...
|
#
840d9f13 |
| 02-Sep-2019 |
Enric Balletbo i Serra <enric.balletbo@collabora.com> |
mfd / platform: cros_ec: Reorganize platform and mfd includes
There is a bit of mess between cros-ec mfd includes and platform includes. For example, we have a linux/mfd/cros_ec.h include that expor
mfd / platform: cros_ec: Reorganize platform and mfd includes
There is a bit of mess between cros-ec mfd includes and platform includes. For example, we have a linux/mfd/cros_ec.h include that exports the interface implemented in platform/chrome/cros_ec_proto.c. Or we have a linux/mfd/cros_ec_commands.h file that is non related to the multifunction device (in the sense that is not exporting any function of the mfd device). This causes crossed includes between mfd and platform/chrome subsystems and makes the code difficult to read, apart from creating 'curious' situations where a platform/chrome driver includes a linux/mfd/cros_ec.h file just to get the exported functions that are implemented in another platform/chrome driver.
In order to have a better separation on what the cros-ec multifunction driver does and what the cros-ec core provides move and rework the affected includes doing:
- Move cros_ec_commands.h to include/linux/platform_data/cros_ec_commands.h - Get rid of the parts that are implemented in the platform/chrome/cros_ec_proto.c driver from include/linux/mfd/cros_ec.h to a new file include/linux/platform_data/cros_ec_proto.h - Update all the drivers with the new includes, so - Drivers that only need to know about the protocol include - linux/platform_data/cros_ec_proto.h - linux/platform_data/cros_ec_commands.h - Drivers that need to know about the cros-ec mfd device also include - linux/mfd/cros_ec.h
Signed-off-by: Enric Balletbo i Serra <enric.balletbo@collabora.com> Acked-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Acked-by: Mark Brown <broonie@kernel.org> Acked-by: Wolfram Sang <wsa@the-dreams.de> Acked-by: Neil Armstrong <narmstrong@baylibre.com> Acked-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Acked-by: Jonathan Cameron <Jonathan.Cameron@huawei.com> Acked-by: Benjamin Tissoires <benjamin.tissoires@redhat.com> Acked-by: Dmitry Torokhov <dmitry.torokhov@gmail.com> Acked-by: Sebastian Reichel <sebastian.reichel@collabora.com> Acked-by: Chanwoo Choi <cw00.choi@samsung.com> Reviewed-by: Gwendal Grignou <gwendal@chromium.org> Tested-by: Gwendal Grignou <gwendal@chromium.org> Series changes: 3 - Fix dereferencing pointer to incomplete type 'struct cros_ec_dev' (lkp) Signed-off-by: Lee Jones <lee.jones@linaro.org>
show more ...
|
#
11bab5a2 |
| 06-Jun-2018 |
Enric Balletbo i Serra <enric.balletbo@collabora.com> |
extcon: usbc-cros-ec: Switch to SPDX identifier.
Adopt the SPDX license identifier headers to ease license compliance management.
Signed-off-by: Enric Balletbo i Serra <enric.balletbo@collabora.com
extcon: usbc-cros-ec: Switch to SPDX identifier.
Adopt the SPDX license identifier headers to ease license compliance management.
Signed-off-by: Enric Balletbo i Serra <enric.balletbo@collabora.com> Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
show more ...
|
#
686b3058 |
| 06-Jun-2018 |
Enric Balletbo i Serra <enric.balletbo@collabora.com> |
extcon: usbc-cros-ec: Make license text and module license match.
The license text is specifying "GPLv2" but the MODULE_LICENSE is set to GPL which means GNU Public License v2 or later. When MODULE_
extcon: usbc-cros-ec: Make license text and module license match.
The license text is specifying "GPLv2" but the MODULE_LICENSE is set to GPL which means GNU Public License v2 or later. When MODULE_LICENSE and boiler plate does not match, go for boiler plate license.
Signed-off-by: Enric Balletbo i Serra <enric.balletbo@collabora.com> Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
show more ...
|
#
c7eb47f9 |
| 13-Dec-2017 |
Benson Leung <bleung@chromium.org> |
extcon: usbc-cros-ec: add support to notify USB type cables.
Extend the driver to notify host and device type cables and the presence of power.
Signed-off-by: Benson Leung <bleung@chromium.org> Sig
extcon: usbc-cros-ec: add support to notify USB type cables.
Extend the driver to notify host and device type cables and the presence of power.
Signed-off-by: Benson Leung <bleung@chromium.org> Signed-off-by: Enric Balletbo i Serra <enric.balletbo@collabora.com> Reviewed-by: Chanwoo Choi <cw00.choi@samsung.com> Acked-by: Lee Jones <lee.jones@linaro.org> Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
show more ...
|
#
176aa360 |
| 21-Sep-2017 |
Chanwoo Choi <cw00.choi@samsung.com> |
extcon: Split out extcon header file for consumer and provider device
The extcon has two type of extcon devices as following. - 'extcon provider deivce' adds new extcon device and detect the stat
extcon: Split out extcon header file for consumer and provider device
The extcon has two type of extcon devices as following. - 'extcon provider deivce' adds new extcon device and detect the state/properties of external connector. Also, it notifies the state/properties to the extcon consumer device. - 'extcon consumer device' gets the change state/properties from extcon provider device. Prior to that, include/linux/extcon.h contains all exported API for both provider and consumer device driver. To clarify the meaning of header file and to remove the wrong use-case on consumer device, this patch separates into extcon.h and extcon-provider.h.
[Description for include/linux/{extcon.h|extcon-provider.h}] - extcon.h includes the extcon API and data structure for extcon consumer device driver. This header file contains the following APIs: : Register/unregister the notifier to catch the change of extcon device : Get the extcon device instance : Get the extcon device name : Get the state of each external connector : Get the property value of each external connector : Get the property capability of each external connector
- extcon-provider.h includes the extcon API and data structure for extcon provider device driver. This header file contains the following APIs: : Include 'include/linux/extcon.h' : Allocate the memory for extcon device instance : Register/unregister extcon device : Set the state of each external connector : Set the property value of each external connector : Set the property capability of each external connector
Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com> Acked-by: Sebastian Reichel <sebastian.reichel@collabora.co.uk> Acked-by: Chen-Yu Tsai <wens@csie.org> Acked-by: Charles Keepax <ckeepax@opensource.cirrus.com> Acked-by: Lee Jones <lee.jones@linaro.org> Acked-by: Felipe Balbi <felipe.balbi@linux.intel.com> Acked-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com> Acked-by: Kishon Vijay Abraham I <kishon@ti.com>
show more ...
|
#
1cf76c4e |
| 07-Aug-2017 |
Christophe JAILLET <christophe.jaillet@wanadoo.fr> |
extcon: cros-ec: Fix a potential NULL pointer dereference
Return -ENOMEM in case of memory allocation failure. This avoids a NULL pointer dereference.
Fixes: c69831666109 ("extcon: cros-ec: Add ext
extcon: cros-ec: Fix a potential NULL pointer dereference
Return -ENOMEM in case of memory allocation failure. This avoids a NULL pointer dereference.
Fixes: c69831666109 ("extcon: cros-ec: Add extcon-cros-ec driver to support display out") Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr> Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
show more ...
|
#
c6983166 |
| 17-Jul-2017 |
Benson Leung <bleung@chromium.org> |
extcon: cros-ec: Add extcon-cros-ec driver to support display out
This is the driver for the USB Type C cable detection mechanism built into the ChromeOS Embedded Controller on systems that have USB
extcon: cros-ec: Add extcon-cros-ec driver to support display out
This is the driver for the USB Type C cable detection mechanism built into the ChromeOS Embedded Controller on systems that have USB Type-C ports.
At present, this allows for the presence of display out, but in future, it may also be used to notify host and device type cables and the presence of power.
Signed-off-by: Benson Leung <bleung@chromium.org> Signed-off-by: Enric Balletbo i Serra <enric.balletbo@collabora.com> Acked-by: Chanwoo Choi <cw00.chio@samsung.com> Acked-by: Lee Jones <lee.jones@linaro.org> Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
show more ...
|