<feed xmlns='http://www.w3.org/2005/Atom'>
<title>u-boot.git/drivers/clk/clk_versal.c, branch main</title>
<subtitle>Unnamed repository; edit this file 'description' to name the repository.</subtitle>
<id>http://cgit.235523.xyz/u-boot.git/atom/drivers/clk/clk_versal.c?h=main</id>
<link rel='self' href='http://cgit.235523.xyz/u-boot.git/atom/drivers/clk/clk_versal.c?h=main'/>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/'/>
<updated>2026-04-23T09:49:48Z</updated>
<entry>
<title>clk: versal: Fix out-of-bounds parent id for DUMMY_PARENT</title>
<updated>2026-04-23T09:49:48Z</updated>
<author>
<name>Padmarao Begari</name>
<email>padmarao.begari@amd.com</email>
</author>
<published>2026-03-27T10:10:32Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=a25549d14bce5e3101e9903526c39f7a6fd5e584'/>
<id>urn:sha1:a25549d14bce5e3101e9903526c39f7a6fd5e584</id>
<content type='text'>
When a clock parent entry is DUMMY_PARENT (0xFFFFFFFE), masking it
with CLK_PARENTS_ID_MASK (0xFFFF) produces the value 0xFFFE (65534).
This value is stored in parent-&gt;id and later used as a clock array
index in versal_clock_get_parentid(). Since clock_max_idx is
typically 228, accessing clock[65534] is out-of-bounds, and the
garbage value read is used as a clock ID in subsequent clock rate
calculations, eventually causing U-Boot to crash. This is observed
as a crash during "clk dump" on AMD Versal Gen 2.

Fix this by setting parent-&gt;id = 0 for DUMMY_PARENT entries.

Fixes: 95105089afe2 ("clk: versal: Add clock driver support")
Signed-off-by: Padmarao Begari &lt;padmarao.begari@amd.com&gt;
Signed-off-by: Michal Simek &lt;michal.simek@amd.com&gt;
Link: https://lore.kernel.org/r/20260327101053.900154-1-padmarao.begari@amd.com
</content>
</entry>
<entry>
<title>clk: versal: Enable clock driver for Versal Gen 2</title>
<updated>2025-12-19T07:25:26Z</updated>
<author>
<name>Michal Simek</name>
<email>michal.simek@amd.com</email>
</author>
<published>2025-11-10T15:24:13Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=7c1e03704830d607935487e3b6c710f063dbe9e8'/>
<id>urn:sha1:7c1e03704830d607935487e3b6c710f063dbe9e8</id>
<content type='text'>
Versal Gen 2 is using enhancement SMC format but in near future SCMI client
should be used. This patch is just bridging this gap till SCMI server is
fully tested.

Signed-off-by: Michal Simek &lt;michal.simek@amd.com&gt;
Link: https://lore.kernel.org/r/e83c665408d1453a464dd02cd2a25bb0ed267131.1762788250.git.michal.simek@amd.com
</content>
</entry>
<entry>
<title>clk: versal: Cleanup driver</title>
<updated>2025-12-19T07:25:26Z</updated>
<author>
<name>Michal Simek</name>
<email>michal.simek@amd.com</email>
</author>
<published>2025-11-10T12:33:33Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=ac9494e96bd07a78d0f22ed24a03b06ba1f7b77d'/>
<id>urn:sha1:ac9494e96bd07a78d0f22ed24a03b06ba1f7b77d</id>
<content type='text'>
Remove unneeded debug messages, parenthesis and fix error message.

Signed-off-by: Michal Simek &lt;michal.simek@amd.com&gt;
Link: https://lore.kernel.org/r/5b6fbcff1025415adc97e3e17eeb18863df4383e.1762778011.git.michal.simek@amd.com
</content>
</entry>
<entry>
<title>clk: versal: Add support for CLK_AUTO_ID</title>
<updated>2025-12-19T07:25:26Z</updated>
<author>
<name>Michal Simek</name>
<email>michal.simek@amd.com</email>
</author>
<published>2025-11-10T12:33:32Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=2b7255cfa06ccd967583b035622476a42043131e'/>
<id>urn:sha1:2b7255cfa06ccd967583b035622476a42043131e</id>
<content type='text'>
When CLK_AUTO_ID is enabled 8 higher bits of clk-&gt;id is unique clock
identifier in clk uclass that's why it is necessary to mask lower bits
which are clock ID.
Also check that ID not bigger then maximum supported clock.

Signed-off-by: Michal Simek &lt;michal.simek@amd.com&gt;
Link: https://lore.kernel.org/r/647f1d2c7d274c1106558a655386ef92e0baf2c8.1762778011.git.michal.simek@amd.com
</content>
</entry>
<entry>
<title>clk: versal: Use __data macro for moving variable to data section</title>
<updated>2025-12-19T07:25:26Z</updated>
<author>
<name>Michal Simek</name>
<email>michal.simek@amd.com</email>
</author>
<published>2025-11-07T10:28:49Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=16f0332b180321c1c0a2f8decc6005e37202bcc9'/>
<id>urn:sha1:16f0332b180321c1c0a2f8decc6005e37202bcc9</id>
<content type='text'>
The commit 1b267fe1824e ("firmware: xilinx: Prepare code for new SMC
firmware format") introduce new __data macro that's why use it in clock
driver too.

Signed-off-by: Michal Simek &lt;michal.simek@amd.com&gt;
Link: https://lore.kernel.org/r/eac8d0ab60a018d6c59aa28c49691839a3eec174.1762511327.git.michal.simek@amd.com
</content>
</entry>
<entry>
<title>drivers: firmware: update xilinx_pm_request to support max payload</title>
<updated>2025-10-09T07:07:03Z</updated>
<author>
<name>Naman Trivedi</name>
<email>naman.trivedimanojbhai@amd.com</email>
</author>
<published>2025-08-28T13:42:22Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=4146a31dcec709058a8e793b86712b0ffa1ba15a'/>
<id>urn:sha1:4146a31dcec709058a8e793b86712b0ffa1ba15a</id>
<content type='text'>
Currently xilinx_pm_request API supports four u32 payloads. However the
legacy SMC format supports five u32 request payloads and extended SMC
format supports six u32 request payloads. Add support for the same in
xilinx_pm_request API. Also add two dummy arguments to all the callers
of xilinx_pm_request.

The TF-A always fills seven u32 return payload so add support
for the same in xilinx_pm_request API.

Signed-off-by: Naman Trivedi &lt;naman.trivedimanojbhai@amd.com&gt;
Signed-off-by: Venkatesh Yadav Abbarapu &lt;venkatesh.abbarapu@amd.com&gt;
Acked-by: Senthil Nathan Thangaraj &lt;senthilnathan.thangaraj@amd.com&gt;
Signed-off-by: Michal Simek &lt;michal.simek@amd.com&gt;
Link: https://lore.kernel.org/r/5ae6b560741f3ca8b89059c4ebb87acf75b4718e.1756388537.git.michal.simek@amd.com
</content>
</entry>
<entry>
<title>clk: xilinx: Separate legacy format to own handler</title>
<updated>2025-10-09T07:07:03Z</updated>
<author>
<name>Michal Simek</name>
<email>michal.simek@amd.com</email>
</author>
<published>2025-08-28T13:42:21Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=e7fe2c7bc60d9963f8309d0094fec753b767fd36'/>
<id>urn:sha1:e7fe2c7bc60d9963f8309d0094fec753b767fd36</id>
<content type='text'>
It is a preparation for adding enhacement format support that's why there
is a need to separate current support to own function.

Signed-off-by: Michal Simek &lt;michal.simek@amd.com&gt;
Link: https://lore.kernel.org/r/c4d546553d4f0d69ef75fb1132b7121f36dd306c.1756388537.git.michal.simek@amd.com
</content>
</entry>
<entry>
<title>clk: xilinx: Call generic smc_call_handler()</title>
<updated>2025-10-09T07:07:03Z</updated>
<author>
<name>Michal Simek</name>
<email>michal.simek@amd.com</email>
</author>
<published>2025-08-28T13:42:20Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=f791695685f0d11bcd52cdce12d5d13243fbdd39'/>
<id>urn:sha1:f791695685f0d11bcd52cdce12d5d13243fbdd39</id>
<content type='text'>
There is no reason to call SMC from clock driver directly when clock driver
is a child of firmware driver which is providing it.

Signed-off-by: Michal Simek &lt;michal.simek@amd.com&gt;
Link: https://lore.kernel.org/r/d383d5fea680b33d2eddbca108c452cee97e98ea.1756388537.git.michal.simek@amd.com
</content>
</entry>
<entry>
<title>clk: versal: Store driver data in data section</title>
<updated>2025-03-03T15:09:59Z</updated>
<author>
<name>Padmarao Begari</name>
<email>padmarao.begari@amd.com</email>
</author>
<published>2025-02-18T05:24:19Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=96f47ae89a4ce16a59c14d229ff707bdeb1064f4'/>
<id>urn:sha1:96f47ae89a4ce16a59c14d229ff707bdeb1064f4</id>
<content type='text'>
Line 171 in README is describing that before relocation
no code should use global variable because global variables
are placed to BSS section which is initialized to 0 after
relocation.

On Versal platforms clock driver is initialized before
relocation (via using dm,bootph-all flag in DT) and global
variables are initialized which works if this is used only
before relocation. But the variables are used after
relocation too but values are zeroed which is ending up
incorrect behavior.

That's why place variables to data section to ensure that
values are not cleared which is for now the quickest
temporary solution. The correct way to do it is to move
all global variables to private data to avoid it.

Signed-off-by: Padmarao Begari &lt;padmarao.begari@amd.com&gt;
Link: https://lore.kernel.org/r/20250218052419.1141139-1-padmarao.begari@amd.com
Signed-off-by: Michal Simek &lt;michal.simek@amd.com&gt;
</content>
</entry>
<entry>
<title>clk: versal: Update the reference clocks as per bindings</title>
<updated>2025-03-03T12:29:57Z</updated>
<author>
<name>Venkatesh Yadav Abbarapu</name>
<email>venkatesh.abbarapu@amd.com</email>
</author>
<published>2025-02-06T09:15:33Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=a7670e6c5b0e90039ec71e2377f37ef5a5ad5ded'/>
<id>urn:sha1:a7670e6c5b0e90039ec71e2377f37ef5a5ad5ded</id>
<content type='text'>
As per the bindings the reference clocks naming has changed
from "pl_alt_ref_clk" to "pl_alt_ref" and "ref_clk" to "ref".
Update the same in the clock driver. Also add the fallback option
for older DT bindings.

Signed-off-by: Venkatesh Yadav Abbarapu &lt;venkatesh.abbarapu@amd.com&gt;
Link: https://lore.kernel.org/r/20250206091533.1447234-1-venkatesh.abbarapu@amd.com
Signed-off-by: Michal Simek &lt;michal.simek@amd.com&gt;
</content>
</entry>
</feed>
