On 09.12.2015 13:08, Chanwoo Choi wrote: > This patch updates the documentation for passive bus devices and adds the > detailed example of Exynos3250. > > Signed-off-by: Chanwoo Choi <cw00.choi@xxxxxxxxxxx> > --- > .../devicetree/bindings/devfreq/exynos-bus.txt | 244 ++++++++++++++++++++- > 1 file changed, 241 insertions(+), 3 deletions(-) > > diff --git a/Documentation/devicetree/bindings/devfreq/exynos-bus.txt b/Documentation/devicetree/bindings/devfreq/exynos-bus.txt > index 54a1f9c46c88..c4fdc70f8eac 100644 > --- a/Documentation/devicetree/bindings/devfreq/exynos-bus.txt > +++ b/Documentation/devicetree/bindings/devfreq/exynos-bus.txt > @@ -13,18 +13,23 @@ SoC has the different sub-blocks. So, this difference should be specified > in devicetree file instead of each device driver. In result, this driver > is able to support the bus frequency for all Exynos SoCs. > > -Required properties for bus device: > +Required properties for all bus devices: > - compatible: Should be "samsung,exynos-bus". > - clock-names : the name of clock used by the bus, "bus". > - clocks : phandles for clock specified in "clock-names" property. > - #clock-cells: should be 1. > - operating-points-v2: the OPP table including frequency/voltage information > to support DVFS (Dynamic Voltage/Frequency Scaling) feature. > + > +Required properties for only parent bus device: Maybe: "Required properties only for parent bus devices:" In this binding documentation file the idea of "parent" is not explained. I now it is related to passive devfreq governor but looking at the binding itself it is a new idea, not covered here. > - vdd-supply: the regulator to provide the buses with the voltage. > - devfreq-events: the devfreq-event device to monitor the curret utilization > of buses. > > -Optional properties for bus device: > +Required properties for only passive bus device: "Required properties only for passive bus devices:" > +- devfreq: the parent bus device. > + > +Optional properties for only parent bus device: > - exynos,saturation-ratio: the percentage value which is used to calibrate > the performance count againt total cycle count. > > @@ -33,7 +38,20 @@ Example1: > power line (regulator). The MIF (Memory Interface) AXI bus is used to > transfer data between DRAM and CPU and uses the VDD_MIF regualtor. > > - - power line(VDD_MIF) --> bus for DMC (Dynamic Memory Controller) block > + - MIF (Memory Interface) block > + : VDD_MIF |--- DMC (Dynamic Memory Controller) > + > + - INT (Internal) block > + : VDD_INT |--- LEFTBUS (parent device) > + |--- PERIL > + |--- MFC > + |--- G3D > + |--- RIGHTBUS > + |--- FSYS > + |--- LCD0 > + |--- PERIR > + |--- ISP > + |--- CAM > > - MIF bus's frequency/voltage table > ----------------------- > @@ -46,6 +64,24 @@ Example1: > |L5| 400000 |875000 | > ----------------------- > > + - INT bus's frequency/voltage table > + ---------------------------------------------------------- > + |Block|LEFTBUS|RIGHTBUS|MCUISP |ISP |PERIL ||VDD_INT | > + | name| |LCD0 | | | || | > + | | |FSYS | | | || | > + | | |MFC | | | || | > + ---------------------------------------------------------- > + |Mode |*parent|passive |passive|passive|passive|| | > + ---------------------------------------------------------- > + |Lv |Frequency ||Voltage | > + ---------------------------------------------------------- > + |L1 |50000 |50000 |50000 |50000 |50000 ||900000 | > + |L2 |80000 |80000 |80000 |80000 |80000 ||900000 | > + |L3 |100000 |100000 |100000 |100000 |100000 ||1000000 | > + |L4 |134000 |134000 |200000 |200000 | ||1000000 | > + |L5 |200000 |200000 |400000 |300000 | ||1000000 | > + ---------------------------------------------------------- > + > Example2 : > The bus of DMC (Dynamic Memory Controller) block in exynos3250.dtsi > are listed below: > @@ -84,6 +120,167 @@ Example2 : > }; > }; > > + bus_leftbus: bus_leftbus { > + compatible = "samsung,exynos-bus"; > + clocks = <&cmu CLK_DIV_GDL>; > + clock-names = "bus"; > + operating-points-v2 = <&bus_leftbus_opp_table>; > + status = "disabled"; > + }; > + > + bus_rightbus: bus_rightbus { > + compatible = "samsung,exynos-bus"; > + clocks = <&cmu CLK_DIV_GDR>; > + clock-names = "bus"; > + operating-points-v2 = <&bus_leftbus_opp_table>; > + status = "disabled"; > + }; > + > + bus_lcd0: bus_lcd0 { > + compatible = "samsung,exynos-bus"; > + clocks = <&cmu CLK_DIV_ACLK_160>; > + clock-names = "bus"; > + operating-points-v2 = <&bus_leftbus_opp_table>; > + status = "disabled"; > + }; > + > + bus_fsys: bus_fsys { > + compatible = "samsung,exynos-bus"; > + clocks = <&cmu CLK_DIV_ACLK_200>; > + clock-names = "bus"; > + operating-points-v2 = <&bus_leftbus_opp_table>; > + status = "disabled"; > + }; > + > + bus_mcuisp: bus_mcuisp { > + compatible = "samsung,exynos-bus"; > + clocks = <&cmu CLK_DIV_ACLK_400_MCUISP>; > + clock-names = "bus"; > + operating-points-v2 = <&bus_mcuisp_opp_table>; > + status = "disabled"; > + }; > + > + bus_isp: bus_isp { > + compatible = "samsung,exynos-bus"; > + clocks = <&cmu CLK_DIV_ACLK_266>; > + clock-names = "bus"; > + operating-points-v2 = <&bus_isp_opp_table>; > + status = "disabled"; > + }; > + > + bus_peril: bus_perir { Peril or perir? Best regards, Krzysztof -- To unsubscribe from this list: send the line "unsubscribe linux-samsung-soc" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html