<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux-dev/drivers/clk/ti/divider.c, branch linus/master</title>
<subtitle>Linux kernel development work - see feature branches</subtitle>
<id>https://git.zx2c4.com/linux-dev/atom/drivers/clk/ti/divider.c?h=linus%2Fmaster</id>
<link rel='self' href='https://git.zx2c4.com/linux-dev/atom/drivers/clk/ti/divider.c?h=linus%2Fmaster'/>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/'/>
<updated>2022-03-11T02:55:59Z</updated>
<entry>
<title>clk: ti: Update component clocks to use ti_dt_clk_name()</title>
<updated>2022-03-11T02:55:59Z</updated>
<author>
<name>Tony Lindgren</name>
<email>tony@atomide.com</email>
</author>
<published>2022-02-04T07:14:49Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=ed06099c5d0b329082cc19c58eace0b20bf7fe70'/>
<id>urn:sha1:ed06099c5d0b329082cc19c58eace0b20bf7fe70</id>
<content type='text'>
Let's update all the TI component clocks to use ti_dt_clk_name() instead
of devicetree node name if available.

Signed-off-by: Tony Lindgren &lt;tony@atomide.com&gt;
Link: https://lore.kernel.org/r/20220204071449.16762-9-tony@atomide.com
Signed-off-by: Stephen Boyd &lt;sboyd@kernel.org&gt;
</content>
</entry>
<entry>
<title>clk: ti: divider: convert to use min,max,mask instead of width</title>
<updated>2019-10-31T13:32:36Z</updated>
<author>
<name>Tero Kristo</name>
<email>t-kristo@ti.com</email>
</author>
<published>2019-10-02T12:06:10Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=8ffea6eef4ace7e207fc2fe852d2019d93f51d1a'/>
<id>urn:sha1:8ffea6eef4ace7e207fc2fe852d2019d93f51d1a</id>
<content type='text'>
The existing width field used to check divider validity does not provide
enough protection against bad values. For example, if max divider value
is 4, the smallest all-1 bitmask that can hold this value is 7, which
allows values higher than 4 to be used. This typically causes
unpredictable results with hardware. So far this issue hasn't been
noticed as most of the dividers actually have maximum values which fit
the whole bitfield, but there are certain clocks for which this is a
problem, like dpll4_m4 divider on omap3 devices.

Thus, convert the whole validity logic to use min,max and mask values
for determining if a specific divider is valid or not. This prevents
the odd cases where bad value would otherwise be written to a divider
config register.

Signed-off-by: Tero Kristo &lt;t-kristo@ti.com&gt;
Tested-by: Adam Ford &lt;aford173@gmail.com&gt;
</content>
</entry>
<entry>
<title>clk: ti: divider: cleanup ti_clk_parse_divider_data API</title>
<updated>2019-10-31T13:32:34Z</updated>
<author>
<name>Tero Kristo</name>
<email>t-kristo@ti.com</email>
</author>
<published>2019-10-02T12:06:09Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=a229965cfeab8ea8bb79086d6f59ac9a57de66fe'/>
<id>urn:sha1:a229965cfeab8ea8bb79086d6f59ac9a57de66fe</id>
<content type='text'>
Cleanup the ti_clk_parse_divider_data to pass the divider data struct
directly instead of individual values of it. This makes it easier
to modify the implementation later on.

Signed-off-by: Tero Kristo &lt;t-kristo@ti.com&gt;
Tested-by: Adam Ford &lt;aford173@gmail.com&gt;
</content>
</entry>
<entry>
<title>clk: ti: divider: cleanup _register_divider and ti_clk_get_div_table</title>
<updated>2019-10-31T13:32:32Z</updated>
<author>
<name>Tero Kristo</name>
<email>t-kristo@ti.com</email>
</author>
<published>2019-10-02T12:06:08Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=fbbc18591585bf74031dd6474b2937f87063e959'/>
<id>urn:sha1:fbbc18591585bf74031dd6474b2937f87063e959</id>
<content type='text'>
Cleanup couple of TI divider clock internal APIs. These currently pass
huge amount of parameters, which makes it difficult to track what is
going on. Abstract most of these under struct clk_omap_div which gets
passed over the APIs.

