* [openeuler:OLK-5.10 25415/30000] drivers/net/ethernet/3snic/sssnic/hw/sss_hwif_adm.c:545:5: warning: no previous prototype for 'sss_adm_msg_write'
@ 2024-01-16 9:06 kernel test robot
0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2024-01-16 9:06 UTC (permalink / raw)
To: kernel; +Cc: oe-kbuild-all
tree: https://gitee.com/openeuler/kernel.git OLK-5.10
head: 4ab210f9ccc9d3718760515636ed70d628bcb49d
commit: 0c4c3ee2e4947ad6ec346dc37fa133f4fecafd76 [25415/30000] Net: ethernet: Support management channel of the host tool in 3snic 3s9xx network driver
config: x86_64-openeuler_defconfig-OLK-5.10-func (https://download.01.org/0day-ci/archive/20240116/202401161708.3pcuvTDo-lkp@intel.com/config)
compiler: gcc-12 (Debian 12.2.0-14) 12.2.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240116/202401161708.3pcuvTDo-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/202401161708.3pcuvTDo-lkp@intel.com/
All warnings (new ones prefixed by >>):
>> drivers/net/ethernet/3snic/sssnic/hw/sss_hwif_adm.c:545:5: warning: no previous prototype for 'sss_adm_msg_write' [-Wmissing-prototypes]
545 | int sss_adm_msg_write(struct sss_adm_msg *adm_msg, u8 node_id,
| ^~~~~~~~~~~~~~~~~
>> drivers/net/ethernet/3snic/sssnic/hw/sss_hwif_adm.c:551:5: warning: no previous prototype for 'sss_adm_msg_read' [-Wmissing-prototypes]
551 | int sss_adm_msg_read(struct sss_adm_msg *adm_msg, u8 node_id,
| ^~~~~~~~~~~~~~~~
>> drivers/net/ethernet/3snic/sssnic/hw/sss_hwif_adm.c:597:5: warning: no previous prototype for 'sss_adm_msg_read_ack' [-Wmissing-prototypes]
597 | int sss_adm_msg_read_ack(void *hwdev, u8 dest, const void *cmd,
| ^~~~~~~~~~~~~~~~~~~~
>> drivers/net/ethernet/3snic/sssnic/hw/sss_hwif_adm.c:618:5: warning: no previous prototype for 'sss_adm_msg_write_nack' [-Wmissing-prototypes]
618 | int sss_adm_msg_write_nack(void *hwdev, u8 dest, const void *cmd, u16 size)
| ^~~~~~~~~~~~~~~~~~~~~~
drivers/net/ethernet/3snic/sssnic/hw/sss_hwif_adm.c:682:5: warning: no previous prototype for 'sss_sync_send_adm_msg' [-Wmissing-prototypes]
682 | int sss_sync_send_adm_msg(void *hwdev, u8 mod, u16 cmd, void *buf_in,
| ^~~~~~~~~~~~~~~~~~~~~
--
>> drivers/net/ethernet/3snic/sssnic/hw/sss_hwif_adm_init.c:580:6: warning: no previous prototype for 'sss_destroy_adm_msg' [-Wmissing-prototypes]
580 | void sss_destroy_adm_msg(struct sss_adm_msg *adm_msg)
| ^~~~~~~~~~~~~~~~~~~
drivers/net/ethernet/3snic/sssnic/hw/sss_hwif_adm_init.c:689:5: warning: no previous prototype for 'sss_hwif_init_adm' [-Wmissing-prototypes]
689 | int sss_hwif_init_adm(struct sss_hwdev *hwdev)
| ^~~~~~~~~~~~~~~~~
drivers/net/ethernet/3snic/sssnic/hw/sss_hwif_adm_init.c:738:6: warning: no previous prototype for 'sss_hwif_deinit_adm' [-Wmissing-prototypes]
738 | void sss_hwif_deinit_adm(struct sss_hwdev *hwdev)
| ^~~~~~~~~~~~~~~~~~~
drivers/net/ethernet/3snic/sssnic/hw/sss_hwif_adm_init.c:752:6: warning: no previous prototype for 'sss_complete_adm_event' [-Wmissing-prototypes]
752 | void sss_complete_adm_event(struct sss_hwdev *hwdev)
| ^~~~~~~~~~~~~~~~~~~~~~
--
drivers/net/ethernet/3snic/sssnic/hw/sss_hwif_export.c:15:5: warning: no previous prototype for 'sss_alloc_db_addr' [-Wmissing-prototypes]
15 | int sss_alloc_db_addr(void *hwdev, void __iomem **db_base)
| ^~~~~~~~~~~~~~~~~
drivers/net/ethernet/3snic/sssnic/hw/sss_hwif_export.c:37:6: warning: no previous prototype for 'sss_free_db_addr' [-Wmissing-prototypes]
37 | void sss_free_db_addr(void *hwdev, const void __iomem *db_base)
| ^~~~~~~~~~~~~~~~
drivers/net/ethernet/3snic/sssnic/hw/sss_hwif_export.c:52:6: warning: no previous prototype for 'sss_chip_set_msix_auto_mask' [-Wmissing-prototypes]
52 | void sss_chip_set_msix_auto_mask(void *hwdev, u16 msix_id,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/net/ethernet/3snic/sssnic/hw/sss_hwif_export.c:70:6: warning: no previous prototype for 'sss_chip_set_msix_state' [-Wmissing-prototypes]
70 | void sss_chip_set_msix_state(void *hwdev, u16 msix_id,
| ^~~~~~~~~~~~~~~~~~~~~~~
drivers/net/ethernet/3snic/sssnic/hw/sss_hwif_export.c:86:5: warning: no previous prototype for 'sss_get_global_func_id' [-Wmissing-prototypes]
86 | u16 sss_get_global_func_id(void *hwdev)
| ^~~~~~~~~~~~~~~~~~~~~~
drivers/net/ethernet/3snic/sssnic/hw/sss_hwif_export.c:95:4: warning: no previous prototype for 'sss_get_pf_id_of_vf' [-Wmissing-prototypes]
95 | u8 sss_get_pf_id_of_vf(void *hwdev)
| ^~~~~~~~~~~~~~~~~~~
drivers/net/ethernet/3snic/sssnic/hw/sss_hwif_export.c:104:4: warning: no previous prototype for 'sss_get_pcie_itf_id' [-Wmissing-prototypes]
104 | u8 sss_get_pcie_itf_id(void *hwdev)
| ^~~~~~~~~~~~~~~~~~~
drivers/net/ethernet/3snic/sssnic/hw/sss_hwif_export.c:113:20: warning: no previous prototype for 'sss_get_func_type' [-Wmissing-prototypes]
113 | enum sss_func_type sss_get_func_type(void *hwdev)
| ^~~~~~~~~~~~~~~~~
>> drivers/net/ethernet/3snic/sssnic/hw/sss_hwif_export.c:122:20: warning: no previous prototype for 'sss_get_func_id' [-Wmissing-prototypes]
122 | enum sss_func_type sss_get_func_id(void *hwdev)
| ^~~~~~~~~~~~~~~
drivers/net/ethernet/3snic/sssnic/hw/sss_hwif_export.c:131:5: warning: no previous prototype for 'sss_get_glb_pf_vf_offset' [-Wmissing-prototypes]
131 | u16 sss_get_glb_pf_vf_offset(void *hwdev)
| ^~~~~~~~~~~~~~~~~~~~~~~~
drivers/net/ethernet/3snic/sssnic/hw/sss_hwif_export.c:140:4: warning: no previous prototype for 'sss_get_ppf_id' [-Wmissing-prototypes]
140 | u8 sss_get_ppf_id(void *hwdev)
| ^~~~~~~~~~~~~~
--
>> drivers/net/ethernet/3snic/sssnic/hw/./tool/sss_tool_main.c:80:6: warning: no previous prototype for 'sss_tool_free_in_buf' [-Wmissing-prototypes]
80 | void sss_tool_free_in_buf(void *hwdev, const struct sss_tool_msg *tool_msg, void *in_buf)
| ^~~~~~~~~~~~~~~~~~~~
>> drivers/net/ethernet/3snic/sssnic/hw/./tool/sss_tool_main.c:91:6: warning: no previous prototype for 'sss_tool_free_out_buf' [-Wmissing-prototypes]
91 | void sss_tool_free_out_buf(void *hwdev, struct sss_tool_msg *tool_msg,
| ^~~~~~~~~~~~~~~~~~~~~
>> drivers/net/ethernet/3snic/sssnic/hw/./tool/sss_tool_main.c:104:5: warning: no previous prototype for 'sss_tool_alloc_in_buf' [-Wmissing-prototypes]
104 | int sss_tool_alloc_in_buf(void *hwdev, struct sss_tool_msg *tool_msg,
| ^~~~~~~~~~~~~~~~~~~~~
>> drivers/net/ethernet/3snic/sssnic/hw/./tool/sss_tool_main.c:146:5: warning: no previous prototype for 'sss_tool_alloc_out_buf' [-Wmissing-prototypes]
146 | int sss_tool_alloc_out_buf(void *hwdev, struct sss_tool_msg *tool_msg,
| ^~~~~~~~~~~~~~~~~~~~~~
>> drivers/net/ethernet/3snic/sssnic/hw/./tool/sss_tool_main.c:182:5: warning: no previous prototype for 'sss_tool_copy_to_user' [-Wmissing-prototypes]
182 | int sss_tool_copy_to_user(struct sss_tool_msg *tool_msg,
| ^~~~~~~~~~~~~~~~~~~~~
--
>> drivers/net/ethernet/3snic/sssnic/hw/./tool/sss_tool_chip.c:498:5: warning: no previous prototype for 'sss_tool_send_clp_msg' [-Wmissing-prototypes]
498 | int sss_tool_send_clp_msg(struct sss_hwdev *hwdev, u8 mod, u16 cmd, const void *buf_in,
| ^~~~~~~~~~~~~~~~~~~~~
>> drivers/net/ethernet/3snic/sssnic/hw/./tool/sss_tool_chip.c:588:5: warning: no previous prototype for 'sss_tool_adm_csr_rd32' [-Wmissing-prototypes]
588 | int sss_tool_adm_csr_rd32(struct sss_hwdev *hwdev, u8 dest, u32 addr, u32 *val)
| ^~~~~~~~~~~~~~~~~~~~~
>> drivers/net/ethernet/3snic/sssnic/hw/./tool/sss_tool_chip.c:621:5: warning: no previous prototype for 'sss_tool_adm_csr_wr32' [-Wmissing-prototypes]
621 | int sss_tool_adm_csr_wr32(struct sss_hwdev *hwdev, u8 dest, u32 addr, u32 val)
| ^~~~~~~~~~~~~~~~~~~~~
--
>> drivers/net/ethernet/3snic/sssnic/hw/./tool/sss_tool_sdk.c:29:5: warning: no previous prototype for 'sss_tool_get_func_type' [-Wmissing-prototypes]
29 | int sss_tool_get_func_type(struct sss_hal_dev *hal_dev, const void *buf_in, u32 in_size,
| ^~~~~~~~~~~~~~~~~~~~~~
>> drivers/net/ethernet/3snic/sssnic/hw/./tool/sss_tool_sdk.c:42:5: warning: no previous prototype for 'sss_tool_get_func_id' [-Wmissing-prototypes]
42 | int sss_tool_get_func_id(struct sss_hal_dev *hal_dev, const void *buf_in, u32 in_size,
| ^~~~~~~~~~~~~~~~~~~~
>> drivers/net/ethernet/3snic/sssnic/hw/./tool/sss_tool_sdk.c:55:5: warning: no previous prototype for 'sss_tool_get_hw_driver_stats' [-Wmissing-prototypes]
55 | int sss_tool_get_hw_driver_stats(struct sss_hal_dev *hal_dev, const void *buf_in, u32 in_size,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
--
>> drivers/net/ethernet/3snic/sssnic/nic/sss_nic_ethtool_stats_api.c:492:5: warning: no previous prototype for 'sss_nic_get_io_stats_size' [-Wmissing-prototypes]
492 | u32 sss_nic_get_io_stats_size(const struct sss_nic_dev *nic_dev)
| ^~~~~~~~~~~~~~~~~~~~~~~~~
--
>> drivers/net/ethernet/3snic/sssnic/nic/./tool/sss_tool_nic_func.c:98:5: warning: no previous prototype for 'sss_tool_ioctl' [-Wmissing-prototypes]
98 | int sss_tool_ioctl(void *uld_dev, u32 cmd, const void *in_buf,
| ^~~~~~~~~~~~~~
--
>> drivers/net/ethernet/3snic/sssnic/nic/./tool/sss_tool_nic_dcb.c:326:5: warning: no previous prototype for 'sss_tool_dcb_mt_qos_map' [-Wmissing-prototypes]
326 | int sss_tool_dcb_mt_qos_map(struct sss_nic_dev *nic_dev, const void *in_buf,
| ^~~~~~~~~~~~~~~~~~~~~~~
>> drivers/net/ethernet/3snic/sssnic/nic/./tool/sss_tool_nic_dcb.c:370:5: warning: no previous prototype for 'sss_tool_dcb_mt_dcb_state' [-Wmissing-prototypes]
370 | int sss_tool_dcb_mt_dcb_state(struct sss_nic_dev *nic_dev, const void *in_buf,
| ^~~~~~~~~~~~~~~~~~~~~~~~~
>> drivers/net/ethernet/3snic/sssnic/nic/./tool/sss_tool_nic_dcb.c:432:5: warning: no previous prototype for 'sss_tool_dcb_mt_hw_qos_get' [-Wmissing-prototypes]
432 | int sss_tool_dcb_mt_hw_qos_get(struct sss_nic_dev *nic_dev, const void *in_buf,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
--
>> drivers/net/ethernet/3snic/sssnic/nic/./tool/sss_tool_nic_phy_attr.c:22:5: warning: no previous prototype for 'sss_tool_get_loopback_mode' [-Wmissing-prototypes]
22 | int sss_tool_get_loopback_mode(struct sss_nic_dev *nic_dev, const void *in_buf,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
>> drivers/net/ethernet/3snic/sssnic/nic/./tool/sss_tool_nic_phy_attr.c:42:5: warning: no previous prototype for 'sss_tool_set_loopback_mode' [-Wmissing-prototypes]
42 | int sss_tool_set_loopback_mode(struct sss_nic_dev *nic_dev, const void *in_buf,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
>> drivers/net/ethernet/3snic/sssnic/nic/./tool/sss_tool_nic_phy_attr.c:147:5: warning: no previous prototype for 'sss_tool_set_link_mode' [-Wmissing-prototypes]
147 | int sss_tool_set_link_mode(struct sss_nic_dev *nic_dev, const void *in_buf,
| ^~~~~~~~~~~~~~~~~~~~~~
drivers/net/ethernet/3snic/sssnic/nic/./tool/sss_tool_nic_phy_attr.c: In function 'sss_tool_update_pf_bw_limit':
>> drivers/net/ethernet/3snic/sssnic/nic/./tool/sss_tool_nic_phy_attr.c:174:13: warning: variable 'old_bw_limit' set but not used [-Wunused-but-set-variable]
174 | u32 old_bw_limit;
| ^~~~~~~~~~~~
drivers/net/ethernet/3snic/sssnic/nic/./tool/sss_tool_nic_phy_attr.c: At top level:
>> drivers/net/ethernet/3snic/sssnic/nic/./tool/sss_tool_nic_phy_attr.c:253:5: warning: no previous prototype for 'sss_tool_set_pf_bw_limit' [-Wmissing-prototypes]
253 | int sss_tool_set_pf_bw_limit(struct sss_nic_dev *nic_dev, const void *in_buf,
| ^~~~~~~~~~~~~~~~~~~~~~~~
>> drivers/net/ethernet/3snic/sssnic/nic/./tool/sss_tool_nic_phy_attr.c:277:5: warning: no previous prototype for 'sss_tool_get_pf_bw_limit' [-Wmissing-prototypes]
277 | int sss_tool_get_pf_bw_limit(struct sss_nic_dev *nic_dev, const void *in_buf,
| ^~~~~~~~~~~~~~~~~~~~~~~~
>> drivers/net/ethernet/3snic/sssnic/nic/./tool/sss_tool_nic_phy_attr.c:307:5: warning: no previous prototype for 'sss_tool_get_netdev_name' [-Wmissing-prototypes]
307 | int sss_tool_get_netdev_name(struct sss_nic_dev *nic_dev, const void *in_buf,
| ^~~~~~~~~~~~~~~~~~~~~~~~
>> drivers/net/ethernet/3snic/sssnic/nic/./tool/sss_tool_nic_phy_attr.c:326:5: warning: no previous prototype for 'sss_tool_get_netdev_tx_timeout' [-Wmissing-prototypes]
326 | int sss_tool_get_netdev_tx_timeout(struct sss_nic_dev *nic_dev, const void *in_buf,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>> drivers/net/ethernet/3snic/sssnic/nic/./tool/sss_tool_nic_phy_attr.c:348:5: warning: no previous prototype for 'sss_tool_set_netdev_tx_timeout' [-Wmissing-prototypes]
348 | int sss_tool_set_netdev_tx_timeout(struct sss_nic_dev *nic_dev, const void *in_buf,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>> drivers/net/ethernet/3snic/sssnic/nic/./tool/sss_tool_nic_phy_attr.c:371:5: warning: no previous prototype for 'sss_tool_get_xsfp_present' [-Wmissing-prototypes]
371 | int sss_tool_get_xsfp_present(struct sss_nic_dev *nic_dev, const void *in_buf,
| ^~~~~~~~~~~~~~~~~~~~~~~~~
>> drivers/net/ethernet/3snic/sssnic/nic/./tool/sss_tool_nic_phy_attr.c:393:5: warning: no previous prototype for 'sss_tool_get_xsfp_info' [-Wmissing-prototypes]
393 | int sss_tool_get_xsfp_info(struct sss_nic_dev *nic_dev, const void *in_buf,
| ^~~~~~~~~~~~~~~~~~~~~~
--
>> drivers/net/ethernet/3snic/sssnic/nic/./tool/sss_tool_nic_qp_info.c:137:5: warning: no previous prototype for 'sss_tool_get_tx_info' [-Wmissing-prototypes]
137 | int sss_tool_get_tx_info(struct sss_nic_dev *nic_dev, const void *in_buf,
| ^~~~~~~~~~~~~~~~~~~~
>> drivers/net/ethernet/3snic/sssnic/nic/./tool/sss_tool_nic_qp_info.c:163:5: warning: no previous prototype for 'sss_tool_get_tx_wqe_info' [-Wmissing-prototypes]
163 | int sss_tool_get_tx_wqe_info(struct sss_nic_dev *nic_dev, const void *in_buf,
| ^~~~~~~~~~~~~~~~~~~~~~~~
>> drivers/net/ethernet/3snic/sssnic/nic/./tool/sss_tool_nic_qp_info.c:182:5: warning: no previous prototype for 'sss_tool_get_rx_info' [-Wmissing-prototypes]
182 | int sss_tool_get_rx_info(struct sss_nic_dev *nic_dev, const void *in_buf,
| ^~~~~~~~~~~~~~~~~~~~
>> drivers/net/ethernet/3snic/sssnic/nic/./tool/sss_tool_nic_qp_info.c:223:5: warning: no previous prototype for 'sss_tool_get_rx_wqe_info' [-Wmissing-prototypes]
223 | int sss_tool_get_rx_wqe_info(struct sss_nic_dev *nic_dev, const void *in_buf,
| ^~~~~~~~~~~~~~~~~~~~~~~~
>> drivers/net/ethernet/3snic/sssnic/nic/./tool/sss_tool_nic_qp_info.c:242:5: warning: no previous prototype for 'sss_tool_get_rx_cqe_info' [-Wmissing-prototypes]
242 | int sss_tool_get_rx_cqe_info(struct sss_nic_dev *nic_dev, const void *in_buf,
| ^~~~~~~~~~~~~~~~~~~~~~~~
>> drivers/net/ethernet/3snic/sssnic/nic/./tool/sss_tool_nic_qp_info.c:280:5: warning: no previous prototype for 'sss_tool_get_q_num' [-Wmissing-prototypes]
280 | int sss_tool_get_q_num(struct sss_nic_dev *nic_dev, const void *in_buf, u32 in_len,
| ^~~~~~~~~~~~~~~~~~
>> drivers/net/ethernet/3snic/sssnic/nic/./tool/sss_tool_nic_qp_info.c:304:5: warning: no previous prototype for 'sss_tool_get_inter_num' [-Wmissing-prototypes]
304 | int sss_tool_get_inter_num(struct sss_nic_dev *nic_dev, const void *in_buf,
| ^~~~~~~~~~~~~~~~~~~~~~
..
vim +/sss_adm_msg_write +545 drivers/net/ethernet/3snic/sssnic/hw/sss_hwif_adm.c
544
> 545 int sss_adm_msg_write(struct sss_adm_msg *adm_msg, u8 node_id,
546 const void *cmd, u16 cmd_size)
547 {
548 return sss_adm_msg_io(adm_msg, node_id, cmd, cmd_size, NULL, 0);
549 }
550
> 551 int sss_adm_msg_read(struct sss_adm_msg *adm_msg, u8 node_id,
552 const void *cmd, u16 size, void *ack, u16 ack_size)
553 {
554 return sss_adm_msg_io(adm_msg, node_id, cmd, size, ack, ack_size);
555 }
556
557 static void sss_set_adm_event_flag(struct sss_msg_pf_to_mgmt *pf_to_mgmt,
558 int event_flag)
559 {
560 spin_lock(&pf_to_mgmt->sync_event_lock);
561 pf_to_mgmt->event_state = event_flag;
562 spin_unlock(&pf_to_mgmt->sync_event_lock);
563 }
564
565 static u16 sss_align_adm_msg_len(u16 msg_data_len)
566 {
567 /* u64 - the size of the header */
568 u16 msg_size;
569
570 msg_size = (u16)(SSS_MGMT_MSG_RSVD_FOR_DEV + sizeof(u64) + msg_data_len);
571
572 if (msg_size > SSS_MGMT_MSG_SIZE_MIN)
573 msg_size = SSS_MGMT_MSG_SIZE_MIN +
574 ALIGN((msg_size - SSS_MGMT_MSG_SIZE_MIN), SSS_MGMT_MSG_SIZE_STEP);
575 else
576 msg_size = SSS_MGMT_MSG_SIZE_MIN;
577
578 return msg_size;
579 }
580
581 static void sss_encapsulate_adm_msg(u8 *adm_msg, u64 *header,
582 const void *body, int body_len)
583 {
584 u8 *adm_msg_new = adm_msg;
585
586 memset(adm_msg_new, 0, SSS_MGMT_MSG_RSVD_FOR_DEV);
587
588 adm_msg_new += SSS_MGMT_MSG_RSVD_FOR_DEV;
589 memcpy(adm_msg_new, header, sizeof(*header));
590
591 adm_msg_new += sizeof(*header);
592 memcpy(adm_msg_new, body, (size_t)(u32)body_len);
593 }
594
595 #define SSS_MAX_PF_MGMT_BUF_MAX 2048L
596
> 597 int sss_adm_msg_read_ack(void *hwdev, u8 dest, const void *cmd,
598 u16 size, void *ack, u16 ack_size)
599 {
600 struct sss_msg_pf_to_mgmt *pf_to_mgmt = NULL;
601 struct sss_adm_msg *adm_mag = NULL;
602
603 if (!hwdev || !cmd || (ack_size && !ack) || size > SSS_MAX_PF_MGMT_BUF_MAX)
604 return -EINVAL;
605
606 if (!SSS_SUPPORT_ADM_MSG((struct sss_hwdev *)hwdev))
607 return -EPERM;
608
609 pf_to_mgmt = ((struct sss_hwdev *)hwdev)->pf_to_mgmt;
610 adm_mag = pf_to_mgmt->adm_msg[SSS_ADM_MSG_POLL_READ];
611
612 if (!(((struct sss_hwdev *)hwdev)->chip_present_flag))
613 return -EPERM;
614
615 return sss_adm_msg_read(adm_mag, dest, cmd, size, ack, ack_size);
616 }
617
> 618 int sss_adm_msg_write_nack(void *hwdev, u8 dest, const void *cmd, u16 size)
619 {
620 struct sss_msg_pf_to_mgmt *pf_to_mgmt = NULL;
621 struct sss_adm_msg *adm_mag = NULL;
622
623 if (!hwdev || !size || !cmd || size > SSS_MAX_PF_MGMT_BUF_MAX)
624 return -EINVAL;
625
626 if (!SSS_SUPPORT_ADM_MSG((struct sss_hwdev *)hwdev))
627 return -EPERM;
628
629 pf_to_mgmt = ((struct sss_hwdev *)hwdev)->pf_to_mgmt;
630 adm_mag = pf_to_mgmt->adm_msg[SSS_ADM_MSG_POLL_WRITE];
631
632 if (!(((struct sss_hwdev *)hwdev)->chip_present_flag))
633 return -EPERM;
634
635 return sss_adm_msg_write(adm_mag, dest, cmd, size);
636 }
637
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2024-01-16 9:06 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-01-16 9:06 [openeuler:OLK-5.10 25415/30000] drivers/net/ethernet/3snic/sssnic/hw/sss_hwif_adm.c:545:5: warning: no previous prototype for 'sss_adm_msg_write' 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.