Re: [PATCH 1/2] [media] atmel-isc: add the Image Sensor Controller code

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 





On 4/15/2016 00:21, Laurent Pinchart wrote:
>+		return -EINVAL;
>+
>+	parent_names = kcalloc(num_parents, sizeof(char *), GFP_KERNEL);
>+	if (!parent_names)
>+		return -ENOMEM;
>+
>+	of_clk_parent_fill(np, parent_names, num_parents);
>+
>+	init.parent_names	= parent_names;
>+	init.num_parents	= num_parents;
>+	init.name		= clk_name;
>+	init.ops		= &isc_clk_ops;
>+	init.flags		= CLK_SET_RATE_GATE | CLK_SET_PARENT_GATE;
>+
>+	isc_clk = &isc->isc_clks[id];
>+	isc_clk->hw.init	= &init;
>+	isc_clk->regmap		= regmap;
>+	isc_clk->lock		= lock;
>+	isc_clk->id		= id;
>+
>+	isc_clk->clk = clk_register(NULL, &isc_clk->hw);
>+	if (!IS_ERR(isc_clk->clk))
>+		of_clk_add_provider(np, of_clk_src_simple_get, isc_clk->clk);
>+	else {
>+		dev_err(isc->dev, "%s: clock register fail\n", clk_name);
>+		ret = PTR_ERR(isc_clk->clk);
>+		goto free_parent_names;
>+	}
>+
>+free_parent_names:
>+	kfree(parent_names);
>+	return ret;
>+}
>+
>+static int isc_clk_init(struct isc_device *isc)
>+{
>+	struct device_node *np = of_get_child_by_name(isc->dev->of_node,
>+						      "clk_in_isc");
Do you really need the clk_in_isc DT node ? I would have assumed that the
clock topology inside the ISC is fixed, and that it would be enough to just
specify the three parent clocks in the ISC DT node and create the two internal
clocks in the driver without needing a DT description.

Hi Laurent,

I think more, and the clk_in_isc DT node should be needed. The clock topology inside the ISC is fixed, but isc will provide the clock to sensor, we need create the corresponding clock node int DT file, then the sensor will get this clock and set the clock rate in DT file.

--
To unsubscribe from this list: send the line "unsubscribe linux-media" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux Input]     [Video for Linux]     [Gstreamer Embedded]     [Mplayer Users]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]
  Powered by Linux