diff mbox series

[v2] power: supply: Allow charger manager can be built as a module

Message ID 5e098be25c70e07c37e743f84a901f6f756090e0.1583461755.git.baolin.wang7@gmail.com (mailing list archive)
State Not Applicable, archived
Headers show
Series [v2] power: supply: Allow charger manager can be built as a module | expand

Commit Message

Baolin Wang March 6, 2020, 2:34 a.m. UTC
Allow charger manager can be built as a module like other charger
drivers.

Signed-off-by: Baolin Wang <baolin.wang7@gmail.com>
---
Changes from v1:
 - Use IS_ENABLED() instead.
---
 drivers/power/supply/Kconfig          | 2 +-
 include/linux/power/charger-manager.h | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

Comments

Sebastian Reichel March 6, 2020, 8:47 p.m. UTC | #1
Hi,

On Fri, Mar 06, 2020 at 10:34:10AM +0800, Baolin Wang wrote:
> Allow charger manager can be built as a module like other charger
> drivers.
> 
> Signed-off-by: Baolin Wang <baolin.wang7@gmail.com>
> ---

Thanks, queued. I do not like this driver, but its the best we have
at the moment.

-- Sebastian

> Changes from v1:
>  - Use IS_ENABLED() instead.
> ---
>  drivers/power/supply/Kconfig          | 2 +-
>  include/linux/power/charger-manager.h | 2 +-
>  2 files changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/power/supply/Kconfig b/drivers/power/supply/Kconfig
> index 9a5591a..195bc04 100644
> --- a/drivers/power/supply/Kconfig
> +++ b/drivers/power/supply/Kconfig
> @@ -480,7 +480,7 @@ config CHARGER_GPIO
>  	  called gpio-charger.
>  
>  config CHARGER_MANAGER
> -	bool "Battery charger manager for multiple chargers"
> +	tristate "Battery charger manager for multiple chargers"
>  	depends on REGULATOR
>  	select EXTCON
>  	help
> diff --git a/include/linux/power/charger-manager.h b/include/linux/power/charger-manager.h
> index ad19e68..ae94dce 100644
> --- a/include/linux/power/charger-manager.h
> +++ b/include/linux/power/charger-manager.h
> @@ -248,7 +248,7 @@ struct charger_manager {
>  	u64 charging_end_time;
>  };
>  
> -#ifdef CONFIG_CHARGER_MANAGER
> +#if IS_ENABLED(CONFIG_CHARGER_MANAGER)
>  extern void cm_notify_event(struct power_supply *psy,
>  				enum cm_event_types type, char *msg);
>  #else
> -- 
> 1.9.1
>
Baolin Wang March 9, 2020, 3:20 a.m. UTC | #2
Hi Sebastian,

On Sat, Mar 7, 2020 at 4:47 AM Sebastian Reichel <sre@kernel.org> wrote:
>
> Hi,
>
> On Fri, Mar 06, 2020 at 10:34:10AM +0800, Baolin Wang wrote:
> > Allow charger manager can be built as a module like other charger
> > drivers.
> >
> > Signed-off-by: Baolin Wang <baolin.wang7@gmail.com>
> > ---
>
> Thanks, queued. I do not like this driver, but its the best we have
> at the moment.

Thanks. I understood your concern, do you have any plan to re-design
the charger manager driver in kernel? Or do you have some thoughts
about re-designing it? Now we have some out of tree code to use the
old charger manger, and we'd like to change to the new charger manger
driver and upstream them.
Sebastian Reichel March 11, 2020, 10:18 p.m. UTC | #3
Hi,

On Mon, Mar 09, 2020 at 11:20:41AM +0800, Baolin Wang wrote:
> On Sat, Mar 7, 2020 at 4:47 AM Sebastian Reichel <sre@kernel.org> wrote:
> > On Fri, Mar 06, 2020 at 10:34:10AM +0800, Baolin Wang wrote:
> > > Allow charger manager can be built as a module like other charger
> > > drivers.
> > >
> > > Signed-off-by: Baolin Wang <baolin.wang7@gmail.com>
> > > ---
> >
> > Thanks, queued. I do not like this driver, but its the best we have
> > at the moment.
> 
> Thanks. I understood your concern, do you have any plan to re-design
> the charger manager driver in kernel? Or do you have some thoughts
> about re-designing it? Now we have some out of tree code to use the
> old charger manger, and we'd like to change to the new charger manger
> driver and upstream them.

I don't have anything ready yet and not enough time unfortunately.
The proper way would be to have something equivialent to charger-manager
in the power-supply core. The core should be able to monitor batteries
and handle connected chargers automatically.  Also there shouldn't be
any DT entry for the software managing the charger, since DT is about
hardware.

-- Sebastian
Baolin Wang March 12, 2020, 2:35 a.m. UTC | #4
On Thu, Mar 12, 2020 at 6:18 AM Sebastian Reichel <sre@kernel.org> wrote:
>
> Hi,
>
> On Mon, Mar 09, 2020 at 11:20:41AM +0800, Baolin Wang wrote:
> > On Sat, Mar 7, 2020 at 4:47 AM Sebastian Reichel <sre@kernel.org> wrote:
> > > On Fri, Mar 06, 2020 at 10:34:10AM +0800, Baolin Wang wrote:
> > > > Allow charger manager can be built as a module like other charger
> > > > drivers.
> > > >
> > > > Signed-off-by: Baolin Wang <baolin.wang7@gmail.com>
> > > > ---
> > >
> > > Thanks, queued. I do not like this driver, but its the best we have
> > > at the moment.
> >
> > Thanks. I understood your concern, do you have any plan to re-design
> > the charger manager driver in kernel? Or do you have some thoughts
> > about re-designing it? Now we have some out of tree code to use the
> > old charger manger, and we'd like to change to the new charger manger
> > driver and upstream them.
>
> I don't have anything ready yet and not enough time unfortunately.
> The proper way would be to have something equivialent to charger-manager
> in the power-supply core. The core should be able to monitor batteries
> and handle connected chargers automatically.  Also there shouldn't be
> any DT entry for the software managing the charger, since DT is about
> hardware.

OK. We'll think about it according to your suggestion. Thanks.
diff mbox series

Patch

diff --git a/drivers/power/supply/Kconfig b/drivers/power/supply/Kconfig
index 9a5591a..195bc04 100644
--- a/drivers/power/supply/Kconfig
+++ b/drivers/power/supply/Kconfig
@@ -480,7 +480,7 @@  config CHARGER_GPIO
 	  called gpio-charger.
 
 config CHARGER_MANAGER
-	bool "Battery charger manager for multiple chargers"
+	tristate "Battery charger manager for multiple chargers"
 	depends on REGULATOR
 	select EXTCON
 	help
diff --git a/include/linux/power/charger-manager.h b/include/linux/power/charger-manager.h
index ad19e68..ae94dce 100644
--- a/include/linux/power/charger-manager.h
+++ b/include/linux/power/charger-manager.h
@@ -248,7 +248,7 @@  struct charger_manager {
 	u64 charging_end_time;
 };
 
-#ifdef CONFIG_CHARGER_MANAGER
+#if IS_ENABLED(CONFIG_CHARGER_MANAGER)
 extern void cm_notify_event(struct power_supply *psy,
 				enum cm_event_types type, char *msg);
 #else