Messages in this thread | | | Date | Fri, 3 Apr 2020 21:21:07 +0200 | From | Marco Felsch <> | Subject | Re: [PATCH v6 1/3] media: dt-bindings: ov8856: Document YAML bindings |
| |
Hi Robert,
On 20-04-02 11:57, Robert Foss wrote: > 'Hey Marco, > > On Tue, 31 Mar 2020 at 17:13, Marco Felsch <m.felsch@pengutronix.de> wrote:
...
> > > + assigned-clocks: > > > + description: > > > + Input clock for the sensor. > > > + > > > + assigned-clock-rates: > > > + description: > > > + Frequency of the xvclk clock in Hertz. > > > > Also this isn't related to the chip. You need this because you are using > > a qcom platform which provides the clock. > > > > IMHO you only need to specify the clock. You can get the frequency with > > the clk_get_rate() function. > > The way I understood this, was that clk_get_rate() would fetch the > clock rate as defined by the 'assigned-clock-rates' > Is this not the case? And if so, what rate would cllk_get_rate() > actually retrieve? >
You're right clk_get_rate() should be used to get the current clk rate but assigned-cock-rates only applies to your setup where the host supplies the clk. This is not the case ff we connect a simple external osc which provides a static (not adjustable) ckl.
...
> > > +examples: > > > + - | > > > + #include <dt-bindings/gpio/gpio.h> > > > + #include <dt-bindings/clock/qcom,camcc-sdm845.h> > > > > IMHO we should avoid examples with hardware specific includes. > > The HW specific include is used for the clocks property. > clocks = <&clock_camcc CAM_CC_MCLK0_CLK>; > > Is there a non hw specific clock that would be better to use for examples?
Yes, just use:
clocks = <&cam_osc>;
The dt-validation provides dummy hooks for such phandles.
Regards, Marco
> > > > > > + > > > + i2c { > > > + #address-cells = <1>; > > > + #size-cells = <0>; > > > + > > > + ov8856: camera@10 { > > > + compatible = "ovti,ov8856"; > > > + reg = <0x10>; > > > + > > > + reset-gpios = <&pio 111 GPIO_ACTIVE_LOW>; > > > + pinctrl-names = "default"; > > > + pinctrl-0 = <&clk_24m_cam>; > > > + > > > + clocks = <&clock_camcc CAM_CC_MCLK0_CLK>; > > > + clock-names = "xvclk"; > > > + clock-frequency = <19200000>; > > > + assigned-clocks = <&clock_camcc CAM_CC_MCLK0_CLK>; > > > + assigned-clock-rates = <19200000>; > > > + > > > + avdd-supply = <&mt6358_vcama2_reg>; > > > + dvdd-supply = <&mt6358_vcamd_reg>; > > > + dovdd-supply = <&mt6358_vcamio_reg>; > > > + > > > + port { > > > + wcam_out: endpoint { > > > + remote-endpoint = <&mipi_in_wcam>; > > > + clock-lanes = <0>; > > > + data-lanes = <1 2 3 4>; > > > + link-frequencies = /bits/ 64 <360000000 180000000>; > > > > Should we add the link-frequencies as optional param? > > > > Regards, > > Marco > > > > > + }; > > > + }; > > > + }; > > > + }; > > > +... > > > \ No newline at end of file > > > diff --git a/MAINTAINERS b/MAINTAINERS > > > index a6fbdf354d34..0f99e863978a 100644 > > > --- a/MAINTAINERS > > > +++ b/MAINTAINERS > > > @@ -12355,6 +12355,7 @@ L: linux-media@vger.kernel.org > > > T: git git://linuxtv.org/media_tree.git > > > S: Maintained > > > F: drivers/media/i2c/ov8856.c > > > +F: Documentation/devicetree/bindings/media/i2c/ov8856.yaml > > > > > > OMNIVISION OV9650 SENSOR DRIVER > > > M: Sakari Ailus <sakari.ailus@linux.intel.com> > > > -- > > > 2.25.1 > > > > > > > > > > -- > > Pengutronix e.K. | | > > Steuerwalder Str. 21 | http://www.pengutronix.de/ | > > 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | > > Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 | >
-- Pengutronix e.K. | | Steuerwalder Str. 21 | http://www.pengutronix.de/ | 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |
| |