From: kernel test robot <lkp@intel.com>
To: Bartosz Golaszewski <brgl@bgdev.pl>
Cc: llvm@lists.linux.dev, oe-kbuild-all@lists.linux.dev
Subject: Re: [PATCH RFC 2/2] Bluetooth: hci_qca: use devm_clk_get_optional_enabled_with_rate()
Date: Sun, 4 Aug 2024 08:20:34 +0800 [thread overview]
Message-ID: <202408040825.VVKPcQKv-lkp@intel.com> (raw)
In-Reply-To: <20240801-clk-new-helper-v1-2-81e9338b7b17@linaro.org>
Hi Bartosz,
[This is a private test report for your RFC patch.]
kernel test robot noticed the following build errors:
[auto build test ERROR on 048d8cb65cde9fe7534eb4440bcfddcf406bb49c]
url: https://github.com/intel-lab-lkp/linux/commits/Bartosz-Golaszewski/clk-provide-devm_clk_get_optional_enabled_with_rate/20240803-013509
base: 048d8cb65cde9fe7534eb4440bcfddcf406bb49c
patch link: https://lore.kernel.org/r/20240801-clk-new-helper-v1-2-81e9338b7b17%40linaro.org
patch subject: [PATCH RFC 2/2] Bluetooth: hci_qca: use devm_clk_get_optional_enabled_with_rate()
config: i386-randconfig-013-20240804 (https://download.01.org/0day-ci/archive/20240804/202408040825.VVKPcQKv-lkp@intel.com/config)
compiler: clang version 18.1.5 (https://github.com/llvm/llvm-project 617a15a9eac96088ae5e9134248d8236e34b91b1)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240804/202408040825.VVKPcQKv-lkp@intel.com/reproduce)
If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202408040825.VVKPcQKv-lkp@intel.com/
All errors (new ones prefixed by >>):
>> drivers/bluetooth/hci_qca.c:2429:20: error: call to undeclared function 'devm_clk_get_optional_enabled_with_rate'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
2429 | qcadev->susclk = devm_clk_get_optional_enabled_with_rate(
| ^
drivers/bluetooth/hci_qca.c:2429:20: note: did you mean 'devm_clk_get_optional_enabled'?
include/linux/clk.h:1005:27: note: 'devm_clk_get_optional_enabled' declared here
1005 | static inline struct clk *devm_clk_get_optional_enabled(struct device *dev,
| ^
>> drivers/bluetooth/hci_qca.c:2429:18: error: incompatible integer to pointer conversion assigning to 'struct clk *' from 'int' [-Wint-conversion]
2429 | qcadev->susclk = devm_clk_get_optional_enabled_with_rate(
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2430 | &serdev->dev, NULL, SUSCLK_RATE_32KHZ);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2 errors generated.
vim +/devm_clk_get_optional_enabled_with_rate +2429 drivers/bluetooth/hci_qca.c
2299
2300 static int qca_serdev_probe(struct serdev_device *serdev)
2301 {
2302 struct qca_serdev *qcadev;
2303 struct hci_dev *hdev;
2304 const struct qca_device_data *data;
2305 int err;
2306 bool power_ctrl_enabled = true;
2307
2308 qcadev = devm_kzalloc(&serdev->dev, sizeof(*qcadev), GFP_KERNEL);
2309 if (!qcadev)
2310 return -ENOMEM;
2311
2312 qcadev->serdev_hu.serdev = serdev;
2313 data = device_get_match_data(&serdev->dev);
2314 serdev_device_set_drvdata(serdev, qcadev);
2315 device_property_read_string(&serdev->dev, "firmware-name",
2316 &qcadev->firmware_name);
2317 device_property_read_u32(&serdev->dev, "max-speed",
2318 &qcadev->oper_speed);
2319 if (!qcadev->oper_speed)
2320 BT_DBG("UART will pick default operating speed");
2321
2322 qcadev->bdaddr_property_broken = device_property_read_bool(&serdev->dev,
2323 "qcom,local-bd-address-broken");
2324
2325 if (data)
2326 qcadev->btsoc_type = data->soc_type;
2327 else
2328 qcadev->btsoc_type = QCA_ROME;
2329
2330 switch (qcadev->btsoc_type) {
2331 case QCA_WCN3988:
2332 case QCA_WCN3990:
2333 case QCA_WCN3991:
2334 case QCA_WCN3998:
2335 case QCA_WCN6750:
2336 case QCA_WCN6855:
2337 case QCA_WCN7850:
2338 case QCA_QCA6390:
2339 qcadev->bt_power = devm_kzalloc(&serdev->dev,
2340 sizeof(struct qca_power),
2341 GFP_KERNEL);
2342 if (!qcadev->bt_power)
2343 return -ENOMEM;
2344 break;
2345 default:
2346 break;
2347 }
2348
2349 switch (qcadev->btsoc_type) {
2350 case QCA_WCN6855:
2351 case QCA_WCN7850:
2352 if (!device_property_present(&serdev->dev, "enable-gpios")) {
2353 /*
2354 * Backward compatibility with old DT sources. If the
2355 * node doesn't have the 'enable-gpios' property then
2356 * let's use the power sequencer. Otherwise, let's
2357 * drive everything outselves.
2358 */
2359 qcadev->bt_power->pwrseq = devm_pwrseq_get(&serdev->dev,
2360 "bluetooth");
2361 if (IS_ERR(qcadev->bt_power->pwrseq))
2362 return PTR_ERR(qcadev->bt_power->pwrseq);
2363
2364 break;
2365 }
2366 fallthrough;
2367 case QCA_WCN3988:
2368 case QCA_WCN3990:
2369 case QCA_WCN3991:
2370 case QCA_WCN3998:
2371 case QCA_WCN6750:
2372 qcadev->bt_power->dev = &serdev->dev;
2373 err = qca_init_regulators(qcadev->bt_power, data->vregs,
2374 data->num_vregs);
2375 if (err) {
2376 BT_ERR("Failed to init regulators:%d", err);
2377 return err;
2378 }
2379
2380 qcadev->bt_power->vregs_on = false;
2381
2382 qcadev->bt_en = devm_gpiod_get_optional(&serdev->dev, "enable",
2383 GPIOD_OUT_LOW);
2384 if (IS_ERR(qcadev->bt_en) &&
2385 (data->soc_type == QCA_WCN6750 ||
2386 data->soc_type == QCA_WCN6855)) {
2387 dev_err(&serdev->dev, "failed to acquire BT_EN gpio\n");
2388 return PTR_ERR(qcadev->bt_en);
2389 }
2390
2391 if (!qcadev->bt_en)
2392 power_ctrl_enabled = false;
2393
2394 qcadev->sw_ctrl = devm_gpiod_get_optional(&serdev->dev, "swctrl",
2395 GPIOD_IN);
2396 if (IS_ERR(qcadev->sw_ctrl) &&
2397 (data->soc_type == QCA_WCN6750 ||
2398 data->soc_type == QCA_WCN6855 ||
2399 data->soc_type == QCA_WCN7850)) {
2400 dev_err(&serdev->dev, "failed to acquire SW_CTRL gpio\n");
2401 return PTR_ERR(qcadev->sw_ctrl);
2402 }
2403
2404 qcadev->susclk = devm_clk_get_optional(&serdev->dev, NULL);
2405 if (IS_ERR(qcadev->susclk)) {
2406 dev_err(&serdev->dev, "failed to acquire clk\n");
2407 return PTR_ERR(qcadev->susclk);
2408 }
2409 break;
2410
2411 case QCA_QCA6390:
2412 qcadev->bt_power->pwrseq = devm_pwrseq_get(&serdev->dev,
2413 "bluetooth");
2414 if (IS_ERR(qcadev->bt_power->pwrseq))
2415 return PTR_ERR(qcadev->bt_power->pwrseq);
2416 break;
2417
2418 default:
2419 qcadev->bt_en = devm_gpiod_get_optional(&serdev->dev, "enable",
2420 GPIOD_OUT_LOW);
2421 if (IS_ERR(qcadev->bt_en)) {
2422 dev_err(&serdev->dev, "failed to acquire enable gpio\n");
2423 return PTR_ERR(qcadev->bt_en);
2424 }
2425
2426 if (!qcadev->bt_en)
2427 power_ctrl_enabled = false;
2428
> 2429 qcadev->susclk = devm_clk_get_optional_enabled_with_rate(
2430 &serdev->dev, NULL, SUSCLK_RATE_32KHZ);
2431 if (IS_ERR(qcadev->susclk)) {
2432 dev_warn(&serdev->dev, "failed to acquire clk\n");
2433 return PTR_ERR(qcadev->susclk);
2434 }
2435 }
2436
2437 err = hci_uart_register_device(&qcadev->serdev_hu, &qca_proto);
2438 if (err) {
2439 BT_ERR("serdev registration failed");
2440 return err;
2441 }
2442
2443 hdev = qcadev->serdev_hu.hdev;
2444
2445 if (power_ctrl_enabled) {
2446 set_bit(HCI_QUIRK_NON_PERSISTENT_SETUP, &hdev->quirks);
2447 hdev->shutdown = qca_power_off;
2448 }
2449
2450 if (data) {
2451 /* Wideband speech support must be set per driver since it can't
2452 * be queried via hci. Same with the valid le states quirk.
2453 */
2454 if (data->capabilities & QCA_CAP_WIDEBAND_SPEECH)
2455 set_bit(HCI_QUIRK_WIDEBAND_SPEECH_SUPPORTED,
2456 &hdev->quirks);
2457
2458 if (data->capabilities & QCA_CAP_VALID_LE_STATES)
2459 set_bit(HCI_QUIRK_VALID_LE_STATES, &hdev->quirks);
2460 }
2461
2462 return 0;
2463 }
2464
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
prev parent reply other threads:[~2024-08-04 0:20 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-08-01 15:58 [PATCH RFC 0/2] clk: implement a new managed helper and add first user Bartosz Golaszewski
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
2024-08-03 1:04 ` [PATCH RFC 1/2] clk: provide devm_clk_get_optional_enabled_with_rate() Stephen Boyd
2024-08-01 15:58 ` [PATCH RFC 2/2] Bluetooth: hci_qca: use devm_clk_get_optional_enabled_with_rate() Bartosz Golaszewski
2024-08-04 0:20 ` kernel test robot [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=202408040825.VVKPcQKv-lkp@intel.com \
--to=lkp@intel.com \
--cc=brgl@bgdev.pl \
--cc=llvm@lists.linux.dev \
--cc=oe-kbuild-all@lists.linux.dev \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.