* [RFC 1/3] devfreq: dt-bindings: Document Exynos3250 devfreq driver [not found] <1647680679.696101418015213383.JavaMail.weblogic@epmlwas04c> @ 2014-12-08 9:46 ` Krzysztof Kozlowski 0 siblings, 0 replies; 4+ messages in thread From: Krzysztof Kozlowski @ 2014-12-08 9:46 UTC (permalink / raw) To: linux-arm-kernel On pon, 2014-12-08 at 05:06 +0000, MyungJoo Ham wrote: > > > > Add documentation for bindings used by Exynos3250 devfreq driver. > > > > Signed-off-by: Krzysztof Kozlowski <k.kozlowski@samsung.com> > > --- > > .../bindings/arm/samsung/exynos3250-devfreq.txt | 66 ++++++++++++++++++++++ > > 1 file changed, 66 insertions(+) > > create mode 100644 Documentation/devicetree/bindings/arm/samsung/exynos3250-devfreq.txt > > > > diff --git a/Documentation/devicetree/bindings/arm/samsung/exynos3250-devfreq.txt b/Documentation/devicetree/bindings/arm/samsung/exynos3250-devfreq.txt > > new file mode 100644 > > index 000000000000..047955e9e371 > > --- /dev/null > > +++ b/Documentation/devicetree/bindings/arm/samsung/exynos3250-devfreq.txt > > @@ -0,0 +1,66 @@ > > +Samsung Exynos3250 devfreq driver > > +================================= > > + > > +The driver support changing frequencies and voltage for: > > + - memory controller and bus, > > + - peripheral buses (left and right). > > + > > +Memory controller and bus > > +========================= > > +Required properties: > > + - compatible : should be "samsung,exynos3250-busfreq-mif" > > + - reg : two sets (offset and length of the register) for PPMU registers > > + used by this devfreq driver > > + - clock-names : one clock of name "dmc" to manage frequency > > + - clocks : phandle and specifier for clock listed in clock-names property > > + - vdd_mif-supply : phandle to MIF voltage regulator > > + > > +Peripheral buses > > +================ > > +Required properties: > > + - compatible : should be "samsung,exynos3250-busfreq-int" > > + - reg : two sets (offset and length of the register) for PPMU registers > > + used by this devfreq driver > > + - clock-names : names for PPMU clocks and bus clocks to manage frequencies; > > + All following clock names (and corresponding phandles) must be > > + provided: > > + - "ppmu_left", "ppmu_right", > > + - "aclk_400", "aclk_266", "aclk_200", "aclk_160", "aclk_gdl", "aclk_gdr", "mfc"; > > + - clocks : phandles and specifiers for clocks listed in clock-names property > > + - vdd_mif-supply : phandle to INT voltage regulator > > + > > +Example > > +======= > > + busfreq_mif: busfreq at 106A0000 { > > + compatible = "samsung,exynos3250-busfreq-mif"; > > + reg = <0x106A0000 0x2000>, <0x106B0000 0x2000>; > > + clocks = <&cmu_dmc CLK_DIV_DMC>; > > + clock-names = "dmc"; > > + vdd_mif-supply = <&buck1_reg>; > > + status = "okay"; > > + }; > > The hardware you are binding hereby is "Exynos PPMU". > You may consider to bind PPMU (DMC PPMU or BUS PPMU whichever hardware > you want to use) with DT and then let exynos bus devfreq driver use > the already-bound devices if found, ... in principle. > In other words or point of view, you may implement PPMU driver in > devfreq class device driver so that you let it bind PPMU device with DT. > It may be done similarly with the device below. Yes, you're right. I saw also similar case for Tegra Activity Monitor. Thanks for pointing this, Krzysztof > > > Cheers, > MyungJoo. > > > > + > > + busfreq_int: busfreq at 116A0000 { > > + compatible = "samsung,exynos3250-busfreq-int"; > > + reg = <0x116A0000 0x2000>, <0x112A0000 0x2000>; > > + clocks = <&cmu CLK_PPMULEFT>, > > + <&cmu CLK_PPMURIGHT>, > > + <&cmu CLK_DIV_ACLK_400_MCUISP>, > > + <&cmu CLK_DIV_ACLK_266>, > > + <&cmu CLK_DIV_ACLK_200>, > > + <&cmu CLK_DIV_ACLK_160>, > > + <&cmu CLK_DIV_GDL>, > > + <&cmu CLK_DIV_GDR>, > > + <&cmu CLK_DIV_MFC>; > > + clock-names = "ppmuleft", > > + "ppmuright", > > + "aclk_400", > > + "aclk_266", > > + "aclk_200", > > + "aclk_160", > > + "aclk_gdl", > > + "aclk_gdr", > > + "mfc"; > > + vdd_int-supply = <&buck3_reg>; > > + status = "okay"; > > + }; > > -- > > 1.9.1 > > ^ permalink raw reply [flat|nested] 4+ messages in thread
* [RFC 0/3] devfreq: exynos: Add driver for Exynos3250 @ 2014-12-05 16:46 Krzysztof Kozlowski 2014-12-05 16:46 ` [RFC 1/3] devfreq: dt-bindings: Document Exynos3250 devfreq driver Krzysztof Kozlowski 0 siblings, 1 reply; 4+ messages in thread From: Krzysztof Kozlowski @ 2014-12-05 16:46 UTC (permalink / raw) To: linux-arm-kernel Hi, The aim of patchset is to gather feedback about adding new devfreq driver for Exynos 3250, along with the bindings. Chanwoo, You were the author of our initial exynos3_bus.c driver so do you want me to add your Signed-off-by? Best regards, Krzysztof Krzysztof Kozlowski (3): devfreq: dt-bindings: Document Exynos3250 devfreq driver devfreq: exynos: Add driver for Exynos3250 ARM: dts: Add devfreq to Exynos3250 and Rinato board .../bindings/arm/samsung/exynos3250-devfreq.txt | 66 ++ arch/arm/boot/dts/exynos3250-rinato.dts | 10 + arch/arm/boot/dts/exynos3250.dtsi | 32 + drivers/devfreq/Kconfig | 12 + drivers/devfreq/Makefile | 1 + drivers/devfreq/exynos/Makefile | 1 + drivers/devfreq/exynos/exynos3_bus.c | 842 +++++++++++++++++++++ 7 files changed, 964 insertions(+) create mode 100644 Documentation/devicetree/bindings/arm/samsung/exynos3250-devfreq.txt create mode 100644 drivers/devfreq/exynos/exynos3_bus.c -- 1.9.1 ^ permalink raw reply [flat|nested] 4+ messages in thread
* [RFC 1/3] devfreq: dt-bindings: Document Exynos3250 devfreq driver 2014-12-05 16:46 [RFC 0/3] devfreq: exynos: Add driver for Exynos3250 Krzysztof Kozlowski @ 2014-12-05 16:46 ` Krzysztof Kozlowski 2014-12-05 16:53 ` Mark Rutland 0 siblings, 1 reply; 4+ messages in thread From: Krzysztof Kozlowski @ 2014-12-05 16:46 UTC (permalink / raw) To: linux-arm-kernel Add documentation for bindings used by Exynos3250 devfreq driver. Signed-off-by: Krzysztof Kozlowski <k.kozlowski@samsung.com> --- .../bindings/arm/samsung/exynos3250-devfreq.txt | 66 ++++++++++++++++++++++ 1 file changed, 66 insertions(+) create mode 100644 Documentation/devicetree/bindings/arm/samsung/exynos3250-devfreq.txt diff --git a/Documentation/devicetree/bindings/arm/samsung/exynos3250-devfreq.txt b/Documentation/devicetree/bindings/arm/samsung/exynos3250-devfreq.txt new file mode 100644 index 000000000000..047955e9e371 --- /dev/null +++ b/Documentation/devicetree/bindings/arm/samsung/exynos3250-devfreq.txt @@ -0,0 +1,66 @@ +Samsung Exynos3250 devfreq driver +================================= + +The driver support changing frequencies and voltage for: + - memory controller and bus, + - peripheral buses (left and right). + +Memory controller and bus +========================= +Required properties: + - compatible : should be "samsung,exynos3250-busfreq-mif" + - reg : two sets (offset and length of the register) for PPMU registers + used by this devfreq driver + - clock-names : one clock of name "dmc" to manage frequency + - clocks : phandle and specifier for clock listed in clock-names property + - vdd_mif-supply : phandle to MIF voltage regulator + +Peripheral buses +================ +Required properties: + - compatible : should be "samsung,exynos3250-busfreq-int" + - reg : two sets (offset and length of the register) for PPMU registers + used by this devfreq driver + - clock-names : names for PPMU clocks and bus clocks to manage frequencies; + All following clock names (and corresponding phandles) must be + provided: + - "ppmu_left", "ppmu_right", + - "aclk_400", "aclk_266", "aclk_200", "aclk_160", "aclk_gdl", "aclk_gdr", "mfc"; + - clocks : phandles and specifiers for clocks listed in clock-names property + - vdd_mif-supply : phandle to INT voltage regulator + +Example +======= + busfreq_mif: busfreq at 106A0000 { + compatible = "samsung,exynos3250-busfreq-mif"; + reg = <0x106A0000 0x2000>, <0x106B0000 0x2000>; + clocks = <&cmu_dmc CLK_DIV_DMC>; + clock-names = "dmc"; + vdd_mif-supply = <&buck1_reg>; + status = "okay"; + }; + + busfreq_int: busfreq at 116A0000 { + compatible = "samsung,exynos3250-busfreq-int"; + reg = <0x116A0000 0x2000>, <0x112A0000 0x2000>; + clocks = <&cmu CLK_PPMULEFT>, + <&cmu CLK_PPMURIGHT>, + <&cmu CLK_DIV_ACLK_400_MCUISP>, + <&cmu CLK_DIV_ACLK_266>, + <&cmu CLK_DIV_ACLK_200>, + <&cmu CLK_DIV_ACLK_160>, + <&cmu CLK_DIV_GDL>, + <&cmu CLK_DIV_GDR>, + <&cmu CLK_DIV_MFC>; + clock-names = "ppmuleft", + "ppmuright", + "aclk_400", + "aclk_266", + "aclk_200", + "aclk_160", + "aclk_gdl", + "aclk_gdr", + "mfc"; + vdd_int-supply = <&buck3_reg>; + status = "okay"; + }; -- 1.9.1 ^ permalink raw reply related [flat|nested] 4+ messages in thread
* [RFC 1/3] devfreq: dt-bindings: Document Exynos3250 devfreq driver 2014-12-05 16:46 ` [RFC 1/3] devfreq: dt-bindings: Document Exynos3250 devfreq driver Krzysztof Kozlowski @ 2014-12-05 16:53 ` Mark Rutland 2014-12-08 9:09 ` Krzysztof Kozlowski 0 siblings, 1 reply; 4+ messages in thread From: Mark Rutland @ 2014-12-05 16:53 UTC (permalink / raw) To: linux-arm-kernel On Fri, Dec 05, 2014 at 04:46:26PM +0000, Krzysztof Kozlowski wrote: > Add documentation for bindings used by Exynos3250 devfreq driver. > > Signed-off-by: Krzysztof Kozlowski <k.kozlowski@samsung.com> > --- > .../bindings/arm/samsung/exynos3250-devfreq.txt | 66 ++++++++++++++++++++++ > 1 file changed, 66 insertions(+) > create mode 100644 Documentation/devicetree/bindings/arm/samsung/exynos3250-devfreq.txt > > diff --git a/Documentation/devicetree/bindings/arm/samsung/exynos3250-devfreq.txt b/Documentation/devicetree/bindings/arm/samsung/exynos3250-devfreq.txt > new file mode 100644 > index 000000000000..047955e9e371 > --- /dev/null > +++ b/Documentation/devicetree/bindings/arm/samsung/exynos3250-devfreq.txt > @@ -0,0 +1,66 @@ > +Samsung Exynos3250 devfreq driver The binding should describe the hardware, not a particular driver of that hardware. Please write the binding (and its documentation) with that in mind, and drop references to the driver and "busfreq". With an adequate binding we can probe the device and forward the information to relevant driver(s) as necessary. > +================================= > + > +The driver support changing frequencies and voltage for: > + - memory controller and bus, > + - peripheral buses (left and right). What do left and right mean in this context? > + > +Memory controller and bus > +========================= > +Required properties: > + - compatible : should be "samsung,exynos3250-busfreq-mif" > + - reg : two sets (offset and length of the register) for PPMU registers > + used by this devfreq driver > + - clock-names : one clock of name "dmc" to manage frequency > + - clocks : phandle and specifier for clock listed in clock-names property > + - vdd_mif-supply : phandle to MIF voltage regulator s/_/-/ in property names please. > + > +Peripheral buses > +================ > +Required properties: > + - compatible : should be "samsung,exynos3250-busfreq-int" What does "int" mean here? > + - reg : two sets (offset and length of the register) for PPMU registers > + used by this devfreq driver > + - clock-names : names for PPMU clocks and bus clocks to manage frequencies; > + All following clock names (and corresponding phandles) must be > + provided: > + - "ppmu_left", "ppmu_right", > + - "aclk_400", "aclk_266", "aclk_200", "aclk_160", "aclk_gdl", "aclk_gdr", "mfc"; > + - clocks : phandles and specifiers for clocks listed in clock-names property > + - vdd_mif-supply : phandle to INT voltage regulator s/_/-/ here too. Thanks, Mark. > + > +Example > +======= > + busfreq_mif: busfreq at 106A0000 { > + compatible = "samsung,exynos3250-busfreq-mif"; > + reg = <0x106A0000 0x2000>, <0x106B0000 0x2000>; > + clocks = <&cmu_dmc CLK_DIV_DMC>; > + clock-names = "dmc"; > + vdd_mif-supply = <&buck1_reg>; > + status = "okay"; > + }; > + > + busfreq_int: busfreq at 116A0000 { > + compatible = "samsung,exynos3250-busfreq-int"; > + reg = <0x116A0000 0x2000>, <0x112A0000 0x2000>; > + clocks = <&cmu CLK_PPMULEFT>, > + <&cmu CLK_PPMURIGHT>, > + <&cmu CLK_DIV_ACLK_400_MCUISP>, > + <&cmu CLK_DIV_ACLK_266>, > + <&cmu CLK_DIV_ACLK_200>, > + <&cmu CLK_DIV_ACLK_160>, > + <&cmu CLK_DIV_GDL>, > + <&cmu CLK_DIV_GDR>, > + <&cmu CLK_DIV_MFC>; > + clock-names = "ppmuleft", > + "ppmuright", > + "aclk_400", > + "aclk_266", > + "aclk_200", > + "aclk_160", > + "aclk_gdl", > + "aclk_gdr", > + "mfc"; > + vdd_int-supply = <&buck3_reg>; > + status = "okay"; > + }; > -- > 1.9.1 > > -- > To unsubscribe from this list: send the line "unsubscribe devicetree" in > the body of a message to majordomo at vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html > ^ permalink raw reply [flat|nested] 4+ messages in thread
* [RFC 1/3] devfreq: dt-bindings: Document Exynos3250 devfreq driver 2014-12-05 16:53 ` Mark Rutland @ 2014-12-08 9:09 ` Krzysztof Kozlowski 0 siblings, 0 replies; 4+ messages in thread From: Krzysztof Kozlowski @ 2014-12-08 9:09 UTC (permalink / raw) To: linux-arm-kernel On pi?, 2014-12-05 at 16:53 +0000, Mark Rutland wrote: > On Fri, Dec 05, 2014 at 04:46:26PM +0000, Krzysztof Kozlowski wrote: > > Add documentation for bindings used by Exynos3250 devfreq driver. > > > > Signed-off-by: Krzysztof Kozlowski <k.kozlowski@samsung.com> > > --- > > .../bindings/arm/samsung/exynos3250-devfreq.txt | 66 ++++++++++++++++++++++ > > 1 file changed, 66 insertions(+) > > create mode 100644 Documentation/devicetree/bindings/arm/samsung/exynos3250-devfreq.txt > > > > diff --git a/Documentation/devicetree/bindings/arm/samsung/exynos3250-devfreq.txt b/Documentation/devicetree/bindings/arm/samsung/exynos3250-devfreq.txt > > new file mode 100644 > > index 000000000000..047955e9e371 > > --- /dev/null > > +++ b/Documentation/devicetree/bindings/arm/samsung/exynos3250-devfreq.txt > > @@ -0,0 +1,66 @@ > > +Samsung Exynos3250 devfreq driver > > The binding should describe the hardware, not a particular driver of > that hardware. Please write the binding (and its documentation) with > that in mind, and drop references to the driver and "busfreq". > > With an adequate binding we can probe the device and forward the > information to relevant driver(s) as necessary. OK > > > +================================= > > + > > +The driver support changing frequencies and voltage for: > > + - memory controller and bus, > > + - peripheral buses (left and right). > > > What do left and right mean in this context? These are names for clock domains associated with buses between memory controller and peripherals. They're called "leftbus" and "rightbus" in documentation. > > > + > > +Memory controller and bus > > +========================= > > +Required properties: > > + - compatible : should be "samsung,exynos3250-busfreq-mif" > > + - reg : two sets (offset and length of the register) for PPMU registers > > + used by this devfreq driver > > + - clock-names : one clock of name "dmc" to manage frequency > > + - clocks : phandle and specifier for clock listed in clock-names property > > + - vdd_mif-supply : phandle to MIF voltage regulator > > s/_/-/ in property names please. Sure. > > > + > > +Peripheral buses > > +================ > > +Required properties: > > + - compatible : should be "samsung,exynos3250-busfreq-int" > > What does "int" mean here? It is the name of power source (VDD_INT) and regulator supplying certain power domains in SoC. However I have no clue what engineers meant by this abbreviation. > > > + - reg : two sets (offset and length of the register) for PPMU registers > > + used by this devfreq driver > > + - clock-names : names for PPMU clocks and bus clocks to manage frequencies; > > + All following clock names (and corresponding phandles) must be > > + provided: > > + - "ppmu_left", "ppmu_right", > > + - "aclk_400", "aclk_266", "aclk_200", "aclk_160", "aclk_gdl", "aclk_gdr", "mfc"; > > + - clocks : phandles and specifiers for clocks listed in clock-names property > > + - vdd_mif-supply : phandle to INT voltage regulator > > s/_/-/ here too. OK Thanks for feedback. Best regards, Krzysztof > Thanks, > Mark. > > > + > > +Example > > +======= > > + busfreq_mif: busfreq at 106A0000 { > > + compatible = "samsung,exynos3250-busfreq-mif"; > > + reg = <0x106A0000 0x2000>, <0x106B0000 0x2000>; > > + clocks = <&cmu_dmc CLK_DIV_DMC>; > > + clock-names = "dmc"; > > + vdd_mif-supply = <&buck1_reg>; > > + status = "okay"; > > + }; > > + > > + busfreq_int: busfreq at 116A0000 { > > + compatible = "samsung,exynos3250-busfreq-int"; > > + reg = <0x116A0000 0x2000>, <0x112A0000 0x2000>; > > + clocks = <&cmu CLK_PPMULEFT>, > > + <&cmu CLK_PPMURIGHT>, > > + <&cmu CLK_DIV_ACLK_400_MCUISP>, > > + <&cmu CLK_DIV_ACLK_266>, > > + <&cmu CLK_DIV_ACLK_200>, > > + <&cmu CLK_DIV_ACLK_160>, > > + <&cmu CLK_DIV_GDL>, > > + <&cmu CLK_DIV_GDR>, > > + <&cmu CLK_DIV_MFC>; > > + clock-names = "ppmuleft", > > + "ppmuright", > > + "aclk_400", > > + "aclk_266", > > + "aclk_200", > > + "aclk_160", > > + "aclk_gdl", > > + "aclk_gdr", > > + "mfc"; > > + vdd_int-supply = <&buck3_reg>; > > + status = "okay"; > > + }; > > -- > > 1.9.1 > > > > -- > > To unsubscribe from this list: send the line "unsubscribe devicetree" in > > the body of a message to majordomo at vger.kernel.org > > More majordomo info at http://vger.kernel.org/majordomo-info.html > > ^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2014-12-08 9:46 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <1647680679.696101418015213383.JavaMail.weblogic@epmlwas04c>
2014-12-08 9:46 ` [RFC 1/3] devfreq: dt-bindings: Document Exynos3250 devfreq driver Krzysztof Kozlowski
2014-12-05 16:46 [RFC 0/3] devfreq: exynos: Add driver for Exynos3250 Krzysztof Kozlowski
2014-12-05 16:46 ` [RFC 1/3] devfreq: dt-bindings: Document Exynos3250 devfreq driver Krzysztof Kozlowski
2014-12-05 16:53 ` Mark Rutland
2014-12-08 9:09 ` Krzysztof Kozlowski
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox