@@ -556,6 +556,7 @@ static int tegra124_dfll_fcpu_probe(struct platform_device *pdev)
struct tegra_dfll_soc_data *soc;
const struct dfll_fcpu_data *fcpu_data;
struct rail_alignment align;
+ u32 max_freq;
fcpu_data = of_device_get_match_data(&pdev->dev);
if (!fcpu_data)
@@ -589,7 +590,12 @@ static int tegra124_dfll_fcpu_probe(struct platform_device *pdev)
return err;
}
- soc->max_freq = fcpu_data->cpu_max_freq_table[speedo_id];
+ if (!of_property_read_u32(pdev->dev.of_node,
+ "nvidia,dfll-max-freq",
+ &max_freq))
+ soc->max_freq = max_freq;
+ else
+ soc->max_freq = fcpu_data->cpu_max_freq_table[speedo_id];
soc->cvb = tegra_cvb_add_opp_table(soc->dev, fcpu_data->cpu_cvb_tables,
fcpu_data->cpu_cvb_tables_size,