* [asahilinux:atcphy-20230219 14/54] drivers/thunderbolt/acpi.c:31:23: error: no member named 'pdev' in 'struct tb_nhi'; did you mean 'dev'?
@ 2023-02-19 18:37 kernel test robot
0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2023-02-19 18:37 UTC (permalink / raw)
To: Sven Peter; +Cc: llvm, oe-kbuild-all
tree: https://github.com/AsahiLinux/linux atcphy-20230219
head: 9928386c36c8def0becc6ce2db8f18f2111f9b3c
commit: f931e8ca0730986230243c7db38a5e60d9dc9ab7 [14/54] thunderbolt: Remove pci_dev from struct tb_nhi
config: x86_64-randconfig-r025-20230220 (https://download.01.org/0day-ci/archive/20230220/202302200218.V2EGsADq-lkp@intel.com/config)
compiler: clang version 14.0.6 (https://github.com/llvm/llvm-project f28c006a5895fc0e329fe15fead81e37457cb1d1)
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# https://github.com/AsahiLinux/linux/commit/f931e8ca0730986230243c7db38a5e60d9dc9ab7
git remote add asahilinux https://github.com/AsahiLinux/linux
git fetch --no-tags asahilinux atcphy-20230219
git checkout f931e8ca0730986230243c7db38a5e60d9dc9ab7
# save the config file
mkdir build_dir && cp config build_dir/.config
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=x86_64 olddefconfig
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=x86_64 SHELL=/bin/bash drivers/thunderbolt/
If you fix the issue, kindly add following tag where applicable
| Reported-by: kernel test robot <lkp@intel.com>
| Link: https://lore.kernel.org/oe-kbuild-all/202302200218.V2EGsADq-lkp@intel.com/
All errors (new ones prefixed by >>):
>> drivers/thunderbolt/acpi.c:31:23: error: no member named 'pdev' in 'struct tb_nhi'; did you mean 'dev'?
if (dev_fwnode(&nhi->pdev->dev) != fwnode)
^~~~
dev
include/linux/property.h:39:12: note: expanded from macro 'dev_fwnode'
_Generic((dev), \
^
include/linux/thunderbolt.h:479:17: note: 'dev' declared here
struct device *dev;
^
>> drivers/thunderbolt/acpi.c:31:29: error: no member named 'dev' in 'struct device'; did you mean 'devt'?
if (dev_fwnode(&nhi->pdev->dev) != fwnode)
^~~
devt
include/linux/property.h:39:12: note: expanded from macro 'dev_fwnode'
_Generic((dev), \
^
include/linux/device.h:622:10: note: 'devt' declared here
dev_t devt; /* dev_t, creates the sysfs "dev" */
^
>> drivers/thunderbolt/acpi.c:31:17: error: controlling expression type 'dev_t *' (aka 'unsigned int *') not compatible with any generic association type
if (dev_fwnode(&nhi->pdev->dev) != fwnode)
^~~~~~~~~~~~~~~
include/linux/property.h:39:12: note: expanded from macro 'dev_fwnode'
_Generic((dev), \
^~~
>> drivers/thunderbolt/acpi.c:31:23: error: no member named 'pdev' in 'struct tb_nhi'; did you mean 'dev'?
if (dev_fwnode(&nhi->pdev->dev) != fwnode)
^~~~
dev
include/linux/property.h:41:35: note: expanded from macro 'dev_fwnode'
struct device *: __dev_fwnode)(dev)
^
include/linux/thunderbolt.h:479:17: note: 'dev' declared here
struct device *dev;
^
>> drivers/thunderbolt/acpi.c:31:29: error: no member named 'dev' in 'struct device'; did you mean 'devt'?
if (dev_fwnode(&nhi->pdev->dev) != fwnode)
^~~
devt
include/linux/property.h:41:35: note: expanded from macro 'dev_fwnode'
struct device *: __dev_fwnode)(dev)
^
include/linux/device.h:622:10: note: 'devt' declared here
dev_t devt; /* dev_t, creates the sysfs "dev" */
^
drivers/thunderbolt/acpi.c:83:44: error: no member named 'pdev' in 'struct tb_nhi'; did you mean 'dev'?
link = device_link_add(&pdev->dev, &nhi->pdev->dev,
^~~~
dev
include/linux/thunderbolt.h:479:17: note: 'dev' declared here
struct device *dev;
^
drivers/thunderbolt/acpi.c:83:50: error: no member named 'dev' in 'struct device'; did you mean 'devt'?
link = device_link_add(&pdev->dev, &nhi->pdev->dev,
^~~
devt
include/linux/device.h:622:10: note: 'devt' declared here
dev_t devt; /* dev_t, creates the sysfs "dev" */
^
drivers/thunderbolt/acpi.c:88:18: error: no member named 'pdev' in 'struct tb_nhi'; did you mean 'dev'?
dev_dbg(&nhi->pdev->dev, "created link from %s\n",
^~~~
dev
include/linux/dev_printk.h:163:26: note: expanded from macro 'dev_dbg'
dev_printk(KERN_DEBUG, dev, dev_fmt(fmt), ##__VA_ARGS__); \
^
include/linux/dev_printk.h:129:22: note: expanded from macro 'dev_printk'
_dev_printk(level, dev, fmt, ##__VA_ARGS__); \
^
include/linux/thunderbolt.h:479:17: note: 'dev' declared here
struct device *dev;
^
drivers/thunderbolt/acpi.c:88:24: error: no member named 'dev' in 'struct device'; did you mean 'devt'?
dev_dbg(&nhi->pdev->dev, "created link from %s\n",
^~~
devt
include/linux/dev_printk.h:163:26: note: expanded from macro 'dev_dbg'
dev_printk(KERN_DEBUG, dev, dev_fmt(fmt), ##__VA_ARGS__); \
^
include/linux/dev_printk.h:129:22: note: expanded from macro 'dev_printk'
_dev_printk(level, dev, fmt, ##__VA_ARGS__); \
^
include/linux/device.h:622:10: note: 'devt' declared here
dev_t devt; /* dev_t, creates the sysfs "dev" */
^
drivers/thunderbolt/acpi.c:91:19: error: no member named 'pdev' in 'struct tb_nhi'; did you mean 'dev'?
dev_warn(&nhi->pdev->dev, "device link creation from %s failed\n",
^~~~
dev
include/linux/dev_printk.h:146:49: note: expanded from macro 'dev_warn'
dev_printk_index_wrap(_dev_warn, KERN_WARNING, dev, dev_fmt(fmt), ##__VA_ARGS__)
^
include/linux/dev_printk.h:110:11: note: expanded from macro 'dev_printk_index_wrap'
_p_func(dev, fmt, ##__VA_ARGS__); \
^
include/linux/thunderbolt.h:479:17: note: 'dev' declared here
struct device *dev;
^
drivers/thunderbolt/acpi.c:91:25: error: no member named 'dev' in 'struct device'; did you mean 'devt'?
dev_warn(&nhi->pdev->dev, "device link creation from %s failed\n",
^~~
devt
include/linux/dev_printk.h:146:49: note: expanded from macro 'dev_warn'
dev_printk_index_wrap(_dev_warn, KERN_WARNING, dev, dev_fmt(fmt), ##__VA_ARGS__)
^
include/linux/dev_printk.h:110:11: note: expanded from macro 'dev_printk_index_wrap'
_p_func(dev, fmt, ##__VA_ARGS__); \
^
include/linux/device.h:622:10: note: 'devt' declared here
dev_t devt; /* dev_t, creates the sysfs "dev" */
^
drivers/thunderbolt/acpi.c:115:32: error: no member named 'pdev' in 'struct tb_nhi'; did you mean 'dev'?
if (!has_acpi_companion(&nhi->pdev->dev))
^~~~
dev
include/linux/thunderbolt.h:479:17: note: 'dev' declared here
struct device *dev;
^
drivers/thunderbolt/acpi.c:115:38: error: no member named 'dev' in 'struct device'; did you mean 'devt'?
if (!has_acpi_companion(&nhi->pdev->dev))
^~~
devt
include/linux/device.h:622:10: note: 'devt' declared here
dev_t devt; /* dev_t, creates the sysfs "dev" */
^
drivers/thunderbolt/acpi.c:125:18: error: no member named 'pdev' in 'struct tb_nhi'; did you mean 'dev'?
dev_warn(&nhi->pdev->dev, "failed to enumerate tunneled ports\n");
^~~~
dev
include/linux/dev_printk.h:146:49: note: expanded from macro 'dev_warn'
dev_printk_index_wrap(_dev_warn, KERN_WARNING, dev, dev_fmt(fmt), ##__VA_ARGS__)
^
include/linux/dev_printk.h:110:11: note: expanded from macro 'dev_printk_index_wrap'
_p_func(dev, fmt, ##__VA_ARGS__); \
^
include/linux/thunderbolt.h:479:17: note: 'dev' declared here
struct device *dev;
^
drivers/thunderbolt/acpi.c:125:24: error: no member named 'dev' in 'struct device'; did you mean 'devt'?
dev_warn(&nhi->pdev->dev, "failed to enumerate tunneled ports\n");
^~~
devt
include/linux/dev_printk.h:146:49: note: expanded from macro 'dev_warn'
dev_printk_index_wrap(_dev_warn, KERN_WARNING, dev, dev_fmt(fmt), ##__VA_ARGS__)
^
include/linux/dev_printk.h:110:11: note: expanded from macro 'dev_printk_index_wrap'
_p_func(dev, fmt, ##__VA_ARGS__); \
^
include/linux/device.h:622:10: note: 'devt' declared here
dev_t devt; /* dev_t, creates the sysfs "dev" */
^
drivers/thunderbolt/acpi.c:322:38: error: no member named 'pdev' in 'struct tb_nhi'; did you mean 'dev'?
parent_adev = ACPI_COMPANION(&nhi->pdev->dev);
^~~~
dev
include/linux/acpi.h:43:51: note: expanded from macro 'ACPI_COMPANION'
#define ACPI_COMPANION(dev) to_acpi_device_node((dev)->fwnode)
^
include/acpi/acpi_bus.h:417:10: note: expanded from macro 'to_acpi_device_node'
typeof(__fwnode) __to_acpi_device_node_fwnode = __fwnode; \
^
include/linux/thunderbolt.h:479:17: note: 'dev' declared here
struct device *dev;
^
drivers/thunderbolt/acpi.c:322:44: error: no member named 'dev' in 'struct device'; did you mean 'devt'?
parent_adev = ACPI_COMPANION(&nhi->pdev->dev);
^~~
devt
include/linux/acpi.h:43:51: note: expanded from macro 'ACPI_COMPANION'
#define ACPI_COMPANION(dev) to_acpi_device_node((dev)->fwnode)
^
include/acpi/acpi_bus.h:417:10: note: expanded from macro 'to_acpi_device_node'
typeof(__fwnode) __to_acpi_device_node_fwnode = __fwnode; \
^
include/linux/device.h:622:10: note: 'devt' declared here
dev_t devt; /* dev_t, creates the sysfs "dev" */
^
>> drivers/thunderbolt/acpi.c:322:17: error: member reference base type 'dev_t' (aka 'unsigned int') is not a structure or union
parent_adev = ACPI_COMPANION(&nhi->pdev->dev);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/acpi.h:43:55: note: expanded from macro 'ACPI_COMPANION'
#define ACPI_COMPANION(dev) to_acpi_device_node((dev)->fwnode)
~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~
include/acpi/acpi_bus.h:417:10: note: expanded from macro 'to_acpi_device_node'
typeof(__fwnode) __to_acpi_device_node_fwnode = __fwnode; \
^~~~~~~~
drivers/thunderbolt/acpi.c:322:38: error: no member named 'pdev' in 'struct tb_nhi'; did you mean 'dev'?
parent_adev = ACPI_COMPANION(&nhi->pdev->dev);
^~~~
dev
include/linux/acpi.h:43:51: note: expanded from macro 'ACPI_COMPANION'
#define ACPI_COMPANION(dev) to_acpi_device_node((dev)->fwnode)
^
include/acpi/acpi_bus.h:417:51: note: expanded from macro 'to_acpi_device_node'
typeof(__fwnode) __to_acpi_device_node_fwnode = __fwnode; \
^
include/linux/thunderbolt.h:479:17: note: 'dev' declared here
struct device *dev;
^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.
vim +31 drivers/thunderbolt/acpi.c
b2be2b05cf3b1c Mika Westerberg 2019-04-02 13
b2be2b05cf3b1c Mika Westerberg 2019-04-02 14 static acpi_status tb_acpi_add_link(acpi_handle handle, u32 level, void *data,
b2be2b05cf3b1c Mika Westerberg 2019-04-02 15 void **return_value)
b2be2b05cf3b1c Mika Westerberg 2019-04-02 16 {
7f7b571becf373 Rafael J. Wysocki 2022-02-01 17 struct acpi_device *adev = acpi_fetch_acpi_dev(handle);
b2be2b05cf3b1c Mika Westerberg 2019-04-02 18 struct fwnode_handle *fwnode;
b2be2b05cf3b1c Mika Westerberg 2019-04-02 19 struct tb_nhi *nhi = data;
b2be2b05cf3b1c Mika Westerberg 2019-04-02 20 struct pci_dev *pdev;
b2be2b05cf3b1c Mika Westerberg 2019-04-02 21 struct device *dev;
b2be2b05cf3b1c Mika Westerberg 2019-04-02 22
7f7b571becf373 Rafael J. Wysocki 2022-02-01 23 if (!adev)
b2be2b05cf3b1c Mika Westerberg 2019-04-02 24 return AE_OK;
b2be2b05cf3b1c Mika Westerberg 2019-04-02 25
2ae18cc2269fc2 Heikki Krogerus 2022-10-24 26 fwnode = fwnode_find_reference(acpi_fwnode_handle(adev), "usb4-host-interface", 0);
2ae18cc2269fc2 Heikki Krogerus 2022-10-24 27 if (IS_ERR(fwnode))
b2be2b05cf3b1c Mika Westerberg 2019-04-02 28 return AE_OK;
b2be2b05cf3b1c Mika Westerberg 2019-04-02 29
b2be2b05cf3b1c Mika Westerberg 2019-04-02 30 /* It needs to reference this NHI */
2ae18cc2269fc2 Heikki Krogerus 2022-10-24 @31 if (dev_fwnode(&nhi->pdev->dev) != fwnode)
b2be2b05cf3b1c Mika Westerberg 2019-04-02 32 goto out_put;
b2be2b05cf3b1c Mika Westerberg 2019-04-02 33
b2be2b05cf3b1c Mika Westerberg 2019-04-02 34 /*
b2be2b05cf3b1c Mika Westerberg 2019-04-02 35 * Try to find physical device walking upwards to the hierarcy.
b2be2b05cf3b1c Mika Westerberg 2019-04-02 36 * We need to do this because the xHCI driver might not yet be
b2be2b05cf3b1c Mika Westerberg 2019-04-02 37 * bound so the USB3 SuperSpeed ports are not yet created.
b2be2b05cf3b1c Mika Westerberg 2019-04-02 38 */
b2be2b05cf3b1c Mika Westerberg 2019-04-02 39 dev = acpi_get_first_physical_node(adev);
b2be2b05cf3b1c Mika Westerberg 2019-04-02 40 while (!dev) {
62fcb99bdf10fe Rafael J. Wysocki 2022-08-24 41 adev = acpi_dev_parent(adev);
b2be2b05cf3b1c Mika Westerberg 2019-04-02 42 if (!adev)
b2be2b05cf3b1c Mika Westerberg 2019-04-02 43 break;
b2be2b05cf3b1c Mika Westerberg 2019-04-02 44 dev = acpi_get_first_physical_node(adev);
b2be2b05cf3b1c Mika Westerberg 2019-04-02 45 }
b2be2b05cf3b1c Mika Westerberg 2019-04-02 46
b2be2b05cf3b1c Mika Westerberg 2019-04-02 47 if (!dev)
b2be2b05cf3b1c Mika Westerberg 2019-04-02 48 goto out_put;
b2be2b05cf3b1c Mika Westerberg 2019-04-02 49
b2be2b05cf3b1c Mika Westerberg 2019-04-02 50 /*
b2be2b05cf3b1c Mika Westerberg 2019-04-02 51 * Check that the device is PCIe. This is because USB3
b2be2b05cf3b1c Mika Westerberg 2019-04-02 52 * SuperSpeed ports have this property and they are not power
b2be2b05cf3b1c Mika Westerberg 2019-04-02 53 * managed with the xHCI and the SuperSpeed hub so we create the
b2be2b05cf3b1c Mika Westerberg 2019-04-02 54 * link from xHCI instead.
b2be2b05cf3b1c Mika Westerberg 2019-04-02 55 */
4d395c5e74398f Mario Limonciello 2020-10-26 56 while (dev && !dev_is_pci(dev))
b2be2b05cf3b1c Mika Westerberg 2019-04-02 57 dev = dev->parent;
b2be2b05cf3b1c Mika Westerberg 2019-04-02 58
b2be2b05cf3b1c Mika Westerberg 2019-04-02 59 if (!dev)
b2be2b05cf3b1c Mika Westerberg 2019-04-02 60 goto out_put;
b2be2b05cf3b1c Mika Westerberg 2019-04-02 61
b2be2b05cf3b1c Mika Westerberg 2019-04-02 62 /*
b2be2b05cf3b1c Mika Westerberg 2019-04-02 63 * Check that this actually matches the type of device we
b2be2b05cf3b1c Mika Westerberg 2019-04-02 64 * expect. It should either be xHCI or PCIe root/downstream
b2be2b05cf3b1c Mika Westerberg 2019-04-02 65 * port.
b2be2b05cf3b1c Mika Westerberg 2019-04-02 66 */
b2be2b05cf3b1c Mika Westerberg 2019-04-02 67 pdev = to_pci_dev(dev);
b2be2b05cf3b1c Mika Westerberg 2019-04-02 68 if (pdev->class == PCI_CLASS_SERIAL_USB_XHCI ||
b2be2b05cf3b1c Mika Westerberg 2019-04-02 69 (pci_is_pcie(pdev) &&
b2be2b05cf3b1c Mika Westerberg 2019-04-02 70 (pci_pcie_type(pdev) == PCI_EXP_TYPE_ROOT_PORT ||
b2be2b05cf3b1c Mika Westerberg 2019-04-02 71 pci_pcie_type(pdev) == PCI_EXP_TYPE_DOWNSTREAM))) {
b2be2b05cf3b1c Mika Westerberg 2019-04-02 72 const struct device_link *link;
b2be2b05cf3b1c Mika Westerberg 2019-04-02 73
f3380cac0c0b3a Mika Westerberg 2021-11-14 74 /*
f3380cac0c0b3a Mika Westerberg 2021-11-14 75 * Make them both active first to make sure the NHI does
f3380cac0c0b3a Mika Westerberg 2021-11-14 76 * not runtime suspend before the consumer. The
f3380cac0c0b3a Mika Westerberg 2021-11-14 77 * pm_runtime_put() below then allows the consumer to
f3380cac0c0b3a Mika Westerberg 2021-11-14 78 * runtime suspend again (which then allows NHI runtime
f3380cac0c0b3a Mika Westerberg 2021-11-14 79 * suspend too now that the device link is established).
f3380cac0c0b3a Mika Westerberg 2021-11-14 80 */
f3380cac0c0b3a Mika Westerberg 2021-11-14 81 pm_runtime_get_sync(&pdev->dev);
f3380cac0c0b3a Mika Westerberg 2021-11-14 82
b2be2b05cf3b1c Mika Westerberg 2019-04-02 83 link = device_link_add(&pdev->dev, &nhi->pdev->dev,
b2be2b05cf3b1c Mika Westerberg 2019-04-02 84 DL_FLAG_AUTOREMOVE_SUPPLIER |
f3380cac0c0b3a Mika Westerberg 2021-11-14 85 DL_FLAG_RPM_ACTIVE |
b2be2b05cf3b1c Mika Westerberg 2019-04-02 86 DL_FLAG_PM_RUNTIME);
b2be2b05cf3b1c Mika Westerberg 2019-04-02 87 if (link) {
b2be2b05cf3b1c Mika Westerberg 2019-04-02 88 dev_dbg(&nhi->pdev->dev, "created link from %s\n",
b2be2b05cf3b1c Mika Westerberg 2019-04-02 89 dev_name(&pdev->dev));
b2be2b05cf3b1c Mika Westerberg 2019-04-02 90 } else {
b2be2b05cf3b1c Mika Westerberg 2019-04-02 91 dev_warn(&nhi->pdev->dev, "device link creation from %s failed\n",
b2be2b05cf3b1c Mika Westerberg 2019-04-02 92 dev_name(&pdev->dev));
b2be2b05cf3b1c Mika Westerberg 2019-04-02 93 }
f3380cac0c0b3a Mika Westerberg 2021-11-14 94
f3380cac0c0b3a Mika Westerberg 2021-11-14 95 pm_runtime_put(&pdev->dev);
b2be2b05cf3b1c Mika Westerberg 2019-04-02 96 }
b2be2b05cf3b1c Mika Westerberg 2019-04-02 97
b2be2b05cf3b1c Mika Westerberg 2019-04-02 98 out_put:
2ae18cc2269fc2 Heikki Krogerus 2022-10-24 99 fwnode_handle_put(fwnode);
b2be2b05cf3b1c Mika Westerberg 2019-04-02 100 return AE_OK;
b2be2b05cf3b1c Mika Westerberg 2019-04-02 101 }
b2be2b05cf3b1c Mika Westerberg 2019-04-02 102
:::::: The code at line 31 was first introduced by commit
:::::: 2ae18cc2269fc2d05d36bf44a8daa4404fa11dde thunderbolt: ACPI: Use the helper fwnode_find_reference()
:::::: TO: Heikki Krogerus <heikki.krogerus@linux.intel.com>
:::::: CC: Mika Westerberg <mika.westerberg@linux.intel.com>
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2023-02-19 18:37 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-02-19 18:37 [asahilinux:atcphy-20230219 14/54] drivers/thunderbolt/acpi.c:31:23: error: no member named 'pdev' in 'struct tb_nhi'; did you mean 'dev'? kernel test robot
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).