Commit c7f7ddbd authored by Varshini Rajendran's avatar Varshini Rajendran Committed by Claudiu Beznea
Browse files

clk: at91: sam9x7: update pll clk ranges



Update the min, max ranges of the PLL clocks according to the latest
datasheet to be coherent in the driver. This patch solves the issues in
configuring the clocks related to peripherals with the desired frequency
within the range.

Fixes: 33013b43 ("clk: at91: sam9x7: add sam9x7 pmc driver")
Suggested-by: default avatarPatrice Vilchez <Patrice.Vilchez@microchip.com>
Signed-off-by: default avatarVarshini Rajendran <varshini.rajendran@microchip.com>
Link: https://lore.kernel.org/r/20250714093512.29944-1-varshini.rajendran@microchip.com


Signed-off-by: default avatarClaudiu Beznea <claudiu.beznea@tuxon.dev>
parent 19272b37
Loading
Loading
Loading
Loading
+10 −10
Original line number Diff line number Diff line
@@ -61,44 +61,44 @@ static const struct clk_master_layout sam9x7_master_layout = {

/* Fractional PLL core output range. */
static const struct clk_range plla_core_outputs[] = {
	{ .min = 375000000, .max = 1600000000 },
	{ .min = 800000000, .max = 1600000000 },
};

static const struct clk_range upll_core_outputs[] = {
	{ .min = 600000000, .max = 1200000000 },
	{ .min = 600000000, .max = 960000000 },
};

static const struct clk_range lvdspll_core_outputs[] = {
	{ .min = 400000000, .max = 800000000 },
	{ .min = 600000000, .max = 1200000000 },
};

static const struct clk_range audiopll_core_outputs[] = {
	{ .min = 400000000, .max = 800000000 },
	{ .min = 600000000, .max = 1200000000 },
};

static const struct clk_range plladiv2_core_outputs[] = {
	{ .min = 375000000, .max = 1600000000 },
	{ .min = 800000000, .max = 1600000000 },
};

/* Fractional PLL output range. */
static const struct clk_range plla_outputs[] = {
	{ .min = 732421, .max = 800000000 },
	{ .min = 400000000, .max = 800000000 },
};

static const struct clk_range upll_outputs[] = {
	{ .min = 300000000, .max = 600000000 },
	{ .min = 300000000, .max = 480000000 },
};

static const struct clk_range lvdspll_outputs[] = {
	{ .min = 10000000, .max = 800000000 },
	{ .min = 175000000, .max = 550000000 },
};

static const struct clk_range audiopll_outputs[] = {
	{ .min = 10000000, .max = 800000000 },
	{ .min = 0, .max = 300000000 },
};

static const struct clk_range plladiv2_outputs[] = {
	{ .min = 366210, .max = 400000000 },
	{ .min = 200000000, .max = 400000000 },
};

/* PLL characteristics. */