6
6
* - 9FGV/9DBV/9DMV/9FGL/9DML/9QXL/9SQ
7
7
* Currently supported:
8
8
* - 9FGV0241
9
+ * - 9FGV0441
9
10
*
10
11
* Copyright (C) 2022 Marek Vasut <marex@denx.de>
11
12
*/
51
52
/* Supported Renesas 9-series models. */
52
53
enum rs9_model {
53
54
RENESAS_9FGV0241 ,
55
+ RENESAS_9FGV0441 ,
54
56
};
55
57
56
58
/* Structure to describe features of a particular 9-series model */
@@ -64,7 +66,7 @@ struct rs9_driver_data {
64
66
struct i2c_client * client ;
65
67
struct regmap * regmap ;
66
68
const struct rs9_chip_info * chip_info ;
67
- struct clk_hw * clk_dif [2 ];
69
+ struct clk_hw * clk_dif [4 ];
68
70
u8 pll_amplitude ;
69
71
u8 pll_ssc ;
70
72
u8 clk_dif_sr ;
@@ -161,6 +163,8 @@ static u8 rs9_calc_dif(const struct rs9_driver_data *rs9, int idx)
161
163
162
164
if (model == RENESAS_9FGV0241 )
163
165
return BIT (idx ) + 1 ;
166
+ else if (model == RENESAS_9FGV0441 )
167
+ return BIT (idx );
164
168
165
169
return 0 ;
166
170
}
@@ -380,14 +384,22 @@ static const struct rs9_chip_info renesas_9fgv0241_info = {
380
384
.did = RS9_REG_DID_TYPE_FGV | 0x02 ,
381
385
};
382
386
387
+ static const struct rs9_chip_info renesas_9fgv0441_info = {
388
+ .model = RENESAS_9FGV0441 ,
389
+ .num_clks = 4 ,
390
+ .did = RS9_REG_DID_TYPE_FGV | 0x04 ,
391
+ };
392
+
383
393
static const struct i2c_device_id rs9_id [] = {
384
394
{ "9fgv0241" , .driver_data = RENESAS_9FGV0241 },
395
+ { "9fgv0441" , .driver_data = RENESAS_9FGV0441 },
385
396
{ }
386
397
};
387
398
MODULE_DEVICE_TABLE (i2c , rs9_id );
388
399
389
400
static const struct of_device_id clk_rs9_of_match [] = {
390
401
{ .compatible = "renesas,9fgv0241" , .data = & renesas_9fgv0241_info },
402
+ { .compatible = "renesas,9fgv0441" , .data = & renesas_9fgv0441_info },
391
403
{ }
392
404
};
393
405
MODULE_DEVICE_TABLE (of , clk_rs9_of_match );
0 commit comments