From: Andre Przywara <andre.przywara@arm.com>
To: kernel test robot <lkp@intel.com>,
Salman Nabi <salman.nabi@arm.com>,
vvidwans@nvidia.com, sudeep.holla@arm.com, mark.rutland@arm.com,
lpieralisi@kernel.org
Cc: oe-kbuild-all@lists.linux.dev, ardb@kernel.org,
chao.gao@intel.com, linux-arm-kernel@lists.infradead.org,
linux-coco@lists.linux.dev, linux-kernel@vger.kernel.org,
sdonthineni@nvidia.com, vsethi@nvidia.com, vwadekar@nvidia.com
Subject: Re: [PATCH 1/1] firmware: smccc: add support for Live Firmware Activation (LFA)
Date: Mon, 19 Jan 2026 16:41:27 +0000 [thread overview]
Message-ID: <7cb5b5a7-90aa-4b78-aff3-f88073e72b60@arm.com> (raw)
In-Reply-To: <202601200007.GVZIjoCx-lkp@intel.com>
Hi,
On 19/01/2026 16:29, kernel test robot wrote:
> Hi Salman,
>
> kernel test robot noticed the following build warnings:
>
> [auto build test WARNING on soc/for-next]
> [also build test WARNING on linus/master v6.19-rc6 next-20260116]
> [If your patch is applied to the wrong git tree, kindly drop us a note.
> And when submitting patch, we suggest to use '--base' as documented in
> https://git-scm.com/docs/git-format-patch#_base_tree_information]
>
> url: https://github.com/intel-lab-lkp/linux/commits/Salman-Nabi/firmware-smccc-add-support-for-Live-Firmware-Activation-LFA/20260119-203221
> base: https://git.kernel.org/pub/scm/linux/kernel/git/soc/soc.git for-next
> patch link: https://lore.kernel.org/r/20260119122729.287522-2-salman.nabi%40arm.com
> patch subject: [PATCH 1/1] firmware: smccc: add support for Live Firmware Activation (LFA)
> config: arm-sp7021_defconfig (https://download.01.org/0day-ci/archive/20260120/202601200007.GVZIjoCx-lkp@intel.com/config)
> compiler: arm-linux-gnueabi-gcc (GCC) 15.2.0
> reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260120/202601200007.GVZIjoCx-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/202601200007.GVZIjoCx-lkp@intel.com/
>
> All warnings (new ones prefixed by >>):
>
> drivers/firmware/smccc/lfa_fw.c: In function 'get_nr_lfa_components':
> drivers/firmware/smccc/lfa_fw.c:179:16: error: variable 'reg' has initializer but incomplete type
> 179 | struct arm_smccc_1_2_regs reg = { 0 };
> | ^~~~~~~~~~~~~~~~~~
>>> drivers/firmware/smccc/lfa_fw.c:179:43: warning: excess elements in struct initializer
Ah, yes, arm_smccc_1_2_regs is only defined for arm64. We rely on v1.2,
and the LFA spec actually means that this means AArch64 only right at
the beginning (chapter 2).
So we need an additional dependency on ARM64 in the Kconfig entry.
Cheers,
Andre
> 179 | struct arm_smccc_1_2_regs reg = { 0 };
> | ^
> drivers/firmware/smccc/lfa_fw.c:179:43: note: (near initialization for 'reg')
> drivers/firmware/smccc/lfa_fw.c:179:35: error: storage size of 'reg' isn't known
> 179 | struct arm_smccc_1_2_regs reg = { 0 };
> | ^~~
> drivers/firmware/smccc/lfa_fw.c:184:9: error: implicit declaration of function 'arm_smccc_1_2_invoke'; did you mean 'arm_smccc_1_1_invoke'? [-Wimplicit-function-declaration]
> 184 | arm_smccc_1_2_invoke(®, ®);
> | ^~~~~~~~~~~~~~~~~~~~
> | arm_smccc_1_1_invoke
>>> drivers/firmware/smccc/lfa_fw.c:179:35: warning: unused variable 'reg' [-Wunused-variable]
> 179 | struct arm_smccc_1_2_regs reg = { 0 };
> | ^~~
> drivers/firmware/smccc/lfa_fw.c: In function 'lfa_cancel':
> drivers/firmware/smccc/lfa_fw.c:194:16: error: variable 'reg' has initializer but incomplete type
> 194 | struct arm_smccc_1_2_regs reg = { 0 };
> | ^~~~~~~~~~~~~~~~~~
> drivers/firmware/smccc/lfa_fw.c:194:43: warning: excess elements in struct initializer
> 194 | struct arm_smccc_1_2_regs reg = { 0 };
> | ^
> drivers/firmware/smccc/lfa_fw.c:194:43: note: (near initialization for 'reg')
> drivers/firmware/smccc/lfa_fw.c:194:35: error: storage size of 'reg' isn't known
> 194 | struct arm_smccc_1_2_regs reg = { 0 };
> | ^~~
> drivers/firmware/smccc/lfa_fw.c:194:35: warning: unused variable 'reg' [-Wunused-variable]
> drivers/firmware/smccc/lfa_fw.c: In function 'call_lfa_activate':
> drivers/firmware/smccc/lfa_fw.c:220:16: error: variable 'reg' has initializer but incomplete type
> 220 | struct arm_smccc_1_2_regs reg = { 0 };
> | ^~~~~~~~~~~~~~~~~~
> drivers/firmware/smccc/lfa_fw.c:220:43: warning: excess elements in struct initializer
> 220 | struct arm_smccc_1_2_regs reg = { 0 };
> | ^
> drivers/firmware/smccc/lfa_fw.c:220:43: note: (near initialization for 'reg')
> drivers/firmware/smccc/lfa_fw.c:220:35: error: storage size of 'reg' isn't known
> 220 | struct arm_smccc_1_2_regs reg = { 0 };
> | ^~~
> drivers/firmware/smccc/lfa_fw.c:220:35: warning: unused variable 'reg' [-Wunused-variable]
> drivers/firmware/smccc/lfa_fw.c: In function 'prime_fw_image':
> drivers/firmware/smccc/lfa_fw.c:290:16: error: variable 'reg' has initializer but incomplete type
> 290 | struct arm_smccc_1_2_regs reg = { 0 };
> | ^~~~~~~~~~~~~~~~~~
> drivers/firmware/smccc/lfa_fw.c:290:43: warning: excess elements in struct initializer
> 290 | struct arm_smccc_1_2_regs reg = { 0 };
> | ^
> drivers/firmware/smccc/lfa_fw.c:290:43: note: (near initialization for 'reg')
> drivers/firmware/smccc/lfa_fw.c:290:35: error: storage size of 'reg' isn't known
> 290 | struct arm_smccc_1_2_regs reg = { 0 };
> | ^~~
> drivers/firmware/smccc/lfa_fw.c:290:35: warning: unused variable 'reg' [-Wunused-variable]
> drivers/firmware/smccc/lfa_fw.c: In function 'activation_pending_show':
> drivers/firmware/smccc/lfa_fw.c:360:16: error: variable 'reg' has initializer but incomplete type
> 360 | struct arm_smccc_1_2_regs reg = { 0 };
> | ^~~~~~~~~~~~~~~~~~
> drivers/firmware/smccc/lfa_fw.c:360:43: warning: excess elements in struct initializer
> 360 | struct arm_smccc_1_2_regs reg = { 0 };
> | ^
> drivers/firmware/smccc/lfa_fw.c:360:43: note: (near initialization for 'reg')
> drivers/firmware/smccc/lfa_fw.c:360:35: error: storage size of 'reg' isn't known
> 360 | struct arm_smccc_1_2_regs reg = { 0 };
> | ^~~
> drivers/firmware/smccc/lfa_fw.c:360:35: warning: unused variable 'reg' [-Wunused-variable]
> drivers/firmware/smccc/lfa_fw.c: In function 'pending_version_show':
> drivers/firmware/smccc/lfa_fw.c:434:16: error: variable 'reg' has initializer but incomplete type
> 434 | struct arm_smccc_1_2_regs reg = { 0 };
> | ^~~~~~~~~~~~~~~~~~
> drivers/firmware/smccc/lfa_fw.c:434:43: warning: excess elements in struct initializer
> 434 | struct arm_smccc_1_2_regs reg = { 0 };
> | ^
> drivers/firmware/smccc/lfa_fw.c:434:43: note: (near initialization for 'reg')
> drivers/firmware/smccc/lfa_fw.c:434:35: error: storage size of 'reg' isn't known
> 434 | struct arm_smccc_1_2_regs reg = { 0 };
> | ^~~
> drivers/firmware/smccc/lfa_fw.c:434:35: warning: unused variable 'reg' [-Wunused-variable]
> drivers/firmware/smccc/lfa_fw.c: In function 'update_fw_images_tree':
> drivers/firmware/smccc/lfa_fw.c:586:16: error: variable 'reg' has initializer but incomplete type
> 586 | struct arm_smccc_1_2_regs reg = { 0 };
> | ^~~~~~~~~~~~~~~~~~
> drivers/firmware/smccc/lfa_fw.c:586:43: warning: excess elements in struct initializer
> 586 | struct arm_smccc_1_2_regs reg = { 0 };
> | ^
> drivers/firmware/smccc/lfa_fw.c:586:43: note: (near initialization for 'reg')
> drivers/firmware/smccc/lfa_fw.c:586:35: error: storage size of 'reg' isn't known
> 586 | struct arm_smccc_1_2_regs reg = { 0 };
> | ^~~
> drivers/firmware/smccc/lfa_fw.c:586:35: warning: unused variable 'reg' [-Wunused-variable]
> drivers/firmware/smccc/lfa_fw.c: In function 'lfa_init':
> drivers/firmware/smccc/lfa_fw.c:619:16: error: variable 'reg' has initializer but incomplete type
> 619 | struct arm_smccc_1_2_regs reg = { 0 };
> | ^~~~~~~~~~~~~~~~~~
> drivers/firmware/smccc/lfa_fw.c:619:43: warning: excess elements in struct initializer
> 619 | struct arm_smccc_1_2_regs reg = { 0 };
> | ^
> drivers/firmware/smccc/lfa_fw.c:619:43: note: (near initialization for 'reg')
> drivers/firmware/smccc/lfa_fw.c:619:35: error: storage size of 'reg' isn't known
> 619 | struct arm_smccc_1_2_regs reg = { 0 };
> | ^~~
> drivers/firmware/smccc/lfa_fw.c:619:35: warning: unused variable 'reg' [-Wunused-variable]
>
>
> vim +179 drivers/firmware/smccc/lfa_fw.c
>
> 176
> 177 static unsigned long get_nr_lfa_components(void)
> 178 {
> > 179 struct arm_smccc_1_2_regs reg = { 0 };
> 180
> 181 reg.a0 = LFA_1_0_FN_GET_INFO;
> 182 reg.a1 = 0; /* lfa_info_selector = 0 */
> 183
> 184 arm_smccc_1_2_invoke(®, ®);
> 185 if (reg.a0 != LFA_SUCCESS)
> 186 return reg.a0;
> 187
> 188 return reg.a1;
> 189 }
> 190
>
next prev parent reply other threads:[~2026-01-19 16:41 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-01-19 12:27 [PATCH 0/1] Arm Live Firmware Activation (LFA) support Salman Nabi
2026-01-19 12:27 ` [PATCH 1/1] firmware: smccc: add support for Live Firmware Activation (LFA) Salman Nabi
2026-01-19 16:29 ` kernel test robot
2026-01-19 16:41 ` Andre Przywara [this message]
2026-01-19 18:41 ` kernel test robot
2026-01-19 21:35 ` kernel test robot
2026-01-27 23:01 ` Vedashree Vidwans
2026-01-29 17:26 ` Andre Przywara
2026-01-30 19:29 ` Vedashree Vidwans
2026-01-30 20:31 ` Andre Przywara
2026-01-31 1:35 ` Trilok Soni
2026-02-02 15:52 ` Salman Nabi
2026-02-06 6:37 ` Trilok Soni
2026-02-10 22:20 ` Vedashree Vidwans
2026-02-20 17:39 ` Andre Przywara
2026-02-20 21:48 ` Trilok Soni
2026-03-13 9:46 ` Nirmoy Das
2026-03-13 14:39 ` Andre Przywara
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=7cb5b5a7-90aa-4b78-aff3-f88073e72b60@arm.com \
--to=andre.przywara@arm.com \
--cc=ardb@kernel.org \
--cc=chao.gao@intel.com \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-coco@lists.linux.dev \
--cc=linux-kernel@vger.kernel.org \
--cc=lkp@intel.com \
--cc=lpieralisi@kernel.org \
--cc=mark.rutland@arm.com \
--cc=oe-kbuild-all@lists.linux.dev \
--cc=salman.nabi@arm.com \
--cc=sdonthineni@nvidia.com \
--cc=sudeep.holla@arm.com \
--cc=vsethi@nvidia.com \
--cc=vvidwans@nvidia.com \
--cc=vwadekar@nvidia.com \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®