<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel/linux.git/drivers/clk/qcom, branch v4.4.171</title>
<subtitle>Linux kernel stable tree (mirror)</subtitle>
<id>https://git.radix-linux.su/kernel/linux.git/atom?h=v4.4.171</id>
<link rel='self' href='https://git.radix-linux.su/kernel/linux.git/atom?h=v4.4.171'/>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/'/>
<updated>2018-03-22T08:23:28+00:00</updated>
<entry>
<title>clk: qcom: msm8916: fix mnd_width for codec_digcodec</title>
<updated>2018-03-22T08:23:28+00:00</updated>
<author>
<name>Srinivas Kandagatla</name>
<email>srinivas.kandagatla@linaro.org</email>
</author>
<published>2017-12-06T12:11:38+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=73b81f16cfdaa91ffc5c647f08415a0dbf75e905'/>
<id>urn:sha1:73b81f16cfdaa91ffc5c647f08415a0dbf75e905</id>
<content type='text'>
[ Upstream commit d8e488e8242ecf129eebc440c92d800a99ca109d ]

This patch fixes missing mnd_width for codec_digital clk, this is now set to
8 inline with datasheet.

Fixes: 3966fab8b6ab ("clk: qcom: Add MSM8916 Global Clock Controller support")
Signed-off-by: Srinivas Kandagatla &lt;srinivas.kandagatla@linaro.org&gt;
Signed-off-by: Stephen Boyd &lt;sboyd@codeaurora.org&gt;
Signed-off-by: Sasha Levin &lt;alexander.levin@microsoft.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>clk: qcom: msm8916: Fix crypto clock flags</title>
<updated>2016-06-01T19:15:49+00:00</updated>
<author>
<name>Andy Gross</name>
<email>andy.gross@linaro.org</email>
</author>
<published>2016-05-03T20:24:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=aef531699fe1f26dd0d3e8fc9555500a517276b9'/>
<id>urn:sha1:aef531699fe1f26dd0d3e8fc9555500a517276b9</id>
<content type='text'>
commit 2a0974aa1a0b40a92387ea03dbfeacfbc9ba182c upstream.

This patch adds the CLK_SET_RATE_PARENT flag for the crypto core and
ahb blocks.  Without this flag, clk_set_rate can fail for certain
frequency requests.

Signed-off-by: Andy Gross &lt;andy.gross@linaro.org&gt;
Fixes: 3966fab8b6ab ("clk: qcom: Add MSM8916 Global Clock Controller support")
Signed-off-by: Stephen Boyd &lt;sboyd@codeaurora.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>clk: qcom: msm8960: Fix ce3_src register offset</title>
<updated>2016-05-11T09:21:12+00:00</updated>
<author>
<name>Stephen Boyd</name>
<email>sboyd@codeaurora.org</email>
</author>
<published>2016-03-02T01:26:48+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=0d50da4683464e150961142341c69ea5a578974a'/>
<id>urn:sha1:0d50da4683464e150961142341c69ea5a578974a</id>
<content type='text'>
commit 0f75e1a370fd843c9e508fc1ccf0662833034827 upstream.

The offset seems to have been copied from the sata clk. Fix it so
that enabling the crypto engine source clk works.

Tested-by: Srinivas Kandagatla &lt;srinivas.kandagatla@linaro.org&gt;
Tested-by: Bjorn Andersson &lt;bjorn.andersson@linaro.org&gt;
Fixes: 5f775498bdc4 ("clk: qcom: Fully support apq8064 global clock control")
Signed-off-by: Stephen Boyd &lt;sboyd@codeaurora.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>clk: qcom: msm8960: fix ce3_core clk enable register</title>
<updated>2016-05-11T09:21:12+00:00</updated>
<author>
<name>Srinivas Kandagatla</name>
<email>srinivas.kandagatla@linaro.org</email>
</author>
<published>2016-02-22T11:43:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=faaf496612c39c8ca6d46fec5a6af78b85689f65'/>
<id>urn:sha1:faaf496612c39c8ca6d46fec5a6af78b85689f65</id>
<content type='text'>
commit 732d6913691848db9fabaa6a25b4d6fad10ddccf upstream.

This patch corrects the enable register offset which is actually 0x36cc
instead of 0x36c4

Signed-off-by: Srinivas Kandagatla &lt;srinivas.kandagatla@linaro.org&gt;
Fixes: 5f775498bdc4 ("clk: qcom: Fully support apq8064 global clock control")
Signed-off-by: Stephen Boyd &lt;sboyd@codeaurora.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>clk: qcom: msm8960: Fix dsi1/2 halt bits</title>
<updated>2015-10-27T20:10:13+00:00</updated>
<author>
<name>Stephen Boyd</name>
<email>sboyd@codeaurora.org</email>
</author>
<published>2015-10-27T01:23:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=e5bf1991ea62b4f4fc906d0828f7eed988fc3835'/>
<id>urn:sha1:e5bf1991ea62b4f4fc906d0828f7eed988fc3835</id>
<content type='text'>
The halt bits for these clocks seem wrong. I get the following
warning while booting on an msm8960-cdp:

WARNING: CPU: 0 PID: 1 at drivers/clk/qcom/clk-branch.c:97 clk_branch_toggle+0xd0/0x138()
dsi1_clk status stuck at 'on'
Modules linked in:
CPU: 0 PID: 1 Comm: swapper/0 Not tainted 4.3.0-rc3-00113-g5532cfb567fe #110
Hardware name: Qualcomm (Flattened Device Tree)
[&lt;c0216984&gt;] (unwind_backtrace) from [&lt;c02138f8&gt;] (show_stack+0x10/0x14)
[&lt;c02138f8&gt;] (show_stack) from [&lt;c04a525c&gt;] (dump_stack+0x70/0xbc)
[&lt;c04a525c&gt;] (dump_stack) from [&lt;c0223c70&gt;] (warn_slowpath_common+0x78/0xb4)
[&lt;c0223c70&gt;] (warn_slowpath_common) from [&lt;c0223d40&gt;] (warn_slowpath_fmt+0x30/0x40)
[&lt;c0223d40&gt;] (warn_slowpath_fmt) from [&lt;c05fc2dc&gt;] (clk_branch_toggle+0xd0/0x138)
[&lt;c05fc2dc&gt;] (clk_branch_toggle) from [&lt;c05f3f3c&gt;] (clk_disable_unused_subtree+0x98/0x1b0)
[&lt;c05f3f3c&gt;] (clk_disable_unused_subtree) from [&lt;c05f3ec4&gt;] (clk_disable_unused_subtree+0x20/0x1b0)
[&lt;c05f3ec4&gt;] (clk_disable_unused_subtree) from [&lt;c05f5474&gt;] (clk_disable_unused+0x58/0xd8)
[&lt;c05f5474&gt;] (clk_disable_unused) from [&lt;c0209710&gt;] (do_one_initcall+0xac/0x1ec)
[&lt;c0209710&gt;] (do_one_initcall) from [&lt;c0991db4&gt;] (kernel_init_freeable+0x11c/0x1e8)
[&lt;c0991db4&gt;] (kernel_init_freeable) from [&lt;c0727ae0&gt;] (kernel_init+0x8/0xec)
[&lt;c0727ae0&gt;] (kernel_init) from [&lt;c0210238&gt;] (ret_from_fork+0x14/0x3c)

Fix the status bits and the errors go away.

Fixes: 5532cfb567fe ("clk: qcom: mmcc-8960: Add DSI related clocks")
Acked-by: Archit Taneja &lt;architt@codeaurora.org&gt;
Signed-off-by: Stephen Boyd &lt;sboyd@codeaurora.org&gt;
</content>
</entry>
<entry>
<title>clk: qcom: mmcc-8960: Add DSI related clocks</title>
<updated>2015-10-16T22:08:43+00:00</updated>
<author>
<name>Archit Taneja</name>
<email>architt@codeaurora.org</email>
</author>
<published>2015-10-14T12:54:45+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=5532cfb567fec4ebb9775481ef121edb340ec5b8'/>
<id>urn:sha1:5532cfb567fec4ebb9775481ef121edb340ec5b8</id>
<content type='text'>
Add rcg and branch clk structs for DSI1 and DSI2 blocks found in MSM8960
and APQ8064. Each DSI instance has 4 pairs of rcg and branch clocks.
Populate arrays mmcc_msm8960_clks and mmcc_apq8064_clks with these clocks.

Signed-off-by: Archit Taneja &lt;architt@codeaurora.org&gt;
Signed-off-by: Stephen Boyd &lt;sboyd@codeaurora.org&gt;
</content>
</entry>
<entry>
<title>clk: qcom: clk-rcg: Add customized clk_ops for DSI RCGs</title>
<updated>2015-10-16T22:08:40+00:00</updated>
<author>
<name>Archit Taneja</name>
<email>architt@codeaurora.org</email>
</author>
<published>2015-10-14T12:54:44+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=d8aa2beed870f088d4433b7075303e58764f0587'/>
<id>urn:sha1:d8aa2beed870f088d4433b7075303e58764f0587</id>
<content type='text'>
DSI specific RCG clocks required customized clk_ops. There are
a total of 4 RCGs per DSI block: DSI, BYTE, ESC and PIXEL.

There are a total of 2 clocks coming from the DSI PLL, which serve as
inputs to these RCGs. The BYTE and ESC RCGs are fed by one of the
post dividers of DSI1 or DSI2 PLLs, and the DSI and PIXEL RCGs are fed by
another divider of the PLL.

In each of the 2 groups above, only one of the clocks sets its parent.
These are BYTE RCG and DSI RCG for each of the groups respectively, as
shown in the diagram below.

