|
@@ -680,13 +680,12 @@ static void psc_calc_rate(struct clk *clk, int pscnum, struct device_node *np)
|
|
|
static void psc_clks_init(void)
|
|
|
{
|
|
|
struct device_node *np;
|
|
|
- const u32 *cell_index;
|
|
|
struct platform_device *ofdev;
|
|
|
+ u32 reg;
|
|
|
|
|
|
for_each_compatible_node(np, NULL, "fsl,mpc5121-psc") {
|
|
|
- cell_index = of_get_property(np, "cell-index", NULL);
|
|
|
- if (cell_index) {
|
|
|
- int pscnum = *cell_index;
|
|
|
+ if (!of_property_read_u32(np, "reg", ®)) {
|
|
|
+ int pscnum = (reg & 0xf00) >> 8;
|
|
|
struct clk *clk = psc_dev_clk(pscnum);
|
|
|
|
|
|
clk->flags = CLK_HAS_RATE | CLK_HAS_CTRL;
|