Re: [PATCH v3 2/3] power: supply: add cros-ec USBPD charger driver.

From: Sebastian Reichel
Date: Wed May 02 2018 - 06:57:20 EST


Hi,

I found one more issue, otherwise the driver looks fine to me.

On Wed, May 02, 2018 at 11:53:42AM +0200, Enric Balletbo i Serra wrote:
> This driver gets various bits of information about what is connected to
> USB PD ports from the EC and converts that into power_supply properties.
>
> Signed-off-by: Sameer Nanda <snanda@xxxxxxxxxxxx>
> Signed-off-by: Enric Balletbo i Serra <enric.balletbo@xxxxxxxxxxxxx>
> Acked-by: Lee Jones <lee.jones@xxxxxxxxxx>
> ---
[...]
> +static int cros_usbpd_charger_probe(struct platform_device *pd)
> +{
[...]
> + for (i = 0; i < charger->num_charger_ports; i++) {
[...]
> + psy = devm_power_supply_register_no_ws(dev, psy_desc,
> + &psy_cfg);
[...]
> + ec_device->charger = psy;
> + }
[...]
> diff --git a/include/linux/mfd/cros_ec.h b/include/linux/mfd/cros_ec.h
> index f36125ee9245..a1eb39344231 100644
> --- a/include/linux/mfd/cros_ec.h
> +++ b/include/linux/mfd/cros_ec.h
> @@ -19,6 +19,7 @@
> #include <linux/cdev.h>
> #include <linux/device.h>
> #include <linux/notifier.h>
> +#include <linux/power_supply.h>
> #include <linux/mfd/cros_ec_commands.h>
> #include <linux/mutex.h>
>
> @@ -143,6 +144,7 @@ struct cros_ec_device {
> struct cros_ec_command *msg);
> int (*pkt_xfer)(struct cros_ec_device *ec,
> struct cros_ec_command *msg);
> + struct power_supply *charger;
> struct mutex lock;
> bool mkbp_event_supported;
> struct blocking_notifier_head event_notifier;

I think cros_ec_device->charger can be dropped:

* It is not cleared on power-supply removal
* It randomly points to the last registered power-supply
* It is only set, but never used

-- Sebastian

Attachment: signature.asc
Description: PGP signature