From: Rinat Muhamedgaliev <rinat.muhamedgaliev@gmail.com>
To: linux-pm@vger.kernel.org
Cc: pali@kernel.org, sre@kernel.org, afd@ti.com,
konrad.dybcio@oss.qualcomm.com, david@ixit.cz, krzk@kernel.org,
linux-arm-msm@vger.kernel.org, linux-kernel@vger.kernel.org,
Rinat Muhamedgaliev <rinat.muhamedgaliev@gmail.com>
Subject: [PATCH v8] bq27xxx: support interchangeable OnePlus 6/6T fuel gauges
Date: Mon, 19 Oct 2026 22:08:15 +0300 [thread overview]
Message-ID: <20261019-master-v8-0-2517e41c8992@gmail.com> (raw)
OnePlus 6 and 6T battery packs can contain either a bq27411 or a bq27541
fuel gauge. The two chips require different register maps.
The DeviceType check now lives in the bus-neutral battery core, where it
uses the existing register-map and control-register helpers. For bq27411
and bq27541, it compares the type selected by the compatible with the
reported type and chooses the detected profile.
Tested on a OnePlus 6T with DeviceType 0x0541 (bq27541): 4.338 V, 100%
capacity, 27.8 C, and Full/Good status. Testing on DeviceType 0x0421
(bq27411) hardware would be appreciated.
Changes in v8:
- Move DeviceType detection to the bus-neutral battery core.
- Use the existing register map and control-command definitions.
- Link to v7: https://patch.msgid.link/20261019-master-v7-0-a1fc488d9c77@gmail.com
Changes in v7:
- Determine the expected DeviceType through an extensible chip switch.
- Mark the probe-time list for extension with DeviceType-capable fuel gauges.
- Link to v6: https://patch.msgid.link/20261019-master-v6-0-c4b36129721e@gmail.com
Changes in v6:
- Compare the detected model with the compatible-selected model.
- Support both BQ27411-to-BQ27541 and BQ27541-to-BQ27411 detection.
Changes in v5:
- Report detected and expected DeviceType values instead of hard-coding chip names.
- Describe an unknown DeviceType as unrecognized.
Changes in v4:
- Drop the generic compatible and binding update.
- Keep the established OnePlus DTS unchanged.
---
Rinat Muhamedgaliev (1):
power: supply: bq27xxx: detect bq27541 behind bq27411 compatible
drivers/power/supply/bq27xxx_battery.c | 61 ++++++++++++++++++++++++++++++++++
1 file changed, 61 insertions(+)
---
base-commit: 830b3c68c1fb1e9176028d02ef86f3cf76aa2476
change-id: 20260927-master-bd0afd9696ef
Best regards,
--
Rinat Muhamedgaliev <rinat.muhamedgaliev@gmail.com>
WARNING: multiple messages have this Message-ID (diff)
From: Rinat Muhamedgaliev via B4 Relay <devnull+rinat.muhamedgaliev.gmail.com@kernel.org>
To: linux-pm@vger.kernel.org
Cc: pali@kernel.org, sre@kernel.org, afd@ti.com,
konrad.dybcio@oss.qualcomm.com, david@ixit.cz, krzk@kernel.org,
linux-arm-msm@vger.kernel.org, linux-kernel@vger.kernel.org,
Rinat Muhamedgaliev <rinat.muhamedgaliev@gmail.com>
Subject: [PATCH v8] bq27xxx: support interchangeable OnePlus 6/6T fuel gauges
Date: Mon, 19 Oct 2026 22:08:15 +0300 [thread overview]
Message-ID: <20261019-master-v8-0-2517e41c8992@gmail.com> (raw)
OnePlus 6 and 6T battery packs can contain either a bq27411 or a bq27541
fuel gauge. The two chips require different register maps.
The DeviceType check now lives in the bus-neutral battery core, where it
uses the existing register-map and control-register helpers. For bq27411
and bq27541, it compares the type selected by the compatible with the
reported type and chooses the detected profile.
Tested on a OnePlus 6T with DeviceType 0x0541 (bq27541): 4.338 V, 100%
capacity, 27.8 C, and Full/Good status. Testing on DeviceType 0x0421
(bq27411) hardware would be appreciated.
Changes in v8:
- Move DeviceType detection to the bus-neutral battery core.
- Use the existing register map and control-command definitions.
- Link to v7: https://patch.msgid.link/20261019-master-v7-0-a1fc488d9c77@gmail.com
Changes in v7:
- Determine the expected DeviceType through an extensible chip switch.
- Mark the probe-time list for extension with DeviceType-capable fuel gauges.
- Link to v6: https://patch.msgid.link/20261019-master-v6-0-c4b36129721e@gmail.com
Changes in v6:
- Compare the detected model with the compatible-selected model.
- Support both BQ27411-to-BQ27541 and BQ27541-to-BQ27411 detection.
Changes in v5:
- Report detected and expected DeviceType values instead of hard-coding chip names.
- Describe an unknown DeviceType as unrecognized.
Changes in v4:
- Drop the generic compatible and binding update.
- Keep the established OnePlus DTS unchanged.
---
Rinat Muhamedgaliev (1):
power: supply: bq27xxx: detect bq27541 behind bq27411 compatible
drivers/power/supply/bq27xxx_battery.c | 61 ++++++++++++++++++++++++++++++++++
1 file changed, 61 insertions(+)
---
base-commit: 830b3c68c1fb1e9176028d02ef86f3cf76aa2476
change-id: 20260927-master-bd0afd9696ef
Best regards,
--
Rinat Muhamedgaliev <rinat.muhamedgaliev@gmail.com>
next reply other threads:[~2026-10-19 19:08 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-10-19 19:08 Rinat Muhamedgaliev [this message]
2026-10-19 19:08 ` [PATCH v8] bq27xxx: support interchangeable OnePlus 6/6T fuel gauges Rinat Muhamedgaliev via B4 Relay
2026-10-19 19:08 ` [PATCH v8] power: supply: bq27xxx: detect bq27541 behind bq27411 compatible Rinat Muhamedgaliev
2026-10-19 19:08 ` Rinat Muhamedgaliev via B4 Relay
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=20261019-master-v8-0-2517e41c8992@gmail.com \
--to=rinat.muhamedgaliev@gmail.com \
--cc=afd@ti.com \
--cc=david@ixit.cz \
--cc=konrad.dybcio@oss.qualcomm.com \
--cc=krzk@kernel.org \
--cc=linux-arm-msm@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pm@vger.kernel.org \
--cc=pali@kernel.org \
--cc=sre@kernel.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 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.