[PATCH v6 0/8] soc: mediatek: MT8365 power support

From: Markus Schneider-Pargmann
Date: Tue Jun 27 2023 - 09:11:02 EST


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@xxxxxxxxxxxx/
v2 - https://lore.kernel.org/linux-mediatek/20220725081853.1636444-1-msp@xxxxxxxxxxxx/
v3 - https://lore.kernel.org/linux-mediatek/20220822144303.3438467-1-msp@xxxxxxxxxxxx/
v4 - https://lore.kernel.org/linux-arm-kernel/20230105170735.1637416-1-msp@xxxxxxxxxxxx/

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

--
2.40.1