From: pali.rohar@gmail.com (Pali Rohár)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 4/4] RX-51: Add platform function and data for bq24150a charger
Date: Fri, 20 Sep 2013 21:22:06 +0200 [thread overview]
Message-ID: <201309202122.06327@pali> (raw)
In-Reply-To: <1378630239-10006-5-git-send-email-pali.rohar@gmail.com>
On Sunday 08 September 2013 10:50:39 Pali Roh?r wrote:
> This patch will register bq24150a charger in RX-51 board data.
> Patch also adding platform function between isp1704 and
> bq2415x drivers for detecting charger type.
>
> So finally charging battery on Nokia N900 (RX-51) working
> automatically without any proprietary Nokia bits in userspace.
>
> Signed-off-by: Pali Roh?r <pali.rohar@gmail.com>
> ---
> arch/arm/mach-omap2/board-rx51-peripherals.c | 56
> +++++++++++++++++++++++++- 1 file changed, 55 insertions(+),
> 1 deletion(-)
>
> diff --git a/arch/arm/mach-omap2/board-rx51-peripherals.c
> b/arch/arm/mach-omap2/board-rx51-peripherals.c index
> 9c2dd10..a993ffe 100644
> --- a/arch/arm/mach-omap2/board-rx51-peripherals.c
> +++ b/arch/arm/mach-omap2/board-rx51-peripherals.c
> @@ -25,6 +25,7 @@
> #include <linux/gpio_keys.h>
> #include <linux/mmc/host.h>
> #include <linux/power/isp1704_charger.h>
> +#include <linux/power/bq2415x_charger.h>
> #include <linux/platform_data/spi-omap2-mcspi.h>
> #include <linux/platform_data/mtd-onenand-omap2.h>
>
> @@ -270,6 +271,44 @@ static struct platform_device
> rx51_battery_device = { .id = -1,
> };
>
> +static enum bq2415x_mode rx51_charger_mode =
> BQ2415X_MODE_OFF; +static void *rx51_charger_hook_data;
> +static void (*rx51_charger_hook)(enum bq2415x_mode mode, void
> *data); +
> +static int rx51_charger_set_hook(
> + void (*hook)(enum bq2415x_mode mode, void *data), void
> *data) +{
> + rx51_charger_hook = hook;
> + rx51_charger_hook_data = data;
> + if (rx51_charger_hook)
> + rx51_charger_hook(rx51_charger_mode,
> rx51_charger_hook_data); + return 1;
> +}
> +
> +static void rx51_charger_set_current(int mA)
> +{
> + enum bq2415x_mode mode;
> +
> + pr_info("RX-51: Charger current limit is %d mA\n", mA);
> +
> + if (mA == 0)
> + mode = BQ2415X_MODE_OFF;
> + else if (mA < 500)
> + mode = BQ2415X_MODE_NONE;
> + else if (mA < 1800)
> + mode = BQ2415X_MODE_HOST_CHARGER;
> + else
> + mode = BQ2415X_MODE_DEDICATED_CHARGER;
> +
> + if (rx51_charger_mode == mode)
> + return;
> +
> + rx51_charger_mode = mode;
> +
> + if (rx51_charger_hook)
> + rx51_charger_hook(rx51_charger_mode,
> rx51_charger_hook_data); +}
> +
> static void rx51_charger_set_power(bool on)
> {
> gpio_set_value(RX51_USB_TRANSCEIVER_RST_GPIO, on);
> @@ -277,6 +316,7 @@ static void rx51_charger_set_power(bool
> on)
>
> static struct isp1704_charger_data rx51_charger_data = {
> .set_power = rx51_charger_set_power,
> + .set_current = rx51_charger_set_current,
> };
>
> static struct platform_device rx51_charger_device = {
> @@ -1017,6 +1057,16 @@ static struct aic3x_pdata
> rx51_aic3x_data2 = { .gpio_reset = 60,
> };
>
> +static struct bq2415x_platform_data
> rx51_bq24150a_platform_data = { + .current_limit = 100,
/*
> mA */
> + .weak_battery_voltage = 3400, /* mV */
> + .battery_regulation_voltage = 4200, /* mV */
> + .charge_current = 650, /* mA */
> + .termination_current = 100, /* mA */
> + .resistor_sense = 68, /* m ohm */
> + .set_mode_hook = &rx51_charger_set_hook,
> +};
> +
> static struct i2c_board_info __initdata
> rx51_peripherals_i2c_board_info_2[] = { {
> I2C_BOARD_INFO("tlv320aic3x", 0x18),
> @@ -1044,7 +1094,11 @@ static struct i2c_board_info __initdata
> rx51_peripherals_i2c_board_info_2[] = { {
> I2C_BOARD_INFO("tpa6130a2", 0x60),
> .platform_data = &rx51_tpa6130a2_data,
> - }
> + },
> + {
> + I2C_BOARD_INFO("bq24150a", 0x6b),
> + .platform_data = &rx51_bq24150a_platform_data,
> + },
> };
>
> static struct i2c_board_info __initdata
> rx51_peripherals_i2c_board_info_3[] = {
Tony, can you look and review this board patch?
I think that this patch series it the most important for Nokia
N900, because it finally bringing charging support. And without
charging battery it very hard to use phone which has power supply
only from battery.
--
Pali Roh?r
pali.rohar at gmail.com
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 198 bytes
Desc: This is a digitally signed message part.
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20130920/f25e367a/attachment.sig>
next prev parent reply other threads:[~2013-09-20 19:22 UTC|newest]
Thread overview: 43+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-09-08 8:50 [PATCH 0/4] Add support for charging battery in Nokia RX-51 Pali Rohár
2013-09-08 8:50 ` [PATCH 1/4] usb: musb: Call atomic_notifier_call_chain when status is changed Pali Rohár
2013-09-17 15:48 ` Felipe Balbi
2013-09-17 15:49 ` Felipe Balbi
2013-09-17 16:05 ` Pali Rohár
2013-09-17 16:08 ` Felipe Balbi
2013-09-17 19:28 ` Pali Rohár
2013-09-18 1:49 ` Felipe Balbi
2013-09-18 8:20 ` Pali Rohár
2013-09-18 9:04 ` Javier Martinez Canillas
2013-09-18 13:30 ` Pavel Machek
2013-09-18 13:57 ` Javier Martinez Canillas
2013-09-18 14:22 ` Pavel Machek
2013-09-18 14:35 ` Pavel Machek
2013-09-18 16:25 ` Felipe Balbi
2013-09-18 14:53 ` Javier Martinez Canillas
2013-09-18 15:56 ` Pali Rohár
2013-09-18 16:36 ` Felipe Balbi
2013-09-18 16:43 ` Pali Rohár
2013-09-18 16:48 ` Felipe Balbi
2013-09-18 17:03 ` [PATCH usb 1/2] usb: musb: Add missing ATOMIC_INIT_NOTIFIER_HEAD Pali Rohár
2013-09-25 8:17 ` Pali Rohár
2013-09-25 20:33 ` Felipe Balbi
2013-09-26 0:00 ` Pavel Machek
2013-10-01 14:22 ` Felipe Balbi
2013-09-18 17:03 ` [PATCH usb 2/2] usb: musb: Call atomic_notifier_call_chain when status is changed Pali Rohár
2013-09-08 8:50 ` [PATCH 2/4] power: isp1704_charger: Fix driver to work with changes introduced in v3.5 Pali Rohár
2013-10-22 21:03 ` Anton Vorontsov
2013-09-08 8:50 ` [PATCH 3/4] power: isp1704_charger: Add callback function set_current Pali Rohár
2013-09-08 8:50 ` [PATCH 4/4] RX-51: Add platform function and data for bq24150a charger Pali Rohár
2013-09-09 13:39 ` Sebastian Reichel
2013-09-20 19:22 ` Pali Rohár [this message]
2013-09-23 18:03 ` Tony Lindgren
2013-09-23 19:16 ` Pali Rohár
2013-09-23 20:00 ` Sebastian Reichel
2013-09-23 20:06 ` Pali Rohár
2013-09-23 20:47 ` Sebastian Reichel
2013-09-23 23:11 ` Tony Lindgren
2013-09-24 0:05 ` Pavel Machek
2013-09-24 17:05 ` Pali Rohár
2013-09-24 20:50 ` Sebastian Reichel
2013-09-14 9:38 ` [PATCH 0/4] Add support for charging battery in Nokia RX-51 Pali Rohár
2013-09-21 13:42 ` Pali Rohár
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=201309202122.06327@pali \
--to=pali.rohar@gmail.com \
--cc=linux-arm-kernel@lists.infradead.org \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).