[<prev] [next>] [day] [month] [year] [list]
Message-ID: <202512240451.STA6LPmq-lkp@intel.com>
Date: Wed, 24 Dec 2025 04:35:59 +0800
From: kernel test robot <lkp@...el.com>
To: Arnd Bergmann <arnd@...db.de>
Cc: oe-kbuild-all@...ts.linux.dev, linux-kernel@...r.kernel.org,
Jakub Kicinski <kuba@...nel.org>
Subject:
drivers/media/platform/qcom/iris/iris_firmware.c:49:undefined reference to
`qcom_mdt_get_size'
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: b927546677c876e26eba308550207c2ddf812a43
commit: 2df158047d532d0e2a6b39953656c738872151a3 ipa: fix compile-testing with qcom-mdt=m
date: 5 months ago
config: loongarch-randconfig-r071-20251223 (https://download.01.org/0day-ci/archive/20251224/202512240451.STA6LPmq-lkp@intel.com/config)
compiler: loongarch64-linux-gcc (GCC) 15.1.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20251224/202512240451.STA6LPmq-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@...el.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202512240451.STA6LPmq-lkp@intel.com/
All errors (new ones prefixed by >>):
loongarch64-linux-ld: drivers/media/platform/qcom/iris/iris_firmware.o: in function `iris_load_fw_to_memory':
>> drivers/media/platform/qcom/iris/iris_firmware.c:49:(.text+0xf4): undefined reference to `qcom_mdt_get_size'
>> loongarch64-linux-ld: drivers/media/platform/qcom/iris/iris_firmware.c:61:(.text+0x13c): undefined reference to `qcom_mdt_load'
vim +49 drivers/media/platform/qcom/iris/iris_firmware.c
d19b163356b81b Dikshita Agarwal 2025-02-07 16
d19b163356b81b Dikshita Agarwal 2025-02-07 17 static int iris_load_fw_to_memory(struct iris_core *core, const char *fw_name)
d19b163356b81b Dikshita Agarwal 2025-02-07 18 {
d19b163356b81b Dikshita Agarwal 2025-02-07 19 u32 pas_id = core->iris_platform_data->pas_id;
d19b163356b81b Dikshita Agarwal 2025-02-07 20 const struct firmware *firmware = NULL;
d19b163356b81b Dikshita Agarwal 2025-02-07 21 struct device *dev = core->dev;
d19b163356b81b Dikshita Agarwal 2025-02-07 22 struct reserved_mem *rmem;
d19b163356b81b Dikshita Agarwal 2025-02-07 23 struct device_node *node;
d19b163356b81b Dikshita Agarwal 2025-02-07 24 phys_addr_t mem_phys;
d19b163356b81b Dikshita Agarwal 2025-02-07 25 size_t res_size;
d19b163356b81b Dikshita Agarwal 2025-02-07 26 ssize_t fw_size;
d19b163356b81b Dikshita Agarwal 2025-02-07 27 void *mem_virt;
d19b163356b81b Dikshita Agarwal 2025-02-07 28 int ret;
d19b163356b81b Dikshita Agarwal 2025-02-07 29
d19b163356b81b Dikshita Agarwal 2025-02-07 30 if (strlen(fw_name) >= MAX_FIRMWARE_NAME_SIZE - 4)
d19b163356b81b Dikshita Agarwal 2025-02-07 31 return -EINVAL;
d19b163356b81b Dikshita Agarwal 2025-02-07 32
d19b163356b81b Dikshita Agarwal 2025-02-07 33 node = of_parse_phandle(dev->of_node, "memory-region", 0);
d19b163356b81b Dikshita Agarwal 2025-02-07 34 if (!node)
d19b163356b81b Dikshita Agarwal 2025-02-07 35 return -EINVAL;
d19b163356b81b Dikshita Agarwal 2025-02-07 36
d19b163356b81b Dikshita Agarwal 2025-02-07 37 rmem = of_reserved_mem_lookup(node);
d19b163356b81b Dikshita Agarwal 2025-02-07 38 of_node_put(node);
d19b163356b81b Dikshita Agarwal 2025-02-07 39 if (!rmem)
d19b163356b81b Dikshita Agarwal 2025-02-07 40 return -EINVAL;
d19b163356b81b Dikshita Agarwal 2025-02-07 41
d19b163356b81b Dikshita Agarwal 2025-02-07 42 mem_phys = rmem->base;
d19b163356b81b Dikshita Agarwal 2025-02-07 43 res_size = rmem->size;
d19b163356b81b Dikshita Agarwal 2025-02-07 44
d19b163356b81b Dikshita Agarwal 2025-02-07 45 ret = request_firmware(&firmware, fw_name, dev);
d19b163356b81b Dikshita Agarwal 2025-02-07 46 if (ret)
d19b163356b81b Dikshita Agarwal 2025-02-07 47 return ret;
d19b163356b81b Dikshita Agarwal 2025-02-07 48
d19b163356b81b Dikshita Agarwal 2025-02-07 @49 fw_size = qcom_mdt_get_size(firmware);
d19b163356b81b Dikshita Agarwal 2025-02-07 50 if (fw_size < 0 || res_size < (size_t)fw_size) {
d19b163356b81b Dikshita Agarwal 2025-02-07 51 ret = -EINVAL;
d19b163356b81b Dikshita Agarwal 2025-02-07 52 goto err_release_fw;
d19b163356b81b Dikshita Agarwal 2025-02-07 53 }
d19b163356b81b Dikshita Agarwal 2025-02-07 54
d19b163356b81b Dikshita Agarwal 2025-02-07 55 mem_virt = memremap(mem_phys, res_size, MEMREMAP_WC);
e68c3c50a73649 Dan Carpenter 2025-02-17 56 if (!mem_virt) {
e68c3c50a73649 Dan Carpenter 2025-02-17 57 ret = -ENOMEM;
d19b163356b81b Dikshita Agarwal 2025-02-07 58 goto err_release_fw;
e68c3c50a73649 Dan Carpenter 2025-02-17 59 }
d19b163356b81b Dikshita Agarwal 2025-02-07 60
d19b163356b81b Dikshita Agarwal 2025-02-07 @61 ret = qcom_mdt_load(dev, firmware, fw_name,
d19b163356b81b Dikshita Agarwal 2025-02-07 62 pas_id, mem_virt, mem_phys, res_size, NULL);
d19b163356b81b Dikshita Agarwal 2025-02-07 63 if (ret)
d19b163356b81b Dikshita Agarwal 2025-02-07 64 goto err_mem_unmap;
d19b163356b81b Dikshita Agarwal 2025-02-07 65
d19b163356b81b Dikshita Agarwal 2025-02-07 66 ret = qcom_scm_pas_auth_and_reset(pas_id);
d19b163356b81b Dikshita Agarwal 2025-02-07 67 if (ret)
d19b163356b81b Dikshita Agarwal 2025-02-07 68 goto err_mem_unmap;
d19b163356b81b Dikshita Agarwal 2025-02-07 69
d19b163356b81b Dikshita Agarwal 2025-02-07 70 return ret;
d19b163356b81b Dikshita Agarwal 2025-02-07 71
d19b163356b81b Dikshita Agarwal 2025-02-07 72 err_mem_unmap:
d19b163356b81b Dikshita Agarwal 2025-02-07 73 memunmap(mem_virt);
d19b163356b81b Dikshita Agarwal 2025-02-07 74 err_release_fw:
d19b163356b81b Dikshita Agarwal 2025-02-07 75 release_firmware(firmware);
d19b163356b81b Dikshita Agarwal 2025-02-07 76
d19b163356b81b Dikshita Agarwal 2025-02-07 77 return ret;
d19b163356b81b Dikshita Agarwal 2025-02-07 78 }
d19b163356b81b Dikshita Agarwal 2025-02-07 79
:::::: The code at line 49 was first introduced by commit
:::::: d19b163356b81b7da9bbc47d6c45c4dab8db32d9 media: iris: implement video firmware load/unload
:::::: TO: Dikshita Agarwal <quic_dikshita@...cinc.com>
:::::: CC: Hans Verkuil <hverkuil@...all.nl>
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
Powered by blists - more mailing lists