All of lore.kernel.org
 help / color / mirror / Atom feed
From: Liam Breck <liam@networkimprov.net>
To: Hans de Goede <hdegoede@redhat.com>
Cc: Andy Shevchenko <andriy.shevchenko@linux.intel.com>,
	Sebastian Reichel <sre@kernel.org>,
	Tony Lindgren <tony@atomide.com>,
	linux-pm@vger.kernel.org, Liam Breck <kernel@networkimprov.net>
Subject: Re: [04/15] power: supply: bq24190_charger: Add no_register_reset pdata flag
Date: Sat, 18 Mar 2017 00:10:13 -0700	[thread overview]
Message-ID: <20170318071019.4561-1-liam@networkimprov.net> (raw)
In-Reply-To: <20170317095527.10487-5-hdegoede@redhat.com>

[dropped CC's not relevant to BQ24190; pls re-add anyone appropriate]

Hi Hans,

I am the de facto maintainer of BQ24190, with help from Tony. I contracted the original author to 
create the driver. I'm not aware of anyone else relying on it at present.

Pls rebase to -next (!) and post BQ24190 changes in a separate patchset. Reference any 
dependencies in other patchsets with Depends-on lines in patch descriptions linking to 
patchwork.kernel.org. If any dependency might be controversial, pls defer the BQ24190 patchset til 
controversy resolves.

You may be interested in these, which I will support in BQ24190 in near future:
https://patchwork.kernel.org/patch/9626487/
https://patchwork.kernel.org/patch/9626491/

Further comments below...

On Fri, 17 Mar 2017 10:55:16 +0100, Hans de Goede wrote:

> On some platforms the register have been setup with platform specific
> values by the firmware and should not be reset.

Pls describe this mysterious, meddling firmware. Who wrote it, when does it run, on what devices, 
etc? Include URLs to docs, etc. BTW it's not really "firmware" if it runs on the main cpu, IMO. 
A boot loader is not firmware.

We probably don't want to disable register_reset in all circumstances. Can you record the 
firmware's settings for charger? I suspect we should replay them in set_mode_host() -- to be 
renamed set_operating_params in forthcoming patchset.

What generates your platform_data objects?
Are you forced to use platform_data for some reason?

> Signed-off-by: Hans de Goede <hdegoede@redhat.com>

Add to all BQ24190 patches:
Cc: Liam Breck <kernel@networkimprov.net>
Cc: Tony Lindgren <tony@atomide.com>

Pls don't CC me on the related patchsets.

> ---
>  drivers/power/supply/bq24190_charger.c | 5 +++++
>  include/linux/power/bq24190_charger.h  | 1 +
>  2 files changed, 6 insertions(+)
> 
> diff --git a/drivers/power/supply/bq24190_charger.c b/drivers/power/supply/bq24190_charger.c
> index a4f0849..c92a40e4 100644
> --- a/drivers/power/supply/bq24190_charger.c
> +++ b/drivers/power/supply/bq24190_charger.c
> @@ -151,6 +151,7 @@ struct bq24190_dev_info {
>  	struct device			*dev;
>  	struct power_supply		*charger;
>  	struct power_supply		*battery;
> +	struct bq24190_platform_data	*pdata;

Use a register settings array/struct here, instead of platform-data. None of your other patches need 
to retain pdata.

>  	char				model_name[I2C_NAME_SIZE];
>  	kernel_ulong_t			model;
>  	unsigned int			gpio_int;
> @@ -506,6 +507,9 @@ static int bq24190_register_reset(struct bq24190_dev_info *bdi)
>  	int ret, limit = 100;
>  	u8 v;
>  
> +	if (bdi->pdata && bdi->pdata->no_register_reset)
> +		return 0;
> +
>  	/* Reset the registers */
>  	ret = bq24190_write_mask(bdi, BQ24190_REG_POC,
>  			BQ24190_REG_POC_RESET_MASK,
> @@ -1339,6 +1343,7 @@ static int bq24190_probe(struct i2c_client *client,
>  	bdi->client = client;
>  	bdi->dev = dev;
>  	bdi->model = id->driver_data;
> +	bdi->pdata = client->dev.platform_data;
>  	strncpy(bdi->model_name, id->name, I2C_NAME_SIZE);
>  	mutex_init(&bdi->f_reg_lock);
>  	bdi->f_reg = 0;
> diff --git a/include/linux/power/bq24190_charger.h b/include/linux/power/bq24190_charger.h
> index 9f02837..cb49717 100644
> --- a/include/linux/power/bq24190_charger.h
> +++ b/include/linux/power/bq24190_charger.h
> @@ -11,6 +11,7 @@
>  
>  struct bq24190_platform_data {
>  	unsigned int	gpio_int;	/* GPIO pin that's connected to INT# */
> +	bool no_register_reset;
>  };
>  
>  #endif

Thanks,
Liam

  parent reply	other threads:[~2017-03-18  7:10 UTC|newest]

Thread overview: 90+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-03-17  9:55 [PATCH 00/15] Add Intel Cherry Trail Whiskey Cove PMIC support Hans de Goede
2017-03-17  9:55 ` [PATCH 01/15] mfd: Add Cherry Trail Whiskey Cove PMIC driver Hans de Goede
2017-03-17 17:00   ` Andy Shevchenko
2017-03-20 10:41     ` Lee Jones
2017-03-20 12:55       ` Andy Shevchenko
2017-03-17  9:55 ` [PATCH 02/15] ACPI / PMIC: Add opregion driver for Intel CHT Whiskey Cove PMIC Hans de Goede
2017-03-17  9:55 ` [PATCH 03/15] extcon: cht-wc: Add Intel Cherry Trail Whiskey Cove PMIC extcon driver Hans de Goede
2017-03-17 17:18   ` Andy Shevchenko
2017-03-20 18:08     ` Hans de Goede
2017-03-20  1:33   ` Chanwoo Choi
2017-03-20 13:00     ` Andy Shevchenko
2017-03-21  3:54       ` Chanwoo Choi
2017-03-21  5:21         ` Chanwoo Choi
2017-03-21  6:27           ` Chanwoo Choi
2017-03-20 19:57     ` Hans de Goede
2017-03-21  5:16       ` Chanwoo Choi
2017-03-23 15:22         ` Hans de Goede
2017-03-17  9:55 ` [PATCH 04/15] power: supply: bq24190_charger: Add no_register_reset pdata flag Hans de Goede
2017-03-17 17:20   ` Andy Shevchenko
2017-03-18  7:10   ` Liam Breck [this message]
2017-03-18 14:13     ` [04/15] " Hans de Goede
2017-03-18 18:51       ` Liam Breck
2017-03-18 22:51         ` Hans de Goede
2017-03-19  0:57           ` Liam Breck
2017-03-19  8:22             ` Hans de Goede
2017-03-19  9:42               ` Hans de Goede
2017-03-20  5:27                 ` Sebastian Reichel
2017-03-20 13:54                   ` Hans de Goede
2017-03-20 17:04                     ` Hans de Goede
2017-03-20 17:51                       ` Liam Breck
2017-03-20 18:01                         ` Hans de Goede
2017-03-20 18:19                           ` Liam Breck
2017-03-20 19:22                             ` Hans de Goede
2017-03-20 21:14                               ` Sebastian Reichel
2017-03-20 21:34                                 ` Liam Breck
2017-03-20 22:01                                 ` Hans de Goede
2017-03-20 21:15                               ` Liam Breck
2017-03-19 14:54             ` Andy Shevchenko
2017-03-19 18:13               ` Hans de Goede
2017-03-17  9:55 ` [PATCH 05/15] power: supply: bq24190_charger: Limit charging voltage to 4.3V Hans de Goede
2017-03-18  7:10   ` [05/15] " Liam Breck
2017-03-18 14:24     ` Hans de Goede
2017-03-18 19:01       ` Liam Breck
2017-03-17  9:55 ` [PATCH 06/15] power: supply: bq24190_charger: Use i2c-core irq-mapping code Hans de Goede
2017-03-17 17:24   ` Andy Shevchenko
2017-03-20  4:46     ` Sebastian Reichel
2017-03-18  7:10   ` [06/15] " Liam Breck
2017-03-18 14:16     ` Hans de Goede
2017-03-17  9:55 ` [PATCH 07/15] power: supply: bq24190_charger: Add support for bq24192[i] Hans de Goede
2017-03-18  7:10   ` [07/15] " Liam Breck
2017-03-18 14:30     ` Hans de Goede
2017-03-18 19:10       ` Liam Breck
2017-03-18 22:55         ` Hans de Goede
2017-03-17  9:55 ` [PATCH 08/15] power: supply: bq24190_charger: Add support for external fuel gauge Hans de Goede
2017-03-18  7:10   ` [08/15] " Liam Breck
2017-03-18 14:31     ` Hans de Goede
2017-03-18 19:18       ` Liam Breck
2017-03-18 23:02         ` Hans de Goede
2017-03-19  1:01           ` Liam Breck
2017-03-19  3:52           ` Liam Breck
2017-03-17  9:55 ` [PATCH 09/15] power: supply: bq24190_charger: Add voltage_max_design prop to battery Hans de Goede
2017-03-18  7:10   ` [09/15] " Liam Breck
2017-03-18 14:34     ` Hans de Goede
2017-03-18 19:34       ` Liam Breck
2017-03-18 23:10         ` Hans de Goede
2017-03-20  5:12   ` [PATCH 09/15] " Sebastian Reichel
2017-03-17  9:55 ` [PATCH 10/15] power: supply: bq24190_charger: Use extcon to determine ilimit, 5v boost Hans de Goede
2017-03-17 17:33   ` Andy Shevchenko
2017-03-20 22:38     ` Hans de Goede
2017-03-18  7:10   ` [10/15] " Liam Breck
2017-03-18 14:42     ` Hans de Goede
2017-03-18 19:57       ` Liam Breck
2017-03-18 23:11         ` Hans de Goede
2017-03-20  4:52   ` [PATCH 10/15] " Sebastian Reichel
2017-03-17  9:55 ` [PATCH 11/15] i2c: core: Allow getting ACPI info by index Hans de Goede
2017-03-17 17:35   ` Andy Shevchenko
2017-03-17  9:55 ` [PATCH 12/15] i2c: core: Add new i2c_acpi_new_device helper function Hans de Goede
2017-03-17 17:37   ` Andy Shevchenko
2017-03-22 15:59     ` Hans de Goede
2017-03-17  9:55 ` [PATCH 13/15] i2c: core: Allow drivers to specify index for irq to get from of / ACPI Hans de Goede
2017-03-17 17:41   ` Andy Shevchenko
2017-03-20  8:55   ` kbuild test robot
2017-03-20  8:55     ` kbuild test robot
2017-03-17  9:55 ` [PATCH 14/15] power: supply: Add driver for Cherry Trail Whiskey Cove PMIC Fuel Gauge Hans de Goede
2017-03-17 17:58   ` Andy Shevchenko
2017-03-22 17:03     ` Hans de Goede
2017-03-20  5:07   ` Sebastian Reichel
2017-03-17  9:55 ` [PATCH 15/15] i2c-cht-wc: Add Intel Cherry Trail Whiskey Cove SMBUS controller driver Hans de Goede
2017-03-17 18:22   ` Andy Shevchenko
2017-03-23 13:58     ` Hans de Goede

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20170318071019.4561-1-liam@networkimprov.net \
    --to=liam@networkimprov.net \
    --cc=andriy.shevchenko@linux.intel.com \
    --cc=hdegoede@redhat.com \
    --cc=kernel@networkimprov.net \
    --cc=linux-pm@vger.kernel.org \
    --cc=sre@kernel.org \
    --cc=tony@atomide.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.