* [PATCH v2 0/2] clk: implement a new managed helper and add first user
@ 2024-08-05 8:57 Bartosz Golaszewski
2024-08-05 8:57 ` [PATCH v2 1/2] clk: provide devm_clk_get_optional_enabled_with_rate() Bartosz Golaszewski
` (2 more replies)
0 siblings, 3 replies; 8+ messages in thread
From: Bartosz Golaszewski @ 2024-08-05 8:57 UTC (permalink / raw)
To: Michael Turquette, Stephen Boyd, Russell King, Marcel Holtmann,
Luiz Augusto von Dentz
Cc: linux-clk, linux-kernel, linux-bluetooth, Bartosz Golaszewski
I'm posting this as RFC to see if there's any interest. I noticed that
some drivers do: clk_get() -> clk_set_rate() -> clk_prepare_enable(). I
was wondering if it's worth factoring this out into dedicated helpers.
This series adds a new such helper for the "optional-enabled" use-case
and the first user. Let me know if this makes sense.
Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
---
Changes in v2:
- s/EXPORT_SYMBOL/EXPORT_SYMBOL_GPL/
- add a stub for !COMMON_CLK
- Link to v1: https://lore.kernel.org/r/20240801-clk-new-helper-v1-0-81e9338b7b17@linaro.org
---
Bartosz Golaszewski (2):
clk: provide devm_clk_get_optional_enabled_with_rate()
Bluetooth: hci_qca: use devm_clk_get_optional_enabled_with_rate()
drivers/bluetooth/hci_qca.c | 24 ++----------------------
drivers/clk/clk-devres.c | 28 ++++++++++++++++++++++++++++
include/linux/clk.h | 33 +++++++++++++++++++++++++++++++++
3 files changed, 63 insertions(+), 22 deletions(-)
---
base-commit: d6dbc9f56c3a70e915625b6f1887882c23dc5c91
change-id: 20240801-clk-new-helper-7853f662cda1
Best regards,
--
Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
^ permalink raw reply [flat|nested] 8+ messages in thread* [PATCH v2 1/2] clk: provide devm_clk_get_optional_enabled_with_rate()
2024-08-05 8:57 [PATCH v2 0/2] clk: implement a new managed helper and add first user Bartosz Golaszewski
@ 2024-08-05 8:57 ` Bartosz Golaszewski
2024-08-05 9:35 ` clk: implement a new managed helper and add first user bluez.test.bot
2024-09-05 21:42 ` [PATCH v2 1/2] clk: provide devm_clk_get_optional_enabled_with_rate() Stephen Boyd
2024-08-05 8:57 ` [PATCH v2 2/2] Bluetooth: hci_qca: use devm_clk_get_optional_enabled_with_rate() Bartosz Golaszewski
2024-09-02 8:33 ` [PATCH v2 0/2] clk: implement a new managed helper and add first user Bartosz Golaszewski
2 siblings, 2 replies; 8+ messages in thread
From: Bartosz Golaszewski @ 2024-08-05 8:57 UTC (permalink / raw)
To: Michael Turquette, Stephen Boyd, Russell King, Marcel Holtmann,
Luiz Augusto von Dentz
Cc: linux-clk, linux-kernel, linux-bluetooth, Bartosz Golaszewski
From: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
There are clock users in the kernel that can't use
devm_clk_get_optional_enabled() as they need to set rate after getting
the clock and before enabling it. Provide a managed helper that wraps
these operations in the correct order.
Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
---
drivers/clk/clk-devres.c | 28 ++++++++++++++++++++++++++++
include/linux/clk.h | 33 +++++++++++++++++++++++++++++++++
2 files changed, 61 insertions(+)
diff --git a/drivers/clk/clk-devres.c b/drivers/clk/clk-devres.c
index 90e6078fb6e1..82ae1f26e634 100644
--- a/drivers/clk/clk-devres.c
+++ b/drivers/clk/clk-devres.c
@@ -99,6 +99,34 @@ struct clk *devm_clk_get_optional_enabled(struct device *dev, const char *id)
}
EXPORT_SYMBOL_GPL(devm_clk_get_optional_enabled);
+struct clk *devm_clk_get_optional_enabled_with_rate(struct device *dev,
+ const char *id,
+ unsigned long rate)
+{
+ struct clk *clk;
+ int ret;
+
+ clk = __devm_clk_get(dev, id, clk_get_optional, NULL,
+ clk_disable_unprepare);
+ if (IS_ERR(clk))
+ return ERR_CAST(clk);
+
+ ret = clk_set_rate(clk, rate);
+ if (ret)
+ goto out_put_clk;
+
+ ret = clk_prepare_enable(clk);
+ if (ret)
+ goto out_put_clk;
+
+ return clk;
+
+out_put_clk:
+ devm_clk_put(dev, clk);
+ return ERR_PTR(ret);
+}
+EXPORT_SYMBOL_GPL(devm_clk_get_optional_enabled_with_rate);
+
struct clk_bulk_devres {
struct clk_bulk_data *clks;
int num_clks;
diff --git a/include/linux/clk.h b/include/linux/clk.h
index 0fa56d672532..851a0f2cf42c 100644
--- a/include/linux/clk.h
+++ b/include/linux/clk.h
@@ -640,6 +640,32 @@ struct clk *devm_clk_get_optional_prepared(struct device *dev, const char *id);
*/
struct clk *devm_clk_get_optional_enabled(struct device *dev, const char *id);
+/**
+ * devm_clk_get_optional_enabled_with_rate - devm_clk_get_optional() +
+ * clk_set_rate() +
+ * clk_prepare_enable()
+ * @dev: device for clock "consumer"
+ * @id: clock consumer ID
+ * @rate: new clock rate
+ *
+ * Context: May sleep.
+ *
+ * Return: a struct clk corresponding to the clock producer, or
+ * valid IS_ERR() condition containing errno. The implementation
+ * uses @dev and @id to determine the clock consumer, and thereby
+ * the clock producer. If no such clk is found, it returns NULL
+ * which serves as a dummy clk. That's the only difference compared
+ * to devm_clk_get_enabled().
+ *
+ * The returned clk (if valid) is prepared and enabled and rate was set.
+ *
+ * The clock will automatically be disabled, unprepared and freed
+ * when the device is unbound from the bus.
+ */
+struct clk *devm_clk_get_optional_enabled_with_rate(struct device *dev,
+ const char *id,
+ unsigned long rate);
+
/**
* devm_get_clk_from_child - lookup and obtain a managed reference to a
* clock producer from child node.
@@ -982,6 +1008,13 @@ static inline struct clk *devm_clk_get_optional_enabled(struct device *dev,
return NULL;
}
+static inline struct clk *
+devm_clk_get_optional_enabled_with_rate(struct device *dev, const char *id,
+ unsigned long rate)
+{
+ return NULL;
+}
+
static inline int __must_check devm_clk_bulk_get(struct device *dev, int num_clks,
struct clk_bulk_data *clks)
{
--
2.43.0
^ permalink raw reply related [flat|nested] 8+ messages in thread* RE: clk: implement a new managed helper and add first user
2024-08-05 8:57 ` [PATCH v2 1/2] clk: provide devm_clk_get_optional_enabled_with_rate() Bartosz Golaszewski
@ 2024-08-05 9:35 ` bluez.test.bot
2024-09-05 21:42 ` [PATCH v2 1/2] clk: provide devm_clk_get_optional_enabled_with_rate() Stephen Boyd
1 sibling, 0 replies; 8+ messages in thread
From: bluez.test.bot @ 2024-08-05 9:35 UTC (permalink / raw)
To: linux-bluetooth, brgl
[-- Attachment #1: Type: text/plain, Size: 1596 bytes --]
This is automated email and please do not reply to this email!
Dear submitter,
Thank you for submitting the patches to the linux bluetooth mailing list.
This is a CI test results with your patch series:
PW Link:https://patchwork.kernel.org/project/bluetooth/list/?series=876621
---Test result---
Test Summary:
CheckPatch PASS 1.54 seconds
GitLint PASS 0.98 seconds
SubjectPrefix FAIL 0.56 seconds
BuildKernel PASS 30.19 seconds
CheckAllWarning PASS 33.30 seconds
CheckSparse PASS 38.25 seconds
CheckSmatch PASS 105.38 seconds
BuildKernel32 PASS 30.05 seconds
TestRunnerSetup PASS 538.80 seconds
TestRunner_l2cap-tester PASS 20.72 seconds
TestRunner_iso-tester PASS 33.48 seconds
TestRunner_bnep-tester PASS 4.93 seconds
TestRunner_mgmt-tester PASS 115.35 seconds
TestRunner_rfcomm-tester PASS 7.59 seconds
TestRunner_sco-tester PASS 15.24 seconds
TestRunner_ioctl-tester PASS 8.16 seconds
TestRunner_mesh-tester PASS 6.17 seconds
TestRunner_smp-tester PASS 7.05 seconds
TestRunner_userchan-tester PASS 5.11 seconds
IncrementalBuild PASS 33.70 seconds
Details
##############################
Test: SubjectPrefix - FAIL
Desc: Check subject contains "Bluetooth" prefix
Output:
"Bluetooth: " prefix is not specified in the subject
---
Regards,
Linux Bluetooth
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH v2 1/2] clk: provide devm_clk_get_optional_enabled_with_rate()
2024-08-05 8:57 ` [PATCH v2 1/2] clk: provide devm_clk_get_optional_enabled_with_rate() Bartosz Golaszewski
2024-08-05 9:35 ` clk: implement a new managed helper and add first user bluez.test.bot
@ 2024-09-05 21:42 ` Stephen Boyd
2024-09-09 6:41 ` Bartosz Golaszewski
1 sibling, 1 reply; 8+ messages in thread
From: Stephen Boyd @ 2024-09-05 21:42 UTC (permalink / raw)
To: Bartosz Golaszewski, Luiz Augusto von Dentz, Marcel Holtmann,
Michael Turquette, Russell King
Cc: linux-clk, linux-kernel, linux-bluetooth, Bartosz Golaszewski
Quoting Bartosz Golaszewski (2024-08-05 01:57:31)
> From: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
>
> There are clock users in the kernel that can't use
> devm_clk_get_optional_enabled() as they need to set rate after getting
> the clock and before enabling it. Provide a managed helper that wraps
> these operations in the correct order.
>
> Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
> ---
Applied to clk-next
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH v2 1/2] clk: provide devm_clk_get_optional_enabled_with_rate()
2024-09-05 21:42 ` [PATCH v2 1/2] clk: provide devm_clk_get_optional_enabled_with_rate() Stephen Boyd
@ 2024-09-09 6:41 ` Bartosz Golaszewski
0 siblings, 0 replies; 8+ messages in thread
From: Bartosz Golaszewski @ 2024-09-09 6:41 UTC (permalink / raw)
To: Stephen Boyd
Cc: Luiz Augusto von Dentz, Marcel Holtmann, Michael Turquette,
Russell King, linux-clk, linux-kernel, linux-bluetooth,
Bartosz Golaszewski
On Thu, Sep 5, 2024 at 11:42 PM Stephen Boyd <sboyd@kernel.org> wrote:
>
> Quoting Bartosz Golaszewski (2024-08-05 01:57:31)
> > From: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
> >
> > There are clock users in the kernel that can't use
> > devm_clk_get_optional_enabled() as they need to set rate after getting
> > the clock and before enabling it. Provide a managed helper that wraps
> > these operations in the correct order.
> >
> > Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
> > ---
>
> Applied to clk-next
Thanks, I will add some users in the next cycle. Unless Luiz really
wants to play with cross-tree merges again. :)
Bart
^ permalink raw reply [flat|nested] 8+ messages in thread
* [PATCH v2 2/2] Bluetooth: hci_qca: use devm_clk_get_optional_enabled_with_rate()
2024-08-05 8:57 [PATCH v2 0/2] clk: implement a new managed helper and add first user Bartosz Golaszewski
2024-08-05 8:57 ` [PATCH v2 1/2] clk: provide devm_clk_get_optional_enabled_with_rate() Bartosz Golaszewski
@ 2024-08-05 8:57 ` Bartosz Golaszewski
2024-09-02 8:33 ` [PATCH v2 0/2] clk: implement a new managed helper and add first user Bartosz Golaszewski
2 siblings, 0 replies; 8+ messages in thread
From: Bartosz Golaszewski @ 2024-08-05 8:57 UTC (permalink / raw)
To: Michael Turquette, Stephen Boyd, Russell King, Marcel Holtmann,
Luiz Augusto von Dentz
Cc: linux-clk, linux-kernel, linux-bluetooth, Bartosz Golaszewski
From: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
Use the new devm_clk_get_optional_enabled_with_rate() clock helper to
shrink the code a bit.
Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
---
drivers/bluetooth/hci_qca.c | 24 ++----------------------
1 file changed, 2 insertions(+), 22 deletions(-)
diff --git a/drivers/bluetooth/hci_qca.c b/drivers/bluetooth/hci_qca.c
index 45adc1560d94..7bee8102caf8 100644
--- a/drivers/bluetooth/hci_qca.c
+++ b/drivers/bluetooth/hci_qca.c
@@ -2293,13 +2293,6 @@ static int qca_init_regulators(struct qca_power *qca,
return 0;
}
-static void qca_clk_disable_unprepare(void *data)
-{
- struct clk *clk = data;
-
- clk_disable_unprepare(clk);
-}
-
static int qca_serdev_probe(struct serdev_device *serdev)
{
struct qca_serdev *qcadev;
@@ -2432,25 +2425,12 @@ static int qca_serdev_probe(struct serdev_device *serdev)
if (!qcadev->bt_en)
power_ctrl_enabled = false;
- qcadev->susclk = devm_clk_get_optional(&serdev->dev, NULL);
+ qcadev->susclk = devm_clk_get_optional_enabled_with_rate(
+ &serdev->dev, NULL, SUSCLK_RATE_32KHZ);
if (IS_ERR(qcadev->susclk)) {
dev_warn(&serdev->dev, "failed to acquire clk\n");
return PTR_ERR(qcadev->susclk);
}
- err = clk_set_rate(qcadev->susclk, SUSCLK_RATE_32KHZ);
- if (err)
- return err;
-
- err = clk_prepare_enable(qcadev->susclk);
- if (err)
- return err;
-
- err = devm_add_action_or_reset(&serdev->dev,
- qca_clk_disable_unprepare,
- qcadev->susclk);
- if (err)
- return err;
-
}
err = hci_uart_register_device(&qcadev->serdev_hu, &qca_proto);
--
2.43.0
^ permalink raw reply related [flat|nested] 8+ messages in thread* Re: [PATCH v2 0/2] clk: implement a new managed helper and add first user
2024-08-05 8:57 [PATCH v2 0/2] clk: implement a new managed helper and add first user Bartosz Golaszewski
2024-08-05 8:57 ` [PATCH v2 1/2] clk: provide devm_clk_get_optional_enabled_with_rate() Bartosz Golaszewski
2024-08-05 8:57 ` [PATCH v2 2/2] Bluetooth: hci_qca: use devm_clk_get_optional_enabled_with_rate() Bartosz Golaszewski
@ 2024-09-02 8:33 ` Bartosz Golaszewski
2 siblings, 0 replies; 8+ messages in thread
From: Bartosz Golaszewski @ 2024-09-02 8:33 UTC (permalink / raw)
To: Michael Turquette, Stephen Boyd, Russell King, Marcel Holtmann,
Luiz Augusto von Dentz
Cc: linux-clk, linux-kernel, linux-bluetooth, Bartosz Golaszewski
On Mon, Aug 5, 2024 at 10:57 AM Bartosz Golaszewski <brgl@bgdev.pl> wrote:
>
> I'm posting this as RFC to see if there's any interest. I noticed that
> some drivers do: clk_get() -> clk_set_rate() -> clk_prepare_enable(). I
> was wondering if it's worth factoring this out into dedicated helpers.
>
> This series adds a new such helper for the "optional-enabled" use-case
> and the first user. Let me know if this makes sense.
>
> Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
> ---
> Changes in v2:
> - s/EXPORT_SYMBOL/EXPORT_SYMBOL_GPL/
> - add a stub for !COMMON_CLK
> - Link to v1: https://lore.kernel.org/r/20240801-clk-new-helper-v1-0-81e9338b7b17@linaro.org
>
> ---
> Bartosz Golaszewski (2):
> clk: provide devm_clk_get_optional_enabled_with_rate()
> Bluetooth: hci_qca: use devm_clk_get_optional_enabled_with_rate()
>
> drivers/bluetooth/hci_qca.c | 24 ++----------------------
> drivers/clk/clk-devres.c | 28 ++++++++++++++++++++++++++++
> include/linux/clk.h | 33 +++++++++++++++++++++++++++++++++
> 3 files changed, 63 insertions(+), 22 deletions(-)
> ---
> base-commit: d6dbc9f56c3a70e915625b6f1887882c23dc5c91
> change-id: 20240801-clk-new-helper-7853f662cda1
>
> Best regards,
> --
> Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
>
It's been a month. Any comments on this?
Bart
^ permalink raw reply [flat|nested] 8+ messages in thread
* [PATCH RFC 1/2] clk: provide devm_clk_get_optional_enabled_with_rate()
@ 2024-08-01 15:58 Bartosz Golaszewski
2024-08-01 16:37 ` clk: implement a new managed helper and add first user bluez.test.bot
0 siblings, 1 reply; 8+ messages in thread
From: Bartosz Golaszewski @ 2024-08-01 15:58 UTC (permalink / raw)
To: Michael Turquette, Stephen Boyd, Russell King, Marcel Holtmann,
Luiz Augusto von Dentz
Cc: linux-clk, linux-kernel, linux-bluetooth, Bartosz Golaszewski
From: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
There are clock users in the kernel that can't use
devm_clk_get_optional_enabled() as they need to set rate after getting
the clock and before enabling it. Provide a managed helper that wraps
these operations in the correct order.
Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
---
drivers/clk/clk-devres.c | 28 ++++++++++++++++++++++++++++
include/linux/clk.h | 26 ++++++++++++++++++++++++++
2 files changed, 54 insertions(+)
diff --git a/drivers/clk/clk-devres.c b/drivers/clk/clk-devres.c
index 90e6078fb6e1..34e800525e21 100644
--- a/drivers/clk/clk-devres.c
+++ b/drivers/clk/clk-devres.c
@@ -99,6 +99,34 @@ struct clk *devm_clk_get_optional_enabled(struct device *dev, const char *id)
}
EXPORT_SYMBOL_GPL(devm_clk_get_optional_enabled);
+struct clk *devm_clk_get_optional_enabled_with_rate(struct device *dev,
+ const char *id,
+ unsigned long rate)
+{
+ struct clk *clk;
+ int ret;
+
+ clk = __devm_clk_get(dev, id, clk_get_optional, NULL,
+ clk_disable_unprepare);
+ if (IS_ERR(clk))
+ return ERR_CAST(clk);
+
+ ret = clk_set_rate(clk, rate);
+ if (ret)
+ goto out_put_clk;
+
+ ret = clk_prepare_enable(clk);
+ if (ret)
+ goto out_put_clk;
+
+ return clk;
+
+out_put_clk:
+ devm_clk_put(dev, clk);
+ return ERR_PTR(ret);
+}
+EXPORT_SYMBOL(devm_clk_get_optional_enabled_with_rate);
+
struct clk_bulk_devres {
struct clk_bulk_data *clks;
int num_clks;
diff --git a/include/linux/clk.h b/include/linux/clk.h
index 0fa56d672532..c8d237e9b8d4 100644
--- a/include/linux/clk.h
+++ b/include/linux/clk.h
@@ -640,6 +640,32 @@ struct clk *devm_clk_get_optional_prepared(struct device *dev, const char *id);
*/
struct clk *devm_clk_get_optional_enabled(struct device *dev, const char *id);
+/**
+ * devm_clk_get_optional_enabled_with_rate - devm_clk_get_optional() +
+ * clk_set_rate() +
+ * clk_prepare_enable()
+ * @dev: device for clock "consumer"
+ * @id: clock consumer ID
+ * @rate: new clock rate
+ *
+ * Context: May sleep.
+ *
+ * Return: a struct clk corresponding to the clock producer, or
+ * valid IS_ERR() condition containing errno. The implementation
+ * uses @dev and @id to determine the clock consumer, and thereby
+ * the clock producer. If no such clk is found, it returns NULL
+ * which serves as a dummy clk. That's the only difference compared
+ * to devm_clk_get_enabled().
+ *
+ * The returned clk (if valid) is prepared and enabled and rate was set.
+ *
+ * The clock will automatically be disabled, unprepared and freed
+ * when the device is unbound from the bus.
+ */
+struct clk *devm_clk_get_optional_enabled_with_rate(struct device *dev,
+ const char *id,
+ unsigned long rate);
+
/**
* devm_get_clk_from_child - lookup and obtain a managed reference to a
* clock producer from child node.
--
2.43.0
^ permalink raw reply related [flat|nested] 8+ messages in thread* RE: clk: implement a new managed helper and add first user
2024-08-01 15:58 [PATCH RFC 1/2] clk: provide devm_clk_get_optional_enabled_with_rate() Bartosz Golaszewski
@ 2024-08-01 16:37 ` bluez.test.bot
0 siblings, 0 replies; 8+ messages in thread
From: bluez.test.bot @ 2024-08-01 16:37 UTC (permalink / raw)
To: linux-bluetooth, brgl
[-- Attachment #1: Type: text/plain, Size: 10447 bytes --]
This is automated email and please do not reply to this email!
Dear submitter,
Thank you for submitting the patches to the linux bluetooth mailing list.
This is a CI test results with your patch series:
PW Link:https://patchwork.kernel.org/project/bluetooth/list/?series=875976
---Test result---
Test Summary:
CheckPatch PASS 1.15 seconds
GitLint PASS 0.38 seconds
SubjectPrefix FAIL 0.38 seconds
BuildKernel FAIL 24.17 seconds
CheckAllWarning FAIL 26.65 seconds
CheckSparse FAIL 29.94 seconds
CheckSmatch FAIL 79.97 seconds
BuildKernel32 FAIL 23.16 seconds
TestRunnerSetup PASS 524.83 seconds
TestRunner_l2cap-tester PASS 21.94 seconds
TestRunner_iso-tester PASS 35.06 seconds
TestRunner_bnep-tester PASS 4.77 seconds
TestRunner_mgmt-tester FAIL 121.27 seconds
TestRunner_rfcomm-tester PASS 7.44 seconds
TestRunner_sco-tester PASS 13.00 seconds
TestRunner_ioctl-tester PASS 7.92 seconds
TestRunner_mesh-tester PASS 5.86 seconds
TestRunner_smp-tester PASS 7.66 seconds
TestRunner_userchan-tester PASS 4.99 seconds
IncrementalBuild FAIL 32.79 seconds
Details
##############################
Test: SubjectPrefix - FAIL
Desc: Check subject contains "Bluetooth" prefix
Output:
"Bluetooth: " prefix is not specified in the subject
##############################
Test: BuildKernel - FAIL
Desc: Build Kernel for Bluetooth
Output:
drivers/bluetooth/hci_qca.c: In function ‘qca_serdev_probe’:
drivers/bluetooth/hci_qca.c:2428:20: error: implicit declaration of function ‘devm_clk_get_optional_enabled_with_rate’; did you mean ‘devm_clk_get_optional_enabled’? [-Werror=implicit-function-declaration]
2428 | qcadev->susclk = devm_clk_get_optional_enabled_with_rate(
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| devm_clk_get_optional_enabled
drivers/bluetooth/hci_qca.c:2428:18: warning: assignment to ‘struct clk *’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion]
2428 | qcadev->susclk = devm_clk_get_optional_enabled_with_rate(
| ^
cc1: some warnings being treated as errors
make[4]: *** [scripts/Makefile.build:244: drivers/bluetooth/hci_qca.o] Error 1
make[3]: *** [scripts/Makefile.build:485: drivers/bluetooth] Error 2
make[2]: *** [scripts/Makefile.build:485: drivers] Error 2
make[2]: *** Waiting for unfinished jobs....
make[1]: *** [/github/workspace/src/src/Makefile:1934: .] Error 2
make: *** [Makefile:240: __sub-make] Error 2
##############################
Test: CheckAllWarning - FAIL
Desc: Run linux kernel with all warning enabled
Output:
drivers/bluetooth/hci_qca.c: In function ‘qca_serdev_probe’:
drivers/bluetooth/hci_qca.c:2428:20: error: implicit declaration of function ‘devm_clk_get_optional_enabled_with_rate’; did you mean ‘devm_clk_get_optional_enabled’? [-Werror=implicit-function-declaration]
2428 | qcadev->susclk = devm_clk_get_optional_enabled_with_rate(
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| devm_clk_get_optional_enabled
drivers/bluetooth/hci_qca.c:2428:18: warning: assignment to ‘struct clk *’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion]
2428 | qcadev->susclk = devm_clk_get_optional_enabled_with_rate(
| ^
cc1: some warnings being treated as errors
make[4]: *** [scripts/Makefile.build:244: drivers/bluetooth/hci_qca.o] Error 1
make[3]: *** [scripts/Makefile.build:485: drivers/bluetooth] Error 2
make[2]: *** [scripts/Makefile.build:485: drivers] Error 2
make[2]: *** Waiting for unfinished jobs....
make[1]: *** [/github/workspace/src/src/Makefile:1934: .] Error 2
make: *** [Makefile:240: __sub-make] Error 2
##############################
Test: CheckSparse - FAIL
Desc: Run sparse tool with linux kernel
Output:
net/bluetooth/af_bluetooth.c:223:25: warning: context imbalance in 'bt_accept_enqueue' - different lock contexts for basic block
drivers/bluetooth/hci_qca.c: In function ‘qca_serdev_probe’:
drivers/bluetooth/hci_qca.c:2428:20: error: implicit declaration of function ‘devm_clk_get_optional_enabled_with_rate’; did you mean ‘devm_clk_get_optional_enabled’? [-Werror=implicit-function-declaration]
2428 | qcadev->susclk = devm_clk_get_optional_enabled_with_rate(
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| devm_clk_get_optional_enabled
drivers/bluetooth/hci_qca.c:2428:18: warning: assignment to ‘struct clk *’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion]
2428 | qcadev->susclk = devm_clk_get_optional_enabled_with_rate(
| ^
cc1: some warnings being treated as errors
make[4]: *** [scripts/Makefile.build:244: drivers/bluetooth/hci_qca.o] Error 1
make[3]: *** [scripts/Makefile.build:485: drivers/bluetooth] Error 2
make[2]: *** [scripts/Makefile.build:485: drivers] Error 2
make[2]: *** Waiting for unfinished jobs....
net/bluetooth/hci_event.c: note: in included file (through include/net/bluetooth/hci_core.h):
./include/net/bluetooth/hci.h:2596:47: warning: array of flexible structures
./include/net/bluetooth/hci.h:2682:43: warning: array of flexible structures
net/bluetooth/hci_codec.c: note: in included file:
./include/net/bluetooth/hci_core.h:147:35: warning: array of flexible structures
net/bluetooth/sco.c: note: in included file:
./include/net/bluetooth/hci_core.h:147:35: warning: array of flexible structures
make[1]: *** [/github/workspace/src/src/Makefile:1934: .] Error 2
make: *** [Makefile:240: __sub-make] Error 2
##############################
Test: CheckSmatch - FAIL
Desc: Run smatch tool with source
Output:
drivers/bluetooth/hci_qca.c: In function ‘qca_serdev_probe’:
drivers/bluetooth/hci_qca.c:2428:20: error: implicit declaration of function ‘devm_clk_get_optional_enabled_with_rate’; did you mean ‘devm_clk_get_optional_enabled’? [-Werror=implicit-function-declaration]
2428 | qcadev->susclk = devm_clk_get_optional_enabled_with_rate(
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| devm_clk_get_optional_enabled
drivers/bluetooth/hci_qca.c:2428:18: warning: assignment to ‘struct clk *’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion]
2428 | qcadev->susclk = devm_clk_get_optional_enabled_with_rate(
| ^
cc1: some warnings being treated as errors
make[4]: *** [scripts/Makefile.build:244: drivers/bluetooth/hci_qca.o] Error 1
make[3]: *** [scripts/Makefile.build:485: drivers/bluetooth] Error 2
make[2]: *** [scripts/Makefile.build:485: drivers] Error 2
make[2]: *** Waiting for unfinished jobs....
net/bluetooth/hci_event.c: note: in included file (through include/net/bluetooth/hci_core.h):
./include/net/bluetooth/hci.h:2596:47: warning: array of flexible structures
./include/net/bluetooth/hci.h:2682:43: warning: array of flexible structures
net/bluetooth/hci_codec.c: note: in included file:
./include/net/bluetooth/hci_core.h:147:35: warning: array of flexible structures
net/bluetooth/sco.c: note: in included file:
./include/net/bluetooth/hci_core.h:147:35: warning: array of flexible structures
make[1]: *** [/github/workspace/src/src/Makefile:1934: .] Error 2
make: *** [Makefile:240: __sub-make] Error 2
##############################
Test: BuildKernel32 - FAIL
Desc: Build 32bit Kernel for Bluetooth
Output:
drivers/bluetooth/hci_qca.c: In function ‘qca_serdev_probe’:
drivers/bluetooth/hci_qca.c:2428:20: error: implicit declaration of function ‘devm_clk_get_optional_enabled_with_rate’; did you mean ‘devm_clk_get_optional_enabled’? [-Werror=implicit-function-declaration]
2428 | qcadev->susclk = devm_clk_get_optional_enabled_with_rate(
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| devm_clk_get_optional_enabled
drivers/bluetooth/hci_qca.c:2428:18: warning: assignment to ‘struct clk *’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion]
2428 | qcadev->susclk = devm_clk_get_optional_enabled_with_rate(
| ^
cc1: some warnings being treated as errors
make[4]: *** [scripts/Makefile.build:244: drivers/bluetooth/hci_qca.o] Error 1
make[3]: *** [scripts/Makefile.build:485: drivers/bluetooth] Error 2
make[2]: *** [scripts/Makefile.build:485: drivers] Error 2
make[2]: *** Waiting for unfinished jobs....
make[1]: *** [/github/workspace/src/src/Makefile:1934: .] Error 2
make: *** [Makefile:240: __sub-make] Error 2
##############################
Test: TestRunner_mgmt-tester - FAIL
Desc: Run mgmt-tester with test-runner
Output:
Total: 492, Passed: 489 (99.4%), Failed: 1, Not Run: 2
Failed Test Cases
LL Privacy - Remove Device 4 (Disable Adv) Timed out 1.927 seconds
##############################
Test: IncrementalBuild - FAIL
Desc: Incremental build with the patches in the series
Output:
[RFC,2/2] Bluetooth: hci_qca: use devm_clk_get_optional_enabled_with_rate()
drivers/bluetooth/hci_qca.c: In function ‘qca_serdev_probe’:
drivers/bluetooth/hci_qca.c:2428:20: error: implicit declaration of function ‘devm_clk_get_optional_enabled_with_rate’; did you mean ‘devm_clk_get_optional_enabled’? [-Werror=implicit-function-declaration]
2428 | qcadev->susclk = devm_clk_get_optional_enabled_with_rate(
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| devm_clk_get_optional_enabled
drivers/bluetooth/hci_qca.c:2428:18: warning: assignment to ‘struct clk *’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion]
2428 | qcadev->susclk = devm_clk_get_optional_enabled_with_rate(
| ^
cc1: some warnings being treated as errors
make[4]: *** [scripts/Makefile.build:244: drivers/bluetooth/hci_qca.o] Error 1
make[3]: *** [scripts/Makefile.build:485: drivers/bluetooth] Error 2
make[2]: *** [scripts/Makefile.build:485: drivers] Error 2
make[1]: *** [/github/workspace/src/src/Makefile:1934: .] Error 2
make: *** [Makefile:240: __sub-make] Error 2
---
Regards,
Linux Bluetooth
^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2024-09-09 6:41 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-08-05 8:57 [PATCH v2 0/2] clk: implement a new managed helper and add first user Bartosz Golaszewski
2024-08-05 8:57 ` [PATCH v2 1/2] clk: provide devm_clk_get_optional_enabled_with_rate() Bartosz Golaszewski
2024-08-05 9:35 ` clk: implement a new managed helper and add first user bluez.test.bot
2024-09-05 21:42 ` [PATCH v2 1/2] clk: provide devm_clk_get_optional_enabled_with_rate() Stephen Boyd
2024-09-09 6:41 ` Bartosz Golaszewski
2024-08-05 8:57 ` [PATCH v2 2/2] Bluetooth: hci_qca: use devm_clk_get_optional_enabled_with_rate() Bartosz Golaszewski
2024-09-02 8:33 ` [PATCH v2 0/2] clk: implement a new managed helper and add first user Bartosz Golaszewski
-- strict thread matches above, loose matches on Subject: below --
2024-08-01 15:58 [PATCH RFC 1/2] clk: provide devm_clk_get_optional_enabled_with_rate() Bartosz Golaszewski
2024-08-01 16:37 ` clk: implement a new managed helper and add first user bluez.test.bot
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox