From: Chris Morgan <macroalpha82@gmail.com>
To: linux-rockchip@lists.infradead.org
Cc: devicetree@vger.kernel.org, xsf@rock-chips.com, sre@kernel.org,
heiko@sntech.de, conor+dt@kernel.org, krzk+dt@kernel.org,
robh@kernel.org, Chris Morgan <macromorgan@hotmail.com>
Subject: [PATCH V9 0/4] Add Anbernic RG Vita-Pro
Date: Wed, 22 Jul 2026 11:58:02 -0500 [thread overview]
Message-ID: <20260722165806.161020-1-macroalpha82@gmail.com> (raw)
From: Chris Morgan <macromorgan@hotmail.com>
Add support for the Anbernic RG Vita-Pro, based on the Rockchip RK3576 SoC.
Changes Since V1:
- Updated documentation filename to matche compatible string.
- Corrected order of allocating IRQ in charger driver and switched
to using devm managed function to allocate work queue.
Changes Since V2:
- Corrected issue with naming of panel binding document and added
fallback compatible string.
- Switched to devm helpers in panel driver. Note that
devm_drm_panel_add() is currently only in the drm-next branch.
- Optimized setting GPIOs for panel driver.
Changes Since V3:
- Fixed numerous issues identifed by Sashiko bot, mainly relating
to unclamped or improperly clamped values from within the
charger driver.
- Corrected hard-coded values in the panel driver unprepare routine
as well as correcting an improperly checked return condition.
Changes Since V4:
- Fixed errors identified by Sashiko bot on charger driver that could
result in an improper value being written to the registers.
- Corrected some error handling in the panel driver.
Changes Since V5:
- Corrected minor errors in documentation and added default values.
- Further corrected clamping behavior in charger driver.
Changes Since V6:
- Additional corrections as suggested by Sashiko bot to fix potential
edge cases during probe for sgm41542.
- Corrected an improperly shifted value being written to register for
sgm41542.
- Changed a MV value to UV in sgm41542 driver to simplify function.
Changes Since V7:
- Added PM functions to sgm41542 driver per request from Sashiko,
which stops the hardware watchdog during suspend.
- Switched from device_init_wakeup() to devm_device_init_wakeup().
- Confirmed a state change in IRQ handler for sgm41542 to ensure we
don't update input current limit except when the vbus goes from
not okay to okay.
- Removed panel patches, which have already been accepted upstream.
Please note that this *may* cause an error about missing bindings.
See commit 0fd6ead8270270d859a28d0196a4b47e7d6845b8 in linux-next.
Changes Since V8:
- Added linux/bitfield.h header to prevent compile errors on certain
platforms.
- Added regulator to Kconfig as a dependency.
- Added mutex to IRQ handling function.
- Added update to watchdog enable field in suspend routine to ensure
watchdog status "goes back to the way it was" after resume.
- Sashiko complains of an issue if userspace updates values after
devm_power_supply_register() is called but before the hardware
limits are set from the device tree. While this is possible the
threat of a problem should be very low given that the hardware
limits are set immediately afterward and would overwrite any
wrong values from userspace (should happen within a few
milliseconds). Unfortunately, given that the function to get these
limits requires the power supply be registered in order to read
the battery node, it's not something that can be easily fixed at
this time. Since it's an *extremely* unlikely edge case, I think
that's acceptable.
Chris Morgan (4):
dt-bindings: power: supply: sgm41542: document sgm41542
power: supply: sgm41542: Add SG Micro sgm41542 charger
dt-bindings: arm: rockchip: Add Anbernic RG Vita-Pro
arm64: dts: rockchip: Add Anbernic RG Vita-Pro
.../devicetree/bindings/arm/rockchip.yaml | 6 +
.../power/supply/sgmicro,sgm41542.yaml | 96 ++
arch/arm64/boot/dts/rockchip/Makefile | 1 +
.../rockchip/rk3576-anbernic-rg-vita-pro.dts | 1327 +++++++++++++++++
drivers/power/supply/Kconfig | 9 +
drivers/power/supply/Makefile | 1 +
drivers/power/supply/sgm41542_charger.c | 1118 ++++++++++++++
7 files changed, 2558 insertions(+)
create mode 100644 Documentation/devicetree/bindings/power/supply/sgmicro,sgm41542.yaml
create mode 100644 arch/arm64/boot/dts/rockchip/rk3576-anbernic-rg-vita-pro.dts
create mode 100644 drivers/power/supply/sgm41542_charger.c
--
2.43.0
next reply other threads:[~2026-07-22 17:00 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-07-22 16:58 Chris Morgan [this message]
2026-07-22 16:58 ` [PATCH V9 1/4] dt-bindings: power: supply: sgm41542: document sgm41542 Chris Morgan
2026-07-22 16:58 ` [PATCH V9 2/4] power: supply: sgm41542: Add SG Micro sgm41542 charger Chris Morgan
2026-07-22 17:15 ` sashiko-bot
2026-07-22 16:58 ` [PATCH V9 3/4] dt-bindings: arm: rockchip: Add Anbernic RG Vita-Pro Chris Morgan
2026-07-22 16:58 ` [PATCH V9 4/4] arm64: dts: " Chris Morgan
2026-07-22 17:14 ` sashiko-bot
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=20260722165806.161020-1-macroalpha82@gmail.com \
--to=macroalpha82@gmail.com \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=heiko@sntech.de \
--cc=krzk+dt@kernel.org \
--cc=linux-rockchip@lists.infradead.org \
--cc=macromorgan@hotmail.com \
--cc=robh@kernel.org \
--cc=sre@kernel.org \
--cc=xsf@rock-chips.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox