Skip to content

Commit 1758c68

Browse files
catalin-popescubebarino
authored andcommitted
clk: rs9: fix wrong default value for clock amplitude
According to 9FGV0241, 9FGV0441 & 9FGV0841 datasheets, the default value for the clock amplitude is 0.8V, while the driver assumes 0.7V. Additionally, define constants for default values for both clock amplitude and spread spectrum and use them. Fixes: 892e0dd ("clk: rs9: Add Renesas 9-series PCIe clock generator driver") Signed-off-by: Catalin Popescu <catalin.popescu@leica-geosystems.com> Reviewed-by: Marek Vasut <marex@denx.de> Link: https://lore.kernel.org/r/20240415140348.2887619-1-catalin.popescu@leica-geosystems.com Signed-off-by: Stephen Boyd <sboyd@kernel.org>
1 parent a09b2d6 commit 1758c68

File tree

1 file changed

+6
-4
lines changed

1 file changed

+6
-4
lines changed

drivers/clk/clk-renesas-pcie.c

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -25,10 +25,12 @@
2525
#define RS9_REG_SS_AMP_0V7 0x1
2626
#define RS9_REG_SS_AMP_0V8 0x2
2727
#define RS9_REG_SS_AMP_0V9 0x3
28+
#define RS9_REG_SS_AMP_DEFAULT RS9_REG_SS_AMP_0V8
2829
#define RS9_REG_SS_AMP_MASK 0x3
2930
#define RS9_REG_SS_SSC_100 0
3031
#define RS9_REG_SS_SSC_M025 (1 << 3)
3132
#define RS9_REG_SS_SSC_M050 (3 << 3)
33+
#define RS9_REG_SS_SSC_DEFAULT RS9_REG_SS_SSC_100
3234
#define RS9_REG_SS_SSC_MASK (3 << 3)
3335
#define RS9_REG_SS_SSC_LOCK BIT(5)
3436
#define RS9_REG_SR 0x2
@@ -205,8 +207,8 @@ static int rs9_get_common_config(struct rs9_driver_data *rs9)
205207
int ret;
206208

207209
/* Set defaults */
208-
rs9->pll_amplitude = RS9_REG_SS_AMP_0V7;
209-
rs9->pll_ssc = RS9_REG_SS_SSC_100;
210+
rs9->pll_amplitude = RS9_REG_SS_AMP_DEFAULT;
211+
rs9->pll_ssc = RS9_REG_SS_SSC_DEFAULT;
210212

211213
/* Output clock amplitude */
212214
ret = of_property_read_u32(np, "renesas,out-amplitude-microvolt",
@@ -247,13 +249,13 @@ static void rs9_update_config(struct rs9_driver_data *rs9)
247249
int i;
248250

249251
/* If amplitude is non-default, update it. */
250-
if (rs9->pll_amplitude != RS9_REG_SS_AMP_0V7) {
252+
if (rs9->pll_amplitude != RS9_REG_SS_AMP_DEFAULT) {
251253
regmap_update_bits(rs9->regmap, RS9_REG_SS, RS9_REG_SS_AMP_MASK,
252254
rs9->pll_amplitude);
253255
}
254256

255257
/* If SSC is non-default, update it. */
256-
if (rs9->pll_ssc != RS9_REG_SS_SSC_100) {
258+
if (rs9->pll_ssc != RS9_REG_SS_SSC_DEFAULT) {
257259
regmap_update_bits(rs9->regmap, RS9_REG_SS, RS9_REG_SS_SSC_MASK,
258260
rs9->pll_ssc);
259261
}

0 commit comments

Comments
 (0)