From patchwork Tue Jun 27 13:10:32 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Markus Schneider-Pargmann X-Patchwork-Id: 13294476 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 9DC65EB64D9 for ; Tue, 27 Jun 2023 13:11:29 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:Message-Id:Date:Subject:Cc :To:From:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To:References: List-Owner; bh=9XUuP7yQEt/VnIDRwqp8lrSJatXzZB8+TmrB51K55BI=; b=Nqyb+IrALxgmvt pr5o9tq7kRqI8yHk98PjL6IxWDWDLva+VsCd2DRn8IVApmWtxOl6QvKByP8PKA2LnPDIeyCwChS7Q ZPUqdchpvfcpGeaiI8Je60KgIpI83OobiKq/OYDdVb+ntU2YPhhSX0PtctMKFOYfV6wbw3agQ81O8 mF1gOkG/keA+kJjGnwqX3C8BdTmoGGPv7WrE4+3l9DGFi+pF/iZNYSz3of2WbGAFA8bWMMyw4jXl4 9wqmLEnTJVHSu0jUfq+t2EGHiKcDqIn4W75Yf75Q8GTDYAvcIWrA1340zJ9k4SNW0PJWqVgM/1qHl i9N/wdXmemuUMVE5ykvw==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.96 #2 (Red Hat Linux)) id 1qE8TG-00DEuP-2f; Tue, 27 Jun 2023 13:11:02 +0000 Received: from mail-lf1-x135.google.com ([2a00:1450:4864:20::135]) by bombadil.infradead.org with esmtps (Exim 4.96 #2 (Red Hat Linux)) id 1qE8T3-00DEm3-0E for linux-arm-kernel@lists.infradead.org; Tue, 27 Jun 2023 13:10:53 +0000 Received: by mail-lf1-x135.google.com with SMTP id 2adb3069b0e04-4f973035d60so5918498e87.3 for ; Tue, 27 Jun 2023 06:10:45 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=baylibre-com.20221208.gappssmtp.com; s=20221208; t=1687871444; x=1690463444; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=GBuLo0b6IxVX9cXB2ei5gmONECQso6leYmJZ9ORNlhg=; b=SPdHVzDtj10utplwPccXd3PwCKXAvbof5DY6uypVigad+MbSspIV4rrelrtToaG8HF f03cJzy4nX4flmYtJ4q8hvulmwdRgHexG9cXEFjKKp22eCJHPyiDC65bq8vO5Z9xUaqm jzTtQdahRaeqGXDtN/W/2VNIaZ8NiF416SYqGUV9vN1KgD0v3JqYhSsP48m5tlh5ljlh Jai6Z3y5pAzAMMTLtLQQtMbIKoax5ClX6FSI3R3a0gEXcQ93hVDfJFdRont0ip2iMJJD yaoUdRzpk4NduTc80+/eMvOmrwHFdch0aBxQWRmwaHkSZhjUBfFvSHDYGyHKM0gkIRmO RhLA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687871444; x=1690463444; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=GBuLo0b6IxVX9cXB2ei5gmONECQso6leYmJZ9ORNlhg=; b=Ci5HnlsovLbtTNYHScPUpusqc8a3HU4daYtXX7LjcwQ6SHZglIpAuLHm65NePeskWD nF8ji2o1ZvB9vixS1VpEjCvk3u9OHO8s+w0fh+X3x14Plp7zpGX0R2Ox2Jw/ajE9L3+U w1FdDo6EW3unBG3oGDJF6KW2XH+8qQSruu+Us4lHZSX2EmBoX1s2hsJpQ6VST+tsGZt7 GqJW6a6/6NYPzE70ZimxSS+W6pMYQa4/xf43AsTWQ1+Qh8t1/ih17UWB/mPeiWFZn9tn WUeKSDrvfdSh11xkUfuA15chlT3XE5s3VP1IPjuPCW9/bS1rnThopKoFw1Slj+adhkbm KgYQ== X-Gm-Message-State: AC+VfDyXyVaTzva1Q5NLJd5Zvpr9/1kfHftKepqjmDnN82vsAOAUGoR4 t9d/Kw4zWs7MHIWpnENmOiKoZg== X-Google-Smtp-Source: ACHHUZ50JKean1DAHPXWBxcFyTzxCE/EXC9Xbx9DILD4S3N7MM6uSMBrhmJzZhxaevVJ/oWJ1112/A== X-Received: by 2002:a19:9141:0:b0:4f8:770f:1b01 with SMTP id y1-20020a199141000000b004f8770f1b01mr12263567lfj.19.1687871444260; Tue, 27 Jun 2023 06:10:44 -0700 (PDT) Received: from blmsp.fritz.box ([2001:4091:a247:82fa:b762:4f68:e1ed:5041]) by smtp.gmail.com with ESMTPSA id z26-20020a1c4c1a000000b003f91e32b1ebsm1403196wmf.17.2023.06.27.06.10.43 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 27 Jun 2023 06:10:43 -0700 (PDT) From: Markus Schneider-Pargmann To: Rob Herring , Krzysztof Kozlowski , Conor Dooley , Matthias Brugger Cc: Chun-Jie Chen , AngeloGioacchino Del Regno , Tinghan Shen , Fabien Parent , devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, Markus Schneider-Pargmann Subject: [PATCH v6 0/8] soc: mediatek: MT8365 power support Date: Tue, 27 Jun 2023 15:10:32 +0200 Message-Id: <20230627131040.3418538-1-msp@baylibre.com> X-Mailer: git-send-email 2.40.1 MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20230627_061049_110808_38203DCC X-CRM114-Status: GOOD ( 17.23 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org Hi, Thanks Angelo for the feedback, this version should fix all issues you reported as well as the kernel test robot issues. Thanks for any feedback! Best, Markus Based on v6.4-rc1 Changes in v6: - Change flags field to be u8 instead of u32 - Use macro concatenation to simplify BUS_PROT macros: BUS_PROT_WR(_hwip, ...) etc. - Use the final bit values for scpsys_bus_prot_flags from the beginning of the series. - Changed scpsys_domain_data->caps to be u16 to accommodate the new flag MTK_SCPD_STRICT_BUS_PROTECTION. Changes in v5: - Create defines for all registers and bits in mt8365 power domain patch - Redesign scpsys_bus_prot_data to use flags to store reg_update, clr_ack as well as the difference between SMI and INFRACFG. The code uses the appropriate regmap depending on the flags. - The WAY_EN patch now uses two flags, one for inverted operations 'BUS_PROT_INVERTED' and one to use infracfg-nao for the status flags 'BUS_PROT_STA_COMPONENT_INFRA_NAO'. Changes in v4: - Redesigned WAY_EN patch and split it up in smaller patches. - Added two documentation patches. - Added mediatek,infracfg-nao field to the binding. Changes in v3: - Mainly redesigned WAY_EN patch to be easier to understand - Rebased onto v6.0-rc1 - Several other stuff that is described in the individual patches Changes in v2: - Updated error handling path for scpsys_power_on() - Minor updates described in each patch Previous versions: v1 - https://lore.kernel.org/linux-mediatek/20220530204214.913251-1-fparent@baylibre.com/ v2 - https://lore.kernel.org/linux-mediatek/20220725081853.1636444-1-msp@baylibre.com/ v3 - https://lore.kernel.org/linux-mediatek/20220822144303.3438467-1-msp@baylibre.com/ v4 - https://lore.kernel.org/linux-arm-kernel/20230105170735.1637416-1-msp@baylibre.com/ Alexandre Bailon (2): soc: mediatek: Add support for WAY_EN operations soc: mediatek: Add support for MTK_SCPD_STRICT_BUS_PROTECTION cap Fabien Parent (2): dt-bindings: power: Add MT8365 power domains soc: mediatek: pm-domains: Add support for MT8365 Markus Schneider-Pargmann (4): soc: mediatek: pm-domains: Move bools to a flags field soc: mediatek: pm-domains: Split bus_prot_mask soc: mediatek: pm-domains: Create bus protection operation functions soc: mediatek: pm-domains: Unify configuration for infracfg and smi .../power/mediatek,power-controller.yaml | 6 + drivers/soc/mediatek/mt6795-pm-domains.h | 16 +- drivers/soc/mediatek/mt8167-pm-domains.h | 20 +- drivers/soc/mediatek/mt8173-pm-domains.h | 16 +- drivers/soc/mediatek/mt8183-pm-domains.h | 125 ++++++---- drivers/soc/mediatek/mt8186-pm-domains.h | 236 ++++++++++-------- drivers/soc/mediatek/mt8188-pm-domains.h | 223 +++++++++++------ drivers/soc/mediatek/mt8192-pm-domains.h | 112 ++++++--- drivers/soc/mediatek/mt8195-pm-domains.h | 199 +++++++++------ drivers/soc/mediatek/mt8365-pm-domains.h | 197 +++++++++++++++ drivers/soc/mediatek/mtk-pm-domains.c | 157 ++++++++---- drivers/soc/mediatek/mtk-pm-domains.h | 51 ++-- .../dt-bindings/power/mediatek,mt8365-power.h | 19 ++ include/linux/soc/mediatek/infracfg.h | 41 +++ 14 files changed, 972 insertions(+), 446 deletions(-) create mode 100644 drivers/soc/mediatek/mt8365-pm-domains.h create mode 100644 include/dt-bindings/power/mediatek,mt8365-power.h