]> git.proxmox.com Git - mirror_ubuntu-kernels.git/commit
soc: imx: add i.MX8M blk-ctrl driver
authorLucas Stach <l.stach@pengutronix.de>
Sat, 2 Oct 2021 00:59:46 +0000 (02:59 +0200)
committerShawn Guo <shawnguo@kernel.org>
Wed, 6 Oct 2021 12:13:47 +0000 (20:13 +0800)
commit2684ac05a8c4d2d5c49e6c11eb6206b30a284813
treea7e54d69c383f354f56d286d5176e53ab97cb88d
parentda4112230f86558f7d3b2cb261e71160e4f88849
soc: imx: add i.MX8M blk-ctrl driver

This adds a driver for the blk-ctrl blocks found in the i.MX8M* line of
SoCs. The blk-ctrl is a top-level peripheral located in the various *MIX
power domains and interacts with the GPC power controller to provide the
peripherals in the power domain access to the NoC and ensures that those
peripherals are properly reset when their respective power domain is
brought back to life.

Software needs to do different things to make the bus handshake happen
after the GPC *MIX domain is powered up and before it is powered down.
As the requirements are quite different between the various blk-ctrls
there is a callback function provided to hook in the proper sequence.

The peripheral domains are quite uniform, they handle the soft clock
enables and resets in the blk-ctrl address space and sequencing with the
upstream GPC power domains.

Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
Acked-by: Frieder Schrempf <frieder.schrempf@kontron.de>
Reviewed-by: Philipp Zabel <p.zabel@pengutronix.de>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
drivers/soc/imx/Makefile
drivers/soc/imx/imx8m-blk-ctrl.c [new file with mode: 0644]