Hi Ramalingam,

Thank you for the patch! Yet something to improve:

[auto build test ERROR on drm-intel/for-linux-next]
[also build test ERROR on next-20180403]
[cannot apply to v4.16]
[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/Ramalingam-C/drm-i915-Implement-HDCP2-2/20180404-031743
base:   git://anongit.freedesktop.org/drm-intel for-linux-next
config: i386-allmodconfig (attached as .config)
compiler: gcc-7 (Debian 7.3.0-1) 7.3.0
reproduce:
        # save the attached .config to linux build tree
        make ARCH=i386 

All errors (new ones prefixed by >>):

   drivers/misc/mei/hdcp/mei_hdcp.c:52:5: error: redefinition of 
'mei_initiate_hdcp2_session'
    int mei_initiate_hdcp2_session(struct mei_cl_device *cldev,
        ^~~~~~~~~~~~~~~~~~~~~~~~~~
   In file included from drivers/misc/mei/hdcp/mei_hdcp.c:35:0:
   include/linux/mei_hdcp.h:134:5: note: previous definition of 
'mei_initiate_hdcp2_session' was here
    int mei_initiate_hdcp2_session(struct mei_cl_device *cldev,
        ^~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/misc/mei/hdcp/mei_hdcp.c:122:1: error: redefinition of 
'mei_verify_receiver_cert_prepare_km'
    mei_verify_receiver_cert_prepare_km(struct mei_cl_device *cldev,
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   In file included from drivers/misc/mei/hdcp/mei_hdcp.c:35:0:
   include/linux/mei_hdcp.h:141:1: note: previous definition of 
'mei_verify_receiver_cert_prepare_km' was here
    mei_verify_receiver_cert_prepare_km(struct mei_cl_device *cldev,
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/misc/mei/hdcp/mei_hdcp.c:200:5: error: redefinition of 
'mei_verify_hprime'
    int mei_verify_hprime(struct mei_cl_device *cldev, struct mei_hdcp_data 
*data,
        ^~~~~~~~~~~~~~~~~
   In file included from drivers/misc/mei/hdcp/mei_hdcp.c:35:0:
   include/linux/mei_hdcp.h:151:5: note: previous definition of 
'mei_verify_hprime' was here
    int mei_verify_hprime(struct mei_cl_device *cldev, struct mei_hdcp_data 
*data,
        ^~~~~~~~~~~~~~~~~
>> drivers/misc/mei/hdcp/mei_hdcp.c:258:5: error: redefinition of 
>> 'mei_store_pairing_info'
    int mei_store_pairing_info(struct mei_cl_device *cldev,
        ^~~~~~~~~~~~~~~~~~~~~~
   In file included from drivers/misc/mei/hdcp/mei_hdcp.c:35:0:
   include/linux/mei_hdcp.h:157:5: note: previous definition of 
'mei_store_pairing_info' was here
    int mei_store_pairing_info(struct mei_cl_device *cldev,
        ^~~~~~~~~~~~~~~~~~~~~~
   drivers/misc/mei/hdcp/mei_hdcp.c:318:5: error: redefinition of 
'mei_cldev_register_notify'
    int mei_cldev_register_notify(struct notifier_block *nb)
        ^~~~~~~~~~~~~~~~~~~~~~~~~
   In file included from drivers/misc/mei/hdcp/mei_hdcp.c:35:0:
   include/linux/mei_hdcp.h:125:12: note: previous definition of 
'mei_cldev_register_notify' was here
    static int mei_cldev_register_notify(struct notifier_block *nb)
               ^~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/misc/mei/hdcp/mei_hdcp.c:324:5: error: redefinition of 
'mei_cldev_unregister_notify'
    int mei_cldev_unregister_notify(struct notifier_block *nb)
        ^~~~~~~~~~~~~~~~~~~~~~~~~~~
   In file included from drivers/misc/mei/hdcp/mei_hdcp.c:35:0:
   include/linux/mei_hdcp.h:129:12: note: previous definition of 
'mei_cldev_unregister_notify' was here
    static int mei_cldev_unregister_notify(struct notifier_block *nb)
               ^~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/mei_hdcp.h:129:12: warning: 'mei_cldev_unregister_notify' 
defined but not used [-Wunused-function]
   include/linux/mei_hdcp.h:125:12: warning: 'mei_cldev_register_notify' 
defined but not used [-Wunused-function]
    static int mei_cldev_register_notify(struct notifier_block *nb)
               ^~~~~~~~~~~~~~~~~~~~~~~~~

vim +/mei_store_pairing_info +258 drivers/misc/mei/hdcp/mei_hdcp.c

   188  
   189  /**
   190   * mei_verify_hprime:
   191   *      Function to verify AKE_Send_H_prime received
   192   *
   193   * @cldev               : Pointer for mei client device
   194   * @data                : Intel HW specific Data
   195   * @rx_hprime           : Pointer for AKE_Send_H_prime
   196   * @hprime_sz           : Input buffer size
   197   *
   198   * Returns 0 on Success, <0 on Failure
   199   */
 > 200  int mei_verify_hprime(struct mei_cl_device *cldev, struct mei_hdcp_data 
 > *data,
   201                        struct hdcp2_ake_send_hprime *rx_hprime)
   202  {
   203          struct wired_cmd_ake_send_hprime_in send_hprime_in = { { 0 } };
   204          struct wired_cmd_ake_send_hprime_out send_hprime_out = { { 0 } 
};
   205          struct device *dev;
   206          ssize_t byte;
   207  
   208          if (!data || !rx_hprime)
   209                  return -EINVAL;
   210  
   211          dev = &cldev->dev;
   212  
   213          send_hprime_in.header.api_version = HDCP_API_VERSION;
   214          send_hprime_in.header.command_id = WIRED_AKE_SEND_HPRIME;
   215          send_hprime_in.header.status = ME_HDCP_STATUS_SUCCESS;
   216          send_hprime_in.header.buffer_len = 
WIRED_CMD_BUF_LEN_AKE_SEND_HPRIME_IN;
   217  
   218          send_hprime_in.port.integrated_port_type = data->port_type;
   219          send_hprime_in.port.physical_port = data->port;
   220  
   221          memcpy(send_hprime_in.h_prime, rx_hprime->h_prime,
   222                 sizeof(rx_hprime->h_prime));
   223  
   224          byte = mei_cldev_send(cldev, (u8 *)&send_hprime_in,
   225                                sizeof(send_hprime_in));
   226          if (byte < 0) {
   227                  dev_dbg(dev, "mei_cldev_send failed. %d\n", (int)byte);
   228                  return byte;
   229          }
   230  
   231          byte = mei_cldev_recv(cldev, (u8 *)&send_hprime_out,
   232                                sizeof(send_hprime_out));
   233          if (byte < 0) {
   234                  dev_dbg(dev, "mei_cldev_recv failed. %d\n", (int)byte);
   235                  return byte;
   236          }
   237  
   238          if (send_hprime_out.header.status != ME_HDCP_STATUS_SUCCESS) {
   239                  dev_dbg(dev, "ME cmd 0x%08X Failed. Status: 0x%X\n",
   240                          WIRED_AKE_SEND_HPRIME, 
send_hprime_out.header.status);
   241                  return -1;
   242          }
   243          return 0;
   244  }
   245  EXPORT_SYMBOL(mei_verify_hprime);
   246  
   247  /**
   248   * mei_store_pairing_info:
   249   *      Function to store pairing info received from panel
   250   *
   251   * @cldev               : Pointer for mei client device
   252   * @data                : Intel HW specific Data
   253   * @pairing_info        : Pointer for AKE_Send_Pairing_Info
   254   *
   255   * Returns 0 on Success, <0 on Failure
   256   */
   257  
 > 258  int mei_store_pairing_info(struct mei_cl_device *cldev,
   259                             struct mei_hdcp_data *data,
   260                             struct hdcp2_ake_send_pairing_info 
*pairing_info)
   261  {
   262          struct wired_cmd_ake_send_pairing_info_in pairing_info_in = { { 
0 } };
   263          struct wired_cmd_ake_send_pairing_info_out pairing_info_out = { 
{ 0 } };
   264          struct device *dev;
   265          ssize_t byte;
   266  
   267          if (!data || !pairing_info)
   268                  return -EINVAL;
   269  
   270          dev = &cldev->dev;
   271  
   272          pairing_info_in.header.api_version = HDCP_API_VERSION;
   273          pairing_info_in.header.command_id = WIRED_AKE_SEND_PAIRING_INFO;
   274          pairing_info_in.header.status = ME_HDCP_STATUS_SUCCESS;
   275          pairing_info_in.header.buffer_len =
   276                                          
WIRED_CMD_BUF_LEN_SEND_PAIRING_INFO_IN;
   277  
   278          pairing_info_in.port.integrated_port_type = data->port_type;
   279          pairing_info_in.port.physical_port = data->port;
   280  
   281          memcpy(pairing_info_in.e_kh_km, pairing_info->e_kh_km,
   282                 sizeof(pairing_info_in.e_kh_km));
   283  
   284          byte = mei_cldev_send(cldev, (u8 *)&pairing_info_in,
   285                                sizeof(pairing_info_in));
   286          if (byte < 0) {
   287                  dev_dbg(dev, "mei_cldev_send failed. %d\n", (int)byte);
   288                  return byte;
   289          }
   290  
   291          byte = mei_cldev_recv(cldev, (u8 *)&pairing_info_out,
   292                                sizeof(pairing_info_out));
   293          if (byte < 0) {
   294                  dev_dbg(dev, "mei_cldev_recv failed. %d\n", (int)byte);
   295                  return byte;
   296          }
   297  
   298          if (pairing_info_out.header.status != ME_HDCP_STATUS_SUCCESS) {
   299                  dev_dbg(dev, "ME cmd 0x%08X failed. Status: 0x%X\n",
   300                          WIRED_AKE_SEND_PAIRING_INFO,
   301                          pairing_info_out.header.status);
   302                  return -1;
   303          }
   304          return 0;
   305  }
   306  EXPORT_SYMBOL(mei_store_pairing_info);
   307  

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

Attachment: .config.gz
Description: application/gzip

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

Reply via email to