[PATCH v9 0/2] i2c: ls2x: Add clock- related properties and parsing
Hongliang Wang <[email protected]> Mon, 10 Aug 2026 15:49:25 +0800
| Newsgroups | org.kernel.vger.linux-i2c,dev.linux.lists.loongarch,org.kernel.vger.linux-devicetree |
|---|---|
| Message-ID | <[email protected]> |
Hi all: This patch set adds clock related properties and parsing in dts and acpi. ====== V9: Patch (2/2): - Rewrite the commit description - Use 64-bit arithmetic to avoid integer overflow during the clock calculation - Add checks to reject zero clock rates and ensure valid clock inputs - Modify the comment for clocks and clock-div properties - Add Tested-by tag from Xi Ruoyao, thanks Link to V8: https://lore.kernel.org/all/[email protected]/ V8: Patch (2/2): Fix the potential issues from Sashiko AI review: - Add error checking for the pointer returned by devm_clk_get_optional_enabled(); - Add zero-value checking for the match data to provide default div. Link to V7: https://lore.kernel.org/all/[email protected]/ V7: Patch (2/2): Fix the potential issues from Sashiko AI review: - Move the clock property parsing process to probe function to solve the issue of calling `devm_clk_get_optional_enabled()` dynamically causes unbounded memory leaks and unbalanced clock enable counts. - Add non-zero checking to priv->div. Link to V6: https://lore.kernel.org/all/[email protected]/ V6: - Add Reviewed-by tag from Huacai, thanks. Patch (1/2): - Remove CC stable. Link to V5: https://lore.kernel.org/all/[email protected]/ V5: Patch (1/2): - Adjust the position of #include <dt-bindings/clock/loongson,ls2k-clk.h>; - Add CC stable; - Fix Signed-off-by. Patch (2/2): - Replace 2K0500/2K1000/2K2000 with LS2K0500/2K1000/2K2000; - Replace 7A1000/7A2000 with LS7A1000/7A2000; - Replace if (clk && !IS_ERR(clk)) with if(!IS_ERR_OR_NULL(clk)); - Add document that clocks and clock-div are only ACPI properties in ACPI; - Remove unsigned int cast in code (unsigned long)device_get_match_data(dev); - Add CC stable; - Fix Signed-off-by. Link to V4: https://lore.kernel.org/all/[email protected]/ V4: - Add Acked-by tag from Conor Dooley, thanks. Patch (2/2): - Adjust the position of #include <linux/clk.h>; - Remove struct ls2x_i2c_chip_data and use macro to describe div; - Use div instead of factor in ls2x_i2c_adjust_bus_speed; - Reverse the "if & else" code logic in ls2x_i2c_adjust_bus_speed; Link to V2: The PATCH v3 is incomplete, v4 is the replacement of v3, so the previous patch link is v2. [PATCH v2] dt-bindings: i2c: ls2x-i2c: Add clocks and clock-frequency properties https://lore.kernel.org/all/[email protected]/ [PATCH v2] i2c: ls2x: Add clocks property parsing and adjust bus speed https://lore.kernel.org/all/[email protected]/ V2: [PATCH v2] dt-bindings: i2c: ls2x-i2c: Add clocks and clock-frequency properties - Remove the custom properties clock-input and clock-div, use clock framework; [PATCH v2] i2c: ls2x: Add clocks property parsing and adjust bus speed - Use clock framework to obtain the i2c reference clock in dts. Link to V1: https://lore.kernel.org/all/[email protected]/ Hongliang Wang (2): dt-bindings: i2c: ls2x-i2c: Add clocks and clock-frequency properties i2c: ls2x: Add clocks property parsing and adjust bus speed .../bindings/i2c/loongson,ls2x-i2c.yaml | 3 ++ drivers/i2c/busses/i2c-ls2x.c | 43 +++++++++++++++++-- 2 files changed, 43 insertions(+), 3 deletions(-) -- 2.47.2