linux/drivers/soc
Jianqun Xu 28b05a64e4 soc: rockchip: io-domain: add rk3568 support
The io-domain registers on RK3568 SoCs have three separated bits to
enable/disable the 1.8v/2.5v/3.3v power.

This patch make the write to be a operation, allow rk3568 uses a private
register set function.

Since the 2.5v mode hasn't been fully validated yet, the driver only sets
1.8v [enable] + 3.3v [disable] for 1.8v mode
1.8v [disable] + 3.3v [enable] for 3.3v mode

There is not register order requirement which has been cleared by our IC
team.

For future reference the full usage matrix including the 2.5V setting is:
case  V33  V25  V18  result
0     0    0    0    IO safe, but cannot work
1     0    0    1    IO require 1.8V, should < 1.98V, otherwise IO may damage
2     0    1    0    IO require 2.5V, should < 2.75V, otherwise IO may damage
3     0    1    1    Invalid state, should avoid
4     1    0    0    IO require 3.3V, should < 3.63V, otherwise IO may damage
5     1    0    1    IO require 1.8V, should < 1.98V, otherwise IO may damage
6     1    1    0    IO require 2.5V, should < 2.75V, otherwise IO may damage
7     1    1    1    Invalid state, should avoid

Signed-off-by: Jianqun Xu <jay.xu@rock-chips.com>
Tested-by: Peter Geis <pgwipeout@gmail.com>
[added mode clarification from Jay]
Link: https://lore.kernel.org/r/20210805120107.27007-3-michael.riesch@wolfvision.net
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2021-08-14 08:23:47 +02:00
..
actions soc: actions: include header to fix missing prototype 2020-09-22 12:45:16 +05:30
amlogic ARM: Drivers for 5.14 2021-07-10 09:46:20 -07:00
aspeed soc: aspeed: fix a ternary sign expansion bug 2021-04-23 11:16:47 +02:00
atmel drivers: soc: atmel: fix type for same7 2021-02-04 21:54:31 +01:00
bcm ARM: Drivers for 5.14 2021-07-10 09:46:20 -07:00
canaan clk: Add RISC-V Canaan Kendryte K210 clock driver 2021-02-22 17:51:04 -08:00
dove
fsl IOMMU Updates for Linux v5.13 2021-05-01 09:33:00 -07:00
gemini
imx ARM: Drivers for 5.14 2021-07-10 09:46:20 -07:00
ixp4xx ARM: SoC changes for 5.14 2021-07-10 09:22:44 -07:00
lantiq soc: lantiq: convert to devm_platform_ioremap_resource 2020-01-10 11:44:52 -08:00
litex drivers/soc/litex: remove 8-bit subregister option 2021-06-11 04:35:40 +09:00
mediatek soc: mediatek: pwrap: add pwrap driver for MT8195 SoC 2021-06-03 19:41:26 +02:00
qcom ARM: Drivers for 5.14 2021-07-10 09:46:20 -07:00
renesas soc: renesas: Add support to read LSI DEVID register of RZ/G2{L,LC} SoC's 2021-06-10 15:29:03 +02:00
rockchip soc: rockchip: io-domain: add rk3568 support 2021-08-14 08:23:47 +02:00
samsung soc: samsung: pm_domains: Convert to regular platform driver 2021-01-15 20:50:34 +01:00
sifive RISC-V: sifive_l2_cache: Update L2 cache driver to support SiFive FU740 2021-01-07 17:28:27 -08:00
sunxi ARM: SoC drivers for v5.12 2021-02-20 18:42:28 -08:00
tegra ARM: SoC changes for 5.14 2021-07-10 09:22:44 -07:00
ti soc: ti: wkup_m3_ipc: Remove redundant error printing in wkup_m3_ipc_probe() 2021-06-04 13:04:13 -07:00
ux500 soc: ux500: Use custom soc attribute group instead of device_create_file 2020-07-06 09:48:06 +01:00
versatile soc: integrator: Drop pointless static qualifier in integrator_soc_init() 2020-08-20 08:57:05 +02:00
xilinx clk: xilinx: move xlnx_vcu clock driver from soc 2021-02-08 18:31:25 -08:00
Kconfig RISC-V Patches for the 5.12 Merge Window 2021-02-26 10:28:35 -08:00
Makefile RISC-V Patches for the 5.12 Merge Window 2021-02-26 10:28:35 -08:00