Signed-off-by: Tero Kristo &lt;t-kristo@ti.com&gt;
Tested-by: Adam Ford &lt;aford173@gmail.com&gt;
</content>
</entry>
<entry>
<title>clk: ti: Remove unused functions</title>
<updated>2019-06-07T18:54:48Z</updated>
<author>
<name>YueHaibing</name>
<email>yuehaibing@huawei.com</email>
</author>
<published>2019-05-29T09:39:37Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=da6a5dda5e843f0a8904c2d171d585ae360f415e'/>
<id>urn:sha1:da6a5dda5e843f0a8904c2d171d585ae360f415e</id>
<content type='text'>
They are not used any more since
commit 7558562a70fb ("clk: ti: Drop legacy clk-3xxx-legacy code")

Reported-by: Hulk Robot &lt;hulkci@huawei.com&gt;
Suggested-by: Tero Kristo &lt;t-kristo@ti.com&gt;
Signed-off-by: YueHaibing &lt;yuehaibing@huawei.com&gt;
Signed-off-by: Stephen Boyd &lt;sboyd@kernel.org&gt;
</content>
</entry>
<entry>
<title>Merge branches 'clk-imx', 'clk-samsung', 'clk-ti', 'clk-uniphier-gear' and 'clk-mmp2-lcdc' into clk-next</title>
<updated>2019-03-08T18:27:40Z</updated>
<author>
<name>Stephen Boyd</name>
<email>sboyd@kernel.org</email>
</author>
<published>2019-03-08T18:27:40Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=e7faa095cbd761ec9e0c0dd83a7425b19ddce510'/>
<id>urn:sha1:e7faa095cbd761ec9e0c0dd83a7425b19ddce510</id>
<content type='text'>
 - Split LCDC into two clks on the Marvell MMP2 SoC

* clk-imx:
  clk: imx8mq: add GPIO clocks to clock tree
  clk: imx: Refactor entire sccg pll clk
  clk: imx: scu: add cpu frequency scaling support
  clk: imx: imx8mm: Mark init function __init
  clk: imx8mq: Add the missing ARM clock
  dt-bindings: imx8mq-clock: Add the missing ARM clock
  clk: imx: imx8mq: Fix the rate propagation for arm pll
  clk: imx8mq: Add support for the CLKO1 clock
  clk: imx8mq: Fix the CLKO2 source select list
  clk: imx8mq: Add missing M4 clocks
  clk: imx: Add clock driver support for imx8mm
  dt-bindings: imx: Add clock binding doc for imx8mm
  clk: imx: Add PLLs driver for imx8mm soc
  clk: imx5: add imx5_SCC2_IPG_GATE
  clk: imx: scu: add set parent support
  clk: imx: scu: add fallback compatible string support
  clk: imx8mq: Make parent names arrays const pointers
  clk: imx: Make parents const pointer in mux wrappers
  clk: imx: Make parent_names const pointer in composite-8m

* clk-samsung:
  clk: samsung: s3c2443: Mark expected switch fall-through
  clk: samsung: exynos5: Fix kfree() of const memory on setting driver_override
  clk: samsung: exynos5: Fix possible NULL pointer exception on platform_device_alloc() failure
  clk: samsung: exynos5433: Add selected IMEM clocks
  clk: samsung: dt-bindings: Document Exynos5433 IMEM CMU
  clk: samsung: exynos5433: Fix name typo in sssx
  clk: samsung: exynos5433: Fix definition of CLK_ACLK_IMEM_{200, 266} clocks
  clk: samsung: dt-bindings: Add Exynos5433 IMEM CMU clock IDs

* clk-ti:
  clk: clk-twl6040: Fix imprecise external abort for pdmclk
  ARM: OMAP2+: hwmod: disable ick autoidling when a hwmod requires that
  clk: ti: check clock type before doing autoidle ops
  clk: ti: add a usecount for autoidle
  clk: ti: generalize the init sequence of clk_hw_omap clocks
  clk: ti: remove usage of CLK_IS_BASIC
  clk: ti: add new API for checking if a provided clock is an OMAP clock
  clk: ti: move clk_hw_omap list handling under generic part of the driver

* clk-uniphier-gear:
  clk: uniphier: Fix update register for CPU-gear

* clk-mmp2-lcdc:
  clk: mmp2: separate LCDC peripheral clk form the display clock
  dt-bindings: marvell,mmp2: Add clock id for the LCDC clock
</content>
</entry>
<entry>
<title>clk: ti: remove usage of CLK_IS_BASIC</title>
<updated>2019-02-15T14:46:22Z</updated>
<author>
<name>Tero Kristo</name>
<email>t-kristo@ti.com</email>
</author>
<published>2019-01-15T09:15:14Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=8aa09cf322c196df95b52ed63c4cae605296f343'/>
<id>urn:sha1:8aa09cf322c196df95b52ed63c4cae605296f343</id>
<content type='text'>
Remove the usage of CLK_IS_BASIC flag completely from TI clock driver.
In most cases, the use is completely redundant, but in some cases
we need to use the new API to check if the clock is an OMAP clock or not.

Signed-off-by: Tero Kristo &lt;t-kristo@ti.com&gt;
Acked-by: Tony Lindgren &lt;tony@atomide.com&gt;
Tested-by: Keerthy &lt;j-keerthy@ti.com&gt;
</content>
</entry>
<entry>
<title>clk: ti: Fix error handling in ti_clk_parse_divider_data()</title>
<updated>2019-01-24T19:23:32Z</updated>
<author>
<name>Dan Carpenter</name>
<email>dan.carpenter@oracle.com</email>
</author>
<published>2019-01-15T19:46:25Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=303aef8b84272d73999a3207dd05bbe10ed89dc5'/>
<id>urn:sha1:303aef8b84272d73999a3207dd05bbe10ed89dc5</id>
<content type='text'>
The ti_clk_parse_divider_data() function is only called from
_get_div_table_from_setup().  That function doesn't look at the return
value but instead looks at the "*table" pointer.  In this case, if the
kcalloc() fails then *table is NULL (which means success).  It should
instead be an error pointer.

The ti_clk_parse_divider_data() function has two callers.  One checks
for errors and the other doesn't.  I have fixed it so now both handle
errors.

Fixes: 4f6be5655dc9 ("clk: ti: divider: add driver internal API for parsing divider data")
Signed-off-by: Dan Carpenter &lt;dan.carpenter@oracle.com&gt;
Acked-by: Tero Kristo &lt;t-kristo@ti.com&gt;
Signed-off-by: Stephen Boyd &lt;sboyd@kernel.org&gt;
</content>
</entry>
<entry>
<title>Merge branch 'clk-ti' into clk-next</title>
<updated>2018-10-18T22:41:21Z</updated>
<author>
<name>Stephen Boyd</name>
<email>sboyd@kernel.org</email>
</author>
<published>2018-10-18T22:41:21Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=8a69f1d4707a69faab58d9735c2cb1898140124a'/>
<id>urn:sha1:8a69f1d4707a69faab58d9735c2cb1898140124a</id>
<content type='text'>
* clk-ti:
  clk: ti: Prepare for remove of OF node name
  clk: Clean up suspend/resume coding style
  clk: ti: Add functions to save/restore clk context
  clk: clk: Add clk_gate_restore_context function
  clk: Add functions to save/restore clock context en-masse
  clk: ti: dra7: add new clkctrl data
  clk: ti: dra7xx: rename existing clkctrl data as compat data
  clk: ti: am43xx: add new clkctrl data for am43xx
  clk: ti: am43xx: rename existing clkctrl data as compat data
  clk: ti: am33xx: add new clkctrl data for am33xx
  clk: ti: am33xx: rename existing clkctrl data as compat data
  clk: ti: clkctrl: replace dashes from clkdm name with underscore
  clk: ti: clkctrl: support multiple clkctrl nodes under a cm node
  dt-bindings: clock: dra7xx: add clkctrl indices for new data layout
  dt-bindings: clock: am43xx: add clkctrl indices for new data layout
  dt-bindings: clock: am33xx: add clkctrl indices for new data layout
</content>
</entry>
<entry>
<title>clk: ti: Add functions to save/restore clk context</title>
<updated>2018-10-03T12:29:19Z</updated>
<author>
<name>Russ Dill</name>
<email>Russ.Dill@ti.com</email>
</author>
<published>2018-09-04T06:49:37Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=d6e7bbc148f9fbec8a0117b0d0f420c9710e6d81'/>
<id>urn:sha1:d6e7bbc148f9fbec8a0117b0d0f420c9710e6d81</id>
<content type='text'>
SoCs like AM43XX lose clock registers context during RTC-only
suspend. Hence add functions to save/restore the clock registers
context.

Signed-off-by: Keerthy &lt;j-keerthy@ti.com&gt;
Signed-off-by: Russ Dill &lt;Russ.Dill@ti.com&gt;
Acked-by: Tony Lindgren &lt;tony@atomide.com&gt;
Signed-off-by: Tero Kristo &lt;t-kristo@ti.com&gt;
</content>
</entry>
</feed>
