All of lore.kernel.org
 help / color / mirror / Atom feed
* [skn:v5.9/ffa 7/8] drivers/firmware/arm_ffa/driver.c:176:12: error: storage size of 'ver' isn't known
@ 2020-08-26  3:33 kernel test robot
  0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2020-08-26  3:33 UTC (permalink / raw)
  To: kbuild-all

[-- Attachment #1: Type: text/plain, Size: 13619 bytes --]

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/sudeep.holla/linux.git v5.9/ffa
head:   a1dd26f309d173a71b9b7b18cf6221b4e29d397e
commit: de254ee743800be7154e0b19239f97fa748d1e6d [7/8] firmware: Add support for PSA FF-A transport for VM partitions
config: arm-allyesconfig (attached as .config)
compiler: arm-linux-gnueabi-gcc (GCC) 9.3.0
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
        git checkout de254ee743800be7154e0b19239f97fa748d1e6d
        # save the attached .config to linux build tree
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=arm 

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>

All errors (new ones prefixed by >>):

   drivers/firmware/arm_ffa/driver.c: In function 'ffa_version_check':
>> drivers/firmware/arm_ffa/driver.c:176:12: error: storage size of 'ver' isn't known
     176 |  ffa_res_t ver;
         |            ^~~
>> drivers/firmware/arm_ffa/driver.c:178:8: error: invalid use of incomplete typedef 'ffa_res_t' {aka 'struct arm_smccc_v1_2_res'}
     178 |  ver = invoke_ffa_fn(FFA_VERSION, FFA_DRIVER_VERSION, 0, 0, 0, 0, 0, 0);
         |        ^~~~~~~~~~~~~
   drivers/firmware/arm_ffa/driver.c:176:12: warning: unused variable 'ver' [-Wunused-variable]
     176 |  ffa_res_t ver;
         |            ^~~
   drivers/firmware/arm_ffa/driver.c: In function 'ffa_features':
>> drivers/firmware/arm_ffa/driver.c:199:12: error: storage size of 'ret' isn't known
     199 |  ffa_res_t ret;
         |            ^~~
   drivers/firmware/arm_ffa/driver.c:201:8: error: invalid use of incomplete typedef 'ffa_res_t' {aka 'struct arm_smccc_v1_2_res'}
     201 |  ret = invoke_ffa_fn(FFA_FEATURES, func_id, 0, 0, 0, 0, 0, 0);
         |        ^~~~~~~~~~~~~
   drivers/firmware/arm_ffa/driver.c:199:12: warning: unused variable 'ret' [-Wunused-variable]
     199 |  ffa_res_t ret;
         |            ^~~
   drivers/firmware/arm_ffa/driver.c: In function 'ffa_rx_release':
   drivers/firmware/arm_ffa/driver.c:211:12: error: storage size of 'ret' isn't known
     211 |  ffa_res_t ret;
         |            ^~~
   drivers/firmware/arm_ffa/driver.c:213:8: error: invalid use of incomplete typedef 'ffa_res_t' {aka 'struct arm_smccc_v1_2_res'}
     213 |  ret = invoke_ffa_fn(FFA_RX_RELEASE, 0, 0, 0, 0, 0, 0, 0);
         |        ^~~~~~~~~~~~~
   drivers/firmware/arm_ffa/driver.c:211:12: warning: unused variable 'ret' [-Wunused-variable]
     211 |  ffa_res_t ret;
         |            ^~~
   drivers/firmware/arm_ffa/driver.c: In function 'ffa_rxtx_map':
   drivers/firmware/arm_ffa/driver.c:225:12: error: storage size of 'ret' isn't known
     225 |  ffa_res_t ret;
         |            ^~~
   drivers/firmware/arm_ffa/driver.c:227:8: error: invalid use of incomplete typedef 'ffa_res_t' {aka 'struct arm_smccc_v1_2_res'}
     227 |  ret = invoke_ffa_fn(FFA_RXTX_MAP, tx_buf, rx_buf, pg_cnt, 0, 0, 0, 0);
         |        ^~~~~~~~~~~~~
   drivers/firmware/arm_ffa/driver.c:225:12: warning: unused variable 'ret' [-Wunused-variable]
     225 |  ffa_res_t ret;
         |            ^~~
   drivers/firmware/arm_ffa/driver.c: In function 'ffa_rxtx_unmap':
   drivers/firmware/arm_ffa/driver.c:237:12: error: storage size of 'ret' isn't known
     237 |  ffa_res_t ret;
         |            ^~~
   drivers/firmware/arm_ffa/driver.c:239:8: error: invalid use of incomplete typedef 'ffa_res_t' {aka 'struct arm_smccc_v1_2_res'}
     239 |  ret = invoke_ffa_fn(FFA_RXTX_UNMAP, vm_id, 0, 0, 0, 0, 0, 0);
         |        ^~~~~~~~~~~~~
   drivers/firmware/arm_ffa/driver.c:237:12: warning: unused variable 'ret' [-Wunused-variable]
     237 |  ffa_res_t ret;
         |            ^~~
   drivers/firmware/arm_ffa/driver.c: In function 'ffa_partition_info_get':
>> drivers/firmware/arm_ffa/driver.c:251:12: error: storage size of 'partition_info' isn't known
     251 |  ffa_res_t partition_info;
         |            ^~~~~~~~~~~~~~
   drivers/firmware/arm_ffa/driver.c:254:19: error: invalid use of incomplete typedef 'ffa_res_t' {aka 'struct arm_smccc_v1_2_res'}
     254 |  partition_info = invoke_ffa_fn(FFA_PARTITION_INFO_GET, uuid0, uuid1,
         |                   ^~~~~~~~~~~~~
   drivers/firmware/arm_ffa/driver.c:251:12: warning: unused variable 'partition_info' [-Wunused-variable]
     251 |  ffa_res_t partition_info;
         |            ^~~~~~~~~~~~~~
   drivers/firmware/arm_ffa/driver.c: In function 'ffa_id_get':
>> drivers/firmware/arm_ffa/driver.c:294:12: error: storage size of 'id' isn't known
     294 |  ffa_res_t id;
         |            ^~
   drivers/firmware/arm_ffa/driver.c:296:7: error: invalid use of incomplete typedef 'ffa_res_t' {aka 'struct arm_smccc_v1_2_res'}
     296 |  id = invoke_ffa_fn(FFA_ID_GET, 0, 0, 0, 0, 0, 0, 0);
         |       ^~~~~~~~~~~~~
   drivers/firmware/arm_ffa/driver.c:294:12: warning: unused variable 'id' [-Wunused-variable]
     294 |  ffa_res_t id;
         |            ^~
   drivers/firmware/arm_ffa/driver.c: In function 'ffa_msg_send':
   drivers/firmware/arm_ffa/driver.c:308:12: error: storage size of 'ret' isn't known
     308 |  ffa_res_t ret;
         |            ^~~
   drivers/firmware/arm_ffa/driver.c:315:8: error: invalid use of incomplete typedef 'ffa_res_t' {aka 'struct arm_smccc_v1_2_res'}
     315 |  ret = invoke_ffa_fn(FFA_MSG_SEND, src_dst_ids, 0, len, 0, 0, 0, 0);
         |        ^~~~~~~~~~~~~
   drivers/firmware/arm_ffa/driver.c:308:12: warning: unused variable 'ret' [-Wunused-variable]
     308 |  ffa_res_t ret;
         |            ^~~
   drivers/firmware/arm_ffa/driver.c: In function 'ffa_msg_send_direct_req':
   drivers/firmware/arm_ffa/driver.c:329:12: error: storage size of 'ret' isn't known
     329 |  ffa_res_t ret;
         |            ^~~
   drivers/firmware/arm_ffa/driver.c:331:8: error: invalid use of incomplete typedef 'ffa_res_t' {aka 'struct arm_smccc_v1_2_res'}
     331 |  ret = invoke_ffa_fn(FFA_FN_NATIVE(MSG_SEND_DIRECT_REQ), src_dst_ids, 0,
         |        ^~~~~~~~~~~~~
   drivers/firmware/arm_ffa/driver.c:329:12: warning: unused variable 'ret' [-Wunused-variable]
     329 |  ffa_res_t ret;
         |            ^~~
   drivers/firmware/arm_ffa/driver.c: In function 'ffa_mem_first_frag':
   drivers/firmware/arm_ffa/driver.c:491:12: error: storage size of 'ret' isn't known
     491 |  ffa_res_t ret;
         |            ^~~
   drivers/firmware/arm_ffa/driver.c:493:8: error: invalid use of incomplete typedef 'ffa_res_t' {aka 'struct arm_smccc_v1_2_res'}
     493 |  ret = invoke_ffa_fn(func_id, len, frag_len, buf, buf_sz, 0, 0, 0);
         |        ^~~~~~~~~~~~~
   drivers/firmware/arm_ffa/driver.c:491:12: warning: unused variable 'ret' [-Wunused-variable]
     491 |  ffa_res_t ret;
         |            ^~~
   drivers/firmware/arm_ffa/driver.c: In function 'ffa_mem_next_frag':
   drivers/firmware/arm_ffa/driver.c:512:12: error: storage size of 'ret' isn't known
     512 |  ffa_res_t ret;
         |            ^~~
   drivers/firmware/arm_ffa/driver.c:514:8: error: invalid use of incomplete typedef 'ffa_res_t' {aka 'struct arm_smccc_v1_2_res'}
     514 |  ret = invoke_ffa_fn(FFA_MEM_FRAG_TX, HANDLE_LOW(handle),
         |        ^~~~~~~~~~~~~
   drivers/firmware/arm_ffa/driver.c:512:12: warning: unused variable 'ret' [-Wunused-variable]
     512 |  ffa_res_t ret;
         |            ^~~
   drivers/firmware/arm_ffa/driver.c: In function 'ffa_memory_reclaim':
   drivers/firmware/arm_ffa/driver.c:654:12: error: storage size of 'ret' isn't known
     654 |  ffa_res_t ret;
         |            ^~~
   drivers/firmware/arm_ffa/driver.c:656:8: error: invalid use of incomplete typedef 'ffa_res_t' {aka 'struct arm_smccc_v1_2_res'}
     656 |  ret = invoke_ffa_fn(FFA_MEM_RECLAIM, HANDLE_LOW(g_handle),
         |        ^~~~~~~~~~~~~
   drivers/firmware/arm_ffa/driver.c:654:12: warning: unused variable 'ret' [-Wunused-variable]
     654 |  ffa_res_t ret;
         |            ^~~
   At top level:
   drivers/firmware/arm_ffa/driver.c:918:34: warning: 'ffa_part_of_match' defined but not used [-Wunused-const-variable=]
     918 | static const struct of_device_id ffa_part_of_match[] = {
         |                                  ^~~~~~~~~~~~~~~~~
   drivers/firmware/arm_ffa/driver.c:652:12: warning: 'ffa_memory_reclaim' defined but not used [-Wunused-function]
     652 | static int ffa_memory_reclaim(u64 g_handle, u32 flags)
         |            ^~~~~~~~~~~~~~~~~~
   drivers/firmware/arm_ffa/driver.c:624:12: warning: 'ffa_memory_ops' defined but not used [-Wunused-function]
     624 | static int ffa_memory_ops(u32 func_id, bool use_txbuf, u64 tag, u32 flags,
         |            ^~~~~~~~~~~~~~
   drivers/firmware/arm_ffa/driver.c:235:12: warning: 'ffa_rxtx_unmap' defined but not used [-Wunused-function]
     235 | static int ffa_rxtx_unmap(u16 vm_id)
         |            ^~~~~~~~~~~~~~
   drivers/firmware/arm_ffa/driver.c:197:12: warning: 'ffa_features' defined but not used [-Wunused-function]
     197 | static int ffa_features(u32 func_id)
         |            ^~~~~~~~~~~~

# https://git.kernel.org/pub/scm/linux/kernel/git/sudeep.holla/linux.git/commit/?id=de254ee743800be7154e0b19239f97fa748d1e6d
git remote add skn https://git.kernel.org/pub/scm/linux/kernel/git/sudeep.holla/linux.git
git fetch --no-tags skn v5.9/ffa
git checkout de254ee743800be7154e0b19239f97fa748d1e6d
vim +176 drivers/firmware/arm_ffa/driver.c

   173	
   174	static int ffa_version_check(u32 *version)
   175	{
 > 176		ffa_res_t ver;
   177	
 > 178		ver = invoke_ffa_fn(FFA_VERSION, FFA_DRIVER_VERSION, 0, 0, 0, 0, 0, 0);
   179	
   180		if (ver.a0 == FFA_RET_NOT_SUPPORTED) {
   181			pr_info("FFA_VERSION returned not supported\n");
   182			return -EOPNOTSUPP;
   183		}
   184	
   185		if (ver.a0 < FFA_MIN_VERSION || ver.a0 > FFA_DRIVER_VERSION) {
   186			pr_err("Incompatible version %d.%d found\n",
   187			       MAJOR_VERSION(ver.a0), MINOR_VERSION(ver.a0));
   188			return -EINVAL;
   189		}
   190	
   191		*version = ver.a0;
   192		pr_info("Version %d.%d found\n", MAJOR_VERSION(ver.a0),
   193			MINOR_VERSION(ver.a0));
   194		return 0;
   195	}
   196	
   197	static int ffa_features(u32 func_id)
   198	{
 > 199		ffa_res_t ret;
   200	
   201		ret = invoke_ffa_fn(FFA_FEATURES, func_id, 0, 0, 0, 0, 0, 0);
   202	
   203		if (ret.a0 == FFA_ERROR)
   204			return ffa_to_linux_errno((int)ret.a2);
   205	
   206		return ret.a2;
   207	}
   208	
   209	static int ffa_rx_release(void)
   210	{
   211		ffa_res_t ret;
   212	
   213		ret = invoke_ffa_fn(FFA_RX_RELEASE, 0, 0, 0, 0, 0, 0, 0);
   214	
   215		if (ret.a0 == FFA_ERROR)
   216			return ffa_to_linux_errno((int)ret.a2);
   217	
   218		/* check for ret.a0 == FFA_RX_RELEASE ? */
   219	
   220		return 0;
   221	}
   222	
   223	static int ffa_rxtx_map(phys_addr_t tx_buf, phys_addr_t rx_buf, u32 pg_cnt)
   224	{
   225		ffa_res_t ret;
   226	
   227		ret = invoke_ffa_fn(FFA_RXTX_MAP, tx_buf, rx_buf, pg_cnt, 0, 0, 0, 0);
   228	
   229		if (ret.a0 == FFA_ERROR)
   230			return ffa_to_linux_errno((int)ret.a2);
   231	
   232		return 0;
   233	}
   234	
   235	static int ffa_rxtx_unmap(u16 vm_id)
   236	{
   237		ffa_res_t ret;
   238	
   239		ret = invoke_ffa_fn(FFA_RXTX_UNMAP, vm_id, 0, 0, 0, 0, 0, 0);
   240	
   241		if (ret.a0 == FFA_ERROR)
   242			return ffa_to_linux_errno((int)ret.a2);
   243	
   244		return 0;
   245	}
   246	
   247	static int ffa_partition_info_get(u32 uuid0, u32 uuid1, u32 uuid2, u32 uuid3,
   248					  struct ffa_partition_info **buffer)
   249	{
   250		int count;
 > 251		ffa_res_t partition_info;
   252	
   253		mutex_lock(&drv_info->rx_lock);
   254		partition_info = invoke_ffa_fn(FFA_PARTITION_INFO_GET, uuid0, uuid1,
   255					       uuid2, uuid3, 0, 0, 0);
   256	
   257		if (partition_info.a0 == FFA_ERROR)
   258			return ffa_to_linux_errno((int)partition_info.a2);
   259	
   260		count = partition_info.a2;
   261	
   262		if (buffer)
   263			memcpy(*buffer, drv_info->rx_buffer, sizeof(*buffer) * count);
   264	
   265		ffa_rx_release();
   266	
   267		mutex_unlock(&drv_info->rx_lock);
   268	
   269		return count;
   270	}
   271	
   272	static int ffa_partition_probe(const char *uuid_str,
   273				       struct ffa_partition_info *buffer)
   274	{
   275		int count;
   276		uuid_t uuid;
   277		u32 uuid0_4[4] = { 0 };
   278	
   279		if (uuid_parse(uuid_str, &uuid)) {
   280			pr_err("invalid uuid (%s)\n", uuid_str);
   281			return -ENODEV;
   282		}
   283	
   284		export_uuid((u8 *)uuid0_4, &uuid);
   285		count = ffa_partition_info_get(uuid0_4[0], uuid0_4[1], uuid0_4[2],
   286					       uuid0_4[3], &buffer);
   287	
   288		return count;
   289	}
   290	
   291	#define VM_ID_MASK	GENMASK(15, 0)
   292	static int ffa_id_get(u16 *vm_id)
   293	{
 > 294		ffa_res_t id;
   295	
   296		id = invoke_ffa_fn(FFA_ID_GET, 0, 0, 0, 0, 0, 0, 0);
   297	
   298		if (id.a0 == FFA_ERROR)
   299			return ffa_to_linux_errno((int)id.a2);
   300	
   301		*vm_id = FIELD_GET(VM_ID_MASK, (id.a2));
   302	
   303		return 0;
   304	}
   305	

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org

[-- Attachment #2: config.gz --]
[-- Type: application/gzip, Size: 76238 bytes --]

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2020-08-26  3:33 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-08-26  3:33 [skn:v5.9/ffa 7/8] drivers/firmware/arm_ffa/driver.c:176:12: error: storage size of 'ver' isn't known kernel test robot

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.