|
23 | 23 | #define QCOM_RPM_SCALING_ENABLE_ID 0x2
|
24 | 24 | #define QCOM_RPM_XO_MODE_ON 0x2
|
25 | 25 |
|
| 26 | +static const struct clk_parent_data gcc_pxo[] = { |
| 27 | + { .fw_name = "pxo", .name = "pxo_board" }, |
| 28 | +}; |
| 29 | + |
| 30 | +static const struct clk_parent_data gcc_cxo[] = { |
| 31 | + { .fw_name = "cxo", .name = "cxo_board" }, |
| 32 | +}; |
| 33 | + |
26 | 34 | #define DEFINE_CLK_RPM(_platform, _name, _active, r_id) \
|
27 | 35 | static struct clk_rpm _platform##_##_active; \
|
28 | 36 | static struct clk_rpm _platform##_##_name = { \
|
|
32 | 40 | .hw.init = &(struct clk_init_data){ \
|
33 | 41 | .ops = &clk_rpm_ops, \
|
34 | 42 | .name = #_name, \
|
35 |
| - .parent_names = (const char *[]){ "pxo_board" }, \ |
36 |
| - .num_parents = 1, \ |
| 43 | + .parent_data = gcc_pxo, \ |
| 44 | + .num_parents = ARRAY_SIZE(gcc_pxo), \ |
37 | 45 | }, \
|
38 | 46 | }; \
|
39 | 47 | static struct clk_rpm _platform##_##_active = { \
|
|
44 | 52 | .hw.init = &(struct clk_init_data){ \
|
45 | 53 | .ops = &clk_rpm_ops, \
|
46 | 54 | .name = #_active, \
|
47 |
| - .parent_names = (const char *[]){ "pxo_board" }, \ |
48 |
| - .num_parents = 1, \ |
| 55 | + .parent_data = gcc_pxo, \ |
| 56 | + .num_parents = ARRAY_SIZE(gcc_pxo), \ |
49 | 57 | }, \
|
50 | 58 | }
|
51 | 59 |
|
|
56 | 64 | .hw.init = &(struct clk_init_data){ \
|
57 | 65 | .ops = &clk_rpm_xo_ops, \
|
58 | 66 | .name = #_name, \
|
59 |
| - .parent_names = (const char *[]){ "cxo_board" }, \ |
60 |
| - .num_parents = 1, \ |
| 67 | + .parent_data = gcc_cxo, \ |
| 68 | + .num_parents = ARRAY_SIZE(gcc_cxo), \ |
61 | 69 | }, \
|
62 | 70 | }
|
63 | 71 |
|
|
68 | 76 | .hw.init = &(struct clk_init_data){ \
|
69 | 77 | .ops = &clk_rpm_fixed_ops, \
|
70 | 78 | .name = #_name, \
|
71 |
| - .parent_names = (const char *[]){ "pxo" }, \ |
72 |
| - .num_parents = 1, \ |
| 79 | + .parent_data = gcc_pxo, \ |
| 80 | + .num_parents = ARRAY_SIZE(gcc_pxo), \ |
73 | 81 | }, \
|
74 | 82 | }
|
75 | 83 |
|
|
0 commit comments