[PATCH v1 0/7] imx-gpcv2 improvements
Adrien Grassein
adrien.grassein at gmail.com
Wed Apr 7 22:21:15 BST 2021
Hi,
This patch set aims is to add the support of the i.MX8 MM power domains
on the mainline kernel.
To achieve this, I do several patches
- Check errors when reading or writing registers (concerns i.MX8M base
implementation);
- Fix power up/down sequence. Handshake was not checked and it was
not called at the appropriate time (concerns i.MX8M base
implementaions);
- Allow domains without power sequence control like the HSIOMIX of the
i.MX8MM.
- Add some i.MX8MM domains (HSIO and OTGS);
- Introduce quirks. For example, i.MX8MM OTG domains should not be
powered off (seen n the source code of th i.MX ATF). Quirks are
easily upgrable for other cases.
- Finally I defined power domains into the imx8mm.dtb file.
I know that this kind of patch is rejected by NXP ut the other way
(callin ATF directly) was also rejected.
I also know that NXP is concerned abou adding hundred lines of codes for
each new SOC but it' the way it works on Linux. And the "added code"
mainly consist of adding structures, defines and generic methods for
regmap.
If it's a real problem, maybe we can introduc a new "gpcv3" driver for
i.MX8MM, i.MX8MN and i.MX8MP.
Thanks,
Adrien Grassein (7):
soc: imx: gpcv2: check for errors when r/w registers
soc: imx: gpcv2: Fix power up/down sequence
soc: imx: gpcv2: allow domains without power sequence control
dt-bindings: power: fsl,imx-gpcv2: add definitions for i.MX8MM
soc: imx: gpcv2: add HSIOMIX and USB domains for i.MX8MM
soc: imx: gpcv2: add quirks to domains
arm64: dts: imx8mm: add power-domains
.../bindings/power/fsl,imx-gpcv2.yaml | 7 +-
arch/arm64/boot/dts/freescale/imx8mm.dtsi | 35 ++
drivers/soc/imx/gpcv2.c | 336 ++++++++++++++----
include/dt-bindings/power/imx8mm-power.h | 21 ++
4 files changed, 333 insertions(+), 66 deletions(-)
create mode 100644 include/dt-bindings/power/imx8mm-power.h
--
2.25.1
More information about the linux-arm-kernel
mailing list