[android-common:android16-6.12-desktop 1/1] drivers/platform/x86/thinkpad_acpi.c:10608:10: error: 'struct platform_profile_handler' has no member named 'profile_get'
kernel test robot <[email protected]>
| Newsgroups | dev.linux.lists.oe-kbuild-all |
|---|---|
| Message-ID | <[email protected]> |
Hi Kurt, FYI, the error/warning still remains. tree: https://android.googlesource.com/kernel/common android16-6.12-desktop head: 24c37396da197463e1ff2bc69bb789e34dacad53 commit: ea909ed70c5c85d9c3f781b4a009e6a6ddbb133a [1/1] BACKPORT: UPSTREAM: ACPI: platform_profile: Add `ops` member to handlers config: i386-allmodconfig (https://download.01.org/0day-ci/archive/20260813/[email protected]/config) compiler: gcc-14 (Debian 14.2.0-19) 14.2.0 reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260813/[email protected]/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 <[email protected]> | Closes: https://lore.kernel.org/oe-kbuild-all/[email protected]/ All errors (new ones prefixed by >>): drivers/platform/x86/thinkpad_acpi.c: In function 'dytc_profile_refresh': drivers/platform/x86/thinkpad_acpi.c:10603:17: error: too few arguments to function 'platform_profile_notify' 10603 | platform_profile_notify(); | ^~~~~~~~~~~~~~~~~~~~~~~ In file included from drivers/platform/x86/thinkpad_acpi.c:60: include/linux/platform_profile.h:51:6: note: declared here 51 | void platform_profile_notify(struct platform_profile_handler *pprof); | ^~~~~~~~~~~~~~~~~~~~~~~ drivers/platform/x86/thinkpad_acpi.c: At top level: >> drivers/platform/x86/thinkpad_acpi.c:10608:10: error: 'struct platform_profile_handler' has no member named 'profile_get' 10608 | .profile_get = dytc_profile_get, | ^~~~~~~~~~~ drivers/platform/x86/thinkpad_acpi.c:10608:24: error: initialization of 'const char *' from incompatible pointer type 'int (*)(struct platform_profile_handler *, enum platform_profile_option *)' [-Wincompatible-pointer-types] 10608 | .profile_get = dytc_profile_get, | ^~~~~~~~~~~~~~~~ drivers/platform/x86/thinkpad_acpi.c:10608:24: note: (near initialization for 'dytc_profile.name') >> drivers/platform/x86/thinkpad_acpi.c:10609:10: error: 'struct platform_profile_handler' has no member named 'profile_set' 10609 | .profile_set = dytc_profile_set, | ^~~~~~~~~~~ drivers/platform/x86/thinkpad_acpi.c:10609:24: error: initialization of 'struct device *' from incompatible pointer type 'int (*)(struct platform_profile_handler *, enum platform_profile_option)' [-Wincompatible-pointer-types] 10609 | .profile_set = dytc_profile_set, | ^~~~~~~~~~~~~~~~ drivers/platform/x86/thinkpad_acpi.c:10609:24: note: (near initialization for 'dytc_profile.dev') drivers/platform/x86/thinkpad_acpi.c: In function 'tpacpi_dytc_profile_init': drivers/platform/x86/thinkpad_acpi.c:10681:15: error: too few arguments to function 'platform_profile_register' 10681 | err = platform_profile_register(&dytc_profile); | ^~~~~~~~~~~~~~~~~~~~~~~~~ include/linux/platform_profile.h:47:5: note: declared here 47 | int platform_profile_register(struct platform_profile_handler *pprof, void *drvdata); | ^~~~~~~~~~~~~~~~~~~~~~~~~ drivers/platform/x86/thinkpad_acpi.c: In function 'dytc_profile_exit': drivers/platform/x86/thinkpad_acpi.c:10701:9: error: too few arguments to function 'platform_profile_remove' 10701 | platform_profile_remove(); | ^~~~~~~~~~~~~~~~~~~~~~~ include/linux/platform_profile.h:48:5: note: declared here 48 | int platform_profile_remove(struct platform_profile_handler *pprof); | ^~~~~~~~~~~~~~~~~~~~~~~ vim +10608 drivers/platform/x86/thinkpad_acpi.c c3bfcd4c676238e Mark Pearson 2021-01-11 10574 c3bfcd4c676238e Mark Pearson 2021-01-11 10575 static void dytc_profile_refresh(void) c3bfcd4c676238e Mark Pearson 2021-01-11 10576 { c3bfcd4c676238e Mark Pearson 2021-01-11 10577 enum platform_profile_option profile; f999e23ce66c155 Mark Pearson 2023-06-06 10578 int output = 0, err = 0; f999e23ce66c155 Mark Pearson 2023-06-06 10579 int perfmode, funcmode = 0; c3bfcd4c676238e Mark Pearson 2021-01-11 10580 c3bfcd4c676238e Mark Pearson 2021-01-11 10581 mutex_lock(&dytc_mutex); 42504af775361ca Mark Pearson 2022-06-03 10582 if (dytc_capabilities & BIT(DYTC_FC_MMC)) { 7a47f86bba748b3 Mark Pearson 2021-04-06 10583 if (dytc_mmc_get_available) 7a47f86bba748b3 Mark Pearson 2021-04-06 10584 err = dytc_command(DYTC_CMD_MMC_GET, &output); 7a47f86bba748b3 Mark Pearson 2021-04-06 10585 else c3bfcd4c676238e Mark Pearson 2021-01-11 10586 err = dytc_cql_command(DYTC_CMD_GET, &output); 1bc5d819f0b9784 Mark Pearson 2023-01-24 10587 funcmode = DYTC_FUNCTION_MMC; 1bc5d819f0b9784 Mark Pearson 2023-01-24 10588 } else if (dytc_capabilities & BIT(DYTC_FC_PSC)) { e1c21608e3cfc4b Mark Pearson 2022-02-25 10589 err = dytc_command(DYTC_CMD_GET, &output); 1bc5d819f0b9784 Mark Pearson 2023-01-24 10590 /* Check if we are PSC mode, or have AMT enabled */ 1bc5d819f0b9784 Mark Pearson 2023-01-24 10591 funcmode = (output >> DYTC_GET_FUNCTION_BIT) & 0xF; f999e23ce66c155 Mark Pearson 2023-06-06 10592 } else { /* Unknown profile mode */ f999e23ce66c155 Mark Pearson 2023-06-06 10593 err = -ENODEV; 1bc5d819f0b9784 Mark Pearson 2023-01-24 10594 } c3bfcd4c676238e Mark Pearson 2021-01-11 10595 mutex_unlock(&dytc_mutex); c3bfcd4c676238e Mark Pearson 2021-01-11 10596 if (err) c3bfcd4c676238e Mark Pearson 2021-01-11 10597 return; c3bfcd4c676238e Mark Pearson 2021-01-11 10598 c3bfcd4c676238e Mark Pearson 2021-01-11 10599 perfmode = (output >> DYTC_GET_MODE_BIT) & 0xF; 427c70dec738318 Mario Limonciello 2024-02-16 10600 err = convert_dytc_to_profile(funcmode, perfmode, &profile); 427c70dec738318 Mario Limonciello 2024-02-16 10601 if (!err && profile != dytc_current_profile) { c3bfcd4c676238e Mark Pearson 2021-01-11 10602 dytc_current_profile = profile; c3bfcd4c676238e Mark Pearson 2021-01-11 @10603 platform_profile_notify(); c3bfcd4c676238e Mark Pearson 2021-01-11 10604 } c3bfcd4c676238e Mark Pearson 2021-01-11 10605 } c3bfcd4c676238e Mark Pearson 2021-01-11 10606 c3bfcd4c676238e Mark Pearson 2021-01-11 10607 static struct platform_profile_handler dytc_profile = { c3bfcd4c676238e Mark Pearson 2021-01-11 @10608 .profile_get = dytc_profile_get, c3bfcd4c676238e Mark Pearson 2021-01-11 @10609 .profile_set = dytc_profile_set, c3bfcd4c676238e Mark Pearson 2021-01-11 10610 }; c3bfcd4c676238e Mark Pearson 2021-01-11 10611 :::::: The code at line 10608 was first introduced by commit :::::: c3bfcd4c676238e198d5a798b50e5d424bf05497 platform/x86: thinkpad_acpi: Add platform profile support :::::: TO: Mark Pearson <[email protected]> :::::: CC: Hans de Goede <[email protected]> -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki