From nobody Thu Dec 18 22:20:07 2025 Received: from mail-ed1-f51.google.com (mail-ed1-f51.google.com [209.85.208.51]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 002C318FC9D for ; Sun, 23 Mar 2025 22:39:25 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.208.51 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1742769568; cv=none; b=AdGyQi2NkfMOok31cMIpQimJLzVJkrZYq3NF/E077g9I6K1cw+/zswqfdGrnQXSxk22eQx+4Gt9XRgxw5sTrwjJUhVcshRqCHWUZ8RrsZfkYqkmpcmvK3Yl9MWoi9FxaZ5uZQAFhMJjH1VVQjcYnTN/IqzHCY8AGH0kUDqyLxPI= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1742769568; c=relaxed/simple; bh=6BfqEn0+AzamtK4yJsWD0fg9sFcnberX6yxt/ti3b7U=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=qmmk61IsiMH/I7A/WpQADkHI/q7AbXYoV8my8HxKbyyv9yt31L6V5yEHI4OBppwfEHF4BF/Rp4NUKWdCiPQW97JKfhMKPFgjlDmnvCrgKtAyzVn9zTx4kuyGeGXqpgj+ekUuH2D0CyRw30lVz0EUPhzaImz+Uyibx/NrbOBXDEo= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=AUILnTg5; arc=none smtp.client-ip=209.85.208.51 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="AUILnTg5" Received: by mail-ed1-f51.google.com with SMTP id 4fb4d7f45d1cf-5e6167d0536so7231890a12.1 for ; Sun, 23 Mar 2025 15:39:25 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1742769564; x=1743374364; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=HXb1pE2B5VZK7eIRvGjCX0bwONX10G0/gh8FJgs0P90=; b=AUILnTg5pDyMjJktcjQAtmP1cN0YWyqEKXXo2XqFLorxlSzzY4rR4Y+GKYRE4L5Qpr YAOgFfFJ8jr/0y3aYyYRjzmlWg1XGmdvjig6nStIcR5K3EEugCpiCrtqpnbYE0xX+VzX cU3oJU3EJQ1l1Exx2tOzCS2IIEj5Uu9WypxXStl0JV2h1KbJ9snD3locDm9NdMXCxe+0 PbdQf1Va1iNNfWpUo9pbv5LDd+AZs+zxuXfOmxyY5xR1GyYgq/7xw6fb+uRaQPbIsO/P Ggo4tyrvSmebQcqNHcSyIioe4w0x5AfrbuNtC49MKrZZRu+m5zTeEK+LYZ+baQXqFQRe Hq1Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1742769564; x=1743374364; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=HXb1pE2B5VZK7eIRvGjCX0bwONX10G0/gh8FJgs0P90=; b=f2y8F5SGWiaEQFuTlX3AIl4sn6M9yAIy5TcXOzbsFqIb0bKi2yf+eTYxG7Z1JXnpoz ldBxEIX3k/Lhv3l7HjmKy5tR1D/Dsms+TbBl1RWPq/bJF0vg61bxMLFAiWfBpk163Ogx JO1JZpf48gBf6g+/+8+Fr3HEl//QpLajLCaaTcj4znETw0iESghKTlQEaz2aKlE9R3PI smNjv0345JmfaikEt34JKCf8fmB02nIBgAD33uWjNjcxgWDXDb3d9ei7vyFwd2U72PyC pEedbptmGiRMEqguMfY4BbLosh/mIBgN9jG8s0Mh24aPRl2hlVAJHeNNLPmKCe80NQPQ zlAg== X-Forwarded-Encrypted: i=1; AJvYcCU02EMBVIPEsL5/AYAsTw0CoiJB7R0tN/0TPEt19KfF5HdcL+raVc85NxOI69Fe4tt2FOso3VPuVuXe5no=@vger.kernel.org X-Gm-Message-State: AOJu0YyAfgR2W7/Kp9/Y4mWSXghGncnlM56eyvTMxFAbOhe/iMUTpOM/ UXqbDXlqXD2WEkIE9PXSQV9NOOUeLv/4bbFBh3E6mPbw8qcXqixFZyFdMR7B6Aw= X-Gm-Gg: ASbGncurQSIR7o1cxGLDzs41P22nkH57D+cs7TdCBUl8lqNN7l/5L3CGG48L3SOTdms 5ikXUlJ/a0oZMIT0BM+Xkhj0j+iIKoHf3huIQ31QG1WavDfpqn5e6aXONbKf2gB9ZGtpDa2RdhU q6tvIUmDHqE/0VVfydsmAfRGcpJDHQ2PPWaAvmHOB03HGuz73WrhVykJ3/tWM7goFFAL8PXoOC1 lZyP52Pd01RrfhY66aKvh8tmJw5OduXWUKnaho4ZNJZSnNrl0WKlSiHfcClmyEeESM1+vFUM8lF zzIaGfAABfGdPoe6FyWlRWcn30K/aYideWoa54oJfgNG23BAi5t6jRVH1FQT58upmhk/L2cpIRj QeeukUENGFm9VVhiqEDq6BAb2bwrE X-Google-Smtp-Source: AGHT+IFEmZ9BlAcg5cpLq9P2zpjpd5ecowSIznI/DDr2rcI73G5OWcR4yuBPI4oD1OUtU38fBId+Ng== X-Received: by 2002:a17:907:7ba8:b0:ac2:b684:542a with SMTP id a640c23a62f3a-ac3f23df97emr1170613466b.33.1742769564196; Sun, 23 Mar 2025 15:39:24 -0700 (PDT) Received: from puffmais.c.googlers.com (8.239.204.35.bc.googleusercontent.com. [35.204.239.8]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-ac3ef86e44dsm559686666b.31.2025.03.23.15.39.23 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 23 Mar 2025 15:39:23 -0700 (PDT) From: =?utf-8?q?Andr=C3=A9_Draszik?= Date: Sun, 23 Mar 2025 22:39:17 +0000 Subject: [PATCH 01/34] dt-bindings: mfd: samsung,s2mps11: add s2mpg10 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: <20250323-s2mpg10-v1-1-d08943702707@linaro.org> References: <20250323-s2mpg10-v1-0-d08943702707@linaro.org> In-Reply-To: <20250323-s2mpg10-v1-0-d08943702707@linaro.org> To: Krzysztof Kozlowski , Lee Jones , Rob Herring , Conor Dooley , Sylwester Nawrocki , Chanwoo Choi , Alim Akhtar , Michael Turquette , Stephen Boyd , Russell King , Catalin Marinas , Will Deacon , Alexandre Belloni Cc: Peter Griffin , Tudor Ambarus , Will McVicker , kernel-team@android.com, linux-kernel@vger.kernel.org, linux-samsung-soc@vger.kernel.org, devicetree@vger.kernel.org, linux-clk@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-rtc@vger.kernel.org, =?utf-8?q?Andr=C3=A9_Draszik?= X-Mailer: b4 0.14.2 The Samsung S2MPG10 PMIC is similar to the existing PMICs supported by this binding. It is a Power Management IC for mobile applications with buck converters, various LDOs, power meters, RTC, clock outputs, and additional GPIOs interfaces. Unlike other Samsung PMICs, communication is not via I2C, but via the Samsung ACPM firmware, it therefore doesn't need a 'reg' property but a handle to the ACPM firmware node instead. S2MPG10 can also act as a system power controller allowing implementation of a true cold-reset of the system. Support for the other components will be added in subsequent future patches. Signed-off-by: Andr=C3=A9 Draszik --- .../devicetree/bindings/mfd/samsung,s2mps11.yaml | 34 ++++++++++++++++++= ++-- 1 file changed, 32 insertions(+), 2 deletions(-) diff --git a/Documentation/devicetree/bindings/mfd/samsung,s2mps11.yaml b/D= ocumentation/devicetree/bindings/mfd/samsung,s2mps11.yaml index ac5d0c149796b6a4034b5d4245bfa8be0433cfab..ae8adb80b3af7ec3722c2a5718a= d8fddf0a5df34 100644 --- a/Documentation/devicetree/bindings/mfd/samsung,s2mps11.yaml +++ b/Documentation/devicetree/bindings/mfd/samsung,s2mps11.yaml @@ -20,6 +20,7 @@ description: | properties: compatible: enum: + - samsung,s2mpg10-pmic - samsung,s2mps11-pmic - samsung,s2mps13-pmic - samsung,s2mps14-pmic @@ -43,6 +44,12 @@ properties: description: List of child nodes that specify the regulators. =20 + exynos,acpm-ipc: + $ref: /schemas/types.yaml#/definitions/phandle + description: | + Phandle to the ACPM node for when ACPM is used to communicate with t= he + PMIC, rather than I2C. + samsung,s2mps11-acokb-ground: description: | Indicates that ACOKB pin of S2MPS11 PMIC is connected to the ground = so @@ -58,16 +65,39 @@ properties: reset (setting buck voltages to default values). type: boolean =20 + system-power-controller: true + wakeup-source: true =20 required: - compatible - - reg - - regulators =20 additionalProperties: false =20 allOf: + - if: + properties: + compatible: + contains: + const: samsung,s2mpg10-pmic + then: + properties: + regulators: false + samsung,s2mps11-acokb-ground: false + samsung,s2mps11-wrstbi-ground: false + + required: + - exynos,acpm-ipc + + else: + properties: + exynos,acpm-ipc: false + system-power-controller: false + + required: + - reg + - regulators + - if: properties: compatible: --=20 2.49.0.395.g12beb8f557-goog From nobody Thu Dec 18 22:20:07 2025 Received: from mail-ej1-f49.google.com (mail-ej1-f49.google.com [209.85.218.49]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 905271B4248 for ; Sun, 23 Mar 2025 22:39:26 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.49 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1742769569; cv=none; b=fytx/sA5YiRb66B3TY+xb2KJiCJELLK84+AxXGO/rdwNBlZxR7eDxh6zrJI1/Fwf3jfT2qiJ6mkl7wxhXxU9IpkPPpFURicghjhwBal7H2spJ9aHQ1RiGpNMOfTEqD+EToYI75SUU+gDFqPk5F3ftK8fdx15qMjqppVYBvpD/sA= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1742769569; c=relaxed/simple; bh=ft5MMINeJ0ZFFqsyd4wk/QMt+OACxl4RgJok7sE3LxY=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=Fkc3FNI7RpkWYyIbSL/W5JFbbqP5/e6nO3pz5dpC0CDd347VpCjz5g22TR09/noneTvjX255JathQ7AYDn6tcOGsvItTO4GYDa0OxCa1IV2epNQAUSZ9EFGZXXwNRLiChxTETUCu9PXHPzmuDiE5DnvJLa+DAV+wwP/wIO0AONc= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=bXVHTe/l; arc=none smtp.client-ip=209.85.218.49 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="bXVHTe/l" Received: by mail-ej1-f49.google.com with SMTP id a640c23a62f3a-ab78e6edb99so552690966b.2 for ; Sun, 23 Mar 2025 15:39:26 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1742769565; x=1743374365; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=76PH5cHSw8HwRSSvCBVkDwYPjRgUpAN3tWdOoIM1T/Y=; b=bXVHTe/lCcytO1CcopVSOr+R+hBF2n7JErX0VIIT7eeqljv3nLzD9yrWhU2FJRKCfq nrMVP3DWwwhuP3uNfZr4lsR1IstuIYajHcIuGpOcAZCaNGBrJ5HD4HuDdhBRjsK4UhLq qbdb/dpq2m6Hab2PG9Qa1jvC0x2/gTHdDcRsF30MW8rFDTLPkOhKjEg4tXBCZ2b8B5s+ TwsC1hPhNTMkD7LnUqF/Fv4no0EQ7/SZf6wuR5uiA9EntK7eI8CPloNZTWPs6F301sM7 NtxzmRhE2IOAs5UjqFaKjDBOJVUmNa0D7LvcOOUA/HBuCoO0J+r+S7g4Oz7idMYVOLAg kU5A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1742769565; x=1743374365; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=76PH5cHSw8HwRSSvCBVkDwYPjRgUpAN3tWdOoIM1T/Y=; b=LXpi+B2aITcJ2d7VCHYOjY2Onf2pOQ7vx7/7JGHklzced3ByleD+hTQnHHgoumioaZ J9Mzb+zSRKQ6LWPF/ZMoVganhqBHPDA4vrpy9CgRjRC8xot+TXSI5I4X4OtkUfuVpiTp 5XMwVNm84ZfYZ7fIkpvIMeIa5V+7kBhCpxtk1Mh5UiE1EoWkwknPrtDmr/uXC2yZ8JIN nD9K2olOOUBXLC/gVP5WViNe3w80/241aQoDJ3tZhBmiPoKNeooa8SKwcefcxAk/WJvp 0PpBjGAafV/lQoOPRbJh/AwlrhW+XVVXgfxv2iOK248l5X0dhJgR4U63S+ufp+YJovpv JnCw== X-Forwarded-Encrypted: i=1; AJvYcCXJaTzWt+RKf9v1dd7WdYQQnGZX0STrqOaVEYiea5p0w1yAkzhz0HwixfA2W2I+E56ElWUHgjMmew+qjiw=@vger.kernel.org X-Gm-Message-State: AOJu0YzNB295SCo66ptcznGyUDyMbwCe0ZmzHQFQdCTyg4LfslXmSV7m 5drFzpxSXHBNzW3gzkda44AM3vGqPhcjnBw3LtH8xo/1LCQjiFKpOSjJz+Kkqz8= X-Gm-Gg: ASbGncul3tYiG41CWUbLVHgi1DGEWSqfMm647vZT+qHF0Yrd6M46HsQ2ebqdztFmsop XK0hRhpgzLW/0fa4xtHvAxpdm7bh7EKcUdBVe3yGCxRs4eS5Kle33WvoURGbxhdOxtEItpldM6p WL5ciDms2oCQKNeVu+6KAGPUK8veNDvJzeNGiGUVOncPAFbQmfNrIMlRwGyI+5AgMBvQQ8Bt8Ni uM3f/6DdJ/E7cn12EiSac2srglxqmtJFL3CuezNFrLLOW+5VpM9Dw6YPLU/M1HTYIj1VbuZfYEn 4acgkwbRmZtN90nkx2DPTT76jADJv1shl6oi+Fxjc7Zz5aUexsXzuCP/IqWg6XE3up17dbs6UTx aO93xOIOyDRZYwgwVPMV5QD2NHckt X-Google-Smtp-Source: AGHT+IEYfWzNbR+K5DYstAqClR9nSakyWw/N8LzTya4wskfRe5KrC67EU110F2zXc4Z6WRaZMMlhIQ== X-Received: by 2002:a17:907:7292:b0:ab7:6fa9:b0a9 with SMTP id a640c23a62f3a-ac3f208a29emr1120053966b.11.1742769564738; Sun, 23 Mar 2025 15:39:24 -0700 (PDT) Received: from puffmais.c.googlers.com (8.239.204.35.bc.googleusercontent.com. [35.204.239.8]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-ac3ef86e44dsm559686666b.31.2025.03.23.15.39.24 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 23 Mar 2025 15:39:24 -0700 (PDT) From: =?utf-8?q?Andr=C3=A9_Draszik?= Date: Sun, 23 Mar 2025 22:39:18 +0000 Subject: [PATCH 02/34] dt-bindings: clock: samsung,s2mps11: add s2mpg10 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: <20250323-s2mpg10-v1-2-d08943702707@linaro.org> References: <20250323-s2mpg10-v1-0-d08943702707@linaro.org> In-Reply-To: <20250323-s2mpg10-v1-0-d08943702707@linaro.org> To: Krzysztof Kozlowski , Lee Jones , Rob Herring , Conor Dooley , Sylwester Nawrocki , Chanwoo Choi , Alim Akhtar , Michael Turquette , Stephen Boyd , Russell King , Catalin Marinas , Will Deacon , Alexandre Belloni Cc: Peter Griffin , Tudor Ambarus , Will McVicker , kernel-team@android.com, linux-kernel@vger.kernel.org, linux-samsung-soc@vger.kernel.org, devicetree@vger.kernel.org, linux-clk@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-rtc@vger.kernel.org, =?utf-8?q?Andr=C3=A9_Draszik?= X-Mailer: b4 0.14.2 The Samsung S2MPG10 clock controller is similar to the existing clock controllers supported by this binding. Register offsets / layout are slightly different, so it needs its own compatible. Signed-off-by: Andr=C3=A9 Draszik Acked-by: Rob Herring (Arm) Acked-by: Stephen Boyd --- Documentation/devicetree/bindings/clock/samsung,s2mps11.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/Documentation/devicetree/bindings/clock/samsung,s2mps11.yaml b= /Documentation/devicetree/bindings/clock/samsung,s2mps11.yaml index d5296e6053a1881650b8e8ff2524ea01689b7395..91d455155a606a60ed2006e5770= 9466ae8d72664 100644 --- a/Documentation/devicetree/bindings/clock/samsung,s2mps11.yaml +++ b/Documentation/devicetree/bindings/clock/samsung,s2mps11.yaml @@ -25,6 +25,7 @@ description: | properties: compatible: enum: + - samsung,s2mpg10-clk - samsung,s2mps11-clk - samsung,s2mps13-clk # S2MPS13 and S2MPS15 - samsung,s2mps14-clk --=20 2.49.0.395.g12beb8f557-goog From nobody Thu Dec 18 22:20:07 2025 Received: from mail-ej1-f49.google.com (mail-ej1-f49.google.com [209.85.218.49]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 6D6A01C6FE0 for ; Sun, 23 Mar 2025 22:39:27 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.49 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1742769571; cv=none; b=Z9Jtqb2QUnmkGt3MP8Eh1uCd1cRDibq30N02kAlbB+Fbd1oZc80aaNUO00m9glHPq/SZwWDwpQH4owWtjkwF1L+dtgSTLiwSTjQkFb/RhLPU2IzWQi4Lys95c5t4m87Wxl5dfLNt3rHr/oL5aA8RaeHsl+YsyVkHzzZzQRCTQik= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1742769571; c=relaxed/simple; bh=yWyEsUV61SIUGSRUBs0R2s8QMDXNnM8dfUs8hI7iDhI=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=ahF9MaNGs5nT8vKJgCZNhWky8j+OooGXwiBCiklX9aKUlDqeJ4HoSxhPJQhLaAxTZaKm6455zZIQgygrGEtkDF9IiRZ9+5Xk/8VbGmWN1qT9DgvAQPbnfsZZ5SsMfUpUtj0TbzXsAdYXi9ejP0jO0B7CabiBkIZDzJpjrBoc5v8= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=CYMGyJ2q; arc=none smtp.client-ip=209.85.218.49 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="CYMGyJ2q" Received: by mail-ej1-f49.google.com with SMTP id a640c23a62f3a-abbb12bea54so434335166b.0 for ; Sun, 23 Mar 2025 15:39:26 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1742769565; x=1743374365; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=9y2iwGfLCsw/LkK7ASOWMxlU+K/ybzYKfyvSxQC13dg=; b=CYMGyJ2qx/SSOxrxrYL05VEaM9hVN5UqiThK8rKWJri6u4f4SD6LRLAdiOFpf+c6Kw uYrw8msKNc6pSP0ZygXin8UgmGTqB0i+zAi7hsixnyQF4XpgDtxPngX1gyUCEs9uz1Xb B8YL/RT8A2KGqoU/a/9BBhvu/+1oR59eR8+iYzPPlCI+Ku5cLxCmP9qk8ItlVSf94Hk1 164BzjnVaBuV0X9BwoDg+N/HUrmQWvuP4GtTnl6DbyXEk0OoqcWJO9cYJcjVS+LHL1Gx BlXxVIjNMeF0hTMd6Uxk997Ahc2z1kmk6+F663qfSoCkgG0wY5GEQjOr4m7stKAWpSfr yoDA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1742769565; x=1743374365; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=9y2iwGfLCsw/LkK7ASOWMxlU+K/ybzYKfyvSxQC13dg=; b=iTZlMHy0ht1D/toxh3fGE3wOISQnyMVqgSfr6f7XES3y6Ss0Y3Z7vOTqgTA6MfUAw/ tvyjZno+Cm6hE+n4bTgaLTMUA9+b+GU8ut+2FoWVJyH/xkbLnYGRulTtL4fUfx/Ik286 9YKfyue0dh5pzF9Xo1xBaYZibWIkT9CwxITHKdrLwF6W4BjlRqtbHAvL8l1IqHPNYEz8 foHbJzfHyU9wsxi/4WNkXg40XgAzrrOGhZ4gxJlJDTpdNOJ2xGZaR0gSvnn9LIqhJXrl AtlcRd8qkeB5zXQtS6wrcv23XLj8vMQuUAsF/ovy9TAKwSeN7Lyf8nSf3jL76PXdaQeX 2CKg== X-Forwarded-Encrypted: i=1; AJvYcCUNqyW++7Nw+0QJnPTq81To4EMpQY+3Hvbk5wUUZfegUQ6B/iJBXrHv0aivvPiIpR0f26TxaN7w4a4Bo9s=@vger.kernel.org X-Gm-Message-State: AOJu0Ywrnrv29l8JMW2Myi1vHOOQhyhMF2rfdqGBjZDYL4h9UWBLEvlX 1wpugEr6zkNG7NS4GLUF8rhLREF4rzrMLDVM0V4yVMB6gsRoKwkT4mSOE8NLEak= X-Gm-Gg: ASbGncuHO7GiBslHdQNe2S1QOZfklz1p7W90XticCeS323ZNoAXJecYsBMkZ1iVxC2n IW3MJg7vhexPRqYNJG7CrqyQ4OOpd8zaJleWc1gr3bMNHpnwVtFHRAB//n9sAlidMA5w8DsGqh0 zLagqAn9wulnFpoj4GL4xu5zruI/gXyf9KeOB+V2MjpVFm4DAVsE3cazQ8g99IzINqyn4QixBRF g7QuY+ew1/ZRRSho+yOmxur0h/553A+wfFifXi85i1yZAGYdCYVsjYAlAHqvLsR/jV8m0ijGuCC Qn1q/b2q5QF6b6vEX/5Yt/daayhwE+FkF6LYzjXrSkC+WhpNDMlEoK4VCQJtunOKwXYX7NcWv96 1WOGFhOOn+U9vBxAKAzYz5y9VEhcU X-Google-Smtp-Source: AGHT+IGsAC+lKGhqNteT46jfSAPWq5SZvMmaurRX3KpVQHgnAMqrYltc7UBx62PPecd7JPcN0qJQgA== X-Received: by 2002:a17:907:9805:b0:abf:4c82:22b1 with SMTP id a640c23a62f3a-ac3f2297ac8mr1130529166b.32.1742769565476; Sun, 23 Mar 2025 15:39:25 -0700 (PDT) Received: from puffmais.c.googlers.com (8.239.204.35.bc.googleusercontent.com. [35.204.239.8]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-ac3ef86e44dsm559686666b.31.2025.03.23.15.39.24 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 23 Mar 2025 15:39:25 -0700 (PDT) From: =?utf-8?q?Andr=C3=A9_Draszik?= Date: Sun, 23 Mar 2025 22:39:19 +0000 Subject: [PATCH 03/34] firmware: exynos-acpm: export devm_acpm_get_by_phandle() 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: <20250323-s2mpg10-v1-3-d08943702707@linaro.org> References: <20250323-s2mpg10-v1-0-d08943702707@linaro.org> In-Reply-To: <20250323-s2mpg10-v1-0-d08943702707@linaro.org> To: Krzysztof Kozlowski , Lee Jones , Rob Herring , Conor Dooley , Sylwester Nawrocki , Chanwoo Choi , Alim Akhtar , Michael Turquette , Stephen Boyd , Russell King , Catalin Marinas , Will Deacon , Alexandre Belloni Cc: Peter Griffin , Tudor Ambarus , Will McVicker , kernel-team@android.com, linux-kernel@vger.kernel.org, linux-samsung-soc@vger.kernel.org, devicetree@vger.kernel.org, linux-clk@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-rtc@vger.kernel.org, =?utf-8?q?Andr=C3=A9_Draszik?= X-Mailer: b4 0.14.2 The upcoming Samsung S2MPG10 PMIC driver will need this symbol to communicate with the IC. Export it. Signed-off-by: Andr=C3=A9 Draszik --- drivers/firmware/samsung/exynos-acpm.c | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/firmware/samsung/exynos-acpm.c b/drivers/firmware/sams= ung/exynos-acpm.c index a85b2dbdd9f0d7b1f327f54a0a283e4f32587a98..7525bee4c6715edb964fc770ac9= d8b3dd2be2172 100644 --- a/drivers/firmware/samsung/exynos-acpm.c +++ b/drivers/firmware/samsung/exynos-acpm.c @@ -741,6 +741,7 @@ const struct acpm_handle *devm_acpm_get_by_phandle(stru= ct device *dev, =20 return handle; } +EXPORT_SYMBOL_GPL(devm_acpm_get_by_phandle); =20 static const struct acpm_match_data acpm_gs101 =3D { .initdata_base =3D ACPM_GS101_INITDATA_BASE, --=20 2.49.0.395.g12beb8f557-goog From nobody Thu Dec 18 22:20:07 2025 Received: from mail-ej1-f47.google.com (mail-ej1-f47.google.com [209.85.218.47]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 315C61C84BB for ; Sun, 23 Mar 2025 22:39:27 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.47 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1742769570; cv=none; b=dzJFbW6A5+S3lysoC+nRjBf/DZ5XEL2lChH48Q9G4SLGdJulFDI2Gt1jk59wMesvo2bJi7ScN0pu9JQbzGN+KSQ6d0g4feCr5RgQOPY5CzZGB7V5BHJLnTay5nTMZGx5/MOv3mpuSafosBn55NNcooW1V1ZC9YWrVPCsvmWJoGg= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1742769570; c=relaxed/simple; bh=UZVJoMISWFvF9aHFwyrjWSN+7tVwoe3JXUCgzfVpa24=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=IAg0aJ3z4wO79qkh+EOuoZ/W3wER7zKN4WOchwszoHdedfN42IUtB2MfDfzpW7rW1r3RyAHan7C3o5WjFIx2ST9ni+Xz/btZ7QmvrBCWYcyBokG3iBWHUKEbQdGd3jKB6P3At0joEUuXNYNGExHeBjD5WEgXfwST24IyPbN5kg8= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=ljwy1hg0; arc=none smtp.client-ip=209.85.218.47 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="ljwy1hg0" Received: by mail-ej1-f47.google.com with SMTP id a640c23a62f3a-abec8b750ebso702071866b.0 for ; Sun, 23 Mar 2025 15:39:27 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1742769566; x=1743374366; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=vE10aUiMRjd8RDkwLK4ZfbXWjVS481xd07k1tbR4ePA=; b=ljwy1hg0w7d08uwjQpIVjewXX//G/+dGER5okwBKZPEiZNQ6YK2oBUxFG3GXFLe29P OCvtpzvntIqjjr8U0w09CAFbhy2Ky7AvBjD5Kdvi+aTV4sN0KpidNYNx4nJig1k4I+oi 9S+ucAq5kUlkX2JN1J+hGhC6zSta+NuKWQugSMNj+Q4cpVztQ8RD4okNJq1qRz1a7wXa /72AML98KCLC8/+/+qqDE3OtktZiNIgZcKCUrF4cnyLkuszV0LPBvCDP2hfZxholBsRd HWDaloMWO1W217gfhKlAozTvBtCPG7zvFoAGID3n5sqKgByC1zG7iIKzToYofx5b+udG GlUg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1742769566; x=1743374366; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=vE10aUiMRjd8RDkwLK4ZfbXWjVS481xd07k1tbR4ePA=; b=EttG1WlIEUVc3z5+N38IUKUlwa50oqd2wPoPliBhfnMqnSUrZuGBbdVDpUXWbaUGdF 6k4IErtAGy8eZJwBVGErZ0ZOLUIdU5KpigJ2vZ0dpr6AvK+6sDjTrjfyI5COcRysOB2Z H1I6SmWzX8zQIx/MWx5CfMCGI+jSY8skS6ThrUtasWJgTjUKetbjCjZ0yEtEOV/DveWc u2jahpbVLXkH/WyAzp23O4SFZk8mT0Hm2ACzNR3/CHo5npwMIOg3TEhlKOoivByDGOaY QyCeSDm4yrpTI1KUE6HBszfzmUK1xjDp+AYzP5uitG6s3uLA+s4HryWRa8WptRHgP9/E VEhw== X-Forwarded-Encrypted: i=1; AJvYcCXnrjUJ8oLCInSI3UatiZL5rBRCe2X25F/8ctV+eqWT85aBybsOew/En1LxHSWlyXknJ6p0jpZd4kZTdq8=@vger.kernel.org X-Gm-Message-State: AOJu0YwpTTTghJSrj3vRGRML4Pexxs6SxJfW4kavRUiE5+d8PWEdsX7b 59ApeEysDKqHFpkRqEk+X7kwpV5i5ncSFyurDSH4MTFEsz+e21FqKR9/2dlGqmg= X-Gm-Gg: ASbGnct6PEygvCYdLa80t2vNqBzuVjXDVzPU4P8lnjIlpa4MAxulSOyPHACcLPwpvW1 0VOgWgmecJ0FVnXJ6K/vG8H6FITI8pBLYGJVs8Nl8ZtsgHdHdwVaVhUS9YYtItk1GQaki8a1qMz NSByfDRPefnhkzBOCQ/9T4aaUIy87bJjEvq4uyykdnzfrrU46BMF9jdiP7emXpqmcOietcBxsM+ bX9tepFIjzrXNKSKLwFEU/UBHDd7RCeWtaVVPkJRQUMe77fDdw3+uT7dZZDyzNF5y7IZZ+UI+PM k90VjzLwWPG/tu3utC+LTBLe5QpDHTVGN7nhmkziNgU2VMF8AHcMEPQy62Nf1RUvFogu0TYKRRt //qxEI2A/wU72oHPJDxJvpAUmarMS X-Google-Smtp-Source: AGHT+IGpWEO6t55UagtbffDf7jAwBntYjANUq6862eIF7eGvrz/eDXOggCL/0jo6AVynnVDx8dSnbA== X-Received: by 2002:a17:907:97cd:b0:ac3:8988:deda with SMTP id a640c23a62f3a-ac3f24d7916mr1017581866b.40.1742769565973; Sun, 23 Mar 2025 15:39:25 -0700 (PDT) Received: from puffmais.c.googlers.com (8.239.204.35.bc.googleusercontent.com. [35.204.239.8]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-ac3ef86e44dsm559686666b.31.2025.03.23.15.39.25 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 23 Mar 2025 15:39:25 -0700 (PDT) From: =?utf-8?q?Andr=C3=A9_Draszik?= Date: Sun, 23 Mar 2025 22:39:20 +0000 Subject: [PATCH 04/34] mfd: sec: drop non-existing forward declarations 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: <20250323-s2mpg10-v1-4-d08943702707@linaro.org> References: <20250323-s2mpg10-v1-0-d08943702707@linaro.org> In-Reply-To: <20250323-s2mpg10-v1-0-d08943702707@linaro.org> To: Krzysztof Kozlowski , Lee Jones , Rob Herring , Conor Dooley , Sylwester Nawrocki , Chanwoo Choi , Alim Akhtar , Michael Turquette , Stephen Boyd , Russell King , Catalin Marinas , Will Deacon , Alexandre Belloni Cc: Peter Griffin , Tudor Ambarus , Will McVicker , kernel-team@android.com, linux-kernel@vger.kernel.org, linux-samsung-soc@vger.kernel.org, devicetree@vger.kernel.org, linux-clk@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-rtc@vger.kernel.org, =?utf-8?q?Andr=C3=A9_Draszik?= X-Mailer: b4 0.14.2 sec_irq_resume() was removed in commit 6445b84abf91 ("mfd: Add s2mps11 irq driver") and sec_irq_exit() in commit 3dc6f4aaafbe ("mfd: sec: Use devm_mfd_add_devices and devm_regmap_add_irq_chip") while the prototypes were left. They should be removed. Do so. Signed-off-by: Andr=C3=A9 Draszik Reviewed-by: Krzysztof Kozlowski --- include/linux/mfd/samsung/core.h | 2 -- 1 file changed, 2 deletions(-) diff --git a/include/linux/mfd/samsung/core.h b/include/linux/mfd/samsung/c= ore.h index f35314458fd22e43fa13034439406bea17a155c9..b7008b50392ab857751b89e0a05= d2c27f6306906 100644 --- a/include/linux/mfd/samsung/core.h +++ b/include/linux/mfd/samsung/core.h @@ -72,8 +72,6 @@ struct sec_pmic_dev { }; =20 int sec_irq_init(struct sec_pmic_dev *sec_pmic); -void sec_irq_exit(struct sec_pmic_dev *sec_pmic); -int sec_irq_resume(struct sec_pmic_dev *sec_pmic); =20 struct sec_platform_data { struct sec_regulator_data *regulators; --=20 2.49.0.395.g12beb8f557-goog From nobody Thu Dec 18 22:20:07 2025 Received: from mail-ej1-f43.google.com (mail-ej1-f43.google.com [209.85.218.43]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 6AA301C8619 for ; Sun, 23 Mar 2025 22:39:28 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.43 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1742769571; cv=none; b=sOH8hlCGB3JlPIeptPuHnjpdbWbrcGUugSyKjgovs96X2JPpthenIuLgyBNeJw161Y3LHDTVcKc2zGpq2zqtWqatKQU6plnRTlxpM5g8MiUqrV9DNwle9KCChUrRfQRiW+XuqK/K16KW8rCIA56a4/IQwPBwLUjIQFHQTBBy1nY= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1742769571; c=relaxed/simple; bh=rkPD/zJcnab9QOgG4eBd9kcunv90F+5fDLXXmd7T+is=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=Hg4tBr7CAea66/KM4Zf5N+pv4quvkdyCRl0RZztZthuc4vamG07UHEE33Y056Re9vW+PnJvL32dRqEwvv2/lQYLu2w9vVPaq96WBsu+bSVxMCPtp3t52u/XArrESRkn+2R+kf7WCVq+z42YszVHwDd2IAkSyz2tywjL3xjJAFPA= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=E++Fv1W7; arc=none smtp.client-ip=209.85.218.43 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="E++Fv1W7" Received: by mail-ej1-f43.google.com with SMTP id a640c23a62f3a-ac2ab99e16eso764023566b.0 for ; Sun, 23 Mar 2025 15:39:28 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1742769567; x=1743374367; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=epweE/CfbfJt2xFB7j7q8NZbqQJAbZszVB23uUdGgMg=; b=E++Fv1W7pxUdPjZG4G+2GdPITas6vD8CUVFmOnxWhuFDdswGjRsLMVxTtJucZ/6k2j IQWkyjKucWUAKYy1t7NUvMWSmVc34wfwC7gzbYyoSNVPJsdLOJ30b7UhNyObvznw1W89 2Uvex+ZOg44xlm8zFFjPaZVcCkdN/gki3+iU02VH8+XMiOTIUlNdyqYqD6A5pWTmrZrm V6vjthIpPa4LVGfqtwUAdsmnRnnx9f5K5nITynMgnc5oAh71kP9B/Nuf+ykFzRnSU2Xn P/SNXIdJXWNBnbQQlzsgJDa+IRWRlNRMEfzksq/6ftm64OdBn5b+NhusBaboA6nRU5jp lXGQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1742769567; x=1743374367; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=epweE/CfbfJt2xFB7j7q8NZbqQJAbZszVB23uUdGgMg=; b=IKWhb/bBPyr/6gxhYPjORmSRJd2TnPf6W3/BvaalOB9H+NTRzY1yVY1eDbuDxli4EV AfecbVlr7PqhARF8TfTYtNOYzNSG3RL0/pNrGLWyM9DbsaBI46OOAJ5hvD51z/MIedQP ZTQzuenFHfi5ZByZrLs9VDUifBDNxmNiKzJcVPmyu7L0c0mVGIg9iMcb0+Ygi3uHDFFM 9N97c3YzWyNZm76g3tOW6s8I1iMKa+t9P7vqYYf0cmzjXqyqtMKuVVpwMQ6E1eHTcfKq YjEoOZcvVzMUY1WgWzTT6SWWJOOyhvobq60OApm8jdroR/ZYCCC7TwOcCpZmftiPpkAH nByA== X-Forwarded-Encrypted: i=1; AJvYcCVnWmgaTAvsvjnAlZXjms3DiKK3ewhxq727lRn8jXiQBjoj++ZWY27rU3UEWHMNLbDKZeWJbOuDzHjzt1E=@vger.kernel.org X-Gm-Message-State: AOJu0YzL8qfVV4MdRb04qerCYp2tyWti0jglm8fJ6QqVBlwuO4kGWO4K ro3TfPDEJ5Bi5LJ8Rmo2ioGrMQ49H4yaoZN0rytWs2zhq625zGzHw7L3mlDVfNo= X-Gm-Gg: ASbGnctQMi2I+oC0RGlGL4x28MU3cldBecqVr2yHknB4sIvx5ect6OL0RwsypQb9JHx TFhltSOU/sixvq9L3cTaBPvvIl0vDB5bWWdMGjK2rbKFmNA58Bmpy8K1FiNS+l1cUgHlvKWZoxa Atox/tZGoJ1YAE8SboEB0G2fpUwD2PkWDGAWvvnp4IVr4c4XFgLU+yn9OJA66uCsDQUeU3k6bfn cTw+geCdimWAGgdKmrUQwc5C2O3o1Nb3PIfmorxmKt3etyO0Md/pe18yCmkZCgDImbdIuMWPEF+ rjZAPXWLxouRv882+EScAY7FZw4TTk4NVLPvEkXpqFtQ6vnItppbiE0FfmPx81+xXWZ8M9uZgjd eIKt7BHipsTXqNZ5Y0BGvmFpXlt+s X-Google-Smtp-Source: AGHT+IFxrAKkMvESpg2DzD65IhmLmaroltgGQ5JYq8gpBxP70jAXR5CPVBPl8pc6WMyqqMZfFh61ag== X-Received: by 2002:a17:907:7f22:b0:ac3:2a54:875d with SMTP id a640c23a62f3a-ac3f251b8a8mr1007451366b.36.1742769566602; Sun, 23 Mar 2025 15:39:26 -0700 (PDT) Received: from puffmais.c.googlers.com (8.239.204.35.bc.googleusercontent.com. [35.204.239.8]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-ac3ef86e44dsm559686666b.31.2025.03.23.15.39.26 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 23 Mar 2025 15:39:26 -0700 (PDT) From: =?utf-8?q?Andr=C3=A9_Draszik?= Date: Sun, 23 Mar 2025 22:39:21 +0000 Subject: [PATCH 05/34] mfd: sec: sort includes alphabetically 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: <20250323-s2mpg10-v1-5-d08943702707@linaro.org> References: <20250323-s2mpg10-v1-0-d08943702707@linaro.org> In-Reply-To: <20250323-s2mpg10-v1-0-d08943702707@linaro.org> To: Krzysztof Kozlowski , Lee Jones , Rob Herring , Conor Dooley , Sylwester Nawrocki , Chanwoo Choi , Alim Akhtar , Michael Turquette , Stephen Boyd , Russell King , Catalin Marinas , Will Deacon , Alexandre Belloni Cc: Peter Griffin , Tudor Ambarus , Will McVicker , kernel-team@android.com, linux-kernel@vger.kernel.org, linux-samsung-soc@vger.kernel.org, devicetree@vger.kernel.org, linux-clk@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-rtc@vger.kernel.org, =?utf-8?q?Andr=C3=A9_Draszik?= X-Mailer: b4 0.14.2 Sorting headers alphabetically helps locating duplicates, and makes it easier to figure out where to insert new headers. Signed-off-by: Andr=C3=A9 Draszik --- drivers/mfd/sec-core.c | 14 +++++++------- drivers/mfd/sec-irq.c | 5 ++--- 2 files changed, 9 insertions(+), 10 deletions(-) diff --git a/drivers/mfd/sec-core.c b/drivers/mfd/sec-core.c index 3e9b65c988a7f08bf16d3703004a3d60cfcb1c75..e31b3a6fbc8922e04a8bfcb78c8= 5b6dbaf395e37 100644 --- a/drivers/mfd/sec-core.c +++ b/drivers/mfd/sec-core.c @@ -3,16 +3,10 @@ // Copyright (c) 2012 Samsung Electronics Co., Ltd // http://www.samsung.com =20 -#include -#include -#include #include -#include #include -#include +#include #include -#include -#include #include #include #include @@ -23,7 +17,13 @@ #include #include #include +#include +#include +#include +#include +#include #include +#include =20 static const struct mfd_cell s5m8767_devs[] =3D { { .name =3D "s5m8767-pmic", }, diff --git a/drivers/mfd/sec-irq.c b/drivers/mfd/sec-irq.c index 047fc065fcf17f5bde84143d77a46749111ea5b8..5c0d949aa1a20f5538d8baf7a8a= efc1160ffa14c 100644 --- a/drivers/mfd/sec-irq.c +++ b/drivers/mfd/sec-irq.c @@ -6,9 +6,6 @@ #include #include #include -#include -#include - #include #include #include @@ -16,6 +13,8 @@ #include #include #include +#include +#include =20 static const struct regmap_irq s2mps11_irqs[] =3D { [S2MPS11_IRQ_PWRONF] =3D { --=20 2.49.0.395.g12beb8f557-goog From nobody Thu Dec 18 22:20:07 2025 Received: from mail-ej1-f51.google.com (mail-ej1-f51.google.com [209.85.218.51]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 6CB821CD1E4 for ; Sun, 23 Mar 2025 22:39:29 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.51 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1742769573; cv=none; b=AjY7/DrkuSpkdYUZ53ereWyBVyfY+RM5VENUT4nvF5G6y6tO12qIGFuIwPploFWMLDkuLra61O+yCAd3tPbblBsmVemBJsTQjA70f8SbsdONkLQFPxpnRw+wnk0QmqHPO/Iu/GJTJK2hv09Og8GryOIs1e+0h81rHT8lcCaxAUY= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1742769573; c=relaxed/simple; bh=BAdQgtrPovKD1iIkHpNo2/fj9h1pbImjAxhHF9j1z9w=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=F8eAx/eVS7WJLK2a5r7+dJzGRqzN10G7TN9O07ps4De7ijWdBsWxkfVRvCCkKiARk+6R7BceV7u5yKPGnm2dqvOD7rj3Gz5XE2JIiKX9LOI4AQyx8+H06bLh+0gPWyuX+dYkN/NHHp2DOvz4UM0rPvh3fwJELNX3/LYc7qNHa6E= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=wektAsnB; arc=none smtp.client-ip=209.85.218.51 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="wektAsnB" Received: by mail-ej1-f51.google.com with SMTP id a640c23a62f3a-ab771575040so944741566b.1 for ; Sun, 23 Mar 2025 15:39:28 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1742769567; x=1743374367; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=ElO2IZ9G98m5zgbIKm9J2T+DEuKZxhIOZ2O4ti4VZ1Q=; b=wektAsnBPyMEZMxqYx/4ZkVYxXJkd/cRbrZr7cbw2Vl4uX5kwkPdagGjmHAKABKuNS xu/zT1cYWAhXAV0n2TpxFQMS+fTqx040UeHEDSb2Mr7E9hdnDt69PtBVj/IXN6aqiKYv YzK7o8/rUoAzEUC/ai2fYkT9CHGC7K3KJe68jIibInEdL/WprFJb/q5/KrJu0jsFR20p Dy3NyTGFWuYLegvxLwXNQy/4GbSZOUd2EVG+kGDjiapWxNO8NJCBXWbeTPdnT1bRurR7 aoU7adxGY5Mu4/tDJOFHZc18mMsUUHlT0E/iWSIkhjpOR90keAJezSdJUWsE2KVRQ8Ig jI1g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1742769567; x=1743374367; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=ElO2IZ9G98m5zgbIKm9J2T+DEuKZxhIOZ2O4ti4VZ1Q=; b=kQJe9vbm1w2bqx+xNaPupxdiDH2fmRf4S2z7uONJeBnKCmljIIB99yn9uLby2tTB43 sHroSvMZtv6qxhKfIEsejWxPtlA9VnFO6IC/4QK2uhy//YOsAyq+XKn2VR1Nb/gtHB82 B2qRex+IdVm4CjlSQ8k1nRV60FTsHQ9gCgf6j/XcNj5yzCMdN3+5fhdDV3NkkvDRx3gS Oz1zAhG67ehTM21j//78P/Ao1amlxaoARKWPYa2SObebut6X3qtDUnt/+KiikXHaNknT YxRKt40UdO0d/Wtd1038CEpoQ0v/1if9cEcVJJkDTb4XPwvyG/YgH8wtlKOE0mhxBHgo 5mig== X-Forwarded-Encrypted: i=1; AJvYcCWkRQWBQX3DtBx4+cwnglHMHd7i/Ml9VHEHbD08w049e52UCxrXVdZYBF6NG9zclKoS+3GPoMDDr+oPOUw=@vger.kernel.org X-Gm-Message-State: AOJu0YyPzpRUluyxmckaiSzoFX+pN5R6Y3+ocGaKVD0H77/tRHhMVK1N nJ0Z7+OfcGbF54KOX0MiZdozolaPWkpOi2FwKQ/9DeJ/5P3RJA91CWFsbaA3Mgo= X-Gm-Gg: ASbGncsa5PToUwewy7PVDHmNJaJDyamU+fCfdYdhIqVyNuq6FX2jZi1H4Ctr4X7iXmo 6cgtI+JVz60/klKkK+4jZTUD4BDoeVUaPtne7a4qoE7WfKidHi7ZAwfyF7TQTzcqiElkZkx1n3y alkASvviCKJdiH0eWyEDhwTwvoX8ekDcuIOe1XM8tcc/TxxrJ6K903kEdDD8Pll/g1jY6KdyUL3 sy7e/J2AYY1qeTXNyfSn4ZnfRM6HoBrIHMajljkdstz2pIvQMnWAn2eQZgeA72Kik3+tcFl7aVp CCM/PzJtau5V1LSEIUOn7hsuwKUE1WmNVkHNiQDD3QHoWpDDmdDOmVbYBXUeqph6hhABLp8EtyF cAaBL25P3ua3TkjYJokflM4Pk9NZi X-Google-Smtp-Source: AGHT+IHK84mhAeYJUO60X9G/6jnyMUTEi3qcuoEP39r4Iheks7w5bAT6r9bNJMH9nKdB0JzRhkSGLA== X-Received: by 2002:a17:907:d58b:b0:ac3:ef17:f6f0 with SMTP id a640c23a62f3a-ac3f00b5ff7mr1040036766b.5.1742769567137; Sun, 23 Mar 2025 15:39:27 -0700 (PDT) Received: from puffmais.c.googlers.com (8.239.204.35.bc.googleusercontent.com. [35.204.239.8]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-ac3ef86e44dsm559686666b.31.2025.03.23.15.39.26 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 23 Mar 2025 15:39:26 -0700 (PDT) From: =?utf-8?q?Andr=C3=A9_Draszik?= Date: Sun, 23 Mar 2025 22:39:22 +0000 Subject: [PATCH 06/34] mfd: sec: update includes to add missing and remove superfluous ones 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: <20250323-s2mpg10-v1-6-d08943702707@linaro.org> References: <20250323-s2mpg10-v1-0-d08943702707@linaro.org> In-Reply-To: <20250323-s2mpg10-v1-0-d08943702707@linaro.org> To: Krzysztof Kozlowski , Lee Jones , Rob Herring , Conor Dooley , Sylwester Nawrocki , Chanwoo Choi , Alim Akhtar , Michael Turquette , Stephen Boyd , Russell King , Catalin Marinas , Will Deacon , Alexandre Belloni Cc: Peter Griffin , Tudor Ambarus , Will McVicker , kernel-team@android.com, linux-kernel@vger.kernel.org, linux-samsung-soc@vger.kernel.org, devicetree@vger.kernel.org, linux-clk@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-rtc@vger.kernel.org, =?utf-8?q?Andr=C3=A9_Draszik?= X-Mailer: b4 0.14.2 This driver misses to include some of the respective headers of some of the APIs used. It also includes headers that aren't needed (e.g. due to previous driver rework where includes weren't updated). It is good practice to directly include all headers used, which avoids implicit dependencies and spurious build breakage if someone rearranged headers, as this could cause the implicit includes to be dropped. Include the relevant headers explicitly and drop superfluous ones. Signed-off-by: Andr=C3=A9 Draszik --- drivers/mfd/sec-core.c | 7 +++---- drivers/mfd/sec-irq.c | 5 ++++- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/drivers/mfd/sec-core.c b/drivers/mfd/sec-core.c index e31b3a6fbc8922e04a8bfcb78c85b6dbaf395e37..b12020c416aa8bf552f3d3b7829= f6a38a773f674 100644 --- a/drivers/mfd/sec-core.c +++ b/drivers/mfd/sec-core.c @@ -3,9 +3,9 @@ // Copyright (c) 2012 Samsung Electronics Co., Ltd // http://www.samsung.com =20 +#include #include #include -#include #include #include #include @@ -17,13 +17,12 @@ #include #include #include +#include #include -#include -#include #include +#include #include #include -#include =20 static const struct mfd_cell s5m8767_devs[] =3D { { .name =3D "s5m8767-pmic", }, diff --git a/drivers/mfd/sec-irq.c b/drivers/mfd/sec-irq.c index 5c0d949aa1a20f5538d8baf7a8aefc1160ffa14c..3ed2902c3a2634a6ea656d890ec= ea934053bd192 100644 --- a/drivers/mfd/sec-irq.c +++ b/drivers/mfd/sec-irq.c @@ -3,7 +3,10 @@ // Copyright (c) 2011-2014 Samsung Electronics Co., Ltd // http://www.samsung.com =20 -#include +#include +#include +#include +#include #include #include #include --=20 2.49.0.395.g12beb8f557-goog From nobody Thu Dec 18 22:20:07 2025 Received: from mail-ej1-f42.google.com (mail-ej1-f42.google.com [209.85.218.42]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id AC8B21D5150 for ; Sun, 23 Mar 2025 22:39:29 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.42 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1742769573; cv=none; b=JcPTAwieRGBuPYwM3zA7GIogk03TJ2zV64ZXwL+DpMwILSCZeNA1REHMPxysTf8yGXXFClwvkxNywxXGtCw6UnCLFHeO+aQpnmAiMhR92UAwAmv7b2AbxZPvvV+Rj/2FliHDH1qGd1r5AixWDi1AvIau4/v0hfP9MibE8DtDRkU= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1742769573; c=relaxed/simple; bh=78YLeSjujtRUeSeH8Vmm4IW9a6yqsbDcHABSrgUettU=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=fJ6MVadR7tsY9Um/gjUakWtcvaayolvnfb21k8smIFDO8DahhCqqvRC9nfO0Z/qM2FLWJabs2B7YGcXDG/A6hTBR3k8f4gCzJDmvh4iPALblHDWaF+1pvEBdxP4GKUOrhVFyo5fKYTdKlkC9gx5P1t0pmlt78K67frsXlKWBQAA= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=b5hOKARr; arc=none smtp.client-ip=209.85.218.42 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="b5hOKARr" Received: by mail-ej1-f42.google.com with SMTP id a640c23a62f3a-ab771575040so944742166b.1 for ; Sun, 23 Mar 2025 15:39:29 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1742769568; x=1743374368; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=0uX6CkEO0NwgPlFwhM+5SvUIZg247JR2UUxHaZZQTw4=; b=b5hOKARryU99nrH+vk+1gXNyeAwqNlf6uuW7rALv1d4ffsSGK1CVF5QweC+IyZ1YsU ID36Wiout5/4QBC1wAB7ZlQMbAK4KRkYB37zmbS1Y3ANcra8qkMXry9M7M5itzN7JFfd RnNeEHKinM3ip/QmcLQ2+p9N1R7l0nsORC4SOFLbRKgwM+q2rF3cAB3RuG4CkRQ/n4S3 1qLf2W4WMfw1eEy3DNFb4lBVbIyN/u2uinBdtP+J1lWsac5Q8ZB5bSfySbT3ErLKZXV6 4N44MEY6A0ymwkxAlM9qDSxNY//q6eJsSQoaYkX7q+pMyckK7spFg8fX9g6FQjkavLuH HPcA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1742769568; x=1743374368; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=0uX6CkEO0NwgPlFwhM+5SvUIZg247JR2UUxHaZZQTw4=; b=EEms2ke11vHF74mQGPR9J+LYEdw8s1+pxLjQiVgHysOM47GS2YWWxWO0QSsG9TaYx9 xomQdKfI5it9GD6wu2wUyi3tfXhnlIe/VGRW7YGwcH3+952LLwMeqb5UBh4FWsuxCwVu oj6dNkRv4SzJfkuNn9yB70cS/y788KEjQE/h9EmLRlfGSNTXWvM5pz9VjFmKB2mcDFEN FNkBNI5wWFZ2MFYrvVhYMRBvB0B8WSG+8cwEk0D18P8MkTE3KaT+4Zo6mSaJzOi/9lsb DbaLudmj+mw930fL1A95ydRjEGJUP7OfsDlVe9wNDeXyQ+VaAdB8+GObUtOgGWmnBp4s y78Q== X-Forwarded-Encrypted: i=1; AJvYcCXo6FAem6oUQ58wcbtZ7KBAQJ3WMfeR2NsGOVwk0/uEBWuYVuy1d3PnSXp6pRwsVmxLYnpHiCYIe8LZVGQ=@vger.kernel.org X-Gm-Message-State: AOJu0YwW/DVvIFD/p7Re17pxMW9KD3jNPl9LXL14eEwOUXPkPLB/iTDA qJ38e7Woeaa+KI1H6lX4fJjMJj2++E07ZXO/Lt5WXvjsmG35V/yGnnbbm+/xFUg= X-Gm-Gg: ASbGnctpC744obwnTGxGdc0q8TgSeJ18/0rGeDoF6DhpgR4HCHfCfFkLMY0+RkLtFa2 U00Q/o+61nrti8NlFNKd3Br+BnZuGBBt2xZRL0xL8sNHspGDAvlIfRwKQQeWgcVgux9rwOLpgAI cEutTrbvcMmYIz51cfteBk6GwjNG1rOSpo3hkwV9jsrDzPSlsrhBWlAuXVYL5ECBgfxZjyvnuWp ++tmpDGFwLQuMGHuL6V9gOFL/Aa3g93bKoJcF0v4fdYUezaKJT348Wnbgb7zzTkJCF6tY31eund dUDtfzKzQcRcja5cdfAVPqODM8XnPPvwLRpbaK7rP8jTNJWEwjtoFSEKEnHxmQ+vgnWqL8D3sy/ a6HyPiGGKC2/OKb/9C7kJFw7uoya985gNYX8v0fU= X-Google-Smtp-Source: AGHT+IFvkyM7m55m5DAsodXq5EZ4AXqEDqM6V8YHvLrK06u5ugX5A70IcVFVe8/Urn5Sgh48Nw6Uvw== X-Received: by 2002:a17:907:2d20:b0:ac2:26a6:febf with SMTP id a640c23a62f3a-ac3cdf8a8bbmr1398647266b.20.1742769567610; Sun, 23 Mar 2025 15:39:27 -0700 (PDT) Received: from puffmais.c.googlers.com (8.239.204.35.bc.googleusercontent.com. [35.204.239.8]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-ac3ef86e44dsm559686666b.31.2025.03.23.15.39.27 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 23 Mar 2025 15:39:27 -0700 (PDT) From: =?utf-8?q?Andr=C3=A9_Draszik?= Date: Sun, 23 Mar 2025 22:39:23 +0000 Subject: [PATCH 07/34] mfd: sec: move private internal API to internal header 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: <20250323-s2mpg10-v1-7-d08943702707@linaro.org> References: <20250323-s2mpg10-v1-0-d08943702707@linaro.org> In-Reply-To: <20250323-s2mpg10-v1-0-d08943702707@linaro.org> To: Krzysztof Kozlowski , Lee Jones , Rob Herring , Conor Dooley , Sylwester Nawrocki , Chanwoo Choi , Alim Akhtar , Michael Turquette , Stephen Boyd , Russell King , Catalin Marinas , Will Deacon , Alexandre Belloni Cc: Peter Griffin , Tudor Ambarus , Will McVicker , kernel-team@android.com, linux-kernel@vger.kernel.org, linux-samsung-soc@vger.kernel.org, devicetree@vger.kernel.org, linux-clk@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-rtc@vger.kernel.org, =?utf-8?q?Andr=C3=A9_Draszik?= X-Mailer: b4 0.14.2 sec_irq_init() is an internal API for the core driver, and doesn't belong into the public header. Due to an upcoming split of the driver into a core and i2c driver, we'll also be adding more internal APIs, which again shouldn't be in the public header. Move it into a new internal include. Signed-off-by: Andr=C3=A9 Draszik Reviewed-by: Krzysztof Kozlowski --- MAINTAINERS | 2 +- drivers/mfd/sec-core.c | 1 + drivers/mfd/sec-core.h | 15 +++++++++++++++ drivers/mfd/sec-irq.c | 1 + include/linux/mfd/samsung/core.h | 2 -- 5 files changed, 18 insertions(+), 3 deletions(-) diff --git a/MAINTAINERS b/MAINTAINERS index ebf7fa9a814d2d198fce853f7ff9a01f2bb69f5f..d686e02dc7ccd61e35173df997d= 2f894ee5ab515 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -21351,7 +21351,7 @@ F: Documentation/devicetree/bindings/mfd/samsung,s5= m*.yaml F: Documentation/devicetree/bindings/regulator/samsung,s2m*.yaml F: Documentation/devicetree/bindings/regulator/samsung,s5m*.yaml F: drivers/clk/clk-s2mps11.c -F: drivers/mfd/sec*.c +F: drivers/mfd/sec*.[ch] F: drivers/regulator/s2m*.c F: drivers/regulator/s5m*.c F: drivers/rtc/rtc-s5m.c diff --git a/drivers/mfd/sec-core.c b/drivers/mfd/sec-core.c index b12020c416aa8bf552f3d3b7829f6a38a773f674..83693686567df61b5e09f7129dc= 6b01d69156ff3 100644 --- a/drivers/mfd/sec-core.c +++ b/drivers/mfd/sec-core.c @@ -23,6 +23,7 @@ #include #include #include +#include "sec-core.h" =20 static const struct mfd_cell s5m8767_devs[] =3D { { .name =3D "s5m8767-pmic", }, diff --git a/drivers/mfd/sec-core.h b/drivers/mfd/sec-core.h new file mode 100644 index 0000000000000000000000000000000000000000..b3fded5f02a0ddc09a9508fd49a= 5d335f7ad0ee7 --- /dev/null +++ b/drivers/mfd/sec-core.h @@ -0,0 +1,15 @@ +/* SPDX-License-Identifier: GPL-2.0+ */ +/* + * Copyright 2012 Samsung Electronics Co., Ltd + * http://www.samsung.com + * Copyright 2025 Linaro Ltd. + * + * Samsung SxM core driver internal data + */ + +#ifndef __SEC_CORE_INT_H +#define __SEC_CORE_INT_H + +int sec_irq_init(struct sec_pmic_dev *sec_pmic); + +#endif /* __SEC_CORE_INT_H */ diff --git a/drivers/mfd/sec-irq.c b/drivers/mfd/sec-irq.c index 3ed2902c3a2634a6ea656d890ecea934053bd192..4d49bb42bd0d109263f485c8b58= e88cdd8d598d9 100644 --- a/drivers/mfd/sec-irq.c +++ b/drivers/mfd/sec-irq.c @@ -18,6 +18,7 @@ #include #include #include +#include "sec-core.h" =20 static const struct regmap_irq s2mps11_irqs[] =3D { [S2MPS11_IRQ_PWRONF] =3D { diff --git a/include/linux/mfd/samsung/core.h b/include/linux/mfd/samsung/c= ore.h index b7008b50392ab857751b89e0a05d2c27f6306906..8a4e660854bbc955b812b4d61d4= a52a0fc2f2899 100644 --- a/include/linux/mfd/samsung/core.h +++ b/include/linux/mfd/samsung/core.h @@ -71,8 +71,6 @@ struct sec_pmic_dev { struct regmap_irq_chip_data *irq_data; }; =20 -int sec_irq_init(struct sec_pmic_dev *sec_pmic); - struct sec_platform_data { struct sec_regulator_data *regulators; struct sec_opmode_data *opmode; --=20 2.49.0.395.g12beb8f557-goog From nobody Thu Dec 18 22:20:07 2025 Received: from mail-ej1-f41.google.com (mail-ej1-f41.google.com [209.85.218.41]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id A489D1D6DB4 for ; Sun, 23 Mar 2025 22:39:29 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.41 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1742769573; cv=none; b=oocOyEMtruMxF5GkZ4PqJwGSEB+KoWwV2P9tpX/nMbqTP78tF7ieyaVk0ewAb8ASr8Mjs+wgd852L7XOlIcDTH9/frxsbaQ/T0odOLDXcOnF+TAYd3x+brtz/vzV877ZmckPg2lMLXonVUIhjnxBzxs2Wdpk8imHmfuUa9yeAvE= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1742769573; c=relaxed/simple; bh=SOWDFBYDVimh2JZdbpqs93MuJ5ZKdaya15zjUJJgJoE=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=Ef5i5AiMU9e5QZGS++aVIe8PgiIpZqheKBPD28YfvgmgF/7pVI7VCccy3mCFk3tOmWPfZc6A/jtGzHLDBX8ON2wOt5nwf9PMdyDyjN3cmM46vBwDGEH5N1kMrA3MjN5a2IiwvTkxePdIw7KzakSoN9II5Zn5wkIkEDasuw14S2U= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=Ro5ATcEw; arc=none smtp.client-ip=209.85.218.41 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="Ro5ATcEw" Received: by mail-ej1-f41.google.com with SMTP id a640c23a62f3a-ac2902f7c2aso650959566b.1 for ; Sun, 23 Mar 2025 15:39:29 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1742769568; x=1743374368; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=a1WAgr4uwM04DZyOzCnLxT64GQbYEMMtR1/k9PjNmnI=; b=Ro5ATcEwOXJoVYOumsx3SzyVEZr0IG0MbaEdO3CqShFnuHHX7IA3m+53Mge+A4z2+K Y4gISwjjFDeTGH+A5hP5NV37c3Mfk1ZROF6AeKE66mHgWJ0rbvnyRe2h5SCxyavfrjP/ xOX05pEBekJgjHGfLO4PmSIYxso5YMdkOI8ZpXp5oiQLCrqMWFfYaQgp8lVJ96JPsfBy KsOvSJRRe4uaTIPxXOF03cAA0oqbGCJ6CSP7YEO8x3Ncs1SsxqHmbjvwZR80nzm56bWY zroBW25Zsp9DOgHUsb+nRZLCF0rlB+LDEdvogubZegvgBkEOGZO7l1skyOEFAAdhvJr7 9+aQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1742769568; x=1743374368; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=a1WAgr4uwM04DZyOzCnLxT64GQbYEMMtR1/k9PjNmnI=; b=ONeHedLZ0JunDJiaLDJb79LJd+uLCyQ8rbUh8ei0s9laFqh62b8psUN7+f+nA2WVID CUGBeuiPH37cIBSsvH7R/T9J4e3dOEN+U+x0y1gAqoq7NVARr3HxvCTwQvct1rjT+XHI pLphInjc9K8iAHW8GvkVTWffHfR1MvzD62flnfAWJ2t5OUyja3I7l/fZLJt12ieJQbLY CS+KpmdfJr1ZjLVqXYTs8A6+LBcZKHf8MGni9HJjulMOSCtr3yj7ejse7+T3W7b+N1Wv EDhymtcEjpg+d2hqpSjRK6j8nWOcVbC+lnJc7lUDUjhEdsC25qTlot4r0MmNogvc+ejZ wWDg== X-Forwarded-Encrypted: i=1; AJvYcCW4ZqIf96sSb/0BKDcDEIWnk8benjpOZK6mX7tnZiShMVNlE59fGaRE32wFoayjnPzukNyBk8L56or9lUw=@vger.kernel.org X-Gm-Message-State: AOJu0YzvhxbNcOUFkA+lY+gdqZhfCOhoA/AdED5MZshAnb+1LaokMBw1 BKxNZ0rrm4K68pmePVfqgqczain+9xBkmXYQq2OcrRxbQQ4e+jce88uvd6nXQMs= X-Gm-Gg: ASbGnct96yDpStHJH6sGmlP/mLmIAn7kkppVRN9CDyhSQv9+hlalB61yy/RIvIgm3sc ipbbiQ2M3Pw1izgnzb0a+bUBA1symqQPNRJpD2k784Ggc5UZS0cK0nE71eges1cdSBv0Re+OUth PxCmZCyTQaqrlZkn8/YGWdZQQpDzbgEXnroRCZnuisi4bq60LqwaW4mQjl5bh8J6EzQRD4r731a OOusS/pxmlZInUqKVZFSmEifXInpthdg/irr34pbUWAfClpMym26r7mnGPBrgr4ciJjmQiHpZEz U6HQtBtXDWLKgrKmzk1SkKIai7cZAJ78JToFvv5sw2t2PhvtQdrenTl4ZBCky2IbWC5h+4ogDDP ZHX+sl2+d+fBjcbhRbf+j2QAQocn8 X-Google-Smtp-Source: AGHT+IGESlPld0TIZcF+ERlnjIFgWzaZCupFw8MycHD7wowlazt/klJI/2hD2dVdJFw5afV/HysuBA== X-Received: by 2002:a17:907:bd88:b0:ac4:491:1548 with SMTP id a640c23a62f3a-ac404911816mr803996166b.11.1742769568148; Sun, 23 Mar 2025 15:39:28 -0700 (PDT) Received: from puffmais.c.googlers.com (8.239.204.35.bc.googleusercontent.com. [35.204.239.8]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-ac3ef86e44dsm559686666b.31.2025.03.23.15.39.27 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 23 Mar 2025 15:39:27 -0700 (PDT) From: =?utf-8?q?Andr=C3=A9_Draszik?= Date: Sun, 23 Mar 2025 22:39:24 +0000 Subject: [PATCH 08/34] mfd: sec: fix open parenthesis alignment (of_property_read_bool) 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: <20250323-s2mpg10-v1-8-d08943702707@linaro.org> References: <20250323-s2mpg10-v1-0-d08943702707@linaro.org> In-Reply-To: <20250323-s2mpg10-v1-0-d08943702707@linaro.org> To: Krzysztof Kozlowski , Lee Jones , Rob Herring , Conor Dooley , Sylwester Nawrocki , Chanwoo Choi , Alim Akhtar , Michael Turquette , Stephen Boyd , Russell King , Catalin Marinas , Will Deacon , Alexandre Belloni Cc: Peter Griffin , Tudor Ambarus , Will McVicker , kernel-team@android.com, linux-kernel@vger.kernel.org, linux-samsung-soc@vger.kernel.org, devicetree@vger.kernel.org, linux-clk@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-rtc@vger.kernel.org, =?utf-8?q?Andr=C3=A9_Draszik?= X-Mailer: b4 0.14.2 As a preparation for adding support for Samsung's S2MPG10, which is connected via SPEEDY / ACPM rather than I2C, we're going to split out (move) all I2C-specific driver code into its own kernel module, and create a (common) core transport-agnostic kernel module. That move of code would highlight some unexpected alignment which checkpatch would complain about. To avoid that, address the error now, before the split, to keep the amount of unrelated changes to a minimum when actually doing the split. Signed-off-by: Andr=C3=A9 Draszik --- drivers/mfd/sec-core.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/drivers/mfd/sec-core.c b/drivers/mfd/sec-core.c index 83693686567df61b5e09f7129dc6b01d69156ff3..b931f66f366571d93ce59c30126= 5fe1c9550b37d 100644 --- a/drivers/mfd/sec-core.c +++ b/drivers/mfd/sec-core.c @@ -276,10 +276,12 @@ sec_pmic_i2c_parse_dt_pdata(struct device *dev) if (!pd) return ERR_PTR(-ENOMEM); =20 - pd->manual_poweroff =3D of_property_read_bool(dev->of_node, - "samsung,s2mps11-acokb-ground"); - pd->disable_wrstbi =3D of_property_read_bool(dev->of_node, - "samsung,s2mps11-wrstbi-ground"); + pd->manual_poweroff =3D + of_property_read_bool(dev->of_node, + "samsung,s2mps11-acokb-ground"); + pd->disable_wrstbi =3D + of_property_read_bool(dev->of_node, + "samsung,s2mps11-wrstbi-ground"); return pd; } =20 --=20 2.49.0.395.g12beb8f557-goog From nobody Thu Dec 18 22:20:07 2025 Received: from mail-ej1-f43.google.com (mail-ej1-f43.google.com [209.85.218.43]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id BD91A1D6DD4 for ; Sun, 23 Mar 2025 22:39:30 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.43 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1742769574; cv=none; b=eNZfgrFCYx6ZeGBO4i6L8mf1NFQ9640NFClKd0y2pUmpV4262hT209Qf0ZaKjJAwJL4CseyBUUsWxHn6UtK1l2p6+YxzKcT1+8is1qJN1ti/cVO3nYPfcT1/mS0mT0PfLCIXamYjiquI0bdu3EqPf8E9xV5enlfyVzdNaE3y4do= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1742769574; c=relaxed/simple; bh=aNL2ZMIsaWDhYzyM225HQs3M+JBebedfnAV5JfLB8LU=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=u2LfmksdcilxAdjPqqlRNgiCBq/S7HjEdL+XnG6c304sBtFIyZ95TmMM9AVQf5Rk5NwjhcidzhBnAacDGs0m65IpdJO8d0J/0QA1xmlZVbqkbMMFw/ZjdnTGUwq/x3JVLvAczM9k48wkKhNirPdNxWB4xeG2eEd+Nx4OCs1U3gM= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=bqH2k5Wb; arc=none smtp.client-ip=209.85.218.43 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="bqH2k5Wb" Received: by mail-ej1-f43.google.com with SMTP id a640c23a62f3a-ac3eb3fdd2eso560746266b.0 for ; Sun, 23 Mar 2025 15:39:30 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1742769569; x=1743374369; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=PkErzt1Ss+Bkd54SXbmEFKlCZnBrxlDz3Xe8Bme42SE=; b=bqH2k5WbpvoGhXCbaaGdtiyVBP2hZ8kMKQgAIxWxRiwhSejhXehUQCMhSmRSiyALDr VT3FIr3b9MoUZtqqDEQB2rfTPsII/q0fbva1yRX3xx+SZR36rGKpI6jUQyQmXaYLerRY mMbkZbSXgOYzr0EZlRYaDJS6NCu26n9d790TfwhqufvnUFbFp4JrNbszyTw8bt9XnbOr O1W0UjEA/l4LN79gT07zi+Sf+npmBIxzRxFO+WuXme/YPcCAlUeL7dK54p6m1OG52X/G X1ElnOccaR0fYrM5iBUmSn+r0Q6flBswUryzkpmWEIgW+HtSDugvkGCKfdyI/GrSsdqd Jo7Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1742769569; x=1743374369; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=PkErzt1Ss+Bkd54SXbmEFKlCZnBrxlDz3Xe8Bme42SE=; b=KzOQ1ZF2TGs1s/KZVebiUFhf+O+trpSDTJ2nZiJ7IW3sedde+BfuKNNtcNYmedgd82 cOEzy6Mg6eNUj81Zm10v53WK7JoYDF7uAnJwIEsRfMwL4PcHakSwX1hoUgcbtZxH9yaU 8+2cjljropvq68eP7alU1Fv1wlN/ayT/faM4TRV85MkKU1T/9TxxSzP3/lnqMfJMWN/H 13O+087vuYEngq8F278yoFlCVHhIKceeKj6s3R8EMEc3mdbQuKF1uvX3+i/E6QzYLS9U IXbgMYyeLUkYYQ1RDQXJb6b+fzIy8QlIWSxvuTaf1kUBpn9Wz0msA4aseQtEX/MO9xC8 6K6A== X-Forwarded-Encrypted: i=1; AJvYcCUzDC3EOS2wbzjTbexjUMM/iUWs+mxKdLfKc0x+L9ZtIpmr958JMFVlosFog/8V5Qt5DcfNdvQ4Asxewxc=@vger.kernel.org X-Gm-Message-State: AOJu0YwGzsm+JxPa6orQBBHbWO9P8ITOvRy21gf89kN0sNyvpxN6XdrF 7zCgjJPrEgTW1rqmbdPBbEwMmXZbpb518VFBMwjqO8IUULYBMdvrC0rQJBgAo3w= X-Gm-Gg: ASbGncs2hVKQFybena68sDMAYfARiB0DgHgak72jREj15QmvUj6D+QUjb1NHHvAyAXc 3VKRJrVV1a+/NZuFkd4CZ/2MDKHGTMQ/RRqk+tbrBcOJZ/TXx00NpQncy/1fAmovcBpbpMYzZZF 2K4Bbyv7CHqONChrEG2L7ulcJ/iV26r+qJb58Xge4VmgKYb4Fo22M/VUgprVcrknTLikOMTe3X9 Q0Gy23XgEnpQGiNa8huKujmLqP8TNdgsxQsx+yiVtbfD1SnLC705B+Sg3lak6SgjZWCPmScs5By LEHH0wge2MgU86ZqiPgPciopNspbktR6A5B0Q2pWyIMuknKKMf2BFp5DtuHKFiI14DeAWxevJad ZAltvBRo/CcJ/fXpv0erqeYW1ft/Q X-Google-Smtp-Source: AGHT+IGAFdzsUecxR0Ot+aNtVjqQT9dbvewdjFSLK22DE4stZjNqeNVzWwfh7T1/N7CaL7vQgLskZA== X-Received: by 2002:a17:907:ba0c:b0:ac2:4db0:1d22 with SMTP id a640c23a62f3a-ac3f251f16emr1170254266b.42.1742769568705; Sun, 23 Mar 2025 15:39:28 -0700 (PDT) Received: from puffmais.c.googlers.com (8.239.204.35.bc.googleusercontent.com. [35.204.239.8]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-ac3ef86e44dsm559686666b.31.2025.03.23.15.39.28 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 23 Mar 2025 15:39:28 -0700 (PDT) From: =?utf-8?q?Andr=C3=A9_Draszik?= Date: Sun, 23 Mar 2025 22:39:25 +0000 Subject: [PATCH 09/34] mfd: sec: slightly rework runtime platform data allocation 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: <20250323-s2mpg10-v1-9-d08943702707@linaro.org> References: <20250323-s2mpg10-v1-0-d08943702707@linaro.org> In-Reply-To: <20250323-s2mpg10-v1-0-d08943702707@linaro.org> To: Krzysztof Kozlowski , Lee Jones , Rob Herring , Conor Dooley , Sylwester Nawrocki , Chanwoo Choi , Alim Akhtar , Michael Turquette , Stephen Boyd , Russell King , Catalin Marinas , Will Deacon , Alexandre Belloni Cc: Peter Griffin , Tudor Ambarus , Will McVicker , kernel-team@android.com, linux-kernel@vger.kernel.org, linux-samsung-soc@vger.kernel.org, devicetree@vger.kernel.org, linux-clk@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-rtc@vger.kernel.org, =?utf-8?q?Andr=C3=A9_Draszik?= X-Mailer: b4 0.14.2 As a preparation for adding support for Samsung's S2MPG10, which is connected via SPEEDY / ACPM rather than I2C, we're going to split out (move) all I2C-specific driver code into its own kernel module, and create a (common) core transport-agnostic kernel module. Transport drivers will have to do device tree parsing, and the core driver will allocate its own additional memory as needed. In preparation for that change, separate out runtime platform data allocation from device tree parsing. Having this change will create less churn in the upcoming split of the transport-specific parts. Signed-off-by: Andr=C3=A9 Draszik Reviewed-by: Krzysztof Kozlowski --- drivers/mfd/sec-core.c | 30 ++++++++++++------------------ 1 file changed, 12 insertions(+), 18 deletions(-) diff --git a/drivers/mfd/sec-core.c b/drivers/mfd/sec-core.c index b931f66f366571d93ce59c301265fe1c9550b37d..9c514f4b5f853ec2b4e234c5789= 35ffad145cd4b 100644 --- a/drivers/mfd/sec-core.c +++ b/drivers/mfd/sec-core.c @@ -262,27 +262,16 @@ static void sec_pmic_configure(struct sec_pmic_dev *s= ec_pmic) * Only the common platform data elements for s5m8767 are parsed here from= the * device tree. Other sub-modules of s5m8767 such as pmic, rtc , charger a= nd * others have to parse their own platform data elements from device tree. - * - * The s5m8767 platform data structure is instantiated here and the driver= s for - * the sub-modules need not instantiate another instance while parsing the= ir - * platform data. */ -static struct sec_platform_data * -sec_pmic_i2c_parse_dt_pdata(struct device *dev) +static void sec_pmic_i2c_parse_dt_pdata(struct device *dev, + struct sec_platform_data *pd) { - struct sec_platform_data *pd; - - pd =3D devm_kzalloc(dev, sizeof(*pd), GFP_KERNEL); - if (!pd) - return ERR_PTR(-ENOMEM); - pd->manual_poweroff =3D of_property_read_bool(dev->of_node, "samsung,s2mps11-acokb-ground"); pd->disable_wrstbi =3D of_property_read_bool(dev->of_node, "samsung,s2mps11-wrstbi-ground"); - return pd; } =20 static int sec_pmic_probe(struct i2c_client *i2c) @@ -303,11 +292,16 @@ static int sec_pmic_probe(struct i2c_client *i2c) sec_pmic->i2c =3D i2c; sec_pmic->irq =3D i2c->irq; =20 - pdata =3D sec_pmic_i2c_parse_dt_pdata(sec_pmic->dev); - if (IS_ERR(pdata)) { - ret =3D PTR_ERR(pdata); - return ret; - } + /* + * The s5m8767 platform data structure is instantiated here and the + * drivers for the sub-modules need not instantiate another instance + * while parsing their platform data. + */ + pdata =3D devm_kzalloc(sec_pmic->dev, sizeof(*pdata), GFP_KERNEL); + if (!pdata) + return -ENOMEM; + + sec_pmic_i2c_parse_dt_pdata(sec_pmic->dev, pdata); =20 sec_pmic->device_type =3D (unsigned long)of_device_get_match_data(sec_pmi= c->dev); sec_pmic->pdata =3D pdata; --=20 2.49.0.395.g12beb8f557-goog From nobody Thu Dec 18 22:20:07 2025 Received: from mail-ed1-f49.google.com (mail-ed1-f49.google.com [209.85.208.49]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id D648C1DB13E for ; Sun, 23 Mar 2025 22:39:31 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.208.49 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1742769577; cv=none; b=Mx/mcu1b0BL/M8ieiPwaXIG5n336SxtAssNMkO97kSjEQGRdI8W/8mXOYAD7IaSh6boCI9PDmuNljJ5N3dlYhWHPsgIsbk38gHCuKeska2ELQFRP1n3rzoeLIWReI8Rkf5C7bYM/eXlo1Wot0x7IcpgmHZbtrROmDtN2jVhwNrc= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1742769577; c=relaxed/simple; bh=mppPZKJtm6NBtUUJnaZ3zV140OVOKVNhZcDnsSoPyI0=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=fVBH7fUnyWRKL+rzHeAAniyuFlNNtY9GlwWo+CuXrnFpX14q/UehdExPOf2fzBKYsVxPPdBhXZPDntYmP4EB+z9Tst20tIAlZpHzKyOSIbIoZYi+Ac3VVNwZ+bwL5avYa6t61gUyKfUd1VGAqint+s5QVbdThsCLMCSIcSrAWrQ= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=qnLa8lbZ; arc=none smtp.client-ip=209.85.208.49 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="qnLa8lbZ" Received: by mail-ed1-f49.google.com with SMTP id 4fb4d7f45d1cf-5dca468c5e4so6359748a12.1 for ; Sun, 23 Mar 2025 15:39:31 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1742769569; x=1743374369; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=dFsyupPhmKYZlG9iNTJYyZLnPSeEsntUTwAd5ZCRdnY=; b=qnLa8lbZ5aqRQWgyLqvx3Yh8KO9bJr9gaQAOU9c+Ia213ARsGwkS4tsw/FKMKIY0z4 JsOUdvyHZrgnnLH4tWbCDxrOdBRiB7T0asS1vIcXUL+ZOKMQspMZnLf7htYygqRijlLn ZqxfrQJuVueufBp4wtLnNHEYXM3g3UEOhU81r+80J7KIGjnG8DBdk5NNjU21/ggx7E8M daFBtbT9q4aExIlVrPwUQmminbsbhdDn0zsIqWDxAKikB0KYLsc0QA7fU78/MLbr6zmo AXDhlk/ouzEgyw2AxT8yduVwPCSkh+O+eMiloHKGMXElfj6MeBXTroLn3+xcAQ0O6xC1 uGjQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1742769569; x=1743374369; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=dFsyupPhmKYZlG9iNTJYyZLnPSeEsntUTwAd5ZCRdnY=; b=CG7G7WYySi/Eg4I6LnVYh7QpB0qECM5yH45BitXd70aMtbMCibHNEAxrI8B/Necjll TIrJzvEEjXoP+S+xFIs7zJo11Dh1LBuOblDLXiiaY4frTCWvYKtqCkg5m7tmxsCP2tOU ct5q3heSZ3luJg9VRWgxbABmHfvlFJ5E7Ol2D4dYcrzPPeMFdCobG6kYJjuCmUc4VrYI sUJggYFb2VHfguUBQPl3/l8ONwCNpQGE9urZ3CjjyakfII4KjMnanDEpus0oEDUqZKvF AfFznsqvZvLSqrNj21IXLoj7g57kzxWYz++PLC6eMRphcSvlSPzdFcnlM1affYlmhRE7 FyjQ== X-Forwarded-Encrypted: i=1; AJvYcCWufvOq9wVeNW28oUY0lFgmMyzwd6d9NwLssrMmbwqJZxgi1jwmVUwXd0AVatdPa6ek3b21nj/K9aXRub4=@vger.kernel.org X-Gm-Message-State: AOJu0YzG7XYeOcLwPX9Rf4lLOZC/Okk+nad9zPo04mogKkWoOO65DBTU 8xes736jG6RXEMBYAfo3NYAN8ho6NynFVxmSG+KRoEaqEZGSTmI1ZKo31sd+QM4= X-Gm-Gg: ASbGncswAmANsJcapjhdHDEdOaR5YJWvrNSYuNXXjlTm2wwasQ5XV34C/dUl3K8ovlm 5WhAmSDdVtx5A065WLNlJiOEZ5WrWpoHQxLX3af+gT94TKHr+yRa3gwiDX/oyfdiXm12erzacH2 BhGS4qs4XQF6sqqzSApGXg6C/GcFHAveV16Tjwc8kVjQKhEiZxgiunLy9Twp2OZBkDOcKRR6Je4 3itNXVYEq64q3bIBt3oT8s0VL61b3FhsJnY6m7K9lXY45u/ZzhwsFou1UCypK/fNmjp4CPwnQ00 +uXLBN3pW5r++TMqLyxB8gMOC0YD8yUGIqnSNBLixpEdcQdOkNLh6vkX3wHg28RqgxRoPyISrKL trM/ooOAXKnzUrcouQjy09Y+7N1bm X-Google-Smtp-Source: AGHT+IFKRMEiigkgpMescp9Pdge+rz06jxqEMtOIomAzaRLdoxKIqzx2eOJmKTb9eHlLOoRhHEw7/w== X-Received: by 2002:a17:907:7f06:b0:ac4:4b5:2433 with SMTP id a640c23a62f3a-ac404b53f82mr827448666b.41.1742769569301; Sun, 23 Mar 2025 15:39:29 -0700 (PDT) Received: from puffmais.c.googlers.com (8.239.204.35.bc.googleusercontent.com. [35.204.239.8]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-ac3ef86e44dsm559686666b.31.2025.03.23.15.39.28 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 23 Mar 2025 15:39:28 -0700 (PDT) From: =?utf-8?q?Andr=C3=A9_Draszik?= Date: Sun, 23 Mar 2025 22:39:26 +0000 Subject: [PATCH 10/34] mfd: sec: split into core and transport (i2c) drivers 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: <20250323-s2mpg10-v1-10-d08943702707@linaro.org> References: <20250323-s2mpg10-v1-0-d08943702707@linaro.org> In-Reply-To: <20250323-s2mpg10-v1-0-d08943702707@linaro.org> To: Krzysztof Kozlowski , Lee Jones , Rob Herring , Conor Dooley , Sylwester Nawrocki , Chanwoo Choi , Alim Akhtar , Michael Turquette , Stephen Boyd , Russell King , Catalin Marinas , Will Deacon , Alexandre Belloni Cc: Peter Griffin , Tudor Ambarus , Will McVicker , kernel-team@android.com, linux-kernel@vger.kernel.org, linux-samsung-soc@vger.kernel.org, devicetree@vger.kernel.org, linux-clk@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-rtc@vger.kernel.org, =?utf-8?q?Andr=C3=A9_Draszik?= X-Mailer: b4 0.14.2 As a preparation for adding support for Samsung's S2MPG10, which is connected via SPEEDY / ACPM rather than I2C, split out (move) all I2C-specific driver code into its own kernel module, sec-i2c, and make the existing sec-core module be just the transport-agnostic core driver kernel module. Also add myself to MODULE_AUTHOR() and update file headers due to that and all the follow-up rework. Signed-off-by: Andr=C3=A9 Draszik -- Note: checkpatch complains about missing help for MFD_SEC_I2C here, but that's a false-positive due to patch context. It also suggests to update MAINTAINERS, but the new file is covered already due to using a wildcard. --- drivers/mfd/Kconfig | 18 ++-- drivers/mfd/Makefile | 1 + drivers/mfd/sec-core.c | 268 +++++++--------------------------------------= ---- drivers/mfd/sec-core.h | 17 ++++ drivers/mfd/sec-i2c.c | 252 ++++++++++++++++++++++++++++++++++++++++++++++ 5 files changed, 316 insertions(+), 240 deletions(-) diff --git a/drivers/mfd/Kconfig b/drivers/mfd/Kconfig index 205918c826334981587c4179bb00481c336ab8d5..9cce9a632827a38d6e4396167aa= 3b0391f273e97 100644 --- a/drivers/mfd/Kconfig +++ b/drivers/mfd/Kconfig @@ -1316,21 +1316,25 @@ config MFD_RN5T618 functionality of the device. =20 config MFD_SEC_CORE - tristate "Samsung Electronics PMIC Series Support" + tristate + select MFD_CORE + select REGMAP_IRQ + +config MFD_SEC_I2C + tristate "Samsung Electronics S2MPA/S2MPS1X/S2MPU/S5M series PMICs" depends on I2C=3Dy depends on OF - select MFD_CORE + select MFD_SEC_CORE select REGMAP_I2C - select REGMAP_IRQ help - Support for the Samsung Electronics PMIC devices coming - usually along with Samsung Exynos SoC chipset. + Support for the Samsung Electronics PMIC devices with I2C interface + coming usually along with Samsung Exynos SoC chipset. This driver provides common support for accessing the device, additional drivers must be enabled in order to use the functionality - of the device + of the device. =20 To compile this driver as a module, choose M here: the - module will be called sec-core. + module will be called sec-i2c. Have in mind that important core drivers (like regulators) depend on this driver so building this as a module might require proper initial ramdisk or might not boot up as well in certain scenarios. diff --git a/drivers/mfd/Makefile b/drivers/mfd/Makefile index 320a431b4aa11e8d4d99740dfa16267a83cb417d..ca9efff5780a7c818ca6cfe017c= 0f897ca70b449 100644 --- a/drivers/mfd/Makefile +++ b/drivers/mfd/Makefile @@ -233,6 +233,7 @@ obj-$(CONFIG_MFD_RK8XX_I2C) +=3D rk8xx-i2c.o obj-$(CONFIG_MFD_RK8XX_SPI) +=3D rk8xx-spi.o obj-$(CONFIG_MFD_RN5T618) +=3D rn5t618.o obj-$(CONFIG_MFD_SEC_CORE) +=3D sec-core.o sec-irq.o +obj-$(CONFIG_MFD_SEC_I2C) +=3D sec-i2c.o obj-$(CONFIG_MFD_SYSCON) +=3D syscon.o obj-$(CONFIG_MFD_LM3533) +=3D lm3533-core.o lm3533-ctrlbank.o obj-$(CONFIG_MFD_VEXPRESS_SYSREG) +=3D vexpress-sysreg.o diff --git a/drivers/mfd/sec-core.c b/drivers/mfd/sec-core.c index 9c514f4b5f853ec2b4e234c578935ffad145cd4b..e81da34cf6795beca5f660fb46e= efa4b5f8957d1 100644 --- a/drivers/mfd/sec-core.c +++ b/drivers/mfd/sec-core.c @@ -1,25 +1,22 @@ // SPDX-License-Identifier: GPL-2.0+ -// -// Copyright (c) 2012 Samsung Electronics Co., Ltd -// http://www.samsung.com +/* + * Copyright 2012 Samsung Electronics Co., Ltd + * http://www.samsung.com + * Copyright 2025 Linaro Ltd. + * + * Samsung SxM core driver + */ =20 #include #include -#include +#include #include #include #include #include -#include #include #include -#include -#include -#include -#include -#include #include -#include #include #include #include @@ -88,144 +85,6 @@ static const struct mfd_cell s2mpu05_devs[] =3D { { .name =3D "s2mps15-rtc", }, }; =20 -static const struct of_device_id sec_dt_match[] =3D { - { - .compatible =3D "samsung,s5m8767-pmic", - .data =3D (void *)S5M8767X, - }, { - .compatible =3D "samsung,s2dos05", - .data =3D (void *)S2DOS05, - }, { - .compatible =3D "samsung,s2mps11-pmic", - .data =3D (void *)S2MPS11X, - }, { - .compatible =3D "samsung,s2mps13-pmic", - .data =3D (void *)S2MPS13X, - }, { - .compatible =3D "samsung,s2mps14-pmic", - .data =3D (void *)S2MPS14X, - }, { - .compatible =3D "samsung,s2mps15-pmic", - .data =3D (void *)S2MPS15X, - }, { - .compatible =3D "samsung,s2mpa01-pmic", - .data =3D (void *)S2MPA01, - }, { - .compatible =3D "samsung,s2mpu02-pmic", - .data =3D (void *)S2MPU02, - }, { - .compatible =3D "samsung,s2mpu05-pmic", - .data =3D (void *)S2MPU05, - }, { - /* Sentinel */ - }, -}; -MODULE_DEVICE_TABLE(of, sec_dt_match); - -static bool s2mpa01_volatile(struct device *dev, unsigned int reg) -{ - switch (reg) { - case S2MPA01_REG_INT1M: - case S2MPA01_REG_INT2M: - case S2MPA01_REG_INT3M: - return false; - default: - return true; - } -} - -static bool s2mps11_volatile(struct device *dev, unsigned int reg) -{ - switch (reg) { - case S2MPS11_REG_INT1M: - case S2MPS11_REG_INT2M: - case S2MPS11_REG_INT3M: - return false; - default: - return true; - } -} - -static bool s2mpu02_volatile(struct device *dev, unsigned int reg) -{ - switch (reg) { - case S2MPU02_REG_INT1M: - case S2MPU02_REG_INT2M: - case S2MPU02_REG_INT3M: - return false; - default: - return true; - } -} - -static const struct regmap_config sec_regmap_config =3D { - .reg_bits =3D 8, - .val_bits =3D 8, -}; - -static const struct regmap_config s2mpa01_regmap_config =3D { - .reg_bits =3D 8, - .val_bits =3D 8, - - .max_register =3D S2MPA01_REG_LDO_OVCB4, - .volatile_reg =3D s2mpa01_volatile, - .cache_type =3D REGCACHE_FLAT, -}; - -static const struct regmap_config s2mps11_regmap_config =3D { - .reg_bits =3D 8, - .val_bits =3D 8, - - .max_register =3D S2MPS11_REG_L38CTRL, - .volatile_reg =3D s2mps11_volatile, - .cache_type =3D REGCACHE_FLAT, -}; - -static const struct regmap_config s2mps13_regmap_config =3D { - .reg_bits =3D 8, - .val_bits =3D 8, - - .max_register =3D S2MPS13_REG_LDODSCH5, - .volatile_reg =3D s2mps11_volatile, - .cache_type =3D REGCACHE_FLAT, -}; - -static const struct regmap_config s2mps14_regmap_config =3D { - .reg_bits =3D 8, - .val_bits =3D 8, - - .max_register =3D S2MPS14_REG_LDODSCH3, - .volatile_reg =3D s2mps11_volatile, - .cache_type =3D REGCACHE_FLAT, -}; - -static const struct regmap_config s2mps15_regmap_config =3D { - .reg_bits =3D 8, - .val_bits =3D 8, - - .max_register =3D S2MPS15_REG_LDODSCH4, - .volatile_reg =3D s2mps11_volatile, - .cache_type =3D REGCACHE_FLAT, -}; - -static const struct regmap_config s2mpu02_regmap_config =3D { - .reg_bits =3D 8, - .val_bits =3D 8, - - .max_register =3D S2MPU02_REG_DVSDATA, - .volatile_reg =3D s2mpu02_volatile, - .cache_type =3D REGCACHE_FLAT, -}; - -static const struct regmap_config s5m8767_regmap_config =3D { - .reg_bits =3D 8, - .val_bits =3D 8, - - .max_register =3D S5M8767_REG_LDO28CTRL, - .volatile_reg =3D s2mps11_volatile, - .cache_type =3D REGCACHE_FLAT, -}; - static void sec_pmic_dump_rev(struct sec_pmic_dev *sec_pmic) { unsigned int val; @@ -258,87 +117,40 @@ static void sec_pmic_configure(struct sec_pmic_dev *s= ec_pmic) } } =20 -/* - * Only the common platform data elements for s5m8767 are parsed here from= the - * device tree. Other sub-modules of s5m8767 such as pmic, rtc , charger a= nd - * others have to parse their own platform data elements from device tree. - */ -static void sec_pmic_i2c_parse_dt_pdata(struct device *dev, - struct sec_platform_data *pd) +int sec_pmic_probe(struct device *dev, unsigned long device_type, + unsigned int irq, struct regmap *regmap, + const struct sec_pmic_probe_data *probedata, + struct i2c_client *client) { - pd->manual_poweroff =3D - of_property_read_bool(dev->of_node, - "samsung,s2mps11-acokb-ground"); - pd->disable_wrstbi =3D - of_property_read_bool(dev->of_node, - "samsung,s2mps11-wrstbi-ground"); -} - -static int sec_pmic_probe(struct i2c_client *i2c) -{ - const struct regmap_config *regmap; struct sec_platform_data *pdata; const struct mfd_cell *sec_devs; struct sec_pmic_dev *sec_pmic; int ret, num_sec_devs; =20 - sec_pmic =3D devm_kzalloc(&i2c->dev, sizeof(struct sec_pmic_dev), - GFP_KERNEL); + sec_pmic =3D devm_kzalloc(dev, sizeof(struct sec_pmic_dev), GFP_KERNEL); if (sec_pmic =3D=3D NULL) return -ENOMEM; =20 - i2c_set_clientdata(i2c, sec_pmic); - sec_pmic->dev =3D &i2c->dev; - sec_pmic->i2c =3D i2c; - sec_pmic->irq =3D i2c->irq; + dev_set_drvdata(dev, sec_pmic); + sec_pmic->dev =3D dev; + sec_pmic->device_type =3D device_type; + sec_pmic->irq =3D irq; + sec_pmic->regmap_pmic =3D regmap; + sec_pmic->i2c =3D client; =20 /* * The s5m8767 platform data structure is instantiated here and the * drivers for the sub-modules need not instantiate another instance * while parsing their platform data. */ - pdata =3D devm_kzalloc(sec_pmic->dev, sizeof(*pdata), GFP_KERNEL); + pdata =3D devm_kzalloc(dev, sizeof(*pdata), GFP_KERNEL); if (!pdata) return -ENOMEM; =20 - sec_pmic_i2c_parse_dt_pdata(sec_pmic->dev, pdata); - - sec_pmic->device_type =3D (unsigned long)of_device_get_match_data(sec_pmi= c->dev); sec_pmic->pdata =3D pdata; - - switch (sec_pmic->device_type) { - case S2MPA01: - regmap =3D &s2mpa01_regmap_config; - break; - case S2MPS11X: - regmap =3D &s2mps11_regmap_config; - break; - case S2MPS13X: - regmap =3D &s2mps13_regmap_config; - break; - case S2MPS14X: - regmap =3D &s2mps14_regmap_config; - break; - case S2MPS15X: - regmap =3D &s2mps15_regmap_config; - break; - case S5M8767X: - regmap =3D &s5m8767_regmap_config; - break; - case S2MPU02: - regmap =3D &s2mpu02_regmap_config; - break; - default: - regmap =3D &sec_regmap_config; - break; - } - - sec_pmic->regmap_pmic =3D devm_regmap_init_i2c(i2c, regmap); - if (IS_ERR(sec_pmic->regmap_pmic)) { - ret =3D PTR_ERR(sec_pmic->regmap_pmic); - dev_err(&i2c->dev, "Failed to allocate register map: %d\n", - ret); - return ret; + if (probedata) { + pdata->manual_poweroff =3D probedata->manual_poweroff; + pdata->disable_wrstbi =3D probedata->disable_wrstbi; } =20 sec_irq_init(sec_pmic); @@ -383,9 +195,9 @@ static int sec_pmic_probe(struct i2c_client *i2c) num_sec_devs =3D ARRAY_SIZE(s2mpu05_devs); break; default: - dev_err(&i2c->dev, "Unsupported device type (%lu)\n", + dev_err(sec_pmic->dev, "Unsupported device type %lu\n", sec_pmic->device_type); - return -ENODEV; + return -EINVAL; } ret =3D devm_mfd_add_devices(sec_pmic->dev, -1, sec_devs, num_sec_devs, NULL, 0, NULL); @@ -397,10 +209,11 @@ static int sec_pmic_probe(struct i2c_client *i2c) =20 return ret; } +EXPORT_SYMBOL_GPL(sec_pmic_probe); =20 -static void sec_pmic_shutdown(struct i2c_client *i2c) +void sec_pmic_shutdown(struct device *dev) { - struct sec_pmic_dev *sec_pmic =3D i2c_get_clientdata(i2c); + struct sec_pmic_dev *sec_pmic =3D dev_get_drvdata(dev); unsigned int reg, mask; =20 if (!sec_pmic->pdata->manual_poweroff) @@ -424,11 +237,11 @@ static void sec_pmic_shutdown(struct i2c_client *i2c) =20 regmap_update_bits(sec_pmic->regmap_pmic, reg, mask, 0); } +EXPORT_SYMBOL_GPL(sec_pmic_shutdown); =20 static int sec_pmic_suspend(struct device *dev) { - struct i2c_client *i2c =3D to_i2c_client(dev); - struct sec_pmic_dev *sec_pmic =3D i2c_get_clientdata(i2c); + struct sec_pmic_dev *sec_pmic =3D dev_get_drvdata(dev); =20 if (device_may_wakeup(dev)) enable_irq_wake(sec_pmic->irq); @@ -448,8 +261,7 @@ static int sec_pmic_suspend(struct device *dev) =20 static int sec_pmic_resume(struct device *dev) { - struct i2c_client *i2c =3D to_i2c_client(dev); - struct sec_pmic_dev *sec_pmic =3D i2c_get_clientdata(i2c); + struct sec_pmic_dev *sec_pmic =3D dev_get_drvdata(dev); =20 if (device_may_wakeup(dev)) disable_irq_wake(sec_pmic->irq); @@ -458,20 +270,10 @@ static int sec_pmic_resume(struct device *dev) return 0; } =20 -static DEFINE_SIMPLE_DEV_PM_OPS(sec_pmic_pm_ops, - sec_pmic_suspend, sec_pmic_resume); - -static struct i2c_driver sec_pmic_driver =3D { - .driver =3D { - .name =3D "sec_pmic", - .pm =3D pm_sleep_ptr(&sec_pmic_pm_ops), - .of_match_table =3D sec_dt_match, - }, - .probe =3D sec_pmic_probe, - .shutdown =3D sec_pmic_shutdown, -}; -module_i2c_driver(sec_pmic_driver); +DEFINE_SIMPLE_DEV_PM_OPS(sec_pmic_pm_ops, sec_pmic_suspend, sec_pmic_resum= e); +EXPORT_SYMBOL_GPL(sec_pmic_pm_ops); =20 +MODULE_AUTHOR("Andr=C3=A9 Draszik "); MODULE_AUTHOR("Sangbeom Kim "); -MODULE_DESCRIPTION("Core support for the S5M MFD"); +MODULE_DESCRIPTION("Core driver for the Samsung S5M"); MODULE_LICENSE("GPL"); diff --git a/drivers/mfd/sec-core.h b/drivers/mfd/sec-core.h index b3fded5f02a0ddc09a9508fd49a5d335f7ad0ee7..58e5b645f377cea5543a215c059= 57a2c49239a6f 100644 --- a/drivers/mfd/sec-core.h +++ b/drivers/mfd/sec-core.h @@ -10,6 +10,23 @@ #ifndef __SEC_CORE_INT_H #define __SEC_CORE_INT_H =20 +struct i2c_client; + +extern const struct dev_pm_ops sec_pmic_pm_ops; + +struct sec_pmic_probe_data { + /* Whether or not manually set PWRHOLD to low during shutdown. */ + bool manual_poweroff; + /* Disable the WRSTBI (buck voltage warm reset) when probing? */ + bool disable_wrstbi; +}; + +int sec_pmic_probe(struct device *dev, unsigned long device_type, + unsigned int irq, struct regmap *regmap, + const struct sec_pmic_probe_data *probedata, + struct i2c_client *client); +void sec_pmic_shutdown(struct device *dev); + int sec_irq_init(struct sec_pmic_dev *sec_pmic); =20 #endif /* __SEC_CORE_INT_H */ diff --git a/drivers/mfd/sec-i2c.c b/drivers/mfd/sec-i2c.c new file mode 100644 index 0000000000000000000000000000000000000000..803a46e657a5a1a639014d44294= 1c0cdc60556a5 --- /dev/null +++ b/drivers/mfd/sec-i2c.c @@ -0,0 +1,252 @@ +// SPDX-License-Identifier: GPL-2.0+ +/* + * Copyright 2012 Samsung Electronics Co., Ltd + * http://www.samsung.com + * Copyright 2025 Linaro Ltd. + * + * Samsung SxM I2C driver + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include "sec-core.h" + +static bool s2mpa01_volatile(struct device *dev, unsigned int reg) +{ + switch (reg) { + case S2MPA01_REG_INT1M: + case S2MPA01_REG_INT2M: + case S2MPA01_REG_INT3M: + return false; + default: + return true; + } +} + +static bool s2mps11_volatile(struct device *dev, unsigned int reg) +{ + switch (reg) { + case S2MPS11_REG_INT1M: + case S2MPS11_REG_INT2M: + case S2MPS11_REG_INT3M: + return false; + default: + return true; + } +} + +static bool s2mpu02_volatile(struct device *dev, unsigned int reg) +{ + switch (reg) { + case S2MPU02_REG_INT1M: + case S2MPU02_REG_INT2M: + case S2MPU02_REG_INT3M: + return false; + default: + return true; + } +} + +static const struct regmap_config sec_regmap_config =3D { + .reg_bits =3D 8, + .val_bits =3D 8, +}; + +static const struct regmap_config s2mpa01_regmap_config =3D { + .reg_bits =3D 8, + .val_bits =3D 8, + + .max_register =3D S2MPA01_REG_LDO_OVCB4, + .volatile_reg =3D s2mpa01_volatile, + .cache_type =3D REGCACHE_FLAT, +}; + +static const struct regmap_config s2mps11_regmap_config =3D { + .reg_bits =3D 8, + .val_bits =3D 8, + + .max_register =3D S2MPS11_REG_L38CTRL, + .volatile_reg =3D s2mps11_volatile, + .cache_type =3D REGCACHE_FLAT, +}; + +static const struct regmap_config s2mps13_regmap_config =3D { + .reg_bits =3D 8, + .val_bits =3D 8, + + .max_register =3D S2MPS13_REG_LDODSCH5, + .volatile_reg =3D s2mps11_volatile, + .cache_type =3D REGCACHE_FLAT, +}; + +static const struct regmap_config s2mps14_regmap_config =3D { + .reg_bits =3D 8, + .val_bits =3D 8, + + .max_register =3D S2MPS14_REG_LDODSCH3, + .volatile_reg =3D s2mps11_volatile, + .cache_type =3D REGCACHE_FLAT, +}; + +static const struct regmap_config s2mps15_regmap_config =3D { + .reg_bits =3D 8, + .val_bits =3D 8, + + .max_register =3D S2MPS15_REG_LDODSCH4, + .volatile_reg =3D s2mps11_volatile, + .cache_type =3D REGCACHE_FLAT, +}; + +static const struct regmap_config s2mpu02_regmap_config =3D { + .reg_bits =3D 8, + .val_bits =3D 8, + + .max_register =3D S2MPU02_REG_DVSDATA, + .volatile_reg =3D s2mpu02_volatile, + .cache_type =3D REGCACHE_FLAT, +}; + +static const struct regmap_config s5m8767_regmap_config =3D { + .reg_bits =3D 8, + .val_bits =3D 8, + + .max_register =3D S5M8767_REG_LDO28CTRL, + .volatile_reg =3D s2mps11_volatile, + .cache_type =3D REGCACHE_FLAT, +}; + +/* + * Only the common platform data elements for s5m8767 are parsed here from= the + * device tree. Other sub-modules of s5m8767 such as pmic, rtc , charger a= nd + * others have to parse their own platform data elements from device tree. + */ +static void +sec_pmic_i2c_parse_dt_pdata(struct device *dev, + struct sec_pmic_probe_data *pd) +{ + pd->manual_poweroff =3D + of_property_read_bool(dev->of_node, + "samsung,s2mps11-acokb-ground"); + pd->disable_wrstbi =3D + of_property_read_bool(dev->of_node, + "samsung,s2mps11-wrstbi-ground"); +} + +static int sec_pmic_i2c_probe(struct i2c_client *client) +{ + struct sec_pmic_probe_data probedata; + const struct regmap_config *regmap; + unsigned long device_type; + struct regmap *regmap_pmic; + int ret; + + sec_pmic_i2c_parse_dt_pdata(&client->dev, &probedata); + + device_type =3D (unsigned long)of_device_get_match_data(&client->dev); + + switch (device_type) { + case S2MPA01: + regmap =3D &s2mpa01_regmap_config; + break; + case S2MPS11X: + regmap =3D &s2mps11_regmap_config; + break; + case S2MPS13X: + regmap =3D &s2mps13_regmap_config; + break; + case S2MPS14X: + regmap =3D &s2mps14_regmap_config; + break; + case S2MPS15X: + regmap =3D &s2mps15_regmap_config; + break; + case S5M8767X: + regmap =3D &s5m8767_regmap_config; + break; + case S2MPU02: + regmap =3D &s2mpu02_regmap_config; + break; + default: + regmap =3D &sec_regmap_config; + break; + } + + regmap_pmic =3D devm_regmap_init_i2c(client, regmap); + if (IS_ERR(regmap_pmic)) { + ret =3D PTR_ERR(regmap_pmic); + dev_err(&client->dev, "Failed to allocate register map: %d\n", + ret); + return ret; + } + + return sec_pmic_probe(&client->dev, device_type, client->irq, + regmap_pmic, &probedata, client); +} + +static void sec_pmic_i2c_shutdown(struct i2c_client *i2c) +{ + sec_pmic_shutdown(&i2c->dev); +} + +static const struct of_device_id sec_pmic_i2c_of_match[] =3D { + { + .compatible =3D "samsung,s5m8767-pmic", + .data =3D (void *)S5M8767X, + }, { + .compatible =3D "samsung,s2dos05", + .data =3D (void *)S2DOS05, + }, { + .compatible =3D "samsung,s2mps11-pmic", + .data =3D (void *)S2MPS11X, + }, { + .compatible =3D "samsung,s2mps13-pmic", + .data =3D (void *)S2MPS13X, + }, { + .compatible =3D "samsung,s2mps14-pmic", + .data =3D (void *)S2MPS14X, + }, { + .compatible =3D "samsung,s2mps15-pmic", + .data =3D (void *)S2MPS15X, + }, { + .compatible =3D "samsung,s2mpa01-pmic", + .data =3D (void *)S2MPA01, + }, { + .compatible =3D "samsung,s2mpu02-pmic", + .data =3D (void *)S2MPU02, + }, { + .compatible =3D "samsung,s2mpu05-pmic", + .data =3D (void *)S2MPU05, + }, + { }, +}; +MODULE_DEVICE_TABLE(of, sec_pmic_i2c_of_match); + +static struct i2c_driver sec_pmic_i2c_driver =3D { + .driver =3D { + .name =3D "sec-pmic-i2c", + .pm =3D pm_sleep_ptr(&sec_pmic_pm_ops), + .of_match_table =3D sec_pmic_i2c_of_match, + }, + .probe =3D sec_pmic_i2c_probe, + .shutdown =3D sec_pmic_i2c_shutdown, +}; +module_i2c_driver(sec_pmic_i2c_driver); + +MODULE_AUTHOR("Andr=C3=A9 Draszik "); +MODULE_AUTHOR("Sangbeom Kim "); +MODULE_DESCRIPTION("I2C driver for the Samsung S5M"); +MODULE_LICENSE("GPL"); --=20 2.49.0.395.g12beb8f557-goog From nobody Thu Dec 18 22:20:07 2025 Received: from mail-ej1-f45.google.com (mail-ej1-f45.google.com [209.85.218.45]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id D768E1C700D for ; Sun, 23 Mar 2025 22:39:31 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.45 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1742769577; cv=none; b=adSBxRGjJU+r/v3V0hoKPAHZBA/3a5uvtaK78ZVTBFxPYXla8ZwE1Psc1QiD2ddYJ697ykyfUYIqfJl4yMP1y8zScMl3sIOOVbBsDzjxoFqKVWUv+OuOBBZ70J/4IGQXL5qpKpaHG5iTryTnKl5pgOA87IVsKN3zmMhzIsRSnnU= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1742769577; c=relaxed/simple; bh=vhmwcNLdq/vAk/57/nIwHgfUXmRE5veIwzqtkTfIDCM=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=f0GO8lO4jzUOeGzu/PSAUgJFKzsZFB8x/h/1+OKmSJqUUnnMFgbQUYNBhW6bpO5Ulj2D6YrTlokPCuLI3vOfI2vI38k0dkDaZwt6eIgjC9YTRFH3qGxXok5ckkY61+yuJothqJtt1PND68sPO74crkDoHXFosCmCEGFt8UxOJ4A= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=evgXH92t; arc=none smtp.client-ip=209.85.218.45 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="evgXH92t" Received: by mail-ej1-f45.google.com with SMTP id a640c23a62f3a-ac345bd8e13so673815666b.0 for ; Sun, 23 Mar 2025 15:39:31 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1742769570; x=1743374370; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=UPaIY3x3VVrMkB4/G8kk/a/tWB9/OjPG56rBALdlvrQ=; b=evgXH92tqHyJLaExNh4ZZ8xmGgq54s0dUHli9+RWyVVeMQgxKwBPqgNUNz0NTbUKmt X4nhCb8UtjXIROlwBJrVveHFIKsHis4G5uEl1/7Acxh9QIiC6kQX7TJiZgX0p5diHZOV iJL0kLCMz5v5paf4P1xrwduIoXzK5eIpNYZDwQQsG4nCsRR8mZu8XLdMOUbz9SgpNut/ sX90rblFd5gfW4jk0iinBQPRvGGsXH3u1AhRjMA331+a8JdABeHlrzOy7Mj+BV69FpGy 47Az53jUg/1QoF2F+L0D+n+DDFucYPdV8DShGzY0JJiw203ZlWQQsZ6Z1sXAN6JjEx3r w/EQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1742769570; x=1743374370; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=UPaIY3x3VVrMkB4/G8kk/a/tWB9/OjPG56rBALdlvrQ=; b=fenO7MLw3Yf023P1cdaCh9ql5fOmlG120FzYpmT66j5gYPqrnJITsJ7wjP1kTTm42Q QARBmH85c42cd5twocZbaELT85hBZpZUrvpbde+F1oLmUz0aJzm94E/UuDk2mY6BnKbl EMRj1S1CreKTJoh3fjvR9oewlvo3cqZQiGYy0loLq1A9DiZ6UFrj1uRBj607hBLDEvqy zC/t3yZcoXa744HNZT8S4nSwtEBw3V+qEKaPDrO1xMG2Bikf1f+GgluM77AYYLf8Lnok ESnEwk9e+lDHIsB0gpRKCsafZYcOGMzkz9wP/aaCUuKOoAIUi5M0pgatY8TC/rg6MApq hb6g== X-Forwarded-Encrypted: i=1; AJvYcCXCUBpejX84ow4I6syrINGths9PzEQqxKbVN/To0PuMt5KXfr87IWIoJvFR6tx6ifVLK29YFUkepVRf5Xc=@vger.kernel.org X-Gm-Message-State: AOJu0YwfeUg2kyzEhrBch3pknZzyLQjjzoFStWjb0gtD36B/0P7+yzs2 nymPGpnxhlZCZHGFHTKw/LhG3CZBU/McF+cqVMseIrqdWfC+yNwDfVGi/6CvUYs= X-Gm-Gg: ASbGncuW0x13mirTj2toF7nz4CEzuWgh+atWd6Bcd7wpo4tE8xtd3y2/944oBT4sS/O FE/KlsxdKuC7ePYZ1+TNsMcWoM3ugovxJF8x2p2YPLL6WQ6rJHC6sYoOxAV9udRTSqNp908GerW MKvl0tutO4Q+Tyl4bE5NT3dV+Qpgk/NwBLwcjRPBj0LX0MfV9i8CDwfmL6i6ZrxgSC8LKhgkvcx UhKoWewwll30AABnYVtVX62rmv7b/Vi22bbA5sz/6ZJffwoWp24Y7SCOS2uC0xCz5fTEmbCoh73 X6GE6YSKVnSITbH5xo25Pk0CkRoFFQZR+TqSCplNMDLyOCojzDAXMGReITlRpDkfrq75k7S7udr 7Kk02DUU3yn8sLlbUue7VaugRPZS0 X-Google-Smtp-Source: AGHT+IFPXn5kuydsVZ5juxiG+97RkmMKn/3aV6ozY9UpbUvRFJV9i4K4wAS7EARyuWbOU8je237GtQ== X-Received: by 2002:a17:907:7293:b0:abf:fb78:673a with SMTP id a640c23a62f3a-ac3f22b0fb0mr895769166b.29.1742769569876; Sun, 23 Mar 2025 15:39:29 -0700 (PDT) Received: from puffmais.c.googlers.com (8.239.204.35.bc.googleusercontent.com. [35.204.239.8]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-ac3ef86e44dsm559686666b.31.2025.03.23.15.39.29 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 23 Mar 2025 15:39:29 -0700 (PDT) From: =?utf-8?q?Andr=C3=A9_Draszik?= Date: Sun, 23 Mar 2025 22:39:27 +0000 Subject: [PATCH 11/34] defconfigs: rename CONFIG_MFD_SEC_CORE to CONFIG_MFD_SEC_I2C 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: <20250323-s2mpg10-v1-11-d08943702707@linaro.org> References: <20250323-s2mpg10-v1-0-d08943702707@linaro.org> In-Reply-To: <20250323-s2mpg10-v1-0-d08943702707@linaro.org> To: Krzysztof Kozlowski , Lee Jones , Rob Herring , Conor Dooley , Sylwester Nawrocki , Chanwoo Choi , Alim Akhtar , Michael Turquette , Stephen Boyd , Russell King , Catalin Marinas , Will Deacon , Alexandre Belloni Cc: Peter Griffin , Tudor Ambarus , Will McVicker , kernel-team@android.com, linux-kernel@vger.kernel.org, linux-samsung-soc@vger.kernel.org, devicetree@vger.kernel.org, linux-clk@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-rtc@vger.kernel.org, =?utf-8?q?Andr=C3=A9_Draszik?= X-Mailer: b4 0.14.2 We are adding support for Samsung PMICs that aren't using I2C and therefore had to rename the Kconfig symbol. Signed-off-by: Andr=C3=A9 Draszik --- arch/arm/configs/exynos_defconfig | 2 +- arch/arm/configs/multi_v7_defconfig | 2 +- arch/arm/configs/pxa_defconfig | 2 +- arch/arm64/configs/defconfig | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/arch/arm/configs/exynos_defconfig b/arch/arm/configs/exynos_de= fconfig index 7ad48fdda1dac69a4a9612eabb573729bed7b3a6..251f45be6c14af59263373f21b2= 7b15f42ec7f61 100644 --- a/arch/arm/configs/exynos_defconfig +++ b/arch/arm/configs/exynos_defconfig @@ -167,7 +167,7 @@ CONFIG_MFD_MAX77686=3Dy CONFIG_MFD_MAX77693=3Dy CONFIG_MFD_MAX8997=3Dy CONFIG_MFD_MAX8998=3Dy -CONFIG_MFD_SEC_CORE=3Dy +CONFIG_MFD_SEC_I2C=3Dy CONFIG_MFD_STMPE=3Dy CONFIG_STMPE_I2C=3Dy CONFIG_MFD_TPS65090=3Dy diff --git a/arch/arm/configs/multi_v7_defconfig b/arch/arm/configs/multi_v= 7_defconfig index ad037c175fdb0ec8601c9b3607aca0c0e5f3c145..7d06ac5369b1a2f325462f2cf5b= 54fe22061ca77 100644 --- a/arch/arm/configs/multi_v7_defconfig +++ b/arch/arm/configs/multi_v7_defconfig @@ -612,7 +612,7 @@ CONFIG_MFD_QCOM_RPM=3Dy CONFIG_MFD_SPMI_PMIC=3Dy CONFIG_MFD_RK8XX_I2C=3Dy CONFIG_MFD_RN5T618=3Dy -CONFIG_MFD_SEC_CORE=3Dy +CONFIG_MFD_SEC_I2C=3Dy CONFIG_MFD_STMPE=3Dy CONFIG_MFD_PALMAS=3Dy CONFIG_MFD_TPS65090=3Dy diff --git a/arch/arm/configs/pxa_defconfig b/arch/arm/configs/pxa_defconfig index de0ac8f521d7612704ce327e9ac16ab9e999f3d3..064e79baf20da809c9ab1f1fa18= 282aaba11a41f 100644 --- a/arch/arm/configs/pxa_defconfig +++ b/arch/arm/configs/pxa_defconfig @@ -335,7 +335,7 @@ CONFIG_MFD_MAX77693=3Dy CONFIG_MFD_MAX8907=3Dm CONFIG_EZX_PCAP=3Dy CONFIG_UCB1400_CORE=3Dm -CONFIG_MFD_SEC_CORE=3Dy +CONFIG_MFD_SEC_I2C=3Dy CONFIG_MFD_PALMAS=3Dy CONFIG_MFD_TPS65090=3Dy CONFIG_MFD_TPS6586X=3Dy diff --git a/arch/arm64/configs/defconfig b/arch/arm64/configs/defconfig index e8dfbe22db68d9aa24df5af0786a2eeb8f33bf3c..cc4dc330cfe82d11ca0c4c9ba8c= ac4b14decdeab 100644 --- a/arch/arm64/configs/defconfig +++ b/arch/arm64/configs/defconfig @@ -769,7 +769,7 @@ CONFIG_MFD_MT6397=3Dy CONFIG_MFD_SPMI_PMIC=3Dy CONFIG_MFD_RK8XX_I2C=3Dy CONFIG_MFD_RK8XX_SPI=3Dy -CONFIG_MFD_SEC_CORE=3Dy +CONFIG_MFD_SEC_I2C=3Dy CONFIG_MFD_SL28CPLD=3Dy CONFIG_RZ_MTU3=3Dy CONFIG_MFD_TI_AM335X_TSCADC=3Dm --=20 2.49.0.395.g12beb8f557-goog From nobody Thu Dec 18 22:20:07 2025 Received: from mail-ej1-f50.google.com (mail-ej1-f50.google.com [209.85.218.50]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 5263C1DDA33 for ; Sun, 23 Mar 2025 22:39:32 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.50 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1742769579; cv=none; b=H+JB/UEoI/9SlspWmxlSB4oHy/9TZUBBkwz2WnFcAeFgO8hQwIDQqDQFzPpRk3VqildElUIjuYxpHbl8YbYW75C/Y1DrK3GJozhDycFjO2HmChUo7Po24YRPdc+mElzXlDVByUEVKLaOphLq3T6oeJ1UllpfWSE3qEBPzBg2srM= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1742769579; c=relaxed/simple; bh=G66LYDaLo+JZwbIpkb6K4lcnIZh7zjnkzekQFX97A4g=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=eLrsBD97xxQzlZZP67Lg17zDKz8xm6tadryW2MONE/iNL4kgkFw3eCp+s8OwlsPdyBUEZhxscr2S10mhQuP5A7Ff3Uk3R4398hvF53Sf9Ntnec2QRR9/4gLBr+ueWBs3djHy4tz3YhTEsu8F6q+UW1KifGMoYn9GYlCqjNpd9PQ= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=UpPpl+Ev; arc=none smtp.client-ip=209.85.218.50 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="UpPpl+Ev" Received: by mail-ej1-f50.google.com with SMTP id a640c23a62f3a-ac28e66c0e1so567662566b.0 for ; Sun, 23 Mar 2025 15:39:32 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1742769571; x=1743374371; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=7f8avKZRw6w317MoHLh8hYaw+o5WK+EwvWuCQDnUpOw=; b=UpPpl+EvJpmCVwLiXJKLjWe0V4FjoGbPvqqjpeIsPGKcp8IpBi+esy7l/OQirs8M0L yFG+X1G4opuy4OA1dItMYzoBJ95aP6Kxa+or5Zd2xBJxDU93UQ4X5mValTxlYxMvUG09 g0GZjiRtRveFlIBBsC8dMxKXx2IDQ38JSrQ6D988akHKGKYq2LCT6nLWoyrzqL/zhQ4E 3ewqxyEYQy4fZ5oB6GdVHVNZ+nT10VX3JXT7iLivOby2Agq1yF7FpbK50zEzK04yFKaO PebZMO8ngnIi/l9I/PzgjxK3H+xi3sClm66+swhEA/pXn90QXmovYiomAt3soNA42ECF ytVw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1742769571; x=1743374371; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=7f8avKZRw6w317MoHLh8hYaw+o5WK+EwvWuCQDnUpOw=; b=wEGyJ4IWs2qr75znGLDxWoaGPYcVZbiLqm4ah7Fp5GBqvRWdmKRQM97gBayZujhbfY MHKOGe78Z0pWCYXwrk7k3w6iyTrWGKD0Jr9Yc9KxN9HD+i81X5q+WHneE06q9XEGObGd uMkhfLz7yQpITr03wWRgTEFmhXdbmofhL9J7u2mcTFjWthWjtVKseglmrT16ApRCoNI0 uNnjzkWfF4DHTUY3wqK0G/PDue9K/3DRuLkRZqc8/DRMw7fouBqoDEz81YMiMmzfKcxN EQ//0+Ng7/Jv39K7Afpjjd342+W4L9vIJOi1STBPzOStGGWHtgneS/XuXmbe0VeG/Z+y l7GQ== X-Forwarded-Encrypted: i=1; AJvYcCXT9fpT0g4/4J9f0cRUcMN+ChKguL93ItvBksapmT5O1X3TBBG+JCDvyeH8CkbS57OKfyEKoUo6fcIzBDU=@vger.kernel.org X-Gm-Message-State: AOJu0Yw4d0dYEtBWTuocooM42Ha/sl6Ny7E4dALcRCiLwyeYfZLaGqzK D3I9ZMlKXDVw/wFc2DLjs4JKQMgpP8UVg6CF+F6tIUoGpm1amuIjgcQSJIn3uHE= X-Gm-Gg: ASbGncsg6H2Lvdo9cSEm8VFTf/W4JLgYl6NjQYAHNt27D6BH2gp19GZ1JGULAzKLtN0 v4qN5AMY+6DrID/B9HzbUCe6D7ddBn4WffcC2hZj6XTtr2AV7WEwJvPme+4yOTrtO0/HgeSQWXc LQ9ddaUzX2OrdO1c1mK+/DDHO4+5gvZ0UM5jOHhPTedzQu2R5F4smkiPiCuAU8YpTN0C2tcH7hz t1QXWiwH+UaiqD7LEm1zvxxMJZ+8FyC0kOz1QgOMu/kAymVoxlKJoQWkfSwYsaKd75qmFKMI+eE cyDnIXWze8gKPoRvFh0K59ek38iARGVDJSCq+osr+FE+y3gMSx2HuOC9CEBeAnmnQTBc8v0B9Ym lbtouVjXnBqeG8VsIHQOnUayqAQf+ X-Google-Smtp-Source: AGHT+IFPCVSpCsN9G8gL36i+X2OmHMIEEiVZzrvFJ1orAU5U1fjgiuIiYr+lmn2muaixnVkLGbpoMw== X-Received: by 2002:a17:906:6a1c:b0:ac1:ed96:56d9 with SMTP id a640c23a62f3a-ac3f24adc8bmr978099466b.40.1742769570580; Sun, 23 Mar 2025 15:39:30 -0700 (PDT) Received: from puffmais.c.googlers.com (8.239.204.35.bc.googleusercontent.com. [35.204.239.8]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-ac3ef86e44dsm559686666b.31.2025.03.23.15.39.29 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 23 Mar 2025 15:39:30 -0700 (PDT) From: =?utf-8?q?Andr=C3=A9_Draszik?= Date: Sun, 23 Mar 2025 22:39:28 +0000 Subject: [PATCH 12/34] mfd: sec: add support for S2MPG10 PMIC 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: <20250323-s2mpg10-v1-12-d08943702707@linaro.org> References: <20250323-s2mpg10-v1-0-d08943702707@linaro.org> In-Reply-To: <20250323-s2mpg10-v1-0-d08943702707@linaro.org> To: Krzysztof Kozlowski , Lee Jones , Rob Herring , Conor Dooley , Sylwester Nawrocki , Chanwoo Choi , Alim Akhtar , Michael Turquette , Stephen Boyd , Russell King , Catalin Marinas , Will Deacon , Alexandre Belloni Cc: Peter Griffin , Tudor Ambarus , Will McVicker , kernel-team@android.com, linux-kernel@vger.kernel.org, linux-samsung-soc@vger.kernel.org, devicetree@vger.kernel.org, linux-clk@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-rtc@vger.kernel.org, =?utf-8?q?Andr=C3=A9_Draszik?= X-Mailer: b4 0.14.2 Add support for Samsung's S2MPG10 PMIC, which is a Power Management IC for mobile applications with buck converters, various LDOs, power meters, RTC, clock outputs, and additional GPIOs interfaces. Contrary to existing Samsung S2M series PMICs supported, communication is not via I2C, but via the Samsung ACPM firmware. This commit adds the core driver. Signed-off-by: Andr=C3=A9 Draszik --- Checkpatch suggests to update MAINTAINERS, but the new file is covered already due to using a wildcard. --- drivers/mfd/Kconfig | 17 ++ drivers/mfd/Makefile | 1 + drivers/mfd/sec-acpm.c | 471 ++++++++++++++++++++++++++++++++= ++++ drivers/mfd/sec-core.c | 16 ++ drivers/mfd/sec-irq.c | 68 ++++++ include/linux/mfd/samsung/core.h | 1 + include/linux/mfd/samsung/irq.h | 103 ++++++++ include/linux/mfd/samsung/s2mpg10.h | 310 ++++++++++++++++++++++++ 8 files changed, 987 insertions(+) diff --git a/drivers/mfd/Kconfig b/drivers/mfd/Kconfig index 9cce9a632827a38d6e4396167aa3b0391f273e97..a154be6e2d44e41608e0a297e09= 15a84ebbb66cc 100644 --- a/drivers/mfd/Kconfig +++ b/drivers/mfd/Kconfig @@ -1320,6 +1320,23 @@ config MFD_SEC_CORE select MFD_CORE select REGMAP_IRQ =20 +config MFD_SEC_ACPM + tristate "Samsung Electronics S2MPG1x PMICs" + depends on EXYNOS_ACPM_PROTOCOL + depends on OF + select MFD_SEC_CORE + help + Support for the Samsung Electronics PMICs with ACPM interface. + This is a Power Management IC for mobile applications with buck + converters, various LDOs, power meters, RTC, clock outputs, and + additional GPIOs interfaces. + This driver provides common support for accessing the device; + additional drivers must be enabled in order to use the functionality + of the device. + + To compile this driver as a module, choose M here: the module will be + called sec-acpm. + config MFD_SEC_I2C tristate "Samsung Electronics S2MPA/S2MPS1X/S2MPU/S5M series PMICs" depends on I2C=3Dy diff --git a/drivers/mfd/Makefile b/drivers/mfd/Makefile index ca9efff5780a7c818ca6cfe017c0f897ca70b449..8a8c678134a9721c7f78e432ddd= 0df33b2b0de69 100644 --- a/drivers/mfd/Makefile +++ b/drivers/mfd/Makefile @@ -233,6 +233,7 @@ obj-$(CONFIG_MFD_RK8XX_I2C) +=3D rk8xx-i2c.o obj-$(CONFIG_MFD_RK8XX_SPI) +=3D rk8xx-spi.o obj-$(CONFIG_MFD_RN5T618) +=3D rn5t618.o obj-$(CONFIG_MFD_SEC_CORE) +=3D sec-core.o sec-irq.o +obj-$(CONFIG_MFD_SEC_ACPM) +=3D sec-acpm.o obj-$(CONFIG_MFD_SEC_I2C) +=3D sec-i2c.o obj-$(CONFIG_MFD_SYSCON) +=3D syscon.o obj-$(CONFIG_MFD_LM3533) +=3D lm3533-core.o lm3533-ctrlbank.o diff --git a/drivers/mfd/sec-acpm.c b/drivers/mfd/sec-acpm.c new file mode 100644 index 0000000000000000000000000000000000000000..4d5b3f412cc22dcf3bc1680a54d= cf263a65882c2 --- /dev/null +++ b/drivers/mfd/sec-acpm.c @@ -0,0 +1,471 @@ +// SPDX-License-Identifier: GPL-2.0-only +// +// Copyright 2020 Google Inc +// Copyright 2025 Linaro Ltd. +// +// Samsung S2MPG1x ACPM driver + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include "sec-core.h" + +#define ACPM_MAX_BULK_DATA 8 + +struct sec_pmic_acpm_platform_data { + int device_type; + + unsigned int acpm_chan_id; + u8 speedy_channel; + + const struct regmap_config *regmap_cfg_common; + const struct regmap_config *regmap_cfg_pmic; + const struct regmap_config *regmap_cfg_rtc; + const struct regmap_config *regmap_cfg_meter; +}; + +static const struct regmap_range s2mpg10_common_registers[] =3D { + regmap_reg_range(0x00, 0x02), + regmap_reg_range(0x0a, 0x0c), + regmap_reg_range(0x1a, 0x2a), + regmap_reg_range(0x33, 0x3f), + regmap_reg_range(0x57, 0x7f), +}; + +static const struct regmap_range s2mpg10_common_ro_registers[] =3D { + regmap_reg_range(0x00, 0x01), + regmap_reg_range(0x28, 0x2a), + regmap_reg_range(0x33, 0x3f), + regmap_reg_range(0x57, 0x7f), +}; + +static const struct regmap_range s2mpg10_common_nonvolatile_registers[] = =3D { + regmap_reg_range(0x00, 0x00), /* CHIP_ID_M */ + regmap_reg_range(0x02, 0x02), /* INT_MASK */ + regmap_reg_range(0x0a, 0x0c), /* speedy control */ +}; + +static const struct regmap_range s2mpg10_common_precious_registers[] =3D { + regmap_reg_range(0x01, 0x01), /* INT */ +}; + +static const struct regmap_access_table s2mpg10_common_wr_table =3D { + .yes_ranges =3D s2mpg10_common_registers, + .n_yes_ranges =3D ARRAY_SIZE(s2mpg10_common_registers), + .no_ranges =3D s2mpg10_common_ro_registers, + .n_no_ranges =3D ARRAY_SIZE(s2mpg10_common_ro_registers), +}; + +static const struct regmap_access_table s2mpg10_common_rd_table =3D { + .yes_ranges =3D s2mpg10_common_registers, + .n_yes_ranges =3D ARRAY_SIZE(s2mpg10_common_registers), +}; + +static const struct regmap_access_table s2mpg10_common_volatile_table =3D { + .no_ranges =3D s2mpg10_common_nonvolatile_registers, + .n_no_ranges =3D ARRAY_SIZE(s2mpg10_common_nonvolatile_registers), +}; + +static const struct regmap_access_table s2mpg10_common_precious_table =3D { + .yes_ranges =3D s2mpg10_common_precious_registers, + .n_yes_ranges =3D ARRAY_SIZE(s2mpg10_common_precious_registers), +}; + +static const struct regmap_config s2mpg10_regmap_config_common =3D { + .name =3D "common", + .reg_bits =3D 8, + .val_bits =3D 8, + .max_register =3D 0x7f, + .wr_table =3D &s2mpg10_common_wr_table, + .rd_table =3D &s2mpg10_common_rd_table, + .volatile_table =3D &s2mpg10_common_volatile_table, + .precious_table =3D &s2mpg10_common_precious_table, + .num_reg_defaults_raw =3D 0x7f + 1, + .cache_type =3D REGCACHE_FLAT, +}; + +static const struct regmap_range s2mpg10_pmic_registers[] =3D { + regmap_reg_range(0x00, 0xf6), +}; + +static const struct regmap_range s2mpg10_pmic_ro_registers[] =3D { + regmap_reg_range(0x00, 0x05), /* INTx */ + regmap_reg_range(0x0c, 0x0f), /* STATUSx PWRONSRC OFFSRC */ + regmap_reg_range(0xc7, 0xc7), /* GPIO input */ +}; + +static const struct regmap_range s2mpg10_pmic_nonvolatile_registers[] =3D { + regmap_reg_range(0x06, 0x0b), /* INTxM */ +}; + +static const struct regmap_range s2mpg10_pmic_precious_registers[] =3D { + regmap_reg_range(0x00, 0x05), /* INTx */ +}; + +static const struct regmap_access_table s2mpg10_pmic_wr_table =3D { + .yes_ranges =3D s2mpg10_pmic_registers, + .n_yes_ranges =3D ARRAY_SIZE(s2mpg10_pmic_registers), + .no_ranges =3D s2mpg10_pmic_ro_registers, + .n_no_ranges =3D ARRAY_SIZE(s2mpg10_pmic_ro_registers), +}; + +static const struct regmap_access_table s2mpg10_pmic_rd_table =3D { + .yes_ranges =3D s2mpg10_pmic_registers, + .n_yes_ranges =3D ARRAY_SIZE(s2mpg10_pmic_registers), +}; + +static const struct regmap_access_table s2mpg10_pmic_volatile_table =3D { + .no_ranges =3D s2mpg10_pmic_nonvolatile_registers, + .n_no_ranges =3D ARRAY_SIZE(s2mpg10_pmic_nonvolatile_registers), +}; + +static const struct regmap_access_table s2mpg10_pmic_precious_table =3D { + .yes_ranges =3D s2mpg10_pmic_precious_registers, + .n_yes_ranges =3D ARRAY_SIZE(s2mpg10_pmic_precious_registers), +}; + +static const struct regmap_config s2mpg10_regmap_config_pmic =3D { + .name =3D "pmic", + .reg_bits =3D 8, + .val_bits =3D 8, + .max_register =3D 0xf6, + .wr_table =3D &s2mpg10_pmic_wr_table, + .rd_table =3D &s2mpg10_pmic_rd_table, + .volatile_table =3D &s2mpg10_pmic_volatile_table, + .precious_table =3D &s2mpg10_pmic_precious_table, + .num_reg_defaults_raw =3D 0xf6 + 1, + .cache_type =3D REGCACHE_FLAT, +}; + +static const struct regmap_range s2mpg10_rtc_registers[] =3D { + regmap_reg_range(0x00, 0x2b), +}; + +static const struct regmap_range s2mpg10_volatile_registers[] =3D { + regmap_reg_range(0x01, 0x01), /* RTC_UPDATE */ + regmap_reg_range(0x05, 0x0c), /* time / date */ +}; + +static const struct regmap_access_table s2mpg10_rtc_wr_table =3D { + .yes_ranges =3D s2mpg10_rtc_registers, + .n_yes_ranges =3D ARRAY_SIZE(s2mpg10_rtc_registers), + /* no r/o registers in RTC block */ +}; + +static const struct regmap_access_table s2mpg10_rtc_rd_table =3D { + .yes_ranges =3D s2mpg10_rtc_registers, + .n_yes_ranges =3D ARRAY_SIZE(s2mpg10_rtc_registers), +}; + +static const struct regmap_access_table s2mpg10_rtc_volatile_table =3D { + .yes_ranges =3D s2mpg10_volatile_registers, + .n_yes_ranges =3D ARRAY_SIZE(s2mpg10_volatile_registers), +}; + +static const struct regmap_config s2mpg10_regmap_config_rtc =3D { + .name =3D "rtc", + .reg_bits =3D 8, + .val_bits =3D 8, + .reg_stride =3D 1, + .max_register =3D 0x2b, + .wr_table =3D &s2mpg10_rtc_wr_table, + .rd_table =3D &s2mpg10_rtc_rd_table, + .volatile_table =3D &s2mpg10_rtc_volatile_table, + .num_reg_defaults_raw =3D 0x2b + 1, + .cache_type =3D REGCACHE_FLAT, +}; + +static const struct regmap_range s2mpg10_meter_registers[] =3D { + regmap_reg_range(0x00, 0x21), /* meter config */ + regmap_reg_range(0x40, 0x8a), /* meter data */ + regmap_reg_range(0xee, 0xee), + regmap_reg_range(0xf1, 0xf1), +}; + +static const struct regmap_range s2mpg10_meter_ro_registers[] =3D { + regmap_reg_range(0x40, 0x8a), +}; + +static const struct regmap_access_table s2mpg10_meter_wr_table =3D { + .yes_ranges =3D s2mpg10_meter_registers, + .n_yes_ranges =3D ARRAY_SIZE(s2mpg10_meter_registers), + .no_ranges =3D s2mpg10_meter_ro_registers, + .n_no_ranges =3D ARRAY_SIZE(s2mpg10_meter_ro_registers), +}; + +static const struct regmap_access_table s2mpg10_meter_rd_table =3D { + .yes_ranges =3D s2mpg10_meter_registers, + .n_yes_ranges =3D ARRAY_SIZE(s2mpg10_meter_registers), +}; + +static const struct regmap_access_table s2mpg10_meter_volatile_table =3D { + .yes_ranges =3D s2mpg10_meter_ro_registers, + .n_yes_ranges =3D ARRAY_SIZE(s2mpg10_meter_ro_registers), +}; + +static const struct regmap_config s2mpg10_regmap_config_meter =3D { + .name =3D "meter", + .reg_bits =3D 8, + .val_bits =3D 8, + .reg_stride =3D 1, + .max_register =3D 0xf1, + .wr_table =3D &s2mpg10_meter_wr_table, + .rd_table =3D &s2mpg10_meter_rd_table, + .volatile_table =3D &s2mpg10_meter_volatile_table, + .num_reg_defaults_raw =3D 0xf1 + 1, + .cache_type =3D REGCACHE_FLAT, +}; + +struct sec_acpm_shared_bus_context { + const struct acpm_handle *acpm; + unsigned int acpm_chan_id; + u8 speedy_channel; +}; + +struct sec_acpm_bus_context { + struct sec_acpm_shared_bus_context *shared; + u8 type; +#define SEC_ACPM_TYPE_COMMON 0x00 +#define SEC_ACPM_TYPE_PMIC 0x01 +#define SEC_ACPM_TYPE_RTC 0x02 +#define SEC_ACPM_TYPE_METER 0x0a +#define SEC_ACPM_TYPE_WLWP 0x0b +#define SEC_ACPM_TYPE_TRIM 0x0f +}; + +static int sec_acpm_bus_write(void *context, const void *data, size_t coun= t) +{ + struct sec_acpm_bus_context *ctx =3D context; + const struct acpm_handle *acpm =3D ctx->shared->acpm; + const struct acpm_pmic_ops *pmic_ops =3D &acpm->ops.pmic_ops; + u8 reg; + + if (count < 2 || count > (ACPM_MAX_BULK_DATA + 1)) + return -EINVAL; + + reg =3D *(u8 *)data; + ++data; + --count; + + return pmic_ops->bulk_write(acpm, ctx->shared->acpm_chan_id, + ctx->type, reg, + ctx->shared->speedy_channel, count, data); +} + +static int sec_acpm_bus_read(void *context, const void *reg_buf, + size_t reg_size, void *val_buf, + size_t val_size) +{ + struct sec_acpm_bus_context *ctx =3D context; + const struct acpm_handle *acpm =3D ctx->shared->acpm; + const struct acpm_pmic_ops *pmic_ops =3D &acpm->ops.pmic_ops; + u8 reg; + + if (reg_size !=3D 1 || !val_size || val_size > ACPM_MAX_BULK_DATA) + return -EINVAL; + + reg =3D *(u8 *)reg_buf; + + return pmic_ops->bulk_read(acpm, ctx->shared->acpm_chan_id, + ctx->type, reg, + ctx->shared->speedy_channel, + val_size, val_buf); +} + +static int sec_acpm_bus_reg_update_bits(void *context, unsigned int reg, + unsigned int mask, unsigned int val) +{ + struct sec_acpm_bus_context *ctx =3D context; + const struct acpm_handle *acpm =3D ctx->shared->acpm; + const struct acpm_pmic_ops *pmic_ops =3D &acpm->ops.pmic_ops; + + return pmic_ops->update_reg(acpm, ctx->shared->acpm_chan_id, + ctx->type, reg & 0xff, + ctx->shared->speedy_channel, + val, mask); +} + +static const struct regmap_bus sec_pmic_acpm_regmap_bus =3D { + .write =3D sec_acpm_bus_write, + .read =3D sec_acpm_bus_read, + .reg_update_bits =3D sec_acpm_bus_reg_update_bits, + .max_raw_read =3D ACPM_MAX_BULK_DATA, + .max_raw_write =3D ACPM_MAX_BULK_DATA, +}; + +static struct regmap * +sec_pmic_acpm_regmap_init(struct device *dev, + struct sec_acpm_shared_bus_context *shared_ctx, + u8 type, const struct regmap_config *cfg, + bool do_attach) +{ + struct sec_acpm_bus_context *ctx; + struct regmap *regmap; + + ctx =3D devm_kzalloc(dev, sizeof(*ctx), GFP_KERNEL); + if (!ctx) + return ERR_PTR(-ENOMEM); + + ctx->shared =3D shared_ctx; + ctx->type =3D type; + + regmap =3D devm_regmap_init(dev, &sec_pmic_acpm_regmap_bus, ctx, cfg); + if (IS_ERR(regmap)) + return ERR_PTR(dev_err_probe(dev, PTR_ERR(regmap), + "regmap init (%s) failed\n", + cfg->name)); + + if (do_attach) { + int ret; + + ret =3D regmap_attach_dev(dev, regmap, cfg); + if (ret) + return ERR_PTR(dev_err_probe(dev, ret, + "regmap attach (%s) failed\n", + cfg->name)); + } + + return regmap; +} + +static void sec_acpm_mask_common_irqs(void *regmap_common) +{ + /* Mask all interrupts from 'common' block on shutdown */ + regmap_write(regmap_common, S2MPG10_COMMON_INT_MASK, + S2MPG10_COMMON_INT_SRC_MASK); +} + +static int sec_pmic_acpm_probe(struct platform_device *pdev) +{ + const struct sec_pmic_acpm_platform_data *data; + struct sec_acpm_shared_bus_context *shared_ctx; + const struct acpm_handle *acpm; + struct regmap *regmap_common, *regmap_pmic, *regmap; + struct device *dev; + int ret, irq; + + dev =3D &pdev->dev; + + data =3D device_get_match_data(dev); + if (!data) + return dev_err_probe(dev, -ENODEV, + "Unsupported device type\n"); + + acpm =3D devm_acpm_get_by_phandle(dev, "exynos,acpm-ipc"); + if (IS_ERR(acpm)) + return dev_err_probe(dev, PTR_ERR(acpm), + "Failed to get acpm\n"); + + irq =3D platform_get_irq(pdev, 0); + if (irq < 0) + return irq; + + shared_ctx =3D devm_kzalloc(dev, sizeof(*shared_ctx), GFP_KERNEL); + if (!shared_ctx) + return -ENOMEM; + + shared_ctx->acpm =3D acpm; + shared_ctx->acpm_chan_id =3D data->acpm_chan_id; + shared_ctx->speedy_channel =3D data->speedy_channel; + + regmap_common =3D sec_pmic_acpm_regmap_init(dev, shared_ctx, + SEC_ACPM_TYPE_COMMON, + data->regmap_cfg_common, + false); + if (IS_ERR(regmap_common)) + return PTR_ERR(regmap_common); + + /* Mask all interrupts from 'common' block, until successful init */ + ret =3D regmap_write(regmap_common, S2MPG10_COMMON_INT_MASK, + S2MPG10_COMMON_INT_SRC_MASK); + if (ret) + return dev_err_probe(dev, ret, + "Failed to mask common block interrupts\n"); + + regmap_pmic =3D sec_pmic_acpm_regmap_init(dev, shared_ctx, + SEC_ACPM_TYPE_PMIC, + data->regmap_cfg_pmic, + false); + if (IS_ERR(regmap_pmic)) + return PTR_ERR(regmap_pmic); + + regmap =3D sec_pmic_acpm_regmap_init(dev, shared_ctx, SEC_ACPM_TYPE_RTC, + data->regmap_cfg_rtc, true); + if (IS_ERR(regmap)) + return PTR_ERR(regmap); + + regmap =3D sec_pmic_acpm_regmap_init(dev, shared_ctx, SEC_ACPM_TYPE_METER, + data->regmap_cfg_meter, true); + if (IS_ERR(regmap)) + return PTR_ERR(regmap); + + ret =3D sec_pmic_probe(dev, data->device_type, irq, regmap_pmic, + NULL, NULL); + if (ret) + return ret; + + if (device_property_read_bool(dev, "wakeup-source")) + devm_device_init_wakeup(dev); + + /* + * Unmask PMIC interrupt from 'common' block, now that everything is in + * place. + */ + ret =3D regmap_clear_bits(regmap_common, S2MPG10_COMMON_INT_MASK, + S2MPG10_COMMON_INT_SRC_PMIC); + if (ret) + return dev_err_probe(dev, ret, + "Failed to unmask PMIC interrupt\n"); + + ret =3D devm_add_action_or_reset(dev, sec_acpm_mask_common_irqs, + regmap_common); + if (ret) + return ret; + + return 0; +} + +static void sec_pmic_acpm_shutdown(struct platform_device *pdev) +{ + sec_pmic_shutdown(&pdev->dev); +} + +static const struct sec_pmic_acpm_platform_data s2mpg10_data =3D { + .device_type =3D S2MPG10, + .acpm_chan_id =3D 2, + .speedy_channel =3D 0, + .regmap_cfg_common =3D &s2mpg10_regmap_config_common, + .regmap_cfg_pmic =3D &s2mpg10_regmap_config_pmic, + .regmap_cfg_rtc =3D &s2mpg10_regmap_config_rtc, + .regmap_cfg_meter =3D &s2mpg10_regmap_config_meter, +}; + +static const struct of_device_id sec_pmic_acpm_of_match[] =3D { + { .compatible =3D "samsung,s2mpg10-pmic", .data =3D &s2mpg10_data, }, + { }, +}; +MODULE_DEVICE_TABLE(of, sec_pmic_acpm_of_match); + +static struct platform_driver sec_pmic_acpm_driver =3D { + .driver =3D { + .name =3D "sec-pmic-acpm", + .pm =3D pm_sleep_ptr(&sec_pmic_pm_ops), + .of_match_table =3D sec_pmic_acpm_of_match, + }, + .probe =3D sec_pmic_acpm_probe, + .shutdown =3D sec_pmic_acpm_shutdown, +}; +module_platform_driver(sec_pmic_acpm_driver); + +MODULE_AUTHOR("Andr=C3=A9 Draszik "); +MODULE_DESCRIPTION("ACPM driver for the Samsung S2MPG1x"); +MODULE_LICENSE("GPL"); diff --git a/drivers/mfd/sec-core.c b/drivers/mfd/sec-core.c index e81da34cf6795beca5f660fb46eefa4b5f8957d1..27f5036ffa1009304147755c91d= 00be333dd206a 100644 --- a/drivers/mfd/sec-core.c +++ b/drivers/mfd/sec-core.c @@ -35,6 +35,14 @@ static const struct mfd_cell s2dos05_devs[] =3D { { .name =3D "s2dos05-regulator", }, }; =20 +static const struct mfd_cell s2mpg10_devs[] =3D { + MFD_CELL_NAME("s2mpg10-meter"), + MFD_CELL_NAME("s2mpg10-regulator"), + MFD_CELL_NAME("s2mpg10-rtc"), + MFD_CELL_OF("s2mpg10-clk", NULL, NULL, 0, 0, "samsung,s2mpg10-clk"), + MFD_CELL_OF("s2mpg10-gpio", NULL, NULL, 0, 0, "samsung,s2mpg10-gpio"), +}; + static const struct mfd_cell s2mps11_devs[] =3D { { .name =3D "s2mps11-regulator", }, { .name =3D "s2mps14-rtc", }, @@ -89,6 +97,10 @@ static void sec_pmic_dump_rev(struct sec_pmic_dev *sec_p= mic) { unsigned int val; =20 + /* For s2mpg1x, the revision is in a different regmap */ + if (sec_pmic->device_type =3D=3D S2MPG10) + return; + /* For each device type, the REG_ID is always the first register */ if (!regmap_read(sec_pmic->regmap_pmic, S2MPS11_REG_ID, &val)) dev_dbg(sec_pmic->dev, "Revision: 0x%x\n", val); @@ -170,6 +182,10 @@ int sec_pmic_probe(struct device *dev, unsigned long d= evice_type, sec_devs =3D s2mpa01_devs; num_sec_devs =3D ARRAY_SIZE(s2mpa01_devs); break; + case S2MPG10: + sec_devs =3D s2mpg10_devs; + num_sec_devs =3D ARRAY_SIZE(s2mpg10_devs); + break; case S2MPS11X: sec_devs =3D s2mps11_devs; num_sec_devs =3D ARRAY_SIZE(s2mps11_devs); diff --git a/drivers/mfd/sec-irq.c b/drivers/mfd/sec-irq.c index 4d49bb42bd0d109263f485c8b58e88cdd8d598d9..bf86281401ac6ff05c90c2d71c8= 4744709ed79cb 100644 --- a/drivers/mfd/sec-irq.c +++ b/drivers/mfd/sec-irq.c @@ -11,6 +11,7 @@ #include #include #include +#include #include #include #include @@ -20,6 +21,60 @@ #include #include "sec-core.h" =20 +static const struct regmap_irq s2mpg10_irqs[] =3D { + REGMAP_IRQ_REG(S2MPG10_IRQ_PWRONF, 0, S2MPG10_IRQ_PWRONF_MASK), + REGMAP_IRQ_REG(S2MPG10_IRQ_PWRONR, 0, S2MPG10_IRQ_PWRONR_MASK), + REGMAP_IRQ_REG(S2MPG10_IRQ_JIGONBF, 0, S2MPG10_IRQ_JIGONBF_MASK), + REGMAP_IRQ_REG(S2MPG10_IRQ_JIGONBR, 0, S2MPG10_IRQ_JIGONBR_MASK), + REGMAP_IRQ_REG(S2MPG10_IRQ_ACOKBF, 0, S2MPG10_IRQ_ACOKBF_MASK), + REGMAP_IRQ_REG(S2MPG10_IRQ_ACOKBR, 0, S2MPG10_IRQ_ACOKBR_MASK), + REGMAP_IRQ_REG(S2MPG10_IRQ_PWRON1S, 0, S2MPG10_IRQ_PWRON1S_MASK), + REGMAP_IRQ_REG(S2MPG10_IRQ_MRB, 0, S2MPG10_IRQ_MRB_MASK), + + REGMAP_IRQ_REG(S2MPG10_IRQ_RTC60S, 1, S2MPG10_IRQ_RTC60S_MASK), + REGMAP_IRQ_REG(S2MPG10_IRQ_RTCA1, 1, S2MPG10_IRQ_RTCA1_MASK), + REGMAP_IRQ_REG(S2MPG10_IRQ_RTCA0, 1, S2MPG10_IRQ_RTCA0_MASK), + REGMAP_IRQ_REG(S2MPG10_IRQ_RTC1S, 1, S2MPG10_IRQ_RTC1S_MASK), + REGMAP_IRQ_REG(S2MPG10_IRQ_WTSR_COLDRST, 1, S2MPG10_IRQ_WTSR_COLDRST_MASK= ), + REGMAP_IRQ_REG(S2MPG10_IRQ_WTSR, 1, S2MPG10_IRQ_WTSR_MASK), + REGMAP_IRQ_REG(S2MPG10_IRQ_WRST, 1, S2MPG10_IRQ_WRST_MASK), + REGMAP_IRQ_REG(S2MPG10_IRQ_SMPL, 1, S2MPG10_IRQ_SMPL_MASK), + + REGMAP_IRQ_REG(S2MPG10_IRQ_120C, 2, S2MPG10_IRQ_INT120C_MASK), + REGMAP_IRQ_REG(S2MPG10_IRQ_140C, 2, S2MPG10_IRQ_INT140C_MASK), + REGMAP_IRQ_REG(S2MPG10_IRQ_TSD, 2, S2MPG10_IRQ_TSD_MASK), + REGMAP_IRQ_REG(S2MPG10_IRQ_PIF_TIMEOUT1, 2, S2MPG10_IRQ_PIF_TIMEOUT1_MASK= ), + REGMAP_IRQ_REG(S2MPG10_IRQ_PIF_TIMEOUT2, 2, S2MPG10_IRQ_PIF_TIMEOUT2_MASK= ), + REGMAP_IRQ_REG(S2MPG10_IRQ_SPD_PARITY_ERR, 2, S2MPG10_IRQ_SPD_PARITY_ERR_= MASK), + REGMAP_IRQ_REG(S2MPG10_IRQ_SPD_ABNORMAL_STOP, 2, S2MPG10_IRQ_SPD_ABNORMAL= _STOP_MASK), + REGMAP_IRQ_REG(S2MPG10_IRQ_PMETER_OVERF, 2, S2MPG10_IRQ_PMETER_OVERF_MASK= ), + + REGMAP_IRQ_REG(S2MPG10_IRQ_OCP_B1M, 3, S2MPG10_IRQ_OCP_B1M_MASK), + REGMAP_IRQ_REG(S2MPG10_IRQ_OCP_B2M, 3, S2MPG10_IRQ_OCP_B2M_MASK), + REGMAP_IRQ_REG(S2MPG10_IRQ_OCP_B3M, 3, S2MPG10_IRQ_OCP_B3M_MASK), + REGMAP_IRQ_REG(S2MPG10_IRQ_OCP_B4M, 3, S2MPG10_IRQ_OCP_B4M_MASK), + REGMAP_IRQ_REG(S2MPG10_IRQ_OCP_B5M, 3, S2MPG10_IRQ_OCP_B5M_MASK), + REGMAP_IRQ_REG(S2MPG10_IRQ_OCP_B6M, 3, S2MPG10_IRQ_OCP_B6M_MASK), + REGMAP_IRQ_REG(S2MPG10_IRQ_OCP_B7M, 3, S2MPG10_IRQ_OCP_B7M_MASK), + REGMAP_IRQ_REG(S2MPG10_IRQ_OCP_B8M, 3, S2MPG10_IRQ_OCP_B8M_MASK), + + REGMAP_IRQ_REG(S2MPG10_IRQ_OCP_B9M, 4, S2MPG10_IRQ_OCP_B9M_MASK), + REGMAP_IRQ_REG(S2MPG10_IRQ_OCP_B10M, 4, S2MPG10_IRQ_OCP_B10M_MASK), + REGMAP_IRQ_REG(S2MPG10_IRQ_WLWP_ACC, 4, S2MPG10_IRQ_WLWP_ACC_MASK), + REGMAP_IRQ_REG(S2MPG10_IRQ_SMPL_TIMEOUT, 4, S2MPG10_IRQ_SMPL_TIMEOUT_MASK= ), + REGMAP_IRQ_REG(S2MPG10_IRQ_WTSR_TIMEOUT, 4, S2MPG10_IRQ_WTSR_TIMEOUT_MASK= ), + REGMAP_IRQ_REG(S2MPG10_IRQ_SPD_SRP_PKT_RST, 4, S2MPG10_IRQ_SPD_SRP_PKT_RS= T_MASK), + + REGMAP_IRQ_REG(S2MPG10_IRQ_PWR_WARN_CH0, 5, S2MPG10_IRQ_PWR_WARN_CH0_MASK= ), + REGMAP_IRQ_REG(S2MPG10_IRQ_PWR_WARN_CH1, 5, S2MPG10_IRQ_PWR_WARN_CH1_MASK= ), + REGMAP_IRQ_REG(S2MPG10_IRQ_PWR_WARN_CH2, 5, S2MPG10_IRQ_PWR_WARN_CH2_MASK= ), + REGMAP_IRQ_REG(S2MPG10_IRQ_PWR_WARN_CH3, 5, S2MPG10_IRQ_PWR_WARN_CH3_MASK= ), + REGMAP_IRQ_REG(S2MPG10_IRQ_PWR_WARN_CH4, 5, S2MPG10_IRQ_PWR_WARN_CH4_MASK= ), + REGMAP_IRQ_REG(S2MPG10_IRQ_PWR_WARN_CH5, 5, S2MPG10_IRQ_PWR_WARN_CH5_MASK= ), + REGMAP_IRQ_REG(S2MPG10_IRQ_PWR_WARN_CH6, 5, S2MPG10_IRQ_PWR_WARN_CH6_MASK= ), + REGMAP_IRQ_REG(S2MPG10_IRQ_PWR_WARN_CH7, 5, S2MPG10_IRQ_PWR_WARN_CH7_MASK= ), +}; + static const struct regmap_irq s2mps11_irqs[] =3D { [S2MPS11_IRQ_PWRONF] =3D { .reg_offset =3D 0, @@ -320,6 +375,16 @@ static const struct regmap_irq s5m8767_irqs[] =3D { }, }; =20 +static const struct regmap_irq_chip s2mpg10_irq_chip =3D { + .name =3D "s2mpg10", + .irqs =3D s2mpg10_irqs, + .num_irqs =3D ARRAY_SIZE(s2mpg10_irqs), + .num_regs =3D 6, + .status_base =3D S2MPG10_PMIC_INT1, + .mask_base =3D S2MPG10_PMIC_INT1M, + /* all interrupt sources are read-to-clear */ +}; + static const struct regmap_irq_chip s2mps11_irq_chip =3D { .name =3D "s2mps11", .irqs =3D s2mps11_irqs, @@ -402,6 +467,9 @@ int sec_irq_init(struct sec_pmic_dev *sec_pmic) case S2MPA01: sec_irq_chip =3D &s2mps14_irq_chip; break; + case S2MPG10: + sec_irq_chip =3D &s2mpg10_irq_chip; + break; case S2MPS11X: sec_irq_chip =3D &s2mps11_irq_chip; break; diff --git a/include/linux/mfd/samsung/core.h b/include/linux/mfd/samsung/c= ore.h index 8a4e660854bbc955b812b4d61d4a52a0fc2f2899..c1102324172a9b6bd6072b5929a= 4866d6c9653fa 100644 --- a/include/linux/mfd/samsung/core.h +++ b/include/linux/mfd/samsung/core.h @@ -39,6 +39,7 @@ enum sec_device_type { S5M8767X, S2DOS05, S2MPA01, + S2MPG10, S2MPS11X, S2MPS13X, S2MPS14X, diff --git a/include/linux/mfd/samsung/irq.h b/include/linux/mfd/samsung/ir= q.h index 978f7af66f74842c4f8dd62c0f58a7a45aba7c34..b4805cbd949bd605004bd88cf36= 1109d1cbbc3bf 100644 --- a/include/linux/mfd/samsung/irq.h +++ b/include/linux/mfd/samsung/irq.h @@ -57,6 +57,109 @@ enum s2mpa01_irq { #define S2MPA01_IRQ_B24_TSD_MASK (1 << 4) #define S2MPA01_IRQ_B35_TSD_MASK (1 << 5) =20 +enum s2mpg10_irq { + /* PMIC */ + S2MPG10_IRQ_PWRONF, + S2MPG10_IRQ_PWRONR, + S2MPG10_IRQ_JIGONBF, + S2MPG10_IRQ_JIGONBR, + S2MPG10_IRQ_ACOKBF, + S2MPG10_IRQ_ACOKBR, + S2MPG10_IRQ_PWRON1S, + S2MPG10_IRQ_MRB, +#define S2MPG10_IRQ_PWRONF_MASK BIT(0) +#define S2MPG10_IRQ_PWRONR_MASK BIT(1) +#define S2MPG10_IRQ_JIGONBF_MASK BIT(2) +#define S2MPG10_IRQ_JIGONBR_MASK BIT(3) +#define S2MPG10_IRQ_ACOKBF_MASK BIT(4) +#define S2MPG10_IRQ_ACOKBR_MASK BIT(5) +#define S2MPG10_IRQ_PWRON1S_MASK BIT(6) +#define S2MPG10_IRQ_MRB_MASK BIT(7) + + S2MPG10_IRQ_RTC60S, + S2MPG10_IRQ_RTCA1, + S2MPG10_IRQ_RTCA0, + S2MPG10_IRQ_RTC1S, + S2MPG10_IRQ_WTSR_COLDRST, + S2MPG10_IRQ_WTSR, + S2MPG10_IRQ_WRST, + S2MPG10_IRQ_SMPL, +#define S2MPG10_IRQ_RTC60S_MASK BIT(0) +#define S2MPG10_IRQ_RTCA1_MASK BIT(1) +#define S2MPG10_IRQ_RTCA0_MASK BIT(2) +#define S2MPG10_IRQ_RTC1S_MASK BIT(3) +#define S2MPG10_IRQ_WTSR_COLDRST_MASK BIT(4) +#define S2MPG10_IRQ_WTSR_MASK BIT(5) +#define S2MPG10_IRQ_WRST_MASK BIT(6) +#define S2MPG10_IRQ_SMPL_MASK BIT(7) + + S2MPG10_IRQ_120C, + S2MPG10_IRQ_140C, + S2MPG10_IRQ_TSD, + S2MPG10_IRQ_PIF_TIMEOUT1, + S2MPG10_IRQ_PIF_TIMEOUT2, + S2MPG10_IRQ_SPD_PARITY_ERR, + S2MPG10_IRQ_SPD_ABNORMAL_STOP, + S2MPG10_IRQ_PMETER_OVERF, +#define S2MPG10_IRQ_INT120C_MASK BIT(0) +#define S2MPG10_IRQ_INT140C_MASK BIT(1) +#define S2MPG10_IRQ_TSD_MASK BIT(2) +#define S2MPG10_IRQ_PIF_TIMEOUT1_MASK BIT(3) +#define S2MPG10_IRQ_PIF_TIMEOUT2_MASK BIT(4) +#define S2MPG10_IRQ_SPD_PARITY_ERR_MASK BIT(5) +#define S2MPG10_IRQ_SPD_ABNORMAL_STOP_MASK BIT(6) +#define S2MPG10_IRQ_PMETER_OVERF_MASK BIT(7) + + S2MPG10_IRQ_OCP_B1M, + S2MPG10_IRQ_OCP_B2M, + S2MPG10_IRQ_OCP_B3M, + S2MPG10_IRQ_OCP_B4M, + S2MPG10_IRQ_OCP_B5M, + S2MPG10_IRQ_OCP_B6M, + S2MPG10_IRQ_OCP_B7M, + S2MPG10_IRQ_OCP_B8M, +#define S2MPG10_IRQ_OCP_B1M_MASK BIT(0) +#define S2MPG10_IRQ_OCP_B2M_MASK BIT(1) +#define S2MPG10_IRQ_OCP_B3M_MASK BIT(2) +#define S2MPG10_IRQ_OCP_B4M_MASK BIT(3) +#define S2MPG10_IRQ_OCP_B5M_MASK BIT(4) +#define S2MPG10_IRQ_OCP_B6M_MASK BIT(5) +#define S2MPG10_IRQ_OCP_B7M_MASK BIT(6) +#define S2MPG10_IRQ_OCP_B8M_MASK BIT(7) + + S2MPG10_IRQ_OCP_B9M, + S2MPG10_IRQ_OCP_B10M, + S2MPG10_IRQ_WLWP_ACC, + S2MPG10_IRQ_SMPL_TIMEOUT, + S2MPG10_IRQ_WTSR_TIMEOUT, + S2MPG10_IRQ_SPD_SRP_PKT_RST, +#define S2MPG10_IRQ_OCP_B9M_MASK BIT(0) +#define S2MPG10_IRQ_OCP_B10M_MASK BIT(1) +#define S2MPG10_IRQ_WLWP_ACC_MASK BIT(2) +#define S2MPG10_IRQ_SMPL_TIMEOUT_MASK BIT(5) +#define S2MPG10_IRQ_WTSR_TIMEOUT_MASK BIT(6) +#define S2MPG10_IRQ_SPD_SRP_PKT_RST_MASK BIT(7) + + S2MPG10_IRQ_PWR_WARN_CH0, + S2MPG10_IRQ_PWR_WARN_CH1, + S2MPG10_IRQ_PWR_WARN_CH2, + S2MPG10_IRQ_PWR_WARN_CH3, + S2MPG10_IRQ_PWR_WARN_CH4, + S2MPG10_IRQ_PWR_WARN_CH5, + S2MPG10_IRQ_PWR_WARN_CH6, + S2MPG10_IRQ_PWR_WARN_CH7, +#define S2MPG10_IRQ_PWR_WARN_CH0_MASK BIT(0) +#define S2MPG10_IRQ_PWR_WARN_CH1_MASK BIT(1) +#define S2MPG10_IRQ_PWR_WARN_CH2_MASK BIT(2) +#define S2MPG10_IRQ_PWR_WARN_CH3_MASK BIT(3) +#define S2MPG10_IRQ_PWR_WARN_CH4_MASK BIT(4) +#define S2MPG10_IRQ_PWR_WARN_CH5_MASK BIT(5) +#define S2MPG10_IRQ_PWR_WARN_CH6_MASK BIT(6) +#define S2MPG10_IRQ_PWR_WARN_CH7_MASK BIT(7) + + S2MPG10_IRQ_NR, +}; + enum s2mps11_irq { S2MPS11_IRQ_PWRONF, S2MPS11_IRQ_PWRONR, diff --git a/include/linux/mfd/samsung/s2mpg10.h b/include/linux/mfd/samsun= g/s2mpg10.h new file mode 100644 index 0000000000000000000000000000000000000000..471def422d00c2592e6875b1eff= 00a4c1be7b09f --- /dev/null +++ b/include/linux/mfd/samsung/s2mpg10.h @@ -0,0 +1,310 @@ +/* SPDX-License-Identifier: GPL-2.0+ */ +/* + * Copyright 2015 Samsung Electronics + * Copyright 2020 Google Inc + * Copyright 2025 Linaro Ltd. + */ + +#ifndef __LINUX_MFD_S2MPG10_H +#define __LINUX_MFD_S2MPG10_H + +/* Common registers (type 0x000) */ +enum s2mpg10_common_reg { + S2MPG10_COMMON_CHIPID, + S2MPG10_COMMON_INT, + S2MPG10_COMMON_INT_MASK, +#define S2MPG10_COMMON_INT_SRC_MASK GENMASK(7, 0) +#define S2MPG10_COMMON_INT_SRC_PMIC BIT(0) +}; + +/* PMIC registers (type 0x100) */ +enum s2mpg10_pmic_reg { + S2MPG10_PMIC_INT1, + S2MPG10_PMIC_INT2, + S2MPG10_PMIC_INT3, + S2MPG10_PMIC_INT4, + S2MPG10_PMIC_INT5, + S2MPG10_PMIC_INT6, + S2MPG10_PMIC_INT1M, + S2MPG10_PMIC_INT2M, + S2MPG10_PMIC_INT3M, + S2MPG10_PMIC_INT4M, + S2MPG10_PMIC_INT5M, + S2MPG10_PMIC_INT6M, + S2MPG10_PMIC_STATUS1, + S2MPG10_PMIC_STATUS2, + S2MPG10_PMIC_PWRONSRC, + S2MPG10_PMIC_OFFSRC, + S2MPG10_PMIC_BU_CHG, + S2MPG10_PMIC_RTCBUF, + S2MPG10_PMIC_COMMON_CTRL1, + S2MPG10_PMIC_COMMON_CTRL2, + S2MPG10_PMIC_COMMON_CTRL3, + S2MPG10_PMIC_COMMON_CTRL4, + S2MPG10_PMIC_SMPL_WARN_CTRL, + S2MPG10_PMIC_MIMICKING_CTRL, + S2MPG10_PMIC_B1M_CTRL, + S2MPG10_PMIC_B1M_OUT1, + S2MPG10_PMIC_B1M_OUT2, + S2MPG10_PMIC_B2M_CTRL, + S2MPG10_PMIC_B2M_OUT1, + S2MPG10_PMIC_B2M_OUT2, + S2MPG10_PMIC_B3M_CTRL, + S2MPG10_PMIC_B3M_OUT1, + S2MPG10_PMIC_B3M_OUT2, + S2MPG10_PMIC_B4M_CTRL, + S2MPG10_PMIC_B4M_OUT1, + S2MPG10_PMIC_B4M_OUT2, + S2MPG10_PMIC_B5M_CTRL, + S2MPG10_PMIC_B5M_OUT1, + S2MPG10_PMIC_B5M_OUT2, + S2MPG10_PMIC_B6M_CTRL, + S2MPG10_PMIC_B6M_OUT1, + S2MPG10_PMIC_B6M_OUT2, + S2MPG10_PMIC_B7M_CTRL, + S2MPG10_PMIC_B7M_OUT1, + S2MPG10_PMIC_B7M_OUT2, + S2MPG10_PMIC_B8M_CTRL, + S2MPG10_PMIC_B8M_OUT1, + S2MPG10_PMIC_B8M_OUT2, + S2MPG10_PMIC_B9M_CTRL, + S2MPG10_PMIC_B9M_OUT1, + S2MPG10_PMIC_B9M_OUT2, + S2MPG10_PMIC_B10M_CTRL, + S2MPG10_PMIC_B10M_OUT1, + S2MPG10_PMIC_B10M_OUT2, + S2MPG10_PMIC_L1M_CTRL, + S2MPG10_PMIC_L2M_CTRL, + S2MPG10_PMIC_L3M_CTRL, + S2MPG10_PMIC_L4M_CTRL, + S2MPG10_PMIC_L5M_CTRL, + S2MPG10_PMIC_L6M_CTRL, + S2MPG10_PMIC_L7M_CTRL, + S2MPG10_PMIC_L8M_CTRL, + S2MPG10_PMIC_L9M_CTRL, + S2MPG10_PMIC_L10M_CTRL, + S2MPG10_PMIC_L11M_CTRL1, + S2MPG10_PMIC_L11M_CTRL2, + S2MPG10_PMIC_L12M_CTRL1, + S2MPG10_PMIC_L12M_CTRL2, + S2MPG10_PMIC_L13M_CTRL1, + S2MPG10_PMIC_L13M_CTRL2, + S2MPG10_PMIC_L14M_CTRL, + S2MPG10_PMIC_L15M_CTRL1, + S2MPG10_PMIC_L15M_CTRL2, + S2MPG10_PMIC_L16M_CTRL, + S2MPG10_PMIC_L17M_CTRL, + S2MPG10_PMIC_L18M_CTRL, + S2MPG10_PMIC_L19M_CTRL, + S2MPG10_PMIC_L20M_CTRL, + S2MPG10_PMIC_L21M_CTRL, + S2MPG10_PMIC_L22M_CTRL, + S2MPG10_PMIC_L23M_CTRL, + S2MPG10_PMIC_L24M_CTRL, + S2MPG10_PMIC_L25M_CTRL, + S2MPG10_PMIC_L26M_CTRL, + S2MPG10_PMIC_L27M_CTRL, + S2MPG10_PMIC_L28M_CTRL, + S2MPG10_PMIC_L29M_CTRL, + S2MPG10_PMIC_L30M_CTRL, + S2MPG10_PMIC_L31M_CTRL, + S2MPG10_PMIC_LDO_CTRL1, + S2MPG10_PMIC_LDO_CTRL2, + S2MPG10_PMIC_LDO_DSCH1, + S2MPG10_PMIC_LDO_DSCH2, + S2MPG10_PMIC_LDO_DSCH3, + S2MPG10_PMIC_LDO_DSCH4, + S2MPG10_PMIC_LDO_BUCK7M_HLIMIT, + S2MPG10_PMIC_LDO_BUCK7M_LLIMIT, + S2MPG10_PMIC_LDO_LDO21M_HLIMIT, + S2MPG10_PMIC_LDO_LDO21M_LLIMIT, + S2MPG10_PMIC_LDO_LDO11M_HLIMIT, + S2MPG10_PMIC_DVS_RAMP1, + S2MPG10_PMIC_DVS_RAMP2, + S2MPG10_PMIC_DVS_RAMP3, + S2MPG10_PMIC_DVS_RAMP4, + S2MPG10_PMIC_DVS_RAMP5, + S2MPG10_PMIC_DVS_RAMP6, + S2MPG10_PMIC_DCTRLSEL7 =3D 0xc6, + S2MPG10_PMIC_GPIO_CTRL1, + S2MPG10_PMIC_GPIO_CTRL2, + S2MPG10_PMIC_GPIO_CTRL3, + S2MPG10_PMIC_GPIO_CTRL4, + S2MPG10_PMIC_GPIO_CTRL5, + S2MPG10_PMIC_GPIO_CTRL6, + S2MPG10_PMIC_GPIO_CTRL7, + S2MPG10_PMIC_B2M_OCP_WARN, + S2MPG10_PMIC_B3M_OCP_WARN =3D 0xd2, + S2MPG10_PMIC_B10M_OCP_WARN =3D 0xd6, + S2MPG10_PMIC_B2M_SOFT_OCP_WARN =3D 0xda, + S2MPG10_PMIC_B3M_SOFT_OCP_WARN =3D 0xde, + S2MPG10_PMIC_B10M_SOFT_OCP_WARN =3D 0xe2, + S2MPG10_PMIC_BUCK_OCP_CTRL1 =3D 0xea, + S2MPG10_PMIC_BUCK_OCP_CTRL2, + S2MPG10_PMIC_BUCK_OCP_CTRL3, + S2MPG10_PMIC_BUCK_OCP_CTRL4, + S2MPG10_PMIC_BUCK_OCP_CTRL5, +}; + +/* Meter registers (type 0xa00) */ +enum s2mpg10_meter_reg { + S2MPG10_METER_CTRL1, + S2MPG10_METER_CTRL2, + S2MPG10_METER_CTRL3, + S2MPG10_METER_CTRL4, + S2MPG10_METER_BUCKEN1, + S2MPG10_METER_BUCKEN2, + S2MPG10_METER_MUXSEL0, + S2MPG10_METER_MUXSEL1, + S2MPG10_METER_MUXSEL2, + S2MPG10_METER_MUXSEL3, + S2MPG10_METER_MUXSEL4, + S2MPG10_METER_MUXSEL5, + S2MPG10_METER_MUXSEL6, + S2MPG10_METER_MUXSEL7, + S2MPG10_METER_LPF_C0_0, + S2MPG10_METER_LPF_C0_1, + S2MPG10_METER_LPF_C0_2, + S2MPG10_METER_LPF_C0_3, + S2MPG10_METER_LPF_C0_4, + S2MPG10_METER_LPF_C0_5, + S2MPG10_METER_LPF_C0_6, + S2MPG10_METER_LPF_C0_7, + S2MPG10_METER_PWR_WARN0, + S2MPG10_METER_PWR_WARN1, + S2MPG10_METER_PWR_WARN2, + S2MPG10_METER_PWR_WARN3, + S2MPG10_METER_PWR_WARN4, + S2MPG10_METER_PWR_WARN5, + S2MPG10_METER_PWR_WARN6, + S2MPG10_METER_PWR_WARN7, + S2MPG10_METER_PWR_HYS1, + S2MPG10_METER_PWR_HYS2, + S2MPG10_METER_PWR_HYS3, + S2MPG10_METER_PWR_HYS4, + S2MPG10_METER_ACC_DATA_CH0_1 =3D 0x40, + S2MPG10_METER_ACC_DATA_CH0_2, + S2MPG10_METER_ACC_DATA_CH0_3, + S2MPG10_METER_ACC_DATA_CH0_4, + S2MPG10_METER_ACC_DATA_CH0_5, + S2MPG10_METER_ACC_DATA_CH0_6, + S2MPG10_METER_ACC_DATA_CH1_1, + S2MPG10_METER_ACC_DATA_CH1_2, + S2MPG10_METER_ACC_DATA_CH1_3, + S2MPG10_METER_ACC_DATA_CH1_4, + S2MPG10_METER_ACC_DATA_CH1_5, + S2MPG10_METER_ACC_DATA_CH1_6, + S2MPG10_METER_ACC_DATA_CH2_1, + S2MPG10_METER_ACC_DATA_CH2_2, + S2MPG10_METER_ACC_DATA_CH2_3, + S2MPG10_METER_ACC_DATA_CH2_4, + S2MPG10_METER_ACC_DATA_CH2_5, + S2MPG10_METER_ACC_DATA_CH2_6, + S2MPG10_METER_ACC_DATA_CH3_1, + S2MPG10_METER_ACC_DATA_CH3_2, + S2MPG10_METER_ACC_DATA_CH3_3, + S2MPG10_METER_ACC_DATA_CH3_4, + S2MPG10_METER_ACC_DATA_CH3_5, + S2MPG10_METER_ACC_DATA_CH3_6, + S2MPG10_METER_ACC_DATA_CH4_1, + S2MPG10_METER_ACC_DATA_CH4_2, + S2MPG10_METER_ACC_DATA_CH4_3, + S2MPG10_METER_ACC_DATA_CH4_4, + S2MPG10_METER_ACC_DATA_CH4_5, + S2MPG10_METER_ACC_DATA_CH4_6, + S2MPG10_METER_ACC_DATA_CH5_1, + S2MPG10_METER_ACC_DATA_CH5_2, + S2MPG10_METER_ACC_DATA_CH5_3, + S2MPG10_METER_ACC_DATA_CH5_4, + S2MPG10_METER_ACC_DATA_CH5_5, + S2MPG10_METER_ACC_DATA_CH5_6, + S2MPG10_METER_ACC_DATA_CH6_1, + S2MPG10_METER_ACC_DATA_CH6_2, + S2MPG10_METER_ACC_DATA_CH6_3, + S2MPG10_METER_ACC_DATA_CH6_4, + S2MPG10_METER_ACC_DATA_CH6_5, + S2MPG10_METER_ACC_DATA_CH6_6, + S2MPG10_METER_ACC_DATA_CH7_1, + S2MPG10_METER_ACC_DATA_CH7_2, + S2MPG10_METER_ACC_DATA_CH7_3, + S2MPG10_METER_ACC_DATA_CH7_4, + S2MPG10_METER_ACC_DATA_CH7_5, + S2MPG10_METER_ACC_DATA_CH7_6, + S2MPG10_METER_ACC_COUNT_1, + S2MPG10_METER_ACC_COUNT_2, + S2MPG10_METER_ACC_COUNT_3, + S2MPG10_METER_LPF_DATA_CH0_1, + S2MPG10_METER_LPF_DATA_CH0_2, + S2MPG10_METER_LPF_DATA_CH0_3, + S2MPG10_METER_LPF_DATA_CH1_1, + S2MPG10_METER_LPF_DATA_CH1_2, + S2MPG10_METER_LPF_DATA_CH1_3, + S2MPG10_METER_LPF_DATA_CH2_1, + S2MPG10_METER_LPF_DATA_CH2_2, + S2MPG10_METER_LPF_DATA_CH2_3, + S2MPG10_METER_LPF_DATA_CH3_1, + S2MPG10_METER_LPF_DATA_CH3_2, + S2MPG10_METER_LPF_DATA_CH3_3, + S2MPG10_METER_LPF_DATA_CH4_1, + S2MPG10_METER_LPF_DATA_CH4_2, + S2MPG10_METER_LPF_DATA_CH4_3, + S2MPG10_METER_LPF_DATA_CH5_1, + S2MPG10_METER_LPF_DATA_CH5_2, + S2MPG10_METER_LPF_DATA_CH5_3, + S2MPG10_METER_LPF_DATA_CH6_1, + S2MPG10_METER_LPF_DATA_CH6_2, + S2MPG10_METER_LPF_DATA_CH6_3, + S2MPG10_METER_LPF_DATA_CH7_1, + S2MPG10_METER_LPF_DATA_CH7_2, + S2MPG10_METER_LPF_DATA_CH7_3, + S2MPG10_METER_DSM_TRIM_OFFSET =3D 0xee, + S2MPG10_METER_BUCK_METER_TRIM3 =3D 0xf1, +}; + +/* S2MPG10 regulator IDs */ +enum s2mpg10_regulators { + S2MPG10_LDO1, + S2MPG10_LDO2, + S2MPG10_LDO3, + S2MPG10_LDO4, + S2MPG10_LDO5, + S2MPG10_LDO6, + S2MPG10_LDO7, + S2MPG10_LDO8, + S2MPG10_LDO9, + S2MPG10_LDO10, + S2MPG10_LDO11, + S2MPG10_LDO12, + S2MPG10_LDO13, + S2MPG10_LDO14, + S2MPG10_LDO15, + S2MPG10_LDO16, + S2MPG10_LDO17, + S2MPG10_LDO18, + S2MPG10_LDO19, + S2MPG10_LDO20, + S2MPG10_LDO21, + S2MPG10_LDO22, + S2MPG10_LDO23, + S2MPG10_LDO24, + S2MPG10_LDO25, + S2MPG10_LDO26, + S2MPG10_LDO27, + S2MPG10_LDO28, + S2MPG10_LDO29, + S2MPG10_LDO30, + S2MPG10_LDO31, + S2MPG10_BUCK1, + S2MPG10_BUCK2, + S2MPG10_BUCK3, + S2MPG10_BUCK4, + S2MPG10_BUCK5, + S2MPG10_BUCK6, + S2MPG10_BUCK7, + S2MPG10_BUCK8, + S2MPG10_BUCK9, + S2MPG10_BUCK10, + S2MPG10_REGULATOR_MAX, +}; + +#endif /* __LINUX_MFD_S2MPG10_H */ --=20 2.49.0.395.g12beb8f557-goog From nobody Thu Dec 18 22:20:07 2025 Received: from mail-ed1-f51.google.com (mail-ed1-f51.google.com [209.85.208.51]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 83E991C860E for ; Sun, 23 Mar 2025 22:39:33 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.208.51 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1742769578; cv=none; b=B/ERxmU8ADBcXmwEA6IYmtqwCnl76FbHLONhd1ksbsSjvm/nXIKJdKR9FDysQHPgLfyjhQKotr+gzgo+ePY8fGvtAcg19bkh5+qys9MYnEbw9QpinEyaWUelwYMEq+9fL8I8wO7CNC1nrUJCUt11LYrhK66rzPKqx5NidsZnVCQ= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1742769578; c=relaxed/simple; bh=H8JdpLkt9gjn8rcrkSJLgzbur0dmxI9LF5La3T8/4+0=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=VHFpDLmB2zmlTEfqW4pQFubbvbYmPUfkhDes7sN9iiJ6ox672ghruQ9R1dbwO+6hOynZU3tpSvaZBAHuDMzbfa6hwdiXFDHDPZ6IBFIGDsB4B7e8FRMcy3tGgD8kyCeHndvU6hQxnM59wYCxJVVSH1s0c+O+797SEmSMLNTJ9Oc= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=EfN5de3p; arc=none smtp.client-ip=209.85.208.51 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="EfN5de3p" Received: by mail-ed1-f51.google.com with SMTP id 4fb4d7f45d1cf-5e6167d0536so7231977a12.1 for ; Sun, 23 Mar 2025 15:39:33 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1742769571; x=1743374371; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=i5FeheMvzJmbwWW+zZr6R44NUMWEXy77OJnz7z8P8Mo=; b=EfN5de3pUHEWdjCzks+RAYj0koIZpp0Sb/fzfpalHCT8dWNDDtt6pS0ou5cHtJFZ/T +K3NzuugxktQnf9qQnGplv/1Zd35mMcUGDzrBSz0F10sPsviteJyh4rH2dHR76FlljsW 1juhbKbIHfLgji6PP2VBrW7vap8/ELoR1+50ukGt8ZcsV66d/rio867pnuO8h5g5glCC JaysGBUUQJDbWaQFC5FvmsYVY6Z8nFIb9b1E1AkWnTZG+aJCGmishTvtAyyXzpKA9rbF ynAPfighPi0bhe58jcdSeXJkQCuO9zWXMXGWMtWOaUGTVaodHMoIKumWjNG+sOwVKbBZ GjSg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1742769571; x=1743374371; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=i5FeheMvzJmbwWW+zZr6R44NUMWEXy77OJnz7z8P8Mo=; b=kGG5JNXwXI/AnKtXdZQQBm1quzyKdaBbib4fIAj4rCoBwDr8eXXF3Y71YQrTyccbhI E5BcqRKYvhpASntBSgKxrFbLuoZG+dWEQAWkNP7eavZM95Z20TESCEJd4X8q+Wd5WMv7 Ri6ZflDbe13o+iIyS/lZBbQunpEGPwq+DckrneL8AZRUNpiB5ejs/WSqCVlvmBOjynuH cq87srtVuemqsLFObIawSoALcVkE0IB3yQ/HKRH/sOqCnKp/a3Vgk6Q9pYeTWqEN8F0D ReH+k3l3Ma7zD88Rzir7nk5HtPoStM6agDgr6/K94WX9r6EYEXchbvNPUd7jnYM8a4ac kr6Q== X-Forwarded-Encrypted: i=1; AJvYcCUudInMusbT4FkwgAJf1ySLq829XOr2Gc7yf4SmLlSRGYO638HXIQS1BOC/EFY8XkG4OSDS81MgxF6Gl48=@vger.kernel.org X-Gm-Message-State: AOJu0Yy37AkEBuL0g/d0zQYZlsFVEYPCGQwTsLcy7Ytx0vCJjeUmy5ZU pev6AIwFF0JlL0uoFiTyoRsrrXNnu6VehZEJrSq8s1NSc9kAboP/EzktvUr7rG0= X-Gm-Gg: ASbGncvaZTq0yasbUq3cFLVBtizMiHMfXvtK16v4dmdqeO/eBw1CBwEgXHgK3t0fXBG EzYDfJdDBIRIsWmr23hGttkVRWmU7CFHgNAXqmnnUHHERpo/izOotyAIvte/XPMTrGZQmU7JxOi teyyNdHJLZ5cnopnYRFB7lVnYO5KTdeTFb9zrMEqlvL4rCPfmqTOjb33DyMxGJFtcdXZMsUgoxo b7rdxxco/SdbZvOkCDL6wDucaGeWGkAzdhNWlB5tUwswSFUW4LOZO4PQpAXs7mtQ8eksFe7z9BE M21KnPc/omNPYoiOLYoOCJGorMHZ02KL4ajSSuOxXFhhWrmvmMeAf5I//BZS/WEVl3lILgFC/Hy HaHyEyDsMqOVFk7fHjg+6MqQv3HW1 X-Google-Smtp-Source: AGHT+IGUlU/bQ4EEwEZ8SvxfGdwz6JP0ixr4oFBkCNhTZdri22pju1M/NgGRE9XtZE8yWlr6k3maUQ== X-Received: by 2002:a17:907:3d88:b0:ac3:8d24:a7e with SMTP id a640c23a62f3a-ac3f22b476amr1025053966b.26.1742769571302; Sun, 23 Mar 2025 15:39:31 -0700 (PDT) Received: from puffmais.c.googlers.com (8.239.204.35.bc.googleusercontent.com. [35.204.239.8]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-ac3ef86e44dsm559686666b.31.2025.03.23.15.39.30 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 23 Mar 2025 15:39:30 -0700 (PDT) From: =?utf-8?q?Andr=C3=A9_Draszik?= Date: Sun, 23 Mar 2025 22:39:29 +0000 Subject: [PATCH 13/34] mfd: sec: merge separate core and irq modules 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: <20250323-s2mpg10-v1-13-d08943702707@linaro.org> References: <20250323-s2mpg10-v1-0-d08943702707@linaro.org> In-Reply-To: <20250323-s2mpg10-v1-0-d08943702707@linaro.org> To: Krzysztof Kozlowski , Lee Jones , Rob Herring , Conor Dooley , Sylwester Nawrocki , Chanwoo Choi , Alim Akhtar , Michael Turquette , Stephen Boyd , Russell King , Catalin Marinas , Will Deacon , Alexandre Belloni Cc: Peter Griffin , Tudor Ambarus , Will McVicker , kernel-team@android.com, linux-kernel@vger.kernel.org, linux-samsung-soc@vger.kernel.org, devicetree@vger.kernel.org, linux-clk@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-rtc@vger.kernel.org, =?utf-8?q?Andr=C3=A9_Draszik?= X-Mailer: b4 0.14.2 There is no reason to have these two kernel modules separate. Having them merged into one kernel module also slightly reduces memory consumption and module load times a little. mapped size (lsmod): before: after: sec_core 20480 sec_core 24576 sec_irq 16384 ---------------- total 36864 Section sizes (size -A): before: after: sec_core 6780 sec_core 13239 sec_irq 8046 ---------------- Total 14826 Signed-off-by: Andr=C3=A9 Draszik Reviewed-by: Krzysztof Kozlowski --- Checkpatch suggests to update MAINTAINERS, but the new file is covered already due to using a wildcard. --- drivers/mfd/Makefile | 3 ++- drivers/mfd/{sec-core.c =3D> sec-common.c} | 2 ++ drivers/mfd/sec-irq.c | 8 -------- 3 files changed, 4 insertions(+), 9 deletions(-) diff --git a/drivers/mfd/Makefile b/drivers/mfd/Makefile index 8a8c678134a9721c7f78e432ddd0df33b2b0de69..67fac46c8eeb9c7b4429e8a496a= 1d7d40d2b7b31 100644 --- a/drivers/mfd/Makefile +++ b/drivers/mfd/Makefile @@ -232,7 +232,8 @@ obj-$(CONFIG_MFD_RK8XX) +=3D rk8xx-core.o obj-$(CONFIG_MFD_RK8XX_I2C) +=3D rk8xx-i2c.o obj-$(CONFIG_MFD_RK8XX_SPI) +=3D rk8xx-spi.o obj-$(CONFIG_MFD_RN5T618) +=3D rn5t618.o -obj-$(CONFIG_MFD_SEC_CORE) +=3D sec-core.o sec-irq.o +sec-core-objs :=3D sec-common.o sec-irq.o +obj-$(CONFIG_MFD_SEC_CORE) +=3D sec-core.o obj-$(CONFIG_MFD_SEC_ACPM) +=3D sec-acpm.o obj-$(CONFIG_MFD_SEC_I2C) +=3D sec-i2c.o obj-$(CONFIG_MFD_SYSCON) +=3D syscon.o diff --git a/drivers/mfd/sec-core.c b/drivers/mfd/sec-common.c similarity index 98% rename from drivers/mfd/sec-core.c rename to drivers/mfd/sec-common.c index 27f5036ffa1009304147755c91d00be333dd206a..fcf7668efd3215ad70d81916ede= 249ed5f9d45ae 100644 --- a/drivers/mfd/sec-core.c +++ b/drivers/mfd/sec-common.c @@ -290,6 +290,8 @@ DEFINE_SIMPLE_DEV_PM_OPS(sec_pmic_pm_ops, sec_pmic_susp= end, sec_pmic_resume); EXPORT_SYMBOL_GPL(sec_pmic_pm_ops); =20 MODULE_AUTHOR("Andr=C3=A9 Draszik "); +MODULE_AUTHOR("Chanwoo Choi "); +MODULE_AUTHOR("Krzysztof Kozlowski "); MODULE_AUTHOR("Sangbeom Kim "); MODULE_DESCRIPTION("Core driver for the Samsung S5M"); MODULE_LICENSE("GPL"); diff --git a/drivers/mfd/sec-irq.c b/drivers/mfd/sec-irq.c index bf86281401ac6ff05c90c2d71c84744709ed79cb..4afac3aa0a582994bf04c41768c= 1c788c54ee2e9 100644 --- a/drivers/mfd/sec-irq.c +++ b/drivers/mfd/sec-irq.c @@ -6,7 +6,6 @@ #include #include #include -#include #include #include #include @@ -510,10 +509,3 @@ int sec_irq_init(struct sec_pmic_dev *sec_pmic) =20 return 0; } -EXPORT_SYMBOL_GPL(sec_irq_init); - -MODULE_AUTHOR("Sangbeom Kim "); -MODULE_AUTHOR("Chanwoo Choi "); -MODULE_AUTHOR("Krzysztof Kozlowski "); -MODULE_DESCRIPTION("Interrupt support for the S5M MFD"); -MODULE_LICENSE("GPL"); --=20 2.49.0.395.g12beb8f557-goog From nobody Thu Dec 18 22:20:07 2025 Received: from mail-ej1-f51.google.com (mail-ej1-f51.google.com [209.85.218.51]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id C085D1D514A for ; Sun, 23 Mar 2025 22:39:34 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.51 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1742769578; cv=none; b=XXw6KtCANEYgp6oPjqnYyOx3kEVqJnMNLGqnANL9cuI+5D2llf3y9jq5fvLMiPAqQcPNucppVYw4roxCS2TTwMaadS9HLOocYE/J8NyOO9K1tNCUHrRvryEGdn3KNDq4wn3c7rybEc4gZbzoSeyDmogSeIcIsufA5iMa8u/ZjRU= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1742769578; c=relaxed/simple; bh=mYouhjAoSbLSn92zFo7mSaGFj9cCPHa2OyFJJEwMdw8=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=leM3jTlvNCAm/PqVZdSvum8D97VYYSdYb+jHykRw93o+P0ADvJpPeeD5WhruR/9Rx2/i19zdIy/9b6ia8n86ut5YMBJNiVVcsLqd00TWEmXn+lMja9WOH13zIkQ/OtI3J6EE/dCDAY+eknz8twg0c+/S7UHQ/U5TvSRyhB/zFAk= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=QcQaQ/4W; arc=none smtp.client-ip=209.85.218.51 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="QcQaQ/4W" Received: by mail-ej1-f51.google.com with SMTP id a640c23a62f3a-ac3eb3fdd2eso560750266b.0 for ; Sun, 23 Mar 2025 15:39:34 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1742769572; x=1743374372; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=vmds4rrDLrfKJmwR2Z+ZSZKx1qRT0gZntXalkJpQH7Y=; b=QcQaQ/4WkIkk+hlhTXnQ2KRnW3VAX2TNN6AhASfAlkd9xfsucnkhv9KDGQ5Cp2obuC R88XvwFmR2f+zbcMhEgSngCGoWb9ruRURZT7BYQjfxRvU34FrGP3cyXvQEPbMYBp74xh +U+OaLjjzBiYT2br160bRnAcczHdwQCDTzIJqLozpiOXEmjPB00zaL1N1AVoEJTeZ99Y Eig4wBR9U7BLcSkNt0hOSqXH04CtIJNHMUBIpsjR+AUcGB4dDdvlYq+K8vRAbGhL+nm7 VSz1PhJFLEPaWCDQLwG0vy0Q7Zdsa6XmkmhZtWxV6RBqZEZVncX1iaubDm757rEepJeV WRkw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1742769572; x=1743374372; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=vmds4rrDLrfKJmwR2Z+ZSZKx1qRT0gZntXalkJpQH7Y=; b=QjeWuWZH5yw6gbipQ+l+Hlp/IPKhDLxlBjfjWJ3GmJ7uKbllCRwhgdIjco6yiiYm2V xjwaeXqGvBH8e5g9aXUB0z4M7XvGkaylqwDoxkFnsRKH+2iDXR0E1jvBmT/CPAKvA0Z9 V0IZE+scfCmQezGUkT6vcdYnGRjlA++O+8eksRf56tQKwAbq7MTj41SLKj9cuxlqhywF MQfPzynniWiVNo61h4vD0tzz8f2x0+fgx3HUdYo9RQlvZS7KqW5pl6wvA51JGNNjlgt6 xEoQSabnqw5W7KWSeT6JbyQiZR93yn9Nac0/kU1uoNpUSS5UdLz7jmPcXFbLYq3uyDeU DdHA== X-Forwarded-Encrypted: i=1; AJvYcCU/W8Pk2gIy0xGfk5bLiwd+PpV+s+xS8qZQ7eOfCMEDMlCgaZ7HoIkdwjhQqqVwQczo7fl4AmPs0XYVR30=@vger.kernel.org X-Gm-Message-State: AOJu0Yz3RF4cHZd+Zx0AccHn1tiW2rB/7jg7XUrAOfySdbs6UWv4+2/F 0Z/Qt4pFBX62XeFJjkfDxfWGJ4OLi4/icvErBj/pXPAAc/9KCp8BZTxm5fgDgyE= X-Gm-Gg: ASbGncvo1TKS0KpMmbyOtg0FfDH7CF1Gmuj0YVPnJdmdDzHSpzKbucD8YckqKX6xpoL /phwQFd9s9jBIo+G1hFFjfCWbDB7x7KnYXRw7WFh/g3xPXkKHQ1X/x3vuyW4hgd2ze9D2IQdQY2 XH6xRpwJNQ2rysLz+ofvz6NhhVRWaW9x/acTdO3cBpua+UC9ZwR77vlMkSkJzZKN48p7sKP12UB BHOxX0OkOe2wKoYsHIBvNwvNXvDQp4dtfuk0ApBR/V2iryVfHGOUpRGcN9oroCejklQ7Bs8pudF L1JERroNjHY9z4R2ZBN3VcyZ5XfiWZGvTLnoMljHCJ+ZPMFd7cqUhBiPEJ86z/QqviMz07uKYtX YE2wnQ6qpzoQR7Oi7RZrA48fIIURZ X-Google-Smtp-Source: AGHT+IEN5dOxnNTTla9a5uamRe8PZKZsb3egHapeEJMQ/eCTIADM/0J2Xb8LBoxvBHWdtuRNYkVBpg== X-Received: by 2002:a17:907:bd88:b0:ac4:2ae:c970 with SMTP id a640c23a62f3a-ac402aec9f2mr753664066b.21.1742769571904; Sun, 23 Mar 2025 15:39:31 -0700 (PDT) Received: from puffmais.c.googlers.com (8.239.204.35.bc.googleusercontent.com. [35.204.239.8]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-ac3ef86e44dsm559686666b.31.2025.03.23.15.39.31 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 23 Mar 2025 15:39:31 -0700 (PDT) From: =?utf-8?q?Andr=C3=A9_Draszik?= Date: Sun, 23 Mar 2025 22:39:30 +0000 Subject: [PATCH 14/34] mfd: sec: sort struct of_device_id entries and the device type switch 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: <20250323-s2mpg10-v1-14-d08943702707@linaro.org> References: <20250323-s2mpg10-v1-0-d08943702707@linaro.org> In-Reply-To: <20250323-s2mpg10-v1-0-d08943702707@linaro.org> To: Krzysztof Kozlowski , Lee Jones , Rob Herring , Conor Dooley , Sylwester Nawrocki , Chanwoo Choi , Alim Akhtar , Michael Turquette , Stephen Boyd , Russell King , Catalin Marinas , Will Deacon , Alexandre Belloni Cc: Peter Griffin , Tudor Ambarus , Will McVicker , kernel-team@android.com, linux-kernel@vger.kernel.org, linux-samsung-soc@vger.kernel.org, devicetree@vger.kernel.org, linux-clk@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-rtc@vger.kernel.org, =?utf-8?q?Andr=C3=A9_Draszik?= X-Mailer: b4 0.14.2 Sort struct of_device_id entries and the device type switch in _probe() alphabetically, which makes it easier to find the right place where to insert new entries in the future. Signed-off-by: Andr=C3=A9 Draszik Reviewed-by: Krzysztof Kozlowski --- drivers/mfd/sec-i2c.c | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/drivers/mfd/sec-i2c.c b/drivers/mfd/sec-i2c.c index 803a46e657a5a1a639014d442941c0cdc60556a5..ba0efb30877bf668fed7476a5e2= 47e0dd4095806 100644 --- a/drivers/mfd/sec-i2c.c +++ b/drivers/mfd/sec-i2c.c @@ -174,12 +174,12 @@ static int sec_pmic_i2c_probe(struct i2c_client *clie= nt) case S2MPS15X: regmap =3D &s2mps15_regmap_config; break; - case S5M8767X: - regmap =3D &s5m8767_regmap_config; - break; case S2MPU02: regmap =3D &s2mpu02_regmap_config; break; + case S5M8767X: + regmap =3D &s5m8767_regmap_config; + break; default: regmap =3D &sec_regmap_config; break; @@ -204,11 +204,11 @@ static void sec_pmic_i2c_shutdown(struct i2c_client *= i2c) =20 static const struct of_device_id sec_pmic_i2c_of_match[] =3D { { - .compatible =3D "samsung,s5m8767-pmic", - .data =3D (void *)S5M8767X, - }, { .compatible =3D "samsung,s2dos05", .data =3D (void *)S2DOS05, + }, { + .compatible =3D "samsung,s2mpa01-pmic", + .data =3D (void *)S2MPA01, }, { .compatible =3D "samsung,s2mps11-pmic", .data =3D (void *)S2MPS11X, @@ -221,15 +221,15 @@ static const struct of_device_id sec_pmic_i2c_of_matc= h[] =3D { }, { .compatible =3D "samsung,s2mps15-pmic", .data =3D (void *)S2MPS15X, - }, { - .compatible =3D "samsung,s2mpa01-pmic", - .data =3D (void *)S2MPA01, }, { .compatible =3D "samsung,s2mpu02-pmic", .data =3D (void *)S2MPU02, }, { .compatible =3D "samsung,s2mpu05-pmic", .data =3D (void *)S2MPU05, + }, { + .compatible =3D "samsung,s5m8767-pmic", + .data =3D (void *)S5M8767X, }, { }, }; --=20 2.49.0.395.g12beb8f557-goog From nobody Thu Dec 18 22:20:07 2025 Received: from mail-ej1-f43.google.com (mail-ej1-f43.google.com [209.85.218.43]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 13B4A1D7995 for ; Sun, 23 Mar 2025 22:39:34 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.43 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1742769579; cv=none; b=I7Ue27lFZYDq6TUitMzS6+XSX/afAUeoKoSnpRcseawjzJnDwdsErUUAjo0ead90VndpLi1uwSrrK6Q6bxptlfxNZ4QbZcGphFUkzI+Dk2U75UIZsjC1aGbo+9ofbIYqZ9zsFRpsUxPch67ARMzIEFuc/Cx2/20bbKrD0ZdP6cI= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1742769579; c=relaxed/simple; bh=SN4XNsNLZFVi5qqeFmOu/MwH6DQLUxaf/XH7JDQjnuQ=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=T0wyBuFu9QZbCG/AC7A/SuGFzJqyi98umGmSNeiFAJ+WCugg5CliYY+PzPb00Doqpe2R0YT3ImpeZ91IM9KLTcGDpx5S7FGYDiWWl5vmomeGnEM9lNW8l0UD7/BtePYYrrWjYen6R0zOE0MauIayjAvudrpJLuLroSvjWkx6XZU= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=I9GDMaGT; arc=none smtp.client-ip=209.85.218.43 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="I9GDMaGT" Received: by mail-ej1-f43.google.com with SMTP id a640c23a62f3a-ab78e6edb99so552696866b.2 for ; Sun, 23 Mar 2025 15:39:34 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1742769572; x=1743374372; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=0Ic/0Xe88bpVQ1K2LP6tYIkZ9tLwnecoFfoF6m5efNc=; b=I9GDMaGTphRs+hke3npQ2q9wbFM4D2TV7JpNug+yQsZDr3WFSBbq3FvNVCaasq52Ki sWtmz5wZIs4E3tiZumlkow+8ondkFZBvPY6rDjaQL5HwMXJzI9TN03uujZFcWepa4kB+ FD+G6JKK3VnRvH1+OrdzO73RqnaXmQx9Ff4JNO3uLjU+pgm5/6/ABLQnqdl4vt4S0+Sg CuLOfSApctaY055fOZXPQQ/o1sYWZVGq7c6KwnDaweCVb5INbGtNqEr4w+yVG6V1qz4w HkxrdNbWj8KMdRts+oY2fE+3FJlYt2LZJdAlVOvImtiET3x1VPPx7RPOEDkTVSVxTztn 8Zmg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1742769572; x=1743374372; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=0Ic/0Xe88bpVQ1K2LP6tYIkZ9tLwnecoFfoF6m5efNc=; b=KOeFtP6FcxSJ6RthvEyTZDv6lI/m6vGeq8ioBO9SP7KTAgb0duz3VwBJhraBgqtuhw KJHN50Jxd1NC8GY97abGONV2D6xh1SdUQjQxbWt9X65LVtW28JenfncWlQY2E0ujRaZk tlXEB7XkJUEI1MyIa6F4fakcYTGHvPrKcuv1uFkTeAe7DgXILEkC1Lx4FJ1KMc/yV0XC BSKGoFxddUYUAua66dj17aqVm2CNzgt4ryR1e24Ky6Kfixxq/zY5TWbrDNm3hTDwX5sb 2gEsHrgw32k5tUV48HTszNbQbqxnFWFjt/tTxQFiTvC9nu+PnaLM84P/vzrUcKmE8iZW U79A== X-Forwarded-Encrypted: i=1; AJvYcCXiUoN/2zydRrJXts4gPwiyR5SR+P1Di+KvKqk+EkQWrhgegCepB8DE8wr8KjaDk577LszcAd3A4aZ4mK8=@vger.kernel.org X-Gm-Message-State: AOJu0YyIy7EFSVSbzfai+HGd+ZBDxDfHW1jJ7ZVf+gsJ94MGfnJcH0gF bxszW71yoWAlZ/rCjHbkeMtEPCOx1qIyzJmzRdOTicGnmPdu6/BYE7WpAA9VYdc= X-Gm-Gg: ASbGnctw6TX6hRtG2sUowKqxJLBSS0n7XOAuf15LO9AhfZ0YGxQPPaGsfqJyt2ZuxcG YeXlZLKgRCQ2ZThEeOmyaJXa7/TtmMYu21x2Mfw83BBjiPArFejJUFh2mdY7gV6syyPjvUwrvyI bqeFci4rAI0EtMxZ6J/mtrvLO4FgFtCq92DoEjoaAq436hAemYXF6/8Iagts0AxlnaHF4BQpqSt dQXjSg76OgRHSGEgwknI6O3tEiIGAVg35/Rb1UgtgBJOTM+jhQhOJWHyAu+GPcbeEWrO5i4Mg7J q9WYJDu4zI/V1vIaeo+rrdDS10D2nh8BZZHOf+tdhBe10EPtPOlcjibQf9D58cKwBQtkneGiTvJ PxcpQqC5cLrfTBHnKvrsAmyxNftG4 X-Google-Smtp-Source: AGHT+IHSWJYMmiilFq0GtP25G1GQAXzOeFA4uM6WttlSQSDa4D8BZIvbWko1AKzeqQZza3T/DLDdOw== X-Received: by 2002:a17:907:d785:b0:ac3:3e40:e182 with SMTP id a640c23a62f3a-ac3f20f29c6mr1017949366b.19.1742769572496; Sun, 23 Mar 2025 15:39:32 -0700 (PDT) Received: from puffmais.c.googlers.com (8.239.204.35.bc.googleusercontent.com. [35.204.239.8]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-ac3ef86e44dsm559686666b.31.2025.03.23.15.39.32 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 23 Mar 2025 15:39:32 -0700 (PDT) From: =?utf-8?q?Andr=C3=A9_Draszik?= Date: Sun, 23 Mar 2025 22:39:31 +0000 Subject: [PATCH 15/34] mfd: sec: use dev_err_probe() where appropriate 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: <20250323-s2mpg10-v1-15-d08943702707@linaro.org> References: <20250323-s2mpg10-v1-0-d08943702707@linaro.org> In-Reply-To: <20250323-s2mpg10-v1-0-d08943702707@linaro.org> To: Krzysztof Kozlowski , Lee Jones , Rob Herring , Conor Dooley , Sylwester Nawrocki , Chanwoo Choi , Alim Akhtar , Michael Turquette , Stephen Boyd , Russell King , Catalin Marinas , Will Deacon , Alexandre Belloni Cc: Peter Griffin , Tudor Ambarus , Will McVicker , kernel-team@android.com, linux-kernel@vger.kernel.org, linux-samsung-soc@vger.kernel.org, devicetree@vger.kernel.org, linux-clk@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-rtc@vger.kernel.org, =?utf-8?q?Andr=C3=A9_Draszik?= X-Mailer: b4 0.14.2 dev_err_probe() exists to simplify code and harmonise error messages, there's no reason not to use it here. While at it, harmonise some error messages. Signed-off-by: Andr=C3=A9 Draszik Reviewed-by: Krzysztof Kozlowski --- drivers/mfd/sec-common.c | 6 +++--- drivers/mfd/sec-i2c.c | 10 +++------- drivers/mfd/sec-irq.c | 14 +++++++------- 3 files changed, 13 insertions(+), 17 deletions(-) diff --git a/drivers/mfd/sec-common.c b/drivers/mfd/sec-common.c index fcf7668efd3215ad70d81916ede249ed5f9d45ae..5e084e2c389ea6d509393be93f7= e2d39a795a60c 100644 --- a/drivers/mfd/sec-common.c +++ b/drivers/mfd/sec-common.c @@ -211,9 +211,9 @@ int sec_pmic_probe(struct device *dev, unsigned long de= vice_type, num_sec_devs =3D ARRAY_SIZE(s2mpu05_devs); break; default: - dev_err(sec_pmic->dev, "Unsupported device type %lu\n", - sec_pmic->device_type); - return -EINVAL; + return dev_err_probe(sec_pmic->dev, -EINVAL, + "Unsupported device type %lu\n", + sec_pmic->device_type); } ret =3D devm_mfd_add_devices(sec_pmic->dev, -1, sec_devs, num_sec_devs, NULL, 0, NULL); diff --git a/drivers/mfd/sec-i2c.c b/drivers/mfd/sec-i2c.c index ba0efb30877bf668fed7476a5e247e0dd4095806..ce1e5af9215a305fbb55157ae4e= 7bfb9aace86b8 100644 --- a/drivers/mfd/sec-i2c.c +++ b/drivers/mfd/sec-i2c.c @@ -152,7 +152,6 @@ static int sec_pmic_i2c_probe(struct i2c_client *client) const struct regmap_config *regmap; unsigned long device_type; struct regmap *regmap_pmic; - int ret; =20 sec_pmic_i2c_parse_dt_pdata(&client->dev, &probedata); =20 @@ -186,12 +185,9 @@ static int sec_pmic_i2c_probe(struct i2c_client *clien= t) } =20 regmap_pmic =3D devm_regmap_init_i2c(client, regmap); - if (IS_ERR(regmap_pmic)) { - ret =3D PTR_ERR(regmap_pmic); - dev_err(&client->dev, "Failed to allocate register map: %d\n", - ret); - return ret; - } + if (IS_ERR(regmap_pmic)) + return dev_err_probe(&client->dev, PTR_ERR(regmap_pmic), + "regmap init failed\n"); =20 return sec_pmic_probe(&client->dev, device_type, client->irq, regmap_pmic, &probedata, client); diff --git a/drivers/mfd/sec-irq.c b/drivers/mfd/sec-irq.c index 4afac3aa0a582994bf04c41768c1c788c54ee2e9..d05c8b66c35f2a1356d7c641484= 404628870ed42 100644 --- a/drivers/mfd/sec-irq.c +++ b/drivers/mfd/sec-irq.c @@ -488,18 +488,18 @@ int sec_irq_init(struct sec_pmic_dev *sec_pmic) sec_irq_chip =3D &s2mpu05_irq_chip; break; default: - dev_err(sec_pmic->dev, "Unknown device type %lu\n", - sec_pmic->device_type); - return -EINVAL; + return dev_err_probe(sec_pmic->dev, -EINVAL, + "Unsupported device type %lu\n", + sec_pmic->device_type); } =20 ret =3D devm_regmap_add_irq_chip(sec_pmic->dev, sec_pmic->regmap_pmic, sec_pmic->irq, IRQF_ONESHOT, 0, sec_irq_chip, &sec_pmic->irq_data); - if (ret !=3D 0) { - dev_err(sec_pmic->dev, "Failed to register IRQ chip: %d\n", ret); - return ret; - } + if (ret !=3D 0) + return dev_err_probe(sec_pmic->dev, ret, + "Failed to add %s IRQ chip\n", + sec_irq_chip->name); =20 /* * The rtc-s5m driver requests S2MPS14_IRQ_RTCA0 also for S2MPS11 --=20 2.49.0.395.g12beb8f557-goog From nobody Thu Dec 18 22:20:07 2025 Received: from mail-ej1-f52.google.com (mail-ej1-f52.google.com [209.85.218.52]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id AC6631D5CCC for ; Sun, 23 Mar 2025 22:39:35 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.52 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1742769580; cv=none; b=gto631wrD7o3VU2q/8Ru0e/nqtbi7JuYceFNo1xdujSkHTF4NsypY4vYDKqll0esTpbcRtBPTKtkBlRXVxLk9djpfIrwXEIDSNJqmR9U9c+FJtFucWiSQ99v7T0TGPxxTidoE2m8bKyR0MK9ZDt9lbmwR37qA5sXe2l4ZYn4Ryg= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1742769580; c=relaxed/simple; bh=QKL8Ytaf6dGtPsAh1+74H/LNJepm9+/T3Tzf5JXAhIU=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=iUtgv68yAZHuD4zitC3IUWgZUGFJati+d023gdREZdQiMHhwuE76Ratw9l0adVI2gc8GiInAVtDBGEqgDtAcsKGcqZpuRLf4YXKvJQy9hYshF2ajsQ05zcSKNU+ORQOp/ZZQYkZ6kCVVKcEFMPamKjLQkAfsER5GTdpldYqePxs= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=wHd0oSTl; arc=none smtp.client-ip=209.85.218.52 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="wHd0oSTl" Received: by mail-ej1-f52.google.com with SMTP id a640c23a62f3a-ac2c663a3daso769281866b.2 for ; Sun, 23 Mar 2025 15:39:35 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1742769573; x=1743374373; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=hTxU1W+gue/BWMRsVQK9iOH//Nw2cf3wcu3aMwThOM8=; b=wHd0oSTldpBEK5QJca6xnISTHeraeFQFVQnjZt+SY6MY7+JUtabMdmulosGwhZ9DA6 9bPOBIXY2zbcSv3Vbbqg1w47xaMHu4BHi2AvF2hZgb+kQg/OvBD+hZzHNwNoBRdTUCKj i5b+VrluoDcovZV0C8feIAsVHAx6hBKqBbrgxEQ4viTtYtqNCY4ZmyIdWh07fZtgFEAI ytyTII+kLIGQDFmXwgD5GT/D4LaiV0C4tUAQITML60U1piwk+rW94KiMti2AcrwgoFFu zp9eEBDIHmNIMkTmy9MWF5L6+KSxxOCBEkvCht0d1Qo2kfoExM8ziQTPDf8dsgHnNVhQ rNzw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1742769573; x=1743374373; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=hTxU1W+gue/BWMRsVQK9iOH//Nw2cf3wcu3aMwThOM8=; b=nl+69snfEDdvZknnEs/CSnsfysyAkvxjuODp+KTbF7HdI3A3c/xFwInFdoMXr+3n75 u5tUJrskB5AWFQS4SUN76ClsvIPVtNPYTQfK/h987VD1jiRU8z/CHGClZCZ7MXz5/lhZ Z5o9n/QlUh/UbY39BsdYFfWP6P2HRLdAKd3c029+5PnnEh2M0pOkjleIJPJQ+B3MssXK xc4WUCESjse+C97nKLVeH6NEWP/bxWRfj1WA3uA28GQIXQZs+L+TyvFCXJfi6VmCkB+r VwlfcwimWyb+7Hk5VGbzTaey6nq6QomHbcDRno5oUj/TdeI1iqLeCfzVvmTuE2mP8k6d 7r0Q== X-Forwarded-Encrypted: i=1; AJvYcCVEfevKdu+m+01G2+ZGHely2MyoZFT26L+bwW99/0RGe/Co+WhmstQDRGjqXIQc2bNDYnTK60TP5+LxSlY=@vger.kernel.org X-Gm-Message-State: AOJu0Yyf5/ah3iN9Ir32T+RQDV3PwW+ic7aWf/PXS37lHGSy0rZqF9hC FWmcAykBK1IfjoEkVT++7yAD02toBvXbC4tFZ04H6SU6Gq2yMIxOHoJgVQe8JbI= X-Gm-Gg: ASbGncvdX3z/IpzSaG7q16T8T9+lrNGCDNMWq9ym/9fYLzUU3StCJf2CoJoIc0Nb3es 68r/qPbo2SQZWqas6gvePIpnnk0phUUq+Xp8goYVZBNgsw85OGVkJCvCvSnwYGRaBXJtLBtkbfK K5tNiwZxqCur7o/EgRefzT33NhumDpzz3tTaavvHBI5xCYgDOgm0Ql0HThPxlfIzvzr9wbnh0j9 PzSdnoH5cMn+Sq9JnN95niZ3LtTkBwVmrmol4kucy5TKE5j7mPUvTlvFPo/CUznk4dvAVBEAwDk LF789MFETofulNAKcdu0J6AAlDM64KsBGOAkCKdCwFpZ7P5rTV2D+HR3JW1/LbjxIt2XDmnRDei XHE0LnjFlVUNJbW0BP1oJsSK7fRDS X-Google-Smtp-Source: AGHT+IFRwsk7g0/V5N71R/aeNk5DfXRJnWzrEBdlGqW+YmGP+K8r15zEhceKjqCGxIHr3ot1FPPH7A== X-Received: by 2002:a17:907:96a5:b0:ac3:5c8e:d3f5 with SMTP id a640c23a62f3a-ac3f2238ac9mr1051718066b.27.1742769573042; Sun, 23 Mar 2025 15:39:33 -0700 (PDT) Received: from puffmais.c.googlers.com (8.239.204.35.bc.googleusercontent.com. [35.204.239.8]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-ac3ef86e44dsm559686666b.31.2025.03.23.15.39.32 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 23 Mar 2025 15:39:32 -0700 (PDT) From: =?utf-8?q?Andr=C3=A9_Draszik?= Date: Sun, 23 Mar 2025 22:39:32 +0000 Subject: [PATCH 16/34] mfd: sec: s2dos05/s2mpu05: use explicit regmap config 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: <20250323-s2mpg10-v1-16-d08943702707@linaro.org> References: <20250323-s2mpg10-v1-0-d08943702707@linaro.org> In-Reply-To: <20250323-s2mpg10-v1-0-d08943702707@linaro.org> To: Krzysztof Kozlowski , Lee Jones , Rob Herring , Conor Dooley , Sylwester Nawrocki , Chanwoo Choi , Alim Akhtar , Michael Turquette , Stephen Boyd , Russell King , Catalin Marinas , Will Deacon , Alexandre Belloni Cc: Peter Griffin , Tudor Ambarus , Will McVicker , kernel-team@android.com, linux-kernel@vger.kernel.org, linux-samsung-soc@vger.kernel.org, devicetree@vger.kernel.org, linux-clk@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-rtc@vger.kernel.org, =?utf-8?q?Andr=C3=A9_Draszik?= X-Mailer: b4 0.14.2 When support for PMICs without compatibles was removed in commit f736d2c0caa8 ("mfd: sec: Remove PMICs without compatibles"), sec_regmap_config effectively became an orphan, because S5M8763X was the only user left of it before removal, using the default: case of the switch statement. When s2dos05 and s2mpu05 support was added in commit bf231e5febcf ("mfd: sec-core: Add support for the Samsung s2dos05") and commit ed33479b7beb ("mfd: sec: Add support for S2MPU05 PMIC"), they ended up using that orphaned regmap_config in a non-obvious way due to the default: case of the device type switch matching statement taking effect again. To make things more obvious, and to help the reader of this code while reasoning about what the intention might be here, and to ensure future additions to support new devices in this driver don't forget to add a regmap config, add an explicit regmap config for these two devices, so that we can ultimately remove the generic regmap config. Note that this commit doesn't fix the issue that s2dos05_regmap_config ands2mpu05_regmap_config really are incomplete, but I have no documentation on them. Signed-off-by: Andr=C3=A9 Draszik --- drivers/mfd/sec-i2c.c | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/drivers/mfd/sec-i2c.c b/drivers/mfd/sec-i2c.c index ce1e5af9215a305fbb55157ae4e7bfb9aace86b8..3912baa5c2f918b7ad345e2bbbb= e4daf2e49ca6d 100644 --- a/drivers/mfd/sec-i2c.c +++ b/drivers/mfd/sec-i2c.c @@ -66,6 +66,11 @@ static const struct regmap_config sec_regmap_config =3D { .val_bits =3D 8, }; =20 +static const struct regmap_config s2dos05_regmap_config =3D { + .reg_bits =3D 8, + .val_bits =3D 8, +}; + static const struct regmap_config s2mpa01_regmap_config =3D { .reg_bits =3D 8, .val_bits =3D 8, @@ -120,6 +125,11 @@ static const struct regmap_config s2mpu02_regmap_confi= g =3D { .cache_type =3D REGCACHE_FLAT, }; =20 +static const struct regmap_config s2mpu05_regmap_config =3D { + .reg_bits =3D 8, + .val_bits =3D 8, +}; + static const struct regmap_config s5m8767_regmap_config =3D { .reg_bits =3D 8, .val_bits =3D 8, @@ -158,6 +168,9 @@ static int sec_pmic_i2c_probe(struct i2c_client *client) device_type =3D (unsigned long)of_device_get_match_data(&client->dev); =20 switch (device_type) { + case S2DOS05: + regmap =3D &s2dos05_regmap_config; + break; case S2MPA01: regmap =3D &s2mpa01_regmap_config; break; @@ -176,6 +189,9 @@ static int sec_pmic_i2c_probe(struct i2c_client *client) case S2MPU02: regmap =3D &s2mpu02_regmap_config; break; + case S2MPU05: + regmap =3D &s2mpu05_regmap_config; + break; case S5M8767X: regmap =3D &s5m8767_regmap_config; break; --=20 2.49.0.395.g12beb8f557-goog From nobody Thu Dec 18 22:20:07 2025 Received: from mail-ej1-f49.google.com (mail-ej1-f49.google.com [209.85.218.49]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 2812B1922EE for ; Sun, 23 Mar 2025 22:39:35 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.49 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1742769581; cv=none; b=knSWefgwsP00F4Xy3tlZAGlrXK3W8isLV/d6katb1MEABn8/Pc1h9BWyMu5bdbztJmFCrW0PslIYUbQPQmSKi1nLUQSGMiCQRwqG8yrUN6BJk73h5L9Eu+EeJ+F8WZDCpGzFh/J0Jz1ox8mnIDvFQTgqln4XKDm0LnQiyTSYRkM= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1742769581; c=relaxed/simple; bh=CNr8O5YK2JQvgLnYqrPn1/s+31iKPD62ZA/NdspWTmA=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=H+yZL1tK8157yJ8nt8pLtDYS20eCzObRck8bnW1CH9QrxEX9bEpyajCSvop/o8WvEhv75w5vQJW8bPDt7JphHn3VLwofWezmlc1MF0V7ZRlkEy7f16Gz/zrMuZ/5bFch4t5U52vxB18llRocm5Vd3E4j0C+vsmUwsueGeo/VcYI= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=ytCHdf13; arc=none smtp.client-ip=209.85.218.49 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="ytCHdf13" Received: by mail-ej1-f49.google.com with SMTP id a640c23a62f3a-ac28e66c0e1so567665166b.0 for ; Sun, 23 Mar 2025 15:39:35 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1742769574; x=1743374374; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=ma2h8YcPyNzHzzZtNTsrMSq+4WFWkERbNAUqbwhG/XE=; b=ytCHdf13wQ6wy9w2OC+acXO/7QQuQ964Lje7iCXaJKOv5ibrRpLS397TcfRJR1kq7u PbKza7+Uyomr8s+8ztSGfVZw/Nbf0nhi2lv/16WaVGbdKhKdI6ifWqXtKbo0KsseLr1d olViCTOQvQenLyUjQzkPyfTmTlk4F7LjSDoThJoTkHYv0hERy8wl8Fj6AiApIK483BTi S9TSqX6zG24ms89OZcRG2kK/gtpI82ihdfAFTpk3QCWwRXBkfxp/X0gX71r0l+LLX144 YzEGBviX+jBTOmnS/oZL/Z+6kAWCvkTDVryEmVCth79Ks/ALcUNRO7qtZJt4gDgzunDP p5eA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1742769574; x=1743374374; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=ma2h8YcPyNzHzzZtNTsrMSq+4WFWkERbNAUqbwhG/XE=; b=xMkq4ZiJvEELS/pV2LwG9wAVG94K9ahhzR/+Ly+HS2P/AFqsiIq3YzkI6AX82wmuqk 9DSTCt74Kx8P8s4sjcVWvuWkwu+amxYWKg3Bh2TnOLGmkqAuAki7J+O/4QVP6ygPD+aE p7zuycL9l86C2/xtkBYGAayOnQghbWZZK07EuRnd6m1WPDM/+k4u22CC6kZxZ0Guk7Us uWXMduDrcb9yvi/R/CqQJNPsDKqyKQ1NMGAXklbLydOlptZdyMmfh4cmcziCkM/bM8TQ gP4CEqNjA4/DbQlqpiv52LOjDWvGcLIzNaTbS94M8HOXrqxEtjpKteY7cB1rRTqtXMIF dHAQ== X-Forwarded-Encrypted: i=1; AJvYcCXQ4Qhad0kxlb/bs3PctAqNWxdovxPVqWk6w29vovKmANcfLR++Z4gI+i0LGw7wCF9o90JKCb7IP2qQ+oU=@vger.kernel.org X-Gm-Message-State: AOJu0YzMZmEpcn99IQ7/Nc7nNw1DA2tmVWpsNztlRcVCcUJBrcA8Ja5G hIXL6xWSUc+/bcq52OmEtjeXDpdHTp7oMYHtvIy1ZYcH9w1+cw+4NTTXszGd0BY= X-Gm-Gg: ASbGncv4Mai0uVCezViMuvDxGJxaIRZZHhCQJ5ki/lCERWvFD8j4SDkDkImYgnDkiEk y8Jl9oQ5i5NoTKZehffiIxEegvXyd3qgUwmTNufMv5G3P/wgWqqwSUdSo4piU0wUDoTXDi4MRDw kqd8kMr9hzmtiDMYCzwh2kamPkzbxqzTjrGv0gnP5wazOHUppANlsBd5genEuHQ4nwL/06J351I IT35BJp26bfihRhkqvH6J1Ks5YBQVS1nzI/v52bgwzZ6JEixKqQjWgC9FxkYDVlFwqThiYlDd2o rHQxh9bwUaPnZB2QjQPuEXxkAgOoYd/1S99Tea5k6+jp1NZrz4C39D7FgsHNeUmUUu6lwOj6fhm 9o8zg6weU+XSjJB69dTIWfjDWS9Yr X-Google-Smtp-Source: AGHT+IEAdjv9xEbMYB+Oz8xJ1E35q2wdeD2HNBvV+6r3g5vXOlzMcwWya0yXpD0Ui6X7vYMMVnjHVw== X-Received: by 2002:a17:907:d91:b0:ac2:a4c2:604f with SMTP id a640c23a62f3a-ac3f24a7838mr974893166b.46.1742769573704; Sun, 23 Mar 2025 15:39:33 -0700 (PDT) Received: from puffmais.c.googlers.com (8.239.204.35.bc.googleusercontent.com. [35.204.239.8]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-ac3ef86e44dsm559686666b.31.2025.03.23.15.39.33 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 23 Mar 2025 15:39:33 -0700 (PDT) From: =?utf-8?q?Andr=C3=A9_Draszik?= Date: Sun, 23 Mar 2025 22:39:33 +0000 Subject: [PATCH 17/34] mfd: sec: drop generic regmap config 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: <20250323-s2mpg10-v1-17-d08943702707@linaro.org> References: <20250323-s2mpg10-v1-0-d08943702707@linaro.org> In-Reply-To: <20250323-s2mpg10-v1-0-d08943702707@linaro.org> To: Krzysztof Kozlowski , Lee Jones , Rob Herring , Conor Dooley , Sylwester Nawrocki , Chanwoo Choi , Alim Akhtar , Michael Turquette , Stephen Boyd , Russell King , Catalin Marinas , Will Deacon , Alexandre Belloni Cc: Peter Griffin , Tudor Ambarus , Will McVicker , kernel-team@android.com, linux-kernel@vger.kernel.org, linux-samsung-soc@vger.kernel.org, devicetree@vger.kernel.org, linux-clk@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-rtc@vger.kernel.org, =?utf-8?q?Andr=C3=A9_Draszik?= X-Mailer: b4 0.14.2 When support for PMICs without compatibles was removed in commit f736d2c0caa8 ("mfd: sec: Remove PMICs without compatibles"), sec_regmap_config effectively became an orphan, because S5M8763X was the only user left of it before removal, using the default: case of the switch statement. Subsequently, the accidental new users have been updated, so sec_regmap_config is an orphan again, and can and should be removed from the code. Doing so will also ensure future additions to support new devices in this driver don't forget to add a regmap config. Drop this fallback regmap config. Signed-off-by: Andr=C3=A9 Draszik --- drivers/mfd/sec-i2c.c | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/drivers/mfd/sec-i2c.c b/drivers/mfd/sec-i2c.c index 3912baa5c2f918b7ad345e2bbbbe4daf2e49ca6d..1bdd6ea36fcd9f56ea5ec1159a8= 7723f4c09a0bd 100644 --- a/drivers/mfd/sec-i2c.c +++ b/drivers/mfd/sec-i2c.c @@ -61,11 +61,6 @@ static bool s2mpu02_volatile(struct device *dev, unsigne= d int reg) } } =20 -static const struct regmap_config sec_regmap_config =3D { - .reg_bits =3D 8, - .val_bits =3D 8, -}; - static const struct regmap_config s2dos05_regmap_config =3D { .reg_bits =3D 8, .val_bits =3D 8, @@ -196,8 +191,9 @@ static int sec_pmic_i2c_probe(struct i2c_client *client) regmap =3D &s5m8767_regmap_config; break; default: - regmap =3D &sec_regmap_config; - break; + return dev_err_probe(&client->dev, -ENODEV, + "Unsupported device type %lu\n", + device_type); } =20 regmap_pmic =3D devm_regmap_init_i2c(client, regmap); --=20 2.49.0.395.g12beb8f557-goog From nobody Thu Dec 18 22:20:07 2025 Received: from mail-ej1-f53.google.com (mail-ej1-f53.google.com [209.85.218.53]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 81D011E570E for ; Sun, 23 Mar 2025 22:39:37 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.53 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1742769581; cv=none; b=SYYcRe/O7yM9rdzHizDN+ElbzZUGU01jcrLd6ZTqOsNmiJ2XQpCkcHX0wP25IBWZCkyY7K0/J95gaxeR8LnZ3lt34oGjUcvb0H9XT9AQhsaLOG2WBRkwCRATGzyMa2G3qCZypOM+3B09DVik1yLG8FrEmg6jwzR0H7F9LeboHeY= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1742769581; c=relaxed/simple; bh=rN1LIX+ASOSby+v7Y66ac8wfq2CyeekWp2iiMY3xYgk=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=FK+qN2/oNguQQ1kNtGStk+qBOjAqzlWXzWxHzl/5ejx8mcfjqtjSOYZU258P0TyYpCNX2OG4voxACfKWl+8SB4HpKyWSQ3jCRbPdX+xEuSW+RenPklJnkikQinodUscUAy6m2nPpdoWIdWFc0EypSo+e+6BkSui1uLE4BiU2PBM= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=wgmFqBRf; arc=none smtp.client-ip=209.85.218.53 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="wgmFqBRf" Received: by mail-ej1-f53.google.com with SMTP id a640c23a62f3a-ab7430e27b2so806333566b.3 for ; Sun, 23 Mar 2025 15:39:36 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1742769574; x=1743374374; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=OvVG+h6exYVME9DrCs1LDYgxvlNyKrO2ZRoKATXeWAM=; b=wgmFqBRfZvGB3Wv2rdRMjAEYNdQIlob4VQBDT7YTLkRCOvKLvGlCZhggNK6fEXiXQy oOwf9mrRljMud8DglpoJOI+TCbW3SJ33FiwKrcoR1oIUNAgmSLaiV6bJbtQTZBnJahMB n893wqqDkBtBBlOJf6QB40NSrtVjjB614QhL0JUE9hlgmEXZYkJjt6mLtAQ2raSLF/N7 u9ZcAE/V83DG4G3RGUCJ7Jc7P+LbxdmiTtMDukadyzBX+V6o/SJ4oHwiyXmPukuHvPWW ls35cq63wRxNS+6hbTZ+CJgsz9nISF5+VbaH1LDdCDbBWD/A8FQlVUcxnJc8BWCqRxI9 euKw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1742769574; x=1743374374; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=OvVG+h6exYVME9DrCs1LDYgxvlNyKrO2ZRoKATXeWAM=; b=mGHL6C7WYTnKauv/CXGFXxlZHxq6SGPgZmqsFNM93heoFqijVTUwf/SG8m2yvO8hxl 8p2e0ghBFfPJFuQ2bJZCs9F5kEhQD6aCxRYmNouIesTG7Ntf3cyaVBBqIG6dViQ1nxTx rY9u0oPKSexMmCOfgjno3lFcoBeuiBJL86TefIbY9RXZDesY81CPQQqZkK+J5R6i/Bc6 Lk5YVxk5DgVKGzEeSwhLKbzWabwQ2siFbuE5iQEm5M0Xe+0R5EZJ46ELnapZFVSXz1P4 E7vuLQTfWF9Jzhr10wW67jrwUZKAHops7CTjlFk7d/uaWgaeujIZCPwF2uR68D1e6PBt GlDQ== X-Forwarded-Encrypted: i=1; AJvYcCVpo1pG5qVObBqA8+zR3SP1cgEICewSnlRhLRxa4Q1jTVmo80o0id5VxXCARaUGVz4+pVCco8P7woeOMyU=@vger.kernel.org X-Gm-Message-State: AOJu0Ywu2THpBTlQc7+6S3M1j6dDMQbhM9M+aZAhyoPOU/A/+ETBgWMd fP53comyTQ4OfH0lSbpx4bWSN9cwssIZxAgdKXG2hj4XuK98ZNSFb+k14f2A5Go= X-Gm-Gg: ASbGncskkZkoHjE1ldPcFG5iWI9jDsUF+InE9RISiKyrrZgHix/RkKuPXI8H1DWIPOt z7Z2eDv3WD9uaTy6FnuEequBfsSsBwJleVD5xNg/daJqk6uYvDJIME7cdzjRwiXPyhu1qZDHbqq ug78SY2lTojOLBNVALH31ie69W4lkvamfrwPa6VCqv7nDR8Dn/38BRRbLZ8JI7LBmhnz6FioUXI IwsPxuyUCQ3hRoN0i6Wm0Wi4SMyI4h98NrIsIAjcJjdyV0CysSg817CiNinMJEQ+aUNCPiem1+/ Od4v0WztUo3zV99QmUk4CaaovMluHoqzqz2oVjNWEEPe9LIsLdHzUuyzZqpVC/sUBbSWR7iDxan cUtgrM2r1iM0DrWHqJDTFQhMik5fq X-Google-Smtp-Source: AGHT+IGbu/jFjtqa9LSXFqPCJsAn/xbvTSf/7H1OcPEes32L8sKOj1rM+QLBV82JKfVyHX96sb/teQ== X-Received: by 2002:a17:907:1b0d:b0:ac2:7a97:87fb with SMTP id a640c23a62f3a-ac3f229dcb7mr1140111466b.33.1742769574302; Sun, 23 Mar 2025 15:39:34 -0700 (PDT) Received: from puffmais.c.googlers.com (8.239.204.35.bc.googleusercontent.com. [35.204.239.8]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-ac3ef86e44dsm559686666b.31.2025.03.23.15.39.33 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 23 Mar 2025 15:39:33 -0700 (PDT) From: =?utf-8?q?Andr=C3=A9_Draszik?= Date: Sun, 23 Mar 2025 22:39:34 +0000 Subject: [PATCH 18/34] mfd: sec: s2dos05: doesn't support interrupts (it seems) 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: <20250323-s2mpg10-v1-18-d08943702707@linaro.org> References: <20250323-s2mpg10-v1-0-d08943702707@linaro.org> In-Reply-To: <20250323-s2mpg10-v1-0-d08943702707@linaro.org> To: Krzysztof Kozlowski , Lee Jones , Rob Herring , Conor Dooley , Sylwester Nawrocki , Chanwoo Choi , Alim Akhtar , Michael Turquette , Stephen Boyd , Russell King , Catalin Marinas , Will Deacon , Alexandre Belloni Cc: Peter Griffin , Tudor Ambarus , Will McVicker , kernel-team@android.com, linux-kernel@vger.kernel.org, linux-samsung-soc@vger.kernel.org, devicetree@vger.kernel.org, linux-clk@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-rtc@vger.kernel.org, =?utf-8?q?Andr=C3=A9_Draszik?= X-Mailer: b4 0.14.2 The commit bf231e5febcf ("mfd: sec-core: Add support for the Samsung s2dos05") adding s2dos05 support didn't add anything related to IRQ support, so I assume this works without IRQs. Rather than printing a warning message in sec_irq_init() due to the missing IRQ number, or returning an error due to a missing irq chip regmap, just return early explicitly. This will become particularly important once errors from sec_irq_init() aren't ignored anymore in an upcoming patch and helps the reader of this code while reasoning about what the intention might be here. Signed-off-by: Andr=C3=A9 Draszik Reviewed-by: Krzysztof Kozlowski --- drivers/mfd/sec-irq.c | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/drivers/mfd/sec-irq.c b/drivers/mfd/sec-irq.c index d05c8b66c35f2a1356d7c641484404628870ed42..dc5560a0c496917e847a40295c5= 3e3f762b60998 100644 --- a/drivers/mfd/sec-irq.c +++ b/drivers/mfd/sec-irq.c @@ -453,16 +453,12 @@ int sec_irq_init(struct sec_pmic_dev *sec_pmic) int type =3D sec_pmic->device_type; const struct regmap_irq_chip *sec_irq_chip; =20 - if (!sec_pmic->irq) { - dev_warn(sec_pmic->dev, - "No interrupt specified, no interrupts\n"); - return 0; - } - switch (type) { case S5M8767X: sec_irq_chip =3D &s5m8767_irq_chip; break; + case S2DOS05: + return 0; case S2MPA01: sec_irq_chip =3D &s2mps14_irq_chip; break; @@ -493,6 +489,12 @@ int sec_irq_init(struct sec_pmic_dev *sec_pmic) sec_pmic->device_type); } =20 + if (!sec_pmic->irq) { + dev_warn(sec_pmic->dev, + "No interrupt specified, no interrupts\n"); + return 0; + } + ret =3D devm_regmap_add_irq_chip(sec_pmic->dev, sec_pmic->regmap_pmic, sec_pmic->irq, IRQF_ONESHOT, 0, sec_irq_chip, &sec_pmic->irq_data); --=20 2.49.0.395.g12beb8f557-goog From nobody Thu Dec 18 22:20:07 2025 Received: from mail-ej1-f50.google.com (mail-ej1-f50.google.com [209.85.218.50]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id E41BA1C8611 for ; Sun, 23 Mar 2025 22:39:37 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.50 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1742769582; cv=none; b=Yegsat+rAeu/8epROfJZJ4tlKEq/f1YyS6KmKCkMltSYHAFJfV5J+6CPRnb0oHKddoGCbjlZ7EPXP6ZFcKa0U3OTir6QrdItiEo0OUku9T7ezlZMMULot4gRS4aCke6aa/DaUZGfZ1O+tqoz5nqQDZD+uoNxAAK0nMe0Z9BEaPo= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1742769582; c=relaxed/simple; bh=oiNyTv54VHVM6a4w1mLQcnbnflOdyihzpGBxsT78Cis=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=h3qF6TCnXlc9CDeD3i62alNALBIOq46lWydunaxHQGesRPbxv9a2ivN1NciCDtQerxLcF0OeDw11qQXmZ04Wp/MuNAZnrFt7q0WOJH9pymcSdWnr+0N3hdwSvtXxu2+WW07RFixZWDanR1l927sbSvC1b31nNiH1HBvglPehKd4= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=J9mCHJK0; arc=none smtp.client-ip=209.85.218.50 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="J9mCHJK0" Received: by mail-ej1-f50.google.com with SMTP id a640c23a62f3a-ac2963dc379so636664566b.2 for ; Sun, 23 Mar 2025 15:39:37 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1742769575; x=1743374375; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=k8z5p12enI9RZw66rCmwLiYXfJvqOoZz3UAG+lMt/bw=; b=J9mCHJK0F3b8WF6ZmLLg7q5hyFgPf6zbS7q16BOzZDU+pAwZ3GlhbJLSOWlnZ6Ebmg +uqjhSOaWBq5ivQCShINdIRk20HL+oZ1+qyRFMLE6ONHP2Q/qzeHrF61SdcI5z2wnwIG b193A0osJPN+//5l5D/uMDu+vpM2x8N/46xFyw9cjI/DJZncsPzWIZurGwQt9Ba4m71a C9kCAkW7fCWrG6jr0sPO3LjK8rzJCn5UD5sS2/qw4/d6qXWA/Vpm8UxX/27uxj5XguyX mCZDrUKbE3gl1ihzh7P3bmj2GCM0eUevK1zbErEo3EGIOt3NKoO8Ck7mMGHV49KbCPxU 5hnA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1742769575; x=1743374375; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=k8z5p12enI9RZw66rCmwLiYXfJvqOoZz3UAG+lMt/bw=; b=ou/4FK7MWaoLIIWPYAACgxFu3Ygrhn4ZeO5wHbJjZW54rXP90yoJDBB2/r5S37+fPF CLQ1gGolWUW5P69uDHARaiR91Eho76EOFIBpPeYEoLagMyV5VBIM1g2DJuGYs41iHzt/ mww+aHR4oNRwwbiLSwgngsk2UPcXfTsGVw9pwq6lL5vlhoQWd95XLqhN9nwpPqqfsTXN M8wydBXOna7puTO9OuGiBTj23KRhCqCWsu6PXys2i6n2r+d50kyYoWHuV7b57Idn02VH KXyytzJ0jS3Zj0zUEiRYm5nJFmQsXtiwzioqg3xfLREwuVZemop/w1y9kD9bmMuGFedX HPow== X-Forwarded-Encrypted: i=1; AJvYcCU0AgDU4ocQ6qeaLI64nWqY1PaPbPG9AcUcbHxjqn2+5+wXhGtKvq8Lql2gd9cjU/ARGvOzXK/48wD4Rk8=@vger.kernel.org X-Gm-Message-State: AOJu0YzAFWLvZ/IFlBgIHA7z68vduAQI0tuhODTIzqPP2nu+Z4qck8XR xW5eYjHPRLoAcRhKwHqcEmUYEKKVm/qTZIw7GFWfC+QMwAqg2aS1P7gMqVv5HHk= X-Gm-Gg: ASbGnctF3odAFNQfjvwu7VNCfZUbZect3gphc4DdF4v1XQkAJMymO4rhGIy9uoyeewt EB1Cmp3JiKthVoB07WAw/zimZZX/bREs/nk7ImGgiNAUfhQU4p+S0bNeqwD4G1KS0K0rfdnHJbn EjnASmwnU3n2Evori+nm1WH0rwKMRmB+kax5umZBU1W4YtGdNtGystrmIGjQvqajEtv6A+PJoXl D5K/9svhxkzCAPyrdyAuRB0A9e9QadRUTZvf7PE+T89wy4l0UgvSUZQaHowHzoWRuq87s/FftsC dFaji2/PYHA7pJ9UBfpRN9uJfnyRP5CitVKSBcdHAOtI2tulg6+0/lEGXiJP+1OvKxb/5K7b+06 a1ANgJdC1G4WDIUhquMTnpDi4qTyS X-Google-Smtp-Source: AGHT+IGe5qmoAcXMWbaWHDRmab3UauFteJoVt09a7sGbTlNJP0cYBqQFxBHjhU8bkTv1Ztr/PWxw0A== X-Received: by 2002:a17:907:bac2:b0:ac2:e059:dc03 with SMTP id a640c23a62f3a-ac3f26aee3dmr1087374966b.38.1742769574917; Sun, 23 Mar 2025 15:39:34 -0700 (PDT) Received: from puffmais.c.googlers.com (8.239.204.35.bc.googleusercontent.com. [35.204.239.8]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-ac3ef86e44dsm559686666b.31.2025.03.23.15.39.34 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 23 Mar 2025 15:39:34 -0700 (PDT) From: =?utf-8?q?Andr=C3=A9_Draszik?= Date: Sun, 23 Mar 2025 22:39:35 +0000 Subject: [PATCH 19/34] mfd: sec: don't ignore errors from sec_irq_init() 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: <20250323-s2mpg10-v1-19-d08943702707@linaro.org> References: <20250323-s2mpg10-v1-0-d08943702707@linaro.org> In-Reply-To: <20250323-s2mpg10-v1-0-d08943702707@linaro.org> To: Krzysztof Kozlowski , Lee Jones , Rob Herring , Conor Dooley , Sylwester Nawrocki , Chanwoo Choi , Alim Akhtar , Michael Turquette , Stephen Boyd , Russell King , Catalin Marinas , Will Deacon , Alexandre Belloni Cc: Peter Griffin , Tudor Ambarus , Will McVicker , kernel-team@android.com, linux-kernel@vger.kernel.org, linux-samsung-soc@vger.kernel.org, devicetree@vger.kernel.org, linux-clk@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-rtc@vger.kernel.org, =?utf-8?q?Andr=C3=A9_Draszik?= X-Mailer: b4 0.14.2 sec_irq_init() can fail, we shouldn't continue and ignore the error in that case, but actually error out. Signed-off-by: Andr=C3=A9 Draszik Reviewed-by: Krzysztof Kozlowski --- drivers/mfd/sec-common.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/drivers/mfd/sec-common.c b/drivers/mfd/sec-common.c index 5e084e2c389ea6d509393be93f7e2d39a795a60c..bec8f93a03f7fd794beade563d7= 3610534cb96b2 100644 --- a/drivers/mfd/sec-common.c +++ b/drivers/mfd/sec-common.c @@ -165,7 +165,9 @@ int sec_pmic_probe(struct device *dev, unsigned long de= vice_type, pdata->disable_wrstbi =3D probedata->disable_wrstbi; } =20 - sec_irq_init(sec_pmic); + ret =3D sec_irq_init(sec_pmic); + if (ret) + return ret; =20 pm_runtime_set_active(sec_pmic->dev); =20 --=20 2.49.0.395.g12beb8f557-goog From nobody Thu Dec 18 22:20:07 2025 Received: from mail-ej1-f47.google.com (mail-ej1-f47.google.com [209.85.218.47]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id A3B301E9917 for ; Sun, 23 Mar 2025 22:39:39 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.47 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1742769584; cv=none; b=kqnG2lU6wuli7SufP7DpcpKOe7mqeYTr11YpcrEdTb9mCrS1gR8wu2KZSkpIR/McFzSOO3523NAuOfY+dsgZW5VeEz81CMJCe+2hs1W5Wv11/goBEuog4LhpDibdviTCP6ZmCiWXvoHaJNx8/duZRR1RNzEAn11mWlfCNAkXbtk= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1742769584; c=relaxed/simple; bh=fW8fGdBIj01Ce5nYKYOtr5RzqfYdqbt2xVnIKMnonN0=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=F5qIcVJs3tXaOXWsVEV2jUmE3HMnGXQZ8L5ldsIa1Mxj/XmIX99Vkd9nH7g+xdX+jWEHtUOngw5mXy9tDF5s5mGoy38sXwgg/kJzKmOqUVxlvSZD5sszNI8F2QpovX5mvSOZBreQJnGswq6kCdJWw2r23e4eJyMcR27exU6+Ut8= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=d29kBB7C; arc=none smtp.client-ip=209.85.218.47 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="d29kBB7C" Received: by mail-ej1-f47.google.com with SMTP id a640c23a62f3a-aaee2c5ee6eso588943266b.1 for ; Sun, 23 Mar 2025 15:39:39 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1742769575; x=1743374375; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=66I6A9BwKPx78r+x2ze+D3BdpB1AaTqz42y1bAQYxGU=; b=d29kBB7CUsXeKyp2ri3yZaOZ/ombMpQc5JXyAyIdzCvPla2rksYIx2WUPRSDvTeX6g 4FOpBEVwQ8I/DXrh6dkih3Ln4hvzKzaUUZy6ODpe/sJxVptogR5MS7Ct58NnKiFOlyze DXmb1qarJ29lSMNrptogUsvB9nBHUfyiga7xQQ+Ovj12sCs+bRme5fpI8RHT+i+Dnt+R fSG1fKK7t/bPR2i6ZNM9AXJoAbKM5LY8jxBI9B5jQyKJndIq8wAV5cvuetvD9na5+TCi yaMz70Y6ghIcdBCUMLDaoeMMTbRPTZJuZ2RYUUHn/mNGsslg+4u+kY5xZoV6hZd2x4I9 +iRA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1742769575; x=1743374375; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=66I6A9BwKPx78r+x2ze+D3BdpB1AaTqz42y1bAQYxGU=; b=h4jmt0IYsLsEvPGBLhJzn0G6p2nhu/UFles8Y8VCVHNRY7zOjlRvAP9Rv12W1fEaDZ ebrSnshMgFy4vPEVOG2TsZGVXk2+tVnc76OS2bY8EchmeEw/K6I/JExgfhcbFJI9+fYj dK8OD1ED9uMQw1YJrlJnG3U4FHVCUWIK0CZPyl2PhSCncGPnZAQuTQ06TZgsN0Du0v6l lDj7MghkCLOV4V8InM56+6zoS7bzhNtJPKxv1LLfcaD8v95u8UhGNpaO/1gqA0cEOYmV K1IxRdi2/now79HXGuaDtXWkd8QnXAkCa8UFsrwZi4NVNtA8Y7ptgW4hu0ohswwIpwbT Saog== X-Forwarded-Encrypted: i=1; AJvYcCUhKokSOVDAE4LtGS25+ZfiyFCf6bYHN8tBT0G90gvSggs26ocBQx9fHtuHgrBTp8W06NCm6LXRwjUeKjQ=@vger.kernel.org X-Gm-Message-State: AOJu0YwSXcWnms1Y6eENSI0lr6BheVSemt0RqNq/CeYco43ml88dzrgd dal/4dUVEadGhcyO8YvYIIXv4FSGc8aEKcQq5J0DTVNMd2ZwpMCV9OFxhsVtmiA= X-Gm-Gg: ASbGnctBMy/LNx639cIU4lekXVjRfR7aommA4eoGNttBy6O8Gb364iIjw26KYSBQ5W0 1xZhKEH7fT+OJO8jD0GX8DB2PRlZ7i2rz7ZmOhw5XO5TEC22c4g6XIv9AsAlmjlORMa2WccVQWw 7lNKgURKpfuTOpD+XSy7sSm4WOCz7Kc3N8JKN3M/MbHH5N21ZC7XCTNRVhuMJQxcOyzLkVG2mEe f7fuByUbAayHs746XJ538GZ9sBVd4tcoJ0m5SjzExc9rXGSVrZMeTaEJ4VBafydvQOJYtioZNBk qBp3S6rIkKtMPT5v8hgkg/AXUmn6V9wsL9LgOkF+4dS2vr0p/9C1nCwkGL85EMGAJ4ymnCqjD7W F/wCzf5ArWctALu9QnA1cdX5DHVmL X-Google-Smtp-Source: AGHT+IFOl2n2dt4259UO9Y2Hc/nB/vtxXxb3XEltGi4hCBG4hgPGKnJT2FEY0IZG076qDEvYKYdc8w== X-Received: by 2002:a17:907:7f0c:b0:ac3:c4a9:7f89 with SMTP id a640c23a62f3a-ac3f251f2a0mr846621366b.54.1742769575429; Sun, 23 Mar 2025 15:39:35 -0700 (PDT) Received: from puffmais.c.googlers.com (8.239.204.35.bc.googleusercontent.com. [35.204.239.8]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-ac3ef86e44dsm559686666b.31.2025.03.23.15.39.35 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 23 Mar 2025 15:39:35 -0700 (PDT) From: =?utf-8?q?Andr=C3=A9_Draszik?= Date: Sun, 23 Mar 2025 22:39:36 +0000 Subject: [PATCH 20/34] mfd: sec: rework platform data and regmap instantiating 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: <20250323-s2mpg10-v1-20-d08943702707@linaro.org> References: <20250323-s2mpg10-v1-0-d08943702707@linaro.org> In-Reply-To: <20250323-s2mpg10-v1-0-d08943702707@linaro.org> To: Krzysztof Kozlowski , Lee Jones , Rob Herring , Conor Dooley , Sylwester Nawrocki , Chanwoo Choi , Alim Akhtar , Michael Turquette , Stephen Boyd , Russell King , Catalin Marinas , Will Deacon , Alexandre Belloni Cc: Peter Griffin , Tudor Ambarus , Will McVicker , kernel-team@android.com, linux-kernel@vger.kernel.org, linux-samsung-soc@vger.kernel.org, devicetree@vger.kernel.org, linux-clk@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-rtc@vger.kernel.org, =?utf-8?q?Andr=C3=A9_Draszik?= X-Mailer: b4 0.14.2 Instead of a large open-coded switch statement, just add both regmap config and device type to the OF match data. This allows us to have all related information in one place, and avoids a long switch() statement. Signed-off-by: Andr=C3=A9 Draszik --- drivers/mfd/sec-i2c.c | 137 +++++++++++++++++++++++++---------------------= ---- 1 file changed, 68 insertions(+), 69 deletions(-) diff --git a/drivers/mfd/sec-i2c.c b/drivers/mfd/sec-i2c.c index 1bdd6ea36fcd9f56ea5ec1159a87723f4c09a0bd..9f33d4569cf73461c57d101f6ca= 1cf2b75f22b4d 100644 --- a/drivers/mfd/sec-i2c.c +++ b/drivers/mfd/sec-i2c.c @@ -20,11 +20,16 @@ #include #include #include -#include #include +#include #include #include "sec-core.h" =20 +struct sec_pmic_i2c_platform_data { + const struct regmap_config *regmap_cfg; + unsigned long device_type; +}; + static bool s2mpa01_volatile(struct device *dev, unsigned int reg) { switch (reg) { @@ -153,55 +158,23 @@ sec_pmic_i2c_parse_dt_pdata(struct device *dev, =20 static int sec_pmic_i2c_probe(struct i2c_client *client) { + const struct sec_pmic_i2c_platform_data *pdata; struct sec_pmic_probe_data probedata; - const struct regmap_config *regmap; - unsigned long device_type; struct regmap *regmap_pmic; =20 - sec_pmic_i2c_parse_dt_pdata(&client->dev, &probedata); - - device_type =3D (unsigned long)of_device_get_match_data(&client->dev); - - switch (device_type) { - case S2DOS05: - regmap =3D &s2dos05_regmap_config; - break; - case S2MPA01: - regmap =3D &s2mpa01_regmap_config; - break; - case S2MPS11X: - regmap =3D &s2mps11_regmap_config; - break; - case S2MPS13X: - regmap =3D &s2mps13_regmap_config; - break; - case S2MPS14X: - regmap =3D &s2mps14_regmap_config; - break; - case S2MPS15X: - regmap =3D &s2mps15_regmap_config; - break; - case S2MPU02: - regmap =3D &s2mpu02_regmap_config; - break; - case S2MPU05: - regmap =3D &s2mpu05_regmap_config; - break; - case S5M8767X: - regmap =3D &s5m8767_regmap_config; - break; - default: + pdata =3D device_get_match_data(&client->dev); + if (!pdata) return dev_err_probe(&client->dev, -ENODEV, - "Unsupported device type %lu\n", - device_type); - } + "Unsupported device type\n"); =20 - regmap_pmic =3D devm_regmap_init_i2c(client, regmap); + sec_pmic_i2c_parse_dt_pdata(&client->dev, &probedata); + + regmap_pmic =3D devm_regmap_init_i2c(client, pdata->regmap_cfg); if (IS_ERR(regmap_pmic)) return dev_err_probe(&client->dev, PTR_ERR(regmap_pmic), "regmap init failed\n"); =20 - return sec_pmic_probe(&client->dev, device_type, client->irq, + return sec_pmic_probe(&client->dev, pdata->device_type, client->irq, regmap_pmic, &probedata, client); } =20 @@ -210,35 +183,61 @@ static void sec_pmic_i2c_shutdown(struct i2c_client *= i2c) sec_pmic_shutdown(&i2c->dev); } =20 +static const struct sec_pmic_i2c_platform_data s2dos05_data =3D { + .regmap_cfg =3D &s2dos05_regmap_config, + .device_type =3D S2DOS05 +}; + +static const struct sec_pmic_i2c_platform_data s2mpa01_data =3D { + .regmap_cfg =3D &s2mpa01_regmap_config, + .device_type =3D S2MPA01, +}; + +static const struct sec_pmic_i2c_platform_data s2mps11_data =3D { + .regmap_cfg =3D &s2mps11_regmap_config, + .device_type =3D S2MPS11X, +}; + +static const struct sec_pmic_i2c_platform_data s2mps13_data =3D { + .regmap_cfg =3D &s2mps13_regmap_config, + .device_type =3D S2MPS13X, +}; + +static const struct sec_pmic_i2c_platform_data s2mps14_data =3D { + .regmap_cfg =3D &s2mps14_regmap_config, + .device_type =3D S2MPS14X, +}; + +static const struct sec_pmic_i2c_platform_data s2mps15_data =3D { + .regmap_cfg =3D &s2mps15_regmap_config, + .device_type =3D S2MPS15X, +}; + +static const struct sec_pmic_i2c_platform_data s2mpu02_data =3D { + .regmap_cfg =3D &s2mpu02_regmap_config, + .device_type =3D S2MPU02, +}; + +static const struct sec_pmic_i2c_platform_data s2mpu05_data =3D { + .regmap_cfg =3D &s2mpu05_regmap_config, + .device_type =3D S2MPU05, +}; + +static const struct sec_pmic_i2c_platform_data s5m8767_data =3D { + .regmap_cfg =3D &s5m8767_regmap_config, + .device_type =3D S5M8767X, +}; + static const struct of_device_id sec_pmic_i2c_of_match[] =3D { - { - .compatible =3D "samsung,s2dos05", - .data =3D (void *)S2DOS05, - }, { - .compatible =3D "samsung,s2mpa01-pmic", - .data =3D (void *)S2MPA01, - }, { - .compatible =3D "samsung,s2mps11-pmic", - .data =3D (void *)S2MPS11X, - }, { - .compatible =3D "samsung,s2mps13-pmic", - .data =3D (void *)S2MPS13X, - }, { - .compatible =3D "samsung,s2mps14-pmic", - .data =3D (void *)S2MPS14X, - }, { - .compatible =3D "samsung,s2mps15-pmic", - .data =3D (void *)S2MPS15X, - }, { - .compatible =3D "samsung,s2mpu02-pmic", - .data =3D (void *)S2MPU02, - }, { - .compatible =3D "samsung,s2mpu05-pmic", - .data =3D (void *)S2MPU05, - }, { - .compatible =3D "samsung,s5m8767-pmic", - .data =3D (void *)S5M8767X, - }, + { .compatible =3D "samsung,s2dos05", .data =3D &s2dos05_data, }, + { .compatible =3D "samsung,s2mpa01-pmic", .data =3D &s2mpa01_data, }, + { .compatible =3D "samsung,s2mps11-pmic", .data =3D &s2mps11_data, }, + { .compatible =3D "samsung,s2mps13-pmic", .data =3D &s2mps13_data, }, + { .compatible =3D "samsung,s2mps14-pmic", .data =3D &s2mps15_data, }, + { .compatible =3D "samsung,s2mps15-pmic", .data =3D &s2mps15_data, }, + { .compatible =3D "samsung,s2mpu02-pmic", .data =3D &s2mpu02_data, }, + { .compatible =3D "samsung,s2mpu05-pmic", .data =3D &s2mpu05_data, }, + { .compatible =3D "samsung,s5m8767-pmic", .data =3D &s5m8767_data, }, { }, }; MODULE_DEVICE_TABLE(of, sec_pmic_i2c_of_match); --=20 2.49.0.395.g12beb8f557-goog From nobody Thu Dec 18 22:20:07 2025 Received: from mail-ej1-f52.google.com (mail-ej1-f52.google.com [209.85.218.52]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 9D2261E835C for ; Sun, 23 Mar 2025 22:39:39 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.52 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1742769584; cv=none; b=t0hax6+F9u5ler0niNRhmR2xvsgeSVTfnelPIwBzonppzZxQpI5Gt68x3CavYZOMA29IJsY8zX2SnD1+ZhFU3TIhmp9U1g0SHd1pTVF2ifqCu6VThutC31If1RWdeGK/vIy3xxee6Am+4eWg1m5aOFVGeDDUuPzm2wA3hoiInzo= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1742769584; c=relaxed/simple; bh=1ZMTtP1qVi1tJ/1EB9YA8Rc5n3WQtvstvVzHXtqGWW4=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=RE0HCjwxsJGolb+2zlc+pVaO4ixHk3vOLhwn0dNoBt8uQItF+qGky9H85UJPOqbKiPVfWQPuC/eUUReVkLxoxmA2qi6M4T3sf/lXkKIwl+IuRuA4ObvbQkwBnle/q9vTT7PL6Msezc6NqUOccHcXukPqNaob7lzbS3t5cmuKCD0= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=dB1iE6ev; arc=none smtp.client-ip=209.85.218.52 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="dB1iE6ev" Received: by mail-ej1-f52.google.com with SMTP id a640c23a62f3a-ac3eb3fdd2eso560754666b.0 for ; Sun, 23 Mar 2025 15:39:39 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1742769576; x=1743374376; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=e3Twc2HyOCZXfu7bqwpcMcsjD+r2Ct4/gngHvFw4saQ=; b=dB1iE6ev4AD20dD52kXI24mJnY9pMKdKJJr9Io2uuhBIPGggpbTdxFgzL0ZV43MD8X XgKF8cXHjmqSdtBnF9NUSlRvReDBGwJpZOHtuE80ybI5r+NeQolA5eNw7g/050GRZ1m6 Rj6FU6bEbf8VyE86XaIYhN+xGUclkOHe1fLwiOT9rL9Jm1aunrUdogQRd6pLsLM6LC3s 48RmBgWW6MZlyHHTNtW73qR3XwPnXyEmQ2bxthQtNcW0c7w0bvYXd8S1Btb8ieOqkIol 0r/R99/L8ySiw45X79zfOkRV+stnUUToXkQjtGOXgSnM8Ubl1hPDcfin8glnWGgq97Tj Ym8w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1742769576; x=1743374376; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=e3Twc2HyOCZXfu7bqwpcMcsjD+r2Ct4/gngHvFw4saQ=; b=SXwLYMirsvE28G2R73S4Kw9ohQcfaPBugZ5f8tzttNRV2dL8E83z0XIBO9jTrMCjHU hJlCT0VpDqQzuDZp/iPhNJfb2rko7r5AFTnlSYO23yQqkzWdSQzaUtViqs+IJ3rUnO4m 3IxYoWKDxDSTNZXjMiszA0WsACx0A1/G3bFy1eQxNnzyFFNtkea7GqQ7cCu9W2UiT6eP USEp4PCdaXQarpeT3G6f+V1JU57RPo0Jql1EsFIlM8WkqwwCzo+q4A2RJ2OgnOjQVjNO +q2xjyXNac7grJ7YQnwY55q5ab61LhHsAYXLKJZ54H0YMp6gwiJht4evMSf4rTaU6wVO z7sA== X-Forwarded-Encrypted: i=1; AJvYcCUQQwtxDwz5YMACxxCufPYJZZ+53aiaC3ixPh23fO8nrpXhIKQdlAObvX3z3b88N2MmiK1RVv8FsOP/eyI=@vger.kernel.org X-Gm-Message-State: AOJu0Yye37VoMr2SZhcEN3A48PGMF5Vv/bHRv+sylNlbZwz51nh47Ry0 CWxBIzMJlojWknZBtGvmAWG0MyTHSbeQZJqcS8a9jgTbb5SYsu9NO96WN3OUdA8= X-Gm-Gg: ASbGncsqNe0c1fppTfYz/qCZ5NFspOdFTkxx9LTTubbbeaE50ner6DO6Q6voSSa8dSM VyhlhfLTPz7Fm4olSnIpYL3W2+7orFFGC+axAcs+2S3FzhEarqqBQTFkIO7u78wL09kI4A4m4iv pshOni5T73RhhMdZNRcV36r24dkvGQ5BE3oTcM0V682WXc/haoPSkZR8PMeM+FrntsLk8xe4e/n o+roSuyIh3XC+xbW4LqQyNwPscbvJ5ahNh1s0MVtbb9c85gAY1SH5cacpXOtV8tqJYh+AKm5Zvn bukxv1lzBpstCk4p3zdVwe3/ASAQy9a26KhN5JeIZ9vp0QPwmXNLm33DwLOJbk5+nr0TO5YlCSd Mn7CGsZGgVwcc6eXM0szNij2p2TlP X-Google-Smtp-Source: AGHT+IGQ8L6LLeC0zwpvMlguGkzr2gQM+jg2bpgKU+l+fqanTCryHJuZychWrZmnRDXRMuRhkKJXmw== X-Received: by 2002:a17:907:7f92:b0:abf:8f56:fe76 with SMTP id a640c23a62f3a-ac3f22b43c4mr975457666b.25.1742769576042; Sun, 23 Mar 2025 15:39:36 -0700 (PDT) Received: from puffmais.c.googlers.com (8.239.204.35.bc.googleusercontent.com. [35.204.239.8]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-ac3ef86e44dsm559686666b.31.2025.03.23.15.39.35 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 23 Mar 2025 15:39:35 -0700 (PDT) From: =?utf-8?q?Andr=C3=A9_Draszik?= Date: Sun, 23 Mar 2025 22:39:37 +0000 Subject: [PATCH 21/34] mfd: sec: change device_type to int 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: <20250323-s2mpg10-v1-21-d08943702707@linaro.org> References: <20250323-s2mpg10-v1-0-d08943702707@linaro.org> In-Reply-To: <20250323-s2mpg10-v1-0-d08943702707@linaro.org> To: Krzysztof Kozlowski , Lee Jones , Rob Herring , Conor Dooley , Sylwester Nawrocki , Chanwoo Choi , Alim Akhtar , Michael Turquette , Stephen Boyd , Russell King , Catalin Marinas , Will Deacon , Alexandre Belloni Cc: Peter Griffin , Tudor Ambarus , Will McVicker , kernel-team@android.com, linux-kernel@vger.kernel.org, linux-samsung-soc@vger.kernel.org, devicetree@vger.kernel.org, linux-clk@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-rtc@vger.kernel.org, =?utf-8?q?Andr=C3=A9_Draszik?= X-Mailer: b4 0.14.2 Now that sec-i2c doesn't match device type by pointer casting anymore, we can switch the device type from unsigned long to int easily. This saves a few bytes in struct sec_pmic_dev due to member alignment. Signed-off-by: Andr=C3=A9 Draszik --- drivers/mfd/sec-common.c | 8 ++++---- drivers/mfd/sec-core.h | 4 ++-- drivers/mfd/sec-i2c.c | 2 +- drivers/mfd/sec-irq.c | 5 ++--- include/linux/mfd/samsung/core.h | 2 +- 5 files changed, 10 insertions(+), 11 deletions(-) diff --git a/drivers/mfd/sec-common.c b/drivers/mfd/sec-common.c index bec8f93a03f7fd794beade563d73610534cb96b2..48d5c9a23230d0927b9dc610166= ae3f8f1aec924 100644 --- a/drivers/mfd/sec-common.c +++ b/drivers/mfd/sec-common.c @@ -129,8 +129,8 @@ static void sec_pmic_configure(struct sec_pmic_dev *sec= _pmic) } } =20 -int sec_pmic_probe(struct device *dev, unsigned long device_type, - unsigned int irq, struct regmap *regmap, +int sec_pmic_probe(struct device *dev, int device_type, unsigned int irq, + struct regmap *regmap, const struct sec_pmic_probe_data *probedata, struct i2c_client *client) { @@ -214,7 +214,7 @@ int sec_pmic_probe(struct device *dev, unsigned long de= vice_type, break; default: return dev_err_probe(sec_pmic->dev, -EINVAL, - "Unsupported device type %lu\n", + "Unsupported device type %d\n", sec_pmic->device_type); } ret =3D devm_mfd_add_devices(sec_pmic->dev, -1, sec_devs, num_sec_devs, @@ -248,7 +248,7 @@ void sec_pmic_shutdown(struct device *dev) * ignore the rest. */ dev_warn(sec_pmic->dev, - "Unsupported device %lu for manual power off\n", + "Unsupported device %d for manual power off\n", sec_pmic->device_type); return; } diff --git a/drivers/mfd/sec-core.h b/drivers/mfd/sec-core.h index 58e5b645f377cea5543a215c05957a2c49239a6f..34a801144a47bcdb5472ce5548b= cef0fe3f0926f 100644 --- a/drivers/mfd/sec-core.h +++ b/drivers/mfd/sec-core.h @@ -21,8 +21,8 @@ struct sec_pmic_probe_data { bool disable_wrstbi; }; =20 -int sec_pmic_probe(struct device *dev, unsigned long device_type, - unsigned int irq, struct regmap *regmap, +int sec_pmic_probe(struct device *dev, int device_type, unsigned int irq, + struct regmap *regmap, const struct sec_pmic_probe_data *probedata, struct i2c_client *client); void sec_pmic_shutdown(struct device *dev); diff --git a/drivers/mfd/sec-i2c.c b/drivers/mfd/sec-i2c.c index 9f33d4569cf73461c57d101f6ca1cf2b75f22b4d..760dd89b62a1639013c9e51b6e1= a7376f15ac504 100644 --- a/drivers/mfd/sec-i2c.c +++ b/drivers/mfd/sec-i2c.c @@ -27,7 +27,7 @@ =20 struct sec_pmic_i2c_platform_data { const struct regmap_config *regmap_cfg; - unsigned long device_type; + int device_type; }; =20 static bool s2mpa01_volatile(struct device *dev, unsigned int reg) diff --git a/drivers/mfd/sec-irq.c b/drivers/mfd/sec-irq.c index dc5560a0c496917e847a40295c53e3f762b60998..cf1add30dcd0ff1ad149b483fe4= 0edf82c2b57e1 100644 --- a/drivers/mfd/sec-irq.c +++ b/drivers/mfd/sec-irq.c @@ -450,10 +450,9 @@ static const struct regmap_irq_chip s5m8767_irq_chip = =3D { int sec_irq_init(struct sec_pmic_dev *sec_pmic) { int ret =3D 0; - int type =3D sec_pmic->device_type; const struct regmap_irq_chip *sec_irq_chip; =20 - switch (type) { + switch (sec_pmic->device_type) { case S5M8767X: sec_irq_chip =3D &s5m8767_irq_chip; break; @@ -485,7 +484,7 @@ int sec_irq_init(struct sec_pmic_dev *sec_pmic) break; default: return dev_err_probe(sec_pmic->dev, -EINVAL, - "Unsupported device type %lu\n", + "Unsupported device type %d\n", sec_pmic->device_type); } =20 diff --git a/include/linux/mfd/samsung/core.h b/include/linux/mfd/samsung/c= ore.h index c1102324172a9b6bd6072b5929a4866d6c9653fa..d785e101fe795a5d8f9cccf4ccc= 4232437e89416 100644 --- a/include/linux/mfd/samsung/core.h +++ b/include/linux/mfd/samsung/core.h @@ -67,7 +67,7 @@ struct sec_pmic_dev { struct regmap *regmap_pmic; struct i2c_client *i2c; =20 - unsigned long device_type; + int device_type; int irq; struct regmap_irq_chip_data *irq_data; }; --=20 2.49.0.395.g12beb8f557-goog From nobody Thu Dec 18 22:20:07 2025 Received: from mail-ej1-f53.google.com (mail-ej1-f53.google.com [209.85.218.53]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id BC8D01EB187 for ; Sun, 23 Mar 2025 22:39:40 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.53 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1742769590; cv=none; b=BgVhwgZheveuAwtAyUkFV4eaoTCVBf45CBMURZywM15ZeY/N5wjKfCGl4mfl9mdeddtGSe5G/80lhVsKLMvDmRGNjL7rohmKPEsLYjKmkY/O+fRMArncBjJ/lwX4KXTMfuX34Pzrd8PeW0CIOpQ7T42Gae1LgV37vmjQM6KF56g= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1742769590; c=relaxed/simple; bh=JzkdkeBjoD27fDThowAsLW8EIMXc8+ZDmGc3PzCcN1A=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=diJccS1vT3ECQcHklZCCYvJo4k84d9OnU9/xtlLqgd1yjrTT74jYKGNKMFe/9svrDY8ceSE6LEw+Um8D9foc8J6oPUiQP2ynCiw1Sn7kqiEQ6TQVMy5R9ixLJ188oMqHY+tgo15otMJr6EYGTiml0rRTDDS68wtvkb0V3eFHUrA= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=cWooRd0l; arc=none smtp.client-ip=209.85.218.53 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="cWooRd0l" Received: by mail-ej1-f53.google.com with SMTP id a640c23a62f3a-ac2a9a74d9cso776705266b.1 for ; Sun, 23 Mar 2025 15:39:40 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1742769577; x=1743374377; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=9Z8QgNOGdyxdSVBJRkjlahCtXXFXCQYtK5J/GCQaRwI=; b=cWooRd0loMHH/8nAfMH/P78842SkwtNP2Rw5WfIHBTZf48+RqfYbZ//N3gRauhHM0I ITeVKOLt9YV1EJruvPZdpRGmrR79yg8Q7h5TATc7g6RCk7lTYNs/NQnRbds4Vuh8EdxQ q3FBoNGeTVyHuN03HTzYHddpPEeIDvoRISuiGCtVROc76p3XYyVyUmoCWMlvjPjZVJm4 VTQkVnoYJVdg7E6ksa9mxXZM9X1KUm0QQm2Mu5flcs8QylKTU2PpBKbxRZoTXf4W0hLi xvw2ieHRVVqTd88zuf24XR+5Z2qnCDgQ+5coOJJnRfU0HBzpgso6R2nfX1QkRQr8qIcZ VHdA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1742769577; x=1743374377; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=9Z8QgNOGdyxdSVBJRkjlahCtXXFXCQYtK5J/GCQaRwI=; b=X5/gF3koLNbJjmDfzR+eHiYp3japcG4DvA6gYvSBUojewV4z5y3P3ZIw/Bmkm+m+SR LTLjJkL6Iag1CS/WpFaxyQVoSG/8aI0ZFgAoiCwD8NX671OnFjVTepkrjPEO0Wl1tvHF OkNC35A5EsOPGr80AKfo6/T3tCcJozd+8meAaik6v0hcflXiT/2xI5/2mvt5hUyL8kNf pP9JCQ7j7H12Au7JZ54Kl0GwVW8tePQLbs8Hp4ZHBZfkBWa4ff8BmJtUPleh9Q9jy+j/ 7OF0ujCeHZHFE+snF9PjQPawr0HCHGbtNIGDZU+D8+QfEu6lw1hlmy7ehtSo4GsSHH02 ZVfA== X-Forwarded-Encrypted: i=1; AJvYcCW9VApwZgYuDiQWJBNHKjKviWt8LqeKFDWGR9zKkmRFNe20TpCbl20HU4cCxoVTw7dI5jssZS6iZXz3sdU=@vger.kernel.org X-Gm-Message-State: AOJu0YyHi9HSTycwh+Ev1/63nRzMWzn4jY5xhFdTVz2YMHaIbxuYr9M6 BU1H2H4Iqw9igToFKAk6mGuPNidSAc1LqnfNdN4phIgtLrgkw6C8FlBPye53T10= X-Gm-Gg: ASbGncuibjcF2RRnElu24W0THNWzUHCU0z4wdIfojHdOOt5qCZsCoB8YW3L7ech906U xe6P7smHxLRk5CMVrd3BNzaeIKDsm1ytqDx+4RbvEPlBjN09RhKKyTWwCjhRVd4aWLXTIEQ157i c3dgBzjr5M9oDYYXzIXO1GedvPc6qz5LNyOROfe7qsCcmmYrhVwgPBHcP42RkZylEpgaeYg521y 4em1ulzEggU4YJLoC/Nonx2oUZ3FtNL3GBZq9qtsJqtQ29yFBKuKhfQCpbqIYDAbZd/DovHESk1 HIKgSZn8pd9+fFrY5KaZq3FkB8pq+oNTwo4m3FCegT8kaXhCi4MQfDibPhTAuPFb/JiM1jC/zrp uk4x2KP4O8ZZkUHLd3upBtiO06jUc X-Google-Smtp-Source: AGHT+IG1+wcYan4wIw2G87vBZ9kZLmE/4EPPJ6sSCzBbDr/N/WxDb6EjTSy7GHnKX+cpVY7JCrLHPw== X-Received: by 2002:a17:907:3f9b:b0:ac2:63a9:df0b with SMTP id a640c23a62f3a-ac3f251f206mr898500466b.35.1742769576773; Sun, 23 Mar 2025 15:39:36 -0700 (PDT) Received: from puffmais.c.googlers.com (8.239.204.35.bc.googleusercontent.com. [35.204.239.8]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-ac3ef86e44dsm559686666b.31.2025.03.23.15.39.36 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 23 Mar 2025 15:39:36 -0700 (PDT) From: =?utf-8?q?Andr=C3=A9_Draszik?= Date: Sun, 23 Mar 2025 22:39:38 +0000 Subject: [PATCH 22/34] mfd: sec: don't compare against NULL / 0 for errors, use ! 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: <20250323-s2mpg10-v1-22-d08943702707@linaro.org> References: <20250323-s2mpg10-v1-0-d08943702707@linaro.org> In-Reply-To: <20250323-s2mpg10-v1-0-d08943702707@linaro.org> To: Krzysztof Kozlowski , Lee Jones , Rob Herring , Conor Dooley , Sylwester Nawrocki , Chanwoo Choi , Alim Akhtar , Michael Turquette , Stephen Boyd , Russell King , Catalin Marinas , Will Deacon , Alexandre Belloni Cc: Peter Griffin , Tudor Ambarus , Will McVicker , kernel-team@android.com, linux-kernel@vger.kernel.org, linux-samsung-soc@vger.kernel.org, devicetree@vger.kernel.org, linux-clk@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-rtc@vger.kernel.org, =?utf-8?q?Andr=C3=A9_Draszik?= X-Mailer: b4 0.14.2 Follow general style and use if (!arg) instead of comparing against NULL. While at it, drop a useless init in sec-irq.c. Signed-off-by: Andr=C3=A9 Draszik --- drivers/mfd/sec-common.c | 2 +- drivers/mfd/sec-irq.c | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/drivers/mfd/sec-common.c b/drivers/mfd/sec-common.c index 48d5c9a23230d0927b9dc610166ae3f8f1aec924..90225b683fa083d4df7a20dfaa4= f47084051e250 100644 --- a/drivers/mfd/sec-common.c +++ b/drivers/mfd/sec-common.c @@ -140,7 +140,7 @@ int sec_pmic_probe(struct device *dev, int device_type,= unsigned int irq, int ret, num_sec_devs; =20 sec_pmic =3D devm_kzalloc(dev, sizeof(struct sec_pmic_dev), GFP_KERNEL); - if (sec_pmic =3D=3D NULL) + if (!sec_pmic) return -ENOMEM; =20 dev_set_drvdata(dev, sec_pmic); diff --git a/drivers/mfd/sec-irq.c b/drivers/mfd/sec-irq.c index cf1add30dcd0ff1ad149b483fe40edf82c2b57e1..084a40490979058b48640263ff5= cdb38765b9ff1 100644 --- a/drivers/mfd/sec-irq.c +++ b/drivers/mfd/sec-irq.c @@ -449,8 +449,8 @@ static const struct regmap_irq_chip s5m8767_irq_chip = =3D { =20 int sec_irq_init(struct sec_pmic_dev *sec_pmic) { - int ret =3D 0; const struct regmap_irq_chip *sec_irq_chip; + int ret; =20 switch (sec_pmic->device_type) { case S5M8767X: @@ -497,7 +497,7 @@ int sec_irq_init(struct sec_pmic_dev *sec_pmic) ret =3D devm_regmap_add_irq_chip(sec_pmic->dev, sec_pmic->regmap_pmic, sec_pmic->irq, IRQF_ONESHOT, 0, sec_irq_chip, &sec_pmic->irq_data); - if (ret !=3D 0) + if (ret) return dev_err_probe(sec_pmic->dev, ret, "Failed to add %s IRQ chip\n", sec_irq_chip->name); --=20 2.49.0.395.g12beb8f557-goog From nobody Thu Dec 18 22:20:07 2025 Received: from mail-ej1-f47.google.com (mail-ej1-f47.google.com [209.85.218.47]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 8AE791DE4F3 for ; Sun, 23 Mar 2025 22:39:40 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.47 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1742769587; cv=none; b=PliHSXm87ZIltzFWPZI/LwbmV9LUVLl7HIqjACsT923kaW9B7dppIj4Nl30gIjBp8RJnts471Q8/X1n7w3+lDYC8dCuN2Woo5snXdHMG2wRkT/l0tj/aPHpmXC2KxRuopPixwDFSwMjFPXKjk6pi6FMOxKhB0b2A5CvI1LyQJJQ= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1742769587; c=relaxed/simple; bh=ANmM5x/He+PE8PRBy0626kbsZRP5OO6JjTlgz9DtHdE=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=BkoAlFJ2KKl+5aKIFMjZWm+LYPp1NZnVa/Eam3XlchqwVPH4OniPp6qRTRsPx9SMtd+pI3+HglIue/hQkYA32r6HLiaX7YQqEdLIK9SxWbkZe1sFQ5w50Cja8/81HyNDGf6BqrPuJSZC7Swl3oMGKkuH/nVaXiF2/eZDTCjd27Q= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=dPpuqkEj; arc=none smtp.client-ip=209.85.218.47 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="dPpuqkEj" Received: by mail-ej1-f47.google.com with SMTP id a640c23a62f3a-ac2dfdf3c38so490803366b.3 for ; Sun, 23 Mar 2025 15:39:40 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1742769577; x=1743374377; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=DaAxKK1RdiX9Q5Rykt2k9FAZMFKWbpXqOP1fRVyJN0c=; b=dPpuqkEjp6AjZwnV94pKzTW+mqVLGpOch6NK0AK+r1n/E6VLnypm+gFsnPmJ3Qle1P rd4CX9OKK8BXaIzsFKYltvDnsT365lCGQkfcRGjv0H6Q13aVB/M2MchKrOOE8D1fUaBI PLWDXayWGudf1RZitnKWKNg2mMUqp8Tg+te8ZkfJ75/L6F2VAukjW61vXgdhIBlteLa0 UrNXkktpa5jWqlf7Rt5Fzr5lmjQj/1WLB6ZXOn973Y1HiDNgmuSxmYQtQkr2xTAHx1eH BUObqCLjhMZRkILYVcVY9Pf8cWLcVpy8YuNkUSYbjllxwLG4LaoZzhbWcAcB80MefG7P DxqA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1742769577; x=1743374377; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=DaAxKK1RdiX9Q5Rykt2k9FAZMFKWbpXqOP1fRVyJN0c=; b=gQ8wHfqjLEVj1eqX/QEadMfsM38X5iHSciKZLPxEdQevaCUag8iLThQ0wvYKiWogvR xmMPq7DPEvIFScJTNAZLSuj+AH7UakLkF+PylteM+OPBqcyU10P7GoHuX2ISFHt48tCd eDw33hZN19UmnYLXmwcCzzY+dKHiS54LlnrIKatXybE8bE8MW2p0+15oKP09d+A9DaRv 2Kf+DqI1SEXndEph9gI4AyyuHo7YrEZU37fJ7Ls8lUHU3gmO/qYqjHWWfJCDXd15TO6S ntkbhaoou/dFfQ+ZfTbAExZ/rmAK+fvk9ghfIPnjCX8WvZ8fT6ChlivYeJ45eV2mCKMp tDmA== X-Forwarded-Encrypted: i=1; AJvYcCUm14MhSpe/NOvGO4x1jgjzVDWweKdqFNCww35WH/63o4VMtwVIbMZ+SBr+zTNp1n6xIyij/SFKSJf1vM0=@vger.kernel.org X-Gm-Message-State: AOJu0Yx7HFju+eT8KSBdzmumJ+nruHsn6EfTAkzAZb4h9sQXj0Ziek+9 /0cMcobC8UfJmh+nL0NXjn/FZFl3nW5Yw3HMC6qHck5H44b7kxJHlh4xYdybSEg= X-Gm-Gg: ASbGnct5yvJfvb+GGFogg4kC69chiBQKbc+5nBBkg4OxpiCwwA/m6ihbjXm0LTQ75iD X0vfDXVpa6gqtEhfe0XFoHrGwucZ8qP/eQOVfhN8HMVtglC8rdlDunQXhAT64L4/sBCeEOfl7qY LWUjURRKunRnqcmuyS38hpiThoPBIrb4iW5KGWtv5UxmmuamFd8wcuuIjk51BWH4hs/00PjhRXa 58hqOxJcQ+sdLJrHPhHfR0fdjB4qnRDFHJBD21X3Xawe5OkG5YRNsiPhjikLFuXQOUrHdFJ4mAe gvF8NnTch9RvrkpitJumXITqHYCX5SQPkMJPhiRvhPNC4zOisYWMbHvrA6zV9LgP5VdHQEc87kV jZBxKmZ50Vmt0K8pucOoEf6prGeNY X-Google-Smtp-Source: AGHT+IEHAfiBfUB/nsPtj6YObLClfT3lIBDTn7g2B2otGsQqhwkiW+Sr35dDHIHATiseMaWDI7emPQ== X-Received: by 2002:a17:906:d7cb:b0:ac4:5fd:6e29 with SMTP id a640c23a62f3a-ac405fd6eaamr641943466b.26.1742769577350; Sun, 23 Mar 2025 15:39:37 -0700 (PDT) Received: from puffmais.c.googlers.com (8.239.204.35.bc.googleusercontent.com. [35.204.239.8]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-ac3ef86e44dsm559686666b.31.2025.03.23.15.39.36 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 23 Mar 2025 15:39:36 -0700 (PDT) From: =?utf-8?q?Andr=C3=A9_Draszik?= Date: Sun, 23 Mar 2025 22:39:39 +0000 Subject: [PATCH 23/34] mfd: sec: use sizeof(*var), not sizeof(struct type_of_var) 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: <20250323-s2mpg10-v1-23-d08943702707@linaro.org> References: <20250323-s2mpg10-v1-0-d08943702707@linaro.org> In-Reply-To: <20250323-s2mpg10-v1-0-d08943702707@linaro.org> To: Krzysztof Kozlowski , Lee Jones , Rob Herring , Conor Dooley , Sylwester Nawrocki , Chanwoo Choi , Alim Akhtar , Michael Turquette , Stephen Boyd , Russell King , Catalin Marinas , Will Deacon , Alexandre Belloni Cc: Peter Griffin , Tudor Ambarus , Will McVicker , kernel-team@android.com, linux-kernel@vger.kernel.org, linux-samsung-soc@vger.kernel.org, devicetree@vger.kernel.org, linux-clk@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-rtc@vger.kernel.org, =?utf-8?q?Andr=C3=A9_Draszik?= X-Mailer: b4 0.14.2 Using sizeof(*var) is generally preferred over using the size of its open-coded type when allocating memory. This helps avoiding bugs when the variable type changes but the memory allocation isn't updated, and it simplifies renaming of the struct if ever necessary. No functional change. Signed-off-by: Andr=C3=A9 Draszik --- drivers/mfd/sec-common.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/mfd/sec-common.c b/drivers/mfd/sec-common.c index 90225b683fa083d4df7a20dfaa4f47084051e250..5ebc77d7edacbc1b7a3debb9069= bb489109d57d7 100644 --- a/drivers/mfd/sec-common.c +++ b/drivers/mfd/sec-common.c @@ -139,7 +139,7 @@ int sec_pmic_probe(struct device *dev, int device_type,= unsigned int irq, struct sec_pmic_dev *sec_pmic; int ret, num_sec_devs; =20 - sec_pmic =3D devm_kzalloc(dev, sizeof(struct sec_pmic_dev), GFP_KERNEL); + sec_pmic =3D devm_kzalloc(dev, sizeof(*sec_pmic), GFP_KERNEL); if (!sec_pmic) return -ENOMEM; =20 --=20 2.49.0.395.g12beb8f557-goog From nobody Thu Dec 18 22:20:07 2025 Received: from mail-ej1-f52.google.com (mail-ej1-f52.google.com [209.85.218.52]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id B88731EA7FD for ; Sun, 23 Mar 2025 22:39:40 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.52 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1742769584; cv=none; b=sI41eTpUzPpaPm8p+rWJa2DwhgmrQ8c9R6hIkmVrISLJmMEfmYgIqEajAy+nli/DwHNJIwh7PO1XelHVn30l0JAzlbY1xYmXAJVDsA5IJia1qcZZNJqpBeLOTKR8JMCFaOZ95nOh20D/LMw8h9WCeX+cqknN8Dc1xxNUpUPALto= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1742769584; c=relaxed/simple; bh=/OXCrEd9LUPrpcKww+A0Kr+dM/K8OFFL8Z6qLEQS07c=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=ISj3eXPE/hf+djR5422w0p+R3+zGf2xDVs+wDa/bmreHVQFO3Eqr3REEJC7mNZgtnzi7Kr5e5x++Dx6ltgmDVwAxJTVBZuKZqD7mD2y8/bWZaUvj6g0BvUstJ9l8IjRzT3xl7TQCbnY2qWJzKSONY9/Ks7pq7OIO5GjdGVqyxp4= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=FjTp/XUQ; arc=none smtp.client-ip=209.85.218.52 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="FjTp/XUQ" Received: by mail-ej1-f52.google.com with SMTP id a640c23a62f3a-ac345bd8e13so673823766b.0 for ; Sun, 23 Mar 2025 15:39:40 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1742769578; x=1743374378; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=MtwK6mOFDS+3HmyCw+zVaAjjy/x9ridjjJuIuDjP5y8=; b=FjTp/XUQBGfShXnTuX3CmHx6Ok4Dut8B0ibb0vSOCJNDotKOrZEqOLCTWulKfPQHMZ 7hBe0vWxxKL+b3W85RBg4Y+aZAtHRK0VhQwukCv4lkIItO3e0FKC8hBNFTenmRTCJtKh iBPJ3q/PZv6i03YZku2cZpHUAp4bAY5M6UN2+2Rd/g0fbCWyLlDvXTELsHb5XNLPUNvy FrmYUCCX+qHaMXCut1EkE+K9pybz1E7KWJn6DDXDU3CrJkNtx1mob/HsKgZnYPOFTxEh jL8sXe1qYedjrbNwNBuWGJS+jXVyoKGwKq1b7bQk/W0FSLClmyE2lxT8bskJ1zyweLrW j9Tg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1742769578; x=1743374378; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=MtwK6mOFDS+3HmyCw+zVaAjjy/x9ridjjJuIuDjP5y8=; b=rGas5yE+9KSzM6s0pVtT3DL2sOkdfISub8VequPY0ggt4CG7S1ZBCi0YdfFjEDUlXl JuHMq8JI5WnxLIpHzysGvnvSL9i6n1VRQdL6bv7j2K5tmeks5+I23lv9nrEfwcHUFSpZ V7gX6VIq7r3r6hxIRX2j0OYgrHJhcPXuh0CUr+J1fGcrXynNuF60vbv4TSednbbDUDhF OPVKJJ0G8B3olCkNDEQc7TDFH8C1yYf3/ZRnSDsRECNxuiCLes0GzxOFhoRTv9wLviOG Cs0BRev4/egeAyBm5nwnXvCAuUtl9yQZ0GcCkoarsyygmJ82bHFV/qO08FT0dnjxeviz pB4Q== X-Forwarded-Encrypted: i=1; AJvYcCXa+DabwfCSZM7yEYgLo/0UxSu/J8xczmL3ZTJYMVG1gmOkG7KtA52W1RU/ZAoN76Ua3Z/loETqpFHp5dg=@vger.kernel.org X-Gm-Message-State: AOJu0YxNw8mexDvw2gFl0oPfSF0EaBdEhoELq3N9MVnzNfUf37o3NCK5 5WKn5QpIKNqtXAOOd8rbEqkfj59hdn1nDHM9CwM7Zp3irp3d68rYVAuBQcb0Xyo= X-Gm-Gg: ASbGncsGdsCMfkDd6va+jWZhDNn04ucxVvfBisIXZ/JzFwcpufpp31vA65FEX0svnCq /uJwLTMION7EHsT+x2F0JrMWo7UMAxLT5Bs2SkgI31B4rV1alQrapOlfBmj1Te6/51EeO0TlPNI hU/usuhSvxUVhmtFnsNHD++Ys9ela7uZYyjENC+KPMKeOBz7Fux+cjTog2YbPEUqY1m0iOHEPNZ y/ad7zoQhB+/7aLPujh+WSE9okckOZkOdWdNpbbOQVVHJLhtjxDYdkb4mXbtP9yJRam8+5Zfda4 AgxwUbKNXdDErl9mJzh9EEj5ZJYWH3DOD2028xaCri2YC1O8fPE2WhG8dUR6abHjcIyXB0rVppV pfYP0PQ6gk3RSN/gekR78Nnmt8r8r X-Google-Smtp-Source: AGHT+IGSiAkDAFqSZ3rMyd/nphhDlOTX1hDDy7CmBLGPyAROlgJin8tD1xxjQmFA6VfwByP2ficCYA== X-Received: by 2002:a17:906:f5a3:b0:ac2:bb97:e56f with SMTP id a640c23a62f3a-ac3f2559a5emr850721866b.53.1742769577873; Sun, 23 Mar 2025 15:39:37 -0700 (PDT) Received: from puffmais.c.googlers.com (8.239.204.35.bc.googleusercontent.com. [35.204.239.8]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-ac3ef86e44dsm559686666b.31.2025.03.23.15.39.37 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 23 Mar 2025 15:39:37 -0700 (PDT) From: =?utf-8?q?Andr=C3=A9_Draszik?= Date: Sun, 23 Mar 2025 22:39:40 +0000 Subject: [PATCH 24/34] mfd: sec: convert to using MFD_CELL macros 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: <20250323-s2mpg10-v1-24-d08943702707@linaro.org> References: <20250323-s2mpg10-v1-0-d08943702707@linaro.org> In-Reply-To: <20250323-s2mpg10-v1-0-d08943702707@linaro.org> To: Krzysztof Kozlowski , Lee Jones , Rob Herring , Conor Dooley , Sylwester Nawrocki , Chanwoo Choi , Alim Akhtar , Michael Turquette , Stephen Boyd , Russell King , Catalin Marinas , Will Deacon , Alexandre Belloni Cc: Peter Griffin , Tudor Ambarus , Will McVicker , kernel-team@android.com, linux-kernel@vger.kernel.org, linux-samsung-soc@vger.kernel.org, devicetree@vger.kernel.org, linux-clk@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-rtc@vger.kernel.org, =?utf-8?q?Andr=C3=A9_Draszik?= X-Mailer: b4 0.14.2 Use MFD_CELL macro helpers instead of open coding. This makes the code a bit shorter and more obvious. Signed-off-by: Andr=C3=A9 Draszik --- drivers/mfd/sec-common.c | 57 ++++++++++++++++++--------------------------= ---- 1 file changed, 21 insertions(+), 36 deletions(-) diff --git a/drivers/mfd/sec-common.c b/drivers/mfd/sec-common.c index 5ebc77d7edacbc1b7a3debb9069bb489109d57d7..77298e92642021679ea1eb95d33= 8907fec098aea 100644 --- a/drivers/mfd/sec-common.c +++ b/drivers/mfd/sec-common.c @@ -23,16 +23,13 @@ #include "sec-core.h" =20 static const struct mfd_cell s5m8767_devs[] =3D { - { .name =3D "s5m8767-pmic", }, - { .name =3D "s5m-rtc", }, - { - .name =3D "s5m8767-clk", - .of_compatible =3D "samsung,s5m8767-clk", - }, + MFD_CELL_NAME("s5m8767-pmic"), + MFD_CELL_NAME("s5m-rtc"), + MFD_CELL_OF("s5m8767-clk", NULL, NULL, 0, 0, "samsung,s5m8767-clk"), }; =20 static const struct mfd_cell s2dos05_devs[] =3D { - { .name =3D "s2dos05-regulator", }, + MFD_CELL_NAME("s2dos05-regulator"), }; =20 static const struct mfd_cell s2mpg10_devs[] =3D { @@ -44,53 +41,41 @@ static const struct mfd_cell s2mpg10_devs[] =3D { }; =20 static const struct mfd_cell s2mps11_devs[] =3D { - { .name =3D "s2mps11-regulator", }, - { .name =3D "s2mps14-rtc", }, - { - .name =3D "s2mps11-clk", - .of_compatible =3D "samsung,s2mps11-clk", - }, + MFD_CELL_NAME("s2mps11-regulator"), + MFD_CELL_NAME("s2mps14-rtc"), + MFD_CELL_OF("s2mps11-clk", NULL, NULL, 0, 0, "samsung,s2mps11-clk"), }; =20 static const struct mfd_cell s2mps13_devs[] =3D { - { .name =3D "s2mps13-regulator", }, - { .name =3D "s2mps13-rtc", }, - { - .name =3D "s2mps13-clk", - .of_compatible =3D "samsung,s2mps13-clk", - }, + MFD_CELL_NAME("s2mps13-regulator"), + MFD_CELL_NAME("s2mps13-rtc"), + MFD_CELL_OF("s2mps13-clk", NULL, NULL, 0, 0, "samsung,s2mps13-clk"), }; =20 static const struct mfd_cell s2mps14_devs[] =3D { - { .name =3D "s2mps14-regulator", }, - { .name =3D "s2mps14-rtc", }, - { - .name =3D "s2mps14-clk", - .of_compatible =3D "samsung,s2mps14-clk", - }, + MFD_CELL_NAME("s2mps14-regulator"), + MFD_CELL_NAME("s2mps14-rtc"), + MFD_CELL_OF("s2mps14-clk", NULL, NULL, 0, 0, "samsung,s2mps14-clk"), }; =20 static const struct mfd_cell s2mps15_devs[] =3D { - { .name =3D "s2mps15-regulator", }, - { .name =3D "s2mps15-rtc", }, - { - .name =3D "s2mps13-clk", - .of_compatible =3D "samsung,s2mps13-clk", - }, + MFD_CELL_NAME("s2mps15-regulator"), + MFD_CELL_NAME("s2mps15-rtc"), + MFD_CELL_OF("s2mps13-clk", NULL, NULL, 0, 0, "samsung,s2mps13-clk"), }; =20 static const struct mfd_cell s2mpa01_devs[] =3D { - { .name =3D "s2mpa01-pmic", }, - { .name =3D "s2mps14-rtc", }, + MFD_CELL_NAME("s2mpa01-pmic"), + MFD_CELL_NAME("s2mps14-rtc"), }; =20 static const struct mfd_cell s2mpu02_devs[] =3D { - { .name =3D "s2mpu02-regulator", }, + MFD_CELL_NAME("s2mpu02-regulator"), }; =20 static const struct mfd_cell s2mpu05_devs[] =3D { - { .name =3D "s2mpu05-regulator", }, - { .name =3D "s2mps15-rtc", }, + MFD_CELL_NAME("s2mpu05-regulator"), + MFD_CELL_NAME("s2mps15-rtc"), }; =20 static void sec_pmic_dump_rev(struct sec_pmic_dev *sec_pmic) --=20 2.49.0.395.g12beb8f557-goog From nobody Thu Dec 18 22:20:07 2025 Received: from mail-ej1-f52.google.com (mail-ej1-f52.google.com [209.85.218.52]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id C199C1EB199 for ; Sun, 23 Mar 2025 22:39:40 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.52 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1742769588; cv=none; b=gsCc93tQvgiTrw64JWUP0VAOJ2ddmETW1UcRv4C0bMn5P3aGtf8+xvQm6IVzamss1zyA5Tz2UE5dlZWoR3qQ359ggboI/B0Wr0910O5Dpor6CUS8w7tDFnbZAefwinIH2XsARAx2sAAWjtbkdOjRC0s9CGOZ00DBCzUitKv2FRk= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1742769588; c=relaxed/simple; bh=rERroOKEbXR4iJkRjuio22Srj7PD96PEiKn+3PUcyEc=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=XOyx6y2WBQYQKJPaUXorlfPRv9BidSYLiQEOxO1G7rPHlfVsB6XaqPBzekAA7e2QoQqSv4nC5/cUfpGo/N3IG/PBX1XEmlFm5coRozwE/LUCEtFfENlC8wURpER2/OZ/xxKkZ8rS3UDVVY+34smDtW7ZPLgj7HaWqdd7oaWuHSQ= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=aul/qAXL; arc=none smtp.client-ip=209.85.218.52 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="aul/qAXL" Received: by mail-ej1-f52.google.com with SMTP id a640c23a62f3a-ac41514a734so155209166b.2 for ; Sun, 23 Mar 2025 15:39:40 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1742769578; x=1743374378; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=/BfF02ZxGuJsRdlJKwmKz4A2829MjaBQR7CX37kNCLc=; b=aul/qAXLiqJtTrqfSAK4IAWdG06813j84+jE/YHiN2qAOyoeOf7CdKktrOGDF+6l3r OJA2GFN8HY9Z1kTiB055kERHxQGwY2W6CQsB51jq+W/VvHq+ceHTrOi1zlfQP0Xzmzez CY8oL91kFOiMKpExUKLpubCsI4vGsmlbCt4mBvL1h3otp1OK4J237xDMmzfU5+3ta3U0 owOYKJXR2YHt9XtRswjTc1hideWJwxo90JObFI1HamvRHeHB6F7w7Ci84TC76AppvBHT 5qAYvtwT5V2C40ex7b4D2ZK6eCUSA8pBpLD8V1uASmnSLmNaQD/S5Mmo47TCZUT/osSw jxbA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1742769578; x=1743374378; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=/BfF02ZxGuJsRdlJKwmKz4A2829MjaBQR7CX37kNCLc=; b=Myh4aMIK8ZKgNv2MKl1U/uIoo305Akfh8phKq9+/dPZwC/BdllQoTXE+vur8iqMkD/ L/qfW1XbqUthuxXNi80lqKUKPSKr+WzFT3feSg3jj0xQJTWv302PiMKg0pBiojt+rzg1 VPRTSPKaIAqX8XyPH3gZuzhLLb3d+NedBul1/CGlZTYuYk+AXW+pOi0F1t21ftYWtwVw EHNLwN18YBQ1E32gyHXn4pGbERH8Mu3IrKQ5sia9FZ2Im9YCuc35L7z5gszXdEbcu+93 ewYYMVw9lbTkXy1GbKCTP2VISAirj2huQQFlND/10WiIpsxgYFv54Yqzhm29vNohASqa oqug== X-Forwarded-Encrypted: i=1; AJvYcCUN4lM7NtdQQr0NhT7ZIUPWli9+LgXoGwb5eGc1j++Ybg9Ad0HFMb2flFg2ElZm2DrsrY+y5GtNVW4wTOo=@vger.kernel.org X-Gm-Message-State: AOJu0YxXUNcDJ46wzoJLSmgQhZxCazswChYylayqADSVE3WTKLiUiqPq cunHiLeacVm5/iPAMBnoH7k7zBPo4a3hAAT8WRM3pF/rmtLGsEdhY/WU9kOcZaU= X-Gm-Gg: ASbGncu6Xjh9mZmhcxbNxyKwC3WrLZa4qCQTiDZeRI9vndKzdGjj7cVAGc1gjVgleub dd6ytVvTSgBPBWi5/bdKVvh8foko01UbVUAsEyRdemMdM0wC6a2y3Pwiggy0bzuhYeLW3EDR1GG hil5nd0WW9DdSB8SRF5f6sEQDt/O21ZG+fg0t5d90U4MNszE1G6QUlcGvf+vCUyKhIDaI3vboLD WNaABsmkKhgD7ChQZKv62P2rmwq8St0Wav5IkW1luUxxUz+6KR8DckEG7CNtZjMzitsHxLO7jec lWA5XqD6yY5NvkEm5zbI1Q6pWgjC1ZNYz0K1+8wihEY3gkCwfkFFRgQWxMID9J1KohSyhyPywsI 1U/z/Ks5WoEovqPSHIvXKjQZFHT4s X-Google-Smtp-Source: AGHT+IHQc5/juISCIhGJYSWlIacU3J8GKRH2vNvv6JBixFTUW2yDMQT2CajObU4gYTu9Dfg9Nz5qJw== X-Received: by 2002:a17:907:e84c:b0:ac4:751:5f16 with SMTP id a640c23a62f3a-ac407515fefmr709698366b.30.1742769578426; Sun, 23 Mar 2025 15:39:38 -0700 (PDT) Received: from puffmais.c.googlers.com (8.239.204.35.bc.googleusercontent.com. [35.204.239.8]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-ac3ef86e44dsm559686666b.31.2025.03.23.15.39.37 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 23 Mar 2025 15:39:38 -0700 (PDT) From: =?utf-8?q?Andr=C3=A9_Draszik?= Date: Sun, 23 Mar 2025 22:39:41 +0000 Subject: [PATCH 25/34] mfd: sec: convert to using REGMAP_IRQ_REG() macros 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: <20250323-s2mpg10-v1-25-d08943702707@linaro.org> References: <20250323-s2mpg10-v1-0-d08943702707@linaro.org> In-Reply-To: <20250323-s2mpg10-v1-0-d08943702707@linaro.org> To: Krzysztof Kozlowski , Lee Jones , Rob Herring , Conor Dooley , Sylwester Nawrocki , Chanwoo Choi , Alim Akhtar , Michael Turquette , Stephen Boyd , Russell King , Catalin Marinas , Will Deacon , Alexandre Belloni Cc: Peter Griffin , Tudor Ambarus , Will McVicker , kernel-team@android.com, linux-kernel@vger.kernel.org, linux-samsung-soc@vger.kernel.org, devicetree@vger.kernel.org, linux-clk@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-rtc@vger.kernel.org, =?utf-8?q?Andr=C3=A9_Draszik?= X-Mailer: b4 0.14.2 Use REGMAP_IRQ_REG macro helpers instead of open coding. This makes the code a bit shorter and more obvious. Signed-off-by: Andr=C3=A9 Draszik --- drivers/mfd/sec-irq.c | 343 +++++++++++-----------------------------------= ---- 1 file changed, 75 insertions(+), 268 deletions(-) diff --git a/drivers/mfd/sec-irq.c b/drivers/mfd/sec-irq.c index 084a40490979058b48640263ff5cdb38765b9ff1..661b0b2d7b7e3da5df7085f468e= 6860a63c1016f 100644 --- a/drivers/mfd/sec-irq.c +++ b/drivers/mfd/sec-irq.c @@ -75,212 +75,68 @@ static const struct regmap_irq s2mpg10_irqs[] =3D { }; =20 static const struct regmap_irq s2mps11_irqs[] =3D { - [S2MPS11_IRQ_PWRONF] =3D { - .reg_offset =3D 0, - .mask =3D S2MPS11_IRQ_PWRONF_MASK, - }, - [S2MPS11_IRQ_PWRONR] =3D { - .reg_offset =3D 0, - .mask =3D S2MPS11_IRQ_PWRONR_MASK, - }, - [S2MPS11_IRQ_JIGONBF] =3D { - .reg_offset =3D 0, - .mask =3D S2MPS11_IRQ_JIGONBF_MASK, - }, - [S2MPS11_IRQ_JIGONBR] =3D { - .reg_offset =3D 0, - .mask =3D S2MPS11_IRQ_JIGONBR_MASK, - }, - [S2MPS11_IRQ_ACOKBF] =3D { - .reg_offset =3D 0, - .mask =3D S2MPS11_IRQ_ACOKBF_MASK, - }, - [S2MPS11_IRQ_ACOKBR] =3D { - .reg_offset =3D 0, - .mask =3D S2MPS11_IRQ_ACOKBR_MASK, - }, - [S2MPS11_IRQ_PWRON1S] =3D { - .reg_offset =3D 0, - .mask =3D S2MPS11_IRQ_PWRON1S_MASK, - }, - [S2MPS11_IRQ_MRB] =3D { - .reg_offset =3D 0, - .mask =3D S2MPS11_IRQ_MRB_MASK, - }, - [S2MPS11_IRQ_RTC60S] =3D { - .reg_offset =3D 1, - .mask =3D S2MPS11_IRQ_RTC60S_MASK, - }, - [S2MPS11_IRQ_RTCA1] =3D { - .reg_offset =3D 1, - .mask =3D S2MPS11_IRQ_RTCA1_MASK, - }, - [S2MPS11_IRQ_RTCA0] =3D { - .reg_offset =3D 1, - .mask =3D S2MPS11_IRQ_RTCA0_MASK, - }, - [S2MPS11_IRQ_SMPL] =3D { - .reg_offset =3D 1, - .mask =3D S2MPS11_IRQ_SMPL_MASK, - }, - [S2MPS11_IRQ_RTC1S] =3D { - .reg_offset =3D 1, - .mask =3D S2MPS11_IRQ_RTC1S_MASK, - }, - [S2MPS11_IRQ_WTSR] =3D { - .reg_offset =3D 1, - .mask =3D S2MPS11_IRQ_WTSR_MASK, - }, - [S2MPS11_IRQ_INT120C] =3D { - .reg_offset =3D 2, - .mask =3D S2MPS11_IRQ_INT120C_MASK, - }, - [S2MPS11_IRQ_INT140C] =3D { - .reg_offset =3D 2, - .mask =3D S2MPS11_IRQ_INT140C_MASK, - }, + REGMAP_IRQ_REG(S2MPS11_IRQ_PWRONF, 0, S2MPS11_IRQ_PWRONF_MASK), + REGMAP_IRQ_REG(S2MPS11_IRQ_PWRONR, 0, S2MPS11_IRQ_PWRONR_MASK), + REGMAP_IRQ_REG(S2MPS11_IRQ_JIGONBF, 0, S2MPS11_IRQ_JIGONBF_MASK), + REGMAP_IRQ_REG(S2MPS11_IRQ_JIGONBR, 0, S2MPS11_IRQ_JIGONBR_MASK), + REGMAP_IRQ_REG(S2MPS11_IRQ_ACOKBF, 0, S2MPS11_IRQ_ACOKBF_MASK), + REGMAP_IRQ_REG(S2MPS11_IRQ_ACOKBR, 0, S2MPS11_IRQ_ACOKBR_MASK), + REGMAP_IRQ_REG(S2MPS11_IRQ_PWRON1S, 0, S2MPS11_IRQ_PWRON1S_MASK), + REGMAP_IRQ_REG(S2MPS11_IRQ_MRB, 0, S2MPS11_IRQ_MRB_MASK), + + REGMAP_IRQ_REG(S2MPS11_IRQ_RTC60S, 1, S2MPS11_IRQ_RTC60S_MASK), + REGMAP_IRQ_REG(S2MPS11_IRQ_RTCA1, 1, S2MPS11_IRQ_RTCA1_MASK), + REGMAP_IRQ_REG(S2MPS11_IRQ_RTCA0, 1, S2MPS11_IRQ_RTCA0_MASK), + REGMAP_IRQ_REG(S2MPS11_IRQ_SMPL, 1, S2MPS11_IRQ_SMPL_MASK), + REGMAP_IRQ_REG(S2MPS11_IRQ_RTC1S, 1, S2MPS11_IRQ_RTC1S_MASK), + REGMAP_IRQ_REG(S2MPS11_IRQ_WTSR, 1, S2MPS11_IRQ_WTSR_MASK), + + REGMAP_IRQ_REG(S2MPS11_IRQ_INT120C, 2, S2MPS11_IRQ_INT120C_MASK), + REGMAP_IRQ_REG(S2MPS11_IRQ_INT140C, 2, S2MPS11_IRQ_INT140C_MASK), }; =20 static const struct regmap_irq s2mps14_irqs[] =3D { - [S2MPS14_IRQ_PWRONF] =3D { - .reg_offset =3D 0, - .mask =3D S2MPS11_IRQ_PWRONF_MASK, - }, - [S2MPS14_IRQ_PWRONR] =3D { - .reg_offset =3D 0, - .mask =3D S2MPS11_IRQ_PWRONR_MASK, - }, - [S2MPS14_IRQ_JIGONBF] =3D { - .reg_offset =3D 0, - .mask =3D S2MPS11_IRQ_JIGONBF_MASK, - }, - [S2MPS14_IRQ_JIGONBR] =3D { - .reg_offset =3D 0, - .mask =3D S2MPS11_IRQ_JIGONBR_MASK, - }, - [S2MPS14_IRQ_ACOKBF] =3D { - .reg_offset =3D 0, - .mask =3D S2MPS11_IRQ_ACOKBF_MASK, - }, - [S2MPS14_IRQ_ACOKBR] =3D { - .reg_offset =3D 0, - .mask =3D S2MPS11_IRQ_ACOKBR_MASK, - }, - [S2MPS14_IRQ_PWRON1S] =3D { - .reg_offset =3D 0, - .mask =3D S2MPS11_IRQ_PWRON1S_MASK, - }, - [S2MPS14_IRQ_MRB] =3D { - .reg_offset =3D 0, - .mask =3D S2MPS11_IRQ_MRB_MASK, - }, - [S2MPS14_IRQ_RTC60S] =3D { - .reg_offset =3D 1, - .mask =3D S2MPS11_IRQ_RTC60S_MASK, - }, - [S2MPS14_IRQ_RTCA1] =3D { - .reg_offset =3D 1, - .mask =3D S2MPS11_IRQ_RTCA1_MASK, - }, - [S2MPS14_IRQ_RTCA0] =3D { - .reg_offset =3D 1, - .mask =3D S2MPS11_IRQ_RTCA0_MASK, - }, - [S2MPS14_IRQ_SMPL] =3D { - .reg_offset =3D 1, - .mask =3D S2MPS11_IRQ_SMPL_MASK, - }, - [S2MPS14_IRQ_RTC1S] =3D { - .reg_offset =3D 1, - .mask =3D S2MPS11_IRQ_RTC1S_MASK, - }, - [S2MPS14_IRQ_WTSR] =3D { - .reg_offset =3D 1, - .mask =3D S2MPS11_IRQ_WTSR_MASK, - }, - [S2MPS14_IRQ_INT120C] =3D { - .reg_offset =3D 2, - .mask =3D S2MPS11_IRQ_INT120C_MASK, - }, - [S2MPS14_IRQ_INT140C] =3D { - .reg_offset =3D 2, - .mask =3D S2MPS11_IRQ_INT140C_MASK, - }, - [S2MPS14_IRQ_TSD] =3D { - .reg_offset =3D 2, - .mask =3D S2MPS14_IRQ_TSD_MASK, - }, + REGMAP_IRQ_REG(S2MPS14_IRQ_PWRONF, 0, S2MPS11_IRQ_PWRONF_MASK), + REGMAP_IRQ_REG(S2MPS14_IRQ_PWRONR, 0, S2MPS11_IRQ_PWRONR_MASK), + REGMAP_IRQ_REG(S2MPS14_IRQ_JIGONBF, 0, S2MPS11_IRQ_JIGONBF_MASK), + REGMAP_IRQ_REG(S2MPS14_IRQ_JIGONBR, 0, S2MPS11_IRQ_JIGONBR_MASK), + REGMAP_IRQ_REG(S2MPS14_IRQ_ACOKBF, 0, S2MPS11_IRQ_ACOKBF_MASK), + REGMAP_IRQ_REG(S2MPS14_IRQ_ACOKBR, 0, S2MPS11_IRQ_ACOKBR_MASK), + REGMAP_IRQ_REG(S2MPS14_IRQ_PWRON1S, 0, S2MPS11_IRQ_PWRON1S_MASK), + REGMAP_IRQ_REG(S2MPS14_IRQ_MRB, 0, S2MPS11_IRQ_MRB_MASK), + + REGMAP_IRQ_REG(S2MPS14_IRQ_RTC60S, 1, S2MPS11_IRQ_RTC60S_MASK), + REGMAP_IRQ_REG(S2MPS14_IRQ_RTCA1, 1, S2MPS11_IRQ_RTCA1_MASK), + REGMAP_IRQ_REG(S2MPS14_IRQ_RTCA0, 1, S2MPS11_IRQ_RTCA0_MASK), + REGMAP_IRQ_REG(S2MPS14_IRQ_SMPL, 1, S2MPS11_IRQ_SMPL_MASK), + REGMAP_IRQ_REG(S2MPS14_IRQ_RTC1S, 1, S2MPS11_IRQ_RTC1S_MASK), + REGMAP_IRQ_REG(S2MPS14_IRQ_WTSR, 1, S2MPS11_IRQ_WTSR_MASK), + + REGMAP_IRQ_REG(S2MPS14_IRQ_INT120C, 2, S2MPS11_IRQ_INT120C_MASK), + REGMAP_IRQ_REG(S2MPS14_IRQ_INT140C, 2, S2MPS11_IRQ_INT140C_MASK), + REGMAP_IRQ_REG(S2MPS14_IRQ_TSD, 2, S2MPS14_IRQ_TSD_MASK), }; =20 static const struct regmap_irq s2mpu02_irqs[] =3D { - [S2MPU02_IRQ_PWRONF] =3D { - .reg_offset =3D 0, - .mask =3D S2MPS11_IRQ_PWRONF_MASK, - }, - [S2MPU02_IRQ_PWRONR] =3D { - .reg_offset =3D 0, - .mask =3D S2MPS11_IRQ_PWRONR_MASK, - }, - [S2MPU02_IRQ_JIGONBF] =3D { - .reg_offset =3D 0, - .mask =3D S2MPS11_IRQ_JIGONBF_MASK, - }, - [S2MPU02_IRQ_JIGONBR] =3D { - .reg_offset =3D 0, - .mask =3D S2MPS11_IRQ_JIGONBR_MASK, - }, - [S2MPU02_IRQ_ACOKBF] =3D { - .reg_offset =3D 0, - .mask =3D S2MPS11_IRQ_ACOKBF_MASK, - }, - [S2MPU02_IRQ_ACOKBR] =3D { - .reg_offset =3D 0, - .mask =3D S2MPS11_IRQ_ACOKBR_MASK, - }, - [S2MPU02_IRQ_PWRON1S] =3D { - .reg_offset =3D 0, - .mask =3D S2MPS11_IRQ_PWRON1S_MASK, - }, - [S2MPU02_IRQ_MRB] =3D { - .reg_offset =3D 0, - .mask =3D S2MPS11_IRQ_MRB_MASK, - }, - [S2MPU02_IRQ_RTC60S] =3D { - .reg_offset =3D 1, - .mask =3D S2MPS11_IRQ_RTC60S_MASK, - }, - [S2MPU02_IRQ_RTCA1] =3D { - .reg_offset =3D 1, - .mask =3D S2MPS11_IRQ_RTCA1_MASK, - }, - [S2MPU02_IRQ_RTCA0] =3D { - .reg_offset =3D 1, - .mask =3D S2MPS11_IRQ_RTCA0_MASK, - }, - [S2MPU02_IRQ_SMPL] =3D { - .reg_offset =3D 1, - .mask =3D S2MPS11_IRQ_SMPL_MASK, - }, - [S2MPU02_IRQ_RTC1S] =3D { - .reg_offset =3D 1, - .mask =3D S2MPS11_IRQ_RTC1S_MASK, - }, - [S2MPU02_IRQ_WTSR] =3D { - .reg_offset =3D 1, - .mask =3D S2MPS11_IRQ_WTSR_MASK, - }, - [S2MPU02_IRQ_INT120C] =3D { - .reg_offset =3D 2, - .mask =3D S2MPS11_IRQ_INT120C_MASK, - }, - [S2MPU02_IRQ_INT140C] =3D { - .reg_offset =3D 2, - .mask =3D S2MPS11_IRQ_INT140C_MASK, - }, - [S2MPU02_IRQ_TSD] =3D { - .reg_offset =3D 2, - .mask =3D S2MPS14_IRQ_TSD_MASK, - }, + REGMAP_IRQ_REG(S2MPU02_IRQ_PWRONF, 0, S2MPS11_IRQ_PWRONF_MASK), + REGMAP_IRQ_REG(S2MPU02_IRQ_PWRONR, 0, S2MPS11_IRQ_PWRONR_MASK), + REGMAP_IRQ_REG(S2MPU02_IRQ_JIGONBF, 0, S2MPS11_IRQ_JIGONBF_MASK), + REGMAP_IRQ_REG(S2MPU02_IRQ_JIGONBR, 0, S2MPS11_IRQ_JIGONBR_MASK), + REGMAP_IRQ_REG(S2MPU02_IRQ_ACOKBF, 0, S2MPS11_IRQ_ACOKBF_MASK), + REGMAP_IRQ_REG(S2MPU02_IRQ_ACOKBR, 0, S2MPS11_IRQ_ACOKBR_MASK), + REGMAP_IRQ_REG(S2MPU02_IRQ_PWRON1S, 0, S2MPS11_IRQ_PWRON1S_MASK), + REGMAP_IRQ_REG(S2MPU02_IRQ_MRB, 0, S2MPS11_IRQ_MRB_MASK), + + REGMAP_IRQ_REG(S2MPU02_IRQ_RTC60S, 1, S2MPS11_IRQ_RTC60S_MASK), + REGMAP_IRQ_REG(S2MPU02_IRQ_RTCA1, 1, S2MPS11_IRQ_RTCA1_MASK), + REGMAP_IRQ_REG(S2MPU02_IRQ_RTCA0, 1, S2MPS11_IRQ_RTCA0_MASK), + REGMAP_IRQ_REG(S2MPU02_IRQ_SMPL, 1, S2MPS11_IRQ_SMPL_MASK), + REGMAP_IRQ_REG(S2MPU02_IRQ_RTC1S, 1, S2MPS11_IRQ_RTC1S_MASK), + REGMAP_IRQ_REG(S2MPU02_IRQ_WTSR, 1, S2MPS11_IRQ_WTSR_MASK), + + REGMAP_IRQ_REG(S2MPU02_IRQ_INT120C, 2, S2MPS11_IRQ_INT120C_MASK), + REGMAP_IRQ_REG(S2MPU02_IRQ_INT140C, 2, S2MPS11_IRQ_INT140C_MASK), + REGMAP_IRQ_REG(S2MPU02_IRQ_TSD, 2, S2MPS14_IRQ_TSD_MASK), }; =20 static const struct regmap_irq s2mpu05_irqs[] =3D { @@ -304,74 +160,25 @@ static const struct regmap_irq s2mpu05_irqs[] =3D { }; =20 static const struct regmap_irq s5m8767_irqs[] =3D { - [S5M8767_IRQ_PWRR] =3D { - .reg_offset =3D 0, - .mask =3D S5M8767_IRQ_PWRR_MASK, - }, - [S5M8767_IRQ_PWRF] =3D { - .reg_offset =3D 0, - .mask =3D S5M8767_IRQ_PWRF_MASK, - }, - [S5M8767_IRQ_PWR1S] =3D { - .reg_offset =3D 0, - .mask =3D S5M8767_IRQ_PWR1S_MASK, - }, - [S5M8767_IRQ_JIGR] =3D { - .reg_offset =3D 0, - .mask =3D S5M8767_IRQ_JIGR_MASK, - }, - [S5M8767_IRQ_JIGF] =3D { - .reg_offset =3D 0, - .mask =3D S5M8767_IRQ_JIGF_MASK, - }, - [S5M8767_IRQ_LOWBAT2] =3D { - .reg_offset =3D 0, - .mask =3D S5M8767_IRQ_LOWBAT2_MASK, - }, - [S5M8767_IRQ_LOWBAT1] =3D { - .reg_offset =3D 0, - .mask =3D S5M8767_IRQ_LOWBAT1_MASK, - }, - [S5M8767_IRQ_MRB] =3D { - .reg_offset =3D 1, - .mask =3D S5M8767_IRQ_MRB_MASK, - }, - [S5M8767_IRQ_DVSOK2] =3D { - .reg_offset =3D 1, - .mask =3D S5M8767_IRQ_DVSOK2_MASK, - }, - [S5M8767_IRQ_DVSOK3] =3D { - .reg_offset =3D 1, - .mask =3D S5M8767_IRQ_DVSOK3_MASK, - }, - [S5M8767_IRQ_DVSOK4] =3D { - .reg_offset =3D 1, - .mask =3D S5M8767_IRQ_DVSOK4_MASK, - }, - [S5M8767_IRQ_RTC60S] =3D { - .reg_offset =3D 2, - .mask =3D S5M8767_IRQ_RTC60S_MASK, - }, - [S5M8767_IRQ_RTCA1] =3D { - .reg_offset =3D 2, - .mask =3D S5M8767_IRQ_RTCA1_MASK, - }, - [S5M8767_IRQ_RTCA2] =3D { - .reg_offset =3D 2, - .mask =3D S5M8767_IRQ_RTCA2_MASK, - }, - [S5M8767_IRQ_SMPL] =3D { - .reg_offset =3D 2, - .mask =3D S5M8767_IRQ_SMPL_MASK, - }, - [S5M8767_IRQ_RTC1S] =3D { - .reg_offset =3D 2, - .mask =3D S5M8767_IRQ_RTC1S_MASK, - }, - [S5M8767_IRQ_WTSR] =3D { - .reg_offset =3D 2, - .mask =3D S5M8767_IRQ_WTSR_MASK, - }, + REGMAP_IRQ_REG(S5M8767_IRQ_PWRR, 0, S5M8767_IRQ_PWRR_MASK), + REGMAP_IRQ_REG(S5M8767_IRQ_PWRF, 0, S5M8767_IRQ_PWRF_MASK), + REGMAP_IRQ_REG(S5M8767_IRQ_PWR1S, 0, S5M8767_IRQ_PWR1S_MASK), + REGMAP_IRQ_REG(S5M8767_IRQ_JIGR, 0, S5M8767_IRQ_JIGR_MASK), + REGMAP_IRQ_REG(S5M8767_IRQ_JIGF, 0, S5M8767_IRQ_JIGF_MASK), + REGMAP_IRQ_REG(S5M8767_IRQ_LOWBAT2, 0, S5M8767_IRQ_LOWBAT2_MASK), + REGMAP_IRQ_REG(S5M8767_IRQ_LOWBAT1, 0, S5M8767_IRQ_LOWBAT1_MASK), + + REGMAP_IRQ_REG(S5M8767_IRQ_MRB, 1, S5M8767_IRQ_MRB_MASK), + REGMAP_IRQ_REG(S5M8767_IRQ_DVSOK2, 1, S5M8767_IRQ_DVSOK2_MASK), + REGMAP_IRQ_REG(S5M8767_IRQ_DVSOK3, 1, S5M8767_IRQ_DVSOK3_MASK), + REGMAP_IRQ_REG(S5M8767_IRQ_DVSOK4, 1, S5M8767_IRQ_DVSOK4_MASK), + + REGMAP_IRQ_REG(S5M8767_IRQ_RTC60S, 2, S5M8767_IRQ_RTC60S_MASK), + REGMAP_IRQ_REG(S5M8767_IRQ_RTCA1, 2, S5M8767_IRQ_RTCA1_MASK), + REGMAP_IRQ_REG(S5M8767_IRQ_RTCA2, 2, S5M8767_IRQ_RTCA2_MASK), + REGMAP_IRQ_REG(S5M8767_IRQ_SMPL, 2, S5M8767_IRQ_SMPL_MASK), + REGMAP_IRQ_REG(S5M8767_IRQ_RTC1S, 2, S5M8767_IRQ_RTC1S_MASK), + REGMAP_IRQ_REG(S5M8767_IRQ_WTSR, 2, S5M8767_IRQ_WTSR_MASK), }; =20 static const struct regmap_irq_chip s2mpg10_irq_chip =3D { --=20 2.49.0.395.g12beb8f557-goog From nobody Thu Dec 18 22:20:07 2025 Received: from mail-ej1-f46.google.com (mail-ej1-f46.google.com [209.85.218.46]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id CF91E1EB5D4 for ; Sun, 23 Mar 2025 22:39:42 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.46 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1742769587; cv=none; b=ujmdoOpXHVJIrcUV+wGiKyACz1E7UvRwuMWUYNJdTgOUbgJB21uJ2JaZZFYRX+ca+LenJK6YRKd/1QsM0NiK+FumfYFJxUORmbc0CI9Uj0SLnQJWvMOmdt6lTDQ22lDUzHPf2rRZjUU9e5K92C6R3T8EutZVt8B3bdk1YPIybqA= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1742769587; c=relaxed/simple; bh=6qUMnnrlHHUbgLCde/zD0N2oNsEsgjH7lEf2K9i3EHI=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=uobZufrpC5FoZh/GNFaKwrnNJt+t+F5zYd7GhRuAmwcQ/tPcAT+ANQqWnfx2iB2AlZ0RrmpWEhOuT/iaTFDvDznxOT0u0clOYug1+WUZ0n2Y4srVnXeJT/YKfnYu2OI8Qjmci/D4M6D+4y62fcSIK0z+X6OxvfgZf5Yx9vu035g= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=KHbphFSY; arc=none smtp.client-ip=209.85.218.46 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="KHbphFSY" Received: by mail-ej1-f46.google.com with SMTP id a640c23a62f3a-ac2a089fbbdso689706166b.1 for ; Sun, 23 Mar 2025 15:39:41 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1742769579; x=1743374379; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=DHaTbCMsBXEPy+wffmMjNGPy/wKjQsHouvVH+3/pTJ8=; b=KHbphFSYz2QnhFS2dmIqOpu+K5CNichuxCqtiNn6yUUuNlTOlfkUmuag1+FWiGgf83 jrfmeBlM7IGsZBEEx0n3r68Kco+iUvayvCZLPznhRebIelrrBk6Kuh1ExlFXJ4gupnVf tIVaee/3Tzsizl7n7kd9j+bW6bFkZ4s7AKpb6R09opWwGO4s6lGUUVB43NF4tcpAIwV3 /2vRKbc2PIh6FsOBs6eHyaqeZi4GwjBT7yKdyh2b/EQVFAdJjOvIXi3Z5RdmPd4Rb2Wy BxZZTVWEHOdTWmQAys6XzyjM5HOzheakCF3MrVvj7nSuL4K7pLwdfUV2tWnVZLida5CA 08Uw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1742769579; x=1743374379; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=DHaTbCMsBXEPy+wffmMjNGPy/wKjQsHouvVH+3/pTJ8=; b=MbxYE2wp0sA8FRLUz+upP6K3RTi93lLphzyI1God/cEdZu0aBKuInGp+4m6c3x4j8G rH6OqotpQF7Y3uMk+DN5dxfdYY1ftA3DoBpcaSudwVMl4y7LsAgL6kNO6U54t9sybwuy gv3F1iIp0nFkPdrh6HJF3UpNgL29A1Kk4QSQKc0MxA3KRI8DD3IRkKdEnESHUHQetuOu +23JU9RCp2Zuvq++mYC7ctOAju3u61Pq2jXMUEWVrhbmac7Fn8/ZAVMfsXxuM57zNN0x IC5fjxo6oBPvu8pZSS0myLbQTKSRerxG+uX9uAYXzQ7IZQXBxjhpTURJXd5vfC8O9IAV GpOQ== X-Forwarded-Encrypted: i=1; AJvYcCXTU6DJCgUTZms4hJOENltWRmb1a27ACahy+YKENRmmQhmS//47SJlxcf/zOgQqvSYqKXzDmqIFXa16uKQ=@vger.kernel.org X-Gm-Message-State: AOJu0Yw+nFOvgUWdsRGhif9xFwWITfOXCZXbXv2xoRUcSOBPs8ETuGP5 w270+odhgG5dMxalWUo4+3fZLydvesIrRBeb2Z9C1e8r6yHULQppU1bnErN+oPM= X-Gm-Gg: ASbGncve426b7Qwje/xaBRMadXF+b5kRIQfftmjc3PH6qJbMe4W9sjpTlC7x7iLayiB eG3Mg9uKpcIXyj/VLyAmvp+jSE63QY0eCDNi3+jJmjpknuAug+RncwROIU2wWmdtmZITmwxvOTk My87hqIzZUH9HrmVO9guiKEG6uPhhv0JrDL2iSlDwGvbwzcqcMuTP9WwTxcpw08o2KTyFfeY422 bqyCaLKVS/HbdJo1uoJZEjNNaYTUVYSXWhDXagANs57vwHXv5TkpVlYtxksZAFt0zjCPQiUt10h +n+qH/BiX3nXP/qv3MygHgpqSZtpRLYa7Zlu3dfGINiTZK6CdRrpapW8npEKTlxwdZ/I1X/hGtH j2XAviE/9FnFUvw0WG3n39JkFmxoG X-Google-Smtp-Source: AGHT+IE8DhyAI41xwJ1273XUXoV37Lt8dbT+04E2oAAFhJgLPXY5M4zmkgkE92YY51ZbbO2cYsb3Mg== X-Received: by 2002:a17:907:d84d:b0:ac1:e18d:a738 with SMTP id a640c23a62f3a-ac3f00af8famr1143082266b.3.1742769579059; Sun, 23 Mar 2025 15:39:39 -0700 (PDT) Received: from puffmais.c.googlers.com (8.239.204.35.bc.googleusercontent.com. [35.204.239.8]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-ac3ef86e44dsm559686666b.31.2025.03.23.15.39.38 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 23 Mar 2025 15:39:38 -0700 (PDT) From: =?utf-8?q?Andr=C3=A9_Draszik?= Date: Sun, 23 Mar 2025 22:39:42 +0000 Subject: [PATCH 26/34] clk: s2mps11: add support for S2MPG10 PMIC clock 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: <20250323-s2mpg10-v1-26-d08943702707@linaro.org> References: <20250323-s2mpg10-v1-0-d08943702707@linaro.org> In-Reply-To: <20250323-s2mpg10-v1-0-d08943702707@linaro.org> To: Krzysztof Kozlowski , Lee Jones , Rob Herring , Conor Dooley , Sylwester Nawrocki , Chanwoo Choi , Alim Akhtar , Michael Turquette , Stephen Boyd , Russell King , Catalin Marinas , Will Deacon , Alexandre Belloni Cc: Peter Griffin , Tudor Ambarus , Will McVicker , kernel-team@android.com, linux-kernel@vger.kernel.org, linux-samsung-soc@vger.kernel.org, devicetree@vger.kernel.org, linux-clk@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-rtc@vger.kernel.org, =?utf-8?q?Andr=C3=A9_Draszik?= X-Mailer: b4 0.14.2 Add support for Samsung's S2MPG10 PMIC clock, which is similar to the existing PMIC clocks supported by this driver. S2MPG10 has three clock outputs @ 32kHz: AP, peri1 and peri2. Signed-off-by: Andr=C3=A9 Draszik Acked-by: Stephen Boyd --- drivers/clk/clk-s2mps11.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/drivers/clk/clk-s2mps11.c b/drivers/clk/clk-s2mps11.c index 014db6386624071e173b5b940466301d2596400a..e86a762f80ccd7485a9f2a6f567= b81bafe119874 100644 --- a/drivers/clk/clk-s2mps11.c +++ b/drivers/clk/clk-s2mps11.c @@ -11,6 +11,7 @@ #include #include #include +#include #include #include #include @@ -138,6 +139,9 @@ static int s2mps11_clk_probe(struct platform_device *pd= ev) return -ENOMEM; =20 switch (hwid) { + case S2MPG10: + s2mps11_reg =3D S2MPG10_PMIC_RTCBUF; + break; case S2MPS11X: s2mps11_reg =3D S2MPS11_REG_RTC_CTRL; break; @@ -220,6 +224,7 @@ static void s2mps11_clk_remove(struct platform_device *= pdev) } =20 static const struct platform_device_id s2mps11_clk_id[] =3D { + { "s2mpg10-clk", S2MPG10}, { "s2mps11-clk", S2MPS11X}, { "s2mps13-clk", S2MPS13X}, { "s2mps14-clk", S2MPS14X}, @@ -240,6 +245,9 @@ MODULE_DEVICE_TABLE(platform, s2mps11_clk_id); */ static const struct of_device_id s2mps11_dt_match[] __used =3D { { + .compatible =3D "samsung,s2mpg10-clk", + .data =3D (void *)S2MPG10, + }, { .compatible =3D "samsung,s2mps11-clk", .data =3D (void *)S2MPS11X, }, { --=20 2.49.0.395.g12beb8f557-goog From nobody Thu Dec 18 22:20:07 2025 Received: from mail-ej1-f53.google.com (mail-ej1-f53.google.com [209.85.218.53]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 204691DF721 for ; Sun, 23 Mar 2025 22:39:41 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.53 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1742769587; cv=none; b=k2B40UCt60NAg3Zrujl5QSjtM/vg+2K9DVetjY24YyjwUfuS90n71ATjmR225RH2H3JnrjRfjTTpqg8CQHdGY6x1kiTEQhdB87oKiHEiG273V9kbMjLtuzDw5wwVdB7QYXG1RDECOzE8M0C+xSzqrUrH46GjM2ZLaM2GlTBm6/Y= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1742769587; c=relaxed/simple; bh=2SEWJHOQRVHtm1hZDIQV8G5h9Ihj/ZSId7FCsdh0cUI=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=gD+YxBqZLYL1LPigyMvL9x5Bud1sUWBJvmE0qPEOJmYmHf+16oNA89HlCXKIUA8LbkSlHHOkpsLpxCVwv7EMm7zHWszUWJmFvno3/8PZu0zsMt5qzXBnCow6zACJt5Vrg1BQbYE6m1HnKBY7Du9Dxx3syXgQf3M846WdwXkKjWk= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=DdIo1ocr; arc=none smtp.client-ip=209.85.218.53 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="DdIo1ocr" Received: by mail-ej1-f53.google.com with SMTP id a640c23a62f3a-ac2a089fbbdso689706966b.1 for ; Sun, 23 Mar 2025 15:39:41 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1742769580; x=1743374380; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=QFi/wIa2zliLVLaoNCXevujk62BEru73nW/QKRcDHsY=; b=DdIo1ocr6oN1WklNPRlM4v5d7MVDSh5ol+XMGFqEPShgIb3z9VDnKq7j64GpehYkeo V7Q5zwbhXHjozJGe31PomdnLA9V3GY3+tRPOhlJ+Qq0YjXtmb0jS/i+9iiPblgToXjk7 CwspOU3w2RNjPAhm2uf1eMc4CN1t1vlgIZHXsuh1N5QqHqQrZJklXZZXj+OrdnAXHR32 Tv3qChqTcYXJeUhcyLBcu4syBqo+0hEupi7kPld0J4sMva324Fg8HBJcZrA7zj3hyqwM qRqNrvtOvb0RTJ+RXY1S6zSzrzSimFoKBSn4Ld1lIRcRIJOyKX161RHBMqlC7QsR3yt3 8LQg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1742769580; x=1743374380; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=QFi/wIa2zliLVLaoNCXevujk62BEru73nW/QKRcDHsY=; b=HMjmRlbMu5169F502tAfC49kbQuP+/BAg9jlBpecJ9LXb/IWIohn9kLR0FMmkRgtZ2 63ofPJSJXF5Hy3nwg/ia3eVH6dqzEncFFwJ6gSakSPW+5DmKiEUgyrRxgNYe+SbFR2iP 5hZ2jFNjpBeDMh0zetqcse4z2FSaPcFpp6NR86vw38YCRLVRB8ludnofHRcNlDrqsX9f fXEwi76s7M5E79gTeiYZ0hQKj114ehlaB2uiRY8OtS+bT+C5ZT9Qi6FE1CA1owCcCPdu kpfyKVxFJOPjb9f1eZ+om/952MyTf24RuFvmjjttB4thR+748SO13d2D7jKNwD7TqNFT 8GoQ== X-Forwarded-Encrypted: i=1; AJvYcCUma/prmoabCdyT3MvBqab6XLo0LTd225u4ZJH3ZhV9hkjhxdRh5pqHTSPtuG3sov8vLbWZcT5coBs8zrs=@vger.kernel.org X-Gm-Message-State: AOJu0YwBJx3mxqKqpUiyAE49KQyB0KwHFTcc69GZKhOA+tdpz3tHJgTM Z+D4WaBbSE5Gpt+ONF9AP6JFDt6Mp8Nw2wDZSp7+YjcrpPwJsl7nlDVrtDlz6Fc= X-Gm-Gg: ASbGncsHhbM1scxKQz47x6eYo0/B32ymEo7q9jwBVqf+BTFs3IkL2iaTmE/E4ThKi7M BV530yckSW/RnCbZ0QhWlhGyj5QYa32suYsdleXVNrFQ1KjAGbVOeQpgQCw+J95M6AUQBDr5EOP rKORcS2LHFsAetFzl4kNKs1Hnon9NlArsBitYuZOtwEeti7B1N9OmFocoXY/gAMdWHtko/jncNq ysABBxCb5eJRwfnGB8qgdhnfP6NzyR3xugKHIF+P5oyS9nwIRhs4GNYt3QS3vSoUqNWgSlASRWZ iHu2JU0wbbPCDnIDnoti09SuSyNXl2pRxQGY0g7zTZfB+X+fWjEG8KQl55btQG8hjXLYSQojOgY Ibq52naSE9bStcOqYVqM3WCL0Y1no X-Google-Smtp-Source: AGHT+IExdWMeq50KMSeL2g8X5YzwdCsnSfpgrljF2A0N/7BkwT1ZoOB/F1xNUkswffcMZkq5HeqMZw== X-Received: by 2002:a17:907:86a7:b0:ac3:c6a2:a02d with SMTP id a640c23a62f3a-ac3cdb95075mr1563087566b.7.1742769579644; Sun, 23 Mar 2025 15:39:39 -0700 (PDT) Received: from puffmais.c.googlers.com (8.239.204.35.bc.googleusercontent.com. [35.204.239.8]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-ac3ef86e44dsm559686666b.31.2025.03.23.15.39.39 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 23 Mar 2025 15:39:39 -0700 (PDT) From: =?utf-8?q?Andr=C3=A9_Draszik?= Date: Sun, 23 Mar 2025 22:39:43 +0000 Subject: [PATCH 27/34] rtc: s5m: cache value of platform_get_device_id() during probe 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: <20250323-s2mpg10-v1-27-d08943702707@linaro.org> References: <20250323-s2mpg10-v1-0-d08943702707@linaro.org> In-Reply-To: <20250323-s2mpg10-v1-0-d08943702707@linaro.org> To: Krzysztof Kozlowski , Lee Jones , Rob Herring , Conor Dooley , Sylwester Nawrocki , Chanwoo Choi , Alim Akhtar , Michael Turquette , Stephen Boyd , Russell King , Catalin Marinas , Will Deacon , Alexandre Belloni Cc: Peter Griffin , Tudor Ambarus , Will McVicker , kernel-team@android.com, linux-kernel@vger.kernel.org, linux-samsung-soc@vger.kernel.org, devicetree@vger.kernel.org, linux-clk@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-rtc@vger.kernel.org, =?utf-8?q?Andr=C3=A9_Draszik?= X-Mailer: b4 0.14.2 platform_get_device_id() is called mulitple times during probe. This makes the code harder to read than necessary. Just get the ID once, which also trims the lengths of the lines involved. Signed-off-by: Andr=C3=A9 Draszik --- drivers/rtc/rtc-s5m.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/drivers/rtc/rtc-s5m.c b/drivers/rtc/rtc-s5m.c index db5c9b641277213aa1371776c63e2eda3f223465..31bdceac7aa245175a30eb13eaa= f1f52f70e22c2 100644 --- a/drivers/rtc/rtc-s5m.c +++ b/drivers/rtc/rtc-s5m.c @@ -637,6 +637,8 @@ static int s5m8767_rtc_init_reg(struct s5m_rtc_info *in= fo) static int s5m_rtc_probe(struct platform_device *pdev) { struct sec_pmic_dev *s5m87xx =3D dev_get_drvdata(pdev->dev.parent); + const struct platform_device_id * const id =3D + platform_get_device_id(pdev); struct s5m_rtc_info *info; struct i2c_client *i2c; const struct regmap_config *regmap_cfg; @@ -646,7 +648,7 @@ static int s5m_rtc_probe(struct platform_device *pdev) if (!info) return -ENOMEM; =20 - switch (platform_get_device_id(pdev)->driver_data) { + switch (id->driver_data) { case S2MPS15X: regmap_cfg =3D &s2mps14_rtc_regmap_config; info->regs =3D &s2mps15_rtc_regs; @@ -670,7 +672,7 @@ static int s5m_rtc_probe(struct platform_device *pdev) default: return dev_err_probe(&pdev->dev, -ENODEV, "Device type %lu is not supported by RTC driver\n", - platform_get_device_id(pdev)->driver_data); + id_entry->driver_data); } =20 i2c =3D devm_i2c_new_dummy_device(&pdev->dev, s5m87xx->i2c->adapter, @@ -686,7 +688,7 @@ static int s5m_rtc_probe(struct platform_device *pdev) =20 info->dev =3D &pdev->dev; info->s5m87xx =3D s5m87xx; - info->device_type =3D platform_get_device_id(pdev)->driver_data; + info->device_type =3D id->driver_data; =20 if (s5m87xx->irq_data) { info->irq =3D regmap_irq_get_virq(s5m87xx->irq_data, alarm_irq); --=20 2.49.0.395.g12beb8f557-goog From nobody Thu Dec 18 22:20:07 2025 Received: from mail-ej1-f47.google.com (mail-ej1-f47.google.com [209.85.218.47]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 727F51EB9E2 for ; Sun, 23 Mar 2025 22:39:43 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.47 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1742769591; cv=none; b=Q2ZL3SEMMAM+hIe5Q3b8CDXwcyhAIbQYBmc40xUC7MgPugL2X1KdMkIICFPMseJpUcECv8wNZPJRrWcfpCumPfC0b7z/uexBNkl5w6GcomikLSlwxF6fG4lTBLIGCWoRogy8rUgsozDNVKKTVfUqc2FKJjzp/rao8zfg03J3yEY= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1742769591; c=relaxed/simple; bh=ql91WCByk9BaVTq64rdM6MDbJhqEHhN99K9XM4Pc+7Q=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=bGZGLvBQPzObJ3qNvOsHsu+k6CQfjXaILYsEGH0xQqaJ54t4WBYspF776xFGYuSDMAn0tIFb1hyeaAJ/0kqvyT8UmR5dW8LGcb+PFtg2krWClBHswA59zs7jmHHeSDlEtRrwjkEyCUSR8ZBM8FilWSKWMoQd4oS9Ga0qZoE5hHU= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=ZBPk1M5A; arc=none smtp.client-ip=209.85.218.47 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="ZBPk1M5A" Received: by mail-ej1-f47.google.com with SMTP id a640c23a62f3a-ac29fd22163so654485266b.3 for ; Sun, 23 Mar 2025 15:39:43 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1742769580; x=1743374380; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=FsLbKQJRD9tdVXE8w0Z1fJ+0H6Ywqg5fj1IFaYNGdSQ=; b=ZBPk1M5AgRqdzmm45wxl9we6VgNhJ5Bw76zsi6vuh7NEQmSxKipeF8mftzaIicsVNG n2scCgYqggw9qtk6AneU3iJFwDqkPWSoF96OY5Ql5LASh2+QbEhzj/axfeJOctfiQHVI DYKJStdoEVeKXRrPGBc6oanEktDko+YvDxmQuGM33O5kh3y+q53GWuljQHdYL1OT+wDt 9RjrlsVoOgbDQX5OP5lGS2ovx+ZqeM1ytsRDWwvattvK02occhSnJvGfe4tM8DAy3Mwj opoTJACjjnzCDTwHYNvFn43iqTDrbsdTHln2cwFRYyijfnvLyqcKpLP2hHz8GN5kg3Sb Wetw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1742769580; x=1743374380; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=FsLbKQJRD9tdVXE8w0Z1fJ+0H6Ywqg5fj1IFaYNGdSQ=; b=MGwlHyrDEzngbbxrAJQnzpNzhh3dR8SRYu7Az0Lu3bU6nXihm1opIdtJbnJHpwaSXE PAWsB+RQwHo9l5AyvPvG6pDop1/Y3G2lapjTeDPicGZAVYJNr6TM9JpxgO+HPeU3BcbA FiGueFHow7O1eU91hb6FgJr8sovTLUK6zUb+XfI06w0adoDIZ6rj5M4u3SFz4HQTW0z/ hMYWo2i5pW1rjasJHxq2l9TRrE91t5OTB3njGN5MIq1pUrLmiCIIxkYXHjWUXWHf0+up 2ByQfyCbKk70ylrgqRjHF/fRE4c0jF0F3w70zEFp5vhprSQT9Zwvl+iTlXOk/nvD1IwW 250w== X-Forwarded-Encrypted: i=1; AJvYcCWK+XQcTFlmtwM/mDvMWt8r+QXVaRcUR0ZGxjh/Hb2oiYGW9kNWKoMnhUylS/Zp7rxFDv708bDi63RI0w4=@vger.kernel.org X-Gm-Message-State: AOJu0Yxx7DUN7norgUQrcz5yHYvWRQ26MViNg5SjfLuecTX4/L7v9YQ9 PKS8feH3Iz6GufIch2Aq6gnTClVXQfSPbOE2P/ZvcoHKNdjrKic5DCUvinjVqmc= X-Gm-Gg: ASbGncsph4LEMLZMPefCrR0jEjBNvitrfKJILM9Au+ek8uICEZKQrUMkQ/hXEmnfszt 2NVAb7aU3mydppZBsaxLBUn0osCCOBoosjRZPUogvWqG39QVvjYcOEPG9PzZKljvwrYkZ6eF/Zp R9DoaPIS1ZAf8jfgdsIj8ZxgGXlXj95l8kzmPuDpJOD3wxrfZRWsdNZcM78OooPTkF5jb6/sgI9 1lpw6rv38NyHDAG1O91qNR16+xW+AKL7OVj5TlxKUisDY+87Q55XYI18ZK+eGgysfzYYrif0BZb H8QlZtzDO6YJtP/PsMzu9dZN+Yemn4bjcsJ8h0MBK5os/N07KYx66DQpvtvs/Xu/GM6NEIcHixh diRMq/2s2+3Gf50C4acuJXDtNZPhx X-Google-Smtp-Source: AGHT+IGvOa3XAeKcwT9Vr0T+ZVATFp5TvHs+FtoKfari/ok1W7HicIpcGqvAlFVuwPQSyDN+Jo9fHw== X-Received: by 2002:a17:907:8694:b0:ac3:b277:2474 with SMTP id a640c23a62f3a-ac3f2285fcdmr1145400566b.28.1742769580258; Sun, 23 Mar 2025 15:39:40 -0700 (PDT) Received: from puffmais.c.googlers.com (8.239.204.35.bc.googleusercontent.com. [35.204.239.8]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-ac3ef86e44dsm559686666b.31.2025.03.23.15.39.39 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 23 Mar 2025 15:39:39 -0700 (PDT) From: =?utf-8?q?Andr=C3=A9_Draszik?= Date: Sun, 23 Mar 2025 22:39:44 +0000 Subject: [PATCH 28/34] rtc: s5m: prepare for external regmap 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: <20250323-s2mpg10-v1-28-d08943702707@linaro.org> References: <20250323-s2mpg10-v1-0-d08943702707@linaro.org> In-Reply-To: <20250323-s2mpg10-v1-0-d08943702707@linaro.org> To: Krzysztof Kozlowski , Lee Jones , Rob Herring , Conor Dooley , Sylwester Nawrocki , Chanwoo Choi , Alim Akhtar , Michael Turquette , Stephen Boyd , Russell King , Catalin Marinas , Will Deacon , Alexandre Belloni Cc: Peter Griffin , Tudor Ambarus , Will McVicker , kernel-team@android.com, linux-kernel@vger.kernel.org, linux-samsung-soc@vger.kernel.org, devicetree@vger.kernel.org, linux-clk@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-rtc@vger.kernel.org, =?utf-8?q?Andr=C3=A9_Draszik?= X-Mailer: b4 0.14.2 The Samsung S2MPG10 PMIC is not connected via I2C as this driver assumes, hence this driver's current approach of creating an I2C-based regmap doesn't work for it, and this driver should use the regmap provided by the parent (core) driver instead for that PMIC. To prepare this driver for s2mpg support, restructure the code to only create a regmap if one isn't provided by the parent. No functional changes, since the parent doesn't provide a regmap for any of the PMICs currently supported by this driver. Having this change separate will simply make the addition of S2MPG10 support more self-contained, without additional restructuring. Signed-off-by: Andr=C3=A9 Draszik --- drivers/rtc/rtc-s5m.c | 83 ++++++++++++++++++++++++++++-------------------= ---- 1 file changed, 46 insertions(+), 37 deletions(-) diff --git a/drivers/rtc/rtc-s5m.c b/drivers/rtc/rtc-s5m.c index 31bdceac7aa245175a30eb13eaaf1f52f70e22c2..86ccf666c68059408907c97f264= 7716ffaad10c6 100644 --- a/drivers/rtc/rtc-s5m.c +++ b/drivers/rtc/rtc-s5m.c @@ -640,51 +640,60 @@ static int s5m_rtc_probe(struct platform_device *pdev) const struct platform_device_id * const id =3D platform_get_device_id(pdev); struct s5m_rtc_info *info; - struct i2c_client *i2c; - const struct regmap_config *regmap_cfg; int ret, alarm_irq; =20 info =3D devm_kzalloc(&pdev->dev, sizeof(*info), GFP_KERNEL); if (!info) return -ENOMEM; =20 - switch (id->driver_data) { - case S2MPS15X: - regmap_cfg =3D &s2mps14_rtc_regmap_config; - info->regs =3D &s2mps15_rtc_regs; - alarm_irq =3D S2MPS14_IRQ_RTCA0; - break; - case S2MPS14X: - regmap_cfg =3D &s2mps14_rtc_regmap_config; - info->regs =3D &s2mps14_rtc_regs; - alarm_irq =3D S2MPS14_IRQ_RTCA0; - break; - case S2MPS13X: - regmap_cfg =3D &s2mps14_rtc_regmap_config; - info->regs =3D &s2mps13_rtc_regs; - alarm_irq =3D S2MPS14_IRQ_RTCA0; - break; - case S5M8767X: - regmap_cfg =3D &s5m_rtc_regmap_config; - info->regs =3D &s5m_rtc_regs; - alarm_irq =3D S5M8767_IRQ_RTCA1; - break; - default: - return dev_err_probe(&pdev->dev, -ENODEV, - "Device type %lu is not supported by RTC driver\n", - id_entry->driver_data); - } + info->regmap =3D dev_get_regmap(pdev->dev.parent, "rtc"); + if (!info->regmap) { + const struct regmap_config *regmap_cfg; + struct i2c_client *i2c; =20 - i2c =3D devm_i2c_new_dummy_device(&pdev->dev, s5m87xx->i2c->adapter, - RTC_I2C_ADDR); - if (IS_ERR(i2c)) - return dev_err_probe(&pdev->dev, PTR_ERR(i2c), - "Failed to allocate I2C for RTC\n"); + switch (id->driver_data) { + case S2MPS15X: + regmap_cfg =3D &s2mps14_rtc_regmap_config; + info->regs =3D &s2mps15_rtc_regs; + alarm_irq =3D S2MPS14_IRQ_RTCA0; + break; + case S2MPS14X: + regmap_cfg =3D &s2mps14_rtc_regmap_config; + info->regs =3D &s2mps14_rtc_regs; + alarm_irq =3D S2MPS14_IRQ_RTCA0; + break; + case S2MPS13X: + regmap_cfg =3D &s2mps14_rtc_regmap_config; + info->regs =3D &s2mps13_rtc_regs; + alarm_irq =3D S2MPS14_IRQ_RTCA0; + break; + case S5M8767X: + regmap_cfg =3D &s5m_rtc_regmap_config; + info->regs =3D &s5m_rtc_regs; + alarm_irq =3D S5M8767_IRQ_RTCA1; + break; + default: + return dev_err_probe(&pdev->dev, -ENODEV, + "Unsupported device type %lu\n", + id->driver_data); + } =20 - info->regmap =3D devm_regmap_init_i2c(i2c, regmap_cfg); - if (IS_ERR(info->regmap)) - return dev_err_probe(&pdev->dev, PTR_ERR(info->regmap), - "Failed to allocate RTC register map\n"); + i2c =3D devm_i2c_new_dummy_device(&pdev->dev, + s5m87xx->i2c->adapter, + RTC_I2C_ADDR); + if (IS_ERR(i2c)) + return dev_err_probe(&pdev->dev, PTR_ERR(i2c), + "Failed to allocate I2C\n"); + + info->regmap =3D devm_regmap_init_i2c(i2c, regmap_cfg); + if (IS_ERR(info->regmap)) + return dev_err_probe(&pdev->dev, PTR_ERR(info->regmap), + "Failed to allocate regmap\n"); + } else { + return dev_err_probe(&pdev->dev, -ENODEV, + "Unsupported device type %lu\n", + id->driver_data); + } =20 info->dev =3D &pdev->dev; info->s5m87xx =3D s5m87xx; --=20 2.49.0.395.g12beb8f557-goog From nobody Thu Dec 18 22:20:07 2025 Received: from mail-ej1-f54.google.com (mail-ej1-f54.google.com [209.85.218.54]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 4CF7D1DDC3B for ; Sun, 23 Mar 2025 22:39:44 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.54 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1742769590; cv=none; b=eskJXcqPEqEVkEFo0SEhNhKahak/0PSyULuclmI0fCLK0TsbOMXualwPoVtngtq9saaUndi42cL7cgrWxceR9arR48TgCOwnQXjpILHIeFiCudf//Dw+MFMuNN4CMVJ0SFkbQOcJNlZaWTRw8/WmhFMFc8Iycy1gkAc+TqWeZn4= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1742769590; c=relaxed/simple; bh=gi+3rlDXe5kKfSGekflTCeFrSwC0U2KR+A6Bz3gIU0Y=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=L8SqKL7uhe6eAmU1iPi74no332K7mACS/uwNQpwUmGS7y3A8RmUsYs51gDb2upXEzJfcLGrj6gr0Pbq3yzrkcBIIO7X6vqwr9TbZswI9JGP8gce+ewKg+1oeqtw9P8s/lc3jyYuD7RhcXLhDpHRKADSXgWnO0I+fO0fcB/qJF14= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=Up+JYB2B; arc=none smtp.client-ip=209.85.218.54 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="Up+JYB2B" Received: by mail-ej1-f54.google.com with SMTP id a640c23a62f3a-ac2a9a74d9cso776717266b.1 for ; Sun, 23 Mar 2025 15:39:42 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1742769581; x=1743374381; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=6v0MXm/qoCpI5RYf5jdk2hz7kULwB27Fo7iOKKWRDMg=; b=Up+JYB2BmWbMbhdAFFYN1gWPXckZ778QxSzpqP5Pft5pkQ7UFYdxRh6bPTYtefZG3e 2aPL4XAp50EJR2pYuR6QtA8lWkP7HV+PJsh6ahjOXkr+4Kpg6+/YM4+vOcLEK3th361i XodKrbJ0oln9Vm5qtn6gBMFPBBvm9CNkEOmQVFIqf2m8TpNBKQLq90kV1b5OXewJFP/h jb58BUDBd6fTFvr8OGzQxJSwCnarJZVQttlDv3srOjnG0dsVqklgIcbGD6DUBczqJXqE 9vzVcqec/5P60Ei+ftd2H4DcyRIBHXF3CA/V4cLgsSKuRRj1OpCdCKGwhS9xK+LfdgDF fMSg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1742769581; x=1743374381; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=6v0MXm/qoCpI5RYf5jdk2hz7kULwB27Fo7iOKKWRDMg=; b=cZZjaL1zf3OX4nAftvLO5T4eS2iKOEJ9F+DpLzBlN60l4GmjDLVxq1U+bicNxsWR69 fydrUouo+M5Wi3JdrVYoHVIipPieZC2+KXVmRX3raASHmQn/48soFzzNRbFG5uvzV6Qz jgvmrek1lGQCSD7LQEyKd9/CXqqeVf6UUxamZicBMrNZD8JRw/sfXbej5waIhdEmXzrN sTgZQpKw6h7FBmAwmncvT/8TCg8jWuBdm+fxW7dUOQYHZ8VwiJhyIBCSr8U/pKTZ+nVq acuC0CRo+DGI4j+qKqxEEgEIpXLryW7559DuLVGxH+6TY2JNIVQipV1CrjZEVQtqiFwP taoQ== X-Forwarded-Encrypted: i=1; AJvYcCXe6izziZVFwr0QhzhQApxaJOGHUJRdzSnnuH57pMbtpyt6IvkokpSDOOWM78EqzwMjZBRr7Q3ZwbFSkKk=@vger.kernel.org X-Gm-Message-State: AOJu0YxkYXl9OlzDxTKUIx7ywyBgZqxLFO4qbIVSH4BjKRD3JkWZx5c4 dYEcVn+g64f4MG7tQ0iKZDflIERTa06oHngqFZ3qWpfbJ9vSXg1NEHl8mnuK/ao= X-Gm-Gg: ASbGnctmaxq/fsTbXel+TQK03c2mvNGNh0IiM1PGUSO2PNIJj68De04tNLfgkhRivnV 3u7b3H7+mpkog4k7j66EgkMVzDvzchiec6eZ64fwGlo4upZqYxjvOkaN7L8oUMaqUI2ZY5uoZtS ZMHJZItN/keonfuytDTEiELjLT+cdSw0ZITsgh2KPt2ZISodIeXtUyE80lMjUWDmij2DF+Qorh6 zJ7LdMblJDQZuSAGVQ84mFNNVyZ68u1xekPJmDkOi1qVr/r6h+3WzsrDBRpa+HiDW6mbXxEs6E9 yVpX64TO32icBROL3mxje6LfSv9zIOik+iwvxXAF2qk1Jl8IR3bqTEL0bhFf0vnBHPdPTzbGryS zmeEoHnxh3Zn2xeh9kDBTzzW8q4Zn X-Google-Smtp-Source: AGHT+IHcUN/NKgiZ0QEWiaH6bbGLjnVaJs4ldC7bKImYRP7M3qFuMVyRO0tg7YQLo4APyblVGgoatw== X-Received: by 2002:a17:906:6a1d:b0:ac3:cabc:1be7 with SMTP id a640c23a62f3a-ac3f25833f0mr977627566b.48.1742769580766; Sun, 23 Mar 2025 15:39:40 -0700 (PDT) Received: from puffmais.c.googlers.com (8.239.204.35.bc.googleusercontent.com. [35.204.239.8]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-ac3ef86e44dsm559686666b.31.2025.03.23.15.39.40 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 23 Mar 2025 15:39:40 -0700 (PDT) From: =?utf-8?q?Andr=C3=A9_Draszik?= Date: Sun, 23 Mar 2025 22:39:45 +0000 Subject: [PATCH 29/34] rtc: s5m: add support for S2MPG10 RTC 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: <20250323-s2mpg10-v1-29-d08943702707@linaro.org> References: <20250323-s2mpg10-v1-0-d08943702707@linaro.org> In-Reply-To: <20250323-s2mpg10-v1-0-d08943702707@linaro.org> To: Krzysztof Kozlowski , Lee Jones , Rob Herring , Conor Dooley , Sylwester Nawrocki , Chanwoo Choi , Alim Akhtar , Michael Turquette , Stephen Boyd , Russell King , Catalin Marinas , Will Deacon , Alexandre Belloni Cc: Peter Griffin , Tudor Ambarus , Will McVicker , kernel-team@android.com, linux-kernel@vger.kernel.org, linux-samsung-soc@vger.kernel.org, devicetree@vger.kernel.org, linux-clk@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-rtc@vger.kernel.org, =?utf-8?q?Andr=C3=A9_Draszik?= X-Mailer: b4 0.14.2 Add support for Samsung's S2MPG10 PMIC RTC, which is similar to the existing PMIC RTCs supported by this driver. S2MPG10 doesn't use I2C, so we expect the core driver to have created a regmap for us. Additionally, it can be used for doing a cold-reset. If requested to do so (via DT), S2MPG10 is programmed with a watchdog configuration that will perform a full power cycle upon watchdog expiry. Signed-off-by: Andr=C3=A9 Draszik --- drivers/rtc/rtc-s5m.c | 60 +++++++++++++++++++++++++++++++++++++= ++++ include/linux/mfd/samsung/rtc.h | 37 +++++++++++++++++++++++++ 2 files changed, 97 insertions(+) diff --git a/drivers/rtc/rtc-s5m.c b/drivers/rtc/rtc-s5m.c index 86ccf666c68059408907c97f2647716ffaad10c6..0d8783577bab4f4ebe61050dbd6= 8387d970773bd 100644 --- a/drivers/rtc/rtc-s5m.c +++ b/drivers/rtc/rtc-s5m.c @@ -11,6 +11,7 @@ #include #include #include +#include #include #include #include @@ -53,6 +54,7 @@ enum { * Device | Write time | Read time | Write alarm * =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D * S5M8767 | UDR + TIME | | UDR + * S2MPG10 | WUDR | RUDR | AUDR * S2MPS11/14 | WUDR | RUDR | WUDR + RUDR * S2MPS13 | WUDR | RUDR | WUDR + AUDR * S2MPS15 | WUDR | RUDR | AUDR @@ -99,6 +101,20 @@ static const struct s5m_rtc_reg_config s5m_rtc_regs =3D= { .write_alarm_udr_mask =3D S5M_RTC_UDR_MASK, }; =20 +/* Register map for S2MPG10 */ +static const struct s5m_rtc_reg_config s2mpg10_rtc_regs =3D { + .regs_count =3D 7, + .time =3D S2MPG10_RTC_SEC, + .ctrl =3D S2MPG10_RTC_CTRL, + .alarm0 =3D S2MPG10_RTC_A0SEC, + .alarm1 =3D S2MPG10_RTC_A1SEC, + .udr_update =3D S2MPG10_RTC_UPDATE, + .autoclear_udr_mask =3D S2MPS15_RTC_WUDR_MASK | S2MPS15_RTC_AUDR_MASK, + .read_time_udr_mask =3D S2MPS_RTC_RUDR_MASK, + .write_time_udr_mask =3D S2MPS15_RTC_WUDR_MASK, + .write_alarm_udr_mask =3D S2MPS15_RTC_AUDR_MASK, +}; + /* Register map for S2MPS13 */ static const struct s5m_rtc_reg_config s2mps13_rtc_regs =3D { .regs_count =3D 7, @@ -238,6 +254,7 @@ static int s5m_check_peding_alarm_interrupt(struct s5m_= rtc_info *info, ret =3D regmap_read(info->regmap, S5M_RTC_STATUS, &val); val &=3D S5M_ALARM0_STATUS; break; + case S2MPG10: case S2MPS15X: case S2MPS14X: case S2MPS13X: @@ -300,6 +317,7 @@ static int s5m8767_rtc_set_alarm_reg(struct s5m_rtc_inf= o *info) case S5M8767X: data &=3D ~S5M_RTC_TIME_EN_MASK; break; + case S2MPG10: case S2MPS15X: case S2MPS14X: case S2MPS13X: @@ -351,6 +369,7 @@ static int s5m_rtc_read_time(struct device *dev, struct= rtc_time *tm) =20 switch (info->device_type) { case S5M8767X: + case S2MPG10: case S2MPS15X: case S2MPS14X: case S2MPS13X: @@ -374,6 +393,7 @@ static int s5m_rtc_set_time(struct device *dev, struct = rtc_time *tm) =20 switch (info->device_type) { case S5M8767X: + case S2MPG10: case S2MPS15X: case S2MPS14X: case S2MPS13X: @@ -411,6 +431,7 @@ static int s5m_rtc_read_alarm(struct device *dev, struc= t rtc_wkalrm *alrm) =20 switch (info->device_type) { case S5M8767X: + case S2MPG10: case S2MPS15X: case S2MPS14X: case S2MPS13X: @@ -449,6 +470,7 @@ static int s5m_rtc_stop_alarm(struct s5m_rtc_info *info) =20 switch (info->device_type) { case S5M8767X: + case S2MPG10: case S2MPS15X: case S2MPS14X: case S2MPS13X: @@ -487,6 +509,7 @@ static int s5m_rtc_start_alarm(struct s5m_rtc_info *inf= o) =20 switch (info->device_type) { case S5M8767X: + case S2MPG10: case S2MPS15X: case S2MPS14X: case S2MPS13X: @@ -524,6 +547,7 @@ static int s5m_rtc_set_alarm(struct device *dev, struct= rtc_wkalrm *alrm) =20 switch (info->device_type) { case S5M8767X: + case S2MPG10: case S2MPS15X: case S2MPS14X: case S2MPS13X: @@ -604,6 +628,7 @@ static int s5m8767_rtc_init_reg(struct s5m_rtc_info *in= fo) ret =3D regmap_raw_write(info->regmap, S5M_ALARM0_CONF, data, 2); break; =20 + case S2MPG10: case S2MPS15X: case S2MPS14X: case S2MPS13X: @@ -634,6 +659,25 @@ static int s5m8767_rtc_init_reg(struct s5m_rtc_info *i= nfo) return ret; } =20 +static int s5m_rtc_restart_s2mpg10(struct sys_off_data *data) +{ + struct s5m_rtc_info *info =3D data->cb_data; + int ret; + + if (data->mode !=3D REBOOT_COLD && data->mode !=3D REBOOT_HARD) + return NOTIFY_DONE; + + /* + * Arm watchdog with maximum timeout (2 seconds), and perform full reset + * on expiry. + */ + ret =3D regmap_set_bits(info->regmap, S2MPG10_RTC_WTSR, + (S2MPG10_WTSR_COLDTIMER | S2MPG10_WTSR_COLDRST + | S2MPG10_WTSR_WTSRT | S2MPG10_WTSR_WTSR_EN)); + + return ret ? NOTIFY_BAD : NOTIFY_DONE; +} + static int s5m_rtc_probe(struct platform_device *pdev) { struct sec_pmic_dev *s5m87xx =3D dev_get_drvdata(pdev->dev.parent); @@ -689,6 +733,9 @@ static int s5m_rtc_probe(struct platform_device *pdev) if (IS_ERR(info->regmap)) return dev_err_probe(&pdev->dev, PTR_ERR(info->regmap), "Failed to allocate regmap\n"); + } else if (id->driver_data =3D=3D S2MPG10) { + info->regs =3D &s2mpg10_rtc_regs; + alarm_irq =3D S2MPG10_IRQ_RTCA0; } else { return dev_err_probe(&pdev->dev, -ENODEV, "Unsupported device type %lu\n", @@ -735,6 +782,18 @@ static int s5m_rtc_probe(struct platform_device *pdev) device_init_wakeup(&pdev->dev, true); } =20 + if (of_device_is_system_power_controller(pdev->dev.parent->of_node) && + info->device_type =3D=3D S2MPG10) { + ret =3D devm_register_sys_off_handler(&pdev->dev, + SYS_OFF_MODE_RESTART, + SYS_OFF_PRIO_HIGH + 1, + s5m_rtc_restart_s2mpg10, + info); + if (ret) + return dev_err_probe(&pdev->dev, ret, + "Failed to register restart handler\n"); + } + return devm_rtc_register_device(info->rtc_dev); } =20 @@ -766,6 +825,7 @@ static SIMPLE_DEV_PM_OPS(s5m_rtc_pm_ops, s5m_rtc_suspen= d, s5m_rtc_resume); =20 static const struct platform_device_id s5m_rtc_id[] =3D { { "s5m-rtc", S5M8767X }, + { "s2mpg10-rtc", S2MPG10 }, { "s2mps13-rtc", S2MPS13X }, { "s2mps14-rtc", S2MPS14X }, { "s2mps15-rtc", S2MPS15X }, diff --git a/include/linux/mfd/samsung/rtc.h b/include/linux/mfd/samsung/rt= c.h index 0204decfc9aacbf4bc93d98a256f1d956bbcd19c..51c4239a1fa6f28155711a0756b= 0e071b010d848 100644 --- a/include/linux/mfd/samsung/rtc.h +++ b/include/linux/mfd/samsung/rtc.h @@ -72,6 +72,37 @@ enum s2mps_rtc_reg { S2MPS_RTC_REG_MAX, }; =20 +enum s2mpg10_rtc_reg { + S2MPG10_RTC_CTRL, + S2MPG10_RTC_UPDATE, + S2MPG10_RTC_SMPL, + S2MPG10_RTC_WTSR, + S2MPG10_RTC_CAP_SEL, + S2MPG10_RTC_MSEC, + S2MPG10_RTC_SEC, + S2MPG10_RTC_MIN, + S2MPG10_RTC_HOUR, + S2MPG10_RTC_WEEK, + S2MPG10_RTC_DAY, + S2MPG10_RTC_MON, + S2MPG10_RTC_YEAR, + S2MPG10_RTC_A0SEC, + S2MPG10_RTC_A0MIN, + S2MPG10_RTC_A0HOUR, + S2MPG10_RTC_A0WEEK, + S2MPG10_RTC_A0DAY, + S2MPG10_RTC_A0MON, + S2MPG10_RTC_A0YEAR, + S2MPG10_RTC_A1SEC, + S2MPG10_RTC_A1MIN, + S2MPG10_RTC_A1HOUR, + S2MPG10_RTC_A1WEEK, + S2MPG10_RTC_A1DAY, + S2MPG10_RTC_A1MON, + S2MPG10_RTC_A1YEAR, + S2MPG10_RTC_OSC_CTRL, +}; + #define RTC_I2C_ADDR (0x0C >> 1) =20 #define HOUR_12 (1 << 7) @@ -124,10 +155,16 @@ enum s2mps_rtc_reg { #define ALARM_ENABLE_SHIFT 7 #define ALARM_ENABLE_MASK (1 << ALARM_ENABLE_SHIFT) =20 +/* WTSR & SMPL registers */ #define SMPL_ENABLE_SHIFT 7 #define SMPL_ENABLE_MASK (1 << SMPL_ENABLE_SHIFT) =20 #define WTSR_ENABLE_SHIFT 6 #define WTSR_ENABLE_MASK (1 << WTSR_ENABLE_SHIFT) =20 +#define S2MPG10_WTSR_COLDTIMER GENMASK(6, 5) +#define S2MPG10_WTSR_COLDRST BIT(4) +#define S2MPG10_WTSR_WTSRT GENMASK(3, 1) +#define S2MPG10_WTSR_WTSR_EN BIT(0) + #endif /* __LINUX_MFD_SEC_RTC_H */ --=20 2.49.0.395.g12beb8f557-goog From nobody Thu Dec 18 22:20:07 2025 Received: from mail-ej1-f54.google.com (mail-ej1-f54.google.com [209.85.218.54]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 4C8231EF096 for ; Sun, 23 Mar 2025 22:39:46 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.54 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1742769590; cv=none; b=FiuLgBW6oo3nDbQq876MsZfX4g1b2c/831yOePcVCluRGx5sCCERK3RliykeuMaCMkoFEFuGqQZNr7/6CXn47FSEHsSxh/6g58DkwtPmM5t8hzUp92jpr8n5Ze+O0dGVoHCvfm4NmumH3zrP13GXNuNFlmSPx2ndwXI6y1FfdV4= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1742769590; c=relaxed/simple; bh=XTbYOFxDpYMNG8kdQks6GusInksI0MrF0HPSPauW9G0=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=icEWRRZKqwplTQgJDKlML6YmmwI1eHC/7y/GtuLsRnOeaoNhNdkMbyDH2wonDY7F4x/FDAN4pMP4GYLuWsZWP4f6qTutBH0VsPR32hGOswjT2obwpVpC2bVUFzEnCiE2jZCQB1hvyA5Z2tjRRA8yCW4vC4ivsi+EyEyeNme2204= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=kzuUTZ3y; arc=none smtp.client-ip=209.85.218.54 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="kzuUTZ3y" Received: by mail-ej1-f54.google.com with SMTP id a640c23a62f3a-ac34257295dso794868966b.2 for ; Sun, 23 Mar 2025 15:39:46 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1742769581; x=1743374381; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=+WWXWLpvDyb8usGlL8yRG72QzGDtYxB508Wc6qQDfhs=; b=kzuUTZ3yS73U19jU458nl4lpuBO+pGkSbFABOeVGkrN/8tYQpXfBQzl0846vbtBIy2 zEPd2TgwH5Rfswn1yHu9Q6sv8fq9JW/UO+OHxwUChNyDghBi87YKZSjr8Bv1J5Vdsyt+ ii9B2bT6zydNG71B8paDRSfox2UjOaJk8ykufibzIHfrkKvOqayQVTx/rr8R0DJeHvIN TlKk2rjhdfebUsMdhdiAkJSgIgSsnj4QmlU1jn8IB+X4OxHQlV19/Wu8kbvoIXl5Xv7h Lrv8UBKbL/E34VKwkyDvSjtUVveplHcvAXTkzxXE+QZqZDauZ68Qu/xQDifqWTIr6M5a NCVA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1742769581; x=1743374381; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=+WWXWLpvDyb8usGlL8yRG72QzGDtYxB508Wc6qQDfhs=; b=ui/izz9avo9A/308cz7jvyR+IedZs2HUCfT2G3/KD05uWj80tW+JEhosfViSc1NN3b poHCufqLkBCTd93r8BKPpeGM8GqRblwkUo9H6nCzR0h9Fs5qRDcMxoog/7yvORvZBChJ vcAJCDp+re1yKoL8w84UZFb5wPXlbvS2k09fUrk82uhM0seFQRfaiRQHdBN/QKq+/kho 9Q/BtUdeLRCoZgPL6ZWzS2BDbDMmdF9mflQOMAnt1rcuOKlGoLTqgIHl7gok5jC+gMHk fwebSUpgViFVzJUyCoJZ4yW2DRXYjS4E9fTgGnvGbyOA/nEEMlnXySa/NmIR31U4za4z mC7A== X-Forwarded-Encrypted: i=1; AJvYcCWoaTEL5ZGSZEtOJTKgB7HUkhErWV3KBpmDdTeOuGqJzAzYb4U+vcgDYXgIatT0vScjNhXY2mrRpGxzH1Q=@vger.kernel.org X-Gm-Message-State: AOJu0Yz5VI9PFMfqGf+wEuuan9M6d9l+35hby4ASKAJaQH29/dTljgOb 4Zm3bdXt4dNdgklwVky/w6IqVIGMcf0TAoeFpg2N3uitvSL0IFCrf6+2OWG+/kE= X-Gm-Gg: ASbGncvWMAex4+eRMonyXLWBl3axeoJ7Z5VtpEm7X0MK/DF32S/F7QwuwT0RtUWvQr5 +JbMwH1hOgFfPtXjXHPgUYF0GjoTsnVJprNv9G0G3AYUCfwAuzOkm20hKzxEzeFaJXlX5NWX1dE FXjizWZph6euMO+jPlFIV9t9HetTHINTOW3+MUWXJgN1P47pTaZLw9ZK6aFTQLccdjNEfFlZr8B dyeRvtCLYYz7JI1CCRqsjChODqpWpu7IWrXOH/u3dI3C8Bs8d2AlSIzC62r/zmk7UsHoNj3dvE0 7qC7/tCucqkM2Esb1bnDot9y5Uznr8d2IZ1rl0SdSWC+gNHfcRp6CMEfLHeccwQCgXgTZBMBi5z V5ZoMz9n/QpK/ereyXBzMgZTW0Bvn X-Google-Smtp-Source: AGHT+IHUwVqfRBATiENga8y2WvKZVKOrHZpSBd488/sJ0QhrasF7WRCnvzn1JwM0TwTxkLrFTUS5Nw== X-Received: by 2002:a17:907:1c21:b0:abf:6389:6d19 with SMTP id a640c23a62f3a-ac3f226757amr805060366b.15.1742769581299; Sun, 23 Mar 2025 15:39:41 -0700 (PDT) Received: from puffmais.c.googlers.com (8.239.204.35.bc.googleusercontent.com. [35.204.239.8]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-ac3ef86e44dsm559686666b.31.2025.03.23.15.39.40 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 23 Mar 2025 15:39:40 -0700 (PDT) From: =?utf-8?q?Andr=C3=A9_Draszik?= Date: Sun, 23 Mar 2025 22:39:46 +0000 Subject: [PATCH 30/34] rtc: s5m: fix a typo: peding -> pending 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: <20250323-s2mpg10-v1-30-d08943702707@linaro.org> References: <20250323-s2mpg10-v1-0-d08943702707@linaro.org> In-Reply-To: <20250323-s2mpg10-v1-0-d08943702707@linaro.org> To: Krzysztof Kozlowski , Lee Jones , Rob Herring , Conor Dooley , Sylwester Nawrocki , Chanwoo Choi , Alim Akhtar , Michael Turquette , Stephen Boyd , Russell King , Catalin Marinas , Will Deacon , Alexandre Belloni Cc: Peter Griffin , Tudor Ambarus , Will McVicker , kernel-team@android.com, linux-kernel@vger.kernel.org, linux-samsung-soc@vger.kernel.org, devicetree@vger.kernel.org, linux-clk@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-rtc@vger.kernel.org, =?utf-8?q?Andr=C3=A9_Draszik?= X-Mailer: b4 0.14.2 Fix this minor typo, and adjust the a related incorrect alignment to avoid a checkpatch error. Signed-off-by: Andr=C3=A9 Draszik --- drivers/rtc/rtc-s5m.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/drivers/rtc/rtc-s5m.c b/drivers/rtc/rtc-s5m.c index 0d8783577bab4f4ebe61050dbd68387d970773bd..7b00e65bdd9c25b3426f92355f8= ea36e66c3939f 100644 --- a/drivers/rtc/rtc-s5m.c +++ b/drivers/rtc/rtc-s5m.c @@ -243,8 +243,8 @@ static int s5m8767_wait_for_udr_update(struct s5m_rtc_i= nfo *info) return ret; } =20 -static int s5m_check_peding_alarm_interrupt(struct s5m_rtc_info *info, - struct rtc_wkalrm *alarm) +static int s5m_check_pending_alarm_interrupt(struct s5m_rtc_info *info, + struct rtc_wkalrm *alarm) { int ret; unsigned int val; @@ -451,7 +451,7 @@ static int s5m_rtc_read_alarm(struct device *dev, struc= t rtc_wkalrm *alrm) =20 dev_dbg(dev, "%s: %ptR(%d)\n", __func__, &alrm->time, alrm->time.tm_wday); =20 - return s5m_check_peding_alarm_interrupt(info, alrm); + return s5m_check_pending_alarm_interrupt(info, alrm); } =20 static int s5m_rtc_stop_alarm(struct s5m_rtc_info *info) --=20 2.49.0.395.g12beb8f557-goog From nobody Thu Dec 18 22:20:07 2025 Received: from mail-ej1-f45.google.com (mail-ej1-f45.google.com [209.85.218.45]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 6ADAB1EA7DB for ; Sun, 23 Mar 2025 22:39:46 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.45 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1742769590; cv=none; b=Hi0VBibTBcZArFJN/Je7CyQbFIxDxjxS8Ft/EcMtaq/aS1s4B9ipIR0kKZWOnDXV5R6W8DX2Wx5yp+R3NcKuoiObfTcuGXruAVDGq9oIRz+6WC3gIqVW/ex8ZvDwyRHBfeDM/iUwXlOsTAGLWcG/Y46jT1rNB6OyfBsGYUyGngw= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1742769590; c=relaxed/simple; bh=4+DMC9tlZSVxGow8DqTZFfBGSmBCzD9dumGbvfgv2jM=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=tFIdNqPrP1sicF8vNdoTOroE+C0aTqRwzozZvJVKodG5H6BA+Xze2eeehoCt+eHN8THUr1kkFG82nKEUQlWyNVSFrEWCpcxFtD9fYw8cniodr4iHZsH4hlVGnYs8PmmJ0Eskn4QGy3HRxzCr1+53JcUJo1o0UbjFeIEEj2GJKWg= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=F/adUMDC; arc=none smtp.client-ip=209.85.218.45 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="F/adUMDC" Received: by mail-ej1-f45.google.com with SMTP id a640c23a62f3a-aaee2c5ee6eso588949566b.1 for ; Sun, 23 Mar 2025 15:39:45 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1742769582; x=1743374382; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=VFl8ti8LLZE4LPxCWkejP2QjcAENJxbtxTGfboQDJno=; b=F/adUMDCgeIQn48hezFMzA3iy9ykNsZxAZujlYI+2S5mAqvxAzFPzEBrS3DaHa2mgT K+RFpDFGFP927W2pvEtsJARxOiru3g+7gXLhda41gu2k28r8NIdvW15xjUlV1WU2Y6K5 NNBqOGi4qlbsupsM2T83kv3uKX3q7ql+ZcWNvYBfIA+ajJP2PFCAuDmBrsldUl54fizf 7EHB2dtdHXta9MuVueZ/g4vuUKVmlk73VYuYTzJFs9cRs6rmUt5H3YcZPckXthRH+EYx FEGUORCiF00Bpt199J+2EyueV4DIBgiDW3oe0uipdXmp55mE+jKN4/9pjm6nTatarjOf RkbQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1742769582; x=1743374382; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=VFl8ti8LLZE4LPxCWkejP2QjcAENJxbtxTGfboQDJno=; b=cigToUrTW5woq/gZgrbm4oRmLMrzlp4dD2xef7pI0gaUYPWLAb9c3u4f7DAvg2jnc9 ONOsfvY4Q+3yALlfPdhmI8sh2h2uEEtS7xRad83Okghrz3NNomGYIU1eLVxRuN+pncl5 fm9N5iolPKMsuR+KijGtcIsVimaGRcb2Kax9NtAm4QhNnRx+UrrrXwothC8iOko8eSQw l3SXSH98WAnB0tfUREgqJ4dJNylOTKIK++7jY/B7yuXiX08hrCCVL2JIUhLCEo1uHEmg 1bodPBnJxSjuiYQvCSS+Qz9h/qubTl+ZkNsT3835WK064p8RmV1ZKVizOzD6hb5sLTkx CEHQ== X-Forwarded-Encrypted: i=1; AJvYcCXeBvG1x9mVtAHLngyYXELcqjgqwGzPUjqWb4KemMs0Q1X27eu5NbNQHI6PsDi+yHsCn32Tfi68rn5PZ5A=@vger.kernel.org X-Gm-Message-State: AOJu0YyroRG08xUiOKWDPkfhibVAJaJWqoHvGUlMs/f6AtqP54LUQnIe 7yCT5VYRg9DzfADVu6hsVGAzLUxY3mhwT/ZC2PPhAqIOJ/gQAuiYFvN9TEgvD2w= X-Gm-Gg: ASbGnctf+bYNVBh/13k0Em+4VV49Mz1uoJImtv83uMk3aVYYrcxRkvRFtub8sr4+x9d IwJKP2YiIzQ0WdtY6P5mFnafzYJomzWZq9mIZZPXqbS4jtxhGM0zE8erL5WEHUbLaY0tPRyyj7L obNSE/wtptGKAAQmpekmJJ3eISDoBStYaGWkZ3HkQB0NbrVDtyUNTvPd7C5v+EP+8E3nNdwpKkN 4FP+y8cfXNXICnphKvuFrB/N4MNjEgDkjrFFvvpGtCkvmL1KP8yjiesiXprmfHFwtavw3m7UdP1 f8lQNlnv6pc/gf0Ez6V4Qcs8wpOy6PUOUguXjkTVDJTubYZxxsL+cNbI9wAsV5sJGnHkQwRArYD alovZkaWWuTEb/qUZWrenyPfLQmaF X-Google-Smtp-Source: AGHT+IG4c/ltmFn+ZYM2U03LWJ2WSMibTI8JvVco3lTM01jqnuwgY40zG7FK43Yn/mRbbubKlLsYtw== X-Received: by 2002:a17:907:c1c:b0:ac3:422a:76dc with SMTP id a640c23a62f3a-ac3f22b52f7mr1161510866b.34.1742769581788; Sun, 23 Mar 2025 15:39:41 -0700 (PDT) Received: from puffmais.c.googlers.com (8.239.204.35.bc.googleusercontent.com. [35.204.239.8]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-ac3ef86e44dsm559686666b.31.2025.03.23.15.39.41 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 23 Mar 2025 15:39:41 -0700 (PDT) From: =?utf-8?q?Andr=C3=A9_Draszik?= Date: Sun, 23 Mar 2025 22:39:47 +0000 Subject: [PATCH 31/34] rtc: s5m: switch to devm_device_init_wakeup 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: <20250323-s2mpg10-v1-31-d08943702707@linaro.org> References: <20250323-s2mpg10-v1-0-d08943702707@linaro.org> In-Reply-To: <20250323-s2mpg10-v1-0-d08943702707@linaro.org> To: Krzysztof Kozlowski , Lee Jones , Rob Herring , Conor Dooley , Sylwester Nawrocki , Chanwoo Choi , Alim Akhtar , Michael Turquette , Stephen Boyd , Russell King , Catalin Marinas , Will Deacon , Alexandre Belloni Cc: Peter Griffin , Tudor Ambarus , Will McVicker , kernel-team@android.com, linux-kernel@vger.kernel.org, linux-samsung-soc@vger.kernel.org, devicetree@vger.kernel.org, linux-clk@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-rtc@vger.kernel.org, =?utf-8?q?Andr=C3=A9_Draszik?= X-Mailer: b4 0.14.2 To release memory allocated by device_init_wakeup(true), drivers have to call device_init_wakeup(false) in error paths and unbind. Switch to the new devres managed version devm_device_init_wakeup() to plug this memleak. Signed-off-by: Andr=C3=A9 Draszik --- drivers/rtc/rtc-s5m.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/drivers/rtc/rtc-s5m.c b/drivers/rtc/rtc-s5m.c index 7b00e65bdd9c25b3426f92355f8ea36e66c3939f..e8e442c503064eb4e570af5bf7d= cff6bfa7f4656 100644 --- a/drivers/rtc/rtc-s5m.c +++ b/drivers/rtc/rtc-s5m.c @@ -779,7 +779,11 @@ static int s5m_rtc_probe(struct platform_device *pdev) return dev_err_probe(&pdev->dev, ret, "Failed to request alarm IRQ %d\n", info->irq); - device_init_wakeup(&pdev->dev, true); + + ret =3D devm_device_init_wakeup(&pdev->dev); + if (ret < 0) + return dev_err_probe(&pdev->dev, ret, + "Failed to init wakeup\n"); } =20 if (of_device_is_system_power_controller(pdev->dev.parent->of_node) && --=20 2.49.0.395.g12beb8f557-goog From nobody Thu Dec 18 22:20:07 2025 Received: from mail-ej1-f44.google.com (mail-ej1-f44.google.com [209.85.218.44]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 7ED641EF368 for ; Sun, 23 Mar 2025 22:39:47 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.44 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1742769591; cv=none; b=ZudCDHoVX2L0qXGJxWOP8nZ6HYcxybTYROBY/nh71f0FNmRvroahWV7zPHncRd7aaVa1K/sqPJmZDDOr2n7fnR5xLyBZ5bs555Ife//lASno40NqGpA32rx1OFWaYOyOBktRUQfUZl4aJP5p7TpKdHTLn5Ru0OWICtYwXmugc88= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1742769591; c=relaxed/simple; bh=wFMuIyuQV4OeONZ1CTvvoJlBLS9yPymppIm/9Rg9fR8=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=kKH2ZRcXk+OnYDX84N6n+B1UBQEg+iIzqMObr33PaNfxrqi+bVEsXOoHEMPJEqAozalSHPg3sbWANvZuMoNFBZ6/rTQJSqIiReow+kb3WDFAce9eDGQtndZgRwaizGwNoz1bzEOKIrQprzGcfoG93SqMhelgZq7xDEco8KzvZkI= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=CFuCW/qi; arc=none smtp.client-ip=209.85.218.44 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="CFuCW/qi" Received: by mail-ej1-f44.google.com with SMTP id a640c23a62f3a-ac345bd8e13so673832166b.0 for ; Sun, 23 Mar 2025 15:39:45 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1742769583; x=1743374383; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=qB2B+UaRvhzRZZ5Wx1Ln6+NaDhGt6Oe4sLGxlVN20j8=; b=CFuCW/qire8aywCE8R2nF9KA3js6JnqRjYn0LxXqEbLMqqh7gljrc1Op+LWpPpz45+ nzeHo60ZbYx7hfxaW6PPbDGGL+2YfYb/J0n51c9SPiMhge0z7JKYD+WjSpwdGeJYGTNa rNQsoK5zJjgWkTUgINrZyBDXgUIE+XUVFIzMPG011L5tTLUEmtg31J6QxPCn72ykhYec p/vqLmTB/ZJP4g1WqtgCc3OzI3MfhfTPQeEj+4UcgigbR5Sz3iOi6pEu96uT6XI8NsV5 lGZjddAI4UHYxZJYjL3YlbXMiLNNqSdDaE9XH1YU3iE/p/2C2Kl2Qc4SOzEvzMKH5+H9 LX6Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1742769583; x=1743374383; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=qB2B+UaRvhzRZZ5Wx1Ln6+NaDhGt6Oe4sLGxlVN20j8=; b=xQ0RQaZYb5mShicIcsl4M1Zu0v8MkFazpuC3QkERNBZGA7rwRZSM6sTEGcOfVSMeEI tIwhZtIdXqKaWLFNhw66mrgW425ewQK/VZqvoC//U1keb8nrE2GkAcPoFo//lvltYFlH H2+/yU7aoe1iprsR2hRoq1qV2EBioCde1fTN821SlwKzSuEkQTZvtMfXLNv3ltCNyvx9 pZzn1tyCHSZkczfOw93n9vQfpXQDb+inOic3BMY0Syb1+5LVVskG2RfrfnnOz+h/q1qP Z1hC9Opqv68Nf0Lw59gCNcSGbrXSH0T5sUh64rBcCjrxL+xy61wGwDHKjNABXOc5xhdl mNQg== X-Forwarded-Encrypted: i=1; AJvYcCWezyDxdNKpcK2GxSJa49eNLeo4lFwE4sNglPZqom6m4hTRqJm0/OxBRjo+gagUurdsNuUHtAWn74fQUo0=@vger.kernel.org X-Gm-Message-State: AOJu0Yy0v9/3f2f/+gATvSRDEUUU0DvTxoyusZumVrXlekZ513oa12M3 YWGaNH85y9lhW2Cy7yxsKT/E/nbcrdaOQypV/+QjkVukR0WgCFpaEKI+uINq34I= X-Gm-Gg: ASbGncvuUbtYqM0OeMcgRVfpPc9Qdf8/IbOVk9P6qS0qeVjPvvMJwA11mqc0Xr+BveR +NA8O12izZlKyWay0eoZqrUCpY17xlC6y0EW6RuDyNiz5DLzk8mpNtBtJmPfO8MEfuPdzS/7O7N Q1FSC7fMwQAHI+EprRSPXlJ2BatBFJ/xhRTSsERFqYJecccidEwWm03lxZKXqdV1cG3L5z2k0ut Lc2bqAvcjV3kuXfFRhu/v52uitDRzGSMkJ9JLaSrk+kxJnUZ8DsyACzlr5u7p2gy3uGYNhnGPKn wc/v1eliJMJVB27ViZFHvqAzy69YsHCVswWcUYYDRO0+e2MxjWGcNsVrbK6ddhdpy3L8bWZvvvE H+HMYGY7y0wn9WDlHc1gS/aBWVZbr X-Google-Smtp-Source: AGHT+IEqdMFkeJB9L19k5i2T9SHkqV7HBIih5q+Sk1+mGJp+qYtrcbGq+req37UQlXtoOfZvy9bw1w== X-Received: by 2002:a17:907:da0c:b0:ac3:f683:c842 with SMTP id a640c23a62f3a-ac3f683c845mr1099102666b.42.1742769582647; Sun, 23 Mar 2025 15:39:42 -0700 (PDT) Received: from puffmais.c.googlers.com (8.239.204.35.bc.googleusercontent.com. [35.204.239.8]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-ac3ef86e44dsm559686666b.31.2025.03.23.15.39.41 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 23 Mar 2025 15:39:41 -0700 (PDT) From: =?utf-8?q?Andr=C3=A9_Draszik?= Date: Sun, 23 Mar 2025 22:39:48 +0000 Subject: [PATCH 32/34] rtc: s5m: replace regmap_update_bits with regmap_clear/set_bits 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: <20250323-s2mpg10-v1-32-d08943702707@linaro.org> References: <20250323-s2mpg10-v1-0-d08943702707@linaro.org> In-Reply-To: <20250323-s2mpg10-v1-0-d08943702707@linaro.org> To: Krzysztof Kozlowski , Lee Jones , Rob Herring , Conor Dooley , Sylwester Nawrocki , Chanwoo Choi , Alim Akhtar , Michael Turquette , Stephen Boyd , Russell King , Catalin Marinas , Will Deacon , Alexandre Belloni Cc: Peter Griffin , Tudor Ambarus , Will McVicker , kernel-team@android.com, linux-kernel@vger.kernel.org, linux-samsung-soc@vger.kernel.org, devicetree@vger.kernel.org, linux-clk@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-rtc@vger.kernel.org, =?utf-8?q?Andr=C3=A9_Draszik?= X-Mailer: b4 0.14.2 The regmap_clear_bits() and regmap_set_bits() helper macros state the intention a bit more obviously. Use those. Signed-off-by: Andr=C3=A9 Draszik --- drivers/rtc/rtc-s5m.c | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/drivers/rtc/rtc-s5m.c b/drivers/rtc/rtc-s5m.c index e8e442c503064eb4e570af5bf7dcff6bfa7f4656..fb65a8e439d72d9070751c00f58= 26a403ac0b416 100644 --- a/drivers/rtc/rtc-s5m.c +++ b/drivers/rtc/rtc-s5m.c @@ -338,8 +338,8 @@ static int s5m8767_rtc_set_alarm_reg(struct s5m_rtc_inf= o *info) =20 /* On S2MPS13 the AUDR is not auto-cleared */ if (info->device_type =3D=3D S2MPS13X) - regmap_update_bits(info->regmap, info->regs->udr_update, - S2MPS13_RTC_AUDR_MASK, 0); + regmap_clear_bits(info->regmap, info->regs->udr_update, + S2MPS13_RTC_AUDR_MASK); =20 return ret; } @@ -351,10 +351,8 @@ static int s5m_rtc_read_time(struct device *dev, struc= t rtc_time *tm) int ret; =20 if (info->regs->read_time_udr_mask) { - ret =3D regmap_update_bits(info->regmap, - info->regs->udr_update, - info->regs->read_time_udr_mask, - info->regs->read_time_udr_mask); + ret =3D regmap_set_bits(info->regmap, info->regs->udr_update, + info->regs->read_time_udr_mask); if (ret) { dev_err(dev, "Failed to prepare registers for time reading: %d\n", --=20 2.49.0.395.g12beb8f557-goog From nobody Thu Dec 18 22:20:07 2025 Received: from mail-ej1-f46.google.com (mail-ej1-f46.google.com [209.85.218.46]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 159DB1E9B28 for ; Sun, 23 Mar 2025 22:39:47 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.46 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1742769592; cv=none; b=VmhqCgwsmcKY+GmKT0N9Cqql2ZUv4TNnep8mdMViQpXCAk4nS44fY+TqOH9JaOfK+w+itkH5AhpYLZCS4piGfy+1fl+oZaNbkXToJuGsrHd1PssY4KIC+8zMygltvZiz7Xi3WLXJU4QBI2u3jR/Q/F41UpAq5ynBQhY7w3A7hSI= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1742769592; c=relaxed/simple; bh=H9PnjiGdaPmfWukTzjrtFxLU+96UeMWEkuYWR2ErP7k=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=gBAHqkpyvwt94hXaSE7E8LspzRJ4+7/6uar6fzZNO8aCkh/zkDgwCSu17Xy9JDk+zsSIcdt31gMZE6ozOEt5Y1g2+sZIycBfyPmX/1p+rhpNGRmTFjOJFrGIv7yUhk+taOr/+olFepVDbQg5DRZBz8fa34RBZHMVkdu1AC3V+WI= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=sg/BoZUo; arc=none smtp.client-ip=209.85.218.46 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="sg/BoZUo" Received: by mail-ej1-f46.google.com with SMTP id a640c23a62f3a-aaecf50578eso713685566b.2 for ; Sun, 23 Mar 2025 15:39:47 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1742769583; x=1743374383; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=+9zuZxWNg3rbrJTairaqhANzxAqu72T6zzPhxq7UOmE=; b=sg/BoZUoO1vvhUz/iyXWR/MXNTeBGwofC6UNpxJQrUNNiw4KK7eE2KsY4y7RmEDrgc CJDWqICOsVStbXFUlcoIpWqaRqmNNCv3c12rcDsZ/VNGnK6VtAlsbYR3wNoU3zuaC46C fwz7FHf6mwR9L+LRktEj+XD8Vfg6qal8O9QomUJ2Tt536IPiTrdB1ffkNYE9bqYyKMlc tnWoNjR9gAQhM8yrQ9ooN+jhbYkfFc/NTsvVLHYDekiMBbo3Lw/btgm3ML3LS3PXwz/t kOBqxBnV5cVs/bHhMlwVsJk84DAfki4LbUB/W/IVthCI0pHuv19sX6FD39us8LONlxYz 8GjA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1742769583; x=1743374383; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=+9zuZxWNg3rbrJTairaqhANzxAqu72T6zzPhxq7UOmE=; b=NvBy8nthfZJ0ExI9zL8NXrI5RMeK/pP8qjj7ukz/WGIQo1jwmvOw58zCU2k972KFzb 7UivbB1feOBG//tRRQ5Ya9G2fJFJffcyCFtIcFPZ20E+UFlNlcH7Qa9IuZY6WfU/F0w/ aDvL6AVNxBNYYTkiVw+doPzJpYBQgQNhXOmIixQu4+ko0TrHp9DV2iAZ1OTqzFj4Ymms 5woRwhrndCy7Fg1w0DZ7G41tBLghwSUaNRanIv30QnRUeBrlDRDaBf7yiYmDWPyp/SRN GcDBdWcTwFWNICFY5WteDpQeYo4vmfmp8ii8GuVzycgwgoB3pKnUvITcp7JJext/IA2K AEqQ== X-Forwarded-Encrypted: i=1; AJvYcCVstsE4kSRp/C+Bd2yEcPTHwLJf48MxMrgP1IwcRFnPmAoZ167ugKa3OaqMDBnMVAYSX8E/zYlIkMtiyOo=@vger.kernel.org X-Gm-Message-State: AOJu0Ywp4onr6Zra7edIgcw/RvDFE2nZcXeicU7TDaYC8Act3yrgDpwD wf1mQ2sD0mvuBQHKFxKRcIjP4ETS8bl3UOcC2M7Bu+GR9UUOG0O9RDAfZvZ2DH8= X-Gm-Gg: ASbGncscI5L2BYGICwi5z2CnU1hYtLOh5aHfnCsHmMkNbWe/fXiulArdbw4uNIWY3Mt WVu1xCTb5/YtD1T7MfFjfgetdKfx49vFbyiHpcCVgjl6AO3yXQIVbpytPbPThJODXQR9ezSM5xS 9+UDKwBYmvIo5NlRRfv0n6RTdpZnSKJNGroVK+IFGyTogHdXDMLxeeeVnrbIH34h04xSpRk222E RfqcPdMb72jIoqYOPFxUY9luWwqSMJM+D4SQC1l5yNQt5cIeoqshSmWfbbE+hx4lr1Gbis7bJSf /EBcgU1IgwrNTm6SsapSHilpUjgkiHinJHxdU7rATHtCXGZxUMmQ1zU+HcpX45yTW0xJOm19y/k ItycAdnnG+T764SAn0Gf9JP4kDtAjvTLfqdxyMYw= X-Google-Smtp-Source: AGHT+IFs4xHKZtefwGlVOQ1hTfmO2hUQ+8e+EVgI4+xRTbfzM8/S+AZdGH6X4/sL+XMu2751zvkyBQ== X-Received: by 2002:a17:907:7f0d:b0:ac3:3cfc:a59c with SMTP id a640c23a62f3a-ac3f20b9b10mr1154328366b.11.1742769583314; Sun, 23 Mar 2025 15:39:43 -0700 (PDT) Received: from puffmais.c.googlers.com (8.239.204.35.bc.googleusercontent.com. [35.204.239.8]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-ac3ef86e44dsm559686666b.31.2025.03.23.15.39.42 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 23 Mar 2025 15:39:42 -0700 (PDT) From: =?utf-8?q?Andr=C3=A9_Draszik?= Date: Sun, 23 Mar 2025 22:39:49 +0000 Subject: [PATCH 33/34] rtc: s5m: replace open-coded read/modify/write registers with regmap helpers 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: <20250323-s2mpg10-v1-33-d08943702707@linaro.org> References: <20250323-s2mpg10-v1-0-d08943702707@linaro.org> In-Reply-To: <20250323-s2mpg10-v1-0-d08943702707@linaro.org> To: Krzysztof Kozlowski , Lee Jones , Rob Herring , Conor Dooley , Sylwester Nawrocki , Chanwoo Choi , Alim Akhtar , Michael Turquette , Stephen Boyd , Russell King , Catalin Marinas , Will Deacon , Alexandre Belloni Cc: Peter Griffin , Tudor Ambarus , Will McVicker , kernel-team@android.com, linux-kernel@vger.kernel.org, linux-samsung-soc@vger.kernel.org, devicetree@vger.kernel.org, linux-clk@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-rtc@vger.kernel.org, =?utf-8?q?Andr=C3=A9_Draszik?= X-Mailer: b4 0.14.2 Instead of the open-coded read/modify/write sequence, we can simply use the regmap helpers regmap_set_bits() and regmap_update_bits() respectively. This makes the code easier to read, and avoids extra works in case the underlying bus supports updating bits via struct regmap_bus::reg_update_bits() directly (which is the case for S2MPG10 on gs101 where this driver communicates via ACPM). Signed-off-by: Andr=C3=A9 Draszik --- drivers/rtc/rtc-s5m.c | 28 +++++++--------------------- 1 file changed, 7 insertions(+), 21 deletions(-) diff --git a/drivers/rtc/rtc-s5m.c b/drivers/rtc/rtc-s5m.c index fb65a8e439d72d9070751c00f5826a403ac0b416..2ad01fb3bc72fe9259a8307584c= 9cf3a839bd492 100644 --- a/drivers/rtc/rtc-s5m.c +++ b/drivers/rtc/rtc-s5m.c @@ -279,17 +279,9 @@ static int s5m_check_pending_alarm_interrupt(struct s5= m_rtc_info *info, static int s5m8767_rtc_set_time_reg(struct s5m_rtc_info *info) { int ret; - unsigned int data; - - ret =3D regmap_read(info->regmap, info->regs->udr_update, &data); - if (ret < 0) { - dev_err(info->dev, "failed to read update reg(%d)\n", ret); - return ret; - } - - data |=3D info->regs->write_time_udr_mask; =20 - ret =3D regmap_write(info->regmap, info->regs->udr_update, data); + ret =3D regmap_set_bits(info->regmap, info->regs->udr_update, + info->regs->write_time_udr_mask); if (ret < 0) { dev_err(info->dev, "failed to write update reg(%d)\n", ret); return ret; @@ -303,19 +295,12 @@ static int s5m8767_rtc_set_time_reg(struct s5m_rtc_in= fo *info) static int s5m8767_rtc_set_alarm_reg(struct s5m_rtc_info *info) { int ret; - unsigned int data; - - ret =3D regmap_read(info->regmap, info->regs->udr_update, &data); - if (ret < 0) { - dev_err(info->dev, "%s: fail to read update reg(%d)\n", - __func__, ret); - return ret; - } + unsigned int udr_mask; =20 - data |=3D info->regs->write_alarm_udr_mask; + udr_mask =3D info->regs->write_alarm_udr_mask; switch (info->device_type) { case S5M8767X: - data &=3D ~S5M_RTC_TIME_EN_MASK; + udr_mask |=3D S5M_RTC_TIME_EN_MASK; break; case S2MPG10: case S2MPS15X: @@ -327,7 +312,8 @@ static int s5m8767_rtc_set_alarm_reg(struct s5m_rtc_inf= o *info) return -EINVAL; } =20 - ret =3D regmap_write(info->regmap, info->regs->udr_update, data); + ret =3D regmap_update_bits(info->regmap, info->regs->udr_update, + udr_mask, info->regs->write_alarm_udr_mask); if (ret < 0) { dev_err(info->dev, "%s: fail to write update reg(%d)\n", __func__, ret); --=20 2.49.0.395.g12beb8f557-goog From nobody Thu Dec 18 22:20:07 2025 Received: from mail-ej1-f45.google.com (mail-ej1-f45.google.com [209.85.218.45]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 3CDFF1F03DC for ; Sun, 23 Mar 2025 22:39:50 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.45 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1742769593; cv=none; b=DjMgWQDLsprlTj9g9Qn0rHP8OWo8/n3OS36RWqWSqbRN9HF0Hdfqw2+xOw57UOr63Hhrq6PhsHdhQsgwXPxjqUt9pjOfZOZ3dH4hSZq8/22l/hrMlnhQVJOmN4kBujVWnX1dKEcZyf9VnvdPLlIkgi2lEHbmGKC1Trfb4/FOYCg= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1742769593; c=relaxed/simple; bh=PIE3UA5RRPW78dm5St1dv8icSuMZdl9l2kQ0j44xOOk=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=M+qLDitqQowCsIPiPL9IiWAcxzgcE0I6fb8hUGp5kAUK4ge26FwhZ9qY60a6icxzDxSJ3zJdUv3MGHwyuw9YTbgoZNvW2d8ZJRFCVWoSxUeD9b9gXqWJGlWbrb7vSkuWnIAvbugZq7e1Ds+2tLu0nFf0H15rziHlfBQnZIJk2Ic= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=zeR+DCHD; arc=none smtp.client-ip=209.85.218.45 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="zeR+DCHD" Received: by mail-ej1-f45.google.com with SMTP id a640c23a62f3a-abf3d64849dso624270866b.3 for ; Sun, 23 Mar 2025 15:39:49 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1742769584; x=1743374384; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=jhTacnWIaHzojbgZVRhkXLoj0m8Qn0dJu2GgWCUO9Oo=; b=zeR+DCHDsDBIMpShQebkdtUXd40HXIHIzeIvW7Kd+RwPGGXp5/ug1FhtqNmdp0LjpT 89inYhfOkztgyaHcOSyUKjD62uXumVJsbYEuhsodv65UAAcZWAaQWGQOn7O2EmSiTIly vYA1ccF21zyR1GxD68OogxS8Vw06JkrR5s5JVYQYxLftw0dwbbSuBFq5eWzOijVSfRoF 8qT78qjhKymxXXtNqphz5NjHp0+5HjuPiZSz7jqp7obOiMYeyMDVZCsz5xXEmAnpj7AN 82OwFGTRWWles4Sc2f3lL9q6w688lwkqMRA49Rg1+meWzd7qZ8CumTyXWx7ittyOKLnC SFiw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1742769584; x=1743374384; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=jhTacnWIaHzojbgZVRhkXLoj0m8Qn0dJu2GgWCUO9Oo=; b=phc4eUWOptFNdpQwxw6lrHNOxkHdBgYjSNEm2CGhmaCSzJe2xeOYJu2gnDX7a1O7Ub U5hDotEqeQiczOspCycOoIpF2uM5xCrVaM12/z87dxJmq9PaeuxrRpedDETlBoMD8uV6 7mWQ+r4lRlElO9q/4q6OQdZYvVJs6bJG5LTg3JgWtm1FHxrWbk2Ci1jvbg+ma6W/BnLc vY7Ht9Cga00R5hGVaKZnIiutJGi24C4YS6+LPoEli4+2hrwlISMOBblBzbrtTo6rWRSq wEbnmz/z7JG2pS8xaDZon2qiCqmR/1wCZU5g8qA/2kPsatS4y4YE2H68yfR9YwEM+eVC O+Ew== X-Forwarded-Encrypted: i=1; AJvYcCXG/EOSUXY7pVy7SBpEqWV1gYAnKt+/bWCsU/nRHtlmfdZDCKpLCPhCrI4H3Ie5mibbPAa2GNT+BR3LE4c=@vger.kernel.org X-Gm-Message-State: AOJu0YxH5DdVT79nklVYESGnuXnMab6gx0xbEX6LvRpQJxcxjiZw0c0M A2YQU+aQ/GAFWlH6Wr8QUM0mjl2QlegTB27HsfsZSfHs68CzKm6tsHchhEETNY0= X-Gm-Gg: ASbGncuVq+w32yYa3+PTNqbS3OaGStSWuVUWmWhSluEmxd/prmUjJItrJ6Ik1zSQacc DH1Rw49/zmHx8keapaWpF2lFPS/pGCMR4Eht3YrT9VDxWQfPCnyBLc+RWqjn9Zu2sTopJ1CrOEz 6etQmRHRiMcK90DSK4lvJPcCVCxGQTX5iDADunFNAWwqnwhkFpP1mQYrCkcUtRc/fFNcnJW+R6d lH0O3/tNQRkszwG6VM11lzQ0pvbdnjrgSLX366XXbQiu8pFtTA1vpdqHTKxY2CYox1AIsvq1HUe Z8/115OPL+pesnenBIfLOaC9K7azowC9CgIsURs30Ji4cCNJB2pyMW4zsZsdTGM8kx4Gx51W5uV vnmHWgKgQLE2EVuMf1E4uJ9WktFfy X-Google-Smtp-Source: AGHT+IGBmk43Q/5KSqStfiKdhkMzhnRppuC/FFtUW+Zjtoma50FlDv2NtShPafcq2wFC3LRoUhXzZg== X-Received: by 2002:a17:907:d2dc:b0:ac3:a7bb:1c2f with SMTP id a640c23a62f3a-ac3f241b95emr1147181566b.7.1742769583868; Sun, 23 Mar 2025 15:39:43 -0700 (PDT) Received: from puffmais.c.googlers.com (8.239.204.35.bc.googleusercontent.com. [35.204.239.8]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-ac3ef86e44dsm559686666b.31.2025.03.23.15.39.43 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 23 Mar 2025 15:39:43 -0700 (PDT) From: =?utf-8?q?Andr=C3=A9_Draszik?= Date: Sun, 23 Mar 2025 22:39:50 +0000 Subject: [PATCH 34/34] MAINTAINERS: add myself as reviewer for Samsung S2M MFD 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: <20250323-s2mpg10-v1-34-d08943702707@linaro.org> References: <20250323-s2mpg10-v1-0-d08943702707@linaro.org> In-Reply-To: <20250323-s2mpg10-v1-0-d08943702707@linaro.org> To: Krzysztof Kozlowski , Lee Jones , Rob Herring , Conor Dooley , Sylwester Nawrocki , Chanwoo Choi , Alim Akhtar , Michael Turquette , Stephen Boyd , Russell King , Catalin Marinas , Will Deacon , Alexandre Belloni Cc: Peter Griffin , Tudor Ambarus , Will McVicker , kernel-team@android.com, linux-kernel@vger.kernel.org, linux-samsung-soc@vger.kernel.org, devicetree@vger.kernel.org, linux-clk@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-rtc@vger.kernel.org, =?utf-8?q?Andr=C3=A9_Draszik?= X-Mailer: b4 0.14.2 I'm working on a Samsung device which includes this MFD and would like to be Cc'ed to further contributions and help on reviewing them. Add me as reviewer. Signed-off-by: Andr=C3=A9 Draszik --- MAINTAINERS | 1 + 1 file changed, 1 insertion(+) diff --git a/MAINTAINERS b/MAINTAINERS index d686e02dc7ccd61e35173df997d2f894ee5ab515..10945909f5b317a894b6afbeb6b= bccd1a691de9d 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -21341,6 +21341,7 @@ F: drivers/platform/x86/samsung-laptop.c =20 SAMSUNG MULTIFUNCTION PMIC DEVICE DRIVERS M: Krzysztof Kozlowski +R: Andr=C3=A9 Draszik L: linux-kernel@vger.kernel.org L: linux-samsung-soc@vger.kernel.org S: Maintained --=20 2.49.0.395.g12beb8f557-goog