Hi Liming,

Thank you for the patch! Yet something to improve:

[auto build test ERROR on linus/master]
[also build test ERROR on v5.0-rc4 next-20190131]
[if your patch is applied to the wrong git tree, please drop us a note to help 
improve the system]

url:    
https://github.com/0day-ci/linux/commits/Liming-Sun/platform-mellanox-Add-bootctl-driver-for-Mellanox-BlueField-Soc/20190201-104657
config: arm64-allmodconfig (attached as .config)
compiler: aarch64-linux-gnu-gcc (Debian 8.2.0-11) 8.2.0
reproduce:
        wget 
https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O 
~/bin/make.cross
        chmod +x ~/bin/make.cross
        # save the attached .config to linux build tree
        GCC_VERSION=8.2.0 make.cross ARCH=arm64 

All errors (new ones prefixed by >>):

   drivers/platform/mellanox/mlxbf-bootctl.c:260:36: error: array type has 
incomplete element type 'struct acpi_device_id'
    static const struct acpi_device_id mlxbf_bootctl_acpi_ids[] = {
                                       ^~~~~~~~~~~~~~~~~~~~~~
   In file included from include/linux/module.h:18,
                    from drivers/platform/mellanox/mlxbf-bootctl.c:12:
>> drivers/platform/mellanox/mlxbf-bootctl.c:314:20: error: expected ',' or ';' 
>> before 'DRIVER_DESCRIPTION'
    MODULE_DESCRIPTION(DRIVER_DESCRIPTION);
                       ^~~~~~~~~~~~~~~~~~
   include/linux/moduleparam.h:24:26: note: in definition of macro 
'__MODULE_INFO'
      = __stringify(tag) "=" info
                             ^~~~
   include/linux/module.h:208:42: note: in expansion of macro 'MODULE_INFO'
    #define MODULE_DESCRIPTION(_description) MODULE_INFO(description, 
_description)
                                             ^~~~~~~~~~~
   drivers/platform/mellanox/mlxbf-bootctl.c:314:1: note: in expansion of macro 
'MODULE_DESCRIPTION'
    MODULE_DESCRIPTION(DRIVER_DESCRIPTION);
    ^~~~~~~~~~~~~~~~~~

vim +314 drivers/platform/mellanox/mlxbf-bootctl.c

   259  
 > 260  static const struct acpi_device_id mlxbf_bootctl_acpi_ids[] = {
   261          {"MLNXBF04", 0},
   262          {},
   263  };
   264  
   265  MODULE_DEVICE_TABLE(acpi, mlxbf_bootctl_acpi_ids);
   266  
   267  static int mlxbf_bootctl_probe(struct platform_device *pdev)
   268  {
   269          struct arm_smccc_res res;
   270  
   271          /*
   272           * Ensure we have the UUID we expect for this service.
   273           * Note that the functionality we want is present in the first
   274           * released version of this service, so we don't check the 
version.
   275           */
   276          arm_smccc_smc(MLXBF_BOOTCTL_SIP_SVC_UID, 0, 0, 0, 0, 0, 0, 0, 
&res);
   277          if (res.a0 != 0x89c036b4 || res.a1 != 0x11e6e7d7 ||
   278              res.a2 != 0x1a009787 || res.a3 != 0xc4bf00ca)
   279                  return -ENODEV;
   280  
   281          /*
   282           * When watchdog is used, it sets boot mode to 
MLXBF_BOOTCTL_SWAP_EMMC
   283           * in case of boot failures. However it doesn't clear the state 
if there
   284           * is no failure. Restore the default boot mode here to avoid 
any
   285           * unnecessary boot partition swapping.
   286           */
   287          if (mlxbf_bootctl_smc_call1(MLXBF_BOOTCTL_SET_RESET_ACTION,
   288                                      MLXBF_BOOTCTL_EMMC) < 0)
   289                  pr_err("Unable to reset the EMMC boot mode\n");
   290  
   291          pr_info("%s (version %s)\n", MLXBF_BOOTCTL_DRIVER_DESCRIPTION,
   292                  MLXBF_BOOTCTL_DRIVER_VERSION);
   293  
   294          return 0;
   295  }
   296  
   297  static int mlxbf_bootctl_remove(struct platform_device *pdev)
   298  {
   299          return 0;
   300  }
   301  
   302  static struct platform_driver mlxbf_bootctl_driver = {
   303          .probe = mlxbf_bootctl_probe,
   304          .remove = mlxbf_bootctl_remove,
   305          .driver = {
   306                  .name = MLXBF_BOOTCTL_DRIVER_NAME,
   307                  .groups = mlxbf_bootctl_attr_groups,
   308                  .acpi_match_table = ACPI_PTR(mlxbf_bootctl_acpi_ids),
   309          }
   310  };
   311  
   312  module_platform_driver(mlxbf_bootctl_driver);
   313  
 > 314  MODULE_DESCRIPTION(DRIVER_DESCRIPTION);

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation

Attachment: .config.gz
Description: application/gzip

Reply via email to