The DSI and BYTE RCGs serve as bypass clocks. We create a new set of ops
clk_rcg_bypass2_ops, which are like the regular bypass ops, but don't
take in a freq table, since the DSI driver using these clocks is
parent-able.

The PIXEL RCG needs to derive the required pixel clock using dsixpll.
It parses a m/n frac table to retrieve the correct clock.

The ESC RCG doesn't have a frac M/N block, it can just apply a pre-
divider. Its ops simply check if the required clock rate can be
achieved by the pre-divider.

      +-------------------+
      |                   |---dsixpllbyte---o---&gt; To byte RCG
      |                   |                 | (sets parent rate)
      |                   |                 |
      |                   |                 |
      |    DSI 1/2 PLL    |                 |
      |                   |                 o---&gt; To esc RCG
      |                   |                 (doesn't set parent rate)
      |                   |
      |                   |----dsixpll-----o---&gt; To dsi RCG
      +-------------------+                | (sets parent rate)
                             ( x = 1, 2 )  |
                                           |
                                           o---&gt; To pixel rcg
                                           (doesn't set parent rate)

Signed-off-by: Archit Taneja &lt;architt@codeaurora.org&gt;
Signed-off-by: Stephen Boyd &lt;sboyd@codeaurora.org&gt;
</content>
</entry>
<entry>
<title>clk: qcom: create virtual child device for TSENS</title>
<updated>2015-10-09T06:53:03+00:00</updated>
<author>
<name>Rajendra Nayak</name>
<email>rnayak@codeaurora.org</email>
</author>
<published>2015-10-08T05:01:03+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=53c929c922ccc5e615c3310e86ffbc1387372854'/>
<id>urn:sha1:53c929c922ccc5e615c3310e86ffbc1387372854</id>
<content type='text'>
8960 family of devices have TSENS as part of GCC in hardware.
Hence DT would represent a GCC node with GCC properties as well
as TSENS. Create a virtual platform child device here for TSENS
so the driver can probe it and use the parent (GCC) to extract DT
properties.

Suggested-by: Stephen Boyd &lt;sboyd@codeaurora.org&gt;
Signed-off-by: Rajendra Nayak &lt;rnayak@codeaurora.org&gt;
[sboyd@codeaurora.org: Massaged to work with devm friendly
qcom_cc_probe()]
Signed-off-by: Stephen Boyd &lt;sboyd@codeaurora.org&gt;
</content>
</entry>
<entry>
<title>clk: qcom: Move gdsc config outside COMMON_CLK_QCOM config</title>
<updated>2015-10-09T06:53:02+00:00</updated>
<author>
<name>Stephen Boyd</name>
<email>sboyd@codeaurora.org</email>
</author>
<published>2015-10-08T17:59:32+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=73bb7dc08edd921953f7b720b54e5dcb15ee0a02'/>
<id>urn:sha1:73bb7dc08edd921953f7b720b54e5dcb15ee0a02</id>
<content type='text'>
Having this hidden config below the COMMON_CLK_QCOM config causes
menuconfig to stop indenting config items after it.

        &lt;*&gt; Support for Qualcomm's clock controllers
        {M}   APQ8084 Global Clock Controller
        &lt;M&gt;   APQ8084 Multimedia Clock Controller
        {M}   IPQ806x Global Clock Controller
        &lt;M&gt;   IPQ806x LPASS Clock Controller
        &lt;M&gt; MSM8660 Global Clock Controller
        &lt;M&gt; MSM8916 Global Clock Controller
        {M} APQ8064/MSM8960 Global Clock Controller
        &lt;M&gt; APQ8064/MSM8960 LPASS Clock Controller
        &lt;M&gt; MSM8960 Multimedia Clock Controller
        {M} MSM8974 Global Clock Controller
        &lt;M&gt; MSM8974 Multimedia Clock Controller

Move it up above anything else so that we don't get odd
indenting.

Cc: Rajendra Nayak &lt;rnayak@codeaurora.org&gt;
Signed-off-by: Stephen Boyd &lt;sboyd@codeaurora.org&gt;
</content>
</entry>
<entry>
<title>clk: qcom: Drop calls to qcom_cc_remove()</title>
<updated>2015-10-09T06:53:01+00:00</updated>
<author>
<name>Stephen Boyd</name>
<email>sboyd@codeaurora.org</email>
</author>
<published>2015-10-08T07:11:49+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=9bc432cb242b0edff81e3ab83ba11c327cd4dd93'/>
<id>urn:sha1:9bc432cb242b0edff81e3ab83ba11c327cd4dd93</id>
<content type='text'>
Now that qcom_cc_remove() is a nop, drop calls to
qcom_cc_remove() and any empty driver remove functions.

Cc: Rajendra Nayak &lt;rnayak@codeaurora.org&gt;
Signed-off-by: Stephen Boyd &lt;sboyd@codeaurora.org&gt;
</content>
</entry>
</feed>
