From nobody Mon Feb 9 07:25:20 2026 Received: from mo4-p02-ob.smtp.rzone.de (mo4-p02-ob.smtp.rzone.de [85.215.255.83]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id CC70227F015; Fri, 2 Jan 2026 18:00:54 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=pass smtp.client-ip=85.215.255.83 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1767376859; cv=pass; b=FrvQAYLWOcwE8HGlh7sjPNwIWqxRmKE7VtDdCvsjrFqupV+zDgC71orWRkLpp4+8a5vqGtq/fsXaojejYWJuj1Y/wnuI8C9lORvO2CTEwOhuMWnJGhg/YAIeol1OG5CltFXk9BxXJn5/22rZLzOSquNCSZveW0W0PUh+3H1r0tA= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1767376859; c=relaxed/simple; bh=szy0BQhDjcywmXfulHjMRZvP35HfFdHm9ZR3Giy5mxU=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=jI/XY1y8aZL1++HB0Otj8L3EQ/doyG0N5HdSSOiwrjvJ/+w0ajThg1hMIAaCg+kgL+99L82aSkt/TzYkUxv1qxxx3EqGRxitfhZqTidKpisvMSNM450PknD56TadaAqW/z3+gwpaiNA/AI7aHfZcvFXFtHwBZRHHvyTYMNrsfps= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=jm0.eu; spf=none smtp.mailfrom=jm0.eu; dkim=pass (2048-bit key) header.d=jm0.eu header.i=@jm0.eu header.b=LsuKRvRS; dkim=permerror (0-bit key) header.d=jm0.eu header.i=@jm0.eu header.b=psG28K4t; arc=pass smtp.client-ip=85.215.255.83 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=jm0.eu Authentication-Results: smtp.subspace.kernel.org; spf=none smtp.mailfrom=jm0.eu Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=jm0.eu header.i=@jm0.eu header.b="LsuKRvRS"; dkim=permerror (0-bit key) header.d=jm0.eu header.i=@jm0.eu header.b="psG28K4t" ARC-Seal: i=1; a=rsa-sha256; t=1767376837; cv=none; d=strato.com; s=strato-dkim-0002; b=fjuv9XzpkJV0m+YIpx2Od1BAjRZ1jGGTgER3a6WHcVd3FcoBn1KGCeiOiBgwnQ7frs 7sH0JvM57xVJXgwp+h1ShpdZBmhvzg+kckSwlfufuVk+cclsItIZ1zEjsU9ZhEh3/Imz dbqb3z3Ju6XDs8WnlxHxqj1RjypBq9qu88uD0HL7YpJONChiVWqO52UICYYthBgWlB97 LsjKdupRoj6Hk8HZY5xTxIARqspM9ZFzESh+TN5PXZEw7Zvh9l3SQYU94a7Z7CYWkDDJ P1SqKWDj8aHF3xeiiNrzL/QMGzgTnnbd3WOo4hUWiKgNFBflm9LAVerXIolid0CUHa+w TsSg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; t=1767376837; s=strato-dkim-0002; d=strato.com; h=Cc:To:In-Reply-To:References:Message-Id:Subject:Date:From:Cc:Date: From:Subject:Sender; bh=IMRntDBW+5EWU7Eup6lBpFcTSPp+X8qdra3fy4r81Tc=; b=tQ7FIJa99YLaLjlHScq8399HxmmQGVX6ZZ6V5bK9lkmxfTb8VIbxpc2+lSisrFE/aG j2vIHdaP10ZkfcIF19vQNluTMGbyp6QpUH2mbtgCpPD185XMCC3cG9USQ60kP2f6R9YA 1TH1wx7qORiaXeJKOLpeWHaSyITnWmFXCkloou0oKNIYvxWMvThmsyAA+J5bE2a0eVNR MG/HakzLNwNFbxeMaBy/yHtPKkSIsLAiqhSiCyfR8WVao6A/jhvsk5B1Ce6mAmi7o422 wFQ/YSDKYEBD836Lb7kQBDikMF/MIO/nyje2wvnCSXtrDbKRo5cRWyMUgGSOKxmfX7An APjA== ARC-Authentication-Results: i=1; strato.com; arc=none; dkim=none X-RZG-CLASS-ID: mo02 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; t=1767376837; s=strato-dkim-0002; d=jm0.eu; h=Cc:To:In-Reply-To:References:Message-Id:Subject:Date:From:Cc:Date: From:Subject:Sender; bh=IMRntDBW+5EWU7Eup6lBpFcTSPp+X8qdra3fy4r81Tc=; b=LsuKRvRSLn82MwSl0jhEcMvPIK/VhOtVm6VKB1snaepBDnGSdm3GgoCfvhxJ7wx1sl l6gSq5EN4lfDpxguuxKGw8RsRabZBwr/Lmgmnh1MqfZhiodLYfbys7Ojg5FSgcEE2D/I FruktwcmVyZZOWDZVa7pAnLp5S/lOS6UhKQay6NGrsL7KfnSlFhryJKmuCzoOq19qF4+ HA1olmwxv6W8BbUEIvo2gXqnR4kV+8e0r4SOStuIhlpOBEMEdClj28q0VEglZCmCMDS9 WRNJsmi/nSMbMJFqgOL+lu3wUIUcVui4YB1VKyeSvRE4Z57TRCZkfM3Pg9ojq/Ke0J22 PhJQ== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; t=1767376837; s=strato-dkim-0003; d=jm0.eu; h=Cc:To:In-Reply-To:References:Message-Id:Subject:Date:From:Cc:Date: From:Subject:Sender; bh=IMRntDBW+5EWU7Eup6lBpFcTSPp+X8qdra3fy4r81Tc=; b=psG28K4t1TAuJEvmoOZ/tJkkjEgh/sj0GKZrC1EXdhgIKoAeR8jYEZdBxrwnLWZmDV T7Phw/ZtKVJO8ACS+4CQ== X-RZG-AUTH: ":JmMXYEHmdv4HaV2cbPh7iS0wbr/uKIfGM0EPTeoCaRth8YQivJ4sfKeu9QyRDNI=" Received: from Wablet.localdomain by smtp.strato.de (RZmta 54.1.0 DYNA|AUTH) with ESMTPSA id z0d4ec202I0aEU9 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256 bits)) (Client did not present a certificate); Fri, 2 Jan 2026 19:00:36 +0100 (CET) From: Josua Mayer Date: Fri, 02 Jan 2026 19:00:30 +0100 Subject: [PATCH 1/4] dt-bindings: mfd: netronix,ntxec: add reference to power-supply Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260102-kobo-aura-battery-v1-1-501f2a8fa575@jm0.eu> References: <20260102-kobo-aura-battery-v1-0-501f2a8fa575@jm0.eu> In-Reply-To: <20260102-kobo-aura-battery-v1-0-501f2a8fa575@jm0.eu> To: =?utf-8?q?Jonathan_Neusch=C3=A4fer?= , Lee Jones , Sebastian Reichel , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Shawn Guo , Sascha Hauer , Pengutronix Kernel Team , Fabio Estevam Cc: linux-kernel@vger.kernel.org, linux-pm@vger.kernel.org, devicetree@vger.kernel.org, imx@lists.linux.dev, linux-arm-kernel@lists.infradead.org, Josua Mayer X-Mailer: b4 0.13.0 The Netronix Embedded Controller supports monitoring of battery voltage. Voltage monitoring functionality is self-contained and requires no supply- or battery-specific runtime configuration. Battery design characteristics (e.g. voltage-min-design-microvolt) are useful for users to understand the charge level and are commonly provided by a separate battery node linked with monitored-battery property. Add reference to power-supply.yaml so that power-supplies and monitored-battery properties become available. Further drop reg property description and replace it with maxItems 1 as is common for i2c devices with single bus address. Finally replace additionalProperties with unevaluatedProperties to allow properties from referenced schemas. Signed-off-by: Josua Mayer Reviewed-by: Krzysztof Kozlowski --- Documentation/devicetree/bindings/mfd/netronix,ntxec.yaml | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/Documentation/devicetree/bindings/mfd/netronix,ntxec.yaml b/Do= cumentation/devicetree/bindings/mfd/netronix,ntxec.yaml index 37fbb953ea12..6599dcf0eceb 100644 --- a/Documentation/devicetree/bindings/mfd/netronix,ntxec.yaml +++ b/Documentation/devicetree/bindings/mfd/netronix,ntxec.yaml @@ -13,13 +13,15 @@ description: | This EC is found in e-book readers of multiple brands (e.g. Kobo, Tolino= ), and is typically implemented as a TI MSP430 microcontroller. =20 +allOf: + - $ref: /schemas/power/supply/power-supply.yaml + properties: compatible: const: netronix,ntxec =20 reg: - items: - - description: The I2C address of the EC + maxItems: 1 =20 system-power-controller: type: boolean @@ -42,7 +44,7 @@ required: - compatible - reg =20 -additionalProperties: false +unevaluatedProperties: false =20 examples: - | @@ -61,5 +63,6 @@ examples: interrupt-parent =3D <&gpio4>; interrupts =3D <11 IRQ_TYPE_EDGE_FALLING>; #pwm-cells =3D <2>; + monitored-battery =3D <&battery>; }; }; --=20 2.43.0 From nobody Mon Feb 9 07:25:20 2026 Received: from mo4-p02-ob.smtp.rzone.de (mo4-p02-ob.smtp.rzone.de [85.215.255.84]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id F2B7F2FD69A; Fri, 2 Jan 2026 18:01:00 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=pass smtp.client-ip=85.215.255.84 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1767376866; cv=pass; b=I86Hzd3wKevTjOMVKDf9lIdN3xLt15dT4+NbdR1g7XDlTZsA/8hXftmGhFB2znAR2QjCaAzZDO56QTRNm8GDe7PdObMfG2qtqZdkEYovD6h4/PvFqQ2hHYRxJFktFSVTcfyFWS2NYksJxmP+JgXiG2IpLryzVGPrkZO9ZuOOdCg= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1767376866; c=relaxed/simple; bh=UmB/Zvj2CEeBiKzr+kPyp+yV+9d3byoCdoSJYcTCbbU=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=WbIpi0e+AUbhIG4CMYYP/gt8sCdG3ol3HeY/ovKllEO7TarSNFOA+vv7xB9V9+0KHb4LoZaZIPmAbpGzmcK+W8R8vqG6v1ahu+9+LsoirwV/YDfzS4bJn+wEHAywisEQvB7so7EdQE6i8R1uHeqhcHEQZ+xUp/gYbA4ij2Ue2qI= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=jm0.eu; spf=none smtp.mailfrom=jm0.eu; dkim=pass (2048-bit key) header.d=jm0.eu header.i=@jm0.eu header.b=hBWflBbP; dkim=permerror (0-bit key) header.d=jm0.eu header.i=@jm0.eu header.b=fmb8knCD; arc=pass smtp.client-ip=85.215.255.84 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=jm0.eu Authentication-Results: smtp.subspace.kernel.org; spf=none smtp.mailfrom=jm0.eu Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=jm0.eu header.i=@jm0.eu header.b="hBWflBbP"; dkim=permerror (0-bit key) header.d=jm0.eu header.i=@jm0.eu header.b="fmb8knCD" ARC-Seal: i=1; a=rsa-sha256; t=1767376838; cv=none; d=strato.com; s=strato-dkim-0002; b=IU13SRqmCuFz9WibsWO/8sQOEN80qhuPtyZRd8wKJQKek8tiyRMTB7FZ0B7rptqeGs Box2RXeI9zKHlQXTuuuH6B1O+mOdCFNWmyYux1BPlFM7MKbUA1Xdc3lvaadcrbBKzspb S6wGIGOJ2F2jGm//mW1SzeN1ZoNQcYM+gcnSche4ZKid8ptY0NFty3SRU76CDVgW3xs9 /aJibXQsBNDvy39LEOPVLzBhoFQeecWPK9pGhjpP95/v67FXJ1w2gz3Eww+A5xEta6nW M35qM+yhhWRwEnqLNPwB9tHwZzEqtgUbRL2FbCQ4cNMBqX3eRe63WYN/X8VKIUxYVr8h AGRQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; t=1767376838; s=strato-dkim-0002; d=strato.com; h=Cc:To:In-Reply-To:References:Message-Id:Subject:Date:From:Cc:Date: From:Subject:Sender; bh=0Asg95GJHRYYRrgfRPhQS05Ear6e3z4tU5KMDrFBRZM=; b=WxV3tD9apIoYO05ioQL48rEXrwFHBm6zsbwIvtI5AL6MBS7VB+WvXBam22gA1HzC3R n3h8S2nHEJa6u7k5bVAJbf/GgCjcuk/juGpvg8geLN+zqK4UCERvB7YEFQtJ1M5Ge6dV +485P1WUOECAHTTnEWdWTwg5ljXenHWd6sbaABBXi+kux3jVRcnWSxrfWmzQ79DA31SR 2p8QTMXwF3QmIZZT7MCAuw024twWXgxi859VkXkOW07A4ymS7fXoXrG+6THMzziYOn2r mZoxjZlr/DApL8jYooSUcICEhgC1vuJd+GDq/HR8JKnqBWielTKH74ZtyhAzKnww2r4y +z1A== ARC-Authentication-Results: i=1; strato.com; arc=none; dkim=none X-RZG-CLASS-ID: mo02 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; t=1767376838; s=strato-dkim-0002; d=jm0.eu; h=Cc:To:In-Reply-To:References:Message-Id:Subject:Date:From:Cc:Date: From:Subject:Sender; bh=0Asg95GJHRYYRrgfRPhQS05Ear6e3z4tU5KMDrFBRZM=; b=hBWflBbPWgIWIkwGBCSYV7bMa16sPrtjxIIHg9nIae7WEn/Gmf2nmBhaxG3imBXf06 F6kFW2WXTYh1ba7E/Mc4Y/qLCwHWY6Kvm1pDJHJHxYzscUlHDSowC0+gaI0V+RTe1iU5 eGX/Jphx+VGvlyKM4akWZvbKXawRIFPV9jDKCNRwcpDinrYvyNYWnLcCJcghm0nlYLa6 aL0GXfyKuBSCb/jZKXO2UpwvOKWxmALP6R8RsnI9KVktI1K8Z2BvJzAO+yjWJtAcmJal LzoZIiLMoPZczOYFsW6atYqVde3U5PnScQcXUyB6m9cTLrY9WyFRSPNGYnkOJTh4nFdR 12FA== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; t=1767376838; s=strato-dkim-0003; d=jm0.eu; h=Cc:To:In-Reply-To:References:Message-Id:Subject:Date:From:Cc:Date: From:Subject:Sender; bh=0Asg95GJHRYYRrgfRPhQS05Ear6e3z4tU5KMDrFBRZM=; b=fmb8knCDGGGisSp3Kuir/I1mSfTxi5qH2pieptBtj5sTYFEhIUcwRvDFaMYsFElXSO 5uynNR/unyG+dScGicCQ== X-RZG-AUTH: ":JmMXYEHmdv4HaV2cbPh7iS0wbr/uKIfGM0EPTeoCaRth8YQivJ4sfKeu9QyRDNI=" Received: from Wablet.localdomain by smtp.strato.de (RZmta 54.1.0 DYNA|AUTH) with ESMTPSA id z0d4ec202I0bEUA (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256 bits)) (Client did not present a certificate); Fri, 2 Jan 2026 19:00:37 +0100 (CET) From: Josua Mayer Date: Fri, 02 Jan 2026 19:00:31 +0100 Subject: [PATCH 2/4] ARM: dts: imx: imx50-kobo-aura: add description for battery Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260102-kobo-aura-battery-v1-2-501f2a8fa575@jm0.eu> References: <20260102-kobo-aura-battery-v1-0-501f2a8fa575@jm0.eu> In-Reply-To: <20260102-kobo-aura-battery-v1-0-501f2a8fa575@jm0.eu> To: =?utf-8?q?Jonathan_Neusch=C3=A4fer?= , Lee Jones , Sebastian Reichel , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Shawn Guo , Sascha Hauer , Pengutronix Kernel Team , Fabio Estevam Cc: linux-kernel@vger.kernel.org, linux-pm@vger.kernel.org, devicetree@vger.kernel.org, imx@lists.linux.dev, linux-arm-kernel@lists.infradead.org, Josua Mayer X-Mailer: b4 0.13.0 Kobo Aura has a rechargable battery that is monitored by the embedded controller. Battery markings: PR-285083 3.7V Typ. 1500mAh; 575327416288 5.55Wh. Add description for this battery and link it for monitoring by the embedded controller. Reviewed-by: J. Neusch=C3=A4fer Signed-off-by: Josua Mayer --- arch/arm/boot/dts/nxp/imx/imx50-kobo-aura.dts | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/arch/arm/boot/dts/nxp/imx/imx50-kobo-aura.dts b/arch/arm/boot/= dts/nxp/imx/imx50-kobo-aura.dts index b1a6a9c58ac3..dc8d9fd45cd2 100644 --- a/arch/arm/boot/dts/nxp/imx/imx50-kobo-aura.dts +++ b/arch/arm/boot/dts/nxp/imx/imx50-kobo-aura.dts @@ -16,6 +16,14 @@ chosen { stdout-path =3D "serial1:115200n8"; }; =20 + battery: battery { + compatible =3D "simple-battery"; + voltage-min-design-microvolt =3D <3400000>; + voltage-max-design-microvolt =3D <4100000>; + energy-full-design-microwatt-hours =3D <5550000>; + charge-full-design-microamp-hours =3D <1500000>; + }; + memory@70000000 { device_type =3D "memory"; reg =3D <0x70000000 0x10000000>; @@ -151,6 +159,7 @@ embedded-controller@43 { system-power-controller; interrupts-extended =3D <&gpio4 11 IRQ_TYPE_EDGE_FALLING>; #pwm-cells =3D <2>; + monitored-battery =3D <&battery>; }; }; =20 --=20 2.43.0 From nobody Mon Feb 9 07:25:20 2026 Received: from mo4-p02-ob.smtp.rzone.de (mo4-p02-ob.smtp.rzone.de [81.169.146.170]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 578742EAB6E; Fri, 2 Jan 2026 18:03:42 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=pass smtp.client-ip=81.169.146.170 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1767377028; cv=pass; b=Vb3BEckMw+N1gvf5dvzuWR9RjoFMzn64aEh6xjW9IO1TitpY+emu5pjkiUG7gnNox7QPAFHOaRWpLCNaSoz7z+UWuYwxNB/7MloomzkClvzEiSr6mnuy/1xpDtipfG1/fU5uvinplGFgElfZ4TG6s9QbGBNVS512iV1idwHZFjM= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1767377028; c=relaxed/simple; bh=9LDYGWmBVbvk3/wnVyVLD7AdS4IhA/Z2Zm0d3Eyemc8=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=hYAe+vjtX/5gkkg3rNPSgego7VRlbTdc/D/PzFFyqvKLXf9zNcJ/vm+WDFxXqWIbCqVgWayd6nw+v5WsFkhpMS4gJ6Zw9hPOnK7XhpSohlLv+R0IJza6EIi7iiURN+v1SHwqgoC4plhHoR0iE5TnMShQSIMMWC3kyF/vPG9aPx8= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=jm0.eu; spf=none smtp.mailfrom=jm0.eu; dkim=pass (2048-bit key) header.d=jm0.eu header.i=@jm0.eu header.b=IPmpkBed; dkim=permerror (0-bit key) header.d=jm0.eu header.i=@jm0.eu header.b=kgSJBa8g; arc=pass smtp.client-ip=81.169.146.170 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=jm0.eu Authentication-Results: smtp.subspace.kernel.org; spf=none smtp.mailfrom=jm0.eu Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=jm0.eu header.i=@jm0.eu header.b="IPmpkBed"; dkim=permerror (0-bit key) header.d=jm0.eu header.i=@jm0.eu header.b="kgSJBa8g" ARC-Seal: i=1; a=rsa-sha256; t=1767376840; cv=none; d=strato.com; s=strato-dkim-0002; b=bpkUvJ1ttMvQpswwBTHfb1g1+IGSG1G1uYBaeYVhDax8xrpjukpdkctwD7AwleirGl gw2wLa87RhZhhmf/d4DLriAm47LpCKyC2PlM8U9S+lUBiq6AWKUhkIFi/JYvkttZ/GtX FanQLOnjGDRPr3VLk8JiPVmqBOASOObdAZdMlgyJhSQgP4mIlygXGh9ow7+KxjTzvJSZ kznu3E1cY9LcgIH6N8ZGzSzrVI6ut//S0//z93K4jERT11vRhMNCxH3qAsn1b9UDKzUI 7NMP1kWhNGdIJ3Grk0s2FWZvdjzygHkmOiQF2qmn8t7xuc9/2uIynrxoaiasO5awR31H ++1w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; t=1767376840; s=strato-dkim-0002; d=strato.com; h=Cc:To:In-Reply-To:References:Message-Id:Subject:Date:From:Cc:Date: From:Subject:Sender; bh=cdsRG53+MfpkA0In14GuBnrMa+IkJh25l65pJ1Sq7UE=; b=hBBceFWDbEDhjI2MeL68+hi0xnZm/du88dE2jitPmvy+FiYj9KvT69HzqemU2zHB5o S+N9R/DGXiNcmESUk4ViA1eGK7pTMEFGZ9z3cFfJAG8JI36zeAuMhJl/UD8oExKiCYp3 HwgmL2Ysamf/wp0gHCsC7Aw5DznvHFlxZn6Uvok4HMxC5KezUuhGj0YfgR+2FBegk3ts XqZuKJf6+8Wkk+2YDbuHeHjj9+IwaR5X2XBrajMY/RiSVuDcWVTXJ8jRg7cxw+pTWPAf B81E4CU3xQN7Ej/vQpXM/OUqIVUjqYtxmcLPlAZKdvmcrlL2vTAMnlvKBhvuZWjCFpua Bxtg== ARC-Authentication-Results: i=1; strato.com; arc=none; dkim=none X-RZG-CLASS-ID: mo02 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; t=1767376840; s=strato-dkim-0002; d=jm0.eu; h=Cc:To:In-Reply-To:References:Message-Id:Subject:Date:From:Cc:Date: From:Subject:Sender; bh=cdsRG53+MfpkA0In14GuBnrMa+IkJh25l65pJ1Sq7UE=; b=IPmpkBedYXxRP8KaFF3rLMKqs3JXQos4/H7PtJ93KW2TGxhLO+aEJIFxOjW5CYjtYX DeWZNK/RtjN/B3RWvPE1LHJKU1EOSKS9IloJoX1F+/w8wZITDrELYybRau2YWPwAWtjX epfKOVgpLmoUK0V17pbXsZiM/IkAYmYOSZ5bb65SEwtGrzwUb6H3clp66PWPFwtConyQ +r9A6bCcjJl2lmYmeisFRr5ktGTAES1mSETGVfw+Mwy5T6BvkCvg2NKQgaUTNWb66B3G JZjkrARJJuNuYQ3R60f+MwbL5XCRXuzi4YwhmB2egAkKeXTXgS8050Id7XYDhn/69J+h 5ppg== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; t=1767376840; s=strato-dkim-0003; d=jm0.eu; h=Cc:To:In-Reply-To:References:Message-Id:Subject:Date:From:Cc:Date: From:Subject:Sender; bh=cdsRG53+MfpkA0In14GuBnrMa+IkJh25l65pJ1Sq7UE=; b=kgSJBa8g7By62VnqIEP/E6n0X/1/9ueHINHJDd7NlRmzS+AntWr2vMpPEkWMmYKv/L RBrUiaQ6tE9hv7W36xCQ== X-RZG-AUTH: ":JmMXYEHmdv4HaV2cbPh7iS0wbr/uKIfGM0EPTeoCaRth8YQivJ4sfKeu9QyRDNI=" Received: from Wablet.localdomain by smtp.strato.de (RZmta 54.1.0 DYNA|AUTH) with ESMTPSA id z0d4ec202I0dEUB (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256 bits)) (Client did not present a certificate); Fri, 2 Jan 2026 19:00:39 +0100 (CET) From: Josua Mayer Date: Fri, 02 Jan 2026 19:00:32 +0100 Subject: [PATCH 3/4] power: supply: add battery driver for netronix ec Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260102-kobo-aura-battery-v1-3-501f2a8fa575@jm0.eu> References: <20260102-kobo-aura-battery-v1-0-501f2a8fa575@jm0.eu> In-Reply-To: <20260102-kobo-aura-battery-v1-0-501f2a8fa575@jm0.eu> To: =?utf-8?q?Jonathan_Neusch=C3=A4fer?= , Lee Jones , Sebastian Reichel , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Shawn Guo , Sascha Hauer , Pengutronix Kernel Team , Fabio Estevam Cc: linux-kernel@vger.kernel.org, linux-pm@vger.kernel.org, devicetree@vger.kernel.org, imx@lists.linux.dev, linux-arm-kernel@lists.infradead.org, Josua Mayer X-Mailer: b4 0.13.0 Implement a simple battery driver for monitoring voltage with the netronix embedded controller found in certain ebook readers. Signed-off-by: Josua Mayer --- drivers/power/supply/Kconfig | 9 ++++ drivers/power/supply/Makefile | 1 + drivers/power/supply/ntxec-battery.c | 101 +++++++++++++++++++++++++++++++= ++++ 3 files changed, 111 insertions(+) diff --git a/drivers/power/supply/Kconfig b/drivers/power/supply/Kconfig index 92f9f7aae92f..0f944c10e50b 100644 --- a/drivers/power/supply/Kconfig +++ b/drivers/power/supply/Kconfig @@ -1132,4 +1132,13 @@ config FUEL_GAUGE_MM8013 the state of charge, temperature, cycle count, actual and design capacity, etc. =20 +config BATTERY_NTXEC + tristate "Battery driver for Netronix embedded controller" + depends on MFD_NTXEC + help + Say yes here to enable netronix ec battery monitoring driver. + It enables the monitoring battery voltage on certain e-book readers + using an embedded controller by ODM Netronix. Battery design + characteristics are read from device-tree if available. + endif # POWER_SUPPLY diff --git a/drivers/power/supply/Makefile b/drivers/power/supply/Makefile index 4b79d5abc49a..db6fc815f9da 100644 --- a/drivers/power/supply/Makefile +++ b/drivers/power/supply/Makefile @@ -128,3 +128,4 @@ obj-$(CONFIG_CHARGER_SURFACE) +=3D surface_charger.o obj-$(CONFIG_BATTERY_UG3105) +=3D ug3105_battery.o obj-$(CONFIG_CHARGER_QCOM_SMB2) +=3D qcom_smbx.o obj-$(CONFIG_FUEL_GAUGE_MM8013) +=3D mm8013.o +obj-$(CONFIG_BATTERY_NTXEC) +=3D ntxec-battery.o diff --git a/drivers/power/supply/ntxec-battery.c b/drivers/power/supply/nt= xec-battery.c new file mode 100644 index 000000000000..f49f0966d18d --- /dev/null +++ b/drivers/power/supply/ntxec-battery.c @@ -0,0 +1,101 @@ +// SPDX-License-Identifier: GPL-2.0-or-later +/* + * The Netronix embedded controller is a microcontroller found in some + * e-book readers designed by the original design manufacturer Netronix, I= nc. + * It contains RTC, battery monitoring, system power management, and PWM + * functionality. + * + * This driver implements battery monitoring. + * + * Copyright 2021 Josua Mayer + */ + +#include +#include +#include +#include +#include +#include + +static const enum power_supply_property ntxec_battery_properties[] =3D { + POWER_SUPPLY_PROP_VOLTAGE_NOW, +}; + +struct ntxec_battery { + struct ntxec *ec; +}; + +#define NTXEC_REG_READ_BATTERY 0x41 + +static int ntxec_battery_get_property(struct power_supply *psy, + enum power_supply_property psp, + union power_supply_propval *val) +{ + struct ntxec_battery *priv =3D power_supply_get_drvdata(psy); + int ret; + unsigned int value; + + switch (psp) { + case POWER_SUPPLY_PROP_VOLTAGE_NOW: + ret =3D regmap_read(priv->ec->regmap, NTXEC_REG_READ_BATTERY, &value); + if (ret < 0) + return ret; + + /* ec value to microvolt conversion: + * vendor kernel source suggests linear behaviour from 3V to 4.2V + * with readings 767 to 1023; each increment represents 4687,5uV. + * adjust 3V boundary slightly to report exactly 4.2V when full. + */ + val->intval =3D 2999872 + (value - 767) * 4688; + break; + default: + dev_err(&psy->dev, "%s: invalid property %u\n", __func__, psp); + return -EINVAL; + } + + return 0; +} + +static const struct power_supply_desc ntxec_battery_desc =3D { + .name =3D "ec-battery", + .type =3D POWER_SUPPLY_TYPE_BATTERY, + .properties =3D ntxec_battery_properties, + .get_property =3D ntxec_battery_get_property, + .num_properties =3D ARRAY_SIZE(ntxec_battery_properties), +}; + +static int ntxec_battery_probe(struct platform_device *pdev) +{ + struct device *dev =3D &pdev->dev; + struct ntxec *ec =3D dev_get_drvdata(dev->parent); + struct power_supply_config psy_cfg =3D {}; + struct ntxec_battery *priv; + struct power_supply *psy; + + priv =3D devm_kzalloc(dev, sizeof(*priv), GFP_KERNEL); + if (!priv) + return -ENOMEM; + + priv->ec =3D ec; + psy_cfg.drv_data =3D priv; + psy_cfg.fwnode =3D dev_fwnode(dev->parent); + psy_cfg.no_wakeup_source =3D true; + psy =3D devm_power_supply_register(dev, &ntxec_battery_desc, &psy_cfg); + if (IS_ERR(psy)) + return PTR_ERR(psy); + + return 0; +} + +static struct platform_driver ntxec_battery_driver =3D { + .driver =3D { + .name =3D "ntxec-battery", + }, + .probe =3D ntxec_battery_probe, +}; +module_platform_driver(ntxec_battery_driver); + +MODULE_AUTHOR("Josua Mayer "); +MODULE_DESCRIPTION("Battery driver for Netronix EC"); +MODULE_LICENSE("GPL"); +MODULE_ALIAS("platform:ntxec-battery"); --=20 2.43.0 From nobody Mon Feb 9 07:25:20 2026 Received: from mo4-p02-ob.smtp.rzone.de (mo4-p02-ob.smtp.rzone.de [85.215.255.82]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 1237E2FF178; Fri, 2 Jan 2026 18:01:01 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=pass smtp.client-ip=85.215.255.82 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1767376867; cv=pass; b=g+z3IisZBSTQn6kkmD7ny52IrN7WRL8O9f1c0oNgbDioS0RcNI0jCbMjAq1iW7U3AJcGeVKBlX1xRn5i5gml+KIEDBPRpkT+eaS8al9EncD3jSnbfFa3y7fRYEjAIJ2T9PleFJNaNb0KdVd1CjAml2+64jT8rRZPUttor5gZCto= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1767376867; c=relaxed/simple; bh=kNHR5UFXK1c+A06wwM+Zzhkwveo8p4U1JpIy/ZbPaZs=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=aWbEe3YXrIS2o8RJtKcWygxsP3J6GGdHpQ6HG/FPmgtaJ5RhyxC/jcQMfLiPT61EjLf1WGms/9IxWjknCzXKiGW5BOB1nam5vl36cznmQwDPsnMXhnz7zmOxQ1n6then1tTnTVWIe7cZv8OteRfMqhfXjqe5ZqyOitmWppiztJk= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=jm0.eu; spf=none smtp.mailfrom=jm0.eu; dkim=pass (2048-bit key) header.d=jm0.eu header.i=@jm0.eu header.b=nNsRIOVh; dkim=permerror (0-bit key) header.d=jm0.eu header.i=@jm0.eu header.b=vWa9Yt1z; arc=pass smtp.client-ip=85.215.255.82 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=jm0.eu Authentication-Results: smtp.subspace.kernel.org; spf=none smtp.mailfrom=jm0.eu Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=jm0.eu header.i=@jm0.eu header.b="nNsRIOVh"; dkim=permerror (0-bit key) header.d=jm0.eu header.i=@jm0.eu header.b="vWa9Yt1z" ARC-Seal: i=1; a=rsa-sha256; t=1767376841; cv=none; d=strato.com; s=strato-dkim-0002; b=G/bZ9LgolNZ6iD9eYftg1cYifZztSuTGzlbQYf/gRzPPTEB4K0dji0NC4OufhSS/RI Rgdd834RwmFrhwWgoc2SFpvE2U+2CXXgAi8OJjssMNTNH1LqJWd5eQTrYNxtIxLMtSl5 A0ml7CjL65rqshSxQk4fxzjDxfkqDYQB6qvUrVeujWqJAXquKBzMwmJinD2fELOmapX9 cnBLAz6S/TNPrD0O2Ybwj+ML5d9IIBvTwWw/kacAt5fVnuGY/y50l/+hks3bzWXH31lg kAeiRKjnQWW5hRO643YSYUhoot0cTofRMYhvWmV1eAEHgwRBs0UvZNa06VbW/cFq7RD9 VzYA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; t=1767376841; s=strato-dkim-0002; d=strato.com; h=Cc:To:In-Reply-To:References:Message-Id:Subject:Date:From:Cc:Date: From:Subject:Sender; bh=HoXLG+S3woHWMACty+9soasUgUY3k6eBEUtX3MmJTN8=; b=hqVIinZ+kmvcFbOOpxShkYvyoYsptEQ6xgGt8d9JSWjukYBiNCTyQmJAYI9Tb4mLiM Vwm/tVX+Pih9png+/GN57NuwCjDcNh185z9nwNq24T7c8dxaRe24NmY5IBTy0YLVyX+7 RHrl29oladySufWeuSzqSxCeVZ4L/3QWpaNm8g5NeNQ4aUGPqURQucQTTvGkMnFFXnJp eBfZn7vPEY4MFNWKIgEIIvWthlKZs2TivrADfpxJq3IcTCwr16cW7v60xfqsbbPlQYcO aRwduI8VL0/7J1V+FZjs7H/g/NUT9QNPz02yxuhAYfq0Ct8ayuy1syjUnyV8xfvyMawp 7gSQ== ARC-Authentication-Results: i=1; strato.com; arc=none; dkim=none X-RZG-CLASS-ID: mo02 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; t=1767376841; s=strato-dkim-0002; d=jm0.eu; h=Cc:To:In-Reply-To:References:Message-Id:Subject:Date:From:Cc:Date: From:Subject:Sender; bh=HoXLG+S3woHWMACty+9soasUgUY3k6eBEUtX3MmJTN8=; b=nNsRIOVhoebVVnt3q5Hk3iU5STmfqXogSAkXAaqMFfPq9Ex1YdigqJLBgLlGzaO0Ns 8TYKSMX8yJienT/+dWb2MzVvDw4l0R4HqPWpnYmCwMC4J59/ziLXj7WVoh5u1cG78EOI 5d58i0DL5BeSzYFkJmAI3pG5cLo5D/QhZD9RpVmC9E+CZfEBEfRZdxNpmdfRA5zYe+Ct eHhDe4D8MaV03vmd9W2YowPSq/9XG9BGWlqy2MNCwGGbB2uUXrylsf9FZqrKdxy1fGVH 4RWy7d87BBtLWIX5QorBxbzMjL5ms13LxeHvMdWEmX/3AyR4Y4MN2clh+r66MuiaLThJ Qcuw== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; t=1767376841; s=strato-dkim-0003; d=jm0.eu; h=Cc:To:In-Reply-To:References:Message-Id:Subject:Date:From:Cc:Date: From:Subject:Sender; bh=HoXLG+S3woHWMACty+9soasUgUY3k6eBEUtX3MmJTN8=; b=vWa9Yt1z41VxjDSoK9P9DpC3PJD2XSKKomvF3F7ei6cqFD3i7GBxtngFqoeuTiNciC x2xrjtAs3gUnrSEKgEAA== X-RZG-AUTH: ":JmMXYEHmdv4HaV2cbPh7iS0wbr/uKIfGM0EPTeoCaRth8YQivJ4sfKeu9QyRDNI=" Received: from Wablet.localdomain by smtp.strato.de (RZmta 54.1.0 DYNA|AUTH) with ESMTPSA id z0d4ec202I0eEUC (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256 bits)) (Client did not present a certificate); Fri, 2 Jan 2026 19:00:40 +0100 (CET) From: Josua Mayer Date: Fri, 02 Jan 2026 19:00:33 +0100 Subject: [PATCH 4/4] mfd: ntxec: register battery subdevice. Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260102-kobo-aura-battery-v1-4-501f2a8fa575@jm0.eu> References: <20260102-kobo-aura-battery-v1-0-501f2a8fa575@jm0.eu> In-Reply-To: <20260102-kobo-aura-battery-v1-0-501f2a8fa575@jm0.eu> To: =?utf-8?q?Jonathan_Neusch=C3=A4fer?= , Lee Jones , Sebastian Reichel , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Shawn Guo , Sascha Hauer , Pengutronix Kernel Team , Fabio Estevam Cc: linux-kernel@vger.kernel.org, linux-pm@vger.kernel.org, devicetree@vger.kernel.org, imx@lists.linux.dev, linux-arm-kernel@lists.infradead.org, Josua Mayer X-Mailer: b4 0.13.0 Add Netronix EC battery driver as subdevice. Signed-off-by: Josua Mayer --- drivers/mfd/ntxec.c | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/mfd/ntxec.c b/drivers/mfd/ntxec.c index 08c68de0f01b..d5059b8862aa 100644 --- a/drivers/mfd/ntxec.c +++ b/drivers/mfd/ntxec.c @@ -139,6 +139,7 @@ static const struct regmap_config regmap_config =3D { static const struct mfd_cell ntxec_subdev[] =3D { { .name =3D "ntxec-rtc" }, { .name =3D "ntxec-pwm" }, + { .name =3D "ntxec-battery" }, }; =20 static const struct mfd_cell ntxec_subdev_pwm[] =3D { --=20 2.43.0