diff --git a/drivers/pinctrl/pinctrl-rockchip.c b/drivers/pinctrl/pinctrl-rockchip.c index 0efa1024e68e..70fe898a46b0 100644 --- a/drivers/pinctrl/pinctrl-rockchip.c +++ b/drivers/pinctrl/pinctrl-rockchip.c @@ -2110,108 +2110,108 @@ static void rk3568_calc_drv_reg_and_bit(struct rockchip_pin_bank *bank, *bit -= RK3568_DRV_BITS_PER_PIN; } -#define PMU1_IOC_REG (0x0000) -#define PMU2_IOC_REG (0x4000) -#define BUS_IOC_REG (0x8000) -#define VCCIO1_4_IOC_REG (0x9000) -#define VCCIO3_5_IOC_REG (0xA000) -#define VCCIO2_IOC_REG (0xB000) -#define VCCIO6_IOC_REG (0xC000) -#define EMMC_IOC_REG (0xD000) +#define RK3588_PMU1_IOC_REG 0x0000 +#define RK3588_PMU2_IOC_REG 0x4000 +#define RK3588_BUS_IOC_REG 0x8000 +#define RK3588_VCCIO1_4_IOC_REG 0x9000 +#define RK3588_VCCIO3_5_IOC_REG 0xA000 +#define RK3588_VCCIO2_IOC_REG 0xB000 +#define RK3588_VCCIO6_IOC_REG 0xC000 +#define RK3588_EMMC_IOC_REG 0xD000 static const u32 rk3588_ds_regs[][2] = { - {RK_GPIO0_A0, PMU1_IOC_REG + 0x0010}, - {RK_GPIO0_A4, PMU1_IOC_REG + 0x0014}, - {RK_GPIO0_B0, PMU1_IOC_REG + 0x0018}, - {RK_GPIO0_B4, PMU2_IOC_REG + 0x0014}, - {RK_GPIO0_C0, PMU2_IOC_REG + 0x0018}, - {RK_GPIO0_C4, PMU2_IOC_REG + 0x001C}, - {RK_GPIO0_D0, PMU2_IOC_REG + 0x0020}, - {RK_GPIO0_D4, PMU2_IOC_REG + 0x0024}, - {RK_GPIO1_A0, VCCIO1_4_IOC_REG + 0x0020}, - {RK_GPIO1_A4, VCCIO1_4_IOC_REG + 0x0024}, - {RK_GPIO1_B0, VCCIO1_4_IOC_REG + 0x0028}, - {RK_GPIO1_B4, VCCIO1_4_IOC_REG + 0x002C}, - {RK_GPIO1_C0, VCCIO1_4_IOC_REG + 0x0030}, - {RK_GPIO1_C4, VCCIO1_4_IOC_REG + 0x0034}, - {RK_GPIO1_D0, VCCIO1_4_IOC_REG + 0x0038}, - {RK_GPIO1_D4, VCCIO1_4_IOC_REG + 0x003C}, - {RK_GPIO2_A0, EMMC_IOC_REG + 0x0040}, - {RK_GPIO2_A4, VCCIO3_5_IOC_REG + 0x0044}, - {RK_GPIO2_B0, VCCIO3_5_IOC_REG + 0x0048}, - {RK_GPIO2_B4, VCCIO3_5_IOC_REG + 0x004C}, - {RK_GPIO2_C0, VCCIO3_5_IOC_REG + 0x0050}, - {RK_GPIO2_C4, VCCIO3_5_IOC_REG + 0x0054}, - {RK_GPIO2_D0, EMMC_IOC_REG + 0x0058}, - {RK_GPIO2_D4, EMMC_IOC_REG + 0x005C}, - {RK_GPIO3_A0, VCCIO3_5_IOC_REG + 0x0060}, - {RK_GPIO3_A4, VCCIO3_5_IOC_REG + 0x0064}, - {RK_GPIO3_B0, VCCIO3_5_IOC_REG + 0x0068}, - {RK_GPIO3_B4, VCCIO3_5_IOC_REG + 0x006C}, - {RK_GPIO3_C0, VCCIO3_5_IOC_REG + 0x0070}, - {RK_GPIO3_C4, VCCIO3_5_IOC_REG + 0x0074}, - {RK_GPIO3_D0, VCCIO3_5_IOC_REG + 0x0078}, - {RK_GPIO3_D4, VCCIO3_5_IOC_REG + 0x007C}, - {RK_GPIO4_A0, VCCIO6_IOC_REG + 0x0080}, - {RK_GPIO4_A4, VCCIO6_IOC_REG + 0x0084}, - {RK_GPIO4_B0, VCCIO6_IOC_REG + 0x0088}, - {RK_GPIO4_B4, VCCIO6_IOC_REG + 0x008C}, - {RK_GPIO4_C0, VCCIO6_IOC_REG + 0x0090}, - {RK_GPIO4_C2, VCCIO3_5_IOC_REG + 0x0090}, - {RK_GPIO4_C4, VCCIO3_5_IOC_REG + 0x0094}, - {RK_GPIO4_D0, VCCIO2_IOC_REG + 0x0098}, + { RK_GPIO0_A0, RK3588_PMU1_IOC_REG + 0x0010 }, + { RK_GPIO0_A4, RK3588_PMU1_IOC_REG + 0x0014 }, + { RK_GPIO0_B0, RK3588_PMU1_IOC_REG + 0x0018 }, + { RK_GPIO0_B4, RK3588_PMU2_IOC_REG + 0x0014 }, + { RK_GPIO0_C0, RK3588_PMU2_IOC_REG + 0x0018 }, + { RK_GPIO0_C4, RK3588_PMU2_IOC_REG + 0x001C }, + { RK_GPIO0_D0, RK3588_PMU2_IOC_REG + 0x0020 }, + { RK_GPIO0_D4, RK3588_PMU2_IOC_REG + 0x0024 }, + { RK_GPIO1_A0, RK3588_VCCIO1_4_IOC_REG + 0x0020 }, + { RK_GPIO1_A4, RK3588_VCCIO1_4_IOC_REG + 0x0024 }, + { RK_GPIO1_B0, RK3588_VCCIO1_4_IOC_REG + 0x0028 }, + { RK_GPIO1_B4, RK3588_VCCIO1_4_IOC_REG + 0x002C }, + { RK_GPIO1_C0, RK3588_VCCIO1_4_IOC_REG + 0x0030 }, + { RK_GPIO1_C4, RK3588_VCCIO1_4_IOC_REG + 0x0034 }, + { RK_GPIO1_D0, RK3588_VCCIO1_4_IOC_REG + 0x0038 }, + { RK_GPIO1_D4, RK3588_VCCIO1_4_IOC_REG + 0x003C }, + { RK_GPIO2_A0, RK3588_EMMC_IOC_REG + 0x0040 }, + { RK_GPIO2_A4, RK3588_VCCIO3_5_IOC_REG + 0x0044 }, + { RK_GPIO2_B0, RK3588_VCCIO3_5_IOC_REG + 0x0048 }, + { RK_GPIO2_B4, RK3588_VCCIO3_5_IOC_REG + 0x004C }, + { RK_GPIO2_C0, RK3588_VCCIO3_5_IOC_REG + 0x0050 }, + { RK_GPIO2_C4, RK3588_VCCIO3_5_IOC_REG + 0x0054 }, + { RK_GPIO2_D0, RK3588_EMMC_IOC_REG + 0x0058 }, + { RK_GPIO2_D4, RK3588_EMMC_IOC_REG + 0x005C }, + { RK_GPIO3_A0, RK3588_VCCIO3_5_IOC_REG + 0x0060 }, + { RK_GPIO3_A4, RK3588_VCCIO3_5_IOC_REG + 0x0064 }, + { RK_GPIO3_B0, RK3588_VCCIO3_5_IOC_REG + 0x0068 }, + { RK_GPIO3_B4, RK3588_VCCIO3_5_IOC_REG + 0x006C }, + { RK_GPIO3_C0, RK3588_VCCIO3_5_IOC_REG + 0x0070 }, + { RK_GPIO3_C4, RK3588_VCCIO3_5_IOC_REG + 0x0074 }, + { RK_GPIO3_D0, RK3588_VCCIO3_5_IOC_REG + 0x0078 }, + { RK_GPIO3_D4, RK3588_VCCIO3_5_IOC_REG + 0x007C }, + { RK_GPIO4_A0, RK3588_VCCIO6_IOC_REG + 0x0080 }, + { RK_GPIO4_A4, RK3588_VCCIO6_IOC_REG + 0x0084 }, + { RK_GPIO4_B0, RK3588_VCCIO6_IOC_REG + 0x0088 }, + { RK_GPIO4_B4, RK3588_VCCIO6_IOC_REG + 0x008C }, + { RK_GPIO4_C0, RK3588_VCCIO6_IOC_REG + 0x0090 }, + { RK_GPIO4_C2, RK3588_VCCIO3_5_IOC_REG + 0x0090 }, + { RK_GPIO4_C4, RK3588_VCCIO3_5_IOC_REG + 0x0094 }, + { RK_GPIO4_D0, RK3588_VCCIO2_IOC_REG + 0x0098 }, }; static const u32 rk3588_p_regs[][2] = { - {RK_GPIO0_A0, PMU1_IOC_REG + 0x0020}, - {RK_GPIO0_B0, PMU1_IOC_REG + 0x0024}, - {RK_GPIO0_B5, PMU2_IOC_REG + 0x0028}, - {RK_GPIO0_C0, PMU2_IOC_REG + 0x002C}, - {RK_GPIO0_D0, PMU2_IOC_REG + 0x0030}, - {RK_GPIO1_A0, VCCIO1_4_IOC_REG + 0x0110}, - {RK_GPIO1_B0, VCCIO1_4_IOC_REG + 0x0114}, - {RK_GPIO1_C0, VCCIO1_4_IOC_REG + 0x0118}, - {RK_GPIO1_D0, VCCIO1_4_IOC_REG + 0x011C}, - {RK_GPIO2_A0, EMMC_IOC_REG + 0x0120}, - {RK_GPIO2_A4, VCCIO3_5_IOC_REG + 0x0120}, - {RK_GPIO2_B0, VCCIO3_5_IOC_REG + 0x0124}, - {RK_GPIO2_C0, VCCIO3_5_IOC_REG + 0x0128}, - {RK_GPIO2_D0, EMMC_IOC_REG + 0x012C}, - {RK_GPIO3_A0, VCCIO3_5_IOC_REG + 0x0130}, - {RK_GPIO3_B0, VCCIO3_5_IOC_REG + 0x0134}, - {RK_GPIO3_C0, VCCIO3_5_IOC_REG + 0x0138}, - {RK_GPIO3_D0, VCCIO3_5_IOC_REG + 0x013C}, - {RK_GPIO4_A0, VCCIO6_IOC_REG + 0x0140}, - {RK_GPIO4_B0, VCCIO6_IOC_REG + 0x0144}, - {RK_GPIO4_C0, VCCIO6_IOC_REG + 0x0148}, - {RK_GPIO4_C2, VCCIO3_5_IOC_REG + 0x0148}, - {RK_GPIO4_D0, VCCIO2_IOC_REG + 0x014C}, + { RK_GPIO0_A0, RK3588_PMU1_IOC_REG + 0x0020 }, + { RK_GPIO0_B0, RK3588_PMU1_IOC_REG + 0x0024 }, + { RK_GPIO0_B5, RK3588_PMU2_IOC_REG + 0x0028 }, + { RK_GPIO0_C0, RK3588_PMU2_IOC_REG + 0x002C }, + { RK_GPIO0_D0, RK3588_PMU2_IOC_REG + 0x0030 }, + { RK_GPIO1_A0, RK3588_VCCIO1_4_IOC_REG + 0x0110 }, + { RK_GPIO1_B0, RK3588_VCCIO1_4_IOC_REG + 0x0114 }, + { RK_GPIO1_C0, RK3588_VCCIO1_4_IOC_REG + 0x0118 }, + { RK_GPIO1_D0, RK3588_VCCIO1_4_IOC_REG + 0x011C }, + { RK_GPIO2_A0, RK3588_EMMC_IOC_REG + 0x0120 }, + { RK_GPIO2_A4, RK3588_VCCIO3_5_IOC_REG + 0x0120 }, + { RK_GPIO2_B0, RK3588_VCCIO3_5_IOC_REG + 0x0124 }, + { RK_GPIO2_C0, RK3588_VCCIO3_5_IOC_REG + 0x0128 }, + { RK_GPIO2_D0, RK3588_EMMC_IOC_REG + 0x012C }, + { RK_GPIO3_A0, RK3588_VCCIO3_5_IOC_REG + 0x0130 }, + { RK_GPIO3_B0, RK3588_VCCIO3_5_IOC_REG + 0x0134 }, + { RK_GPIO3_C0, RK3588_VCCIO3_5_IOC_REG + 0x0138 }, + { RK_GPIO3_D0, RK3588_VCCIO3_5_IOC_REG + 0x013C }, + { RK_GPIO4_A0, RK3588_VCCIO6_IOC_REG + 0x0140 }, + { RK_GPIO4_B0, RK3588_VCCIO6_IOC_REG + 0x0144 }, + { RK_GPIO4_C0, RK3588_VCCIO6_IOC_REG + 0x0148 }, + { RK_GPIO4_C2, RK3588_VCCIO3_5_IOC_REG + 0x0148 }, + { RK_GPIO4_D0, RK3588_VCCIO2_IOC_REG + 0x014C }, }; static const u32 rk3588_smt_regs[][2] = { - {RK_GPIO0_A0, PMU1_IOC_REG + 0x0030}, - {RK_GPIO0_B0, PMU1_IOC_REG + 0x0034}, - {RK_GPIO0_B5, PMU2_IOC_REG + 0x0040}, - {RK_GPIO0_C0, PMU2_IOC_REG + 0x0044}, - {RK_GPIO0_D0, PMU2_IOC_REG + 0x0048}, - {RK_GPIO1_A0, VCCIO1_4_IOC_REG + 0x0210}, - {RK_GPIO1_B0, VCCIO1_4_IOC_REG + 0x0214}, - {RK_GPIO1_C0, VCCIO1_4_IOC_REG + 0x0218}, - {RK_GPIO1_D0, VCCIO1_4_IOC_REG + 0x021C}, - {RK_GPIO2_A0, EMMC_IOC_REG + 0x0220}, - {RK_GPIO2_A4, VCCIO3_5_IOC_REG + 0x0220}, - {RK_GPIO2_B0, VCCIO3_5_IOC_REG + 0x0224}, - {RK_GPIO2_C0, VCCIO3_5_IOC_REG + 0x0228}, - {RK_GPIO2_D0, EMMC_IOC_REG + 0x022C}, - {RK_GPIO3_A0, VCCIO3_5_IOC_REG + 0x0230}, - {RK_GPIO3_B0, VCCIO3_5_IOC_REG + 0x0234}, - {RK_GPIO3_C0, VCCIO3_5_IOC_REG + 0x0238}, - {RK_GPIO3_D0, VCCIO3_5_IOC_REG + 0x023C}, - {RK_GPIO4_A0, VCCIO6_IOC_REG + 0x0240}, - {RK_GPIO4_B0, VCCIO6_IOC_REG + 0x0244}, - {RK_GPIO4_C0, VCCIO6_IOC_REG + 0x0248}, - {RK_GPIO4_C2, VCCIO3_5_IOC_REG + 0x0248}, - {RK_GPIO4_D0, VCCIO2_IOC_REG + 0x024C}, + { RK_GPIO0_A0, RK3588_PMU1_IOC_REG + 0x0030 }, + { RK_GPIO0_B0, RK3588_PMU1_IOC_REG + 0x0034 }, + { RK_GPIO0_B5, RK3588_PMU2_IOC_REG + 0x0040 }, + { RK_GPIO0_C0, RK3588_PMU2_IOC_REG + 0x0044 }, + { RK_GPIO0_D0, RK3588_PMU2_IOC_REG + 0x0048 }, + { RK_GPIO1_A0, RK3588_VCCIO1_4_IOC_REG + 0x0210 }, + { RK_GPIO1_B0, RK3588_VCCIO1_4_IOC_REG + 0x0214 }, + { RK_GPIO1_C0, RK3588_VCCIO1_4_IOC_REG + 0x0218 }, + { RK_GPIO1_D0, RK3588_VCCIO1_4_IOC_REG + 0x021C }, + { RK_GPIO2_A0, RK3588_EMMC_IOC_REG + 0x0220 }, + { RK_GPIO2_A4, RK3588_VCCIO3_5_IOC_REG + 0x0220 }, + { RK_GPIO2_B0, RK3588_VCCIO3_5_IOC_REG + 0x0224 }, + { RK_GPIO2_C0, RK3588_VCCIO3_5_IOC_REG + 0x0228 }, + { RK_GPIO2_D0, RK3588_EMMC_IOC_REG + 0x022C }, + { RK_GPIO3_A0, RK3588_VCCIO3_5_IOC_REG + 0x0230 }, + { RK_GPIO3_B0, RK3588_VCCIO3_5_IOC_REG + 0x0234 }, + { RK_GPIO3_C0, RK3588_VCCIO3_5_IOC_REG + 0x0238 }, + { RK_GPIO3_D0, RK3588_VCCIO3_5_IOC_REG + 0x023C }, + { RK_GPIO4_A0, RK3588_VCCIO6_IOC_REG + 0x0240 }, + { RK_GPIO4_B0, RK3588_VCCIO6_IOC_REG + 0x0244 }, + { RK_GPIO4_C0, RK3588_VCCIO6_IOC_REG + 0x0248 }, + { RK_GPIO4_C2, RK3588_VCCIO3_5_IOC_REG + 0x0248 }, + { RK_GPIO4_D0, RK3588_VCCIO2_IOC_REG + 0x024C }, }; #define RK3588_PULL_BITS_PER_PIN 2