summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/soc/tegra/pmc.c48
-rw-r--r--include/soc/tegra/pmc.h5
2 files changed, 53 insertions, 0 deletions
diff --git a/drivers/soc/tegra/pmc.c b/drivers/soc/tegra/pmc.c
index 84da174bedec..0748174ed4e4 100644
--- a/drivers/soc/tegra/pmc.c
+++ b/drivers/soc/tegra/pmc.c
@@ -1004,7 +1004,55 @@ static const struct tegra_pmc_soc tegra124_pmc_soc = {
1004 .has_gpu_clamps = true, 1004 .has_gpu_clamps = true,
1005}; 1005};
1006 1006
1007static const char * const tegra210_powergates[] = {
1008 [TEGRA_POWERGATE_CPU] = "crail",
1009 [TEGRA_POWERGATE_3D] = "3d",
1010 [TEGRA_POWERGATE_VENC] = "venc",
1011 [TEGRA_POWERGATE_PCIE] = "pcie",
1012 [TEGRA_POWERGATE_L2] = "l2",
1013 [TEGRA_POWERGATE_MPE] = "mpe",
1014 [TEGRA_POWERGATE_HEG] = "heg",
1015 [TEGRA_POWERGATE_SATA] = "sata",
1016 [TEGRA_POWERGATE_CPU1] = "cpu1",
1017 [TEGRA_POWERGATE_CPU2] = "cpu2",
1018 [TEGRA_POWERGATE_CPU3] = "cpu3",
1019 [TEGRA_POWERGATE_CELP] = "celp",
1020 [TEGRA_POWERGATE_CPU0] = "cpu0",
1021 [TEGRA_POWERGATE_C0NC] = "c0nc",
1022 [TEGRA_POWERGATE_C1NC] = "c1nc",
1023 [TEGRA_POWERGATE_SOR] = "sor",
1024 [TEGRA_POWERGATE_DIS] = "dis",
1025 [TEGRA_POWERGATE_DISB] = "disb",
1026 [TEGRA_POWERGATE_XUSBA] = "xusba",
1027 [TEGRA_POWERGATE_XUSBB] = "xusbb",
1028 [TEGRA_POWERGATE_XUSBC] = "xusbc",
1029 [TEGRA_POWERGATE_VIC] = "vic",
1030 [TEGRA_POWERGATE_IRAM] = "iram",
1031 [TEGRA_POWERGATE_NVDEC] = "nvdec",
1032 [TEGRA_POWERGATE_NVJPG] = "nvjpg",
1033 [TEGRA_POWERGATE_AUD] = "aud",
1034 [TEGRA_POWERGATE_DFD] = "dfd",
1035 [TEGRA_POWERGATE_VE2] = "ve2",
1036};
1037
1038static const u8 tegra210_cpu_powergates[] = {
1039 TEGRA_POWERGATE_CPU0,
1040 TEGRA_POWERGATE_CPU1,
1041 TEGRA_POWERGATE_CPU2,
1042 TEGRA_POWERGATE_CPU3,
1043};
1044
1045static const struct tegra_pmc_soc tegra210_pmc_soc = {
1046 .num_powergates = ARRAY_SIZE(tegra210_powergates),
1047 .powergates = tegra210_powergates,
1048 .num_cpu_powergates = ARRAY_SIZE(tegra210_cpu_powergates),
1049 .cpu_powergates = tegra210_cpu_powergates,
1050 .has_tsense_reset = true,
1051 .has_gpu_clamps = true,
1052};
1053
1007static const struct of_device_id tegra_pmc_match[] = { 1054static const struct of_device_id tegra_pmc_match[] = {
1055 { .compatible = "nvidia,tegra210-pmc", .data = &tegra210_pmc_soc },
1008 { .compatible = "nvidia,tegra132-pmc", .data = &tegra124_pmc_soc }, 1056 { .compatible = "nvidia,tegra132-pmc", .data = &tegra124_pmc_soc },
1009 { .compatible = "nvidia,tegra124-pmc", .data = &tegra124_pmc_soc }, 1057 { .compatible = "nvidia,tegra124-pmc", .data = &tegra124_pmc_soc },
1010 { .compatible = "nvidia,tegra114-pmc", .data = &tegra114_pmc_soc }, 1058 { .compatible = "nvidia,tegra114-pmc", .data = &tegra114_pmc_soc },
diff --git a/include/soc/tegra/pmc.h b/include/soc/tegra/pmc.h
index f5c0de43a5fa..d18efe402ff1 100644
--- a/include/soc/tegra/pmc.h
+++ b/include/soc/tegra/pmc.h
@@ -67,6 +67,11 @@ int tegra_pmc_cpu_remove_clamping(int cpuid);
67#define TEGRA_POWERGATE_XUSBC 22 67#define TEGRA_POWERGATE_XUSBC 22
68#define TEGRA_POWERGATE_VIC 23 68#define TEGRA_POWERGATE_VIC 23
69#define TEGRA_POWERGATE_IRAM 24 69#define TEGRA_POWERGATE_IRAM 24
70#define TEGRA_POWERGATE_NVDEC 25
71#define TEGRA_POWERGATE_NVJPG 26
72#define TEGRA_POWERGATE_AUD 27
73#define TEGRA_POWERGATE_DFD 28
74#define TEGRA_POWERGATE_VE2 29
70 75
71#define TEGRA_POWERGATE_3D0 TEGRA_POWERGATE_3D 76#define TEGRA_POWERGATE_3D0 TEGRA_POWERGATE_3D
72 77